Skip to content

Bump supernote-typescript submodule to pick up link/keyword parsing - #121

Merged
philips merged 1 commit into
mainfrom
bump-supernote-typescript-links
Jul 27, 2026
Merged

Bump supernote-typescript submodule to pick up link/keyword parsing#121
philips merged 1 commit into
mainfrom
bump-supernote-typescript-links

Conversation

@philips-clanker

Copy link
Copy Markdown
Collaborator

Summary

Split out of #81 (by @Floper). Pure submodule pointer bump, no plugin-side code changes - bumps supernote-typescript to pick up philips/supernote-typescript#24 ("Parse Supernote internal links and keyword stars"), which adds ILink/sn.links and richer sn.keywords data.

This unblocks the keywords-to-tags and links-to-Wikilinks export feature (next PR in this stack), which needs those.

Test plan

  • npm run build - clean
  • npx vitest run - 22 passed

Brings in philips/supernote-typescript#24 (internal Supernote links and
keyword stars, exported as ILink/sn.links and richer sn.keywords),
needed by the keywords-to-tags and links-to-Wikilinks export feature
split out of #81.

No plugin-side code changes; this is purely the submodule pointer
bump so that dependent feature branches have something to build on.
@philips
philips marked this pull request as ready for review July 27, 2026 17:32
@philips
philips merged commit 50d5564 into main Jul 27, 2026
7 checks passed
pull Bot pushed a commit to ben-vargas/supernote-obsidian-plugin that referenced this pull request Jul 28, 2026
Closes philips#127. Buckets each page's ILink entries (from the link parsing
merged in philips#121) and overlays a clickable, invisibly-positioned region
for each LINKRECT, scaled/repositioned by the same mechanism that
already keeps the pdf.js text layer aligned through zoom.

Click handling resolves same-file links via PAGEID against the
currently loaded pages, and cross-file links by basename against the
vault (mirroring VaultWriter.resolvePageAnchor's export-time
resolution from PR philips#122), reusing the existing #page=N ephemeral-state
anchor for the cross-file page jump rather than inventing a new one.

parseLinkRect/bucketLinksByPage live in a new obsidian-free module
(src/linkOverlay.ts) so they're unit-testable, including a real-fixture
test that verifies LINKRECT's coordinate space against actual parsed
data rather than trusting it from a doc comment. Also fixes the
vitest/eslint/tsc plumbing needed for a test to read a real .note file
from disk (the first test in this repo to need any Node builtins).
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants