1.0.3
Fixed
- Setting or editing a variable no longer overwrites frontmatter when the existing frontmatter is invalid YAML or has an unclosed block. These cases now stop with a clear error notice and leave the document untouched.
- Setting or editing a variable rewrites only the frontmatter block instead of the whole document, preserving scroll position and producing a single clean undo step.
- Highlight colors are validated as
#RRGGBBbefore use; invalid values fall back to the theme default instead of leaking into editor styles. - Settings saves that fail (for example, a disk error) are now caught and reported instead of surfacing as an unhandled promise rejection.
Changed
- Editor variable highlighting scans only the visible portion of the document and caches the parsed frontmatter, greatly reducing per-keystroke work in large notes. Highlighting is no longer disabled on documents over 1 MB.
- "Replace all in document" and "Replace in document and filename" apply targeted edits in a single transaction instead of rewriting the entire document, preserving cursor and scroll position. Documents over 1 MB report an explicit error instead of silently doing nothing.
Installation: copy main.js, manifest.json, and styles.css into <vault>/.obsidian/plugins/tidemark/, then reload Obsidian.