Fetching contributors…
Cannot retrieve contributors at this time
2328 lines (2029 sloc) 100 KB
Geany 1.29 (unreleased)
* Fix search entries color with the default GNOME 3.20 GTK2 theme
(PR#1137, Issue#1101, Issue#1135, Issue#1267).
* Improve support for GTK 3.22.
Bug fixes
* Fix build when the CXX variable contains flags (PR#1155, Issue#829).
* Fix focusing the message window when the Terminal tab in active
(PR#1200, Issue#1198).
* Update Scintilla to version 3.7.0 (Issue#1143).
* Add support for keeping the cursor a number of lines from the edges to
always show some context (PR#1154, Issue#1152).
* Allow to configure keybinding for "Delete to beginning of line"
(Abel Serrano Juste, PR#1134).
* Performance improvements with many duplicate symbols (Jiří Techet,
PR#797, Issue#577).
* Fix highlighting of Haxe preprocessor (Issue#936).
* Add `.exp` extension to TCL (Simon Marchi, PR#979).
* Updated translations: ca, de, fr, pt_BR, sv
* Update `GeanyProxyProbeResults` API (PR#1213).
* Allow a dot at the start of proxy extensions (PR#1212).
* Add support for custom data attached to documents through
`plugin_set_document_data()`, `plugin_get_document_data()` and
`plugin_set_document_data_full()` (PR#1203).
Geany 1.28 (July 10, 2016)
* Improve support for GTK 3.20.
* System filetype files and system tags files are now in sub-directories
*filedefs/* and *tags/* respectively (Jiří Techet, PR#485).
Bug fixes
* Fix canceling keybinding overriding by discarding the dialog (Issue#714).
* Fix type name coloring when types change (Jiří Techet, PR#1039,
Issue#1020, Issue#1022).
* Fix undo of line end type change (Jiří Techet, PR#527, Issue#409).
* Update Scintilla to version 3.6.6.
* Improve Goto Symbol popup contents (Jiří Techet, PR#958).
* Treat `.h` headers as C++ by default (Jiří Techet, PR#857).
* Various improvements to the Ruby parser (Issue#587).
* Fix Haskell single line comments (Alexander, PR#1029).
* Update Java keywords (Yan Pashkovsky, PR#1024).
* Fix handling of curly brackets in Make (Masatake Yamato).
* Add ECMAScript 6 keywords (Chris Mayo, PR#980).
* Slight improvement to the Java file template (Philipp Wiesemann, PR#1073).
* Add missing `last-child` CSS pseudo-class (Issue#1102).
* Updated translations: ca, de, el, es, fr, it, ja, lt, pt, ru, sk,
tr, zh_CN
* Don't require static strings for key group name and label (PR#1126).
* Formally add TMTag to the API (Thomas Martitz, PR#1093).
* Class builder: use `.hpp` extension for C++ headers by default
(Yan Pashkovsky, PR#999).
* Show an error if an URI cannot be opened (PR#1079).
* Fix refreshing the keybindings displayed in the menus (Jiří Techet,
Geany 1.27 (March 13, 2016)
* 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).
* 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).
* 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,
* 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).
* 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).
* Updated translations: de, es, fr, it, ja, kk, lt, nl, pt, ru, sk,
* 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
* 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).
* Project->Open now respects the native dialog setting (PR#961).
Geany 1.26 (November 15, 2015)
* 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,
* Don't open more than one document for non-existing paths from the CLI
(, PR#646).
* Fix configuration directory encoding on non-UTF-8 non-Windows systems
(Dimitar Zhekov, PR#658).
* 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).
* 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
* 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).
* 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).
* Updated translations: de, el, es, fr, hu, id, kk, pt, sk, sv, ru
* Fix internationalization of "Open in New Window" items.
* 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).
* Restore modern design of native file dialogs (Issue#578).
Geany 1.25 (July 12, 2015)
* GTK3 support, while not enabled by default, is now considered stable.
* Improve MacOS X support (PR#396, PR#419, PR#420, Jiří Techet).
* Improve subprocess spawning (especially on Windows) (PR#441,
Dimitar Zhekov).
* Huge tag management performance improvement (auto-completion,
calltips, etc.) (PR#356, Jiří Techet).
* Remove broken "Show macro list" keybinding and feature (PR#378).
* Add %l substitution to build commands (PR#289, Martin Spacek).
* 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 (PR#431, Jiří Techet).
* Fix goto tag in some cases when the same symbol name appears in
different languages (PR#487, Jiří Techet).
* Fix UI updating after loading a project.
* Fix the currently selected document after Save All.
* Fix leftovers in the Project dialog in some cases (PR#363, Jiří
* Fix function return type in symbol list tooltips in some cases
(PR#475, Jiří Techet).
* Fix VTE path following on startup.
* Show document-related dialogs embedded in the main window ("info
bars") (PR#277, Matthew Brush and Thomas Martitz).
* 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 (PR#172,
Pavel Roschin).
* Ask whether to replace project files when creating a project.
* Ask whether to adopt the open documents when creating a new
project (PR#315).
* Allow to disable the list of recent files.
* Fix many shadow inconsistencies (PR#411, Jiří Techet).
* Add virtual column and selected chars to the statusbar (Patch #10,
Dimitar Zhekov).
* Add "dirty" terminal indication (PR#476, Jiří Techet).
* Allow to select the None filetype in the Open File dialog
* Add configuration menu entries for all filetypes (PR#491, Jiří Techet).
* Update Scintilla to version 3.5.6 (#1041).
* Do not comment out blank lines when toggling comments (PR#79, Igor
* Improve handling of Verilog strings and comments.
* Support for keeping undo history when reloading files (PR#188, Arthur
Rosenstein). This is not enabled by default in this release.
* Respect filetype.common's wordchars if a filetype doesn't have its own
(Issue#492, PR#501).
* Add support for single-line regular expressions (PR#310).
* Default action is now "Replace & Find" in the replace dialog but
can be configured (Roland Pallai).
* Activate default action from all fields in the Find in Files
dialog (#959).
* Add JSON filetype.
* Add Zephir filetype.
* Add CoffeScript filetype (PR#230, Mark Dresselhaus).
* Add Go tags parser (PR#373, PR#481, Issue#238, Jiří Techet).
* Add Erlang tags parser (PR#445, Beng Tan).
* 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 (PR#306, SiegeLord).
* Highlight C types in C++.
* Add some missing C11 keywords.
* Add some missing SQL keywords.
* Fix and add some CSS keywords (PR#333, Hannes Heute).
* Fix some FreeBasic keywords (#691).
* Add some missing D keywords (PR#293, Danyal Zia).
* Fix R keywords and wordchars (PR#273, landroni).
* Fix styling of some CSS elements.
* Fix styling of Lua preprocessor.
* Fix style of PHP variables interpolation.
* Recognize `.vbs` files as FreeBasic (PR#171, Nicolas Karolak).
* Recognize `.tpl` files as HTML.
* Recognize `.xtpl` files as XML.
* Recognize `.xpm` files as C.
* Recognize more Bash files (PR#291, Peter Bittner).
* 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
* Update translations: be, ca, cs, de, el, es, fr, id, it, ja, nl, pl,
pt_BR, pt, ru, sl, sr, sv, zh_CN.
* File Browser: use "explorer" as the default open command on
* File Browser: use icons based on the detected file's MIME type (PR#455,
Jiří Techet).
* Save Actions: use mode 0600 for backup copies (#833, PR#413).
* Split Window: Fix a few keybindings (cut, copy, paste, delete,
select all) (PR#467, Alex).
* Hide private API (PR#351, Jiří Techet, and PR#429, Matthew Brush and
Thomas Martitz).
* 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() (PR#441, Dimitar Zhekov).
* 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() (PR#361, Jiří Techet).
* Add keybindings_get_modifiers() and GEANY_PRIMARY_MOD_MASK (Jiří
* Fix emission of the 'document-activate' signal in some cases.
* Add ui_tree_view_set_tooltip_text_column().
* Add scintilla_get_type().
* 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 (PR#113, Adam Coyne).
* 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 (PR#540, Thomas
Geany 1.24.1 (April 16, 2014)
* Fix distribution of custom GTK style files (#1037).
Geany 1.24 (April 13, 2014)
* 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.
* 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).
* 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.
* 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.
* 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
* 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).
* 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
* 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 '-', '<' or '>'.
* Add plugin_builder_connect_signals().
* 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).
Geany 1.23.1 (May 19, 2013)
Bug fixes
* Fix custom styles under KDE and for people using gtk-chtheme
(corrects tab coloring, #3607935).
* Fix broken opening files from command line on Windows (#3613096).
Geany 1.23 (March 10, 2013)
* Various fixes to language theming (#3573213).
* Various Windows makefile fixes.
* Rewrite printing code (#2629121, #2804000, #3475444, #3580268,
* Use the Geany icon from the theme (#3576695).
* Make Geany-specific icons themeable.
Bug fixes
* Fix too aggressive scope caching (#2142789, #2667917, #2868850).
* 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
(#3509407, #3605293).
* Fix crash when loading a broken or incompatible VTE library.
* Report scope including classes, namespaces and alike (#1996778).
* Fix cancelling Project Close when showing the unsaved changes
* Only use "allow_always_save" setting for direct user interaction
(Quentin Glidic).
* Fix some keybinding not getting properly displayed in the menus
after being updated (#1912683, #3599251).
* 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 (#3566329, #3515490).
* 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
* Replace 'Open file in a new tab' save dialog option with new
'Document->Clone' menu item.
* Fix clashing button mnemonic in detect/reload dialog (#3587465).
* Grab focus in the embedded terminal upon middle click (#3574724).
* Add support for embedded terminal background image (Mislav
* Update Scintilla to version 3.2.3 (#2808638, #2909124, #3094431,
#3233160, #3540469).
* Properly indent even if the indenting character isn't the last
* 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 (#3026691).
* Keep caret and anchor position upon indent and unindent
* Complete on dash (-) too in CSS documents.
* Make wordchars have precedence over whitespacechars (#3429368).
* 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 (Evandro Borracini).
* Fix comment toggling inside PHP and HTML with bottom-up selection.
* '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.
* Add keybinding for 'Go to Start of Display Line' (#3182425).
* Allow to change the keybinding for 'Quit'.
* Parse '!' char in D parameter lists.
* Fix parsing of Haskell comments inside a type (#3552129).
* Fix Cython auto indentation.
* Add more keywords to Forth (Oco).
* Add some missing Haxe keywords (#3448664).
* Add some missing CSS3 keywords (Trong Thanh Tran).
* Add some missing D keywords (#3595187) (Felix Totir).
* Fix a crash parsing some C macros (#3556536).
* Update some Python keywords.
* Update Python global tags file.
* Show VHDL blocks in the symbol list.
* Fix ruby scope after "do" (#3046418).
* Fix parsing of ruby keywords when followed by a semicolon
* Lots of JavaScript symbols parsing improvements (#2992393,
#3034303, #3034339, #3036476, #3398636, #3470609, #3568542,
#3570192, #3571233).
* Use "scala" extension for Scala (#3574723).
* Fix parsing of reStructuredText titles containing UTF-8
characters (#3578050).
* Parse C++11 final classes (#3577559).
* Parse C++11 enums with type specifier and classed enums
* Fix highlighting of C++11 raw strings (#3578557).
* Fix parsing of colons in D (#3577788).
* Fix parsing of D 'static assert' (#3582833).
* Parse scope for D nested template blocks (#3582833).
* Ignore D angle brackets.
* Fix reStructuredText comment marker (#3585377).
* Add Asciidoc filetype.
* Fix parsing of Python keywords followed by a tab (\t).
* Add more HTML5 self-closing tags (Duncan de Wet).
* Update default D template to use a more standard prototype for
* Fix improperly translated string in Pascal template (#3602314).
* Add Go language filetype (tomboy64).
* Export: Fix missing linking on libm (Chow Loong Jin)
* File Browser: Backspace now moves to parent directory.
* Fix plugin_add_toolbar_item() insertion order (#3522755)
(Dimitar Zhekov).
* Fix spawning synchronous commands on Windows.
* Show Find in Files status summary.
* Add icon to the Explorer context menu item.
* 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 (#3560181).
Geany 1.22 (June 18, 2012)
* 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
* 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.
* 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).
* 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
* Update Scintilla to version 2.29.
* Add a "join lines" command (Eugene Arshinov).
* Hide autocompletion when the only entry has been typed (#3516212).
* 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.
* Add Project New/Open/Properties/Close keybindings.
* Show overridden keybindings in bold for prefs dialog tree.
* 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*'.
* 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.
* Split Window: show marker margin.
* Split Window: enable basic context menu.
* 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(),
* Add stash_group_free_settings().
* Add support for plugins written in C++.
* 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
Geany 0.21 (October 2, 2011)
* 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
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,
* Fix loading of non-UTF-8 templates.
* Fix completion and word completion with non-ASCII characters
* Fix HTML content-type detection (#3300703).
* Fix pattern filtering when using Find in Files not to search in
* Add a workaround to prevent Geany from crashing during loading of
a LaTeX-file containing linebreaks inside headings.
* Add 'Save As' toolbar button option (Matthew Brush, #3153490).
* Add 'Open in New Window' command in the notebook tab menu
(Matthew Brush, #3118059).
* 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 (Dimitar Zhekov,
* 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
* Don't auto-enable case-sensitive option when enabling regex in
Find/Replace dialogs.
* Remember Find and Replace options across restarts (Dimitar Zhekov).
* Add fixed shortcuts for VTE copy (Ctrl-Shift-C) and paste
* Add new keybinding 'Remove Markers and Error Indicators'.
* Store VTE path with the project session (Nicolas Sierro).
* Add Scala custom filetype (werg).
* Add Cython custom filetype (Matthew Brush).
* Add support for separate single and multiline comments.
* Add support for filetype-specific indentation settings (#3339420,
* Fix detecting Matlab and Txt2Tags extensions by default (#3167315,
* Fix detecting non-lowercase self-closing tags e.g. <BR> (#2226117).
* Highlight C# and Vala raw and verbatim strings.
* Improve JavaScript keyword handling and keyword lists (Jason Oster).
* Add filetype Cobol (Seth Keiper).
* Add file template for Vala (Mark Trompell).
* File Browser: Make 'Hide object files' preference configurable with
file extensions.
* Split Window: Fix a crash when changing filetype (Matthew Brush,
* Split Window: Update styles when the filetype changes (Matthew
* Split Window: Enable code folding (Matthew Brush, #3097780).
* Split Window: Fix issues on Windows (Matthew Brush, #2725342).
* Class Builder: Improve dialog UI using a table (Matthew Brush).
* Export: Add option to insert line numbers (#3197150).
* Add 'Reading styles from another filetype' subsection (Matthew
* 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()
(Eugene Arshinov).
* 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".
* 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
Geany 0.20 (January 5, 2011)
* Improve compatibility with GVFS using GIO to save documents (Alexey
* Fix crash when closing a modified document (usually without a
trailing newline) and choosing Save (fixes #3111058).
* Fix crash when using 'Send Selection to Terminal' and the VTE
is not loaded, and when using Ctrl-A after enabling the 'Load VTE'
pref (Dimitar Zhekov).
* Fix a slightly wrong encoding detection on Windows (#3019573).
* Fix issue with single-line commenting/uncommenting blocks when using
Windows line endings.
* Fix saving project indent prefs straight after using project
* Fix wrongly changing edited keybindings when cancelling the
Preferences dialog.
* Fix auto-displaying of sidebar, tab bar, symbols and documents tabs
when only plugin tabs are visible (fixes #3101867).
* Save build commands for filetype None (Lex Trotman).
* Waf: Check for libsocket on OpenSolaris to fix build.
* Color build command fields light grey unless overridden (Lex
* Replace /home/user with ~ in the documents list (Jon
* Display 'new instance' on title bar for 2nd instances (Eugene
* Don't add duplicates to combo box histories.
* Reorganise Find in Files dialog and add Files pattern to filter
search results.
* Implement 'Select All' for the VTE widget.
* Reorganise editor popup menu for shorter size - some items were moved
to submenus.
* Move Go to Marker menu items to Search menu.
* Group Open dialog encoding options by submenus (Adam Ples; #3047717).
* Show mimetype icon in sidebar Documents list and notebook popup menu
(Colomban Wendling).
* Ensure inserted templates always have proper line ending characters
according to the current document's preference.
* Add per-document indent width setting (Jiří Techet).
* Add 'Project->Apply Default Indentation' menu command to override
every document's indentation settings.
* Display better error messages when saving a document fails (Dimitar
* Don't prompt for reloading if the document has not been edited
(Jiří Techet).
* Add Close button to the detected file changed dialog.
* Fix wrong snippet indentation when original cursor line has
non-indentation whitespace (david).
* Fix passing quoted arguments when using 'Send Selection to'. This
means e.g. sed 's/\./(dot)/g' now works.
* Add alternative color scheme based on Python colors
(View->Editor->Color Schemes).
* Replace HTML automatic <table> tag completion with a 'table' snippet
(Eugene Arshinov).
* Auto-indent after an HTML/XML line without a closing tag (Eugene
* Respect 'Smart' home key pref for Shift[+Alt]+Home (fixes #3100290,
Dimitar Zhekov).
* Scroll to the current line when moving the cursor to the next
cursor position in a snippet (#3139490).
* If the current word's tag is on the current line, make Go to Tag
Definition look for a tag declaration instead and vice versa.
* Make Reflow Lines/Block command use the current indented block, not
the whole paragraph (which could have mixed indentation).
* Load insertion templates from system path, don't create them in
the user's config dir.
* File templates are now reloaded on saving.
* Add 'Ensure consistent line endings' file saving pref (Manuel Bua).
* Add 'statusbar_template' hidden pref (Dimitar Zhekov).
* Add 'new_document_after_close' hidden pref to open a new document
automatically after closing all documents.
* Add hidden pref 'find_selection_type' with option to use the X
selection or to repeat the last search when there's no selection,
both off by default.
* Add 'gio_unsafe_save_backup' hidden pref (Lex Trotman).
* Add filetypes.common 'fold_symbol_highlight' color setting.
* Add 'symbol_list_sort_mode' per-filetype setting.
* Fix Alt+[0-9] switching tabs even when other modifiers are also held.
* Add snippet keybinding support (Eugene Arshinov).
* Add 'Insert New Line Before/After Current' keybindings (Eugene
* Add Forth filetype (Thomas Huth).
* Add Lisp filetype (Mário Silva).
* Add Erlang filetype (Taylor Venable).
* Ada: Fix wrong comments.
* C++: Disable user fold points with new lexer property
* Python: Update list of builtins for Python 2.6, simplify
Compile/Syntax Check command. Use named styles for color scheme
support (use alt.conf color scheme if you want the old colors).
* Matlab: Support Octave # comment char.
* Txt2Tags: add highlighting (Forgeot Eric - #3020632).
* Make: fix possible infinite loop in tag parser.
* D: Parse template functions, ignore /+ +/ comments, ignore
unittest blocks, add keywords 'ref', 'macro' and D2 keywords.
* Vala: Parse functions with contracts (#3080232).
* Markdown, reStructuredText and Txt2Tags: Sort tags by line number by
* Basic: Parse property, constructor, destructor as functions
(pottersson; #2992167).
* HTML: Add HTML5 element names and attributes (Ross McKay).
* PHP: Parse final functions (fixes #3111171).
* Markup: Add xml_indent_tags filetype setting for documents using the
HTML/XML lexers (Eugene Arshinov).
* File Browser: Add history to path entry.
* HTML Characters: Only automatically replace characters when the
current document is a Markup document.
* Add translations: kk.
* Update translations: cs, de, en_GB, es, fi, fr, hu, ja, nl, pt,
sl, sv, tr, zh_CN.
* Update 'Custom filetypes', 'Ignore Tags' sections.
* Add 'HTML Characters', 'Configuration file paths', 'Color schemes
menu' sections.
* Explain how to grep the Scintilla source for lexer properties.
* Add 'Bugs to watch out for' section.
* Improve Stash GUI example.
* Fix not loading plugins built against a newer API when Geany doesn't
provide the required version given in PLUGIN_VERSION_CHECK().
* Make GEANY_API_VERSION, GEANY_ABI_VERSION macros instead of enums
so you can protect code with '#if GEANY_API_VERSION >= 200'.
* Add signals "build-start", "project-dialog-create" and
"project-dialog-confirmed" - to append a Project Properties
notebook tab (Jiří Techet).
* Add macro foreach_range().
* Add GeanyMainWidgets::message_window_notebook (#3061342).
* Add main_widgets.project_menu (Jiří Techet).
* Add msgwin_set_messages_dir() (Jiří Techet).
* Add highlighting_is_{string,comment,code}_style(),
editor_find_snippet(), editor_insert_snippet(),
utils_find_open_xml_tag() (Eugene Arshinov).
* Add ui_combo_box_add_to_history(), editor_goto_pos(),
dialogs_show_input(), Add sci_get_lexer().
* Add filetypes_get_display_name() as "None" is no longer translated.
Geany 0.19.2 (December 01, 2010)
* Fix bug where Geany did not always report an error message when
saving a document fails.
Geany 0.19.1 (August 18, 2010)
* Fix broken autocompletion after using scope completion.
* Fix scrolling the editor line in view (e.g. after loading a session
and switching document tabs).
* Fix using filetype extension patterns with upper case letters on
Windows (#3028856).
* Fix a slightly wrong encoding detection on Windows (#3019573).
* Re-enable comment folding.
* Fix not loading plugins built against a newer API when Geany doesn't
provide the required version given in PLUGIN_VERSION_CHECK().
* Fix infinite loop in Markdown lexer (patch by Colomban Wendling,
* Fix saving non-project filetype error regex.
* Focus toolbar item when pressing Go to Line keybinding only when
it's not in the toolbar's drop down overflow menu (#3027454).
* Escape the name of the current document for markup when using
document name for menu items (#3038844).
* File Browser: Allow Find in Files when no items are selected.
* Fix build menu translation problems.
* Fix segfault on Tools->Reload Configuration when no documents are
open (#3037079).
* Fix building with Waf on Solaris.
* Fix a memory leak (thanks to Daniel Marjamäki).
* Use g_free instead of free (patch by Daniel Marjamäki, thanks).
* Always use white background color when printing (except for text
with a white foreground) to save ink (#2968998).
* Limit build error editor indicators to 50, but parse all errors in
the Compiler tab (#3019823).
* Align notebook tab close buttons centred vertically (thanks to
Robux.Biz (galyuk)).
* Show the Project Properties build tab when choosing 'Set Build
Commands' when a project is open to prevent confusion with
non-project commands.
* Fix wording - restarting is required for hidden prefs.
* Fix Grep --exclude-dir example.
Geany 0.19 (June 12, 2010)
* Build system reworked to be much more configurable (by Lex Trotman).
* Use POSIX system/GNU regex engine for find & replace. This alters
regex syntax - we now support '?' operator and match newlines.
* Support adding custom filetype files.
* Add new command line option --list-documents to return a list
of currently opened documents
* Remove deprecated --debug flag. Please use --verbose/-v instead.
* Add option 'System Default' for toolbar icon style and size to use
the GTK default value.
* Allow '+<number>' and '-<number>' as values for Goto Line inputs
to jump relative to the current line.
* Add preference to add new document tabs beside the current one
(patch by Colomban Wendling).
* Enable type-ahead find for sidebar symbols and documents tabs
(patch by Thomas Martitz).
* Make Ctrl-click on any notebook tab switch to the last used
* Add 'Edit->Commands' menu.
* Add 'Edit->Plugin Preferences' menu item and keybinding.
* Add 'View->Editor->Color Schemes' menu (only shown if color
scheme files exist).
* Hide 'Tabs and Spaces: Hard tab width' preference - it should
always be 8. (Hidden setting kept in case users have modified it).
* Add sidebar position interface pref.
* Add project long line marker customisation (patch from Eugene
* Update Scintilla to 2.12.
* Add preference and support for virtual spaces.
* Add word part autocompletion for the current selected item when
pressing keybinding (default Tab) - Enter still completes normally.
* Remove LaTeX autocompletion from Geany's core and move it to the
geanyLaTeX plugin.
* New filetype: Txt2Tags (patch by Eric Forgeot).
* New filetype: Abc (patch by Eric Forgeot).
* New filetype: Verilog (patch from Kelvin Gardiner).
* New custom filetype: Genie.
* Improvements in symbol parsing of PHP and Python files.
* Add R tagmanager symbol parser (patch by Jon Senior).
* Update Perl tag parser from ctags - removes support for
buggy local/my/our but parses constant/format/labels.
* Parse more VHDL tags (patch from Kelvin Gardiner).
* Highlight D & Java types from a global tags file.
* Parse Python lambda functions (patch from Colomban Wendling).
* Add keybindings to switch to the sidebar's Document and Symbol list as
well as to the Message Window's current tab (patch by Eugene Arshinov).
* Add 'Remove Markers' and 'Remove Error Indicators' keybindings.
* Make 'Reflow block/lines(s)' keybinding use line breaking column when
enabled (patch by Lex Trotman).
* Add 'Select to previous/next word part' keybindings.
* Add 'Switch to Messages' focus keybinding.
* Add 'Move line(s) up/down' keybindings.
* Make Switch to Editor keybinding reshow the document statistics line.
* Move filetype template defaults into custom file template files.
* Read custom file templates from system as well as user dir.
* Add new special template wildcard "{command:...}" to use the output
of a shell command in templates.
* Support {ob}, {cb} and {pc} to escape wildcard strings with {, }, %
for snippets, fileheader and file templates.
* Add {project}, {description} template wildcards (#2954737).
* Reload templates when saving a document in the templates config dir.
Configuration files:
* Support more filetypes.common folding icon styles: arrows, +/- and no
lines (#2935059).
* Support Scintilla lexer properties in [lexer_properties] filetypes.*
* Add filetypes.xml asp.default.language property (Ross McKay).
* Classbuilder: Add support for creating PHP classes
(patch by Ondrej Donek).
* HTMLchars: Make plugin remember whether replacement of special
characters was activated.
* Support very long build commands.
* Add a preference for choosing between GTK and native File Open/Save
dialogs (only available on Windows).
* Added translations: ast.
* Updated translations: de, en_GB, es, fr, gl, ja, nl, pt, ru, sl, sv,
tr, vi, zh_CN.
* Improve documentation contents page.
* Add Stash mini-library setting, pref & widget functions to API.
* Add plugin_configure_single() plugin symbol which is easier to
implement than plugin_configure().
* Add new plugin signals: "document-before-save", "document-filetype-set",
* Add PLUGIN_SET_TRANSLATABLE_INFO macro to the plugin API so plugins' meta
information can be translated already in the plugin manager dialog
(patch by Colomban Wendling).
* Use full function name for GeanyFunctions function pointers. This
avoids naming conflicts e.g. with C++'s 'new' keyword.
* GeanyKeyBinding label fields can now contain underscores, which won't
be displayed by Geany. This saves adding near-duplicate translation
* Add GeanyKeyGroup callback support.
* Add more Scintilla function wrappers, foreach_dir(), foreach_str(),
utils_get_file_list_full(), document_get_notebook_page(),
* Don't install unnecessary headers.
* Remove deprecated header pluginmacros.h - use geanyfunctions.h
* Deprecate documents_foreach(), use foreach_document() instead.
* Deprecate PLUGIN_KEY_GROUP() macro - use plugin_set_key_group()
Geany 0.18.1 (February 14, 2010)
Build fixes:
* Define G_GNUC_WARN_UNUSED_RESULT to fix build on GLib 2.8.
* Use AC_PATH_PROG instead of 'which' for portability (patch by Erik
Southworth, thanks).
* Remove filetypes.common invert_all option - use 'Invert syntax
highlighting colors' pref instead (fixes #2854525).
Bug fixes:
* Fix 'Open Selected File' for unsaved new documents.
* Fix updating main menu accelerators after changing keybindings
(thanks to Lex Trotman).
* Fix using 'Insert date' keybinding when a custom date string has
not been set.
* Set the cursor color for the split window plugin.
* Remove plugin from plugin manager dialog on unloading if it no
longer exists or is incompatible.
* Fix 'Reflow block' command when at the last paragraph and there's
no last newline (patch by Eugene Arshinov, thanks).
* Fix opening filenames beginning with two dots (closes #2858487).
* Show Find in Files stderr output in messages window instead of
debug window so that invalid regex messages can be seen easily.
* Speed up sorting in utils_get_file_list(). This reduces the file
browser delay on displaying a big directory, e.g. /usr/bin.
* Fix a bug with not w3c compatible HTML code on export plugin
* Fix non-working Home and End keys on numpads.
* Fix loading of files on network resources on Windows.
* Fix wrong alignment of printed pages when page headers are disabled
(closes #2856822).
* Extend auto_latex() function to check whether an environment has
been closed within the next lines to avoid auto adding double
* Replace some icons which could cause licensing problems by icons
from the Rodent icon theme.
Filetype fixes:
* Parse contents of D extern{} and version{} blocks.
* Fix creating D interface tags properly.
* Parse D functions with contracts (fixes #1885480).
* Parse D alias statement like typedef.
* Improve parsing of LaTeX, PHP and Python files.
* Add 'Scope autocompletion' section.
* Add 'Tools menu items' section to explain configuration files
submenu, reload configuration item.
* Minor updates/fixes.
* Add gcc commands to build a plugin to the HowTo.
* Add section 'Plugin API/ABI design'.
* Add 'Compiler options & warnings' section.
* Update Style section to be clearer about code alignment and show
some example code.
* Add 'Doc-comments' plugin API subsection.
* Added translations: gl
Geany 0.18 (August 16, 2009)
* Fix scrolling horizontally after finding a search match with the
search bar or Find Next/Previous which is off-screen.
* Remove relative/untidy path elements from filenames when opening
documents (#2823998).
* Create initial template files with proper platform-specific line
ending characters.
* Improve inserting of comment templates like File header or licence
* Add 'Show Paths' documents list popup item.
* Add filetypes.common to 'Configuration Files' menu.
* Implement a graphical toolbar editor.
* Add 'Build' toolbar button to the default layout.
* Add 'Replace' toolbar button (closes #2798225).
* Use a more Tango like icon for 'Save All' (by Jesse Mayes, thanks).
* Add a popup menu for the keybinding list in the preferences dialog
to easily expand and collapse all groups.
* Implement Most-Recently-Used document switching when pressing
'Switch to last used document' keybinding (Ctrl-Tab).
* Add 'Mark All' keybinding (Ctrl-Shift-M).
* Add 'Reflow lines/block' keybinding, (Ctrl-J; thanks to
Eugene Arshinov).
* Make the Scintilla keybindings 'Delete to end of line' and
'Go to end of display line' configurable.
* Switching notebook tabs now works for the currently used notebook
widget instead of always using the documents notebook.
* Fix a redraw when documents were first drawn uncolourised.
* Delay highlighting matching braces by 100ms to speed up scrolling
with the arrow keys.
* Support 'tab indents, space aligns' style when indenting (#2789109).
* Add 'Autocomplete all words in document' pref; also used when forcing
autocompletion and there's no symbol names to show.
* Add 'Drop rest of word on completion' pref.
* Update Scintilla to version 1.79.
* Improve displaying and reshowing of calltips.
Syntax highlighting:
* Reload color schemes via Tools menu (thanks to Eugene Arshinov).
* Implement named styles support for filetypes.* using a
filetypes.common [named_styles] section; used as
"style=named_style,bold". (See the manual for details).
* Allow style definitions with missing fields to use the
filetypes.common default style's fields.
* Make C-like filetype styles use named styles & default background
color. (Anyone who wants to likewise update any other filetype's
styles, please let us know ;-)).
* Allow indentation of wrapped lines (see style 'line_wrap_indent').
* Add new styles 'line_height' and 'marker_mark'.
* Add Markdown filetype (thanks to Jon Strait).
* Highlight D WYSIWYG backtick `strings` and r"strings" (#1895745).
* Minor improvements for filetypes: Fortran, Haxe, HTML, Lua,
Matlab, Pascal, Python, Tcl.
* Read custom system global tags files from $prefix/share/geany/tags
* Autocomplete scoped fields like struct members when typing '.' (and
also '->' or '::' in C/C++) if the language's tag parser supports it.
* Save field tags for C/C++ when generating a global tags file (you may
want to regenerate your tag files).
* Parse Python calltips.
* Show relative paths in Diff filename tags.
* Group reStructuredText symbol list items by scope level.
Plugin API:
* Add geanyplugin.h single include.
* Add plugin_signal_connect() for connecting plugin signals at
runtime and also for connecting to any GObject signal.
* Add documents_foreach(), filetypes[], documents[], utils_strdupa()
and various foreach_type() macros.
* Make GeanyDocument::file_type always be non-NULL.
* Fix quoting the build command string on Windows (closes #2791769).
* Fix LaTeX view commands on Windows (part of #2807688).
* Expand system environment variables (%variableName%) on Windows when
running Build commands.
* Added translations: lb, sl, pt_PT
* Updated translations: ca, cs, de, en_GB, fi, fr, ja, pt_BR, ru, tr
Geany 0.17 (May 02, 2009)
Bug fixes:
* Fix broken selection of "Document->Set Encoding" menu items.
* Fix broken non-incremental search with the toolbar search entry when
pressing Enter (closes #2638180).
* Fix parsing of Make output (closes #2694479, patch by Andrea Mazzoleni).
* Fix crashes on quitting Geany (closes #2533990).
* Fix disabled Go to Tag items in the editor menu when using the
keyboard (#2780044).
* Prevent crashes when two or more top level items in the symbol
list have the same name (closes #2778246).
* Add an option to set an additional plugin lookup path.
* Add a hidden preference 'use_safe_file_saving'. This has serious side
effects, please read the documentation before enabling this.
* Add 'Send Selection to Terminal' command to the Edit->Format menu.
* Change the background colour of the search entries in the Find
and Replace dialogs according to the search results.
* Add 'Close Other Documents' and 'Close All' menu items to the tab bar
* Add an option to allow appending the toolbar to the main menu bar
to save some vertical space.
* When a project is loaded, replace the project base path with the
project name in the Documents sidebar for parent items (closes #2723679).
* Make the file open dialog more compact.
* Ellipsize tab labels and some status messages for very long
filenames (closes #2777348).
* Add new toolbar element: Print (patch by Roland Baudin).
* Remember the active sidebar page between sessions.
* Add "Recent Projects" menu to the Project menu (#2728630,
patch by Elias Pschernig).
* Add Tools->Configuration Files item for snippets.conf.
* Fix wrong Fortran 90 comment characters when inserting templates.
* Add filetype ActionScript (patch by Chris Macksey).
* Fixes for CSS, Fortran and Ruby parsers.
* Add a trivial symbol parser for NSIS files.
* On Windows, change the working directory to the Geany installation
path at startup to avoid unwanted directory locking(closes #2626124).
* Fix window positioning on startup.
* Make build commands on Windows run synchronously to avoid problems
with reading build commands' output.
* HTMLchars: Extend plugin by bulk replace and replace on
input for special characters to their HTML entities.
* Splitwindow: Add keybindings for the split actions.
* VCDiff: Remove plugin from Geany. Use GeanyVC instead.
Plugin API:
* Deprecate sci_get_text(), sci_get_selected_text() and
* Add sci_get_contents(), sci_get_contents_range() and
sci_get_selection_contents() as replacement functions to provide
an easier and cleaner API (initial patch by Frank).
* Make GEANY_FILETYPES_NONE = 0, sort filetype IDs randomly (so we can
append new filetypes without breaking the ABI); add
filetypes_by_title sorted list to GeanyData.
* Describe how to build Geany using the Waf build system.
* Updated translations: be, cs, de, es, fi, fr, hu, ja, pt_BR, ru,
sv, tr, zh_CN
Geany 0.16 (February 15, 2009)
Bug fixes:
* Fix indenting for Tabs & Spaces mode when inserting snippets.
* Fix snippets and smart indent using too much indentation when the
line contains whitespace after non-whitespace characters (#2215044).
* Fix segfault when showing Find in Files dialog when no documents are
open (#2228544).
* Fix not switching to 2nd last used document when the last used
document has been closed (#1945162).
* Group child tags by their parents in the symbol list for C-like
filetypes, Python, Conf (thanks to Conrad Steenberg).
* Use a tree for the Documents sidebar, grouped by path.
* Add 'Tools->Configuration Files' menu with items to open
filetype_extensions.conf and ignore.tags. These files are also
reloaded automatically when saved.
* Change configuration directory path to $XDG_CONFIG_HOME/geany
(most often this is ~/.config/geany).
* Allow to specify files on the command line and from remote instances
to be URIs (local and with GIO also remote URIs).
* Increase minimum required GTK version to 2.8.
* Add Project Indentation prefs, which override the Editor
Preferences dialog options. For new projects, these default to
the editor indent prefs.
* Add an interface pref for whether to hide additional widgets when
double-clicking on document notebook tabs (off by default).
* Add a preference to invert all colours for syntax highlighting.
* Add a hidden preference "allow_always_save" to make the Save buttons
and menu items always sensitive.
* Rework the toolbar: now all elements can be added/removed/reordered
using a simple XML file.
* Add new toolbar buttons for Cut, Copy, Paste, Delete, Preferences,
Close All and Build (including a submenu for Make actions).
* Add a progressbar widget to the statusbar to show progress for time
consuming actions.
* Make Ctrl-click go to matching brace if there's no current word.
* Make Shift+Mouse wheel scroll the editor view horizontally.
* Make the 'Mark' button for Find highlight the results with rounded boxes
instead of marking the whole line.
* Add auto-closing of braces, brackets and quotes (Guillaume de Rorthais).
* Support multiple %cursor% wildcards in Snippets (Thomas Martitz).
* Add new filetypes Ada, CMake, Matlab, NSIS, Vala and YAML.
* Update HTML character entities (thanks to Tyler D'Agosta).
* Parse restructuredText sections in the order of first-used underline
character, which can now be any punctuation character (as per the spec).
* Remove GTK global tags, replace them with C (C99) tags. The GTK tags
file is still available for download on the website.
* Minor improvements for filetypes CSS, Fortran, FreeBasic, HTML, Tcl
and Vala.
* Improve tab close icon size.
* Changes to the Windows installer:
- The full installer now includes the GTK 2.14 runtime environment.
- Register ".geany" as Geany Project File extension.
- Install GTK translation files only if installation of translation
files were requested (saves about 22 MB otherwise).
- Support silent installations.
* Add Split Window 'Split Vertically' command (thanks to Moritz Barsnick).
* Make Version Diff plugin set the indent type for diffs based on the
current file's indent type.
* Minor improvements to the filebrowser plugin
Plugin API:
* Generate plugin API header geanyfunctions.h containing macros to
avoid having to type the function pointer names manually.
* Deprecate pluginmacros.h in favour of geanyfunctions.h.
* Add "editor-notify" to the plugin API.
* Add new plugin symbol plugin_help() which is called by Geany when the
plugin should show its documentation (if any, symbol is optional).
* Update Scintilla regular expression info for v1.77 (character
classes, ASCII escaping, character sets containing square
brackets peculiarities). Adapted from SciTE doc.
* Complete 'Hello World' Plugin Howto.
* Updated translations: bg, ca, cs, de, en_GB, fr, hu, it, ja,
pt_BR, sv, ru, tr, vi, zh_CN
Geany 0.15 (October 19, 2008)
* Add Previous Message, Previous Error commands (thanks also to Beau
* Add 'Close Other Documents' File menu command (#1976724).
* Add Find Document Usage popup menu command & keybinding.
* Check that the current file is still on disk (as well as checking the
modification time).
* Add support for custom file templates (found at startup) in the
~/.geany/templates/files directory, shown underneath filetype templates
in the New with Template menu.
* Make socket open command support filename:line:column syntax.
* Add filetypes.* [build_settings] key 'error_regex' to support custom
error message parsing using a GNU-style extended regular expression.
* Allow loading projects from command line (#1961083).
* Add alternative build system: Waf.
* Add Tools menu item to reload configuration data without a restart.
* Add support to use template wildcards in snippets.
* Increase LSB compliance.
* Make disk check timeout configurable (zero disables disk checks).
* Add search pref: 'Use the current file's directory for Find in Files'
* Make keyboard shortcuts dialog non-modal (#1999384).
* Add a debug messages window to easily view debug messages/warnings.
* Update Scintilla to version 1.77 (includes many fixes).
* Add basic Line Breaking option in the Document menu and 'Line breaking
column' editor pref (for now only works when typing characters past
the line breaking column number).
* Don't colourise any documents until they need to be drawn (this
should make opening a session faster for filetypes that support typename
* Make Ctrl-click on a word perform Go to Tag Definition.
* Add 'Max. symbol name suggestions' autocompletion pref.
* Show ellipsis (...) item when there are too many symbol names for
* Highlight matching brace indent guides (thanks to Jason Oster;
* Show brace indent guides on empty lines when appropriate (thanks to
Jason Oster; #2105982).
* Add 'Tab key indents' pref, on by default.
* Implement soft tabs support (#1662173). There's now a 'Tabs & Spaces'
Indent Type, and separate Width, Hard Tab Width indent prefs. (Thanks
to Joerg Desch for explaining how it needed to work).
* Auto-update the line margin width as lines are added (thanks to Jason
Oster; #2129157).
* Add "Replace spaces by tabs".
* Install plugins into lib/ not into plugins/.
* Install Geany's message catalogs into share/locale rather than
lib/locale as GTK does since 2.12.2.
* Add Go to Start/End of Line keybindings (#1996175).
* Add 'Switch to Compiler' keybinding (useful when checking build
* Add keybindings for Line wrapping, Line breaking, Toggle fold and
Replace Spaces by tabs, Previous/Next word part.
* Add OpenGL Shader Language (GLSL) filetype (thanks to Colomban
Wendling; #2060961).
* Add R language filetype (thanks to Andrew Rowland; #2121502).
* Split filetype Fortran into Fortran 77 and Fortran 90.
* Add Gettext translation filetype (#2131985).
* CSS improvements, thanks to Jason Oster.
Embedded Terminal:
* Fix hang when restarting the VTE (#1990323) with VTE 0.16.14.
(Note that with VTE 0.16.14 the reset sometimes leaves a blank
terminal, but pressing enter makes it then behave as normal).
* Add Split Window plugin (should work OK for viewing; full editing
support is not implemented yet).
* Merge InstantSave, AutoSave and BackupCopy plugins into the new
plugin 'Save Actions'.
* Add Tips and Tricks appendix.
* Updated Installation section.
* Update 'Build system' for custom error regexes.
* Add a section for internal plugins.
Plugin API:
* Many changes; see the API documentation (make api-doc) and the
geany-devel list archives.
* Deprecated: plugin_fields, plugin_info symbols.
* New translations: ko, tr.
* Updated translations: be, ca, de, en_GB, fi, hu, it, ja, pl,
ro, ru, sv, zh_CN
Geany 0.14 (April 19, 2008)
* Don't beep when using Replace All in Session unless all open files
have no replacements (fixes #1893796).
* Only use filetype detection after Save As, not on every save when the
filetype is None (fixes #1891778).
* Make Go to Tag commands look for the tag in the current document
before searching the workspace.
* Check file on disk for changes also when pressing a key.
* Ignore documents with no absolute path when saving session files.
* Fix segfault with Run command when a project is open and the current
file's filetype has no run command.
* Make Next Error and Next Message commands add positions to the
navigation queue, so the user can move backwards through the list items
and return to where they were.
* Make pressing escape in the sidebar focus the editor.
* Make navigation queue position based to restore the line and column when
returning to a previous position (closes #1936927).
* Save sorting order of the symbol list when saving a file (fixes #1917262).
* Improve "Send Selection To" code (fixes #1909452).
* Install header files and add a pkg-config file for external plugins.
* Use monospace font for text entry fields in search dialogs (#1907117).
* Don't open zero byte sized files read-only (e.g. files in /proc).
* Improve Makefile parser to detect targets.
* Update PHP tags file to latest PHP API docs (closes #1888691).
* Add translucency settings to filetypes.common for semi-transparency.
* Add HTML parser to get h1, h2, h3 symbols as well as link anchors and
JavaScript functions (fixes #1896068).
* Update Javascript, Tcl and Assembler parser.
* When closing a tab when using left-to-right tabs, focus the next
document, not the previous.
* Move Load Tags item from File to Tools menu.
* Don't scroll the editor view if it is unnecessary when using Find
Next/Previous, Find Selected, incremental search, Go to Marker or Go to
Matching Brace commands.
* Fix bug with showing macro list items all on one line.
* Fix Python auto-indentation when line endings are set to CR/LF.
* Unfold hidden code when the fold point modified (fixes #1923350).
* Update Scintilla to version 1.76.
* Add (basic) column mode editing (patch by "chuck").
* Replace untitled file header filename after Save As and add to recent
files on Windows too.
* Resolve Windows shortcuts when opening files.
* Fix modal dialog problems on Windows by not setting taskbar hint
(closes #1916994).
* Add new process spawning implementation. This makes the VCdiff plugin
to work on Windows (patch by Pierre Joye, thanks).
* Fix crash on Windows when a project could not be opened.
* Add configurable plugin keybindings support.
* Add a HTML Characters keybinding to show the dialog.
* Add File Browser keybindings to focus the Path Entry and File List
* Rename VCDiff plugin Version Diff.
* When quitting, remember plugin filenames that couldn't be loaded at
startup as well as active plugins.
Plugin API:
* Add PLUGIN_KEY_GROUP and keybindings_set_item() to setup a keybinding
* keybindings_send_command() arguments have changed because of
keybinding groups - this breaks the API for plugins already using it.
* Make VERSION_CHECK deprecated in favour of PLUGIN_VERSION_CHECK.
* Add descriptions for several options in the preferences dialog
(patch from Robert McGinley).
* New translations: ro.
* Updated translations: bg, de, en_GB, es, fr, hu, it, ja, pt_BR, ru.
Geany 0.13 (February 05, 2008)
* Improve configure script and fix some compatibility issues.
* Add support for project session files.
* Add native GTK printing support (only with GTK 2.10+).
* Prevent execution of commands by Geany if the VTE may contain any
text on the prompt (thanks to "Jeff Pohlmeyer for reporting).
* Store more document-related settings when saving session in the
configuration file (including the file encoding).
* Detect in-file specified file encoding by scanning the file using
regular expressions.
* Add binary relocation support.
* Add configurable default file extension setting for filetype
definition files.
* Fix reST autocompletion.
* Show arrays and modifiers like const in calltip return types for
C-like files.
* Update C global tags file for GTK+ 2.12.
* Fix parsing the correct D class name when inheriting, D constructor
tags and ignore D import statements.
* Remove unnecessary tagmanager status file.
* Improve PHP, Ruby and FreeBasic parsers.
* Add 'Indent Type' option in the Document menu.
* Add 'Detect from file' Editor indentation pref.
* Show TAB or SP for current document's indent type.
* Add a 'Newline strips trailing spaces' pref (thanks to Catalin
* Add 'Strip Trailing Spaces' document menu item.
* Add combo box input history for 'Make Custom Target' dialog.
* Make Open, Save As dialogs start in project base path (or default
path pref) when the current file has no filename.
* Add 'Make in base path' project file preference.
* Make 'Open Selected File' first try the current file's directory,
falling back to the project base path if no file was found.
* Fix broken window maximization.
* Improve appearance of used treeviews and use rules hints to respect
user colour settings.
* Fix hidden lines after deleting a line that is a collapsed fold
* Make Fold All/Unfold All attempt to scroll the current line in view.
* Show line wrap symbol at start of line for wrapped lines.
* Allow scrolling past end of document, so the user can append text
with the last lines drawn at the top of the view.
* Rename "Construct autocompletion" to "Snippets".
* Improve usage of "Unfold all children" option.
* Update Scintilla to version 1.75.
* Add configurable keybindings for Cut, Copy and Paste.
* Ask the user whether to override an existing keybinding when setting
a combination that is already in use.
* Add 'Override Geany keybindings' VTE prefs dialog option (replaces
hidden pref), which makes the VTE interpret all keyboard shortcuts
except focus group keybindings.
* Add File Browser sidebar plugin.
* Add Version Control Diff plugin (VC Diff), which supports SVN, CVS and
GIT (thanks to Yura Siamashka).
* Add plugin manager dialog to select plugins to load at startup and to
call a plugin configure dialog.
* Add new signals: project_open, project_save, project_close.
* Add Auto Save plugin.
Plugin API:
* Add keybindings_send_command() and some other functions.
* Add pluginmacros.h to define common macros for app, p_utils, etc.
* Add more documentation/comments to demoplugin.c.
* Add configure symbol for plugins which is called by Geany when a
configure dialog for the plugin is requested, optionally.
* Add author field to plugin info struct.
* Enable build support.
* Prevent prefs dialog being hidden after using the prefs file dialog.
* Create Geany's configuration directory in user's appdata path
instead of the default home directory.
* Show default shortcuts in Keybindings section.
* Update Project section for project-based session support.
* Add Indentation subsection under Editor section.
* HACKING: Update 'Adding a filetype' section.
* New translations: ja, uk, el.
* Updated translations: ca, de, en_GB, fr, it, pt_BR, hu, sv, vi.
Geany 0.12 (October 10, 2007)
Bugs fixed:
* Fixed opening the same file twice from the message window/command-line.
* Fixed Ctrl-Shift keybindings not working when caps lock is on.
* Fixed saving the wrong document when using Save All with unnamed
* Fixed replacing with '^' or '$' regex chars.
* Fixed hang with Find All/Find Usage with '^' or '$' regex chars.
* Fixed hang when replacing all '[ ]*' regex matches (closes #1757748).
* Fixed displaying error indicators with Make after entering a
* Fixed a possible segfault when parsing tags (a vString bug).
* Fixed clipboard problems with some applications.
* Fixed crash when trying to open the Save As dialog on Windows.
* Fixed crash when saving a file after setting encoding "None".
* Fixed scrolling bugs when searching text and the cursor is outside of
the current visible area.
* Added reStructuredText filetype and parser.
* Added Haskell tags support (thanks to Peter Strand).
* Added decorator styling for Python.
* Parse Python global variables and class variables.
* Added support for Java Apache Ant compiler error messages (thanks to
Jon Senior).
* Added new filetypes CSharp and FreeBasic.
* Added filetype Haxe (patch by blackdog, thank you).
* Added basic plugin support (developers: see the HACKING file).
* Added 'Enable plugin support' preference and -p, --no-plugins options.
* Added Class Builder plugin (thanks to Alexander Rodin).
* Added Export plugin to export current file as HTML or LaTeX.
Keyboard shorcuts:
* Common bash Ctrl-[a-z] keyboard shortcuts now work when the VTE is
focused, and there is an 'enable_bash_keys' hidden preference.
* Added 'Move document left' and 'Move document right' keybindings.
* Added Find keybinding.
* Made fixed keybindings overridable.
* Added fixed keybindings for switching to leftmost/rightmost document,
* Change Previous/Next Paragraph fixed commands to Ctrl-{Up,Down};
adding Shift extends selection by paragraph. (Scroll by line is now
* Made pressing escape focus the editor when using incremental search
or Goto Line toolbar fields.
* Added keybinding for select current paragraph.
* Added keybindings for smart indent and indent/deindent by one space.
* Removed convert to lower-/upper-case keybindings.
* Added toggle case keybinding and change shortcut to Ctrl-Alt-U.
* Added preference for 'smart' home key behaviour (thanks to Jeff
* Added symbol list icons (thanks to Jean-François Wauthy, and KDevelop
for the icons).
* Added 'Current chars' indentation mode (closes #1726880).
* Save and restore the current notebook page when quitting.
* Added support for %e, %f in project run command.
* Ignore punctuation chars when moving by word, and use word end
boundaries when moving by word to the right (like most GTK+ widgets).
* Added hidden editor preference 'use_gtk_word_boundaries'.
* Added auto_complete_whilst_editing hidden preference.
* Speed up Save All for C-like files.
* Don't show file opened/saved/closed messages on the status bar.
* Added --no-preprocessing, -P option when generating tags files to
disable preprocessing of C/C++ source files.
* Added default startup directory option (closes #1704988).
* Use current locale as default encoding for new files.
* Added simple code navigation (thanks to Dave Moore).
* Re-maximize the main window on startup when closed in maximized state
(closes #1730369).
* Added auto focus (to auto focus widgets below mouse cursor).
* Complete rewrite of auto completion to make it user-definable and
much more flexible (please read documentation).
* Added option to set a default encoding when opening files and disable
auto detection of the file encoding.
* Improved comment toggling by adding an additional character to mark.
* Changed the background colour of the search bar in the toolbar
according to the search result.
* Use intltool to make geany.desktop translatable
* Replace Geany's icon by a new one by Sebastian Kraft (thanks).
(Thanks also to Christoph Berg for updating the icon code).
* Changed documentation generation tools from DocBook to reST
(thanks to John Gabriele for his great work on this).
* Added Plugins section.
* Added 'Inserting unicode characters' Editing section (thanks to
John Gabriele).
* Added 'Hidden preferences' appendix.
* Added 'Switching documents' keybindings section.
* Added notes on adding a filetype.
* New translations: en_GB.
* Updated translations: ca, cs, de, es, fi, fr, hu, it, pl, pt_BR, zh_CN.
Geany 0.11 (May 21, 2007)
Notes for existing users:
* Tab is now used for construct completion (for, if, etc.), but it
is configurable with the new 'Complete construct' keybinding.
* Template files are now stored in ~/.geany/templates/ and the
'template.' filename prefix is no longer used. You will need to
move any custom template files you have.
* Inserting a file header is now optional for filetype templates.
Use the string '{fileheader}' to mark where the file header should
be placed.
* Drag'n'Drop of text inside the editor widget will now move the
text instead of copying it.
Bugs fixed:
* Fix segfault when pressing Ctrl-Enter when there are no workspace
* Remove error indicators in all documents when linking (#1705374).
* Sort symbol list tags also by line number (#1703575).
* Fix #1717418, Hang on SQL file load.
* Fix #1718532 - Crash when opening a special HTML file.
* Add workaround for PHP closing brace de-indenting.
* Fix reloading of read-only documents.
Project Management:
* Add keybinding to show project properties dialog.
* Add project Run command support.
* Run Make All and Make Custom from the project base directory.
Custom Global Tags:
* Update C global tags for GTK+ 2.10 and it's dependencies.
* Add option --generate-tags (-g) to generate a global tags file
from a list of source files (see docs).
* Load global tag files stored in ~/.geany/tags at startup #.
* Add Load Tags command in the File menu #.
# This is not supported for Pascal, PHP or LaTeX files yet.
Calltips (for C-like files):
* Show up and down arrows when there are multiple calltip matches.
* Show classname in calltips.
* Parse pointers in function return type.
* Add calltip support for D constructors.
Other changes:
* Parse 'Entering directory' Make messages so opening files from
error messages works for subdirectories (thanks to Josef Whiter).
* Make Go to Tag Definition/Declaration work for all tags.
* Support filetype templates for all filetypes (see docs).
* Make file header optional for filetype templates.
* Add 'Find Selected' and 'Find Prev Selected' search commands and
keybindings (thanks to Jeff Pohlmeyer).
* Add Mark button to the Find dialog, and a Remove Markers item to
the Document menu.
* Add 'Recurse in subfolders' and 'Extra options' checkboxes to the
Find in Files dialog.
* Add 'Switch to last used document' keybinding (Ctrl-Tab).
* Add Goto Previous/Next Marker keybindings (Ctrl-, and Ctrl-.).
* Add Toggle Marker keybinding (Ctrl-M).
* Add keybinding for construct completion, and set the default to
* Add MimeType associatiations for: C++ header, Pascal, Perl,
Python, httpd-PHP and XML files (thanks to Iñaki Rodriguez).
* Add brace indenting support for Perl and Tcl.
* Make backspace unindent when using spaces for indentation.
* Wrap notebook pages when switching tabs.
* Speed up loading multiple C-like files slightly.
* New filetypes: JavaScript, Lua and Haskell.
* Set several widget names to allow users to define custom styles
in .gtkrc-2.0.
* Add context actions to run custom commands on current selection
or the current word below cursor.
* Add different auto indention modes.
* Improve replacing in rectangle selections.
* Add custom commands to send selected text through some definable
commands and replace the selection with the output.
* Add command line option --column to allow setting the initial
column for the first opened file on command line.
* Improve the auto scrolling of documents.
* Improve loading of the VTE library.
* Add an option for using spaces or tabulators when inserting some
* Add an option to disable Drag'n'Drop in the editor widget.
* Add Project Management, Global Tags, Construct Completion
* Add Bookmarks section (thanks to John Gabriele).
* Update Filetype Templates, Search sections.
* New translations: bg.
* Updated translations: ca, cs, de, es, fr, zh_CN.
Geany 0.10.2 (February 25, 2007)
Bugs fixed:
* Fixed serious crash of complete X session when using the Stop
command when Geany is run from the program menu (closes #1668017).
Geany 0.10.1 (February 23, 2007)
Bugs fixed:
* Wrong tab foreground colour for unmodified documents.
* Fixed crashes when closing dialogs by clicking X on some systems.
* Fixed missing global tags for C files when a C++ source file was
loaded first.
* Fixed autocompletion missing tag matches.
* Fixed a wrong PASCAL autocompletion.
* Set single undo action when toggling multiple lines or stripping
trailing spaces.
* Prevent some possible invalid memory reads.
* Convert config, application and documentation dir paths to locale
encoding before using it.
* Fixed errors when changing directories containing special
characters within the VTE component (thanks to Jeff Pohlmeyer).
* Support newer so-names when loading the VTE library (thanks to
Jeff Pohlmeyer).
* Fixed paste problems on Windows.
* When using Save As the returned filename needs to be converted
into UTF-8.
* Fixed error when parsing of compiler errors by the va_list system.
* Added MimeType entry as suggested by Nick Schermer.
* LaTeX parser: Allow \section*{} and other commands with *.
* Change default keybinding for Close All to Ctrl-Shift-W.
* Allow Make for files with no extension - prevent Build when the
output filename would be the same as the source file.
* Ensure the VTE visual settings are applied when switching to VTE
when the Message Window is hidden.
* Fixed several issues while opening files and improved code.
* Improved the auto scrolling of documents and fixed a bug when
opening files remotely.
* Fixed wrong D function return type after a class definition.
* Added several missing style types for filetype Perl (thanks to
John Gabriele for reporting).
* Prevent right click in Symbol list from selecting a tag.
* Update the symbol list when starting a new document.
* Scroll Compiler and Messages window in view when using Next Error
or Next Message.
* Auto close brackets only when auto completion of constructs is
enabled (closes #1665015).
* Fixed switching to the wrong tab when showing the unsaved dialog.
* New translations: fi (thanks to Harri Koskinen).
* Updated translations: cs, de, es, fr, hu.
Geany 0.10 (December 21, 2006)
* Added a dialog to insert HTML special characters.
* Added new command line option --line to set the initial line for
the first opened file.
* Implemented new, own Undo system to undo/redo encoding changes.
* Added simple parser for filetype Diff to create tags for each
patched file in a diff file.
* Added new encoding "None" to open files without any character
* Added Stop button to abort the Run command.
* New filetype VHDL.
* New scintilla lexer for filetype D with several improvements.
* Improved auto completion of multi line comments
* Added option to execute programs in the VTE instead of executing
them in a terminal emulation window
* Removed the limit on the number of files open.
* Save the build includes and arguments when quitting.
* Added Next Message search command and Next Error build command.
* Make search bar automatically wraparound if necessary.
* Applied patch from Bob Doan to prevent unnecessary search
scrolling and add a preference to suppress some of the search
* Added Find Previous, Find All in Document/Session buttons for the
Find dialog.
* Added Replace (but don't Find) button for the Replace dialog.
* Added 'Hide Message Window' popup menu command.
* Added Alt-[1-9] shortcuts to switch to a certain tab number.
* Limit search dialog history to 30 entries.
* Change python default compile command to create a compiled
python .pyc file (thanks to Bajusz Tamás).
Windows changes:
* Fix #1611530 'file has changed' message on Windows after saving.
* Fixed wrong paste behaviour under Windows with some applications.
Bugs fixed:
* Fixed crash when using "Make object" on new files.
* Fixed incompatible use of read command in the created shell
script to execute programs.
* Fixed wrong insert position when the cursor was moved by keyboard
and comments, includes or a date was inserted.
* Fixed some segfaults when inserting comments, dates and
includes at a position prior to some deleted text.
* Fix message window horizontal scrollbar being too tall on some
systems (thanks to Rob van der Linde).
* New translations: fr, hu, it, zh_CN, zh_TW.
* Updated translations: be, ca, cs, de, es, vi.
Geany 0.9 (September 29, 2006)
* Added function calltips for files open in the current workspace
for C-like languages.
* Open a second instance by default when starting Geany with no
filenames specified on the command-line.
* Added better error message support for D, for both DMD and GDC;
also GCC-style linker error messages are now parsed.
* Text selections now use syntax highlighting foreground colours
(but can still be overridden in filetypes.common).
* Find in Files improvements: fixed string and whole word only
matching options; a directory selector dialog; filenames passed
to Grep are now sorted alphabetically.
* Remember the VTE current directory at startup.
* Show the messages window on build failure or for Find Usage.
* Added -s command-line option to not load session files (-i is now
used to force a new instance).
* Added comment toggle functionality to easily comment and
uncomment a line with one shortcut.
* Separated filetypes PHP and HTML for better usage.
* New filetypes: Diff, Fortran 77 and Ferite.
* Added auto completion tags for PASCAL.
* Improved VTE usage by adding options for selecting the used shell
and ignoring menu bar accelerator (default F10).
* Added menu items to insert configurable date/time strings.
* Removed the whole FIFO code and replaced it with support for
(Unix Domain) Sockets(including Windows support).
Windows changes:
* Implemented Run command (from the build menu) under Windows.
* Enabled socket code on Windows to detect a running instance.
* Enabled notification if file on disk has changed under Windows.
Bugs fixed:
* Fixed a segfault at startup if terminal follow path setting is
* Fixed clicking on error messages being dependent on the current
file's directory.
* Fixed a bug when clicking on a recent file got the wrong
* Fixed a crash when a compiler output reports an error in a blank
line(can happen in LaTeX)
* Fixed a crash when switching between several filetypes.
* Fixed segfault when replacing tabs by spaces.
* New translations: cs, nl, vi.
* Updated translations: de, es.
Geany 0.8 (August 09, 2006)
* Find in files feature added which uses the Grep tool.
* Added Make object command to compile using the Make tool.
* Editor notebook tabs can now be reordered by drag and drop.
* Added support for back references when using regex replace.
* Added a Find button to the Replace dialog to skip matches.
* Greatly improved the speed of Replace all/in selection.
* Scroll to 1/4 of the view when jumping to a line number.
* Show messages on the status bar and in the Status window.
* Preferences options for Auto-indentation and Line wrapping.
* Use the mouse click position for Go to tag.
* Added separate filetype_extensions.conf system file.
* Added makefiles for building on Windows.
* Added keyboard shortcuts for increase/decrease of line
* Added functionality to uncomment code.
* Encoding support
* Added support for Unicode Byte-Order-Mark (BOM)
* Redesigned preferences dialog.
* Added Undo and Redo toolbar buttons.
* New filetype: D
* Added simple printing support.
* Mark errors while compiling source code within Geany with
indicators(small squiggly underlines)
Bugs fixed:
* Use the full path for files opened from the command-line.
* Fixed saving a file from the unsaved file dialog.
* Fixed replacing with regexes the correct matched text length.
* Fixed applying virtual terminal widget settings at startup.
* Fixed prepending items to the Recent files menu.
* Fixed clipboard commands used in the find entry and Scribble.
* Fixed wrong interpretation of syntax highlighting colours
* And some more.
Windows bugs fixed:
* Don't add .c extension when saving with the All files filter.
* Fixed a tool chooser dialog crash when path doesn't exist.
* Fixed locale problems with Windows message dialogs.
* New translations: be, es, pt_BR, ru.
* Updated translations: ca, de, pl.
* Added Scintilla keyboard commands for editing appendix.
* Improved search section; added all find and go to commands.
* Added section about character sets.
Geany 0.7 (June 04, 2006)
* user-definable keyboard shortcuts
* filetype definition files can be overridden in Geany's
configuration directory (please see documentation)
* added filetypes Ruby and Tcl/Tk
* improved build system (for Perl, Python, Ruby and others)
* loading of Virtual Terminal Emulation can be disabled in the
preferences dialog
* new menu item "Search" with Find items from Edit menu and new
item "Find Previous"
* fixed the bug which let Geany crash with newer GTK versions
* improved documentation: added documentation for keyboard
shortcuts, the build system and filetype definition files
* new translations: Catalan and Polish
* many small improvements
* fixed lots of bugs (please see ChangeLog for details)
Geany 0.6 (April 30, 2006)
* added option to place new file tabs to the right or left of
the tab list
* improved file open dialog
* improved scrolling of the compiler output window
* rewrote most of the code for compiling files, now all
settings are read from filetype definition files
* now, you can drag files from a file manager into Geany and
they will be opened
* improved handling of filenames which contain non-UTF8 chars
* added user-definable comment characters to all filetype
definition files
* implemented folding
* added file properties dialog
* improved search and find dialogs
* Geany now creates a FIFO, to communicate between different
instances for opening files in an already running instance
* added filetypes SQL and (O)Caml
* many small improvements
* fixed lots of bugs, including #1419473, #1422135, #1421776
and #1441359
* for more details read the ChangeLog
Geany 0.5 (January 27, 2006)
* set the Open File dialog directory to the same directory as
the current file (thanks to Nick Treleaven for this patch)
* fixed some bugs when opening files with non UTF-8 filenames
* updated included Scintilla to version 1.67
* improved auto indention, now "for (...) {" works, too
* added popup menu to sidebar lists, to quickly hide them
* symbol list support for filetypes LaTeX and DocBook
* added .cc, .hh and .hxx extension for filetype C++
* added new keywords for PHP5
* added new option "Beep on errors" to disable beeping
* eliminated compiler (gcc4) warnings
* closed bug #1387828 and #1387839
* fixed lots of bugs (please see ChangeLog for details)
Geany 0.4 (December 21, 2005)
* new filetype: Assembler
* new filetype: Conf for configuration files
* added a terminal emulation widget, needs only at
runtime, but it also runs without it, see documentation
* made some general improvements to increase startup speed
* changed "build with make" keyboard shortcut to Shift+F9 to
avoid problems with window managers key bindings
* added auto-closing [ and { brackets in LaTex-Mode
* improved documentation, but it is not yet complete
* improved the symbol list to categorise the tags in a tree
* some new options in the preferences dialog
* added popup menu to the list of open files
* there are lots of other small changes made since last release
* some bugfixes (please see ChangeLog for details)
Geany 0.3 (November 20, 2005)
* Geany now has a mailing list, for details see
* added open files list in the left treeview widget
* added toolbar button to open the color chooser
* heavily improved recent files menu
* added shortcut for "walking" between open documents by
pressing STRG+LEFT resp. STRG+RIGHT
* created template files for new files with specified filetype
* added highlighting support for Python (please give feedback)
* extracted all hardcoded styling definitions for all filetypes
so they can be easily edited
* added vertical line to mark long lines
* fixed a bug that caused a segfault if configuration directory
could not created
* fixed a bug which prevented auto-completion from working
* many minor bugfixes (see ChangeLog for details)
Geany 0.2 (October 26, 2005)
* improved file open dialog
* improved Find dialog
* powerful Replace dialog
* gcc4 compilation fix
* minor bugfixes
Geany 0.1 (October 19, 2005)
* first official release