Skip to content

Releases: notable/notable-insiders

v1.9.0-alpha.17

15 Jul 04:04
e1b0cb9
Compare
Choose a tag to compare
  • New command: editor.insert.timestamp
  • Mapped “CmdOrCtrl+K T” to “editor.insert.timestamp”
  • New commands: note.go.heading.first, note.go.heading.last
  • New commands: preview.go.heading.first, preview.go.heading.last
  • Accounting for newer content in unsaved editors when jumping to an heading or line, exporting, printing and sharing, without implicitly saving the editors in question
  • More reliable heading detection inside editors, it should be perfect now
  • More reliable heading detection in previews, it should be perfect now when going forward
  • More reliable heading detection in previews, accounting for moving direction and multiple visible headings, it should be ~perfect now
  • Removed “tinydate” in favor a much really tiny custom function
  • Ensuring using a title that starts with a dot doesn’t result in an hidden note on disk
  • Ensuring tasks explicitly put in a list are handled properly
  • Generating headings ids in a more reliable way when dealing with multiple similar headings in the same note
  • Refactored slugifier
  • Added a basic synchronous markdown renderer
  • Table of contents: significantly improved handling of headings containing some HTML elements
  • Ensuring tasks explicitly put in a list are syntax highlighted properly
  • Exposing menu items for toggling modes in the note editor’s context menu
  • Exposing a menu item for toggling split mode under the preview submenu too
  • Added a basic context menu dedicated to rendered notes
  • Ensuring the “Inspect” menu item is always put at the end of context menus
  • Added a “Look Up [selection]” menu item, that’s expected on macOS
  • Added a “Search with Google” context menu item when there’s a selection, which is expected on macOS
  • Added a “Copy Image Markdown Link” menu item when right-clicking external images, for completeness
  • Added a “Copy Image” menu item when right-clicking images
  • Menu: ensuring “before” and “after” directives work across groups too
  • Ensuring tildified paths are actually real working paths
  • Improved title generation for data directories, accounting for very generic basenames and other recent data directories with similar paths
  • Displaying the current data directory and the title of the current note in the titlebar too, when possible
  • Extracted preferences and updater menu items into their own menus for better internal reusability
  • Updated app menu to better follow each cross-platform’s conventions
  • New command: app.exit — it’s just an alias for app.quit
  • New command: cwd.forget
  • Added a menu item for deleting a data directory from the list of recent ones
  • New command: search.query.forget
  • Added a menu item for deleting a search query from the list of recent ones
  • Fixed (finally) an issue that caused a small area of the window to be unresponsive to clicks on macOS — As a consequence now windows have a proper title too on macOS
  • Fixed a couple of issues when importing loosely structured files
  • Updated some dependencies
  • Handling middle-clicks more reliably, ensuring the button being clicked is actually the middle one, working around what looks like a chromium-level bug
  • Ensuring editor.cursor.line.verystart and editor.cursor.line.veryend have shortcuts assigned to only on macOS
  • Ensuring “Alt+F4” is mapped to “window.close” on Linux as well
  • Reimplemented zooming in a more Electron-specific but reliable way
  • Markdown: improved indentation guides rendering, handling empty lines more appropriatly
  • Markdown: more reliable false positive detection when rendering emojis
  • Updated some dependencies
  • Mapped F1 to opening the palette with the “help “ prefix
  • Mapped F3/Shift+F3 to search.item.next/search.item.previous
  • Mapped F12 to view.mode.focus.toggle
  • Ensuring all IANA TLDs are supported, both in regular urls and emails
  • Ensuring “Paste” context menu items account for whether there’s no text but just an image in the clipboard, and whether the target element supports receiving images
  • Ensuring Copy/Cut/Paste context menu items for editors always send commands to the right editors
  • Ensuring the “editor.paste” command supports pasting images in note editors
  • Ensuring all Copy/Cut/Paste context menu items display shortcut hints
  • Ensuring pasting multiple times simultaneously in the same line works
  • Ensuring tabs can be middle-clicked from anywhere, including inside the tabs palette
  • Ensuring notes can be middle-clicked from pretty much anywhere, including inside the palette and from rendered Markdown links
  • Ensuring everything is saved right before the OS gets shut down (Linux & Mac)
  • Fixed a few path-related issues that happened under Windows
  • Avoiding using the current unmatched search query as the title of new notes, it was confusing and not very useful
  • Ensuring the tutorial is imported correctly under Windows
  • Reversed the order of the parts used in window titles for better stability and hierarchy
  • Minor changes

v1.9.0-alpha.16

10 Jul 01:56
e1b0cb9
Compare
Choose a tag to compare
  • Command palette: showing commands-specific shortcuts hints
  • Added back support for collapsing/expanding tags in the sidebar with a double-click
  • Resolving “CmdOrCtrl” in default shortcuts ahead of time, showing cleaner default shortcuts in the shortcuts editor
  • Resolving some static “when” expressions in default shortcuts ahead of time, ensuring these shortcuts aren’t displayed in the default shortcuts editor
  • Mapping “CmdOrCtrl+Alt+Z” to “edit.redo” and “editor.redo” on Windows and Linux too
  • Aligned palette-related shortcuts more with vscode's
  • New command: palette.searchWithCurrent
  • Mapping CmdOrCtrl+R to palette.searchWithCurrent while the search bar is in focus (a bit of a nod to FZF)
  • Mapping CmdOrCtrl+Esc to view.reset only on macOS, as other platforms handle this shortcut at the OS-level
  • Mapping “Esc Esc” to view.reset too
  • Mapping Ctrl+H/Ctrl+Shift+H rather than Alt+Tab/Alt+Shift+Tab on Windows and Linux for navigating headings, as the latter shortcuts conflicted with the OS
  • Mapping “CmdOrCtrl+K CmdOrCtrl+H” to opening the palette and searching for headings
  • Mapping Ctrl+Alt+T/Ctrl+Alt+Shift+T rather than CmdOrCtrl+Alt+Tab/CmdOrCtrl+Alt+Shift+Tab on Windows and Linux for navigating tags, as the latter shortcuts conflicted with the OS
  • Mapped “CmdOrCtrl+K CmdOrCtrl+J” to “editor.unfold.all” too for better alignment with vscode
  • Unbound Ctrl+A/Ctrl+E for line navigation in the editor from Windows and Linux, as they conflict with other things
  • Mapped CtrlOrCmd+U to editor.cursor.undo too for better alignment with vscode (plus thats’s a command that deserves an easier shortcut)
  • Mapping CtrlOrCmd+Left/CtrlOrCmd+Right only on macOS
  • Updated 15 shortcuts related to the editor for better alignment with vscode and OS-level expectations (Windows & Linux)
  • Avoiding using “CmdOrCtrl” on shortcuts defined only for macOS or non-macOS
  • Mapped Home/End to quickPick.item.first/quickPick.item.last
  • Mapping PageUp/PageDown to quickPick.item.previous/quickPick.item.next rather than quickPick.item.first/quickPick.item.last, aligning this usage of PageUp/PageDown with the rest of the shortcuts
  • Mapping Home, End, PageUp and PageDown for natigating search results when the search bar is focused
  • Mapping Ctrl+Home/Ctrl+End to tab.first/tab.last when no editable element is in focus
  • Reimplemented tags navigation properly, in a way that doesn’t depend on the state of the DOM
  • New commands: tag.first, tag.last
  • Mapped Ctrl+Alt+Home/Ctrl+Alt+End to tag.first/tag.last
  • Added support for shortcuts containing only modifiers
  • Mapping “Alt” to view.menubar.toggle on Windows and Linux
  • Minor changes

v1.9.0-alpha.15

08 Jul 02:00
e1b0cb9
Compare
Choose a tag to compare
  • Respecting the user’s OS-level preference for what should happen when titlebars are double-clicked (macOS)
  • Respecting each OS’ convention when displaying shortcut hints
  • Logging crashes of the GPU process to the console
  • Logging crashes of any renderer process to the console
  • Menubar: ensuring it behaves much more native-like — menus can be navigated by moving the mouse, menus are anchored to the opener and the opener is styled appropriately when its menu is open
  • Disallowed attachment of BrowserViews
  • Disabled built-in spellchecker, as it can’t be used for our purposes
  • Updated some dependencies
  • New command: selection.showDefinition (macOS)
  • Logging when the window becomes unreponsive
  • Fixed an issue that caused absurdly long startup times when other instances of Notable where running, and caused dynamically-generated skeletons to be forgotten
  • Minor changes
  • Added the code required for intercepting reloads initiated from the devtools, so that state can be saved properly (it would be working already if Electron weren’t buggy here…)
  • Ensuring the alpha channel for the computed window background color is always 1
  • Ensuring unhandled errors and rejections are logged to the console
  • Ensuring sequence shortcuts could be shown as shortcut hints depending on the cirmustances
  • Removed the requirement that for a shortcut to be shown in a menu its “when” expression had to evaluate to "true"
  • Ensuring all menu items that will ultimately do the same thing will do so by triggering the same commands
  • Updated some menu items to use the “toggle” variant of the command they use, when possible, providing more consistent shortcut hints
  • Fixed a crash that could have occurred when closing a window
  • Added a script for running the production version of the app while still attaching the main process to the terminal

v1.9.0-alpha.14

05 Jul 02:15
e1b0cb9
Compare
Choose a tag to compare
  • Removed “unused-path” in favor of loading only its dependencies we need directly
  • Replaced “fs-extra” and “write-file-atomic” with the native “fs” module and “atomically”
  • Cleaned up some import statements
  • Tracer: reading traces more reliably
  • Export: writing files more reliably
  • Window state manager: reading and writing state files more reliably
  • Settings: populating non-yet-existing files with their default content before opening them in the default app
  • Implemented a simple “fetch” function based on Electron’s net module
  • Removed “simple-get” in favor of the custom net-based function
  • Wired writes to unused paths with the main filesystem scheduler, ensuring pending writes are being waited before actually exiting
  • Updated some dependencies
  • Simplified some logic around externally-resolvable promises
  • Settings: wired writes with the main filesystem scheduler, ensuring pending writes are being waited before actually exiting
  • Improved file write performance throught the app
  • Note: preserving temporary files on disk in case the full write fails, as a somewhat extreme measure against data loss
  • Editor: stopping autocompleting fences in fenced code blocks, as this was more annoying than useful
  • Triggering the “palette.cwd” command rather than the “cwd.change” command in a few more places

v1.9.0-alpha.13

02 Jul 00:32
e1b0cb9
Compare
Choose a tag to compare
  • Skeleton: ensuring the fallback one is loaded properly
  • Removed “readdirp” dependency
  • Added a function for getting the OS’ temp directory
  • Added a function for generating a temporary file path
  • Updated “critically”, ensuring arbitrary HTML strings are handled correctly
  • Export: avoiding writing useless empty files when the export fails
  • Export: ensuring any eventual error happening while writing the temporary file to disk is caught properly
  • Export: never using data-urls, as Electron v9 introduced a regression when reusing the same window multiple times with different data-urls
  • Export: removed “tempy” dependency in favor of a custom oneliner
  • Added a “useResizeObserver” React hook
  • Removed “use-resize-observer” in favor of the custom hook
  • Removed “window-or-global” in favor of a oneliner
  • Added a simple text diff library based on “fast-diff"
  • Removed “diff” in favor of the custom wrapper around "fast-diff"
  • Updated state management library, replacing “deep-object-diff” with a better diff function
  • Env: ensuring all values under the “is” object are booleans
  • Process explorer: added a statusbar item
  • New context key: hasProcessExplorerStatusbar
  • New commands: processExplorer.statusbar.enable, processExplorer.statusbar.disable, processExplorer.statusbar.toggle
  • Minifying code more aggressively

v1.9.0-alpha.12

30 Jun 00:59
e1b0cb9
Compare
Choose a tag to compare
  • Added a “useContextKey” React hook
  • Added a statusbar icon while the tracer is recording
  • Updater: ensuring updates can be downloaded and installed automatically, when the platform is supported
  • Updater: ensuring silent checks are handled properly too
  • New setting: updater.download, set it to false to disable the automatic download and installation of updates while still being notified about them
  • New setting: updater.interval, set it to <= 0 to disable automatic checks for updates
  • Updater: enforcing a minimum interval of 300 seconds for automatic checks
  • useRestorator: restoring states much more reliably by perfoming a visibility check before actually restoring and potentially retrying later
  • Updated some dependencies
  • Ensuring the “__renderer” variable resolves to the right path during development too
  • Added a localStorage-based setting instance
  • Reimplemented the skeleton, with support for any theme and any layout configuration

v1.9.0-alpha.11

29 Jun 01:11
e1b0cb9
Compare
Choose a tag to compare
  • Added a “Tracer” library, for easily recording performance traces
  • New context key: isTracerRecording
  • New commands: tracer.record, tracer.start, tracer.stop
  • Middlebar: ensuring clicks on notes are handled correctly
  • Tabbar: ensuring clicks are handled properly
  • Updated some dependencies
  • Added a general-purpose “Sources” synchronizer
  • Added a “Setting” synchronizer
  • Synchronizing settings using the “Setting” synchronizer
  • Added an “Input” synchronizer
  • Synchronizing inputs using the “Input” synchronizer
  • Data directory statusbar item: opening the data directory palette on click
  • Increased number of maximum remembered recent data directories to 50
  • Saving the current search query only once per session
  • Moved the “editor.enabled” setting to the hidden settings
  • Saved searches: ensuring any leading/traling whitespaces are ignored
  • Saved searches: saving only searches that lasted for at least 5 seconds
  • Ensuring notes with very long titles are still written to disk
  • Statusbar: ensuring arbitrarily long headings are still rendered properly
  • Implemented a tiny semantic version comparator that supports prefixes, suffixes and non-fully-specified versions
  • Removed “semver-compare” in favor of the custom comparator
  • Automatically opening the changelog at startup whenever an update is detected
  • Ensuring the changelog is not automatically opened on new installations
  • Synchronizer: refined logic to better handle immediately-updating sources
  • Ensuring focus events are only triggered when necessary, this fixes a huge performance issue

v1.9.0-alpha.10

24 Jun 23:52
e1b0cb9
Compare
Choose a tag to compare
  • Remembering the last picked-into directory when using some file system pickers
  • Minor changes
  • Remembering the last 300 used search queries
  • Ensuring undefined values are accounted for when retrieving from specific settings scopes
  • Added a “search” palette and related commands and menu items
  • Using the actual version number in changelog ids, ensuring the state preserved about them won’t get confused with other versions
  • Titlebar: ensuring the correct foreground color is being used for the close button’s hover and active states
  • Resetting the position of the window only if less than 15% of the window is visible, rather than less than 100%
  • Ensuring windows can be opened at coordintes where they are not entirely visible
  • Opening persistent tabs directly when middle-clicking a note
  • New options: editor.rulers.enabled, editor.rulers.columns
  • Added a default editor ruler at the 80th column, but disabled rulers by default
  • New commands: editor.setting.rulers.enable, editor.setting.rulers.disable, editor.setting.rulers.toggle
  • New color: editor:ruler:background
  • New context menu item: Editor -> Rulers
  • Added some placeholder content when in zen mode with no tabs
  • Added some placeholder content when in focus mode with no tabs
  • Ensuring the mainbar doesn’t get cropped and very small widths in zen mode
  • Added the initial code necessary for producing ARM builds

v1.9.0-alpha.3

15 Jun 01:14
Compare
Choose a tag to compare
  • Ensuring the app can be zoomed in and out properly

v1.9.0-alpha.2

15 Jun 00:46
Compare
Choose a tag to compare
  • Improved support for debugging inside virtual machines
  • Added a bare-bones statusbar
  • Added an “useIntervalUpdate” react hook
  • Ensuring buttons with both an icon and a label are properly spaced
  • Statusbar: added an item displaying the current data directory
  • Statusbar: added an item displaying the number of words in the note
  • Statusbar: added an item displaying the currently active heading
  • Statusbar: added an item displaying info about the cursors and selections in the editor
  • Added a context menu for the data directory item in the statusbar
  • Updated the submenu in the app menu regarding the data directory
  • Added a context menu to the statusbar item displaying the current heading
  • Added support for opening context menus programmatically
  • Split the app menu into standalone menus
  • Ensuring hashing kind of works inside the development virtual machine too
  • Minor changes
  • Implemented a custom titlebar and menubar (Windows only)
  • Refreshing the app menu only right before opening it, if the custom menubar is available
  • Ensuring the app can maximized/unmaximized with a double click on the custom titlebar
  • Improved support for toggling minimization and maximization state
  • Titlebar: ensuring the icon used for toggling maximization changes depending on whether the window is maximized or not
  • New context keys: isMaximized, isMinimized
  • Ensuring minimization/maximization state changes triggered from outside of what the app controls are still detected
  • Updated menus items that trigger commands related to window minimization and maximization
  • New commands: window.unminimize, window.toggleMinimize
  • Using the same, custom-generated, font for rendering shortcuts hints, whenever possible, across platforms
  • Ensuring search is being performance in a case-insensitive way
  • Ensuring the commands for enabling/disabling the menubar work
  • Ensuring the position of the cursor in a selection, rather than it’s start, is used when inferring the current heading
  • Ensuring the current heading is inferred correctly in notes containing only one heading
  • New shortcut: Alt+F4 -> window.close (Windows)
  • Renamed special “All Notes” sections to “All (Notes|Notebooks|Tags|Templates)”
  • Displaying the reference object containing all customizable colors in the same shape that’s used inside the “theme.colors” setting
  • Added a dummy overridden color to the default settings object as an hint for to themers