feat(links): wire up nuwiki.links.generateForPath (scoped GenerateLinks)
`:VimwikiGenerateLinks <path>` sent nuwiki.links.generateForPath, but the server had no handler and didn't advertise it — so the scoped form was silently dropped (only the no-arg form worked). Register and implement it. The page list is scoped via page_in_scope: a plain `path` is a directory subtree (the page itself or anything under `<path>/`); a `path` with `*`/`?` is a glob pattern (upstream's behaviour), matched with export::glob_match (now pub(crate)). links_generate and the scoped form share links_generate_scoped, so cursor-line insertion + captions + config all apply uniformly. Tests: page_in_scope unit tests (subtree, glob, prefix-sibling, trailing slash) + COMMANDS advertises both generate forms. 580 passed, clippy clean, harnesses green. Doc updated with the [path] argument. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -329,7 +329,7 @@ fn escape_html(s: &str) -> String {
|
||||
/// Minimal glob match for `exclude_files`. Handles `*`, `**`, `?` and
|
||||
/// literal characters. No character classes — those aren't needed for
|
||||
/// "exclude foo/*.tmp" style patterns.
|
||||
fn glob_match(pattern: &str, text: &str) -> bool {
|
||||
pub(crate) fn glob_match(pattern: &str, text: &str) -> bool {
|
||||
glob_impl(pattern.as_bytes(), text.as_bytes())
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user