Feat v0.4.5 editor modes outline (#27)
All checks were successful
All checks were successful
Co-authored-by: Jeffrey Smith <jasafpro@gmail.com> Co-committed-by: Jeffrey Smith <jasafpro@gmail.com>
This commit was merged in pull request #27.
This commit is contained in:
30
CHANGELOG.md
30
CHANGELOG.md
@@ -2,6 +2,36 @@
|
||||
|
||||
All notable changes to Switchboard Core are documented here.
|
||||
|
||||
## v0.4.5 — Editor Modes + Document Outline
|
||||
|
||||
### Added
|
||||
|
||||
- **Tri-state view mode**: Notes open in rendered (read-only) mode by default.
|
||||
Toolbar button cycles through Edit (CM6) and Split (side-by-side) modes.
|
||||
Replaces the old binary preview toggle.
|
||||
- **Split view**: Side-by-side CM6 editor + rendered preview using CSS grid.
|
||||
CM6 instance preserved when toggling between edit and split modes.
|
||||
- **Synced scroll**: In split mode, scrolling the CM6 editor proportionally
|
||||
scrolls the preview pane via linear ratio mapping on `scrollDOM`.
|
||||
- **View mode persistence**: User's preferred mode saved to localStorage
|
||||
(`sw.storage.local('notes')`). New `editor_mode` manifest setting with
|
||||
admin-level default (rendered / edit / split).
|
||||
- **Document outline**: Collapsible TOC panel adjacent to the editor body.
|
||||
`parseHeadings()` extracts heading level, text, and line number (skips
|
||||
fenced code blocks). Click heading to scroll — uses CM6
|
||||
`EditorView.scrollIntoView()` in edit/split mode, DOM `scrollIntoView()`
|
||||
in rendered mode. Updates on body change with 300ms debounce.
|
||||
|
||||
### Changed
|
||||
|
||||
- Notes package version bumped from 0.5.0 to 0.6.0.
|
||||
- Editor body wrapped in `.notes-editor__content` flex container to
|
||||
accommodate the outline panel.
|
||||
- Wikilink click handling active in both rendered and split modes.
|
||||
- Mobile: split view collapses to single column, outline panel hidden.
|
||||
|
||||
---
|
||||
|
||||
## v0.4.4 — Rich Editor + Import/Export
|
||||
|
||||
### Added
|
||||
|
||||
Reference in New Issue
Block a user