GExperts version 1.3.28 has been released, bringing a new Vertical Tabs panel for the editor window, a syntax-highlighted context preview in Grep, and a number of smaller features and bug fixes.
Head over to the GExperts download page to get it.
New Features
- Vertical Tabs: a new dockable panel showing open editor files as a vertical list. Single-click to switch files, with alphabetical or tab-order sorting and a context menu for Close File, Close All Other, Copy Path, and Open Containing Folder (feature #224).
- Open File expert: Project Group tab: shows files from all projects in the current project group. The tab is hidden when only a single project is loaded (feature #175).
- Comment Code fallback: when the configured block comment style (
{ },
(* *)
, or
/* */
) would produce broken nested comments, the expert now offers to fall back to line comments (
//
). A “Don’t show again” checkbox remembers the choice, and Uncomment auto-detects line-commented blocks when a block style is configured (feature #178).
- Grep access errors: messages for missing directories or inaccessible files now appear in a dialog with a Details button that hides the (potentially long) error list, plus a “Don’t show again” checkbox (feature #221).
- IDE Form Enhancer: the debugger’s Exception dialog and other IDE dialogs with only an OK button can now be closed with Esc (feature #206).
- Disable IDE license notification: a new checkbox on the IDE tab of the GExperts configuration dialog writes the
LicenseNotificationEnabledregistry value so the IDE stops popping up its license notification (feature #202).
Enhancements
- Grep context preview: now uses a syntax-highlighted code editor (SynEdit) with IDE editor colors instead of a plain RichEdit. Highlighting adapts automatically to the file type (Pascal, C++, HTML, SQL, XML), and match highlighting is preserved on top of the syntax colors. Colors also update when switching between light and dark mode (feature #222).
- Grep context colors: configuration now uses a “Use default colors” checkbox, matching the pattern used for list colors.
Bug Fixes
- Code Formatter: nested generic types like
TJSON.JsonToObject<TJSONReport<TPrintData>>are now recognized correctly instead of being treated as comparison operators (bug #219). - Open File expert: dialog position and size are now saved even when the dialog is cancelled (bug #480).
- Grep: worked around a blank docked Grep Results window by calling ForceRedraw after showing it.
- Auto Switch Desktop: fixed a crash in Debug builds when pressing F12 caused by a SmallInt range check error in
GetAsyncKeyState; replaced withGetKeyState(bug #481). - Vertical Tabs: fixed file switching not working in Delphi 6/7 by pausing the polling timer during the switch. Project and project group files are now filtered from the list (feature #226).
- Uses Clause Manager: fixed an access violation on the 64-bit IDE caused by storing a TStringList pointer in the 32-bit
TComponent.Tagproperty, truncating the upper 32 bits on Win64.
Discussion about this in the corresponding post in the international Delphi Praxis forum.