diff options
| author | Qrius <[email protected]> | 2025-03-05 11:10:07 +0100 |
|---|---|---|
| committer | Qrius <[email protected]> | 2025-03-05 11:10:10 +0100 |
| commit | 12d07e873ea21263fbacb5e0193d38893ceff846 (patch) | |
| tree | 8a3ce2bc9b3ffbb9825efe181901d3728ad7e8e3 /src/smp/builtins.py | |
| parent | 313e059f367f2ac291cd409e77d22673f9595848 (diff) | |
| download | skaldpress-12d07e873ea21263fbacb5e0193d38893ceff846.tar.gz skaldpress-12d07e873ea21263fbacb5e0193d38893ceff846.zip | |
Seemingly up to scratch now
Diffstat (limited to 'src/smp/builtins.py')
| -rw-r--r-- | src/smp/builtins.py | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/smp/builtins.py b/src/smp/builtins.py index 9a27864..c1d67ce 100644 --- a/src/smp/builtins.py +++ b/src/smp/builtins.py @@ -2,6 +2,7 @@ import subprocess import urllib.request import urllib.error +import urllib.parse import datetime import markdown from gfm import AutolinkExtension, TaskListExtension # type: ignore @@ -151,6 +152,14 @@ LINK_CACHE: dict[str, tuple[bool, int, str]] = dict() def smp_builtin_wodl(macro_processor, link, timeout_seconds=5): + url = urllib.parse.urlparse(link) + link = ( + url.scheme + + "://" + + url.netloc.encode("idna").decode("ascii") + + urllib.parse.quote(url.path) + ) + if link in LINK_CACHE: return LINK_CACHE[link] @@ -179,3 +188,7 @@ def smp_builtin_dumpenv(macro_processor): out += f"{repr(key)}: {repr(val)}\n" out += "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━" return out + + +# TODO Add macro that spawns a interactive shell with the python env. would allow interactive debugging :) +# needs to have a continue function or something (probably on C-d |
