Documentation»Release Notes

Release Notes

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. <BR> (#2226117).
    * Highlight C# and Vala raw and verbatim strings.
    * Improve JavaScript keyword handling and keyword lists (Jason Oster).
    * Add filetype Cobol (Seth Keiper).
    * Add file template for Vala (Mark Trompell).

    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 <table> 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 1, 2010)

    Fixes:
    * Fix not always reporting 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 '+<number>' and '-<number>' as values for Goto Line inputs
      to jump relative to the current line.
    * Add preference to add new document tabs beside the current one
      (patch by Colomban Wendling).
    * Enable type-ahead find for sidebar symbols and documents tabs
      (patch by Thomas Martitz).
    * Make Ctrl-click on any notebook tab switch to the last used
      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.

Older Release Notes