mirror of
https://github.com/evennia/evennia.git
synced 2026-03-16 21:06:30 +01:00
Documentation setup
This commit is contained in:
parent
d072950cc5
commit
607db6206a
4 changed files with 34 additions and 4 deletions
|
|
@ -17,6 +17,7 @@ import glob
|
|||
import re
|
||||
|
||||
_RE_MD_LINK = re.compile(r"\[(?P<txt>[\w -\[\]]+?)\]\((?P<url>.+?)\)", re.I + re.S + re.U)
|
||||
_RE_REF_LINK = re.compile(r"\[[\w -\[\]]+?\]\(.+?\)", re.I + re.S + re.U)
|
||||
|
||||
_IGNORE_FILES = (
|
||||
"_Sidebar.md",
|
||||
|
|
@ -55,6 +56,16 @@ _CUSTOM_LINK_REMAP = {
|
|||
"Adding-Object-Typeclass-tutorial": "Adding-Object-Typeclass-Tutorial",
|
||||
"EvTable": _API_PREFIX + "evennia.utils#module-evennia.utils.evtable",
|
||||
}
|
||||
# complete reference remaps
|
||||
_REF_REMAP = {
|
||||
"[![Getting Started][icon_new]](Getting-Started)": "![Getting Started][icon_new]",
|
||||
"[![Admin Docs][icon_admin]](Administrative-Docs)": "![Admin Docs][icon_admin]",
|
||||
"[![Builder Docs][icon_builder]](Builder-Docs)": "![Builder Docs][icon_builder]",
|
||||
"[![Developer-Central][icon_devel]](Developer-Central)": "![Developer-Central][icon_devel]",
|
||||
"[![tutorial][icon_tutorial]](Tutorials)": "![Tutorials][icon_tutorial]",
|
||||
"[![API][icon_api]](evennia)": "![API][icon_api]",
|
||||
}
|
||||
|
||||
|
||||
# absolute links (mainly github links) that should not be converted. This
|
||||
# should be given without any #anchor.
|
||||
|
|
@ -82,6 +93,17 @@ _REF_SKIP = (
|
|||
|
||||
_CURRENT_TITLE = ""
|
||||
|
||||
|
||||
def _sub_remap(match):
|
||||
"""Total remaps"""
|
||||
ref = match.group(0)
|
||||
if ref in _REF_REMAP:
|
||||
new_ref = _REF_REMAP[ref]
|
||||
print(f" Replacing reference {ref} -> {new_ref}")
|
||||
return new_ref
|
||||
return ref
|
||||
|
||||
|
||||
def _sub_link(match):
|
||||
|
||||
mdict = match.groupdict()
|
||||
|
|
@ -92,6 +114,7 @@ def _sub_link(match):
|
|||
# return ""
|
||||
print(f" [{txt}]({url})")
|
||||
|
||||
|
||||
url = _CUSTOM_LINK_REMAP.get(url, url)
|
||||
|
||||
url, *anchor = url.rsplit("#", 1)
|
||||
|
|
@ -168,6 +191,9 @@ def create_toctree(files):
|
|||
ref = filename.rsplit(".", 1)[0]
|
||||
linkname = ref.replace("-", " ")
|
||||
|
||||
if ref == "Home":
|
||||
ref = "index"
|
||||
|
||||
fil.write(f"\n* [{linkname}]({ref}.md)")
|
||||
|
||||
def convert_links(files, outdir):
|
||||
|
|
@ -186,6 +212,7 @@ def convert_links(files, outdir):
|
|||
with open(inpath) as fil:
|
||||
text = fil.read()
|
||||
_CURRENT_TITLE = title.replace(" ", "-")
|
||||
text = _RE_REF_LINK.sub(_sub_remap, text)
|
||||
text = _RE_MD_LINK.sub(_sub_link, text)
|
||||
text = text.split('\n')[1:] if text.split('\n')[0].strip().startswith('[]') else text.split('\n')
|
||||
text = f"# {title}\n\n" + '\n'.join(text)
|
||||
|
|
|
|||
|
|
@ -163,9 +163,11 @@ def url_resolver(url):
|
|||
elif url.startswith(urlstart):
|
||||
return _github_code_root + url[len(urlstart):]
|
||||
elif url.startswith(apistart):
|
||||
print("api: -> api ref")
|
||||
return "api/" + url[len(apistart):] + ".html"
|
||||
else:
|
||||
return _github_doc_root + url
|
||||
return url
|
||||
# else:
|
||||
# return _github_doc_root + url
|
||||
|
||||
|
||||
# auto-create TOCs if a list of links is under these headers
|
||||
|
|
|
|||
|
|
@ -11,7 +11,8 @@ suggestion box][form]!
|
|||
There is [a lengthier introduction](Evennia-Introduction) to read. You might also want to read about
|
||||
[how to get and give help](How-To-Get-And-Give-Help).
|
||||
|
||||
| [![Getting Started][icon_new]](Getting-Started)| [![Admin Docs][icon_admin]](Administrative-Docs) | [![Builder Docs][icon_builder]](Builder-Docs) | [![Developer-Central][icon_devel]](Developer-Central) | [![tutorial][icon_tutorial]](Tutorials) | [![API][icon_API]](api:evennia) |
|
||||
|
||||
| ![Getting Started][icon_new]| ![Admin Docs][icon_admin] | ![Builder Docs][icon_builder] | ![Developer-Central][icon_devel] | ![Tutorials][icon_tutorial] | [![API][icon_API]](api:evennia) |
|
||||
|-----------------|----------------------|--------------------------|----------------------|----------------------------|--------------------|
|
||||
|[Getting Started](Getting-Started)| [Admin Docs](Administrative-Docs) | [Builder Docs](Builder-Docs) | [Developer Central](Developer-Central) | [Tutorials & Examples](Tutorials) | [API](api:evennia) |
|
||||
|
||||
|
|
|
|||
|
|
@ -69,7 +69,7 @@
|
|||
* [HAProxy Config (Optional)](HAProxy-Config-(Optional).md)
|
||||
* [Help System Tutorial](Help-System-Tutorial.md)
|
||||
* [Help System](Help-System.md)
|
||||
* [Home](Home.md)
|
||||
* [Home](index.md)
|
||||
* [How To Get And Give Help](How-To-Get-And-Give-Help.md)
|
||||
* [How to connect Evennia to Twitter](How-to-connect-Evennia-to-Twitter.md)
|
||||
* [IRC](IRC.md)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue