mirror of
https://github.com/polygonhunter/slashosaurus.git
synced 2026-07-22 08:32:14 +00:00
- EditorSuggest-based trigger (line start / after whitespace, configurable
character), fuzzy filtering over names and aliases
- Live preview tiles: all 13 callout types in theme colors, headings in
their sizes, lists, table grid, code/math/mermaid chips
- Smart insert with {cursor} sentinel, selection wrapping (prefix, fence,
inline), two-stage code-block language picker, Shift+Enter for foldable
callouts, footnotes with auto-numbered definitions, user snippets
- Glass panel with gliding selection pill, mobile + reduced-motion aware
- Pure, vitest-covered core (46 tests); only Obsidian APIs ≤ 1.12
1.2 KiB
1.2 KiB
Contributing to Slashosaurus
Thanks for your interest! Issues and pull requests are welcome.
Bugs & ideas
Open an issue — a short description, your Obsidian version, your theme (previews are theme-sensitive), and what you typed help a lot.
Development setup
npm install
npm run dev # watch build into test-vault/ (pjeby/hot-reload)
npm run test # vitest over src/core
npm run build # type-check + production bundle
Open test-vault/ in Obsidian to try your changes live (the hot-reload plugin picks up dev builds automatically). Playground.md, Wrap-Tests.md, and Fussnoten.md contain prepared scenarios.
Ground rules
- Everything under
src/core/stays pure (noobsidianimports) and unit-tested — catalog, trigger, ranking, insert/wrap logic changes need a test. - The UI follows one principle: radically clean. The menu appears, delivers, disappears. If a change adds visible chrome, it probably needs rethinking.
- Only public Obsidian APIs, and only APIs available in Obsidian 1.12 (
@sincetags inobsidian.d.tsare the source of truth). - Keep examples and fixtures fictional (no real names, vaults, or URLs).