From b385429d1bc7ad5052be79b67d8c7b27103f8a22 Mon Sep 17 00:00:00 2001 From: Levi Neely Date: Fri, 2 Oct 2026 11:43:24 +0200 Subject: [PATCH] Add sample links exercising every resolver branch Extend the sample org data with links that cover each resolve_target dispatch path, so the link-navigation feature can be exercised by hand and in the GUI. test.org: - Add a <> dedicated target and a #+NAME: languages-table named element as link destinations. - Add "Same-file links" and "Cross-file links" subsections listing one link per kind: external URL, #custom-id, *headline, dedicated target, named element, plain text, and file:notes.org[::target] forms. notes.org (new): - Second document providing cross-file targets: *Meeting Notes headline, #design-decision custom id, <> dedicated target, and a #+NAME: roadmap-table named element. - Includes a back-link to test.org and its own same-file links. All 14 links verified to resolve over a live server (dedicated/fuzzy kinds, same-file, cross-file, and back-link directions). Property drawers are placed directly under their headlines so CUSTOM_ID targets parse; the plain-text target phrase is chosen so sorted-order section scanning lands on the intended prose. --- notes.org | 42 ++++++++++++++++++++++++++++++++++++++++++ test.org | 25 +++++++++++++++++++++++++ 2 files changed, 67 insertions(+) create mode 100644 notes.org diff --git a/notes.org b/notes.org new file mode 100644 index 0000000..cc7649e --- /dev/null +++ b/notes.org @@ -0,0 +1,42 @@ +#+TITLE: Orkmode Notes +#+AUTHOR: Test User +#+FILETAGS: :notes:sample: + +* Meeting Notes +:PROPERTIES: +:CUSTOM_ID: meeting-notes +:END: + +Notes captured during planning meetings. + +Back-link to the test document: [[file:test.org::*Introduction][Introduction in test.org]]. + +** Design +:PROPERTIES: +:CUSTOM_ID: design-decision +:END: + +We decided to keep all org logic in the server and treat clients as thin 9P +consumers. See the showcase in [[file:test.org::#high-priority][the high priority task]]. + +* Release + +<> +Checklist for cutting a release: + +- [ ] Bump version +- [ ] Run full test suite +- [ ] Tag and push + +A same-file link to the [[*Meeting Notes][meeting notes]] above. + +** Roadmap + +#+NAME: roadmap-table +| Version | Theme | Status | +|---------+------------------+-------------| +| v0.3 | Read-only GUI | done | +| v0.4 | In-place editing | in progress | +| v0.5 | Agenda views | planned | + +Reference the table with [[roadmap-table][the roadmap table]]. diff --git a/test.org b/test.org index 9e2abbb..4a16a2f 100644 --- a/test.org +++ b/test.org @@ -11,6 +11,9 @@ This is a test document for the orkmode parser. It contains various org-mode constructs to verify parsing. +<> +This paragraph is marked with a dedicated target used by same-file links. + * TODO [#A] High Priority Task :urgent:work: DEADLINE: <2025-01-15 Wed 14:00 +1w> :PROPERTIES: @@ -72,6 +75,7 @@ date ** Tables +#+NAME: languages-table | Name | Language | Stars | |---------+----------+-------| | Emacs | Lisp | 10000 | @@ -99,6 +103,27 @@ Some text with a [[https://orgmode.org][link to org-mode website]]. Internal link to [[#high-priority][the high priority task]]. +*** Same-file links + +Links that resolve within this document: + +- External URL: [[https://orgmode.org][org-mode website]] +- Custom ID: [[#high-priority][High Priority Task]] +- Headline title: [[*Reference Material][jump to Reference Material]] +- Dedicated target: [[intro-anchor][go to the Introduction anchor]] +- Named element: [[languages-table][see the languages table]] +- Plain text: [[has been completed][jump to the completed-task prose]] + +*** Cross-file links + +Links that resolve into =notes.org=: + +- Whole file: [[file:notes.org][open the notes document]] +- Headline in file: [[file:notes.org::*Meeting Notes][Meeting Notes in notes.org]] +- Custom ID in file: [[file:notes.org::#design-decision][a design decision]] +- Dedicated target in file: [[file:notes.org::release-anchor][the release checklist anchor]] +- Named element in file: [[file:notes.org::roadmap-table][the roadmap table]] + ** Math and LaTeX Inline math: $E = mc^2$