feat(config): custom_wiki2html external converter + base_url for RSS (P2)
Add three per-wiki HtmlConfig keys mirroring vimwiki globals: - custom_wiki2html / custom_wiki2html_args: when set, export shells out to the external converter via `sh -c` with vimwiki's exact arg order (<cmd> <force> <syntax> <ext> <out_dir> <in_file> <css> <tpl_path> <tpl_default> <tpl_ext> <root_path> <args>, `-` for empty optionals) instead of the built-in renderer. - base_url: when set, diary RSS item + channel links become <base_url><diary_rel_path>/<date>.html instead of file:// URIs. write_page() gains a `force` flag threaded through export_current (false), export_all (its own flag) and the did_save auto-export path (false). Tests: write_page_invokes_custom_wiki2html_converter, write_rss_uses_base_url_for_public_links (html_export.rs), config round-trip + defaults (index_and_config.rs). Docs: README, doc/nuwiki.txt, lua config comment, vimwiki-gap.md item ticked. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -229,6 +229,9 @@ require('nuwiki').setup({
|
||||
template_default = 'default',
|
||||
template_ext = '.tpl',
|
||||
css_name = 'style.css',
|
||||
custom_wiki2html = '', -- external converter; empty = built-in renderer
|
||||
custom_wiki2html_args = '', -- extra args appended to the converter call
|
||||
base_url = '', -- public URL prefix for RSS item links
|
||||
auto_export = false, -- export on save
|
||||
auto_toc = false, -- auto-refresh TOC on save
|
||||
auto_generate_links = false, -- regen Generated Links on save
|
||||
@@ -358,6 +361,9 @@ Each is a boolean. All default to `true` except `mouse`.
|
||||
| `css_name` | string | `'style.css'` | stylesheet filename |
|
||||
| `auto_export` | bool | `false` | `true` \| `false` (export on save) |
|
||||
| `html_filename_parameterization` | bool | `false` | `true` \| `false` |
|
||||
| `custom_wiki2html` | string | `''` | external converter command; empty = built-in renderer. Called as `<cmd> <force> <syntax> <ext> <out_dir> <in_file> <css> <tpl_path> <tpl_default> <tpl_ext> <root_path> <args>` (`-` for empty optionals), matching vimwiki |
|
||||
| `custom_wiki2html_args` | string | `''` | extra args appended to the `custom_wiki2html` call |
|
||||
| `base_url` | string | `''` | public URL prefix; when set, diary RSS item links become `<base_url><diary_rel_path>/<date>.html` instead of `file://` |
|
||||
| `exclude_files` | list | `{}` | glob patterns |
|
||||
| `color_dic` | table | `{}` | `{ name = 'color', … }` |
|
||||
|
||||
|
||||
Reference in New Issue
Block a user