Cleanup, marking test versioning

This commit is contained in:
Griatch 2020-06-12 21:30:49 +02:00
parent 9acf721236
commit 87fb539b24
7 changed files with 50 additions and 11 deletions

View file

@ -15,15 +15,33 @@ We also need to build the toc-tree and should do so automatically for now.
import glob
import re
import datetime
_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)
_RE_CLEAN = re.compile(r"\|-+?|-+\|", re.I + re.S + re.U)
_IGNORE_FILES = (
"_Sidebar.md",
"Wiki-Index.md"
)
_INDEX_PREFIX = f"""
# VERSION WARNING
> This is the experimental static v0.9 documentation of Evennia, _automatically_ generated from the
> [evennia wiki](https://github.com/evennia/evennia/wiki/) at {datetime.datetime.now()}.
> There are known conversion issues which will _not_ be addressed in this version - refer to
> the original wiki if you have trouble.
>
> Manual conversion and cleanup will instead happen during development of the upcoming v1.0
> version of this static documentation.
"""
_WIKI_DIR = "../../../evennia.wiki/"
_INFILES = [path for path in sorted(glob.glob(_WIKI_DIR + "/*.md"))
if path.rsplit('/', 1)[-1] not in _IGNORE_FILES]
@ -201,9 +219,11 @@ def convert_links(files, outdir):
for inpath in files:
is_index = False
outfile = inpath.rsplit('/', 1)[-1]
if outfile == "Home.md":
outfile = "index.md"
is_index = True
outfile = _OUTDIR + outfile
title = inpath.rsplit("/", 1)[-1].split(".", 1)[0].replace("-", " ")
@ -211,11 +231,19 @@ def convert_links(files, outdir):
print(f"Converting links in {inpath} -> {outfile} ...")
with open(inpath) as fil:
text = fil.read()
if is_index:
text = _INDEX_PREFIX + text
_CURRENT_TITLE = title.replace(" ", "-")
text = _RE_CLEAN.sub("", text)
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)
text = "\n".join(text)
if not is_index:
text = f"# {title}\n\n{text}"
with open(outfile, 'w') as fil:
fil.write(text)

View file

@ -11,7 +11,7 @@ This grid tries to gather Evennia-specific knowledge about the various clients a
## Client Grid
Name | Version | Comments
-----------------------|:----------:|-------------
:----------:------------
[Evennia webclient][1] | 0.6 | Uses WS/AJAX. [Current client issues][2]
[tintin++][3] | 2.0+ | No MXP support
[tinyfugue][4] | 5.0+ | No UTF-8 support

View file

@ -63,7 +63,7 @@ On the wire, a GMCP instruction for `("cmdname", ("arg",), {})` will look like t
where all the capitalized words are telnet character constants specified in `evennia/server/portal/telnet_oob.py`. These are parsed/added by the protocol and we don't include these in the listings below.
Input/Outputfunc | GMCP-Command
-----------------|------------------
------------------
`[cmd_name, [], {}]` | Cmd.Name
`[cmd_name, [arg], {}]` | Cmd.Name arg
`[cmd_na_me, [args],{}]` | Cmd.Na.Me [args]
@ -73,7 +73,7 @@ Input/Outputfunc | GMCP-Command
Since Evennia already supplies default inputfuncs that don't match the names expected by the most common GMCP implementations we have a few hard-coded mappings for those:
GMCP command name | Input/Outputfunc name
-------------------|-----------------
-----------------
"Core.Hello" | "client_options"
"Core.Supports.Get" | "client_options"
"Core.Commands.Get" | "get_inputfuncs"
@ -92,7 +92,7 @@ MSDP uses Telnet character constants to package various structured data over the
The various available MSDP constants like `VAR` (variable), `VAL` (value), `ARRAYOPEN`/`ARRAYCLOSE` and `TABLEOPEN`/`TABLECLOSE` are specified in `evennia/server/portal/telnet_oob`.
Outputfunc/Inputfunc | MSDP instruction
---------------------|-------------------------
-------------------------
`[cmdname, [], {}]` | VAR cmdname VAL
`[cmdname, [arg], {}]` | VAR cmdname VAL arg
`[cmdname, [args],{}]` | VAR cmdname VAL ARRAYOPEN VAL arg VAL arg ... ARRAYCLOSE

View file

@ -245,7 +245,7 @@ To find commercial solutions, browse the web for "shell access", "VPS" or "Cloud
There are all sorts of services available. Below are some international suggestions offered by Evennia users:
Hosting name | Type | Lowest price | Comments
-------------------|:--------------:|:-------:|----------------
:--------------:|:-------:---------------
[silvren.com][1] | Shell account | Free for MU* | Private hobby provider so don't assume backups or expect immediate support. To ask for an account, connect with a MUD client to iweb.localecho.net, port 4201 and ask for "Jarin".
[Digital Ocean][2] | VPS | $5/month | You can get a $50 credit if you use the referral link https://m.do.co/c/8f64fec2670c - if you do, once you've had it long enough to have paid $25 we will get that as a referral bonus to help Evennia development.
[Amazon Web services][3] | Cloud | ~$5/month / on-demand | Free Tier first 12 months. Regions available around the globe.

View file

@ -175,7 +175,7 @@ All *global callables* in your added module will be considered a new protfunc. T
The default protfuncs available out of the box are defined in `evennia/prototypes/profuncs.py`. To override the ones available, just add the same-named function in your own protfunc module.
| Protfunc | Description |
|----------|-------------|
| `$random()` | Returns random value in range [0, 1) |
| `$randint(start, end)` | Returns random value in range [start, end] |
| `$left_justify(<text>)` | Left-justify text |

View file

@ -59,7 +59,7 @@ to get a list of all supported ANSI colours and the tags used to produce them.
A few additional ANSI codes are supported:
- `|/` A line break. You cannot put the normal Python `\n` line breaks in text entered inside the game (Evennia will filter this for security reasons). This is what you use instead: use the `|/` marker to format text with line breaks from the game command line.
- `|-` This will translate into a `TAB` character. This will not always show (or show differently) to the client since it depends on their local settings. It's often better to use multiple spaces.
- `` This will translate into a `TAB` character. This will not always show (or show differently) to the client since it depends on their local settings. It's often better to use multiple spaces.
- `|_` This is a space. You can usually use the normal space character, but if the space is *at the end of the line*, Evennia will likely crop it. This tag will not be cropped but always result in a space.
- `|*` This will invert the current text/background colours. Can be useful to mark things (but see below).

View file

@ -1,5 +1,17 @@
# Home
# VERSION WARNING
> This is the experimental static v0.9 documentation of Evennia, _automatically_ generated from the
> [evennia wiki]() at 2020-06-12 21:01:35.429785.
> There are known conversion issues which will _not_ be addressed in this version - refer to
> the original wiki if you have trouble.
>
> Manual conversion and cleanup will instead happen during development of the upcoming v1.0
> version of this static documentation.
[](Wiki-front-page.)
# Evennia Documentation
This is the manual of [Evennia](http://www.evennia.com), the open source Python `MU*` creation system.
@ -11,9 +23,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]| ![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) |
- The [Getting Started](Getting-Started) page helps installing and starting Evennia for the first time.