diff options
author | Kaz Kylheku <kaz@kylheku.com> | 2023-10-13 13:14:06 -0700 |
---|---|---|
committer | Kaz Kylheku <kaz@kylheku.com> | 2023-10-13 13:14:06 -0700 |
commit | 74f1b72891965cd4803e0d372c72d1a56ecb8de8 (patch) | |
tree | 470dc399d8e966984160c8ca70cb98eb841c2219 | |
parent | cad433e0d63913b9a151cb21189c803153a857dc (diff) | |
download | mnpgr-74f1b72891965cd4803e0d372c72d1a56ecb8de8.tar.gz mnpgr-74f1b72891965cd4803e0d372c72d1a56ecb8de8.tar.bz2 mnpgr-74f1b72891965cd4803e0d372c72d1a56ecb8de8.zip |
First version.
-rwxr-xr-x | mnpgr.tl | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/mnpgr.tl b/mnpgr.tl new file mode 100755 index 0000000..af3541b --- /dev/null +++ b/mnpgr.tl @@ -0,0 +1,27 @@ +#!/usr/bin/env txr + +(defvarl home-dir (getenv "HOME")) + +(defvarl mnpgr-dir (path-cat home-dir ".mnpgr-dir")) + +(defvarl vim-commands + (join-with "|" + '("hi def link CtrlHUnderline Special" + "hi def link CtrlHBold Keyword" + "set syntax=ctrlh" + "syntax match CtrlHHide /.\\b/ contained conceal" + "set conceallevel=2" + "set concealcursor=nc" + "map q :q!\r"))) + +(ensure-dir mnpgr-dir) + +(match @(or `@page(@section)` ;; for "man whatever" + `@page\\.@section`) ;; for "man -l file.1" + (getenv "MAN_PN") + (with-resources ((rendered-file (path-cat mnpgr-dir `@page.@section`) + (remove-path rendered-file))) + (with-stream (s (open-file rendered-file "w")) + (whilet ((line (get-line))) + (put-line line s))) + (sh `vim +'@{vim-commands}' '@{rendered-file}' < /dev/tty`))) |