Geany 2.1 (unreleased) Geany 2.0 (October 19, 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). Internationalization * Updated translations: cz, da, de, fr, es, kk, lv, it, nl, pt, sk, ru, ua * Added translations: si Geany 1.38 (October 09, 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 Geany 1.37.1 (November 08, 2020) Windows * Fix crash on first startup (Issue#2639, PR#2645). Geany 1.37 (October 25, 2020) General * Build with GTK3 by default. * Add an option (enabled by default) to save main and project configuration whenever documents are opened/closed to reduce accidental loss of current session in the event of a crash. * List Geany in the category TextEditor (Dominic Hopf, Issue#2460). Bug Fixes * Fix main window name as seen by accessibility tools (Issue#2421). * Add missing include (Pino Toscano, PR#2402). * Fix a possible crash when quitting (Hodong & Guido Falsi, Issue#2457, PR#2634). Interface * Allow to cancel Open Project and New Project dialogs without closing the current project. * Don't ask whether to close current project when opening a recent project. * Disable some items when they are not available. * Provide a CSS name for most widgets (PR#2469). * Adapt margins width to font size and zoom (Issue#1733, PR#1738). * Show OS info in debug messages. * Persist color picker palette (Issue#2595). * Fix color of selected text in search entries with no match (foresto, Issue#2332, PR#2333) Editor * Update Scintilla to version 3.21.1 (PR#2506). Filetypes * Add BibTeX filetype (Mirco Schoenfeld, PR#2212). * Update JavaScript keywords (dmitryunruh, PR#2486). * Update Lua block comment end (Filip Szymański, PR#2566). * Update FreeBasic keywords (Issue#2583). * Add Smalltalk filetype (Snowflake the Pony, PR#2399). * Add a configuration option to select the default Python command. Documentation * Improve Build-related settings documentation. * Added documentation for the Color Chooser (LarsGit223). Windows * Bundle the GLib GSpawn helper binaries with the installer for plugin that use the related GLib API. * Make IPC port number configurable, and move the default outside the dynamic range used by Hyper-V (Issue#2101, PR#2585). * Use the `py` launcher for Python filetype (Issue#2211). * Support programming ligatures (like Fira Code font) (Issue#2535). Internationalization * New translations: ie * Updated translations: da, de, el, es, fr, id, it, ja, lv, nl, pl, pt, ru, sk, sv, zh_CN Geany 1.36 (September 28, 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 Geany 1.35 (April 28, 2019) General * Start synchronization with Universal-CTags (Jiří Techet, PR#1263, PR#2018). Bug fixes * Improve IPC socket handling (Issue#641, PR#2111). * Fix loading the default open encoding option (PR#1326). * Fix VTE path following after reset (Issue#352, PR#2116). Interface * Show variable type in a tooltip in symbol tree (Jiří Techet, PR#2036). Editor * Update Scintilla to version 3.10.2 (Issue#971, Issue#1947, Issue#2076, PR#2045). * Drastically speed up huge bulk replacements (Issue#2092, PR#2097). * Fix accessibility information reported upon deletion. * Fix garbage data insertion when moving lines up or down (Issue#2066). * Don't perform line breaking in rectangular selection mode (Issue#2051, PR#2135). Filetypes * Allow stripping trailing spaces from custom filetypes based on the Diff lexer (Cristian Ciocaltea, Issue#2041, PR#2043). * Improve JavaScript symbols parsing (Issue#1329, Issue#1891, Issue#1933, part of PR#2018). * Improve HTML symbols parsing (part of PR#2018). * Improve COBOL symbols parsing (PR#2128). * Improve ActionScript symbols parsing (PR#2134). Windows * Installer: only install GTK translations if selected (Issue#2090). Internationalization * Updated translations: da, de, es, fr, ja, lv, pt, ru, sk, zh_CN Geany 1.34.1 (January 4, 2019) Bug fixes * Fix line breaking on existing lines (PR#2027). * Fix displaying filenames containing XML control characters inside infobars (Issue#2033). Windows * Fix rectangular selection modifier (PR#2032). Internationalization * Updated translations: uk Geany 1.34 (December 16, 2018) General * Auto-select GTK2 or GTK3 at build time depending on availability (PR#1182). * Process files in the order they appear on the command line when generating tags files (Issue#1989, PR#1991). Bug fixes * Fix high CPU usage with the Scope plugin (Dimitar Zhekov, Issue#1461). * Fix loading some tags files with format specifier (Issue#1814, PR#1817). * Fix Plugin Manager buttons sometimes getting out of sync, possibly leading to a crash (Issue#1781, PR#1799). * Fix horizontal and page scrolling under GTK3 (PR#1843). Interface * Show part of the file path to show unique elements in the go to symbol popup (Thomas Martitz, PR#1445, Issue#1069). * Always show icons in the go to symbol popup (PR#1997). * Add a keybinding for "Strip Trailing Spaces" (LarsGit223, Issue#395, PR#1806). * Add some missing label relations. Editor * Update Scintilla to version 3.10.0 (Issue#1421, PR#1914). * Fix line breaking with multi-byte characters (Issue#1958, PR#1960). * Don't beep when trying to go to the next cursor location in a snippet and there is none (see Issue#1554). Filetypes * Markdown: Display bold and italics as such (FMuro, PR#1837). * Python: Update keywords to Python 3.7 (Miro Hrončok, Issue#1351, PR#1894). * PHP: Update tags for PHP 7.2 (Dominic Hopf, PR#1970). * Batch: Use REM as single-line comment marker (Issue#1912, PR#1932). * VHDL: Classify string styles as such (PR#1402). Windows * Fix display issues on HiDPI displays (Issue#692, PR#1992). API * Add `msgwin_compiler_add_string()`, `msgwin_msg_add_string()`, `msgwin_status_add_string()` (Thomas Martitz, PR#1748). * Add `GeanyObject::key-press` signal allowing plugins to intercept key presses before Geany (Jiří Techet, PR#1829). * Add `utils_strv_shorten_file_list()` (Thomas Martitz, PR#1445). * Fix value of GeanyDocument::changed when quitting (Jason Cumbie, PR#1857). Internationalization * Add translation: da * Updated translations: de, es, fr, hu, it, ja, pt, sv, sk, uk, ru, zh_CN, zh_TW Geany 1.33 (February 25, 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 Geany 1.32 (November 19, 2017) General * Improve CLI argument help (PR#1644). * Keep the current tab when closing documents to the right of another tab. * Re-enable SIGTERM handling (PR#1255). * Create correct path for filetype config files (Jiří Techet, PR#1482). * Add an option to enable IME's candidate window display inline (Sinpo Wei, PR#1514). * Add an option to automatically reload files changed on disk (Mark O'Donovan, PR#1246). Bug fixes * Fix backward compatibility of the geometry saving setting. * Close "Deleted from Disk" Infobar on Reload (Lars Paulsen, PR#1628). * Make sure GDK_MOD2_MASK is cleared when getting modifiers (Jiří Techet, PR#1636). * Use non-symlinked VTE libraries on MacOS X (Jiří Techet, PR#1625). * Fix crash if plugin manager is opened more than once (PR#1564). * Fix incorrect variable reference (Thomas Martitz, PR#1561). Interface * Add "Close Documents to the Right" feature (PR#1362). * Add an option to save/reload either window position or size, but optionally not both (delt01, PR#1456). Editor * Update Scintilla to version 3.7.5 (PR#1503). * Improve snippet support (visual indicators and more) (Thomas Martitz, PR#1470). * Push current position to navqueue before navigating back (Vasiliy Faronov, PR#1537). Filetypes * Add GNU assembler filetype extensions (Issue#904). * Make Python comment hash space (PR#1682). * Add missing string and comment styles for various lexers (PR#1502). * Add missing PHP keywords, especially for PHP 7.x (1547, PR#1547). * Python: Don't highlight sub-identifiers as keywords (PR#1544). Plugins * FileBrowser: don't change directory on project save (Jiří Techet, PR#1400). Windows * Fix Execute button on Windows when using HTML files and "builtin" command (Issue#1018, PR#1667). API * Add `utils_get_real_path()` and deprecate `tm_get_real_path()` (PR#1224). * Add `geany_plugin_get_data()` (PR#1234). * Add `keybindings_load_keyfile()` (Jiří Techet, PR#1430). * Add `tm_tag_get_type()` (Thomas Martitz, PR#1465). HACKING * Add note about data types and update for best practices (PR#1282). Internationalization * Updated translations: ca, de, el, es, fr, it, lt, lv, nl, pt, ru, sk, sv, zh_CN Geany 1.31 (July 16, 2017) Bug fixes * 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 (Jiří Techet, PR#1426). Geany 1.30.1 (March 19, 2017) Editor * Fix auto-completion and calltip popup position on multi-monitor setups (Issue#1422). Internationalization * Updated translations: ca, de, el, es, sk Geany 1.30 (March 05, 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 translations: de, 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). OSX * Fix slow startup (Jiří Techet, Issue#1277, PR#1399). Geany 1.29 (November 13, 2016) General * 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. * Add support for VTE 0.38 and newer (Issue#336, PR#1181). 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 (PR#1200, Issue#1198). Editor * 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). * Allow to configure the error indicator color (PR#1185). Filetypes * Fix highlighting of Haxe preprocessor (Issue#936). * Add `.exp` extension to TCL (Simon Marchi, PR#979). Internationalization * Updated translations: ca, de, el, es, fr, id, it, kk, nl pt, pt_BR, sv, zh_CN, API * Update `GeanyProxyProbeResults` API (PR#1213). * 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()` (PR#1203). * Add "project-before-close" signal (PR#1223). 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 (Issue#783, Issue#784, Issue#1229, Issue#1260, PR#1301). * Fix executing external commands (mainly Build and Run commands) where paths and filenames with non-ASCII characters are involved (Issue#1076, Issue#1259, Issue#1278, PR#1095). * 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 (Issue#1276, PR#1095). Geany 1.28 (July 10, 2016) General * 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). Editor * Update Scintilla to version 3.6.6. * Improve Goto Symbol popup contents (Jiří Techet, PR#958). Filetypes * 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). 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 (Thomas Martitz, PR#1093). Plugins * Class builder: use `.hpp` extension for C++ headers by default (Yan Pashkovsky, PR#999). Windows * Show an error if an URI cannot be opened (PR#1079). OSX * Fix refreshing the keybindings displayed in the menus (Jiří Techet, PR#973). Geany 1.27 (March 13, 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, PR#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). Geany 1.26 (November 15, 2015) 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). Geany 1.25 (July 12, 2015) General * 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 (#1062). * 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ří Techet). * Fix function return type in symbol list tooltips in some cases (PR#475, Jiří Techet). * Fix VTE path following on startup. Interface * 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 (PR#179). * 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 (Issue#483). * Add configuration menu entries for all filetypes (PR#491, Jiří Techet). Editor * Update Scintilla to version 3.5.6 (#1041). * Do not comment out blank lines when toggling comments (PR#79, Igor Shaula). * 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). Search * 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). Filetypes * 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 (PR#544). 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 (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). API * 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ří Techet). * 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 (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 Martitz). Geany 1.24.1 (April 16, 2014) General * Fix distribution of custom GTK style files (#1037). Geany 1.24 (April 13, 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 '-', '<' or '>'. 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). 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) General * Various fixes to language theming (#3573213). * Various Windows makefile fixes. * Rewrite printing code (#2629121, #2804000, #3475444, #3580268, #3580269). * 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 dialog. * 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). 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 (#3587465). * Grab focus in the embedded terminal upon middle click (#3574724). * Add support for embedded terminal background image (Mislav Blažević). Editor * Update Scintilla to version 3.2.3 (#2808638, #2909124, #3094431, #3233160, #3540469). * 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 (#3026691). * Keep caret and anchor position upon indent and unindent (#3167355). * Complete on dash (-) too in CSS documents. * Make wordchars have precedence over whitespacechars (#3429368). * Fix cursor position after comment toggling with no selection (#3576431). * 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. Search * 'Mark All' now also uses the fully-featured PCRE engine (#3564132). * 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' (#3182425). * Allow to change the keybinding for 'Quit'. Filetypes * 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 (#2130612). * 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 (#3578557). * 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 main(). * Fix improperly translated string in Pascal template (#3602314). * Add Go language filetype (tomboy64). Plugins * Export: Fix missing linking on libm (Chow Loong Jin) * File Browser: Backspace now moves to parent directory. API: * Fix plugin_add_toolbar_item() insertion order (#3522755) (Dimitar Zhekov). 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 (#3560181). Geany 1.22 (June 18, 2012) 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 Geany 0.21 (October 2, 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 (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, #3313315). 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 (Dimitar Zhekov). 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 (Nicolas Sierro). Filetypes * 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, #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 (Jason Oster). * Add filetype Cobol (Seth Keiper). * Add file template for Vala (Mark Trompell). Plugins * File Browser: Make 'Hide object files' preference configurable with file extensions. * Split Window: Fix a crash when changing filetype (Matthew Brush, #3255968). * Split Window: Update styles when the filetype changes (Matthew Brush). * 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). Documentation * Add 'Reading styles from another filetype' subsection (Matthew Brush). * 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". 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 Geany 0.20 (January 5, 2011) Fixes: * Improve compatibility with GVFS using GIO to save documents (Alexey Antipov). * 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 properties. * 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. Interface: * Color build command fields light grey unless overridden (Lex Trotman). * Replace /home/user with ~ in the documents list (Jon Strait). * Display 'new instance' on title bar for 2nd instances (Eugene Arshinov). * 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). Documents: * 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 Zhekov). * Don't prompt for reloading if the document has not been edited (Jiří Techet). * Add Close button to the detected file changed dialog. Editor: * 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

tag completion with a 'table' snippet (Eugene Arshinov). * Auto-indent after an HTML/XML line without a closing tag (Eugene Arshinov). * 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). Configuration: * Load insertion templates from system path, don't create them in the user's config dir. * File templates are now reloaded on saving. Prefs: * 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. Keybindings: * 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 Arshinov). Filetypes: * 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 fold.cpp.comment.explicit. * 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 default. * 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). Plugins: * File Browser: Add history to path entry. * HTML Characters: Only automatically replace characters when the current document is a Markup document. Internationalisation: * Add translations: kk. * Update translations: cs, de, en_GB, es, fi, fr, hu, ja, nl, pt, sl, sv, tr, zh_CN. Manual: * 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. HACKING: * Add 'Bugs to watch out for' section. API: * 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) Fixes: * Fix bug where Geany did not always report an error message when saving a document fails. Geany 0.19.1 (August 18, 2010) Fixes: * 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, thanks). * 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). Tweaks: * 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. Manual: * Fix wording - restarting is required for hidden prefs. * Fix Grep --exclude-dir example. Geany 0.19 (June 12, 2010) General: * 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. Interface: * Add option 'System Default' for toolbar icon style and size to use the GTK default value. * Allow '+' and '-' 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 document. * 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). Prefs: * 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 Arshinov). Editor: * 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. Filetypes: * 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). Keybindings: * 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. Templates: * 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.* group. * Add filetypes.xml asp.default.language property (Ross McKay). Plugins: * Classbuilder: Add support for creating PHP classes (patch by Ondrej Donek). * HTMLchars: Make plugin remember whether replacement of special characters was activated. Windows: * Support very long build commands. * Add a preference for choosing between GTK and native File Open/Save dialogs (only available on Windows). Internationalisation: * Added translations: ast. * Updated translations: de, en_GB, es, fr, gl, ja, nl, pt, ru, sl, sv, tr, vi, zh_CN. API: * 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", "geany-startup-complete". * 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 strings. * Add GeanyKeyGroup callback support. * Add more Scintilla function wrappers, foreach_dir(), foreach_str(), utils_get_file_list_full(), document_get_notebook_page(), editor_insert_text_block(). * Don't install unnecessary headers. * Remove deprecated header pluginmacros.h - use geanyfunctions.h instead. * Deprecate documents_foreach(), use foreach_document() instead. * Deprecate PLUGIN_KEY_GROUP() macro - use plugin_set_key_group() instead. 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). Incompatibilities: * 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). Improvements: * Extend auto_latex() function to check whether an environment has been closed within the next lines to avoid auto adding double \end{}. * 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. Documentation: * Add 'Scope autocompletion' section. * Add 'Tools menu items' section to explain configuration files submenu, reload configuration item. * Minor updates/fixes. API: * Add gcc commands to build a plugin to the HowTo. HACKING file: * 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. Internationalisation: * Added translations: gl Geany 0.18 (August 16, 2009) General: * 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 notices. Interface: * 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. Keybindings: * 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. Editor: * 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'. Filetypes: * 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. Tags: * Read custom system global tags files from $prefix/share/geany/tags (#2778923). * 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. Windows: * 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. Internationalisation: * 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). Prefs: * 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. Interface: * 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 menu. * 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. Filetypes: * 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. Windows: * 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. Plugins: * 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 sci_get_text_range(). * 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. Documentation: * Describe how to build Geany using the Waf build system. Internationalisation: * 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). General: * 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. Prefs: * 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. Interface: * 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. Editor: * 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). Filetypes: * 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. Windows: * 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. Plugins: * 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). Documentation: * 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. Internationalisation: * 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) General: * Add Previous Message, Previous Error commands (thanks also to Beau Barker). * 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. Prefs: * Make disk check timeout configurable (zero disables disk checks). * Add search pref: 'Use the current file's directory for Find in Files' (#1930435). Interface: * Make keyboard shortcuts dialog non-modal (#1999384). * Add a debug messages window to easily view debug messages/warnings. Editor: * 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 highlighting). * 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 autocompletion. * Highlight matching brace indent guides (thanks to Jason Oster; #2104099). * 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". Windows: * 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. Keybindings: * Add Go to Start/End of Line keybindings (#1996175). * Add 'Switch to Compiler' keybinding (useful when checking build progress). * Add keybindings for Line wrapping, Line breaking, Toggle fold and Replace Spaces by tabs, Previous/Next word part. Filetypes: * 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). Plugins: * 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'. Documentation: * 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. Internationalisation: * 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) General: * 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). Filetypes: * 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. Interface: * 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. Editor: * 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"). Windows: * 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. Plugins: * 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 group. * 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. Documentation: * Add descriptions for several options in the preferences dialog (patch from Robert McGinley). Internationalisation: * New translations: ro. * Updated translations: bg, de, en_GB, es, fr, hu, it, ja, pt_BR, ru. Geany 0.13 (February 05, 2008) General: * 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. Filetypes: * Add configurable default file extension setting for filetype definition files. * Fix reST autocompletion. Tags: * 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. Interface: * 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 Marinas). * 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. Editor: * Fix hidden lines after deleting a line that is a collapsed fold point. * 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. Keybindings: * 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. Plugins: * 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. Windows: * 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. Documentation: * 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. Internationalisation: * 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 documents. * 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 subdirectory. * 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. Filetypes: * 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). Plugins: * 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, Ctrl-Shift-{PageUp,PageDown}. * Change Previous/Next Paragraph fixed commands to Ctrl-{Up,Down}; adding Shift extends selection by paragraph. (Scroll by line is now Alt-{Up,Down}). * 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. General: * Added preference for 'smart' home key behaviour (thanks to Jeff Pohlmeyer). * 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). Docs: * 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. HACKING: * Added notes on adding a filetype. Internationalisation: * 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 tags. * 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 Tab. * 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 whitespace. * Add an option to disable Drag'n'Drop in the editor widget. Documentation: * Add Project Management, Global Tags, Construct Completion sections. * Add Bookmarks section (thanks to John Gabriele). * Update Filetype Templates, Search sections. Internationalisation: * 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. Internationalisation: * New translations: fi (thanks to Harri Koskinen). * Updated translations: cs, de, es, fr, hu. Geany 0.10 (December 21, 2006) Changes: * 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 conversions. * 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 dialogs. * 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). Internationalisation: * New translations: fr, hu, it, zh_CN, zh_TW. * Updated translations: be, ca, cs, de, es, vi. Geany 0.9 (September 29, 2006) Changes: * 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 enabled. * 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 filename. * 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. Internationalisation: * New translations: cs, nl, vi. * Updated translations: de, es. Geany 0.8 (August 09, 2006) Changes: * 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 indentation. * 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. Internationalisation: * New translations: be, es, pt_BR, ru. * Updated translations: ca, de, pl. Documentation: * 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 libvte.so 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 http://geany.uvena.de * 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