v1.9.0-beta.6
fabiospampinato
released this
14 Feb 03:29
·
2 commits
to master
since this release
New Features
- New context keys: isPanelLeft, isPanelRight
- Exposed some context keys as attributes on
<html>
- New theming colors:
editor:gutter:foregroundActive
- New command: editor.selection.strings, for selecting arbitrary strings in the editor
- Added support for rendering an audio player when trying to render audio attachments
- Added support for rendering a video player when trying to render video attachments
- New setting: view.mode.classic.tagsActiveLogicFunction, for setting the logic function used when merging the sets of notes corresponding to the active tags in classic mode
- New commands: editor.formatting.custom.remove, editor.formatting.custom.toggle
- Updated command: editor.insert.timestamp -> added more date formatting placeholders: [K], [MMMM], [MMM], [M], [DDDD], [DDD], [D], [H], [hh], [h], [m], [s], [tt], [t]
- Updated command: editor.insert.timestamp -> added support for a second argument, if "true" the date is formatted in UTC time
- New command: editor.insert.timestamp.iso8601
- New command: search.results.toggleCollapse
- New command: editor.insert.nbsp, for inserting a non-breakable space
- New command: editor.inser.zwj, for inserting a zero-width joiner, basically an invisible space
- New search filter:
heading:*
, it searches only into headings inside notes - New search filter:
task:*
, it searches only into tasks inside notes - Global search: added a button for explicitly using "string" parsing mode, a simplified mode that considers the whole query a string to match exactly
- Global search: rendering toggleable tasks when explicitly searching for tasks with the
task:*
filter - New setting: editor.tab.insertSpaces, for configuring whether pressing the tab key should insert a tab or spaces, it's set to false by default, meaning from now on the app will insert tabs rather than spaces by default
- New setting: editor.tab.size, for configuring the visual width of a tab
- New commands: editor.setting.tab.insertSpaces, editor.setting.tab.insertTab
- New commands: editor.indentation.spaces, editor.indentation.tabs, for converting indentations in the current editor to spaces/tabs quickly
- New setting: editor.font.size
- New setting: editor.font.family
- New setting: editor.font.ligatures
- New setting: preview.font.size
- Markdown: added support for highlighting text by wrapping it in "==" markers
- New commands: editor.formatting.mark.add, editor.formatting.mark.remove, editor.formatting.mark.toggle
- Editor context menu: added a "Toggle Mark" item
- New command: editor.whitespace.trimTrailing
Improvements
- Upgraded Electron to v17
- Search engine: improved replacement string generation when the replacement string contains whitespace characters but the source string doesn't
- Ensuring
zotero://
urls work within the app - Updated setting: editor.autosave.interval -> increased to 5 minutes
- Classic mode: automatically tagging new notes with the currently active tags
- Classic mode: using Cmd/Ctrl+Click rather than Shift+Click for toggling tags
- Classic mode: when multiple tags are active now only notes present in all of them are searched into (basically switching from an OR to an AND)
- Icon: updated to be more aligned with system conventions (macOS)
- Scroll synchronization: ensuring almost no work is done while scrolling either the editor or the preview outside of split mode
- Scroll synchronization: reduced the maximum amount of time needed to find a target element in preview by up to 20 times
- Optimized heading detection, from a O(n) operation to a O(log n) one
- Optimized heading detection, now it's almost always about twice as fast as before even after the note has been edited
- Optimized heading detection, now about 90% faster in some cases if no carriage return character is present in the note
Bug Fixes
- Focus mode: ensuring the panel gets hidden too
- Editor search: ensuring replacement previews are only rendered when the replacement bar is open
- Search engine: ensuring escape sequences in strings in queries are parsed
- Editor search: ensuring special characters are escaped in selections before using them as search queries
- Preview search: ensuring special characters are escaped in selections before using them as search queries (even though the browser seems to eat them anyway)
- Global search: ensuring special characters are escaped in selections before using them as search queries
- HTML sanitizer: ensuring SVG and MathML elements are sanitized like HTML elements
- Ensuring many popular file extensions can be converted to mime types
- Search engine: ensuring separator characters can be used in queries and matched in target strings
- Ensuring nothing happens when requesting the search view to be visible if it's rendered in the panel already
- Ensuring headings positions are always updated when performing heading detection
- Scroll synchronization: ensuring it works while dragging the scrollbar thumb too