ecode 0.4.9
-
Improved semantic syntax highlighting (also some improvements for the base syntax highlighter). Now is enabled by default for new installations given that it's more stable. The experience will vary depending on the LSP support. Some good LSPs will give the user an experience similar to or equal to a tree-sitter, given that many LSPs use a tree-sitter to implement semantic highlighting.
-
Added support for customizable project builds / configurable build pipelines. This enables the possibility of building your project directly from ecode, reading the output in the Build Output (Alt+4), and having the list of warnings and errors listed within ecode, allowing the user to navigate easily to those errors in the Build -> Issues panel.
build-settings.mp4
- Implemented an optional (and enabled by default) Status Bar for quick access to central functionality (each element can be accessed with the Alt + Number combination (Alt+1 -> Locate, Alt+2 -> Search, Alt+3 -> Terminal, Alt+4 -> Build)
status-bar.mp4
-
Added a quick access terminal separated from the main editors' splitter (default key bind is Alt+4).
-
Improved syntax highlighting in many languages (much better TypeScript, TSX, and JSX support).
-
Implemented navigation history. Now you can navigate your cursor history easily with Alt+Left (history back) and Alt+Right (history forward).
editor-navigation-history.mp4
- Linter now allows navigating between errors and warnings with keyboard shortcuts (default keybinding: Ctrl/Cmd + Shift + N).
linter-error-navigation.mp4
-
Improved auto-completion suggestions.
-
Added a new plugin "XML Tools". Currently provides two features: highlight matching XML elements and auto edit XML element tags. The plugin will be disabled by default since it's considered "experimental" for its first release.
xml-highlighting.mp4
-
Added "Folder/Project Settings" menu.
-
Added LSP text range formatting support.
-
Allow sharing processes between language LSPs that use the same process (for example clangd for C and C++). If you run hybrid language projects that share the same LSP, it will spawn a single LSP.
-
Improved LSP code actions. New and more precise code actions should be available for errors and warnings.
-
Improved LSP shutdown.
-
Allow disabling semantic syntax highlighting for specific languages in the LSP client configuration.
-
Added support for optional column positioning with
:
separator in Universal Locator (l line:col). Thanks TerminalFi! -
Added automatic memory trimming on Linux (ecode will report less memory usage).
-
Improved editor right-click context menu. Added "Copy Error Message", "Refresh Semantic Highlighting", "Copy File And Position", and others.
-
Added an option to treat ".h" files as C++ (as per folder/project configuration).
-
Added more commands to the command palette.
-
Fixed inability to comment a single line with ctrl/cmd + /.
-
Fixed: ecode does not properly warn the user of the lack of GPU acceleration.
-
Fixed keybindings not loading the user-configured keybindings in some components.
-
Fixed find text document references not showing all the results (only opened files).
-
Fixed editor not registering commands when another editor with the same document has been closed.
-
And many bug fixes and performance improvements.
-
For this release, a lot of work has been put into eepp GUI, which will allow extending the GUI capabilities of ecode.