Martín Lucas Golini
cec4fa6e72
Add webp image format support (load and save).
...
Fix bug introduced in the last commit for UIDataBind initialization.
Change gmake2 in favor of gmake when using premake5 since it has been depreated in premake5-beta6 (hopefully I did not miss anything).
2025-06-04 21:02:38 -03:00
Martín Lucas Golini
61e2df83db
Added UIProperty to easily bind values with UI elements (very basic initial implementation).
2025-06-04 00:24:21 -03:00
Martín Lucas Golini
c156b53e4b
Rename "keyword2" to "type" and "keyword3" to "parameter".
...
Added some String overloaded functions.
2025-06-01 20:07:23 -03:00
Martín Lucas Golini
9a8ece04d6
Adjust scissor test to current FBO coordinates. Fixes some clipping bugs when using FBOs withing UI components.
2025-06-01 01:35:05 -03:00
Martín Lucas Golini
eacb3a0f5b
Syntax Definitions are going to be loaded on-demand instead of during start-up (this allows to add as many as wanted without worrying about memory usage or load times).
...
Added Racket syntax highlighting and LSP support (SpartanJ/ecode#459 ).
2025-05-28 23:54:34 -03:00
Martín Lucas Golini
9e0b3bc301
More RegEx fixes.
2025-05-28 17:56:09 -03:00
Martín Lucas Golini
0df86b1d53
RegEx fixes. TextMate grammars fixes.
2025-05-28 03:08:17 -03:00
Martín Lucas Golini
e072649221
Fixes for the UITabWidget tab switcher.
...
Remove "Flash Cursor" (it was too broken and it's not useful after alll).
2025-05-27 01:13:44 -03:00
Martín Lucas Golini
dcea675e5b
Fix input methods that depend on OpenKey, Unikey and similar software.
...
Fix flashing cursor on Windows! How this was not reported?!
Fix crash when closing ecode on Windows and tabs with same name where present.
2025-05-24 20:48:42 -03:00
Martín Lucas Golini
70aecddd18
Added support for Tab jump modes ( SpartanJ/ecode#469 ). Including a Tab Switcher (I have no better name for the moment).
...
Added support to hide the Tab Bar (SpartanJ/ecode#477 ).
Updated efsw.
Updated JS, TS, C++ grammars.
2025-05-24 01:10:50 -03:00
Martín Lucas Golini
b6ead5f2fd
Added "Build & Run" and "Build & Debug" buttons.
2025-05-21 00:33:25 -03:00
Martín Lucas Golini
9b4e9f8613
TextMate parsing fixes and improvements.
2025-05-20 00:43:56 -03:00
Martín Lucas Golini
0fbebf6dfa
TextMate support WIP.
2025-05-18 01:46:04 -03:00
Martín Lucas Golini
3ce1a16f0a
Merge branch 'develop' into text-mate
2025-05-14 14:11:39 -03:00
Martín Lucas Golini
9f58ad38fc
Experimenting with oniguruma fallback and text-mate improvements.
2025-05-14 00:48:01 -03:00
Martín Lucas Golini
77db743867
Fixes in syntax definition.
2025-05-14 00:47:11 -03:00
Martín Lucas Golini
058b9cab4d
Fix for SpartanJ/ecode#461 . Used CreateProcess is the Unicode version ("CreateProcessW"), and binary paths are now resolved as absolute paths in Windows.
2025-05-11 19:45:42 -03:00
Martín Lucas Golini
af381e400a
More work to support TextMate grammars.
2025-05-10 21:34:02 -03:00
Martín Lucas Golini
51430ae87b
Minor nits, about to implement some changes to complete the pending changes for sub-patterns in ranged matching.
2025-05-09 22:20:20 -03:00
Martín Lucas Golini
821e7f50dd
SyntaxTokenizer: improve the stack-based pattern matching to support include / repositories.
...
Added some *very basic* support for some *very basic* TextMate grammars, `$language.tmLanguage.json` files are now parsed and supported internally. Full support is not currently possible, and might never be. This is to facilitate converting grammars to ecode format.
Updated python linter and formatter to the latest ruff version.
2025-05-07 21:17:07 -03:00
Martín Lucas Golini
6a39a7b458
SyntaxTokenizer and SyntaxDefinition repository support WIP.
2025-05-06 19:26:50 -03:00
Martín Lucas Golini
c19de0cb60
Refactor syntax tokenizer to simplify future improvements for it.
2025-05-04 20:00:19 -03:00
Martín Lucas Golini
c394cc4847
Improve regex captures result processing in tokenizer.
...
Improved Vala syntax highlighting.
2025-05-04 02:28:07 -03:00
Martín Lucas Golini
ebc35b4224
Some extra improvements for the syntax tokenizer.
2025-05-03 21:20:28 -03:00
Martín Lucas Golini
fe84f10794
Improve tokenizer for closing sub-syntaxes.
...
Allow adding alternative names to languages.
2025-05-02 23:57:08 -03:00
Martín Lucas Golini
3b3d1de420
In SyntaxDefinition add "end_type" support, to set the types of a closing pattern for multi-line block rules.
2025-05-01 00:32:11 -03:00
Martín Lucas Golini
2680499268
Prevent updating IME location if file is loading ( SpartanJ/eepp#111 ).
2025-04-29 17:04:09 -03:00
Martín Lucas Golini
799d9f9371
Do not use malloc_trim if it's not available.
2025-04-22 12:08:47 -03:00
Martín Lucas Golini
5f9d2bd5ea
Fix a bug when changing themes (some properties where not updated due to cached properties).
...
Fix a bug when displaying sub-menus, it was sometimes incorrectly positioned.
2025-04-20 12:41:36 -03:00
Martín Lucas Golini
3c4b2698c3
Add new OpenAI and Google models.
...
Pump eepp and ecode versions.
Try to fix a minor bug in Plugin Manager window.
2025-04-19 00:15:47 -03:00
Martín Lucas Golini
d0f4a2eeea
Fix some issues with RegEx captures.
...
Added Janet syntax highlighting (SpartanJ/ecode#394 ).
Fixes in syntax highlighter to C++ converter.
2025-04-12 17:55:05 -03:00
Martín Lucas Golini
be30ee67bc
Update nlohmann/json library.
...
Removed "-ffast-math" flag for binary compilation (nlohmann/json is generating warnings due to the use of infinity, and actually binaries kinda don't need fast-math, it makes more sense in eepp).
Fix warning in Sys for macOS.
2025-04-12 00:42:54 -03:00
Martín Lucas Golini
4a6245ed6c
Add tab-stops support for Text instances.
2025-04-10 01:16:09 -03:00
Martín Lucas Golini
4146bfef6f
Implemented tab-stops support ( SpartanJ/ecode#55 ). Not enabled by default until I'm sure I did not break anything.
2025-04-09 21:22:17 -03:00
Martín Lucas Golini
be65e47bb5
Fix Ini parser to parse git config files.
2025-04-07 16:28:13 -03:00
Martín Lucas Golini
2d62165657
Minor fixes in xit and markdown definitions.
...
Minor fix in text wrap.
Chat UI now displays Google Gemini error messages.
2025-04-06 23:41:35 -03:00
Martín Lucas Golini
fbe748f757
Fix Gemini 2.5 Exp model name.
...
Added the syntax definition folding ranges configuration for the JSON definitions.
Cleaned up a little bit some languages, added folding ranges to several of them.
2025-04-06 15:43:55 -03:00
Martín Lucas Golini
9c36b957c9
Use TextHints flags in all code (remove DrawHints and similar).
...
Various minor changes in language definitions.
Added Squirrel syntax highlighting (SpartanJ/ecode#395 ).
2025-04-06 02:14:11 -03:00
Martín Lucas Golini
6a3b58edc2
Allow to lock conversations in history (to not be deleted when deleting in mass).
...
Allow to delete files older than N number of days.
Improved the key bindings in chat ui editors.
Improved C3 syntax highlighting.
Try no to change the current tab when closing the other splitter.
2025-04-04 21:59:09 -03:00
Martín Lucas Golini
3985d81262
Fix build.
2025-04-04 02:13:39 -03:00
Martín Lucas Golini
da85af1246
Added C3 syntax highlighting and LSP support.
...
Refactored TextUndoStack, now uses std::variant and avoids heap allocating each command.
Fix possible crash in Process::readAll.
Fix SyntaxDefinition::setSymbols.
Some minor improvements for Odin and Ü syntax definitions.
Fix Git plugin silent configuration.
2025-04-04 01:48:39 -03:00
Martín Lucas Golini
473d4b48c9
Allow to configure the AI Assistant Chat UI keybindings.
...
Allow to prefer the LSP formatter over the command line formatter in the formatter plugin, changed that option as the default for the cases where we use clangd (which fallbacks to clang-format but does diff the file).
2025-03-31 22:40:15 -03:00
Martín Lucas Golini
67a86c3c05
Process class fix a dead-lock.
...
Compile with C++20 (compilation might fail on some systems, let's see the CI).
Fixed V1 syntax highlighting.
2025-03-31 18:52:42 -03:00
Martín Lucas Golini
80677554cf
Fixed small and rare bug that prevented the scrollbars from being visible on the project view.
2025-03-30 20:59:24 -03:00
Martín Lucas Golini
8f090aba4a
Fix some not ready all data from exited process.
2025-03-30 13:22:18 -03:00
Martín Lucas Golini
5a728ddbfd
Fix LLM Chat UI scroll.
...
Add some shortcuts to LLM Chat UI.
2025-03-29 16:54:57 -03:00
Martín Lucas Golini
7870ecbebe
LLM Chat UI improvements.
2025-03-29 15:57:39 -03:00
Martín Lucas Golini
c7c45a87cf
Fixes in UICodeEditor mouse click in gutter.
...
Added some basic culling in UICodeEditor.
Remember the Chat UI input text.
2025-03-29 02:17:56 -03:00
Martín Lucas Golini
f721ef92df
Added a new tokenization method for the SyntaxTokenizer based on customized parsers. Initially is being used to parse numbers in C, C++ and JavaScript/TypeScript. This method is much more flexible and can be much faster than regex or lua patterns.
...
Improvets in AI Assistant.
Fix regression in size calculation of a UIAbstractTableView.
Fix in project search path filters.
2025-03-28 02:15:20 -03:00
Martín Lucas Golini
8ac5e1e2e8
Refactor in SyntaxDefinition and related classes.
...
Minor improvements in CPP, CSS, xit syntax highlighting.
AI Assistant / LLM Chat now can restore previous opened chats and states (last model used, panel split), can have private conversations, can clone a previous conversation, plus some visual improvements.
Fixed a bug in tab widget splitting.
2025-03-26 23:55:29 -03:00