What's new in Geany Portable 2.0
Oct 24, 2023
- General:
- Split "session data" into session.conf, preferences are written to and read from geany.conf (PR#2776, PR#2779, PR#3014, PR#3125 and more).
- Add new build system Meson (experimental) (PR#2761).
- Require GTK 3.24 (#3580).
- Bug fixes:
- (Re-)Add ability to scroll over document tabs (Luke Horwell, PR#3134).
- Fix keyword colorization on filetype change (PR#3553).
- Fix startup files order when placing tabs next to the current one (PR#3611).
- Interface:
- The document list in the sidebar has a new tree view. This mode is the new default and existing installations automatically use it (PR#1813).
- Use dark-theme friendly colors for compiler messages (PR#3013).
- Add a confirmation dialog on search & replace for the whole session (PR#3033).
- Filter entry for symbol tree (PR#3055).
- Simplify project creation from existing directories with sources (PR#3042).
- Add option to show symbols in symbol tree without category groups (PR#3172).
- Add option to only show line endings if they differ from file default (PR#3287).
- Make tab label length and window title length configurable (Abdul Rafey, #3365).
- Make Go to Symbol commands show signature list (PR#3475).
- Editor:
- Update Scintilla to 5.3.7 and Lexilla to 5.2.7 (PR#2867, PR#3551).
- Add "Change history" feature (disabled by default) (PR#3551).
- Filetypes:
- Sync many parsers from the Universal Ctags project, this leads to updated symbol parsers (PR#2990, PR#2991, PR#3032).
- Improved support for the ctags file format, which is now the recommended format for tags files (PR#3049).
- Update Kotlin filetype config (PR#3456).
- Apply Markdown header style to the complete header (Robert Di Pardo, PR#3602).
- Update Nim filetype config (Zoom, PR#2988).
- Update PHP filetype config (PR#3488).
- Update Python filetype config (PR#3039).
- Add AutoIt filetype (Skif-off, PR#1752).
- Add GDScript filetype (David Yang, PR#3012).
- Remove Ferite filetype (PR#3075).
- Enable local variables and improve autocompletion for C/C++ and some other languages (PR#3185, PR#3275).
- Windows:
- Remove native file and color dialogs on Windows, GTK dialogs will be used instead (#3219).
- Use "Prof-Gnome" GTK theme by default (same theme as used on macOS) for a better experience, the "Adwaita" theme can still be activated (PR#3129).
New in Geany Portable 1.38.0 (Dec 16, 2021)
- General:
- Increase speed when opening documents, especially on startup (Justin Blanchard, Issue#2883, Issue#2649, Issue#2791, PR#2884, PR#2747).
- Synchronize Geany's Ctags implementation with Universal Ctags, this leads to updated symbol parsers (Jiří Techet, PR#2666).
- Remove GTK+2 Support (PR#2602).
- Geany needs a C++17 compiler to build (PR#2862).
- Bug fixes:
- Workaround crashes when pasting into VTE without having focus (Issue#2813, PR#2843).
- Interface:
- Add keybinding to reload all open documents (David Yang, PR#2859).
- Filetypes:
- Add Julia filetype (getzze, Issue#434, PR#2584).
- Add Meson filetype (Andy Alt, PR#2850).
- Plugins:
- SaveActions: add configurable target directory for instantly saved files (Issue#640, PR#2769).
- Windows:
- Fix message window height after restart (Issue#2591, PR#2892).
- Switch Windows builds to GTK3 and x86_64 (PR#2590).
- Internationalization:
- Updated translations: da, de, el, es, et, fr, it, ja, nl pt, pt BR, sk, tr, uk, zh_CN
New in Geany Portable 1.37.1 (Feb 18, 2021)
- Fix crash on first startup (Issue#2639, PR#2645).
New in Geany Portable 1.36 (Nov 22, 2019)
- General:
- Give precedence to user-defined filetype extension mappings over default ones (PR#2166).
- Give precedence to the longest matching filetype pattern (Issue#1499, Issue#1921, PR#2167).
- Place the socket file in $XDG_RUNTIME_DIR when available (Thomas Martitz, PR#2222).
- Bug fixes:
- Improve path ellipsising in Go To Tag filetype popup (Thomas Martitz, PR#2262).
- Interface:
- Show group prefix for the Various preferences (PR#2176).
- Show the GTK/GLib versions in about dialog (PR#2163).
- Editor:
- Update Scintilla to version 3.10.4 (PR#2138).
- Add support for fractional font sizes (Pedro Henrique Antunes de Oliveira, Issue#703, PR#2250).
- Filetypes:
- Add Apple Swift filetype (Ankit Pati, PR#1323).
- Add Nim filetype (Simon Krauter, Issue#1772, PR#2085).
- Update NSIS keywords (PR#2181).
- Update error matching for the CUDA filetype (Rajesh Pandian M, Issue#2213, PR#2218).
- Add Kotlin custom filetype (Issue#1581, PR#2186).
- Add Groovy custom filetype (PR#2188).
- Add TypeScript custom filetype (Issue#1449, PR#2187).
- Small update of Django keywords (PR#2315).
- Don't suggest to override all settings through Tools->Configuration Files (Issue#1552, PR#2168).
- Windows:
- Migrate the installer to NSIS 3 (Issue#1302, PR#2181).
- Fix build on recent MSYS2 (Issue#2261, PR#2263).
- Internationalization:
- New translations: ku
- Updated translations: da, de, es, fr, it, ja, lv, pt, sk, sv, zh_CN
New in Geany Portable 1.33.0 (Jun 18, 2018)
- Bug fixes:
- Fix the symbols tree hierarchy when several tags have the same name (PR#1598).
- Interface:
- Add a tooltip showing the full path on menu items representing documents (PR#1706).
- Add a note for applying the indent settings in the project preferences (PR#1650).
- Enable popup menu on sidebar and message window notebooks (PR#1726).
- Show status message on attempt to execute empty context action (Lars Paulsen, PR#1642).
- GTK3 theming improvements and documentation (PR#1382).
- Filetypes:
- CSS: Update Grid properties (Issue#1705).
- Internationalization:
- Updated translations: de, el, es, fr, it, lv, pl, pt, tr, ru, zh_CN
New in Geany Portable 1.31.0 (Sep 19, 2017)
- Update statusbar after applying indentation detection
- Fix converting color to hex for insertion in the Color Chooser
- dialog (Vasiliy Faronov, PR#1536).
- Filetypes:
- Add `parfor` to the Matlab keyword list (A. Tombs, PR#1021).
- C: fix line continuation handling (PR#1370).
- Add `require_relative` to the Ruby keyword list (Jacob H. Pratt,
- PR#1472).
- Update Haxe keywords (PR#1216).
- Fix Arduino comment toggling (Giorgioggì, PR#1510).
- Update CMake keywords (Yan Pashkovsky, PR#1315).
- Update C# keywords (Yan Pashkovsky, PR#1315).
- Update HTML keywords (Vasiliy Faronov, PR#1530).
- Internationalization:
- Updated translations: ca, id, ja, kk, lt, ru
- API:
- Fix crash when calling plugin_set_key_group() more than once
New in Geany Portable 1.30.1 (Jun 9, 2017)
- Editor:
- Fix auto-completion and calltip popup position on multi-monitor setups (Issue#1422).
- Internationalization:
- Updated translations: ca, de, el, es, sk
New in Geany Portable 1.30 (Jun 8, 2017)
- GENERAL
- Initial accessibility support in the editor (SF#328).
- Fix scrolling on Wayland (Issue#1320).
- BUG FIXES:
- Fix Ctrl+X and Ctrl+C in non-Latin keyboard layouts (Forkest, PR#1386).
- Fix search history filling on GTK >= 3.20 (PR#1404).
- Simplify setting build menu items labels, fixing a Commander plugin issue (Vasiliy Faronov, PR#1396).
- INTERFACE:
- Fix the current scope shown in the statusbar (Issue#1279).
- EDITOR:
- Update Scintilla to version 3.7.3.
- Fix triggering default keybindings together with snippets keybindings (Issue#1354, PR#1356).
- FILETYPES:
- Update JavaScript keywords (Abel 'Akronix' Serrano Juste, PR#1361).
- Partial highlighting of JavaScript ES6 template strings (Issue#934).
- Add Arduino custom filetype (Issue#1339).
- INTERNATIONALIZATION:
- Updated translationsde, es, fr, it, lt, pt
- API:
- Remove unprefixed Scintilla structure aliases. Plugins must use the `Sci_`-prefixed version from now on.
- Add `geany_api_version()` to detect the API version of Geany at runtime (Thomas Martitz, PR#1406).
New in Geany Portable 1.29 (Nov 14, 2016)
- GENERAL:
- Fix search entries color with the default GNOME 3.20 GTK2 theme
- Improve support for GTK 3.22.
- Add support for VTE 0.38 and newer
- BUG FIXES:
- Fix build when the CXX variable contains flags (PR#1155, Issue#829).
- Fix focusing the message window when the Terminal tab is active
- EDITOR:
- Update Scintilla to version 3.7.0
- Add support for keeping the cursor a number of lines from the edges to always show some context
- Allow to configure keybinding for "Delete to beginning of line"
- Performance improvements with many duplicate symbols
- Allow to configure the error indicator color
- FILETYPES:
- Fix highlighting of Haxe preprocessor
- Add `.exp` extension to TCL
- INTERNATIONALIZATION:
- Updated translations: ca, de, el, es, fr, id, it, kk, nl pt, pt_BR, sv, zh_CN,
- API:
- Update GeanyProxyProbeResults` API
- Warn if a dot is used at the start of a proxy extension (PR#1212, PR#1233).
- Add support for custom data attached to documents through `plugin_set_document_data()`, `plugin_get_document_data()` and `plugin_set_document_data_full()`
- Add "project-before-close" signal
- PLUGINS:
- Split Window: Work around a GTK bug present from 3.15.9 to 3.21.4
- that breaks the document selection popup (Issue#1149, PR#1272).
- WINDOWS:
- Include 'grep.exe' from MSYS2 which works better than the previously self-compiled version
- Fix executing external commands (mainly Build and Run commands) where paths and filenames with non-ASCII characters are involved
- Do not create a batch file on Run commands any longer, instead use a re-usable script and so eliminate the need to delete the script from itself
New in Geany Portable 1.28 (Nov 14, 2016)
- Improve support for GTK 3.20:
- System filetype files and system tags files are now in sub-directories filedefs/* and *tags/* respectively
- Bug fixes:
- canceling keybinding overriding by discarding the dialog
- type name coloring when types change
- Undo of line end type change
- Editor:
- Update Scintilla to version 3.6.6.
- Improve Goto Symbol popup contents
- Filetypes:
- Treat `.h` headers as C++ by default
- Various improvements to the Ruby parser
- Haskell single line comments
- Update Java keywords:
- handling of curly brackets in Make
- Add ECMAScript 6 keywords
- Slight improvement to the Java file template
- Add missing `last-child` CSS pseudo-class
- Internationalization:
- Updated translations: ca, de, el, es, fr, it, ja, lt, pt, ru, sk, tr, zh_CN
- API:
- Don't require static strings for key group name and label (PR#1126).
- Formally add TMTag to the API
- Plugins:
- Class builder: use `.hpp` extension for C++ headers by default
- Windows:
- Show an error if an URI cannot be opened
New in Geany Portable 1.27 (Nov 14, 2016)
- General:
- Remove Waf build system (PR#769).
- Bug fixes:
- Fix build with GLib < 2.32 (Issue#764).
- Fix missing progress bar during build runs (Issue#765).
- Fix infinite loop when performing reflow on some input with many consecutive spaces (Issue#848, PR#852).
- Fix some locale encoding conversion issues (Jiří Techet, PR#547).
- Interface:
- Allow to set a keybinding for File->Properties (Issue#622, PR#952).
- Make it possible to define default symbol_list_sort_mode (Jiří Techet,
- Issue#313, PR#581).
- Add keybindings for custom commands 4 through 9 (Thomas Sahlin, PR#858).
- Use "Symbol" in place of "Tag" everywhere it does not refer to markup tags (Jiří Techet, Issue#579, PR#582).
- Editor:
- Update Scintilla to version 3.6.3 (including improved support for Lua 5.3 and Perl 5.22).
- Greatly improve scope completion (Jiří Techet, PR#488, PR#505, PR#862, R#906).
- Performance improvement highlighting types (Jiří Techet, PR#575).
- Show calltips after a C++ explicit specialization (PR#496).
- Show a popup to select the symbol when going to a symbol has several options (Jiří Techet, PR#406, PR#923).
- Filetypes:
- Added some extra Markdown extensions (Andrea Stacchiotti, PR#820).
- Add `.asm51` and `.a51` extensions for 8051 assembly (Devyn Collier Johnson, PR#739).
- Fix C++ namespaces scope (Issue#871).
- Fix parsing of C++ global scope qualifiers in base class lists.
- Use the C++ parser for CUDA filetype (Issue#830, PR#831).
- Add Clojure file extensions (Daniel Șuteu, PR#842).
- Improve return type and var type recognition in C, C++, C# and D (Issue#845, PR#889).
- Fix parsing of C++11 raw string literals (PR#879).
- Update built-in PHP symbols (Issue#584, PR#603).
- Fix parsing some Objective-C properties (PR#940, PR#941).
- Internationalization:
- Updated translations: de, es, fr, it, ja, kk, lt, nl, pt, ru, sk, zh_CN
- API:
- Add `editor_set_indent_width()` (Thomas Martitz, PR#903).
- Add GeanyFiletypeID` and deprecate `filetype_id` (PR#932).
- Remove non-API type `langType` (Jiří Techet, part of PR#906).
- Mark deprecated API so GCC-like compilers can warn about it, and add `GEANY_DISABLE_DEPRECATION_WARNINGS` to silence those (PR#911).
- Add `scintilla_object_send_message()`, `scintilla_object_get_type()`and scintilla_object_new()` alias to the API as synonyms for their legacy counterparts `scintilla_send_message()`, `scintilla_get_type()`and `scintilla_new()` (Thomas Martitz, PR#874).
- Windows:
- Project->Open now respects the native dialog setting (PR#961).
New in Geany Portable 1.26 (Feb 13, 2016)
- General :
- New plugin API (Thomas Martitz, PR#469). Add support for "proxy" plugins (Thomas Martitz, PR#629).
- Bug fixes:
- Fix "Open in New Window" command (Issue#590).
- Fix spurious "source file has been modified" (Jiří Techet, Issue#605, PR#621).
- Don't open more than one document for non-existing paths from the CLI (https://bugs.launchpad.net/linuxmint/+bug/1482558, PR#646).
- Fix configuration directory encoding on non-UTF-8 non-Windows systems (Dimitar Zhekov, PR#658).
- Interface:
- Use monospace font for the message window by default (Jiří Techet, Issue#435, PR#580).
- Fix mnemonic conflict in "Use multi-line matching" (Ross Konsolebox, Issue#589, PR#647).
- Editor:
- Update Scintilla to version 3.6.1.
- Fix completion popup height when view is zoomed (Issue#702).
- Fix Go To End Of Display Line when wrapping is on and EOL are visible (Issue#712).
- Keeping undo history when reloading files is now enabled by default (Thomas Martitz, Issue#562, PR#672).
- "Strip trailing spaces", "Replace tabs" and "Replace spaces" now follow the current selection (Pavel Sountsov, PR#394).
- Respect Smart Home Key setting in Go To Start of Display Line.
- Check whether the document is newer on disk when the window gets focused (Jiří Techet, PR#533).
- Filetypes:
- Add Cargo build commands for Rust (Wayne Nilsen, PR#557).
- Add recent Perl keywords (Olivier Duclos, PR#599).
- Add missing Python 3 keywords and builtins (PR#755).
- Improvements to the Rust filetype (Pavel Sountsov, PR#613).
- Add multiline comment to Haskell (Abel Serrano Juste, PR#638).
- Recognize `.adoc` is as Asciidoc (PR#708, PR#711).
- Recognize `.mml` and `.mathml` as XML (Devyn Collier Johnson, PR#731).
- Internationalization:
- Updated translations: de, el, es, fr, hu, id, kk, pt, sk, sv, ru Fix internationalization of "Open in New Window" items.
- API:
- New plugin API, `geany_load_module()`, `geany_plugin_register()`, `GEANY_PLUGIN_REGISTER()`, `geany_plugin_register_full()`, `GEANY_PLUGIN_REGISTER_FULL()` (Thomas Martitz, PR#469).
- Add support for "proxy" plugins, `geany_plugin_register_proxy()` (Thomas Martitz, PR#629).
- Allow `user_data` parameter and `destroy_notify` callback to keybindings with new `keybindings_set_item_full()` and `plugin_set_key_group_full()` (Thomas Martitz, PR#376).
- Windows:
- Restore modern design of native file dialogs (Issue#578).
New in Geany Portable 1.25 (Feb 13, 2016)
- General:
- GTK3 support, while not enabled by default, is now considered stable.
- Improve MacOS X support.
- Improve subprocess spawning (especially on Windows).
- Huge tag management performance improvement (auto-completion, calltips, etc.)
- Remove broken "Show macro list" keybinding and feature.
- Add %l substitution to build commands.
- Depend on GTK 2.24 and GLib 2.28.
- Add per-project line wrapping, line breaking and comment continuation settings.
- The plugin API is now split out of the main executable into libgeany, a shared library plugins have to link against.
- Bug fixes:
- Fix applying filetype-specific indentation settings for newly opened files.
- Fix relative project base path when creating a new project
- Fix next/previous keybindings when no files are open.
- Fix markup injection in some tooltips (#1091).
- Use absolute project path for projects opened from the command line
- Fix goto tag in some cases when the same symbol name appears in different languages
- Fix UI updating after loading a project.
- Fix the currently selected document after Save All.
- Fix leftovers in the Project dialog in some cases.
- Fix function return type in symbol list tooltips in some cases
- Fix VTE path following on startup.
- Interface:
- Show document-related dialogs embedded in the main window ("info bars")
- Plugin manager dialog cleanup and overhaul (PR#251, PR#414).
- Filetypes can now define the MIME type used to select their icon
- Close documents in the sidebar with middle mouse button
- Ask whether to replace project files when creating a project.
- Ask whether to adopt the open documents when creating a new project
- Allow to disable the list of recent files.
- Fix many shadow inconsistencies
- Add virtual column and selected chars to the statusbar
- Add "dirty" terminal indication
- Allow to select the None filetype in the Open File dialog
- Add configuration menu entries for all filetypes
- Editor:
- Update Scintilla to version 3.5.6 (#1041).
- Do not comment out blank lines when toggling comments
- Improve handling of Verilog strings and comments.
- Support for keeping undo history when reloading files. This is not enabled by default in this release.
- Respect filetype.common's wordchars if a filetype doesn't have its own
- Search:
- Add support for single-line regular expressions
- Default action is now "Replace & Find" in the replace dialog but can be configured
- Activate default action from all fields in the Find in Files dialog
- Filetypes:
- Add JSON filetype.
- Add Zephir filetype.
- Add CoffeScript filetype.
- Add Go tags parser
- Add Erlang tags parser .
- Add PowerShell tags parser (PR#477).
- Many JavaScript parsing fixes and improvements.
- Many CSS parser fixes and improvements.
- Many Txt2tags parsing fixes and improvements (feature #690).
- Make parser fixes and improvements.
- Parse D enum base type (PR#404).
- Various small Rust fixes .
- Highlight C types in C++.
- Add some missing C11 keywords.
- Add some missing SQL keywords.
- Fix and add some CSS keywords.
- Fix some FreeBasic keywords (#691).
- Add some missing D keywords .
- Fix R keywords and wordchars
- Fix styling of some CSS elements.
- Fix styling of Lua preprocessor.
- Fix style of PHP variables interpolation.
- Recognize `.vbs` files as FreeBasic
- Recognize `.tpl` files as HTML.
- Recognize `.xtpl` files as XML.
- Recognize `.xpm` files as C.
- Recognize more Bash files
- Update templates for Python and Vala.
- Add template for HTML5.
- Fix parsing of some Python triple-quoted strings.
- Add some linting tools to some filetype's default Build menu.
- Fix scope of some Python symbols.
- Fix support of trigraphs in C-like languages.
- Add support of digraphs in C-like languages.
- Add support of `final`, `override` and `noexcept` C++11 keywords
- Internationalization:
- Update translations: be, ca, cs, de, el, es, fr, id, it, ja, nl, pl, pt_BR, pt, ru, sl, sr, sv, zh_CN.
- Plugins:
- File Browser: use "explorer" as the default open command on Windows.
- File Browser: use icons based on the detected file's MIME type
- Save Actions: use mode 0600 for backup copies (#833, PR#413).
- Split Window: Fix a few keybindings (cut, copy, paste, delete, select all)
- API:
- Hide private API
- Cleaner and safer TagManager API (Part of PR#356, Jiří Techet).
- Entry point prototypes are now checked by the compiler (PR#359).
- Add pseudo-unique document IDs through GeanyDocument::id and document_find_by_id(). This is a safer API for keeping a reference to a document for a long time (PR#256).
- Add convenient and portable spawning API: spawn_sync(), spawn_async(), spawn_with_callbacks(), spawn_kill_process(), spawn_check_command(), spawn_write_data().
- plugin_signal_connect() is now safe to use also with objects destroyed before unloading the plugin.
- Add document_reload_force() to replace document_reload_file().
- Add project_write_config()
- Add keybindings_get_modifiers() and GEANY_PRIMARY_MOD_MASK
- Fix emission of the 'document-activate' signal in some cases.
- Add ui_tree_view_set_tooltip_text_column().
- Add scintilla_get_type().
- Windows:
- Use native Windows quoting rules for commands (on Windows, part of subprocess spawning improvements).
- Prompt before overwriting existing files when using native Save As dialog
- View -> Change Font now respects the native dialog setting.
- Fix main window freeze when displaying native dialogs.
- Use the same plugin directory as other platforms
New in Geany Portable 1.24 (Apr 22, 2014)
- General:
- Add experimental support for GTK3.
- Add support for loading CTags and Vi tags files.
- Save configuration when plugin manager dialog is closed.
- Bug fixes:
- Fix many small memory leaks (many of them found by Pavel Roschin).
- Fix stopping of some spawned commands.
- Fix cursor position and selection after comment toggling (#3576431).
- Fix truncated output of ``--list-documents`` command-line option.
- Fix launching a new instance when ``--list-documents`` is passed and no other instance is running.
- Fix crash if a Custom Command returns after its related document has been closed.
- Fix typo in "deque" C++ include name (#1027).
- Fix replacing a selection starting with "0x" by a color if the selection is not 8 bytes long.
- Fix a possible crash on quit.
- Interface:
- Fix custom GTK styles under KDE (#3607935).
- Add Find entries in the Symbol List popup menu (#3608278).
- Flatten-out the View menu.
- Add a button to directly configure a plugin's keybindings in the plugin manager (Pavel Roschin).
- Add an Apply button to the color chooser dialog (FR#686, Steven Valsesia).
- Use a non-cropped 16x16 application icon (#1010).
- Fix "leaks" of geany_run_script (#975).
- Editor:
- Update Scintilla to version 3.3.6 (#962, #995).
- Fix Reflow to follow Line breaking behavior (#382, #412, #464, Eugene Arshinov).
- Fix unfolding the very last line in a level (#1007).
- Fix commenting the very last line in some situations.
- Search:
- Fix bulk Search & Replace not to match replacements.
- Fix finding start of word when performing whole word matching.
- Search when activating the Replace dialog find entry.
- Filetypes:
- Add CUDA filetype (PR#147, Benjamin Chrétien).
- Add Rust filetype (PR#181, SiegeLord).
- Add Batch filetype (canou).
- Add Graphviz filetype (PR#125, Miro Hrončok).
- Add PowerShell filetype (Igor Shaula).
- Add Clojure filetype (PR#92, Hoàng Minh Thắng).
- Many improvements to the PHP tag parser.
- Update PHP global tags file (PR#137, John Long).
- Improve shebang detection for mksh and tcsh shells (PR#126 , Ypnose).
- Fix Asciidoc parser recognition of open block as underline.
- Fix symbol list entry for Asciidoc headers containing a dot.
- Fix Asciidoc title parsing.
- SQL parsing improvements.
- Extend list of recognized keywords for SQL.
- Fix SQL single-line comment marker (#997).
- Fix parsing of some JavaScript constructors (#966).
- Fix parsing a JavaScript regular expression in a return statement.
- Fix parsing JavaScript files with a shebang.
- Parse Java annotations with parameters (#924, Braden Walters).
- Display Java enums in the symbol list.
- Add "strictfp" Java keyword and fix annotation parsing (#936, #924).
- Fix parsing of C++ static_assert.
- Fix parsing of typed enums in C# and C++.
- Mitigate parsing errors on C++ generics containing an expression.
- Add C++ member pointer operator to scope autocomplete operators (#907).
- Fix parsing of Fortran "forall" blocks and procedure pointers (Alexander Eberspächer).
- Fix parsing of complex Cython types.
- Fix re-parsing Objective-C code.
- Fix parsing of Verilog initializers.
- Fix displaying of quoted Bash HereDoc delimiters (#952).
- Add some HTML5 keywords (Duncan de Wet).
- Add Erlang snippets and a template (PR#157, Fabio Ticconi).
- Haskell highlighting improvements (kudah).
- Add Matlab class keywords (PR#136, Felix Totir).
- Fix argument list on some Python constructors.
- Fix R indenting to use braces.
- Display R sources and libraries in the symbol list.
- Many improvements to the Fortran tag parser (#1023, #1030, with help from Adam Hirst).
- Put Makefile comments at start of line.
- Add some missing Pascal keywords (#1033, PR#144).
- Add default build command for Bibtex in the Latex filetype (PR#227, Francisco Iacobelli).
- Ignore Python imports when going to a tag's definition.
- Add some more Ruby extensions (Igor Shaula).
- Internationalization:
- Make date templates translatable (Christian Dywan).
- Update translations: ca, cs, de, es, eu, fr, gl, he, hu, it, kk, lt, nl, pt, ru, sk, sl, sv, tr, zh_CN, zh_TW
- Plugins:
- Save Actions: add autosave when the editor lose focus (FR#683, Steven Valsesia).
- Export: fix exporting a document not ending with a newline.
- Export: fix including random, unused styles in the output.
- Export: fix HTML title if the file name contains control characters.
- Export: fix LaTeX export with many consecutive '-', ''.
- API:
- Add plugin_builder_connect_signals().
- Windows:
- Fix infinite pagination when printing (#961).
- Fix spawning commands with spaces (#943).
- Allow to use the GTK color chooser dialog (PR#218, Steven Valsesia).
- Add default extension to native save dialogs (#1021).
- Add colorschemes from the Geany-Themes project to the Windows installer.
- Add option to install Geany header files and pkgconfig file to the Windows installer.
- Fix broken opening files from command line on Windows (again, #3613096).
New in Geany Portable 1.23.1 (Jun 1, 2013)
- Bug fixes:
- Fix custom styles under KDE and for people using gtk-chtheme (corrects tab coloring).
- Fix broken opening files from command line on Windows.
New in Geany Portable 1.23 (Jun 1, 2013)
- General:
- Various fixes to language theming
- Various Windows makefile fixes.
- Rewrite printing code
- Use the Geany icon from the theme
- Make Geany-specific icons themeable.
- Bug fixes:
- Fix too aggressive scope caching
- Fix showing project name in the Documents sidebar.
- Fix opening filenames with leading or trailing spaces from the command line into a running instance.
- Fix re-opening files with unknown but detected encoding
- Fix crash when loading a broken or incompatible VTE library.
- Report scope including classes, namespaces and alike
- Fix cancelling Project Close when showing the unsaved changes dialog.
- Only use "allow_always_save" setting for direct user interaction
- Fix some keybinding not getting properly displayed in the menus after being updated
- Make Terminal tool setting more flexible to support any terminal.
- Fix replacing file name in files header upon save.
- Fix UAC Virtualization issue on newer Windows versions when trying to save files to read-only locations
- Interface:
- Control-click on the symbols sidebar don't focus the editor.
- Add an option to place the message window on the right.
- Fix display of non-ASCII tags in the symbols tree for non-UTF-8 files.
- Replace 'Open file in a new tab' save dialog option with new Document->Clone' menu item.
- Fix clashing button mnemonic in detect/reload dialog
- Grab focus in the embedded terminal upon middle click
- Add support for embedded terminal background image
- Editor:
- Update Scintilla to version 3.2.3
- Properly indent even if the indenting character isn't the last one.
- Always display text in LTR direction.
- Improve collapsing fold behavior when start point is offscreen.
- Faster squiggle underlining.
- Fix multiline comments at end of file
- Keep caret and anchor position upon indent and unindent
- Complete on dash (-) too in CSS documents.
- Make wordchars have precedence over whitespacechars
- Fix cursor position after comment toggling with no selection
- Fix reshowing calltip after autocompletion list closed.
- Fix uncommenting multiline comments when cursor is on a delimiter.
- Clear search markers on Mark All keybinding when already set.
- Never strip trailing spaces from Diff documents.
- Reduce unnecessary redraws when typing
- Fix comment toggling inside PHP and HTML with bottom-up selection.
- Search:
- Mark All' now also uses the fully-featured PCRE engine
- Only set Find in Files directory once per-document.
- Fix a crash when matching the very last character of the document.
- Fix search and replacement of empty matches.
- Fix a possible crash when searching on a range.
- Keybindings:
- Add keybinding for 'Go to Start of Display Line'
- Allow to change the keybinding for 'Quit'.
- Filetypes:
- Parse '!' char in D parameter lists.
- Fix parsing of Haskell comments inside a type
- Fix Cython auto indentation.
- Add more keywords to Forth (Oco).
- Add some missing Haxe keywords
- Add some missing CSS3 keywords
- Add some missing D keywords
- Fix a crash parsing some C macros
- Update some Python keywords.
- Update Python global tags file.
- Show VHDL blocks in the symbol list.
- Fix ruby scope after "do"
- Fix parsing of ruby keywords when followed by a semicolon
- Lots of JavaScript symbols parsing improvements
- Use "scala" extension for Scala
- Fix parsing of reStructuredText titles containing UTF-8
- characters
- Parse C++11 final classes
- Parse C++11 enums with type specifier and classed enums
- Fix highlighting of C++11 raw strings
- Fix parsing of colons in D .
- Fix parsing of D 'static assert'
- Parse scope for D nested template blocks
- Ignore D angle brackets.
- Fix reStructuredText comment marker
- Add Asciidoc filetype.
- Fix parsing of Python keywords followed by a tab (\t).
- Add more HTML5 self-closing tags
- Update default D template to use a more standard prototype for main().
- Fix improperly translated string in Pascal template
- Add Go language filetype
- Plugins:
- Export: Fix missing linking on libm
- File Browser: Backspace now moves to parent directory.
- API:
- Fix plugin_add_toolbar_item() insertion order
- Windows:
- Fix spawning synchronous commands on Windows.
- Show Find in Files status summary.
- Add icon to the Explorer context menu item.
- Internationalization:
- Add translations: et, eu, he, hi, sr
- Update translations: ca, cs, de, es, fi, gl, it, kk, lt, nl, pt_BR, ru, sv, sl, tr
- Fix a crash when using the Turkish translation
New in Geany Portable 1.22 (Jun 1, 2013)
- General:
- Bump dependencies to GTK >= 2.16 and GLib >= 2.20.
- Switch to Glade 3 and dynamically loaded XML UI description.
- Rewrite theming support for better flexibility.
- Add support for opening files read-only from the command line.
- Always load the default session if configured to do so.
- Make all filetypes use named styles to simplify color scheme authoring.
- Make 'Replace Spaces by Tabs' only match leading spaces to preserve alignment.
- Possibly incompatible changes:
- Theming and filetype style changes mean old filetypes and color schemes are not compatible with this version of Geany.
- There are some default keybinding changes but these will only apply to newly created configurations.
- Changes to the "project-dialog*" signals may affect plugins.
- Bug fixes:
- Fix escaping of session file paths (#3425969).
- Fix closing when minimized under Windows (#3421282).
- Properly handle remote URIs received through drag 'n drop (#2966770, #3479567).
- Fix build with bleeding-edge GLib (#3483388).
- Fix color scheme selection in Ubuntu Unity (#3479674).
- Fix very slow regex tag parsing on Windows (e.g. for HTML).
- Fix detecting a changed file on disk when opening from the command-line (Windows).
- Fix quick search entry behavior on Windows.
- Fix keybindings conflicts check when swapping a binding.
- Fix comments insertion in some cases (#3449635, #3534320).
- Add missing Windows mio makefile.
- Prefs:
- Split "always wrap search and hide find dialog" pref into "always wrap search" and "hide find dialog" (Dimitar Zhekov).
- Add Project Properties overrides for 'Saving files' prefs.
- Add hidden VTE preference "send_cmd_prefix" to prefix commands sent to the VTE. (See the manual for details).
- Interface:
- Add support for switching to the last used document after closing a tab (Jiří Techet).
- Improve the tab switching dialog for better usability (Jiří Techet).
- Add support for user-defined labels for 'Send Selection to' custom commands.
- Fix sidebar width when on the right (#3514436).
- Use case-insensitive document list path comparison on Windows.
- Replace Color Schemes menu with custom dialog.
- Show selected line count on status bar when whole lines are selected.
- Editor:
- Update Scintilla to version 2.29.
- Add a "join lines" command (Eugene Arshinov).
- Hide autocompletion when the only entry has been typed (#3516212).
- Search:
- Add full PCRE regular expressions support.
- Extra options passed to grep through Find in Files now follows a real shell-style syntax (#3516263).
- Search pattern length is no longer limited to 248 characters.
- Fix showing Find/Replace regex compile errors on the status bar.
- Keybindings:
- Add Project New/Open/Properties/Close keybindings.
- Show overridden keybindings in bold for prefs dialog tree.
- Tags:
- Speed up loading of multiple global tags files.
- Show global tags file preprocessing errors on stderr & add current directory to include path.
- Add C/C++ ignore.tags wildcard format 'PREFIX*'.
- Filetypes:
- Add support for regex-based filetype detection.
- C snippets no longer apply to all filetypes.
- Improve support for HTML embedded filetypes (#2863829, #3127598).
- Add filetype Objective-C (Elias Pschernig, P#3325139).
- Fix highlighting of ``...R"`` inside C and C++ (#3425107).
- Fix TCL keyword highlighting in some situations (#3432877).
- Parse PHP functions with multiline argument list (#3037797).
- Handle ``/bin/dash`` shebang (#3470986).
- Update JavaScript parser from CTags.
- Parse D class/struct/interface template bodies and template blocks; ignore 'static if' expressions; parse function @attributes, pure/nothrow and immutable/inout/shared return types.
- Fix broken tag/word autocompletion in HTML/PHP documents.
- Enable &entity; completion for all XML-based filetypes.
- Plugins:
- Split Window: show marker margin.
- Split Window: enable basic context menu.
- API:
- document_save_file() now shows the Save As dialog when necessary.
- Rename signal "project-dialog-create" to "project-dialog-open" and add new "project-dialog-close" signal.
- setptr is deprecated in favour of SETPTR.
- Add ui_hookup_object() and ui_lookup_object().
- Add ui_lookup_stock_label().
- Add build_{activate,get_current,remove,set}_menu_item(), build_get_group_count().
- Add stash_group_free_settings().
- Add support for plugins written in C++.
- Internationalization:
- Add translations: ar, id, lt, mn, nn, sk
- Update translations: de, es, fr, hu, it, ja, kk, lt, nl, pl, pt, pt_BR, sk, sl, sv, tr, zh_CN, zh_TW
New in Geany Portable 0.21 (Oct 4, 2011)
- General:
- Bump dependencies to GTK >= 2.12, GLib >= 2.16 and GIO.
- Add support for real-time symbol parsing.
- Remove old filetype templates support - use custom file
- templates instead.
- Add support for detecting the indentation width from the file
- content.
- Bug fixes:
- Fix generating tag files (-g) and --ft-names segfault.
- Replace dates on template insertion, not when loading templates.
- Fix segfault when inserting e.g. fileheader template when the
- template file is empty (#3070913, lphilpot).
- Use the same indentation for all templates (Matthew Brush,
- 3193527).
- Fix loading of non-UTF-8 templates.
- Fix completion and word completion with non-ASCII characters
- 3313351).
- Fix HTML content-type detection (#3300703).
- Fix pattern filtering when using Find in Files not to search in
- sub-directories.
- Add a workaround to prevent Geany from crashing during loading of
- a LaTeX-file containing linebreaks inside headings.
- Interface:
- Add 'Save As' toolbar button option
- Add 'Open in New Window' command in the notebook tab menu
- Color schemes: use name and description for menu item and
- tooltip (Matthew Brush).
- Shift-Enter in search dialog and toolbar search entries now
- searches backwards.
- Improve `Set Custom Commands` dialog.
- Always destroy open and save dialogs after use (#3311258,
- 3304273, #3201050, #3163742, #3153120, #2985896).
- Add UI to edit formerly hidden preferences
- Editor
- Update Scintilla to version 2.25.
- Fix snippets bug: {ob}pc{cb} replaced by '%' instead of {pc}.
- Fix multiple snippet cursor positions for Tabs + Spaces mode.
- Avoid triggering autocompletion on PHP open tags (#3199442).
- Fix indentation brace matching (#3309606).
- Configuration files:
- Support copying filetype definition file group keys from a system
- keyfile with e.g. [styling=C].
- Make filetype group membership configurable using [Groups] in
- filetype_extensions.conf.
- Search:
- Don't auto-enable case-sensitive option when enabling regex in
- Find/Replace dialogs.
- Remember Find and Replace options across restarts
- Keybindings
- Add fixed shortcuts for VTE copy (Ctrl-Shift-C) and paste
- Ctrl-Shift-V).
- Add new keybinding 'Remove Markers and Error Indicators'.
- Projects:
- Store VTE path with the project session
- Filetypes:
- Add Scala custom filetype
- Add Cython custom filetype
- Add support for separate single and multiline comments.
- Add support for filetype-specific indentation settings (#3339420,
- 3390435)
- Fix detecting Matlab and Txt2Tags extensions by default (#3167315,
- 3154637).
- Fix detecting non-lowercase self-closing tags e.g. (#2226117).
- Highlight C# and Vala raw and verbatim strings.
- Improve JavaScript keyword handling and keyword lists
- Add filetype Cobol
- Add file template for Vala
- Plugins:
- File Browser: Make 'Hide object files' preference configurable with
- file extensions.
- Split Window: Fix a crash when changing filetype
- Split Window: Update styles when the filetype changes
- Split Window: Enable code folding
- Split Window: Fix issues on Windows
- Class Builder: Improve dialog UI using a table
- Export: Add option to insert line numbers (#3197150).
- Documentation:
- Add 'Reading styles from another filetype' subsection
- Add 'Filenames' subsection for filetype definition files explaining
- the filename extensions and special cases.
- Add section 'Filetype group membership'.
- Plugin API:
- Add filetypes_get_sorted_by_name(), utils_find_open_xml_tag_pos()
- Add plugin_idle_add(), plugin_timeout_add(), plugin_timeout_add_seconds(),
- ui_menu_add_document_items_sorted(), document_compare_by_display_name(),
- document_compare_by_tab_order(), document_compare_by_tab_order_reverse().
- Deprecate ui_widget_set_tooltip_text().
- Fix public inclusion of config.h (#3384026).
- Add new signal "document-reload".
- Internationalisation:
- Add translations: fa
- Update translations: ca, cs, de, en_GB, es, fi, fr, gl, it, ja, nl, pt,
- pt_BR, sl, sv, tr, vi, zh_CN, zh_TW
New in Geany Portable 0.20 (Feb 28, 2011)
- Change GTK Handling
- Update Geany Portable to Geany 0.20