feat(tui): add link picker and navigation history #45

Open
lerko wants to merge 2 commits from feat/link-navigation into main
Owner

Summary

  • Link picker: press [ in detail view to see all [[links]] in current entry. j/k navigates, enter follows, esc cancels.
  • Link following: resolves link text via Store.ResolveLink() (title match first, body substring fallback). Navigates to target entity with backlinks loaded.
  • Navigation history: following a link pushes current entity onto nav stack. Esc in detail view pops back through history before returning to list. Enables multi-hop link traversal.
  • Help updated: [ and esc history documented in Detail View section.

Test plan

  • Create entries with [[links]] between them
  • Open entry in detail, press [ → verify link picker shows
  • Select link, press enter → verify navigation to target entry
  • Press esc → verify navigation back to previous entry
  • Follow multiple links → verify full history stack pops correctly
  • Press [ on entry with no links → verify "no links" message
  • Follow link to nonexistent target → verify error handled
  • All tests pass (go test ./...)
## Summary - **Link picker**: press `[` in detail view to see all `[[links]]` in current entry. j/k navigates, enter follows, esc cancels. - **Link following**: resolves link text via `Store.ResolveLink()` (title match first, body substring fallback). Navigates to target entity with backlinks loaded. - **Navigation history**: following a link pushes current entity onto nav stack. Esc in detail view pops back through history before returning to list. Enables multi-hop link traversal. - **Help updated**: `[` and esc history documented in Detail View section. ## Test plan - [ ] Create entries with `[[links]]` between them - [ ] Open entry in detail, press `[` → verify link picker shows - [ ] Select link, press enter → verify navigation to target entry - [ ] Press esc → verify navigation back to previous entry - [ ] Follow multiple links → verify full history stack pops correctly - [ ] Press `[` on entry with no links → verify "no links" message - [ ] Follow link to nonexistent target → verify error handled - [ ] All tests pass (`go test ./...`)
lerko added 1 commit 2026-05-21 18:03:26 +00:00
feat(tui): add link picker and navigation history
CI / test (pull_request) Successful in 2m18s
2684eb1d24
Press [ in detail view to open link picker showing all [[links]]
in the current entry. Enter follows a link, resolving by title
then body substring. Navigation history stack enables esc to pop
back through followed links before returning to list.

Adds Store.ResolveLink() for non-transactional link resolution
from the TUI layer.
lerko added 1 commit 2026-05-21 18:12:32 +00:00
feat(tui): include backlinks in link picker
CI / test (pull_request) Successful in 2m25s
4517b2e37c
Link picker now shows both outgoing [[links]] and backlinks in
a unified list with section headers. Backlinks follow by entity
ID directly, outgoing links resolve by text. Navigating into a
backlink works the same as following an outgoing link — pushes
to nav stack, esc pops back.
Some checks are pending
CI / test (pull_request) Successful in 2m25s
This pull request can be merged automatically.
You are not authorized to merge this pull request.
View command line instructions

Checkout

From your project repository, check out a new branch and test the changes.
git fetch -u origin feat/link-navigation:feat/link-navigation
git checkout feat/link-navigation
Sign in to join this conversation.
No Reviewers
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: lerko/nib-v1#45