Commit Graph

266 Commits

Author SHA1 Message Date
Jonatan Heyman
cc6cda0217 #windows-build 2023-02-15 09:56:19 +01:00
Jonatan Heyman
bd28472175 Fix so that status bar blocks have the full height of the status bar (visible when hovered) 2023-02-12 13:11:50 +01:00
Jonatan Heyman
3a99272ec4 #windows-build 2023-02-12 12:34:01 +01:00
Jonatan Heyman
a120938fc6 Update @lezer/lr that fixes bug that can cause parser to crash
https://github.com/lezer-parser/cpp/issues/2

#windows-build
2023-02-01 15:53:07 +01:00
Jonatan Heyman
f2462b203d Update changed config key 2023-01-29 12:49:54 +01:00
Jonatan Heyman
5f98323586 Add setting for turning on/off line number gutters and fold gutters 2023-01-27 17:18:31 +01:00
Jonatan Heyman
1fe63860a8 Add more bindings to Emacs style keybindings 2023-01-27 14:36:24 +01:00
Jonatan Heyman
97d4f6294a Add ability to change Emacs meta key on Mac 2023-01-25 10:11:51 +01:00
Jonatan Heyman
659f853102 Tab size 2023-01-25 10:10:11 +01:00
Jonatan Heyman
83356275dd Simplify keymap definitions.
Bind Ctrl-Left/Right keys for Emacs keybinding.
2023-01-24 18:55:06 +01:00
Jonatan Heyman
b44b47991b Change getActiveNoteBlock and getNoteBlockFromPos so that they return a block even if the cursor is hidden within a separator. Shouldn't happen, but this should make it more robust. 2023-01-24 18:04:07 +01:00
Jonatan Heyman
751dfa0a73 Add File menu on Windows 2023-01-24 17:08:38 +01:00
Jonatan Heyman
428a3172ab When moving all lines from the last block upwards, make sure we don't create a block with empty block content (which will create an invalid syntax tree)
#windows-build
2023-01-24 16:34:31 +01:00
Jonatan Heyman
a3545f5b52 Update to latest version of Lezer 2023-01-24 16:17:05 +01:00
Jonatan Heyman
a5d47d81f6 Add commands for selecting next/previous block/paragraph 2023-01-24 16:16:54 +01:00
Jonatan Heyman
ed13baf4e4 Make the insertNewBlockAtCursor use the same block language/auto setting as the block that is being split 2023-01-23 17:38:36 +01:00
Jonatan Heyman
9987c01207 Fix issue where it was possible to create an invalid block syntax by moving lines 2023-01-22 14:28:28 +01:00
Jonatan Heyman
35f4bed7c1 Don't emit cursorChange if we have a valid line 2023-01-22 14:27:09 +01:00
Jonatan Heyman
305ec124ac Continuously render the debug syntax tree 2023-01-21 16:01:59 +01:00
Jonatan Heyman
99a6d0fcc7 Copy moveLineUp/moveLineDown command from Codemirror source into move-lines.js. Plan is to modify them to fix issue when moving the only line from a a single line block. When that happens it results in the following text data in the buffer:
∞∞∞text
∞∞∞text

And the separator needs a newline on both sides to be valid
2023-01-21 16:01:27 +01:00
Jonatan Heyman
4b4e113aa5 Att next/previous paragraph commands 2023-01-20 17:55:02 +01:00
Jonatan Heyman
924fd4b226 Replace block separators with "\n\n" when copying text.
Add Settings dialog.
Started implementing Emacs-like keymap.
2023-01-20 15:33:26 +01:00
Jonatan Heyman
6c1e89c5b0 Don't emit event if we did not get an active block (can happen with extremely large blocks, most likely because of slow syntax tree parsing) 2023-01-19 23:41:39 +01:00
Jonatan Heyman
aa628a4f08 Add new command for adding a new block after the current one, and moving the cursor to it. Change default Mod-Enter keybinding to use the new command, and added a new Mod-Shift-Enter keybinding to use the old command that inserts a new block separator at the cursor position (e.g. splits the current block).
#windows-build
2023-01-19 14:29:14 +01:00
Jonatan Heyman
1abefce1ec Fix broken Mod-L shortcut 2023-01-19 13:10:52 +01:00
Jonatan Heyman
b35e4840a4 Remove "optimization" because it can result in a outofbounds error 2023-01-19 13:08:56 +01:00
Jonatan Heyman
0d6d5daa40 Pixel push 2023-01-19 12:43:32 +01:00
Jonatan Heyman
221e42e30a Add ability to display the Lezer syntax tree for debugging 2023-01-19 12:29:23 +01:00
Jonatan Heyman
ddc184fb24 Restore fullscreen mode if the program was in fullscreen when quitting
Read specific keys from CONFIG.windowConfig instead of using Object.assign for whatever is in the config file.
2023-01-19 11:45:40 +01:00
Jonatan Heyman
80febafd26 Small optimization of external noteContent parser 2023-01-19 11:31:49 +01:00
Jonatan Heyman
00c2f21b93 Add some comments 2023-01-19 02:47:57 +01:00
Jonatan Heyman
8980e532f2 Remove debug log 2023-01-19 02:46:38 +01:00
Jonatan Heyman
e21d64d146 #windows-build 2023-01-19 02:38:41 +01:00
Jonatan Heyman
60d8e9589c Remember window size and position between sessions 2023-01-19 02:38:19 +01:00
Jonatan Heyman
aa1173e8ad #windows-build 2023-01-19 00:24:45 +01:00
Jonatan Heyman
14152fbede Implement persistent buffer 2023-01-19 00:20:50 +01:00
Jonatan Heyman
c4e78a70ce Fix bug causing an endless loop with the lang auto detector continuously changing the language of the current block 2023-01-19 00:18:18 +01:00
Jonatan Heyman
335390d8e5 Update key binding help text 2023-01-18 21:36:48 +01:00
Jonatan Heyman
4a56b7d331 Remove loader animation. Fix correct background color according to theme while loading. Set correct color on BrowserWindow to prevent white flash. 2023-01-18 21:36:31 +01:00
Jonatan Heyman
80feeed26c First block should not be have auto language 2023-01-17 01:25:07 +01:00
Jonatan Heyman
d361a5a073 Build both DMG and ZIP for both arm64 and intel architectures
Save ZIP file in mac build artifact instead of DMG file
2023-01-17 01:24:38 +01:00
Jonatan Heyman
0862fb6a07 Mac icon pixel push 2023-01-17 00:53:15 +01:00
Jonatan Heyman
3357e81609 New greenish icon 2023-01-16 23:43:39 +01:00
Jonatan Heyman
8d8f6cdcb3 Add support for Rust, XML and C++
Remove Lezer support
2023-01-16 23:43:22 +01:00
Jonatan Heyman
c3918c32c5 Don't use conflicting name "select" for language change event
#windows-build
2023-01-16 21:52:45 +01:00
Jonatan Heyman
9599fd7d92 #windows-build 2023-01-16 21:38:16 +01:00
Jonatan Heyman
996f5c131e Give back focus to editor when toggling themes 2023-01-16 21:31:52 +01:00
Jonatan Heyman
8214bf1bbb Add ability to change language using a language selector dialog 2023-01-16 21:30:30 +01:00
Jonatan Heyman
41573820ae Add CSS support
Add Language class and move language related settings into editor/language.js

In order to add an additional language now, one only has to add in to the LANGUAGES list, and add the token to heynote.grammar
2023-01-16 20:36:07 +01:00
Jonatan Heyman
4660f42460 Move App into components 2023-01-16 16:34:22 +01:00