Major clean up and improvements to vimwiki compatibility and documentation.
CI / cargo fmt --check (push) Successful in 33s
CI / cargo clippy (push) Successful in 23s
CI / cargo test (push) Successful in 33s
CI / editor keymaps (push) Successful in 1m25s

Reviewed-on: #1
This commit was merged in pull request #1.
This commit is contained in:
2026-05-30 18:35:40 +00:00
parent 95645a2b91
commit 8ab6015405
71 changed files with 2496 additions and 1914 deletions
@@ -47,6 +47,24 @@ fn cycle_state_walks_progression() {
assert_eq!(ops::cycle_state("[-]"), Some("[ ]"));
}
#[test]
fn cycle_state_back_is_exact_inverse() {
// `glp` walks the progression in reverse — every step must undo the
// matching `cycle_state` step.
assert_eq!(ops::cycle_state_back("[ ]"), Some("[X]"));
assert_eq!(ops::cycle_state_back("[X]"), Some("[O]"));
assert_eq!(ops::cycle_state_back("[O]"), Some("[o]"));
assert_eq!(ops::cycle_state_back("[o]"), Some("[.]"));
assert_eq!(ops::cycle_state_back("[.]"), Some("[ ]"));
assert_eq!(ops::cycle_state_back("[-]"), Some("[ ]"));
// Composing forward then backward returns to the start for every
// in-cycle marker.
for s in ["[ ]", "[.]", "[o]", "[O]", "[X]"] {
let fwd = ops::cycle_state(s).unwrap();
assert_eq!(ops::cycle_state_back(fwd), Some(s));
}
}
#[test]
fn reject_state_toggles_dash_marker() {
assert_eq!(ops::reject_state("[ ]"), Some("[-]"));