2011-10-07  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/keybindings.c, src/sidebar.c, src/dialogs.c, src/callbacks.c,
   src/notebook.c, src/document.c, src/document.h, src/editor.c:
   Add document_show_tab().


2011-10-06  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * doc/Makefile.am, doc/makefile.win32:
   Add doc/makefile.win32 for docs generation.
 * scintilla/Makefile.am, src/Makefile.am, 
   tagmanager/mio/Makefile.am, tagmanager/Makefile.am, Makefile.am:
   Fix missing tagmanager/mio/makefile.win32 in EXTRA_DIST.
   Include makefile.win32 in EXTRA_DIST recursively, not at top-level.


2011-10-06  Colomban Wendling  <colomban(at)geany(dot)org>

 * autogen.sh, configure.ac:
   Modernize configure.ac a bit.
 * configure.ac, m4/geany-revision.m4, m4/geany-binreloc.m4,
   m4/geany-gnu-regex.m4, m4/geany-plugins.m4, m4/geany-i18n.m4,
   m4/geany-mingw.m4, m4/geany-socket.m4, m4/geany-vte.m4,
   m4/geany-utils.m4, m4/geany-status.m4, m4/geany-the-force.m4:
   Extract some configure logic to separate files for better
   readability.


2011-10-05  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * tagmanager/lregex.c, tagmanager/php.c:
   Fix CTags bug 2970274 - when using addCallbackRegex the callback 
   receives less than the number of matches. The number is still not 
   correct (due to POSIX regex compatibility) but at least includes 
   all non-empty matches now.
   http://sourceforge.net/tracker/index.php?func=detail&aid=2970274
   &group_id=6556&atid=106556


2011-10-04  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * tagmanager/js.c:
   Update from CTags SVN jscript.c.


2011-10-03  Colomban Wendling  <colomban(at)geany(dot)org>

 * TODO, configure.ac, doc/geany.txt, geany.nsi, geany_private.rc,
   src/geany.h, win32-config.h, wscript:
   Post-release version bump.
 * src/callbacks.c:
   Fix "toggle case" when there is no selection.


2011-10-03  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * Merge branches/unstable:
 - tagmanager/php.c:
   Fix parsing keyword-qualified functions strictly, e.g. don't 
   parse 'staticfunction' or 'fatfunction'.
 - src/utils.c, src/utils.h, src/editor.c:
   Use GRegex for snippet indentation replacement - fixes wrong 
   behaviour with Mac line endings.
 - tagmanager/lregex.c, TODO:
   Use GRegex for CTags instead of POSIX regex - GRegex is more 
   powerful. This also fixes a (HTML) performance issue on Windows. 
   Geany will now print a debug warning when using the "b" CTags 
   regex flag option for non-extended syntax. This is not currently 
   used by Geany's parsers.
   Note: GNU regex can't be removed yet as it's still used elsewhere 
   by Geany.
 - src/build.c, doc/pluginsignals.c:
   When saving on build, prompt for a filename if necessary.
   Emit the "build-start" signal only if saving succeeds.
 - src/build.c:
   Use #ifdef SYNC_SPAWN instead of G_OS_WIN32 for easier testing with 
   glib's asynchronous spawning (which doesn't work on Windows).
 - src/win32.c, src/win32.h, src/dialogs.c:
   Use GTK unsaved file dialog on Windows too because the button names 
   should be specific.
 * src/build.c, src/keybindings.c, src/keybindings.h, src/prefs.c:
   Support visual reordering of keybinding groups without breaking the 
   plugin ABI.
   Reorder Project group to follow main menu order.
   Move Focus, Notebook tab groups last as they don't have 
   corresponding menu items.
   Use keybindings_get_core_group() for fixed group IDs instead of 
   indexing keybinding_groups.
   Make keybindings_lookup_item() only work with a GEANY_KEY_GROUP_ 
   ID, not an index into keybinding_groups.


2011-10-02  Colomban Wendling  <colomban(at)geany(dot)org>

 * doc/geany.txt, doc/geany.html:
   Add myself as an author.
 * New release: Geany 0.21 "Gromia".


2011-10-01  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * doc/images/*.png:
   Update documentation images.
 * doc/geany.txt, doc/geany.html:
   Update documentation for new images.


2011-09-28  Colomban Wendling  <colomban(at)geany(dot)org>

 * src/utils.c:
   Fix utils_string_replace_all() to accept a NULL replacement again.


2011-09-26  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/editor.c:
   Fix not converting \n to document line endings in snippets.
 * src/editor.c:
   Fix not indenting snippet contents for documents with non-\n line
   endings.


2011-09-22  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/stash.c, src/keyfile.c, src/keyfile.h, src/ui_utils.c:
   Add configuration_add_various_pref_group().
 * src/win32.c:
   Fix \0 char in format string - save as dialog filter bug.


2011-09-20  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/keyfile.c:
   Rename use_safe_file_saving various pref to use_atomic_file_saving
   as it's not 'safe'. Use old pref if new one is missing for
   compatibility with Geany <= 0.20.
 * src/prefs.c, src/stash.h, src/stash.c:
   Fix making various prefs tree sync with data values when showing
   the prefs dialog (patch by Dimitar Zhekov, thanks).


2011-09-17  Frank Lanitz  <frlan@frank.uvena.de>

 * po/fa.po, THANKS, src/about.c:
   Adding Persian translation. Thanks to Moein Owhadi Kareshk
 * THANKS: Adding Giuliano Manzitti to THANKS-file.


2011-09-16  Colomban Wendling  <colomban(at)geany(dot)org>

 * src/ui_utils.c:
   Fix document sensitivity of a few menu items.


2011-09-16  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/interface.c, geany.glade:
   Change various prefs label to /warn/ the user to read the manual.


2011-09-15  Colomban Wendling  <colomban(at)geany(dot)org>

 * src/utils.c:
   Ask the user to configure a valid browser command if spawning it
   fails rather than falling back to some arbitrary hardcoded defaults.


2011-09-14  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/win32.c:
   Fix uninitialized font size & other fields.
   Remove unhooked font dialog apply button.


2011-09-13  Colomban Wendling  <colomban(at)geany(dot)org>

 * data/filetype_extensions.conf:
   Add Markdown extensions from Shared MIME-Info database (closes
   #3405321).
 * src/filetypes.c:
   Add missing MIME type to a few filetypes.
 * doc/geany.txt, doc/geany.html:
   Fix a few typos.


2011-09-12  Colomban Wendling  <colomban(at)geany(dot)org>

 * src/symbols.c:
   Fix updating symbol list for overloaded C++ symbols (closes
   #3406644).


2011-09-02  Colomban Wendling  <colomban(at)geany(dot)org>

 * src/ui_utils.c:
   Fix check for enabling MIME type based icons.
 * src/encodings.c, src/filetypes.c:
   Plug a few memory leaks.


2011-08-25  Colomban Wendling  <colomban(at)geany(dot)org>

 * src/utils.h:
   Fix foreach_ptr_array() not to crash on arrays with 0 elements.


2011-08-25  Colomban Wendling  <colomban(at)geany(dot)org>

 * src/document.c, src/filetypes.c, src/filetypes.h, doc/geany.txt,
   doc/geany.html, data/filetypes.*:
   Add support for filetype-specific indentation settings (closes
   #3339420 and #3390435).
 * src/callbacks.c, src/editor.c, src/editor.h:
   Add editor_set_indent_width() to only set indentation width.
 * src/callbacks.c, src/callbacks.h, src/document.c, src/document.h,
   src/interface.c, geany.glade:
   Add menu items to detect indentation settings from document's
   content.


2011-08-24  Colomban Wendling  <colomban(at)geany(dot)org>

 * src/editor.c:
   Make completion and word completion support non-ASCII characters
   (closes #3313351).


2011-08-21  Colomban Wendling  <colomban(at)geany(dot)org>

 * src/callbacks.c, src/editor.c, src/editor.h, src/keybindings.c:
   Fix search for the current word if it isn't composed of only
   GEANY_WORDCHARS (closes #3386129).


2011-08-20  Colomban Wendling  <colomban(at)geany(dot)org>

 * tagmanager/haskell.c:
   Fix tags for one-letter Haskell symbols (closes #3289160).


2011-08-19  Frank Lanitz  <frank(at)frank(dot)uvena(dot)de>

 * doc/plugins.dox:
   Update of wording to fix some grammatical issues etc. on plugin howto.
   Patch provided by Matthew Brush. Thanks.
 * data/filetypes.Cython.conf:
   Extend list of primary keywords. Patch by Alexander Eberspächer. Thanks.


2011-08-19  Colomban Wendling  <colomban(at)geany(dot)org>

 * data/filetype_extensions.conf, data/filetypes.Cython.conf,
   data/filetypes.python:
   Add Cython filetype (patch by Matthew Brush, thanks).
 * src/symbols.c, tagmanager/include/tm_workspace.h,
   tagmanager/tm_workspace.c:
   Create temporary files used for generating global tags files in the
   system directory for temp files.
 * tagmanager/diff.c:
   Don't make tags for /dev/null in diff files but for the new file
   instead (Based on a patch by Yang Hong, thanks).


2011-08-15  Frank Lanitz  <frank(at)frank(dot)uvena(dot)de>

 * doc/plugins.dox:
   Update API version used inside plugin howto to a more recent version
   (API v211).


2011-08-13  Colomban Wendling  <colomban(at)geany(dot)org>

 * src/msgwindow.c, src/msgwindow.h, src/ui_utils.c, src/ui_utils.h:
   Focus the editor upon double click on the message and compiler
   windows (patch by Dimitar Zhekov, thanks).


2011-08-03  Colomban Wendling  <colomban(at)geany(dot)org>

 * src/geany.h, plugins/classbuilder.c, plugins/export.c,
   plugins/filebrowser.c, plugins/htmlchars.c, plugins/saveactions.c,
   plugins/splitwindow.c:
   Only include config.h when building Geany (closes #3384026).


2011-07-31  Frank Lanitz  <frlan@frank.uvena.de>

 * doc/plugins.dox:
   Adding some content about PLUGIN_SET_TRANSLATABLE_INFO() into plugin
   HowTo as well as a hint to make usage of main_locale_init().


2011-07-28  Colomban Wendling  <colomban(at)geany(dot)org>

 * src/build.c, src/build.h, src/editor.c, src/interface.c,
   src/keyfile.c, src/prefs.c, src/stash.c, src/stash.h,
   src/ui_utils.c, geany.glade, doc/geany.txt, doc/geany.html:
   Allow to edit formerly hidden preferences in the prefs dialog
   (closes #3313315, patch by Dimitar Zhekov and myself, thanks!).
 * src/document.c:
   Improve indentation width detection to better deal with Java
   and Vala files.


2011-06-26  Colomban Wendling  <colomban(at)geany(dot)org>

 * src/highlighting.c:
   Recognize C# and Vala raw and verbatim strings as string styles.
 * src/editor.c:
   Fix indentation brace matching (closes #3309606).


2011-06-26  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/callbacks.c, doc/geany.txt, doc/geany.html, README, HACKING,
   geany.pc.in:
   More GTK 2.8 => GTK 2.12 transition.


2011-06-20  Colomban Wendling  <colomban(at)geany(dot)org>

 * src/document.c, src/document.h, src/keyfile.c, doc/geany.txt,
   doc/geany.html:
   Add an hidden pref to choose between GIO and plain C unsafe
   file saving.
 * configure.ac, src/document.c, win32-config.h:
   Completely drop HAVE_GIO checks.


2011-06-18  Colomban Wendling  <colomban(at)geany(dot)org>

 * src/document.c, src/document.h, src/editor.c:
   Remove support of size being -1 in document_open_file_list().
 * src/utils.c src/utils.h:
   Remove support of size being -1 in utils_get_line_endings().
 * src/stash.c, src/stash.h:
   Make StashWidgetID map to gconstpointer, allowing use of const
   strings as the widget key.


2011-06-16  Colomban Wendling  <colomban(at)geany(dot)org>

 * src/document.c, src/main.c, src/ui_utils.c, src/utils.c:
   Remove most of the checks for GIO.
 * src/win32.c:
   Remove last GLib >= 2.16 check.


2011-06-15  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * tagmanager/python.c:
   Fix two bugs with triple quoted strings within comments
   and missing indentation within triple quoted strings
   (#3316966, synced from CTags SVN, patch by Elias Pschernig, thanks).


2011-06-14  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * data/filetypes.python:
   Add Cython keywords.


2011-06-13  Colomban Wendling  <colomban(at)geany(dot)org>

 * configure.ac, src/Makefile.am, src/makefile.win32, wscript:
   Bump dependencies to GTK >= 2.12, GLib >= 2.16 and GIO.
 * plugins/export.c, plugins/filebrowser.c, plugins/splitwindow.c,
   src/build.c, src/dialogs.c, src/document.c, src/highlighting.c,
   src/printing.c, src/project.c, src/search.c, src/ui_utils.c,
   src/vte.c:
   Deprecate ui_widget_set_tooltip_text() in favor of
   gtk_widget_set_tooltip_text().
 * configure.ac, doc/geany.html, doc/geany.txt, src/callbacks.c,
   src/keyfile.c, src/main.c, src/prefs.c, src/printing.c,
   src/printing.h:
   Enable GTK printing support unconditionally.
 * doc/geany.html, doc/geany.txt:
   Stop talking about pre-GTK 2.12 tricks.
 * geany.glade, src/interface.c:
   Fix Printing preferences page alignment.
 * src/notebook.c:
   Remove pre-GTK 2.10 tab DnD support.
 * src/pluginutils.c, tagmanager/tm_file_entry.c,
   tagmanager/tm_symbol.c, tagmanager/tm_tag.c:
   Unconditionally use GSlice allocator.


2011-06-11  Colomban Wendling  <colomban(at)geany(dot)org>

 * src/dialogs.c, src/main.c, src/ui_utils.h:
   Always destroy open and save dialog after use. This also helps
   working around a long-living GTK+ bug, hopefully closing #3311258,
   #3304273, #3201050, #3163742, #3153120 and #2985896.


2011-06-03  Colomban Wendling  <colomban(at)geany(dot)org>

 * src/callbacks.c, src/document.c, src/document.h, src/editor.c,
   src/search.c, src/search.h:
   Show the actual text the user searched for in messages rather than
   the internal one (patch by Eugene Arshinov, thanks).
 * src/search.c:
   Also use the actual user search in the combo box history.


2011-06-02  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/document.c, src/document.h, src/ui_utils.c, src/ui_utils.h:
   Add ui_focus_current_document() and document_grab_focus().
 * src/project.c:
   Focus the editor widget after loading project session files.
 * scripts/create_py_tags.py:
   Ignore tags ending with an underscore.
   Dynamically determine the path of Python's standard library instead
   of hardcoding it.
   Parse all modules of the Python standard library instead of a
   hardcoded list of filenames.


2011-05-30  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * data/filetypes.java:
   Move keyword 'enum' to primary keywords (closes #3305737).


2011-05-29  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * tagmanager/python.c:
   When checking for literal strings to ignore, consider also
   unicode, binary and raw strings.
 * src/plugins.c:
   Define and use get_plugin_path() always and move platform dependent
   code into the function definition.
   Do not add active plugins to the list of plugins when they are
   already in the list (closes #3308191).
   Check whether the custom plugin path is one of the user or system
   plugin paths and if so, ignore it.


2011-05-27  Colomban Wendling  <colomban(at)geany(dot)org>

 * src/prefs.c:
   Fix preferences help button when activated with the keyboard.


2011-05-22  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/about.c, src/build.c, tagmanager/tm_workspace.c:
   Remove unused variables (patch by Eugene Arshinov, thanks).
 * src/stash.c:
   Remove unused variables (suggested by Eugene Arshinov).
 * src/ui_utils.c, doc/geany.txt, doc/geany.html:
   Do not allow 'Save All' even if 'allow_always_save' is set
   (patch by Dimitar Zhekov, thanks).
 * data/filetypes.java:
   Add 'enum' to secondary keywords
   (closes #3305737, patch by Matthew Brush, thanks).


2011-05-12  Colomban Wendling  <colomban(at)geany(dot)org>

 * src/encodings.c:
   Update the HTML content-type encoding detection regexp to accept some
   more valid inputs (closes #3300703).


2011-05-11  Colomban Wendling  <colomban(at)geany(dot)org>

 * src/plugins.c:
   Improve the plugin manager dialog a little.
 * src/geanywraplabel.c, src/geanywraplabel.h, src/keybindings.c,
   src/plugins.c:
   Cleanup GeanyWrapLabel a bit.


2011-05-09  Colomban Wendling  <colomban(at)geany(dot)org>

 * plugins/splitwindow.c:
   Remove widget reparenting in Split Window plugin. This fixes plugin
   issues on Windows (patch by Matthew Brush, thanks - closes #2725342).
 * plugins/Makefile.am, plugins/makefile.win32, wscript:
   Enable SplitWindow build on Windows again (re-apply Enrico's patch).


2011-05-08  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * HACKING:
   Add note about patching Glade 2.12 to compile it with
   newer GTK versions.


2011-05-06  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/callbacks.c:
   Fix 'Toolbar Preferences' popup menu item (oops).


2011-05-03  Colomban Wendling  <colomban(at)geany(dot)org>

 * doc/geany.txt, doc/geany.html:
   Update the documentation for project patterns and recent FIF dialog
   changes.


2011-05-03  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/highlighting.c, doc/geany.txt, doc/geany.html:
   Allow translations for color scheme [theme_info] keys.
 * src/build.c, src/filetypes.c, src/filetypes.h, src/main.c:
   Save filetype build commands straight after editing them instead of
   at shutdown (patch by Dimitar Zhekov, thanks).


2011-05-02  Colomban Wendling  <colomban(at)geany(dot)org>

 * src/plugindata.h:
   Bump plugin API version so a plugin can know the project file
   patterns are visible by the user.


2011-05-01  Colomban Wendling  <colomban(at)geany(dot)org>

 * src/search.c:
   Fix pattern filtering when not searching in subdirectories.


2011-04-30  Colomban Wendling  <colomban(at)geany(dot)org>

 * src/project.c:
   Fix project patterns and make them visible (based on a patch
   by Jiří Techet, thanks).
 * src/search.c:
   Use project patterns in the FIF dialog (based on a patch
   by Jiří Techet, thanks).
 * src/msgwindow.c:
   Open the file in the msgwindow even if no line number is specified.


2011-04-30  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/filetypes.c, data/filetype_extensions.conf:
   Revert 'Compiled' filetype group back to 'Programming' (couldn't
   agree on whether e.g. Java is a compiled language).
 * doc/geany.txt, doc/geany.html:
   Add section 'Filetype group membership'.
 * src/highlighting.c, doc/geany.txt, doc/geany.html,
   data/colorschemes/alt.conf:
   Read color scheme name and description for menu item label and
   tooltip (based on patch by Matthew Brush, thanks).


2011-04-29  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/filetypes.c, src/filetypes.h:
   Remove now unnecessary Custom filetype group.
 * src/filetypes.c:
   Move text markup languages into Markup filetype group.
   Move some programming language filetypes out of the Miscellaneous
   group.
   Fix filetype title for some languages.
   Don't use 'Languages' for Miscellaneous group label.
   These changes mostly proposed by Matthew Brush (thanks).
 * src/filetypes.c:
   Make custom filetype titles use 'source file' only if their group
   is Compiled or Script.
   Use 'source file' for reStructuredText title.


2011-04-26  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/filetypes.c, src/filetypes.h, src/main.c,
   data/filetype_extensions.conf:
   Make filetype group membership configurable using [Groups] in
   filetype_extensions.conf.
   Read filetype_extensions.conf when calling filetypes_init_types(),
   don't require doclist initialization.
 * src/filetypes.c:
   Change Programming Languages filetype group label -> Compiled
   Languages.
   Use 'source file' title for custom filetypes.
 * src/prefs.c, doc/geany.txt, doc/geany.html:
   Remove Preferences label warning about restarting after editing
   template data - this is no longer necessary.


2011-04-26  Colomban Wendling  <colomban(at)geany(dot)org>

 * src/callbacks.c, src/document.c, src/document.h,
   src/documentprivate.h, src/editor.c, src/sidebar.c:
   Make sure to update the tag list only for the current document,
   avoiding idle updates to show the tag list for the wrong document.
 * src/callbacks.c, src/document.c, src/documentprivate.h,
   src/sidebar.c:
   Avoid changing the tag tree if it's not the one of the current
   document, fixing showing the wrong tag list when reloading
   configuration files.


2011-04-25  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/utils.c:
   Fix warning in utils_find_open_xml_tag() with malformed tags like
   <~foo> (oops).


2011-04-24  Colomban Wendling  <colomban(at)geany(dot)org>

 * src/editor.c:
   Don't update the tag list when the user is typing (patch by Yura
   Siamashka, thanks).
 * src/filetypes.c:
   When copying filetype groups, add keys from both system and user
   ones, making sure user's ones have precedence over system ones.


2011-04-23  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/utils.c, src/utils.h, src/plugindata.h, src/plugins.c,
   plugins/geanyfunctions.h:
   Add utils_find_open_xml_tag_pos() API function (patch by Eugene
   Arshinov, thanks).
 * src/templates.c:
   Replace dates on template insertion, not when loading templates.


2011-04-19  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/editor.c:
   Fix multiple snippet cursor positions for Tabs + Spaces mode.
   Simplify editor_insert_snippet() code now we use cursor marker
   strings.
 * src/utils.c, src/utils.h, src/editor.c:
   Add utils_string_find() to search in a fixed range.
   Change utils_string_replace() to just replace a fixed number of
   characters.


2011-04-17  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/plugindata.h, src/document.c, src/plugins.c, src/document.h,
   plugins/geanyfunctions.h:
   Add document_compare_by_tab_order() and
   document_compare_by_tab_order_reverse() to the plugin API.
 * src/ui_utils.c:
   Use document_compare_by_tab_order() as default compare function
   to sort the document list in the document notebook tab menu, this
   fixes the currently broken default ordering.


2011-04-15  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/utils.c, src/utils.h, src/editor.c:
   Add function utils_string_replace() to replace in a fixed range.
   Remove utils_string_replace_helper() and update cursor marker code.


2011-04-14  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/editor.c:
   Fix snippets bug: {ob}pc{cb} replaced by '%' instead of {pc}.
   Refactor snippets_make_replacements() using geany_cursor_marker.


2011-04-13  Colomban Wendling  <colomban(at)geany(dot)org>

 * src/editor.c:
   Avoid triggering autocompletion on PHP open tags (closes #3199442).


2011-04-13  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/document.c:
   Update dox for document_compare_by_display_name() with warning
   about parameter addresses.
 * src/document.h:
   Use brackets for DOC_FILENAME() macro 'doc' argument.
 * src/templates.c, src/utils.c, src/toolbar.c, src/utils.h,
   src/keyfile.c, src/filetypes.c, src/editor.c, src/symbols.c:
   Make utils_build_path() return a copy for safety.
 * src/keybindings.c:
   Fix Ctrl-Shift-[CV] keybindings to work outside the VTE.


2011-04-12  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/document.c:
   Fix wrong casting of array pointers, thanks Nick.
 * src/plugindata.h, src/callbacks.c, src/document.c, src/plugins.c,
   src/document.h:
   Rename document_sort_by_display_name() into
   document_compare_by_display_name(), thanks again Nick.


2011-04-11  Colomban Wendling  <colomban(at)geany(dot)org>

 * src/document.c, src/document.h, src/editor.c, src/keybindings.c:
   Revert r5642 "Don't update parent WorkObjects when updating one in
   real-time" because it broke calltips.


2011-04-11  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * plugins/filebrowser.c:
   Update path when saving a new document for the first time if the
   follow path option is enabled.
 * src/about.c, src/keyfile.c, THANKS:
   Store VTE path with the session (based on patch by Nicolas
   Sierro, thanks).
   There's still a bug with loading a project at startup; closing the
   project doesn't restore old VTE path.
 * src/filetypes.c, src/filetypes.h:
   Refactor with filetypes_get_filename().
   Make filetypes_get_conf_extension() static.
 * src/utils.c, src/utils.h, src/filetypes.c:
   Make utils_make_filename() return a copy for safety.


2011-04-10  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/editor.c:
   Ignore scrolling events in on_update_ui().
 * src/geanyobject.c, src/plugindata.h, src/geanyobject.h,
   src/document.c, doc/pluginsignals.c:
   Add and use signal "document-reload" to the plugin API.
 * src/symbols.c, tagmanager/sql.c:
   Fix mapping of SQL tags for Geany's symbol list (closes #3216474).
 * src/ui_utils.h, src/plugindata.h, src/document.c, src/plugins.c,
   src/document.h, src/ui_utils.c, plugins/geanyfunctions.h:
   Add ui_menu_add_document_items_sorted() and
   document_sort_by_display_name() to the plugin API.


2011-04-08  Colomban Wendling  <colomban(at)geany(dot)org>

 * scintilla/lexers/LexCPP.cxx:
   Make highlighting of triple-quoted verbatim an option (Backport
   from Scintilla HG 3602:5536ed81a85b).
 * src/highlighting.c:
   Add highlight for triple-quoted verbatims.
 * data/filetypes.c, data/filetypes.vala, data/filetypes.Genie.conf,
   data/filetypes.Scala.conf:
   Highlight triple-quoted verbatims in Vala, Genie and Scala filtypes.
 * data/filetypes.Genie.conf:
   Copy C styling rather than redefining the styles.
 * src/editor.c:
   Don't set font twice for line numbers and braces.


2011-04-05  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/templates.c:
   Remove TEMPLATES_GET_FILENAME() macro.
 * src/search.c:
   Don't auto-enable case-sensitive option when enabling regex in
   Find/Replace dialogs.


2011-04-04  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * scintilla/gtk/ScintillaGTK.cxx:
   Fix X PRIMARY selection issue when Scintilla widget is
   unrealized/re-realized (Backport from Scintilla HG,
   original patch by Matthew Brush).
   Reset cursors when Scintilla widget is realized (Backport from
   Scintilla HG, original patch by Matthew Brush).


2011-04-04  Colomban Wendling  <colomban(at)geany(dot)org>

 * scintilla/gtk/PlatGTK.cxx:
   Fix font rendering in Scintilla when using Cairo.


2011-04-04  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/interface.c, geany.glade:
   Make Project->Properties the last menu item so it's faster to use.


2011-04-03  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * scintilla/*:
   Update Scintilla to version 2.25.
 * version.txt, Makefile.am:
   Add Scintilla's version.txt file.
 * scintilla/makefile.win32, tagmanager/makefile.win32, makefile.win32:
   Replace escape character '\' by slash '/' in paths in the
   Windows Makefiles (patch by Matthew Brush, thanks).
 * src/tools.c:
   Reflect the existence of the entered command in `Set Custom Commands`
   dialog as well using the yes/no icon.


2011-04-03  Colomban Wendling  <colomban(at)geany(dot)org>

 * src/main.c, src/prefs.c, src/tools.c:
   Fix loading and updating menu accelerators for custom commands.
 * src/prefs.c:
   Don't allow editing keybinding column of group rows.
 * src/tools.c:
   Fix ID of newly added commands in the `Set Custom Commands` dialog.


2011-04-02  Colomban Wendling  <colomban(at)geany(dot)org>

 * src/tools.c, doc/geany.txt, doc/geany.html:
   Improve the `Set Custom Commands` dialog.


2011-04-01  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/interface.c, src/interface.h, geany.glade:
   Rename Preferences dialog Interface subtab More -> Notebook tabs.
 * src/toolbar.c, src/dialogs.c:
   Use mimetype icon in File Properties dialog.
 * doc/geany.txt, doc/geany.html:
   Fix title capitalization.
 * src/interface.c, doc/geany.txt, doc/geany.html, geany.glade:
   Move Preferences dialog Toolbar tab under Interface tab.
 * src/build.c:
   Tweak some build dialog labels:
   Clear -> Reset.
   Fix capitalization.
   Use filetype name instead of title.
 * src/templates.c, src/templates.h, doc/geany.txt, doc/geany.html:
   Remove old filetype templates support - users can use custom file
   templates instead.


2011-04-01  Colomban Wendling  <colomban(at)geany(dot)org>

 * src/encodings.c:
   Update regex used to find encodings for it to allow the encoding to
   be quoted, adding support for XML (closes #3183506).
 * src/encodings.c:
   Implement charset name normalization in order to better deal with
   badly-written encoding names (i.e. names found by regex search).
   This also makes encodings_get_idx_from_charset() and
   encodings_get_from_charset() more permissive regarding the passed-in
   encoding name.
 * src/encodings.c:
   Always try to honor the charset found in the document, even if the
   document can be loaded as UTF-8.
   This make files encoded with e.g. ISO-8859-1 that have the proper
   information in them but only use the UTF-8 compatible part of
   ISO-8859-1 to be properly loaded as ISO-8859-1, rather than UTF-8.
   Also fix check for locale encoding.
 * src/tools.c, doc/geany.txt, doc/geany.html:
   Make `Send selection to` send the current line if there is no
   selection.


2011-03-31  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * plugins/filebrowser.c:
   Make 'Hide object files' preference configurable with file
   extensions.
 * plugins/filebrowser.c:
   Fix applying default setting for hide_object_files (oops).
   Fix warning when enabling plugin from the Plugin Manager.
 * plugins/filebrowser.c:
   Fix optimization for filter check when pattern is '*'.
   Use foreach_strv() instead of foreach_c_array().
 * plugins/filebrowser.c:
   Don't hide directories matching hidden file extensions e.g. foo.o.
   Refactor with check_object().


2011-03-30  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/editor.c:
   Use STYLE_MAX instead of 127 for editor_set_font(). This fixes a
   crash in the Split Window plugin when changing filetype (patch by
   Matthew Brush, thanks; fixes #3255968).
 * plugins/splitwindow.c:
   Update styles when the filetype changes (based on patch by
   Matthew Brush, thanks).
 * plugins/saveactions.c:
   Fix Instant Save preferences combo box filetype order.
 * plugins/filebrowser.c:
   Remove macro CHECK_READ_SETTING().


2011-03-30  Colomban Wendling  <colomban(at)geany(dot)org>

 * src/plugindata.h, src/pluginprivate.h, src/plugins.c,
   src/pluginutils.c, src/pluginutils.h plugins/geanyfunctions.h:
   Add plugin_idle_add(), plugin_timeout_add() and
   plugin_timeout_add_seconds() to the plugin API. These are
   convenience wrappers to ensure the added timeouts are properly
   removed when unloading the plugin, preventing possible crashes.
 * plugins/splitwindow.c:
   Use new plugin_idle_add(), preventing an unlikely crash.
 * doc/pluginsymbols.c, src/sciwrappers.c:
   Fix a few Doxygen warnings.
 * plugins/saveactions.c:
   Properly use 0 as the invalid timeout source ID.


2011-03-29  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * doc/geany.txt, doc/geany.html:
   Add #reading-styles-from-another-filetype subsection, based on
   patch by Matthew Brush (thanks).
 * doc/geany.txt, doc/geany.html:
   Add #filenames subsection for filetype definition files explaining
   the filename extensions and special cases.
 * src/plugindata.h, src/filetypes.c, src/filetypes.h, src/plugins.c,
   src/main.c, plugins/geanyfunctions.h:
   Add filetypes_get_sorted_by_name() to API.
   Fix --ft-names sorting to print in name order, not title order.


2011-03-28  Colomban Wendling  <colomban(at)geany(dot)org>

 * src/document.c, src/document.h, src/editor.c, src/keybindings.c:
   Don't update parent WorkObjects when updating one in real-time. This
   should fix some performance issues if a WorkObject has many parents.


2011-03-27  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/makefile.win32, src/main.c, src/Makefile.am, configure.ac,
   wscript:
   Initialize GLib's Gthread system early at startup in case any
   plugins need it.
 * src/keybindings.c, src/keybindings.h, src/plugindata.h,
   doc/geany.txt, doc/geany.html:
   Add new keybinding 'Remove Markers and Error Indicators'.


2011-03-26  Colomban Wendling  <colomban(at)geany(dot)org>

 * src/sidebar.c:
   Fix the sidebar popup menu to properly use the currently selected
   item rather than the previous one.
   Also change the hack used for the selection to be updated in the
   input handlers to call the GtkTreeView's handler manually rather than
   doing the actual job in IDLE callbacks for the TreeView's handler to
   have run.
 * doc/geany.html, doc/geany.txt, geany.glade, src/document.c,
   src/editor.h, src/interface.c, src/interface.h, src/keyfile.c,
   src/project.c:
   Add possibility to detect the indentation width from the file content
   (not supported if indentation type is tabs only).
 * plugins/splitwindow.c:
   Enable code folding in splitview window (based on a patch by Matthew
   Brush, thanks! - closes #3097780).
   Fix confusing terminology in Split Window plugin menu labels (patch
   by Matthew Brush - closes #2796316).
   Don't unsplit when closing the displayed document but rather pick the
   new current one if any.


2011-03-25  Colomban Wendling  <colomban(at)geany(dot)org>

 * data/filetypes.vala:
   Update Vala keywords (based on a patch from Matthew Brush, thanks).
 * data/document.c:
   Small code cleanups.


2011-03-24  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * plugins/filebrowser.c:
   Add history to filter entry.
 * src/keybindings.c, src/vte.c:
   Add fixed shortcuts for VTE copy (Ctrl-Shift-C) and paste
   (Ctrl-Shift-V).
 * src/keybindings.c:
   Make VTE copy/paste shortcuts work if 'Override Geany
   keybindings' is not set.


2011-03-24  Colomban Wendling  <colomban(at)geany(dot)org>

 * doc/geany.txt, doc/geany.html:
   Update the documentation to talk about real-time tag parsing.
 * doc/geany.txt, doc/geany.html, src/callbacks.c, src/callbacks.h,
   src/document.c, src/document.h, src/geanyentryaction.c,
   src/search.c, src/toolbar.c, src/ui_utils.c, src/ui_utils.h:
   Make Shift-Enter in search dialog and toolbar search entries search
   backwards.
 * plugins/filebrowser.c, plugins/saveactions.c, src/callbacks.c,
   src/dialogs.c, src/document.c, src/document.h, src/editor.c,
   src/encodings.c, src/filetypes.c, src/highlighting.c, src/log.c,
   src/main.c, src/plugins.c, src/printing.c, src/project.c,
   src/search.c, src/socket.c, src/toolbar.c, src/utils.c, src/utils.h:
   Improve usage of G_LIKELY() and G_UNLIKELY() macros.


2011-03-22  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/main.c:
   Make --ft-names list filetypes alphabetically.
 * plugins/filebrowser.c:
   Allow multiple file filters to be separated by a space for
   consistency with Find in Files file patterns. ';' is still
   allowed also.


2011-03-20  Colomban Wendling  <colomban(at)geany(dot)org>

 * data/filetypes.*, doc/geany.txt, doc/geany.html, src/callbacks.c,
   src/filetypes.c, src/filetypes.h, src/templates.c:
   Add new filetype setting "comment_single" to provide separated
   single-line and multiline comment support. Single-line are used in
   priority to comment code, and multiline to make template comments.
 * src/editor.c, src/search.c, tagmanager/diff.c:
   Don't use strlen(..) > 0 or == 0, simply check the first character
   against 0.
 * src/document.c:
   Update forced indent settings when setting the filetype. This makes
   documents created or set to a filetype with forced indent setting
   (Makefile, F77) to have the correct setting right away.


2011-03-19  Colomban Wendling  <colomban(at)geany(dot)org>

 * src/callbacks.c:
   Create a new undo action when inserting templates, making sure the
   user can undo the template insertion without also undoing a previous
   action.


2011-03-18  Colomban Wendling  <colomban(at)geany(dot)org>

 * src/document.c, src/encodings.c, src/encodings.h:
   Move document encoding conversion with BOM support to encodings.[ch]
   as encodings_convert_to_utf8_auto().
 * src/templates.c:
   Properly convert template files to UTF-8 on loading, fixing encoding
   issues if templates files are not encoded in UTF-8.


2011-03-18  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * data/templates/files/main.vala:
   Add file template for Vala (patch by Mark Trompell, thanks).


2011-03-17  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/utils.c, src/utils.h, src/filetypes.c:
   Support copying filetype definition file group keys from a system
   keyfile with e.g. [styling=C].
   Add function utils_make_filename() for building filenames easily.
 * THANKS, plugins/classbuilder.c:
   Improve Class Builder plugin dialog UI using a table (patch by
   Matthew Brush, thanks).
 * plugins/classbuilder.c:
   Fix GLib warning when creating classes and no documents are open
   (patch by Matthew Brush, thanks).
 * plugins/classbuilder.c:
   Undo patch change to cc_option_label_new() to append a ':' colon to
   label text because this unnecessarily causes string translations to
   be updated.
 * src/interface.c, geany.glade:
   Fix wrong label capitalization for Toolbar Preferences dialog tab
   and 2 other labels.
 * data/filetypes.Scala.conf, data/filetype_extensions.conf:
   Add Scala custom filetype, based on file by werg (thanks).
   (This uses the newly added [styling=C] syntax).
 * src/filetypes.c:
   Make special case for filetypes.matlab instead of truncating all
   filetype config filenames at slash.
 * src/filetypes.c:
   Fix generating tag files and --ft-names option by ensuring GTK is
   initialized before calling ui_get_mime_icon().


2011-03-15  Frank Lanitz  <frank(at)frank(dot)uvena(dot)de>

 * THANKS, src/about.c:
   Adding Wei-Lun Chao as current maintainer for traditional Chinese
   translation.


2011-03-15  Colomban Wendling  <colomban(at)geany(dot)org>

 * src/templates.c, src/templates.h:
   Use the same indentation for all templates (part of FR#3193527; from
   a patch by Matthew Brush, thanks).
 * src/plugins.c:
   Always keep the list of loaded plugin sorted by name.


2011-03-12  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * data/filetype_extensions.conf:
   Add Markdown extension.


2011-03-10  Colomban Wendling  <colomban(at)geany(dot)org>

 * src/toolbar.c:
   Correctly expand the menubar if the toolbar is appended to it but
   not visible (closes #3204955).
 * plugins/filebrowser.c, src/editor.c, src/plugins.c, src/symbols.c,
   src/tools.c, src/utils.c:
   Prefer prepend elements to lists rather than append them, for better
   performances.


2011-03-08  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/geany.h:
   Fix wrong code example in the API docs
   (spotted by Matthew Brush, thanks).


2011-03-07  Colomban Wendling  <colomban(at)geany(dot)org>

 * tagmanager/mio/mio-memory.c:
   Import upstream MIO changes not to require a C99 compiler.


2011-03-06  Colomban Wendling  <colomban(at)geany(dot)org>

 * src/symbols.c:
   When sorting tags by line, also sort by scope if line is the same,
   avoiding wrong sorting if a parent tag is on the same line than its
   children, and one of it's children would be sorted before
   alphabetically (closes #3193982).


2011-03-06  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/interface.c, geany.glade:
   Fix typo.
 * src/search.c:
   Remember Find and Replace options across restarts
   (patch by Dimitar Zhekov, thanks).
   Cleanup.
   Respect saved state of 'Case sensitive' option when using
   the 'Regular expressions' option as well.
 * plugins/export.c:
   Add option to insert line numbers (closes #3197150).
   Cleanup.
   Use the full filename and add the extension of the export format.
   Fix off-by-one bug which hidden the last empty line of a document.


2011-03-05  Colomban Wendling  <colomban(at)geany(dot)org>

 * configure.ac, wscript, makefile.win32, src/Makefile.am,
   src/makefile.win32, tagmanager/Makefile.am, tagmanager/c.c,
   tagmanager/entry.c, tagmanager/entry.h, tagmanager/fortran.c,
   tagmanager/get.c, tagmanager/get.h, tagmanager/js.c,
   tagmanager/lregex.c, tagmanager/makefile.win32, tagmanager/parse.c,
   tagmanager/read.c, tagmanager/read.h, tagmanager/sort.c,
   tagmanager/sql.c, tagmanager/strlist.c, tagmanager/mio/*:
   Move most of TagManager's I/O to MIO.
 * src/document.c:
   Enable in-memory tag parsing.
 * geany.glade, src/editor.c, src/editor.h, src/interface.c,
   src/keyfile.c:
   Add possibility to update symbol list in IDLE time, enabled by
   default using a minimal delay of 250ms.
 * src/symbols.c:
   Improve implementation of hide_empty_rows() to do all in one shot.
 * tagmanager/include/tm_tag.h, tagmanager/tm_project.c,
   tagmanager/tm_source_file.c, tagmanager/tm_tag.c,
   tagmanager/tm_workspace.c:
   Make TMTag reference-counted.
 * src/sidebar.c, src/symbols.c, tagmanager/include/tm_tag.h,
   tagmanager/tm_tag.c:
   Provide a GType for TMTag and use it in the tag store to make sure
   the tags it holds are always valid.
 * src/sidebar.c:
   Don't remove and add the symbols tree view if we re-add the same one.
 * src/sidebar.c, src/sidebar.h, src/symbols.c:
   Update the symbol list rather than clearing and re-building it.
   There is room for improvement in the implementation side, but it
   is harder to do, probably a future improvement.
 * tagmanager/c.c:
   Fix suffix of anonymous symbols (structs, enums, ...).
 * tagmanager/c.c:
   Plug a memory leak.


2011-03-02  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * plugins/saveactions.c:
   Fix wrong warning on empty backup directory setting if
   'Backup Copy' is not enabled at all.
 * AUTHORS, src/about.c, README.Packagers, README:
   Welcome Colomban Wendling, a new Geany developer.


2011-02-22  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/templates.c:
   Fix segfault when inserting e.g. fileheader template when the
   template file is empty (#3070913, thanks to lphilpot).


2011-02-21  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * plugins/filebrowser.c:
   Add support for multiple file filters, separated by semicolon
   (based on a patch by Grigory Javadyan, thanks).


2011-02-07  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * data/filetype_extensions.conf:
   Fix detecting Matlab and Txt2Tags extensions by default (#3167315,
   #3154637).


2011-02-06  Frank Lanitz  <frank(at)frank(dot)uvena(dot)de>

 * tagmanager/latex.c:
   Add a workaround for #3066566 to prevent Geany from crashing during
   loading of a LaTeX-file containing linebreaks inside headings.


2011-02-06  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * tagmanager/php.c:
   Fix memory leaks (reported by an anonymous IRC user).
 * doc/geany.txt, doc/geany.html:
   Replace '+' by '-' in the Scintilla Keybindings section
   to be consistent with the other mentioned keybindings.
 * src/project.c:
   Improve error checking when trying to write project files
   (patch by Colomban Wendling, thanks).
   Add a warning if writing the project file fails on close.
 * src/utils.c, src/utils.h, src/project.c, src/main.c, src/socket.c:
   Rename utils_is_file_writeable() into utils_is_file_writable().


2011-01-30  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/editor.c:
   Ensure the editor widget has the focus when the editor menu is
   called.
 * scintilla/lexers/LexCOBOL.cxx, scintilla/src/Catalogue.cxx,
   scintilla/Makefile.am, scintilla/makefile.win32, src/highlighting.c,
   src/plugindata.h, src/filetypes.c, src/filetypes.h, src/editor.c,
   src/symbols.c, tagmanager/parsers.h, tagmanager/makefile.win32,
   tagmanager/cobol.c, tagmanager/Makefile.am, data/filetypes.cobol,
   data/filetype_extensions.conf, wscript:
   Add filetype Cobol (based on a patch by Seth Keiper).


2011-01-20  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * plugins/filebrowser.c:
   Add '.pyc' to the list of hidden object files
   (patch by Filip Gruszczyński, thanks).


2011-01-19  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * *.*:
   Update copyright information.
 * configure.ac, doc/geany.html, doc/geany.txt, geany.nsi,
   geany_private.rc, win32-config.h, wscript, src/geany.h:
   Post-release version bump.


2011-01-18  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/highlighting.c, data/filetypes.javascript:
   Add and use secondary keywords for filetype JavaScript,
   update and sanitize JavaScript keyword lists
   (patch by Jason Oster, thank you).


2011-01-11  Frank Lanitz  <frank(at)frank(dot)uvena(dot)de>

 * THANKS, src/about.c:
   Added Rafael Peregrino da Silva to list of contributors for Brazilian
   Portuguese (pt_BR) translation.


2011-01-10  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/toolbar.c, src/ui_utils.c, src/about.c, THANKS:
   Add Save As toolbar button option (patch by Matthew Brush, thanks;
   #3153490).
 * scintilla/*, src/utils.c, src/notebook.c,
   data/filetypes.cpp, data/filetypes.vala, data/filetypes.glsl,
   data/filetypes.cs, data/filetypes.c, wscript:
   Merge unstable branch:
 - src/utils.c:
   Fix detecting non-lowercase self-closing tags e.g. <BR> (#2226117).
 - src/notebook.c:
   Add 'Open in New Window' command in the notebook tab menu (based on
   patch by Matthew Brush, thanks - #3118059).
 - data/filetypes.cpp, data/filetypes.vala, data/filetypes.glsl,
   data/filetypes.cs, data/filetypes.c:
   Disable preprocessor #define tracking for the CPP lexer
   (enabled by default in Scintilla).
 - scintilla/*, wscript:
   Update Scintilla to version 2.22.
   Use Scintilla's directory structure mostly and only remove
   unused lexers.


2011-01-05  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * New release: Geany 0.20 "Disra".


2011-01-04  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/plugins.c:
   Add debug message with the number of compatible plugins in each
   plugin search path when showing the Plugin Manager dialog.


2010-12-30  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * doc/geany.txt, doc/geany.html:
   Move and update 'Custom filetypes' section.
   Add 'Creating a custom filetype from an existing filetype' section.


2010-12-24  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/interface.c, src/keybindings.c, geany.glade:
   Add Edit->Insert Alternative White Space menu item (was previously
   removed from Edit->Commands submenu).


2010-12-22  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/interface.c, geany.glade:
   Split Preferences dialog Interface tab into subnotebook to reduce
   height of dialog (fixes #3141277). Reuses existing strings.
 * src/editor.c:
   Scroll to the current line when moving the cursor to the next
   cursor position in a snippet (#3139490).
 * doc/geany.txt, doc/geany.html:
   Add short 'View menu' section and 'Color schemes menu' section.
 * src/plugindata.h, src/plugins.c, plugins/geanyfunctions.h:
   Add filetypes_get_display_name() to API.


2010-12-09  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/build.c:
   Reduce Set Build Commands dialog column 1 width by using '#' label.
   Fix memory leak.
 * src/build.c:
   Use italic for note labels in the Build Commands dialog.


2010-12-08  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/build.c, src/build.h:
   Replace doc-comments with '/* *' comments to show there's no build
   API for plugins.


2010-12-07  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/keybindings.c, src/callbacks.c, src/vte.h, src/main.c:
   Fix segfaults when using 'Send Selection to Terminal' and the VTE
   is not loaded, and when using Ctrl-A after enabling the 'Load VTE'
   pref (patch by Dimitar Zhekov, thanks).
 * src/build.c, src/keyfile.c:
   Fix some more wrong uses of vte_info.load_vte instead of
   vte_info.have_vte.
 * src/main.c:
   Disable 'Send Selection to Terminal' item when not available
   instead of removing it to avoid trailing separator.
 * doc/geany.txt, doc/geany.html:
   Add 'Configuration file paths' section and link to it instead of
   repeating typical system data and user config directory paths.
   List 2 Tools->Configuration Files menu items.
   Add 'Plugin Manager' section break.
   Edit some related sections.
 * doc/geany.txt, doc/geany.html:
   Update Ignore Tags section with example and menu item.
 * doc/geany.txt, doc/geany.html:
   List 'Tools->Configuration Files->filetypes.common' menu item.


2010-12-06  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/document.c:
   Improve error message for document_save_file() if doc->file_name is
   NULL (reusing existing strings).
   Add warning about this in the API docs.


2010-12-03  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * scintilla/ScintillaGTK.cxx:
   Backport Scintilla HG fix: Remove styling idle in destructor to
   avoid crashing when idle called after ScintillaGTK instance
   destroyed (fixes #3111058).
   This prevents a crash when closing a modified document (usually
   without a trailing newline) and choosing Save.


2010-12-01  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/document.c:
   Warn about file truncation if unsafe file saving fails.


2010-11-30  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/utils.c:
   Check result of fclose() for utils_write_file().


2010-11-28  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * win32-config.h:
   Enable GIO and built-in regex support on Windows
   when compiling without Waf.


2010-11-25  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * geany_private.rc:
   Reformat and improve the Windows resource file.


2010-11-24  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * data/filetype_extensions.conf:
   Add *.latex pattern.
 * src/interface.c, geany.glade:
   Add note to indentation prefs page about using Project->Apply
   Default Indentation for currently open documents.


2010-11-23  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/interface.c, src/keybindings.c, src/callbacks.c,
   src/callbacks.h, geany.glade:
   Add 'Mark All' Search menu command.
 * src/symbols.c, doc/geany.txt, doc/geany.html:
   If the current word's tag is on the current line, make Go to Tag
   Definition look for a tag declaration instead, as this is more
   useful. Likewise make Go to Tag Declaration search for a tag
   definition in this case also.
 * src/interface.c, doc/geany.txt, doc/geany.html, geany.glade:
   Don't use 'Enable' in pref labels when unnecessary.
   Rename XML/HTML tag autocompletion -> auto-closing.
 * src/keyfile.c, src/document.c, src/document.h, doc/geany.txt,
   doc/geany.html:
   Add gio_unsafe_save_backup hidden pref (patch by Lex Trotman,
   thanks).
 * src/keybindings.c, src/editor.c, src/editor.h:
   Add editor_get_prefs() instead of editor_get_long_line_*()
   functions. This general function can be extended to support
   various project and document overrides.
 * src/keybindings.c, src/project.c, src/prefs.c, src/keyfile.c,
   src/editor.c, src/editor.h:
   Remove unnecessary 'global' from long line editor pref field names.


2010-11-22  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * doc/geany.txt, doc/geany.html:
   Explain how to grep the source for Scintilla lexer properties.
 * src/sidebar.c, src/callbacks.c, src/main.c:
   Fix auto-displaying of sidebar tab bar when sidebar is reshown.
   Only auto-display symbols and documents tabs when showing the
   sidebar if there are no plugin tabs.
   Don't hide the sidebar on startup if only plugin tabs are visible
   (fixes #3101867).
 * src/plugindata.h:
   Make GEANY_API_VERSION, GEANY_ABI_VERSION macros instead of enums
   so you can protect code with '#if GEANY_API_VERSION >= 200'.
 * src/plugindata.h:
   Warn about preprocessor testing GEANY_API_VERSION below 200 because
   those tests will always fail.


2010-11-21  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * data/filetypes.xml:
   Add 'instanceof' keyword for PHP (closes #3109330).


2010-11-18  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/build.c, src/dialogs.c, src/dialogs.h, src/callbacks.c:
   Re-focus Set Build Commands/Project dialogs after editing a build
   command label.
   Add 'parent' argument to some dialogs_show_input*() functions because
   the dialog parent may not always be the main window.
 * src/build.c, src/dialogs.c, src/callbacks.c:
   Don't change default build command entry color when cancelling
   label editing.
   Make dialogs_show_input() return NULL when cancelled.
 * tagmanager/php.c:
   Parse PHP final functions (fixes #3111171).
 * src/dialogs.c, src/plugindata.h, src/plugins.c,
   plugins/geanyfunctions.h:
   Add dialogs_show_input() to API.


2010-11-17  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/build.c, doc/geany.txt, doc/geany.html:
   Change 'Non-Filetype Commands' to 'Independent Commands' in the Set
   Build Commands dialog.
 * doc/geany.txt, doc/geany.html:
   Use 'Filetype build commands' and 'Independent build commands'.
   Fix saying project *independent* execute can only be set by hand.


2010-11-16  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/keybindings.c, src/editor.c, src/editor.h:
   Make Reflow Lines/Block command use the current indented block, not
   the whole paragraph, which could have mixed indentation.
   Fix memory leak and off-by-one bug on first line when using Select
   Paragraph command.
 * src/utils.c, src/highlighting.c, src/highlighting.h,
   src/plugindata.h, src/plugins.c, src/editor.c, src/editor.h,
   plugins/geanyfunctions.h:
   Add API functions (patch by Eugene Arshinov, thanks):
   Move editor.c: is_{string,comment,code}_style() functions to
   highlighting.c, add to API.
   Add editor_find_snippet(), editor_insert_snippet(),
   utils_find_open_xml_tag() to API.


2010-11-15  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/editor.c, doc/geany.txt, doc/geany.html:
   Don't use XML tag auto-indentation when '</' is to the right of the
   cursor; allow auto-indentation when XML tag auto-closing is also
   enabled.
 * doc/geany.txt, doc/geany.html:
   Rename 'Format' section 'Filetype configuration'.


2010-11-14  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * waf:
   Update Waf to current SVN version.


2010-11-11  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * waf, wscript:
   Update Waf to version 1.6.1.
   Update wscript for new Waf version, make it Python 3 compatible.


2010-11-11  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/document.c:
   Display better error messages when saving a document fails (patch by
   Dimitar Zhekov, thanks).
 * src/editor.c:
   Fix wrong snippet indentation when original cursor line has
   non-indentation whitespace (patch by david, thanks).
 * doc/geany.txt, doc/geany.html, data/filetypes.php,
   data/filetypes.docbook, data/filetypes.xml, data/filetypes.html:
   Enable XML tag autoindentation for PHP, Docbook and add docs for
   this setting (patch by Eugene Arshinov, thanks).


2010-11-10  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/templates.c, src/document.c:
   Use LF line endings for templates internally instead of default
   pref because the default can change. This fixes missing line
   endings sometimes when changing default setting.
 * src/document.c:
   Fix not reporting an error message when saving a document fails.
   Check result of fclose().
 * src/filetypesprivate.h, src/filetypes.c, src/editor.c,
   data/filetypes.xml, data/filetypes.html:
   Add xml_indent_tags filetype setting for documents using the
   HTML/XML lexers (patch by Eugene Arshinov, thanks).
 * src/document.c:
   Set errno to 0 before doing disk I/O to prevent confusing error
   messages on save failure.


2010-11-09  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/templates.c, src/filetypes.c:
   Save build commands for filetype None (patch by Lex, thanks).
   Make filetypes_get_conf_extension() return "common" for filetype
   None.
 * src/templates.c:
   Convert line endings for file templates.
   Fix line endings when using file header template in a file template
   (oops).
 * src/utils.c, src/utils.h:
   Make utils_ensure_same_eol_characters() convert all wrong line
   endings to the desired one, not just the most common one.


2010-11-08  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/editor.c:
   Respect 'Smart' home key for Shift+Alt+Home (patch by Dimitar
   Zhekov, thanks).
 * src/interface.c, src/keybindings.c, src/ui_utils.c, geany.glade:
   Restore top-level editor popup item 'Find Document Usage'.
 * src/interface.c, src/ui_utils.c, geany.glade:
   Remove duplicates in 'Insert Comments' editor popup menu; rename
   submenu 'More'.
   Separate main menu insertion comments depending on number of times
   used in a document.
 * data/filetypes.*, data/colorschemes/alt.conf:
   Rename word/word2 named styles to keyword/keyword2.
 * doc/geany.txt, doc/geany.html:
   Mention that indentation settings can be overridden per-project.
 * src/interface.c, src/callbacks.c, src/callbacks.h, src/document.c,
   doc/geany.txt, doc/geany.html, geany.glade:
   Add 'Project->Apply Default Indentation' menu command to override
   every document's indentation settings.
   Improve 'Indentation' section docs.


2010-11-06  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/document.c:
   Fix build with GTK 2.12: explicitly include gio.h if GIO
   is available and to be used regardless of the USE_GIO_FILEMON flag.
 * wscript:
   Fix installation of template files.
   Show which regex implementation is used.
 * src/ui_utils.c:
   Use non-GIO mime-type icon lookup if GIO lookup fails.
 * autogen.sh:
   Allow skipping configure during autogen by setting NOCONFIGURE=1
   (thanks to Chow Loong Jin).


2010-11-07  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/document.c:
   Make use_safe_file_saving hidden pref apply even when GIO is
   available, because g_file_replace_contents() doesn't handle disk
   space exhaustion.
 * src/main.c:
   Show GIO/built-in regex support in startup debug message as well as
   for --version.
 * doc/geany.txt, doc/geany.html:
   Add docs for the HTMLChars plugin (patch by Frank).


2010-11-04  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/filetypes.c:
   Do not translate 'name' field for filetype None because it is used
   for hash table lookup. This fixes missing files in the Open dialog
   for the 'All files' filter with non-English locales (thanks to Sardem
   FF7, fixes #3094771).
 * src/filetypes.c, src/filetypes.h, src/document.c, src/symbols.c,
   src/ui_utils.c:
   Add filetypes_get_display_name() to get translations for filetype
   None.
 * src/document.c:
   Fix resource leak when saving files with GIO (patch by Colomban
   Wendling, thanks).


2010-11-02  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/plugindata.h, src/plugins.c, plugins/geanyfunctions.h:
   Add sci_get_lexer() to plugin API.
 * plugins/htmlchars.c:
   Only automatically replace characters when the current document is
   a Markup document.
 * plugins/htmlchars.c:
   Rename submenu item labels to be more descriptive.
 * src/keybindings.c:
   Fix Alt+[0-9] switching tabs when other modifiers are also held.
 * src/ui_utils.c:
   Don't allow pasting of numbers followed by other characters in the
   Go to Line dialog/field (patch by Dimitar Zhekov, thanks).
 * src/main.c:
   Print "GIO" and "built-in regex" if enabled with --version.
 * src/document.c:
   Use g_file_replace_contents() if available to save documents - this
   should help workaround bugs in GVFS (based on patch by Alexey
   Antipov, thanks).
   Needs testing.
 * src/templates.c:
   Fix wrongly adding newlines for templates on disk that don't have
   LF line endings when default line endings are not LF, e.g. Windows.


2010-11-01  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/utils.c, src/main.c:
   Remove trailing directory separator for app->datadir and
   app->docdir for consistency with the other directory fields.
 * src/filetypes.c:
   Detect user and system filetype configuration files as Conf
   filetype.
 * src/editor.c:
   Respect 'Smart' home key for Shift+Home (fixes #3100290).


2010-11-01  Frank Lanitz  <frank(at)frank(dot)uvena(dot)de>

 * data/filetypes.ada:
   Fix comments for Ada. Thanks to Jonas Baggett for reporting.


2010-10-29  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * Makefile.am:
   Add install-data-only target to only install data/* to speed up
   testing.
 * src/editor.c:
   Fix not autocompleting when breaking lines.
 * data/filetypes.java, data/filetypes.cpp, data/filetypes.vala,
   data/colorschemes/alt.conf, data/filetypes.haxe,
   data/filetypes.common, data/filetypes.glsl,
   data/filetypes.actionscript, data/filetypes.cs,
   data/filetypes.ferite, data/filetypes.c, data/filetypes.javascript,
   data/filetypes.Genie.conf:
   Add named style 'extra', use for C-like filetypes.


2010-10-28  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * data/filetypes.xml:
   Match data-* and aria-* as HTML attributes.
 * data/colorschemes/alt.conf, data/filetypes.common,
   data/filetypes.python:
   Make Python use named styles for color scheme support - use
   alt.conf color scheme if you want the old colors.
   Add named style 'function'.
 * src/plugindata.h:
   Move plugin_set_info prototype and parenthesize arguments for
   PLUGIN_SET_TRANSLATABLE_INFO (based on patch by Colomban Wendling,
   thanks).
   Fix putting pointer symbol before name, not after type.


2010-10-27  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/filetypes.c, src/ui_utils.c:
   Fix notebook tab menu icons using theme for "text/plain" filetypes.
   Make filetype mime_type "text/plain" instead of NULL.


2010-10-26  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/interface.c, doc/geany.txt, doc/geany.html, geany.glade:
   Edit XML tag autocompletion pref and tooltip to include HTML.
 * doc/geany.txt, doc/geany.html:
   Add docs for 'Ensure consistent line endings' pref.
 * src/keyfile.c:
   Change default for 'Override Geany keybindings' to on.
 * src/filetypes.c:
   Sort filetypes_by_title last instead of on insertion to prevent
   exponential time.
 * src/ui_utils.h, src/filetypes.c, src/filetypes.h, src/ui_utils.c:
   Add filetype mimetype field (patch by Colomban Wendling, thanks).
 * src/sidebar.c, src/document.c:
   Show mimetype icon in sidebar Documents list (patch by Colomban
   Wendling, thanks).
 * src/ui_utils.c:
   Add notebook tab document icons (based on patch by Colomban
   Wendling, thanks).
 * src/filetypes.c:
   Leave text/plain mime_type fields as NULL (like custom filetypes).


2010-10-25  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/editor.c, data/snippets.conf:
   Move HTML automatic <table> tag completion into a 'table' snippet
   so the user can decide when to use it (patch by Eugene Arshinov,
   thanks).
 * src/interface.c, src/prefs.c, src/about.c, src/keyfile.c,
   src/document.c, src/document.h, THANKS, geany.glade:
   Add 'Ensure consistent line endings' file saving pref (patch by
   Manuel Bua, thanks).
 * src/utils.c, src/utils.h, src/editor.c:
   Auto-indent after an HTML/XML line with a missing closing tag (patch
   by Eugene Arshinov, thanks).
   Behaviour only applies if XML tag autoclosing is off.
 * src/templates.c, src/build.c, src/document.c, src/editor.c,
   src/symbols.c, plugins/saveactions.c:
   Remove unnecessary uses of FILETYPE_ID() macro with
   GeanyDocument::file_type.
 * data/filetypes.xml:
   Add HTML5 attributes (thanks to Ross McKay).


2010-10-22  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/prefs.c:
   Fix not changing edited keybindings when cancelling the Preferences
   dialog.
 * data/filetypes.xml:
   Add HTML5 element names (thanks to Ross McKay).


2010-10-21  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/utils.c, src/filetypes.c:
   Remove filetype default extensions from code.
 * src/filetypes.c:
   Allow 'Foo=' in filetype_extensions.conf to remove all patterns.
 * src/prefs.c:
   Refactor shared code with kb_cell_edited_cb().


2010-10-20  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/highlighting.c:
   Use radio buttons for View->Editor->Color Schemes menu.
   Don't hide the menu when only the default item is available.
 * data/colorschemes, data/colorschemes/alt.conf, wscript, Makefile.am:
   Add alternative color scheme based on Python colors.
 * scintilla/LexErlang.cxx, scintilla/makefile.win32,
   scintilla/KeyWords.cxx, scintilla/Makefile.am, src/highlighting.c,
   src/about.c, src/filetypes.c, src/filetypes.h, THANKS,
   data/filetype_extensions.conf, data/filetypes.erlang, wscript:
   Add Erlang filetype (patch by Taylor Venable, thanks).
 * src/filetypes.c, data/filetypes.*:
   Move filetype 'extension' default into data files.
 * src/filetypes.c, data/filetypes.vala:
   Move filetype comment_{open,close} defaults into data files.


2010-10-18  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * data/filetypes.c, data/filetypes.d:
   Add missing C99 keyword 'restrict' (#3046716).
   Add missing D1 keywords 'ref' and 'macro'.
   Add D2 keywords.
 * tagmanager/c.c:
   Parse Vala functions with contracts (#3080232).
 * src/project.c:
   Fix saving project indent prefs straight after using project
   properties.
 * src/highlighting.c, src/filetypes.c:
   Prevent debug message about a missing 'default' named style when
   using just a user color scheme file.


2010-10-16  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/search.c:
   Fix off-by-one bug in 'search_mark_all'.


2010-10-15  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * tagmanager/get.c:
   Ignore D /+ +/ comments.
 * tagmanager/c.c:
   Ignore D unittest blocks.
   Parse D template functions with constraints.
 * src/keybindings.c, src/keybindings.h, doc/geany.txt, doc/geany.html:
   Add 'Insert New Line Before/After Current' keybindings (based on
   patch by Eugene Arshinov, thanks).
 * src/document.c:
   Use secondary text for 'file not found on disk' dialog.


2010-10-08  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/stash.c:
   Fix build with GLib 2.8.


2010-10-07  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/ui_utils.h, src/socket.c, src/Makefile.am, src/ui_utils.c,
   configure.ac, doc/geany.txt, doc/geany.html, wscript, TODO:
   Revert X11 workspace socket support as it needs more work; moved
   to workspace-sockets branch.


2010-10-06  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/geanywraplabel.c:
   Fix build with GLib 2.8.
 * src/dialogs.c, src/about.c, THANKS:
   Group Open dialog encoding options by submenus (patch by Adam Ples,
   thanks; #3047717).
 * scintilla/LexLisp.cxx, scintilla/makefile.win32,
   scintilla/KeyWords.cxx, scintilla/Makefile.am, src/highlighting.c,
   src/about.c, src/filetypes.c, src/filetypes.h, THANKS,
   data/filetype_extensions.conf, data/filetypes.lisp, wscript:
   Add Lisp filetype (patch by Mário Silva, thanks).
   Note: Lisp lexer was taken from Scintilla instead.


2010-10-06  Frank Lanitz  <frank(at)frank(dot)uvena(dot)de>

 * po/kk.po, THANKS, src/about.c:
   Added Kazakh translation. Thanks to Baurzhan Muftakhidinov for
   providing.


2010-10-05  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/utils.c, src/utils.h, src/highlighting.c, src/editor.c:
   Don't cache overridden lexer properties.
   Add foreach_strv() to plugin API.
   Add utils_strv_join().
 * tagmanager/basic.c:
   Parse property, constructor, destructor as functions (patch by
   pottersson, thanks; #2992167).


2010-10-01  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/tools.c, doc/geany.txt, doc/geany.html:
   Fix passing quoted arguments when using 'Send Selection to'. This
   means sed 's/\./(dot)/g' now works.
 * src/editor.c:
   Add snippet keybinding support for keys in user snippets.conf (based
   on patch by Eugene Arshinov, thanks). No docs yet.
 * doc/geany.txt, doc/geany.html:
   Add some subheadings for Snippets section.
 * doc/geany.txt, doc/geany.html:
   Add snippet keybindings docs.
 * src/highlighting.c, src/utils.h:
   Move foreach_strv to utils.h.
 * src/editor.c, data/snippets.conf:
   Read snippet keybindings from system keyfile also.
   Add keybinding example to default snippet.conf.


2010-09-30  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/utils.h, src/filetypesprivate.h, src/filetypes.c,
   src/filetypes.h, src/document.c, doc/geany.txt, doc/geany.html,
   data/filetypes.txt2tags, data/filetypes.markdown,
   data/filetypes.restructuredtext:
   Add symbol_list_sort_mode per-filetype setting, set to sort by line
   number by default for Markdown, reStructuredText and Txt2Tags.
   Add utils_get_setting() macro for reading a key from a home or
   system keyfile.
   Move GeanyFiletypePrivate to filetypesprivate.h.
 * src/Makefile.am, src/ui_utils.c, configure.ac, wscript:
   Link with X11 if found to fix linking with a recent GNU ld.
 * src/document.c:
   Avoid delay and redrawing when automatically opening a new document
   after closing one.
 * scintilla/LexForth.cxx, scintilla/makefile.win32,
   scintilla/KeyWords.cxx, scintilla/Makefile.am, src/highlighting.c,
   src/about.c, src/filetypes.c, src/filetypes.h, THANKS,
   data/filetypes.forth, data/filetype_extensions.conf, wscript:
   Add Forth filetype (patch by Thomas Huth, thanks).
 * src/tools.c:
   Remove unnecessary 'fix' from r5224 as it breaks configuring custom
   commands for 'Send Selection to' (oops).


2010-09-25  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/editor.c:
   When commenting/uncommenting with single-line comment characters,
   ignore any end of line characters before evaluating the current line.
 * data/filetypes.python:
   Simplify Python Compile/Syntax Check command.


2010-09-23  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/keyfile.c, src/search.c, src/search.h, doc/geany.txt,
   doc/geany.html:
   Add hidden pref 'find_selection_type' with option to repeat last
   search when there's no selection.
   Change default Find Selection behaviour to not let the X selection
   override the current word (can be confusing).
   Add docs for Find Selection commands.
 * src/document.c:
   Fix segfault on idle callback when quitting.
 * src/interface.c, src/keybindings.c, geany.glade:
   Move 'Edit->Commands->Insert Alternative White Space' to editor popup
   Insert menu.
 * src/interface.c, geany.glade:
   Move editor popup menu Insert Comments submenu to top of Insert menu.
 * src/ui_utils.h, src/document.c, src/ui_utils.c, doc/geany.txt,
   doc/geany.html:
   Add hidden pref new_document_after_close for whether to open a new
   document automatically, off by default.
 * HACKING:
   Add 'Bugs to watch out for' section.


2010-09-22  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/stash.c, doc/Makefile.am, doc/stash-example.c,
   doc/stash-gui-example.c:
   Improve Stash GUI example.


2010-09-21  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/interface.c, geany.glade:
   Move Go to Marker menu items to Search menu.
   Rename popup editor menu item Commands -> Edit.
 * src/callbacks.c, src/search.c, src/search.h:
   Move find_again() to search.c.
 * src/search.c:
   Make Find Selected commands repeat the last search if the selection
   was lost.
 * doc/geany.txt, doc/geany.html:
   Add docs for Find Selection keybindings.
 * src/interface.c, src/keybindings.c, geany.glade:
   Unify Find Selection strings.
 * src/interface.c, src/ui_utils.c, geany.glade:
   Group editor popup Insert commands in a submenu, with extra items
   for the most commonly used Insert Comments commands.
   Show Edit->Commands before Format in menubar Edit menu (to match
   keybindings order).
   Show Open Selected F_ile popup item below submenus.


2010-09-20  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/ui_utils.c:
   Refactor shared submenu code with GeanySharedMenu array.
 * src/interface.c, src/ui_utils.c, geany.glade:
   Add Search submenu for Find Selected, Find Usage, Go to Tag items,
   shared with the editor popup menu.
 * src/document.c:
   Open a new document automatically after closing all documents.


2010-09-16  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/callbacks.c:
   Prompt for reloading if the document has an undo stack to avoid
   losing undo ability on accidental reloading (patch by Colomban
   Wendling, thanks).
 * src/project.c, src/geanyobject.c, src/geanyobject.h,
   doc/pluginsignals.c:
   Add plugin signals project-dialog-create and
   project-dialog-confirmed so plugins can append a Project Properties
   notebook tab (patch by Jiří Techet, thanks).
 * src/ui_utils.h, src/plugindata.h, src/main.c:
   Add main_widgets.project_menu to API (patch by Jiří Techet, thanks).
 * src/plugindata.h, src/msgwindow.c, src/msgwindow.h, src/search.c,
   src/plugins.c, plugins/geanyfunctions.h:
   Add msgwin_set_messages_dir() to API (patch by Jiří Techet, thanks).


2010-09-15  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/keyfile.c:
   Save document indent width with the session.
 * src/ui_utils.h, src/socket.c, src/ui_utils.c, doc/geany.txt,
   doc/geany.html, TODO:
   Use a separate socket per workspace on X (patch by Erik de Castro
   Lopo, thanks).


2010-09-14  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/main.c:
   Ignore directories passed on the command-line (based on patch by
   Erik de Castro Lopo, thanks).
 * tagmanager/c.c:
   Parse D function template names.
 * src/interface.c, src/callbacks.c, src/callbacks.h, src/keyfile.c,
   src/document.c, src/editor.c, src/editor.h, src/ui_utils.c,
   geany.glade:
   Allow per-document indent width setting (patch by Jiří Techet,
   updated by Erik de Castro Lopo - thanks).
 * src/interface.c, src/callbacks.c, src/callbacks.h, geany.glade:
   Combine indent width menu item callbacks.
 * src/interface.c, geany.glade:
   Don't translate indent width menu items as they are now used for
   atoi().


2010-09-13  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/interface.c, src/keybindings.c, src/ui_utils.c, geany.glade:
   Remove 3 popup menu items to save space:
   Find Document Usage because Find Usage can be used instead.
   Go to Tag Declaration because Go to Tag Definition is more common.
   Go to Line because the toolbar item can be used instead.
 * src/tools.c, src/search.c, tagmanager/python.c:
   Fix some 'possible' NULL pointer dereferences (based on patch by
   Erik de Castro Lopo).
 * src/keybindings.c, src/keybindings.h, src/prefs.c:
   Simplify keybindings_check_event().


2010-09-09  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/build.c:
   Use up/down icons for Previous/Next Error.
 * src/interface.c, src/keybindings.c, src/callbacks.c,
   src/callbacks.h, src/ui_utils.c, doc/geany.txt, doc/geany.html,
   geany.glade:
   Add Find Usage and Go to Tag items to Search menu for easier
   discovery.
 * tagmanager/tm_symbol.c:
   Fix possible NULL dereference.
 * HACKING:
   Add link to glade-2.12.2.tar.gz on geany.org.
 * doc/geany.txt, doc/geany.html:
   Mention the filetype wordchars setting can be overridden by the
   whitespace_chars filetypes.common setting.
 * src/highlighting.c, src/encodings.c, tagmanager/tm_file_entry.c:
   Remove NULL checks when calling g_free() (patch by Erik de Castro
   Lopo, thanks).
 * src/document.c:
   Show Save As when saving if the document filename doesn't have an
   absolute path, so command-line new files can be saved without a
   prompt, but file templates still prompt the user.


2010-09-09  Frank Lanitz  <frank(at)frank(dot)uvena(dot)de>

 * src/build.c:
   Fix a memory leak. Based on input by Daniel Marjamäki. Thanks for the
   catch.


2010-09-08  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/ui_utils.h, src/msgwindow.c, src/msgwindow.h, src/main.c:
   Add GeanyMainWidgets::message_window_notebook for plugins to append
   a new notebook page (#3061342).
 * src/document.c:
   Add Close button to the detected file changed dialog.
 * src/interface.c, geany.glade:
   Add separator between Find Previous and Find in Files.
   Add up/down icons for Previous/Next Message.


2010-08-29  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * data/snippets.conf:
   Add dummy entry for "do" snippet for Haskell to explicitly avoid the
   default completion.


2010-08-25  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/build.c:
   Fix broken editing of build menu labels.
 * src/encodings.c, src/filetypes.c, configure.ac:
   Auto-enable building with included regex if no regcomp function is
   found.
   Remove checks for HAVE_REGCOMP in Geany source (not TagManager) -
   regex support is required.
 * tagmanager/make.c:
   Backport fix for possible infinite loop from CTags.
 * scintilla/PlatGTK.cxx:
   Backport list box memory leak fixes from Scintilla 2.20.


2010-08-24  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/project.c:
   Make the Properties dialog filename a label and put it first (patch
   by Jiří Techet, thanks).
 * src/build.c, src/build.h, src/project.c, doc/geany.txt,
   doc/geany.html:
   Remove the "Set build working directories" button from the project
   properties dialog (patch by Jiří Techet, thanks).
 * src/search.c:
   Include all files if the Find in Files pattern field is enabled and
   empty.
 * src/filetypes.c:
   Rename Matlab -> Matlab/Octave. Datafile name remains the same.


2010-08-23  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * scintilla/LexTxt2tags.cxx, scintilla/makefile.win32,
   scintilla/include/SciLexer.h, scintilla/include/Scintilla.iface,
   scintilla/KeyWords.cxx, scintilla/Makefile.am, src/highlighting.c,
   data/filetypes.txt2tags, wscript:
   Add lexer for Txt2Tags (patch by Forgeot Eric, thanks - #3020632).
 * m4, configure.ac, Makefile.am:
   Use AC_CONFIG_MACRO_DIR (patch by Erik de Castro Lopo, thanks).
 * src/callbacks.c:
   Only prompt for reloading if the document has unsaved changes
   (patch by Jiří Techet, thanks).


2010-08-21  Frank Lanitz  <frank@frank.uvena.de>

 * src/plugindata.h:
   Apply a patch by Jiří Techet which is preventing warnings when using
   -Wmissing-prototypes on compiling. Thanks.


2010-08-20  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * scintilla/KeyWords.cxx:
   Link Octave instead of Matlab.
   Add comment about not being autogenerated.
   Minor changes to fit Scintilla order.
 * src/build.c, src/build.h:
   Replace GeanyBuildCommand::entries array with separate fields.
   Similar to r5077 in the bs2 branch, but with less loop unrolling.
 * src/build.c:
   Remove buildcmd_* accessor functions.


2010-08-17  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/highlighting.c, src/editor.c:
   Use Octave lexer instead of Matlab to support Octave # comment char.


2010-08-16  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/filetypes.c:
   Fix segfault on Tools->Reload Configuration when no documents are
   open (#3037079).
 * scintilla/LexMarkdown.cxx:
   Fix infinite loop in Markdown lexer (patch by Colomban Wendling,
   thanks).
 * src/build.c:
   Fix saving non-project filetype error regex.
 * src/build.c:
   Fix memory leak in read_regex().


2010-08-15  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * wscript:
   Check for libsocket on OpenSolaris to fix build.
 * src/encodings.c:
   Rewrite the logic to auto detect encodings a bit to make it more
   readable and fix a slightly wrong detection on Windows
   (closes #3019573).
 * plugins/geanyfunctions.h, src/editor.c, src/plugindata.h,
   src/plugins.c:
   Add editor_goto_pos() to the plugin API.


2010-08-13  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * configure.ac:
   Check for git-svn repo, not just git because find-rev doesn't
   always fail with a git-only repo.


2010-08-12  Frank Lanitz  <frank(at)frank(dot)uvena(dot)de>

 * src/search.c:
   Fix a memory leak based on input by Daniel Marjamäki. Thanks.


2010-08-11  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * doc/geany.txt, doc/geany.html:
   Reorder Focus keybindings.


2010-08-10  Frank Lanitz  <frank(at)frank(dot)uvena(dot)de>

 * autogen.sh:
   Applying a patch by Erik de Castro Lopo for checking against
   pkg-config when running autogen.sh. Thanks for the patch.
 * src/log.c:
   Applying a patch by Colomban Wendling to print out log domains.
   Thanks.


2010-08-10  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/keybindings.c, src/keybindings.h, src/prefs.c, src/plugindata.h:
   Use single binding_ids keybinding array instead of individual
   arrays for core keybindings. This allows the keybinding IDs to be
   merged into one enum; the order of keybindings is now just the
   order they are added to each group. Keybindings can be reordered
   without breaking the plugin ABI but groups must stay the same.
 * src/stash.c:
   Fix writing the default value when a key is missing for hidden
   prefs, even if it was overridden when it was originally read.
 * src/keyfile.c, src/ui_utils.c, doc/geany.txt, doc/geany.html:
   Move some interface hidden prefs to ui_utils.c.
 * src/editor.c:
   Revert r4840 scope completion mode as it sometimes breaks
   autocompletion.
 * src/keybindings.h, src/plugindata.h:
   Randomly sort keybinding IDs to show there should be no order.
 * src/keybindings.c:
   Reorder Focus keybindings.


2010-08-05  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/ui_utils.c, src/ui_utils.h:
   Make ui_label_new_bold() a function.
   Escape the name of the current document for markup when using
   document name for menu items (closes #3038844).
 * src/vte.c:
   Inherit 'beep on errors' preference for the audible bell preference
   for the VTE (closes #3038215).


2010-08-01  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/utils.c, src/utils.h:
   Add utils_get_eol_char().
 * plugins/geanyfunctions.h, src/document.c, src/editor.c, src/editor.h,
   src/plugindata.h, src/plugins.c, src/templates.c, src/utils.c,
   src/utils.h:
   Ensure inserted templates always have proper line ending characters
   according to the current document's preference.
   This is also fixes problems with templates on Windows which had
   always Unix line ending characters but now since they are read
   from files, these have Windows line ending characters and had been
   converted twice.


2010-07-31  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/vte.c:
   Fix build with GTK 2.8, use the stock icon name directly instead
   of the macro. Though, the icon is still missing for GTK 2.8.
 * src/templates.c:
   Make make_comment_block() work with a GString. This is not yet
   perfect but a bit better than before.


2010-07-29  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/keybindings.c, src/vte.c, src/vte.h:
   Implement 'Select All' for the VTE widget.


2010-07-25  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * geany.nsi:
   Fix missing template files in the Windows installer.


2010-07-18  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * data/filetypes.python:
   Update list of Python builtins, based on Python 2.6.


2010-07-13  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/filetypes.c:
   On Windows, convert filetype extensions read from config files
   to lower case (closes #3028856).


2010-07-12  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/keybindings.c:
   Focus toolbar item when pressing Go to Line keybinding only when
   it's not in the toolbar's drop down overflow menu (fixes #3027454).


2010-07-11  Lex Trotman  <elextr(at)gmail(dot)com>

 * src/build.c:
   Fix build menu translation problems.


2010-07-10  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * wscript:
   Fix './waf install'.


2010-07-09  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/editor.c:
   Fix scrolling the editor line in view after loading a session and
   switching document tabs. Note this causes repainting so needs
   improvement.
 * doc/geany.txt, doc/geany.html:
   Add note to restart Geany after installing/updating before editing
   hidden prefs.
 * src/ui_utils.h, src/main.c, src/ui_utils.c:
   Use Stash to save statusbar_template setting, instead of the
   load/save-settings signal.
   Add ui_init_prefs().


2010-07-08  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/ui_utils.c, doc/geany.txt, doc/geany.html:
   Fix writing empty hidden pref "statusbar_template" key so users can
   find it (patch by Dimitar Zhekov, thanks).
 * src/ui_utils.c, src/ui_utils.h, src/main.c:
   Add ui_finalize(), free string (patch by Dimitar Zhekov, thanks).


2010-07-07  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/build.c, src/project.c, src/project.h:
   Show the Project Properties build tab when choosing 'Set Build
   Commands' for now to prevent confusion with non-project commands.


2010-07-06  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/search.c, doc/geany.txt, doc/geany.html:
   Fix Grep --exclude-dir example.


2010-07-05  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/sidebar.c:
   Add sidebar Documents popup menu item 'Find in Files'.
 * src/keyfile.c, src/main.c, src/editor.c:
   Don't unnecessarily test G_FILE_TEST_IS_SYMLINK when testing
   G_FILE_TEST_IS_REGULAR (patch by Dimitar Zhekov, thanks).


2010-07-02  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * doc/geany.txt, doc/geany.html:
   Fix wording - restarting is required for hidden prefs.
   File templates don't need manual reloading anymore.
 * src/ui_utils.c:
   Fix only adding project base path to Find in Files history if it
   isn't already there (oops).
 * src/msgwindow.c:
   Parse lines in the Messages window even if Find in Files hasn't
   been used yet (patch by Jiří Techet, thanks).


2010-07-01  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * scintilla/LexCPP.cxx, src/highlighting.c:
   Add C++ lexer property fold.cpp.comment.explicit (patch sent); set
   it disabled.
 * src/utils.h, src/highlighting.c, doc/geany.txt, doc/geany.html,
   data/filetypes.common:
   Add filetypes.common fold_symbol_highlight color setting.
   Add API macro foreach_range().
 * src/printing.c, doc/geany.txt, doc/geany.html:
   Always use white background color when printing (except for text
   with a white foreground) to save ink (should fix #2968998).
 * src/build.c, src/build.h, doc/geany.txt, doc/geany.html:
   Limit build error editor indicators to 50, but parse all errors in
   the Compiler tab (fixes #3019823).


2010-06-30  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/highlighting.c:
   Re-enable fold.comment for lexers - it was disabled to prevent C
   //{ explicit folding, but that also disables stream comment folding
   /* */.
 * tagmanager/tm_workspace.c, tagmanager/get.c:
   Use g_free instead of free (patch by Daniel Marjamäki, thanks).
 * src/editor.c:
   Use SCI_SETFIRSTVISIBLELINE for editor_scroll_to_line(). Note this
   doesn't affect the bug with document switching not scrolling cursor
   in view after loading a session.


2010-06-29  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/ui_utils.c, THANKS, doc/geany.txt, doc/geany.html:
   Add statusbar_template hidden pref (based on patch by Dimitar
   Zhekov, thanks).
 * src/ui_utils.c, doc/geany.txt, doc/geany.html:
   Add spaces after RO when using %r in statusbar_template setting.
   Add space between encoding and BOM.
   Note \t means tab for default text.


2010-06-28  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/search.c:
   Restore tabbing past Find in Files combo box drop down menus.


2010-06-25  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/sciwrappers.c, src/plugindata.h, src/pluginutils.c, src/main.c,
   doc/pluginsignals.c, doc/pluginsymbols.c, doc/Makefile.am,
   doc/plugins.dox:
   Move plugin signals docs to pluginsignals.c, using function
   pointer syntax instead of @signaldef as this puts a summary of
   the signal names at the top of the page and sorts alphabetically.
   (Note: the syntax is similar to Vala signal syntax).


2010-06-24  Lex Trotman  <elextr(at)gmail(dot)com>

 * src/build.c
   Make default dialog entries use GTK_STATE_INSENSITIVE color not
   a fixed color (Suggestion by Ditmar Zhekov)


2010-06-23  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/search.c, doc/geany.txt, doc/geany.html:
   Implement Find in Files file pattern search.
 * src/search.c:
   Add file pattern to combo box history.
 * src/dialogs.c, src/vte.c, src/search.c, src/ui_utils.c,
   plugins/export.c:
   Use ui_hookup_widget() instead of g_object_set_data_full() for
   widgets.


2010-06-22  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/search.c:
   Add Files checkbox and combo to Find in Files dialog, currently
   does nothing & is disabled.
   Don't try to focus the next entry on pressing tab anymore as this
   is more complicated now.


2010-06-21  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/search.c:
   Put Find in Files Search field above Directory field.
 * src/search.c, doc/geany.txt:
   Simplify FIF 'Fixed strings, Grep regular expressions, Extended
   regular expressions' radio buttons with a 'Use regular expressions'
   checkbox. This uses the extended syntax (which is the same as the
   Find/Replace regex syntax).
 * src/search.c:
   Move 2 Find in Files checkboxes for even spacing.


2010-06-20  Frank Lanitz  <frank(at)frank(dot)uvena(dot)de>

 * tagmanager/tm_work_object.c:
   Change of description of tm_get_real_path(). Patch by Dimitar Zhekov.
   Thanks.


2010-06-18  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/ui_utils.h, src/dialogs.c, src/plugindata.h, src/search.c,
   src/plugins.c, src/ui_utils.c, plugins/geanyfunctions.h:
   Add ui_combo_box_add_to_history() to API.
 * plugins/filebrowser.c:
   Add history to path entry.
 * src/plugindata.h, src/plugins.c, doc/plugins.dox:
   Fix not loading plugins built against a newer API when Geany doesn't
   provide the required version given in PLUGIN_VERSION_CHECK().
   Improve documentation for PLUGIN_VERSION_CHECK().
 * plugins/filebrowser.c:
   Allow Find in Files when no items are selected.
 * src/build.c, src/geanyobject.c, src/geanyobject.h, doc/plugins.dox:
   Add API signal "build-start" (patch by Jiří Techet, thanks).


2010-06-17  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/sidebar.c:
   Replace /home/user with ~ in the documents list (patch by Jon
   Strait, thanks).
 * src/build.c:
   Make default Build dialog entries grey, not light grey (too hard to
   read on a white background).
 * src/ui_utils.c:
   Display 'new instance' on title bar (patch by Eugene Arshinov,
   thanks).
 * src/ui_utils.c:
   Remove any duplicate on adding to combo box histories.


2010-06-16  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/notebook.c:
   Align notebook tab close buttons centred vertically - thanks to
   Robux.Biz (galyuk).
 * Merge unstable branch:
 - src/build.c:
   Make build config entries light grey until set.
 - src/keybindings.c, src/about.c, THANKS:
   Fix the wrong file being put on top of the stack when switching tabs
   too quickly (patch from Jiří Techet, thanks).
 - src/templates.c, data/templates/gpl, data/templates/function,
   data/templates/changelog, data/templates/bsd,
   data/templates/fileheader, wscript, Makefile.am:
   Move general templates from source code into files.
   Load general templates from system path instead of creating them in
   the user's config dir.


2010-06-12  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * po/POTFILES.skip:
   Add doc/stash-example.c to fix 'make distcheck'.
 * geany.nsi:
   Change the RequestExecutionLevel for the Windows installer to
   'highest'.
 * New release: Geany 0.19 "Vellam".
 * configure.ac, doc/geany.html, doc/geany.txt, geany.nsi,
   geany_private.rc, win32-config.h, wscript, src/geany.h:
   Post-release version bump.


2010-06-10  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/editor.c:
   Group undo action for Insert Multiline Comment.


2010-06-08  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * Makefile.am:
   Don't individually install data/*.tags as all data/* files will be
   installed anyway.


2010-06-07  Frank Lanitz  <frank@frank.uvena.de>

 * tagmanager/tm_project.c:
   Fix a double free. (patch by Daniel Marjamaki, thanks).


2010-06-06  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * tagmanager/tm_workspace.c:
   Fix two memory leaks (patch by Daniel Marjamaki, thanks).
 * src/sidebar.c:
   Fix reducing paths to project name in the Documents list
   (patch by Eugene Arshinov, thanks).
 * src/symbols.c:
   Fix crash when trying to sort NULL pointers as tags in the Symbols
   list (closes #3011986).
 * NEWS, scintilla/*, scintilla/include/*, src/plugindata.h:
   Update Scintilla to version 2.12.
 * wscript, scintilla/Makefile.am, scintilla/makefile.win32,
   scintilla/LexCrontab.cxx:
   Remove unused Crontab lexer.
 * data/filetypes.css, src/highlighting.c:
   Add new style "media" for filetype CSS.


2010-06-04  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * doc/geany.txt, doc/geany.html:
   Build section: minor rewording, formatting fixes; move some
   sentences.


2010-06-03  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/build.c:
   Explicitly try to localise build menu item labels with
   gettext to enforce getting default labels translated.
 * tagmanager/tm_workspace.c:
   Fix not closed FILE pointer on early exit
   (patch by Daniel Marjamaki, thanks).
 * doc/images/*.png:
   Update images for Geany 0.19.
 * src/sidebar.c:
   Destroy the default symbol list treeview only once
   (fixes gtk_widget_destroy warning on exit).


2010-05-30  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * tagmanager/sort.c:
   Replace free() by g_free() (patch by Daniel Marjamaki, thanks).
 * tagmanager/c.c:
   Fix parsing of C++ classes contain attributes with bitfields
   (patch by Lex Trotman, thanks).
 * src/plugindata.h, src/plugins.c:
   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, thanks).


2010-05-29  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/main.c:
   Print locale information in debug output.
 * src/build.c:
   Fix some labels which were marked as translatable but were not
   handled properly by gettext().
   Add a missing const.
 * src/msgwindow.c:
   Try to convert text into UTF-8 before adding it to the Compiler and
   Messages Window (closes #3007919).


2010-05-25  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * plugins/Makefile.am, src/Makefile.am, tagmanager/Makefile.am,
   wscript:
   Pass G_LOG_DOMAIN to source files for better logging.


2010-05-24  Frank Lanitz  <frank@frank.uvena.de>

 * THANKS, src/about.c:
   Update of translation credits to reflect a change on Spanish
   translation team better.


2010-05-23  Lex Trotman  <elextr.at.gmail.dot.com>

 * src/build.c:
   Fix infinite loop reading build command output


2010-05-23  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/msgwindow.c:
   Fix duplicate accelerators for Clear and Copy in the
   Messages Window popup menu.
 * src/pluginutils.c:
   Expand child widgets in the Plugin Preferences dialog
   (patch by Colomban Wendling, thanks).


2010-05-22  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/ui_utils.c:
   Fix Undo/Redo button state after the last document has been closed.
   Add Print and Replace toolbar items to the list of document
   sensitive widgets.
 * src/toolbar.c:
   Fix crash when the toolbar is reloaded without any open documents.
 * src/build.c:
   Fix Run toolbar item sensitivity after the last document has been
   closed.
 * plugins/classbuilder.c:
   Remove two unnecessary g_strdups().
 * doc/geany.html, doc/geany.txt, src/keyfile.c, src/msgwindow.c,
   src/plugindata.h, src/ui_utils.h:
   Add hidden preference to disable automatic scrolling in the
   Compiler tab (closes #3004714).


2010-05-19  Frank Lanitz  <frank(at)frank(dot)uvena(dot)de>

 * plugins/classbuilder.c:
   Fix a memory leak. (patch by Daniel Marjamaki, thanks)


2010-05-16  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/prefs.c, src/project.c:
   win32.h can be included unconditionally.
 * src/sidebar.c:
   Fix project base_path detection if the path has a trailing slash.
 * src/document.c, src/editor.c, src/project.c:
   Small improvements to speed up quit process with many open documents.
   Avoid calling gtk_notebook_remove_page() on exit as it takes
   a lot of time.
 * src/geanymenubuttonaction.c:
   Explicitly check for the type when iterating the action's proxies.
   For some reason on Windows, a GtkImageMenuItem proxy is created.
 * geany.pc.in, wscript, plugins/Makefile.am, src/Makefile.am,
   src/plugindata.h, scintilla/*, scintilla/include/*:
   Update Scintilla to version 2.11.
 * plugins/Makefile.am, plugins/makefile.win32, src/Makefile.am,
   src/makefile.win32:
   Add new GTK define also for Mingw cross compilation and
   makefile.win32 based Windows builds.
 * plugins/filebrowser.c:
   Implement reading and evaluating hidden file attribute on Windows.
   Fix broken "Go Up" if the current path ends with a slash.
 * THANKS, src/about.c, src/prefix.c:
   Replace free() by g_free() (patch by Daniel Marjamaki, thanks).
 * geany.glade, src/document.h, src/interface.c, src/keyfile.c,
   src/main.c, src/notebook.c, src/prefs.c:
   Add preference to add new document tabs beside the current one
   (patch by Colomban Wendling, thanks).
 * geany.glade, src/dialogs.c, src/geany.h, src/interface.c,
   src/keyfile.c, src/prefs.c, src/ui_utils.h:
   Add a preference for choosing between GTK and native
   File Open/Save dialogs (only available on Windows).
 * doc/geany.html, doc/geany.txt:
   Update documentation.


2010-05-15  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/win32.c:
   Sort file filters for the native Windows file open dialog by name.
   Don't use file filters for the native Windows Save As dialog.
 * src/dialogs.c, src/win32.c, src/win32.h:
   Remove old code.
   Pass and use also parent and title arguments to
   win32_show_document_open_dialog().
 * src/dialogs.c:
   Call handle_save_as() only when the Save As dialog was not cancelled.
 * src/toolbar.c:
   Improve adding/removing of the special separator between menubar and
   toolbar when the toolbar is appended to the menubar.
 * src/toolbar.c, src/templates.c:
   Explicitly disconnect menus from GeanyMenuButtonAction on quit to
   not trigger updating the menus on each item removal.


2010-05-15  Frank Lanitz  <frank(at)frank(dot)uvena(dot)de>

 * src/support.h:
   Replace one non breaking space by normal space. Patch by
   Daniel Marjamaki.


2010-05-14  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * plugins/classbuilder.c:
   Don't make the 'Create Class' menu item document-sensitive
   (patch by Colomban Wendling, thanks).
   Add namespace support for GTK+ classes.
   Add GET_CLASS() macro for GTK+ classes.
   Add typedef of the private structure in the header file instead
   of declaring it
   (all the above from a patch by Colomban Wendling, thanks).
 * src/highlighting.c:
   Set common default "fold.comment" to 0 to disable it. This can
   be overridden if desired.
 * src/sidebar.c:
   Improve sorting of document list items
   (patch by Colomban Wendling, thanks).
 * src/main.c:
   Remove unnecessary textdomain() call.


2010-05-11  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/search.c:
   Fix search_find_text not returning -1 when match is out of range.
   This fixes invalid memory reads and wrong template filename
   wildcard replacement.
 * src/search.c, src/document.c:
   Only replace template filename matching start of word on saving.
 * plugins/filebrowser.c:
   Add 'Refresh' popup menu item (part of geany-plugins #2999858).
 * src/build.c, src/build.h, src/project.c:
   Make some ugly build.h global variables static.
 * src/build.c, src/build.h, src/project.c:
   Add Build prefix for TableFields, TableData.


2010-05-10  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/dialogs.c:
   Fix Cancel on Goto Line dialog (patch by Dimitar Zhekov, thanks).
 * src/dialogs.c, src/win32.c, src/win32.h:
   (Re-)Implement a (still basic) native Windows Save As dialog when
   compiled with GEANY_USE_WIN32_DIALOG.


2010-05-09  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * THANKS, src/about.c, plugins/classbuilder.c:
   Add support for creating PHP classes (patch by Ondrej Donek, thanks).
 * src/ui_utils.h, src/ui_utils.c:
   Add public, generic callback ui_editable_insert_text_callback()
   to restrict GtkEntry text inputs to +/- and numeric values only.
 * src/dialogs.h, src/dialogs.c:
   Add special variant dialogs_show_input_goto_line() to use a normal
   GtkEntry together with dialogs_show_input_goto_line() for text input.
 * src/geanyentryaction.c, src/callbacks.c, src/editor.c, src/editor.h:
   Allow '+<number' and '-<number>' as values for Goto Line inputs
   to jump relative to the current line (closes #2997238).


2010-05-08  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/highlighting.c:
   Apply foreground and background colours of the folding margin
   style properly (closes #2998347).
 * src/utils.c:
   Don't auto-close short XML tags (closes #2994852).
 * THANKS, src/about.c, src/keybindings.c:
   Improve jumping to matching braces by consistently position the
   cursor before or after the matching brace dependent where it
   was before (patch by Dimitar Zhekov, thanks).
 * src/main.c:
   Fix crash when generating global tags files (patch by Colomban
   Wendling, thanks).


2010-05-07  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/templates.c:
   Avoid connecting signals more than once.


2010-05-06  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * wscript:
   Don't ignore the 'intltool' check on non-Windows systems, instead
   raise a configure error.


2010-05-06  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/build.c:
   Fix marking some strings as translatable (cannot be done in the
   ASSIGNIF macro).
 * src/templates.c, doc/geany.txt, doc/geany.html:
   Reload templates if saving a document in the templates config dir.


2010-05-05  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/search.c, src/search.h, src/document.c, doc/geany.txt,
   doc/geany.html:
   Fix replacing {filename} template wildcard for custom file
   templates with non-default file extension.
   Add search_find_text() for POSIX regex searches.
 * src/templates.c, doc/geany.txt, doc/geany.html:
   Add {project}, {description} template wildcards (#2954737).
 * doc/geany.txt, doc/geany.html:
   Divide template wildcards into groups.
 * src/plugindata.h, src/plugins.c, src/symbols.c,
   plugins/geanyfunctions.h:
   Add symbols_get_context_separator() to plugin API (patch by Colomban
   Wendling, thanks).


2010-05-03  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/keybindings.c:
   Fix setting wrong accelerator for 2 Edit->Commands items (patch by
   Anonymous, thanks; #2995593).
 * src/sciwrappers.c, src/plugindata.h, src/plugins.c,
   plugins/geanyfunctions.h:
   Add sci_set_line_indentation(), sci_get_line_indentation() to API
   (patch by Colomban Wendling, thanks).


2010-04-30  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/editor.c:
   Warn user if hidden hard tab width setting is not 8.


2010-04-28  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/interface.c, src/project.c, src/keyfile.c, geany.glade,
   doc/geany.txt, doc/geany.html:
   Hide 'Tabs and Spaces: Hard tab width' preference - it should
   always be 8. (Hidden setting kept in case users have modified it).


2010-04-28  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * doc/geany.txt, doc/geany.html:
   Add Folding section link to filetypes.common custom settings.


2010-04-27  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/callbacks.c:
   When switching documents, don't call document_set_text_changed()
   as this does much more than necessary. Instead call the necessary
   UI update functions explicitly.


2010-04-27  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * tagmanager/vstring.c:
   Fix invalid memory read (patch by Colomban Wendling, thanks).


2010-04-25  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/build.c, src/dialogs.c, src/msgwindow.c, src/ui_utils.c:
   Replace g_vsnprintf() by g_strdup_vprintf() to avoid truncated
   strings in case of reaching the buffer size limit (part of #2979697).
 * src/win32.c:
   Change the limit for the command line length when executing commands
   to a maximum of 32768 characters (closes #2979697).
   Fix broken opening URLs e.g. when using the 'builtin' Run command.
 * tagmanager/ctags.c:
   Change eFree() to simply ignore NULL pointers instead of asserting.
 * src/main.c:
   Remove malloc() fallback since we completely rely on g_malloc()
   nowadays.
 * plugins/export.c, plugins/filebrowser.c, plugins/htmlchars.c,
   plugins/saveactions.c:
   Make string arguments const where appropriate (patch by
   Colomban Wendling, thanks).
 * src/build.c, src/build.h, src/callbacks.c, src/editor.c,
   src/encodings.c, src/encodings.h, src/gb.c, src/geanyentryaction.c,
   src/geanymenubuttonaction.c, src/geanyobject.c, src/geanywraplabel.c,
   src/keyfile.c, src/project.c, src/sidebar.c, src/socket.c,
   src/symbols.c, src/templates.c, src/ui_utils.c:
   Make string arguments const where appropriate (patch by
   Colomban Wendling, thanks).


2010-04-22  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/plugindata.h, src/pluginutils.c, src/pluginutils.h, THANKS:
   Make plugin_signal_connect() string argument const (patch by
   Colomban Wendling, thanks).
 * src/keybindings.c, src/keybindings.h, src/plugindata.h:
   Constify some more string pointers in the API (patch by
   Colomban Wendling, thanks).
 * src/templates.c, src/templates.h, src/editor.c, doc/geany.txt,
   doc/geany.html:
   Support {pc} wildcard in snippets to escape percent char.
 * src/editor.c:
   Recalculate line margin width when zooming (fixes #2990553).
 * src/highlighting.c, doc/geany.txt, doc/geany.html,
   data/filetypes.common:
   Support more folding icon styles: arrows, +/- and no lines
   (#2935059).


2010-04-21  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/socket.c:
   Fix Windows build by properly guarding Unix-only code.


2010-04-21  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/templates.c, doc/geany.txt, doc/geany.html:
   Support {ob} and {cb} in fileheader and file templates; they are
   replaced last with { and }. This allows 'escaping' of wildcard
   strings.
 * src/editor.c, plugins/classbuilder.c:
   Fix Class Builder plugin to use correct indentation instead of
   always tabs.
   Make editor_insert_text_block() only replace leading tabs for the
   'Tabs' indent type; also group edits for undo.
 * src/templates.c, src/templates.h, src/editor.c, doc/geany.txt,
   doc/geany.html:
   Support {ob} and {cb} wildcards for snippets too (fixes #2937008).


2010-04-19  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * tagmanager/pascal.c:
   More fixes to prevent possible crashes by trying to free NULL
   pointers.
 * src/sidebar.c:
   Automatically show and hide the sidebar notebook tabs according
   to the amount of visible pages (patch by Adrian Dimitrov, thanks).
 * src/editor.c:
   Add a static global variable to monitor autocompletion mode in order
   to prevent cancellation of the struct/class (C/C++) auto completion
   list (patch by Thomas Martitz, thanks).
 * src/socket.c:
   When starting and trying to access the Unix Domain socket of a
   potentially running instance, first compare file ownership with the
   user id of the running process to prevent accessing a wrong socket
   file (part of #2985463, this might not yet be the final solution).


2010-04-19  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * plugins/filebrowser.c:
   Synchronize popup menu and plugin preferences dialog 'Show Hidden
   Files' option (fixes #2989288).


2010-04-18  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * tagmanager/entry.c, tagmanager/entry.h,
   tagmanager/include/tm_source_file.h, tagmanager/parse.c,
   tagmanager/parse.h, tagmanager/tm_source_file.c:
   Add tm_source_file_set_tag_arglist() to manually set the argument
   list of a tag.
 * tagmanager/python.c:
   Use tm_source_file_set_tag_arglist() to set the argument list
   field of Python class tags to the argument list of their
   __init__() methods.
   Backport a fix from CTags SVN to prevent possible crashes by trying
   to free NULL pointers.


2010-04-17  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * tagmanager/txt2tags.c:
   Remove duplicate code from Txt2Tags parser.
   Remove the title control characters ('=') when parsing titles.
   Also parse numbered titles (closes #2984703).
 * doc/geany.html, doc/geany.txt, src/keybindings.c, src/keybindings.h,
   src/plugindata.h:
   Add 'Remove Markers' and 'Remove Error Indicators' keybindings.
   Add missing documentation for 'Reset Zoom' keybinding.
 * tagmanager/php.c:
   Another attempt to fix the PHP parser regexp for parsing functions.
   Fix wrong parsing of function arguments when those contain nested
   brackets (as reported by Harold Aling).
 * src/notebook.c:
   Fix Ctrl-Click on notebook tab if Numpad is active.


2010-04-11  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * geany.glade, doc/geany.txt, plugins/geanyfunctions.h,
   src/callbacks.c, src/interface.c, src/keyfile.c, src/plugindata.h,
   src/plugins.c, src/prefs.c, src/toolbar.c, src/toolbar.h,
   src/ui_utils.c, src/ui_utils.h:
   Add option 'System Default' for toolbar icon style and size to
   use the GTK default value.
 * geany.glade, src/callbacks.c, src/callbacks.h, src/interface.c,
   src/toolbar.c, src/toolbar.h:
   Shorten the toolbar popup menu, only provide items for Toolbar
   Preferences and to Hide the toolbar.
 * src/toolbar.c:
   Instantly update the toolbar icon size and style when the
   corresponding global GTK settings are changed.
 * doc/geany.1.in, doc/geany.txt, src/main.c, src/main.h,
   src/plugindata.h, src/socket.c:
   Add new command line option --list-documents to return a list
   of currently opened documents (closes #2979933).


2010-04-09  Frank Lanitz  <frank(at)frank(dot)uvena(dot)de>

 * plugins/htmlchars.c:
   Make plugin remember whether replacement of special characters was
   activated even after restart of Geany or reloading of plugin.


2010-04-09  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/editor.c:
   Fix inserting snippets with an indent when using Mac CR line
   endings.
 * src/callbacks.c:
   Update status bar after using Document->Set Line Endings.
 * src/editor.c:
   Improve API docs for editor_insert_text_block().


2010-04-08  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/editor.c:
   Refactor snippets_complete_constructs().
   Remove an unnecessary TODO.
 * src/editor.c:
   Fix indenting a snippet when there is whitespace after the
   snippet key name.


2010-04-07  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * doc/geany.txt, doc/geany.html:
   Improve wording.
 * src/build.c, src/msgwindow.c:
   Fix disabled compiler message tracking if using indicators to
   show build errors is disabled (closes #2982834).


2010-04-07  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * scintilla/Editor.cxx:
   Backport fix from Scintilla CVS to fix using SCI_GETSELECTIONSTART
   and SCI_GETSELECTIONEND with rectangular selections. This fixes
   replacing in a rectangular selection.


2010-04-06  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/filetypes.c:
   Re-detect any document filetypes set to None after reloading
   filetype extensions (closes #2979661).
 * src/editor.c:
   Fix showing '...' item last instead of first for document word
   completion.


2010-04-05  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * data/filetypes.perl:
   Adjust Perl Compile command to use the -c command
   line option to perform a syntax check instead of using the
   deprecated ByteCompile module.
   Add error_regex to parse error messages and warnings when performing
   syntax checks on Perl files.


2010-04-05  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/keybindings.c, src/keybindings.h, doc/plugins.dox:
   Add API docs for keybinding enums.
 * src/notebook.c, doc/geany.txt, doc/geany.html:
   Make Ctrl-click on any notebook tab switch to the last used
   document.


2010-04-01  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/geanymenubuttonaction.c, src/geanymenubuttonaction.h,
   src/geanyentryaction.c, src/geanyentryaction.h,
   src/geanywraplabel.c:
   Cache G_TYPE_INSTANCE_GET_PRIVATE() result when initializing an
   object for efficiency.


2010-03-31  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * plugins/classbuilder.c:
   Beep if the user hasn't entered a class name on pressing OK.
 * src/search.c:
   Fix replacing '^' regex.
 * src/plugindata.h, src/stash.c, src/stash.h, src/plugins.c,
   plugins/geanyfunctions.h:
   Add Stash widget functions to API.
 * configure.ac:
   Revert commit to use AC_PATH_PROG instead of 'which' (fixes
   #2973764).


2010-03-30  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * THANKS, src/vte.c:
   Apply patch from Yoann Le Montagner to set VTE bold color (thanks,
   fixes #2976905).
 * wscript, src/plugindata.h, src/stash.c, src/stash.h, src/plugins.c,
   src/Makefile.am, doc/plugins.dox, doc/stash-example.c,
   plugins/geanyfunctions.h, plugins/geanyplugin.h:
   Add Stash setting functions to API.
   Remove unnecessary argument to stash_group_load_from_file().
 * src/geanyobject.c, plugins/classbuilder.c:
   Don't generate FOO_GET_PRIVATE() macro because caching the result
   in Foo::priv can be much more efficient.


2010-03-25  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/editor.c:
   Fix cursor positioning when toggling comments
   (patch by Thomas Martitz, thanks).


2010-03-25  Peter Scholtens  <peter(dot)scholtens(at)xs4all(dot)nl>

 * src/keybindings.[hc]:
   Added Control+0 for zoom reset, see suggestion from #2969886.


2010-03-25  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/search.c, src/document.c:
   Fix wrong selection range after Replace in Selection.


2010-03-20  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/win32.c:
   Make CreateChildProcess() working with Unicode strings, e.g.
   directory names (closes #2972606).
 * geany.nsi:
   Remove reference to already removed latex.tags file.
   Future releases probably still depend on GTK 2.16.
 * scintilla/ScintillaGTK.cxx:
   Backport fix from Scintilla CVS to not paste text beyond the end
   of lines (closes #2969096).
 * plugins/htmlchars.c, src/geany.h, src/keybindings.c, src/main.c,
   src/plugindata.h:
   Deprecate GEANY_WINDOW_MINIMAL_WIDTH/GEANY_WINDOW_MINIMAL_HEIGHT
   to not set Geany's minimum window size anymore (closes #2972992).
   As replacement, add GEANY_DEFAULT_DIALOG_HEIGHT.


2010-03-19  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/stash.c:
   Make adding string and string vector settings initialise the setting
   to NULL for safety.
 * src/utils.c, src/stash.c, src/stash.h, doc/stash-example.c:
   Add stash_group_load_from_file() and stash_group_save_to_file().


2010-03-18  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * data/filetypes.common:
   Set default for wrapped lines to show marker at end of line only
   (more expected and doesn't change line alignment - closes #2972386).
 * src/toolbar.c, src/toolbar.h, src/prefs.c, src/prefs.h,
   src/pluginutils.c, doc/plugins.dox:
   Improve API docs contents page by listing all commonly-used files.
   Fix 'Date' appearing twice on the date line.
   Don't generate API docs for prefs.h, toolbar.h (unused).
   Move some '@file' doc-comments to the .c file.
 * src/interface.c, geany.glade:
   Add frame for 'Printing' prefs dialog page.
 * src/sidebar.c, src/project.c, src/prefs.c, src/stash.c, src/stash.h,
   src/keyfile.c, src/keyfile.h, src/search.c, src/plugins.c,
   doc/stash-example.c:
   Rename Stash data types to be independently named from Geany (so
   Stash can be reused for other projects).
   Rename GeanyPrefGroup to StashGroup.


2010-03-17  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * tagmanager/python.c:
   Apply patch from Colomban Wendling to parse Python lambda functions
   (thanks) - modified to only parse toplevel or class member lambdas.
 * src/stash.c, src/stash.h, doc/Doxyfile.in, doc/Makefile.am,
   doc/stash-example.c:
   Add doc-comments for Stash setting functions.
   Add an example file showing usage of Stash.
   (Not enabled yet until added to the plugin API).


2010-03-17  Lex Trotman  <elextr.at.gmail.dot.com>

 * src/build.c:
   Fix using return value without checking return status, caused
   incorrect sensitivity settings on build dialog.


2010-03-16  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * HACKING:
   Add tip about gcc optimization & warnings/debugging.
   Add Testing section.
   Update Libraries section about synchronizing with other projects.


2010-03-15  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/ui_utils.c:
   For now revert the recent patch which set real_path of newly
   open non-existent configuration files as this seems hackish and
   causes 'file not found' warnings.
 * wscript:
   Fix/Improve GIT repository detection
   (patch by Thomas Martitz, thanks).
 * plugins/geanyfunctions.h, src/plugindata.h, src/plugins.c,
   src/utils.c:
   Add utils_copy_environment() to the plugin API.


2010-03-15  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/utils.c, src/utils.h, src/sciwrappers.c, src/dialogs.c,
   src/navqueue.c, src/msgwindow.c, src/filetypes.c, src/document.c,
   src/main.c:
   Use 3rd person for more API dox.
   Change 'This is a wrapper function for...' to 'Wraps...' in brief
   descriptions.
   Change 'After all...' to 'Afterwards...'.
 * src/interface.c, geany.glade:
   Apply patch from Eugene Arshinov to make frame packing/alignment
   more consistent (thanks).


2010-03-12  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/ui_utils.c:
   Fix ui_button_new_with_image() to call gtk_button_set_image() so
   that gtk_button_[sg]et_label() work as expected.
 * src/build.c, src/dialogs.c, src/dialogs.h, src/callbacks.c:
   Make Build Commands dialog show menu item labels as a button (to
   help show that menu labels don't normally need to be edited &
   display the mnemonic correctly). Clicking shows an input dialog to
   set a new menu item label.
   Split dialogs_show_input() into 2 functions: one simple, one for
   a persistent dialog.
   Fix possible double-destroy of input dialog when closed by user.
 * src/dialogs.c:
   Fix not destroying 'Make Custom Target' input dialog after first
   use (oops).
 * src/project.c:
   Make Long Line Marker settings for existing projects default to
   general settings instead of 0 (thanks to Eugene Arshinov).
 * src/utils.c, src/ui_utils.h, src/utils.h, src/highlighting.c,
   src/keybindings.c, src/sciwrappers.c, src/plugindata.h,
   src/filetypes.c, src/filetypes.h, src/document.c, src/pluginutils.c,
   src/document.h, src/editor.c, src/editor.h, src/ui_utils.c:
   Use 3rd person (gets not get) for API function brief descriptions.
   Avoid using 'convenience function' in API brief descriptions.


2010-03-10  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * doc/geany.txt, doc/geany.html:
   Warn about some GNU extensions for regular expressions & clarify
   some points.
 * src/interface.c, src/keybindings.c, src/project.c, src/project.h,
   src/prefs.c, src/plugindata.h, src/keyfile.c, src/editor.c,
   src/editor.h, geany.glade:
   Apply patch from Eugene Arshinov to add project long line marker
   customisation (thanks).
 * src/interface.c, geany.glade:
   Edit/tidy 'Long line marker' labels.


2010-03-10  Lex Trotman  <elextr.at.gmail.dot.com>

 * src/build.c, src/project.c:
   Fix crash due to NULL in project build preferences (thanks to
   Wolfgang Ocker).


2010-03-09  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/utils.c, src/utils.h, src/search.c, src/search.h,
   src/document.c, doc/geany.txt, doc/geany.html:
   Merge gnu-regex branch:
   Use POSIX system/GNU regex engine for find & replace 'Use regular
   expressions' option. This alters regex syntax a bit - see the docs
   for details; we now support '?' operator and replacement backslash
   escaping is more standard.
   Make regex search imply replacing escaped chars.
   Allow \0 backreference replacement for the whole match.
   Note: Replace All may be slower; if this is a problem please let me
   know.
 - code:
   Add argument to utils_str_replace_escape() for keeping
   uninterpreted backslash escapes e.g. '\\', '\e'.
 * scintilla/LexMarkdown.cxx:
   Backport minor formatting/style changes from Scintilla project.
 * doc/geany.txt, doc/geany.html:
   Remove warning about no visual indication for zero-column-mode
   editing.


2010-03-09  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * wscript:
   Skip unavailable languages in LINGUAS (thanks to Christian Dywan).


2010-03-07  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * wscript, scintilla/*, scintilla/include/*:
   Update Scintilla to version 2.03.
 * geany.glade, doc/geany.txt, doc/geany.html, src/editor.c,
   src/editor.h, src/interface.c, src/keyfile.c, src/plugindata.h:
   Add preference for virtual spaces.
 * src/log.c:
   Fix wrong default response for the Debug Messages dialog.
 * src/dialogs.c:
   Fix crashes when using Save As with no open files (closes #2964406).
 * src/document.c:
   Fix duplicate mnemonics on 'Resave missing file' dialog, also
   move the question from the secondary to the main text to be
   more compatible with the Gnome HIG.
   Fix broken 'Save' action in 'Resave missing file' dialog.
 * tagmanager/php.c:
   Improve PHP parser to parse also the argument lists of PHP functions.
 * src/prefs.c:
   Correctly set the parent widget for the keybinding overwrite
   confirmation dialog.
 * src/dialog.c:
   Fix setting the icon for some dialogs if the parent itself is also
   a dialog.
 * src/ui_utils.c:
   When editing non-existent config files using the Tools->Configuration
   Files menu, explicitly set the real_path to avoid presenting the Save
   As dialog when saving the file (patch by Tony Rick, thanks).
 * src/callbacks.c:
   Focus the editor widget after hiding the sidebar when it had the
   input focus (patch by Can Koy, thanks).
   Properly show/hide the mesages window when using the View menu item
   (closes #2961282).
 * plugins/filebrowser.c:
   After opening files, focus the editor widget
   (based on a patch by Can Koy, thanks).
 * plugins/filebrowser.c, plugins/geanyfunctions.h, src/msgwindow.c,
   src/plugindata.h, src/plugins.c, src/sidebar.c, src/ui_utils.c,
   src/ui_utils.h, src/vte.c:
   Add and use convenience function ui_is_keyval_enter_or_return() and
   add it to the plugin API.


2010-03-05  Frank Lanitz  <frank(at)frank(dot)uvena(dot)de>

 * src/about.c, THANKS, po/ast.po:
   Added Asturian translation. Thanks to Marcos Costales for providing.


2010-02-28  Dominic Hopf  <dmaphy(at)googlemail(dot)com>

 * src/log.c:
   Fix keyboard accelerators in debug messages window
   (Thanks Can Koy).


2010-02-28  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * scintilla/LexR.cxx:
   Backport R lexer from Scintilla CVS to fix case sensitive keywords
   (Scintilla bug #2956543).
 * src/sidebar.c, src/about.c, THANKS:
   Make Space on the symbol and document list not focus the editor
   widget while Enter does (closes #2919444, patch by Can Koy, thanks).
 * src/document.c, src/document.h:
   Fix document_try_focus() to make it work with the sidebar document
   list as well.
 * src/msgwindow.c, src/msgwindow.h, src/ui_utils.c, src/ui_utils.h:
   Make Space on the compiler and messages widgets not focus the editor
   widget while Enter does (patch by Can Koy, thanks).
 * src/editor.c:
   Fix wrongly auto-detected multiline comments
   (patch by Eugene Arshinov, thanks).


2010-02-28  Frank Lanitz  <frank(at)frank(dot)uvena(dot)de>

 * src/ui_utils.c:
   Show number of lines of current document inside statusbar. Thanks to
   Can Koy for providing the patch.


2010-02-24  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/keybindings.c, doc/geany.txt, doc/geany.html:
   Make Switch to Editor keybinding reshow the document statistics
   line, so user doesn't have to move the cursor.


2010-02-22  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * data/filetypes.r:
   Update keywords for the R language (patch by Jon Senior, thanks).


2010-02-21  Dominic Hopf  <dmaphy(at)googlemail(dot)com>

 * doc/geany.txt:
   Fix the instruction how to insert unicode characters
   (thanks Tony Rick).


2010-02-21  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * scripts/create_py_tags.py:
   Minor fixes.
   Replace tabs by spaces.
 * plugins/genapi.py:
   Minor fixes.
   Replace tabs by spaces.
 * tagmanager/r.c, plugins/geanyfunctions.h, src/about.c,
   src/filetypes.c, src/symbols.c, tagmanager/Makefile.am,
   tagmanager/makefile.win32, tagmanager/parsers.h, wscript, THANKS:
   Add R tagmanager symbol parser (patch by Jon Senior, thanks).
 * doc/geany.html, doc/geany.txt, src/keybindings.c, src/keybindings.h,
   src/plugindata.h, src/sidebar.c, src/sidebar.h:
   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, thanks).
 * data/filetypes.r:
   Update primary keywords for the R language
   (patch by Jon Senior, thanks).


2010-02-20  Dominic Hopf  <dmaphy(at)googlemail(dot)com>

 * doc/geany.txt:
   Add more detailed hints about reloading configuration
   (thanks to Tony Rick).
 * data/filetypes.javascript:
   Correct the keyword list for JavaScript (thanks to Jonas).


2010-02-14  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * New release: Geany 0.18.1 "Balfour".


2010-02-13  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/keybindings.c:
   Add special cases for handling the Select All keybinding (Ctrl-A) in
   the toolbar search and goto line text entries (closes #2948040).
   Strip trailing spaces after reflowing a paragraph, patch by
   Dominik Wagenfuehr, thanks (closes #2945497).


2010-02-07  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/geanymenubuttonaction.c, src/templates.c:
   Partly revert last commit:
   Unref the new files toolbar menu when freeing templates as it
   was done before but unref it *after* the menu has been removed
   from the GeanyMenuButtonAction.
 * src/encodings.c:
   Fix possible endless loop when trying to detect the encoding of
   non-text files (patch by Alexey Antipov, thanks).


2010-02-06  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/document.c:
   Allow saving remote files using g_file_set_contents() as well
   (patch by Алексей Антипов, thanks).
 * data/filetypes.python:
   Adjust style for secondary keywords to be less aggressive.
   Add Python 2.5 builtins keywords.
 * src/geanymenubuttonaction.c, src/templates.c:
   Unref the new files toolbar menu when setting a new menu to fix
   possible crashes when reloading configuration.
 * src/filetypes.c:
   When reloading configuration, process the current document at last
   so the symbol list will be updated correctly.


2010-02-01  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/symbols.c:
   Explicitly read filetype configuration files before generating
   global tags to get settings for custom filetypes.


2010-02-01  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/plugins.c:
   Fix GLib warning when toggling 'no plugins available' item.


2010-01-31  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * icons/Makefile.am:
   Include geany.ico in the distribution tarball.
 * Makefile.am:
   Fix 'make distcheck' by removing data/latex.tags from EXTRA_DIST.
 * scripts/create_py_tags.py:
   Make the script a bit more robust with newer Python versions.
 * src/templates.c:
   Use utils_spawn_sync() instead of g_spawn_sync().


2010-01-31  Frank Lanitz  <frank(at)frank(dot)uvena(dot)de>

 * plugins/export.c:
   Close meta tag for export date properly.


2010-01-28  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * geany.spec.in:
   Update RPM Spec file (patch by Dominic Hopf, thanks).


2010-01-28  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/plugindata.h:
   Fix renaming sci_send_message(), sci_send_command() function
   pointers.


2010-01-25  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/highlighting.c, src/highlighting.h, src/sciwrappers.c,
   src/plugindata.h, doc/Doxyfile.in, doc/pluginsymbols.c,
   plugins/geanyfunctions.h, plugins/Makefile.am,
   plugins/pluginmacros.h, plugins/genapi.py, wscript:
   Use full function name for GeanyFunctions function pointers. This
   avoids naming conflicts e.g. with C++'s 'new' keyword.
   Remove deprecated header pluginmacros.h - use geanyfunctions.h
   instead.


2010-01-24  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/utils.c, src/utils.h, src/vte.c:
   Add utils_copy_environment() and make use of it.
 * data/snippets.conf, doc/geany.html, doc/geany.txt, src/callbacks.c,
   src/editor.c, src/templates.c, src/templates.h:
   Add new special template wildcard "{command:...}" to use the
   output of a command in templates.
   Adjust template functions to mostly work with GeanyDocuments.
   Minor cleanups in the template code.
 * src/gb.c:
   Replace the old icons with smiley icons from the Rodent icon theme.
   Fix showing the same icon for two or more slots.
   Minor cleanups.
 * src/editor.c, src/editor.h, src/keybindings.c:
   Rename fold_symbol_click() to editor_toggle_fold().
   Use editor_toggle_fold() when the 'Toggle current fold' keybinding
   was used to respect the 'Fold/unfold all children' preference
   (closes #2935053).


2010-01-22  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/build.c:
   Prevent possible segfault in get_build_group().
 * src/callbacks.c:
   Fix GLib warning & beep if trying to insert multiline comment for a
   filetype that doesn't support it.


2010-01-18  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * doc/plugins.dox:
   Add gcc commands to build a plugin to the HowTo.
 * src/search.c, src/document.c, src/document.h:
   Show 'Replaced X matches in Y documents' message when using
   Replace in Session.


2010-01-17  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * scripts/plugin_test.c:
   Add a little test program which can load and test Geany plugins to
   verify it is loadable at runtime and all necessary symbols are
   defined.
 * doc/plugins.dox, src/geanyobject.c, src/geanyobject.h, src/main.c,
   src/plugindata.h:
   Add new signal: "geany-startup-complete" which is sent once all
   initialization and startup tasks has been done.
 * README.I18N, configure.ac, wscript, po/LINGUAS:
   Remove po/LINGUAS from the repository.
   Generate it automatically if needed by reading available
   message catalogs from the po directory.
   Also respect the LINGUAS environment variable properly.


2010-01-16  Frank Lanitz  <frank(at)frank(dot)uvena(dot)de>

 * src/editor.c:
   Remove editor_auto_latex() from Geany core and move it to geanyLaTeX
   plugin.


2010-01-12  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/editor.c, src/templates.c, src/templates.h:
   Refactor templates_replace_all() into templates_replace_valist()
   to save some code duplication.


2010-01-11  Frank Lanitz  <frank(at)frank(dot)uvena(dot)de>

 * plugins/geanyfunctions.h, src/editor.c, src/editor.h,
   src/plugindata.h, src/plugins.c:
   Add editor_insert_text_block() to plugin API.


2010-01-01  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * *.*:
   Update copyright information.
 * src/keybindings.c, src/keybindings.h, src/plugindata.h,
   doc/geany.txt, doc/geany.html:
   Add keybinding to open the last closed tab (closes #2912692).


2009-12-31  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * autogen.sh, configure.in, configure.ac:
   Rename configure.in to configure.ac.
 * plugins/geanyfunctions.h, src/plugins.c, src/plugindata.h,
   src/sciwrappers.c:
   Add sci_find_text() to the plugin API.
 * doc/geany.html, doc/geany.txt, geany.glade, src/callbacks.c,
   src/interface.c, src/prefs.c:
   Add a checkbox in the preferences dialog to explicitly toggle
   the visibility of the sidebar (closes #2923340).


2009-12-29  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/editor.c, src/plugins.c, src/plugindata.h,
   plugins/geanyfunctions.h:
   Add editor_get_eol_char_name(), editor_get_eol_char_len() and
   editor_get_eol_char() to the plugin API.
 * src/callbacks.c, src/plugins.c, src/plugins.h:
   Fix sensitivity of the Edit->Plugin Preferences menu item
   if plugins are loaded which do not provide a configuration dialog.
 * scripts/create_py_tags.py:
   Rewrite and extend the Python tags parsing script to use
   Python's inspect module to read symbols from Python modules
   including scope information.
 * data/filetypes.restructuredtext:
   Add the default comment character sequence for reStructuredText.
 * src/callbacks.c:
   Show the Find/Goto dialogs if the corresponding toolbar buttons are
   clicked but their text fields are not part of the toolbar (#2920807).
 * data/filetypes.common, doc/geany.html, doc/geany.txt,
   src/highlighting.c:
   Add new style to change foreground and background colours for
   calltips (patch by Dimitar Zhekov, thanks, closes #2919229).
 * src/search.c:
   Remember the window position of the Find, Replace and Find in Files
   dialogs (closes #2877988).


2009-12-26  Frank Lanitz  <frank@frank.uvena.de>

 * doc/plugins.dox:
   Fix a minor typo inside plugin API reference.


2009-12-20  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/dialog.c, src/dialogs.h, src/document.c, src/prefs.c:
   Make dialogs_show_prompt() more flexible to take up to three
   button/response code pairs to be shown.
   Add a close button to the dialog when asking to Re-Save a
   deleted file
   (closes #2916954, based on a patch by Dominik Stadler, thanks).
 * src/editor.c:
   Fix LaTeX environment auto completion with CR/LF line endings.
   Add some sanity checks.
 * src/document.c:
   When closing a document after it was deleted from the filesystem,
   don't ask whether it should be saved first.
   Mark the document only as changed if it is not closed afterwards.
   Prevent possible segfaults if the document was closed when it is
   missing from the filesystem.
 * src/keybindings.c, src/keyfile.c, src/main.c, src/msgwindow.c,
   src/msgwindow.h, src/prefs.c:
   Add MessageWindow::scribble and use it instead of searching the
   widget pointer everytime.
 * src/keyfile.c, src/msgwindow.c, src/msgwindow.h, src/ui_utils.h:
   Add preferences for hiding single tabs from the messages window
   (no GUI preferences yet, still to be implemented).
 * src/callbacks.c, src/prefs.c, src/toolbar.c, src/toolbar.h:
   Set the correct parent window for the toolbar editor
   dialog (closes #2913334).
 * src/win32.c, src/win32.h, src/ui_utils.c:
   Rename win32_show_project_folder_dialog() to
   win32_show_folder_dialog() as it is not related and not used by any
   project management related code.
 * src/ui_utils.c, src/win32.c, src/win32.h, src/dialogs.c:
   Rename win32_show_file_dialog() to win32_show_document_open_dialog()
   as it is specialised for opening documents.
   Implement win32_show_file_dialog() as a generic file open dialog and
   use it with ui_path_box_new().


2009-12-20  Frank Lanitz  <frank(at)frank(dot)uvena(dot)de>

 * src/editor.c:
   Extend auto_latex() function to check whether an environment has been
   closed within the next lines to avoid auto adding double \end{}.
 * data/latex.tags:
   Remove LaTeX tags from SVN. Can be found at
   http://download.geany.org/contrib/tags/ if needed.


2009-12-19  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/callbacks.c, src/dialogs.c, src/document.c, src/document.h:
   Add document_need_save_as().
   Show the Save As also for documents created from filetype templates
   instead of saving them directly with the untitled filename.


2009-12-09  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * geany.glade, src/interface.c:
   Move 'Send Selection to Terminal' menu item from Format to Commands
   submenu.
 * src/msgwindow.c:
   When going to a build error, try the current document's path if
   the parsed filename doesn't exist. (This can happen when we receive
   build messages in the wrong order - after the 'Leaving directory'
   messages).
 * src/msgwindow.c:
   Refactor msgwin_goto_compiler_file_line().
 * src/interface.c, src/keybindings.c, geany.glade:
   Capitalize, add mnemonics, sync with kb.c the Edit->Commands menu
   item labels.
 * src/search.c:
   Refactor/reformat on_replace_dialog_response().


2009-12-08  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * geany.spec.in:
   Improve geany.spec (split the package into a binary and devel
   package, update BuildRequires and other minor improvements).
   Patch by Dominic Hopf, thanks.


2009-12-08  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/filetypes.c, src/filetypes.h:
   Make group for custom filetypes.
 * data/filetypes.Genie.conf, data/filetype_extensions.conf:
   Add custom filetype Genie.


2009-12-07  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/highlighting.c:
   Highlight D & Java types from a global tags file.
 * src/highlighting.c, doc/geany.txt, doc/geany.html:
   Add debug message warning if recursive lexer_filetype is set.
 * src/highlighting.c, src/sciwrappers.c, src/sciwrappers.h:
   Remove duplicate sci_set_keywords(), make argument const.
 * src/highlighting.c:
   Only show debug message once if recursive lexer_filetype is set.
   Tidy highlighting_init_styles code for filetype None handling.
 * scintilla/makefile.win32, scintilla/KeyWords.cxx,
   scintilla/LexVerilog.cxx, scintilla/Makefile.am, src/highlighting.c,
   src/filetypes.c, src/filetypes.h, src/symbols.c, THANKS,
   tagmanager/parsers.h, tagmanager/makefile.win32,
   tagmanager/verilog.c, tagmanager/Makefile.am,
   data/filetypes.verilog, data/filetype_extensions.conf, wscript:
   Apply patch from Kelvin Gardiner to add Verilog filetype (thanks).
 * src/highlighting.c:
   Fix segfault on startup (oops).
 * data/filetypes.verilog:
   Fix using common style colours for Verilog.


2009-12-03  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/highlighting.c, data/filetypes.cpp, data/filetypes.vala,
   data/filetypes.glsl, data/filetypes.cs, data/filetypes.c:
   Move C-like filetype properties into configuration files.
 * src/highlighting.c, data/filetypes.cpp, data/filetypes.cs,
   data/filetypes.c:
   Remove now unnecessary "styling_within_preprocessor" C style key.
 * src/highlighting.c, data/filetypes.cpp, data/filetypes.vala,
   data/filetypes.glsl, data/filetypes.cs:
   Use lexer_filetype=C configuration file key instead of duplicate
   styleset functions for C++, C#, GLSL, Vala.


2009-12-02  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * doc/geany.txt, doc/geany.html:
   Warn about not using BOM for configuration files (confuses GKeyFile
   parser, at least on my system).
 * src/filetypes.c:
   Add/improve debug messages for custom filetypes.


2009-11-30  Frank Lanitz  <frank(at)frank(dot)uvena(dot)de>

 * data/latex.tags:
   Add a couple of further latex-beamer commands to list of LaTeX tags.


2009-11-30  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * plugins/filebrowser.c:
   Add an in-entry clear icon to the filebrowser plugin's filter
   entry (patch by Dominic Hopf, thanks).
 * src/prefs.c, src/ui_utils.c:
   Fix two compiler warnings about possibly uninitialised variables.


2009-11-29  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/main.c, src/main.h, src/plugins.c, src/plugindata.h,
   plugins/geanyfunctions.h:
   Add main_is_realized() to the plugin API.
 * tagmanager/include/tm_tagmanager.h:
   Update partly outdated and wrong doc comment.
 * src/main.c, src/main.h, src/socket.c:
   Allow opening Geany projects remotely.
 * doc/geany.txt, doc/geany.html, src/vte.c, src/vte.h, src/keyfile.c:
   Add a hidden pref to allow executing text which was sent to the
   terminal directly, i.e. do not strip trailing newline characters.
   Also fix the stripping of trailing newline characters if there was
   more than one.


2009-11-26  Frank Lanitz  <frank(at)frank(dot)uvena(dot)de>

 * src/about.c, THANKS:
   Add Peter Scholtens and Ayke van Laethem to list of translators. Move
   Kurt de Bree into section of previous translators.


2009-11-26  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/about.c, src/symbols.c, THANKS, tagmanager/vhdl.c:
   Fix VHDL symbol list to display all tags (patch from Kelvin Gardiner,
   thanks).


2009-11-24  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/highlighting.c:
   Make stylesets take a ft_id argument so they can be reused fully with
   custom filetypes, so custom styles and keywords can be set.
 * src/highlighting.c:
   Fix setting filetype properties when both the system and the user
   file have properties set.
 * src/symbols.c, tagmanager/vhdl.c:
   Parse VHDL signals.
 * src/highlighting.c:
   Fix lexer settings for custom filetypes.


2009-11-23  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * tagmanager/php.c:
   Remove duplicate regular expression for parsing classes.
   Fix and improve parsing of constants (patch by Harold Aling, thanks).
 * doc/geany.1.in, doc/geany.html, doc/geany.txt, src/main.c,
   src/main.h, THANKS, src/about.c:
   Add new command line option "--socket-file" to be able to specify
   separate socket filenames for instances
   (closes #2896027, patch by Jörn Reder, thanks).
 * src/keybindings.c, src/keybindings.h:
   Add keybindings_check_event() to manually check GdkKeyEvents against
   Geany's keybindings.
 * src/callbacks.c, src/utils.c, src/utils.h:
   Add and use utils_get_help_url().
 * geany.glade, src/interface.c, src/prefs.c:
   Add a Help button to the preferences dialog.
   Handle Help keybinding events for the preferences dialog especially
   and open the manual with the corresponding anchor link to the current
   preferences page (same goes for the new Help button).


2009-11-22  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/toolbar.c, src/geanymenubuttonaction.c,
   src/geanymenubuttonaction.h:
   Use separate tooltips for toolbar menu buttons and their attached
   drop-down arrows.
 * tagmanager/latex.c:
   Improve parsing of sections and chapters by ignoring shortnames
   like \section[shortname]{label} (closes #2890477).


2009-11-19  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/geanymenubuttonaction.c:
   Try to fix Gtk warning when using Tools->Reload Configuration.


2009-11-18  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/highlighting.c, doc/geany.txt, doc/geany.html,
   data/filetypes.nsis, data/filetypes.php, data/filetypes.perl,
   data/filetypes.pascal, data/filetypes.docbook,
   data/filetypes.python, data/filetypes.conf:
   Use filetypes.foo [lexer_properties] group instead of hardcoding
   lexer properties (more flexible e.g. for custom filetypes).
 * src/highlighting.c, data/filetypes.xml, data/filetypes.html:
   Replace filetypes.xml html_asp_default_language key with
   filetypes.html asp.default.language property in [lexer_properties]
   group.


2009-11-17  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * doc/geany.txt, doc/geany.html:
   Fix slightly wrong description of how to insert Unicode characters.
 * src/ui_utils.c:
   Implement GTK_FILE_CHOOSER_ACTION_OPEN mode in
   ui_setup_open_button_callback().
 * src/prefs.c, src/prefs.c, src/vte.c:
   Refactor color and font button callback functions in the
   preferences dialog. Move the VTE related callback functions
   into vte.c.
   Make use of ui_setup_open_button_callback().
 * src/printing.c:
   Improve printing status texts (patch by Dominic Hopf, thanks).
 * src/prefs.c, src/vte.c:
   Use the default dialog title set by ui_setup_open_button_callback()
   to be more consistent and to save one string.


2009-11-16  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * tagmanager/c.c:
   Separate DKinds from CKinds.
   Don't generate macro tags for D, Java.


2009-11-12  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * tagmanager/ctags.c, tagmanager/general.h:
   Make TagManager Assert statements cause g_warning on failure.
 * src/keybindings.c:
   Fix reflow paragraph command when cursor < anchor using
   sci_fix_selection().


2009-11-10  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * tagmanager/perl.c:
   Fix Geany segfault with constant tags (#2895168).
 * src/symbols.c:
   Fix invalid tree iter access when using tv_iters.tag_other but not
   using tv_iters.tag_variable.
 * HACKING, tagmanager/perl.c:
   Fix parsing Perl format statements ("other" type doesn't seem
   to work).
 * tagmanager/tm_tag.c, tagmanager/perl.c, HACKING:
   Fix using "other" tag type.


2009-11-09  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/vte.c:
   Remove useless comment about applying settings only when libvte.so
   could be loaded which is only displayed *if* libvte.so is loaded.
 * src/editor.c:
   Allow autocompletion for HTML entities even within a word.
 * src/geanymenubuttonaction.c:
   Only set the menu of the button if a non-empty GtkMenu is passed to
   geany_menu_button_action_set_menu() so the menu arrow keeps
   insensitive.


2009-11-07  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * tagmanager/c.c:
   Fix parsing some Java code (e.g. filetypes.java) after r4407.


2009-11-06  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * tagmanager/c.c:
   Parse D functions with contracts (fixes #1885480).
   Parse D alias statement like typedef.
   (Ignore some more D keywords).
 * tagmanager/c.c:
   Fix creating D interface tags properly.
 * tagmanager/c.c:
   Parse contents of D extern{} and version{} blocks.


2009-11-05  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/main.c:
   Remove old code.


2009-11-05  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/plugindata.h, HACKING:
   Deprecate PLUGIN_KEY_GROUP() macro - use plugin_set_key_group()
   instead.
 * src/callbacks.c:
   Show number of files saved on status bar when using Save All.
 * src/highlighting.c:
   Use default color scheme if pref color scheme file doesn't exist.
 * src/keybindings.c:
   Fix moving correct lines after selecting whole line(s).


2009-11-04  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * tagmanager/makefile.win32:
   Fix broken build on Windows because of a typo
   (patch by Timothy Boronczyk, thanks).


2009-11-04  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/highlighting.c, src/highlighting.h, src/keyfile.c, src/main.c,
   src/editor.h:
   Add 'View->Editor->Color Schemes' menu, for now only shown if color
   scheme files exist in a colorschemes config directory. Color scheme
   files must end in ".conf" and currently only the [named_styles]
   section is read.
 * src/templates.c, src/utils.c, src/highlighting.c, src/utils.h:
   Add utils_get_config_files().
 * src/highlighting.c:
   Fix issue with default color not being reset if overridden with a
   system default color.
 * src/highlighting.c:
   Only reload filetype files when changing color scheme, not all
   configuration files.
 * src/filetypes.c, src/document.c, src/document.h, doc/Doxyfile.in:
   Deprecate documents_foreach() as it looks more like a function; use
   foreach_document() instead.
   Generate dox even for GEANY_DISABLE_DEPRECATED declarations.


2009-10-30  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/stash.c, src/stash.h:
   Use typedef instead of pointer for widget_id function arguments.


2009-10-29  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/pluginutils.c:
   Don't expand Plugin Preferences page spacing vertically to fill the
   height of the dialog.
 * src/interface.c, src/keybindings.c, src/keybindings.h, src/prefs.c,
   geany.glade, plugins/splitwindow.c:
   Allow GeanyKeyBinding label field to contain underscores, which won't
   be displayed by Geany. This saves adding near-duplicate translation
   strings.
   Add mnemonics for 3 Edit->Format menu items.
   Add keybindings_get_label().
 * src/interface.c, geany.glade:
   Use GtkVBoxes for Encoding prefs combo boxes to reduce width of prefs
   dialog.


2009-10-28  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/ui_utils.c:
   Desensitize Edit->Commands menu item when no docs are open.
 * src/interface.c, src/keybindings.c, src/callbacks.c,
   src/callbacks.h, geany.glade:
   Add 'Reflow, Transpose, Smart line indent' Edit->Format menu items.
 * src/sciwrappers.c, src/sciwrappers.h, src/editor.c:
   Add general function sci_get_string() that works with any string
   buffer messages that follow the Windows message convention.
 * src/pluginprivate.h, src/interface.c, src/keybindings.c,
   src/keybindings.h, src/callbacks.c, src/callbacks.h,
   src/pluginutils.c, src/pluginutils.h, geany.glade:
   Add 'Edit->Plugin Preferences' menu item and keybinding.
   Don't include plugindata.h in pluginutils.h because it redefines the
   GEANY() macro for plugin use.
 * doc/geany.txt, doc/geany.html:
   Update for Plugin Preferences keybinding.


2009-10-27  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/editor.c:
   Sort document word completion list.
 * src/interface.c, src/keybindings.c, src/callbacks.c,
   src/callbacks.h, geany.glade:
   Add some useful commands to editor popup menu under "Commands"
   submenu (thanks to Lex).
   Move 'Duplicate line or selection' from Format -> Commands submenu.
 * src/prefs.c, src/ui_utils.c, doc/geany.txt, doc/geany.html:
   Enable switching the sidebar to the right on Windows again, as it
   apparently works after all.
 * src/editor.c:
   Fix using tab to autocomplete in some other situations that word part
   completion doesn't apply in.
 * src/templates.c, src/interface.c, src/ui_utils.c, geany.glade:
   Add Edit->Commands submenu which is shared with the editor popup
   menu.
 * src/interface.c, src/keybindings.c, src/ui_utils.c, geany.glade:
   Change editor popup Commands submenu to start as child of menubar
   Edit menu, as this is more usual e.g. for keybindings initialization.
 * src/interface.c, src/keybindings.c, src/tools.c, src/ui_utils.c,
   geany.glade:
   Share a single Format submenu for menubar Edit and popup menu.


2009-10-26  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/build.c:
   Fix a compiler warning about an uninitialised variable.
 * wscript:
   Don't install unnecessary headers: dialogs.h, main.h, plugins.h,
   sciwrappers.h, build.h (for the Waf build system,
   accordingly to r4366).


2009-10-26  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/prefs.h, src/search.h, src/support.h, src/templates.h,
   src/toolbar.c, src/toolbar.h:
   Add missing dox for types/files in the API.
 * src/filetypes.h, src/Makefile.am, plugins/geanyplugin.h:
   Don't install unnecessary headers: dialogs.h, main.h, plugins.h,
   sciwrappers.h, build.h. (This helps to get compiler warnings for uses
   of functions not in the API).
   Warning: any plugins that include these headers should remove them.
 * src/build.c, src/build.h:
   Move function doc-comments to build.c so they stay in sync. Note:
   these functions are still not in the API.
 * HACKING:
   Add 'Doc-comments' plugin API subsection.
 * plugins/filebrowser.c:
   Fix packing configure widgets equally.
   Use spacing multiples of 6 as recommended by Gnome HIG.
 * src/prefs.c, src/ui_utils.c, doc/geany.txt, doc/geany.html:
   Disable switching the sidebar to the right on Windows as it will
   probably fail like the Split Window plugin.
 * src/document.c:
   Improve 'Detect from file' indentation pref by ignoring lines with
   indentation wider than 24 characters as this is more likely to be
   alignment than indentation.


2009-10-25  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * plugins/saveactions.c:
   Fix adding the filetype's default extension when using the
   Instant Save plugin (closes #2885142).
 * src/main.c:
   Before looking for line and column numbers specified as part
   of a filename, ensure the file doesn't exist on disk. This allows
   opening of files like "test:0".
 * src/sidebar.c:
   Rename "select" variables into "selection" to avoid shadowed names.
 * plugins/geanyfunctions.h, src/plugins.c, src/plugindata.h:
   Add ui_widget_modify_font_from_string() and sci_goto_line()
   to the plugin API.
 * plugins/filebrowser.c:
   Rename "select" variables into "selection" to avoid shadowed names.
   Make use of ui_widget_modify_font_from_string().


2009-10-23  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/interface.c, src/ui_utils.h, src/prefs.c, src/keyfile.c,
   src/main.c, src/ui_utils.c, doc/geany.txt, doc/geany.html,
   geany.glade:
   Add sidebar position interface pref.


2009-10-23  Lex Trotman  <elextr.at.gmail.dot.com>

 * doc/geany.txt, doc/geany.html:
   Add missing underscores to links.


2009-10-22  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/keybindings.c, src/keybindings.h, doc/geany.txt, doc/geany.html:
   Add 'Move line(s) up/down' keybindings.


2009-10-22  Lex Trotman  <elextr.at.gmail.dot.com>

 * src/build.c, src/build.h, src/filetypes.h:
   Include code for project filetype execute commands and fix bug in
   saving project filetypes list.
 * src/project.c, src/build.c, doc/geany.txt:
   Make non-project execute configuration save to filetypes not
   geany.conf.
   Fix closing of project failing to remove build commands dialog entry.


2009-10-21  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/project.c, src/ui_utils.c:
   Set border width for project properties build table.
 * geany.glade, src/interface.c:
   Don't expand hard tab width alignment.


2009-10-20  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/highlighting.c, src/filetypes.c, src/document.c, src/symbols.c,
   doc/geany.txt, doc/geany.html:
   Support loading global tags files for custom filetypes.
 * src/keybindings.c, src/keybindings.h, src/editor.c, src/editor.h,
   doc/geany.txt, doc/geany.html:
   Add 'Word part completion' keybinding so keys other than Tab can be
   used, or to clear/change the combination so Tab does full completion
   like before.
 * src/keybindings.c, src/keybindings.h, doc/geany.txt, doc/geany.html:
   Add 'Select to previous/next word part' keybindings.
 * src/keybindings.c, src/keybindings.h, doc/geany.txt, doc/geany.html:
   Add 'Switch to Messages' focus keybinding.


2009-10-19  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * doc/geany.txt, doc/geany.html:
   Add 'Custom filetypes' section.
 * src/filetypes.c, src/filetypes.h, src/document.c,
   doc/geany.txt, doc/geany.html, tagmanager/tm_source_file.c,
   tagmanager/include/tm_source_file.h:
   Add filetype "tag_parser" key so custom filetypes can use an existing
   tag parser.
   Add tm_source_file_get_named_lang().
 * src/highlighting.c, src/filetypes.c, src/filetypes.h, doc/geany.txt,
   doc/geany.html:
   Add filetype "lexer_filetype" key so custom filetypes can use an
   existing lexer.


2009-10-19  Frank Lanitz  <frank(at)frank(dot)uvena(dot)de>

 * THANKS, src/about.c:
   Add Xhacker Liu for his work at zh_CN translation to long list of
   translators.


2009-10-16  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/sciwrappers.c:
   Remove unnecessary line number margin padding.
 * scintilla/include/Scintilla.h, scintilla/include/Scintilla.iface,
   scintilla/ScintillaBase.h, scintilla/ScintillaBase.cxx,
   src/editor.c:
   Improve word part autocompletion so AC list is not cancelled and
   reshown (this also stops the selection changing).
   Add SCI_AUTOCGETCURRENTTEXT message (will be sent upstream).
 * src/editor.c:
   Improve CamelCase word part autocompletion for runs of capital
   letters.
 * src/editor.c:
   Don't complete snippets if there's a selection.


2009-10-16  Lex Trotman  <elextr(at)gmail(dot)com>

 * src/build.c:
   Fix crash opening project when Geany started with no geany.conf.


2009-10-15  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * scintilla/ScintillaBase.h, scintilla/ScintillaBase.cxx, src/utils.c,
   src/utils.h, src/sciwrappers.c, src/editor.c, doc/geany.txt,
   doc/geany.html:
   Add word part autocompletion for the current selected item when
   pressing Tab - Enter still completes normally.
   Add foreach_str() API macro.
   Temporarily modify scintilla to say if tab was used for
   autocompletion.
 * src/templates.c, src/build.c, src/utils.c, src/utils.h,
   src/project.c, src/search.c, src/editor.c, src/ui_utils.c,
   plugins/classbuilder.c:
   Revert r4301 - utils_free_pointers() taking 4 arguments.
 * src/highlighting.c, src/highlighting.h, src/plugindata.h,
   src/document.c, src/plugins.c, plugins/geanyfunctions.h,
   plugins/splitwindow.c:
   Add highlighting_set_styles() to API, use for Split Window plugin so
   filetypes.common settings get set too.
   Make highlighting_set_styles() take GeanyFiletype pointer instead of
   filetype id.
 * src/document.c, src/editor.c, plugins/splitwindow.c:
   Call editor_apply_update_prefs() from editor_create_widget() so
   correct tab width and other settings are applied for Split Window
   plugin.


2009-10-14  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/keybindings.c:
   Don't include trailing newlines when using reflow command.
 * src/notebook.c:
   Add stock close buttons to notebook tab popup menu.
 * src/plugindata.h, src/document.c, src/plugins.c, src/ui_utils.c,
   plugins/geanyfunctions.h:
   Add document_get_notebook_page() to API.
   Minor edits of dox.
 * data/templates/files/file.html, data/templates/files/file.php:
   Fix wrong escaping (patch by dmaphy, thanks - closes #2878138).
 * src/interface.c, src/ui_utils.c, geany.glade:
   Move Tools configuration items to top of menu.
 * src/keybindings.c, src/search.c:
   Fix warning when using Find in Files with no documents open; make
   keybinding work in this case.


2009-10-13  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/notebook.c, src/plugindata.h, src/plugins.c, src/ui_utils.c,
   src/ui_utils.h, plugins/geanyfunctions.h, plugins/splitwindow.c:
   Make Split Window 'Show current document' button have a drop-down
   menu to select the other documents.
   Add new API function ui_menu_add_document_items().


2009-10-13  Lex Trotman  <elextr(at)gmail(dot)com>

 * src/build.c:
   Fix sensitivity settings for compile and build toolbar items.


2009-10-12  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/templates.c:
   Don't use filetype submenus for templates (slower to navigate, often
   only 1 per-filetype anyway).
 * src/templates.c:
   Put old filetype template menu items in 'Old' submenu as they should
   be removed after the 0.19 release.
 * src/keybindings.c, src/keybindings.h, src/pluginutils.c:
   Add GeanyKeyGroup callback support, which allow keybinding callbacks
   to be ignored if inappropriate so a later keybinding with the same
   key combination can intercept it. (Also group callbacks are usually
   tidier than separate callbacks).
   Remove special handling for GEANY_KEYS_EDIT_COMPLETESNIPPET.
 * src/templates.c, src/build.c, src/utils.c, src/utils.h,
   src/project.c, src/search.c, src/editor.c, src/ui_utils.c,
   plugins/classbuilder.c:
   Make utils_free_pointers() take 4 arguments, add to API.
 * src/templates.c, src/tools.c, src/ui_utils.c:
   Fix memory leaks with gtk_container_get_children().


2009-10-12  Lex Trotman  <elextr(at)gmail(dot)com>

 * src/build.c:
   Ensure that old style build config is not loaded if it does
   not exist.


2009-10-12  Frank Lanitz  <frank(at)frank(dot)uvena(dot)de>

 * THANKS, src/about.c, po/LINGUAS, po/gl.po:
   Added Galician translation.
   Thanks to José Manuel Castroagudín Silva.


2009-10-11  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * geany.glade, THANKS, src/about.c, src/document.c, src/encodings.c,
   src/interface.c:
   Apply set default encoding for existing files only if the files are
   non-Unicode (patch by Alexey Antipov, thanks).


2009-10-04  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/highlighting.c:
   Move new_styleset() and preprocessor setup code into
   styleset_c_like().
 * src/highlighting.c:
   Call apply_filetype_properties() from styleset_c_like().


2009-10-03  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * doc/geany.txt, doc/geany.html:
   Improve information about predefined keybindings which are
   commonly used across applications (patch by Lex Trotman, thanks).
 * src/printing.c:
   Enable embedded page setup properties in the (Unix) Print dialog
   on newer GTK versions (closes #2870596).
 * src/highlighting.c:
   Map global types (read from tags files) to keyword style for
   filetype Java.


2009-10-01  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/templates.c:
   Fix wrong creation of filetype template menu items for custom
   filetypes.
 * src/highlighting.c:
   Use jscript_keyword for SCE_HB[A]_WORD markup styles.
 * src/templates.c:
   Group 'New with template' items by filetype submenu (currently only
   for toolbar menu).
   Show custom file template items before filetype template items.
 * src/templates.c, src/interface.c, src/geanymenubuttonaction.c,
   geany.glade:
   Only use one 'New with template' submenu - reparent as needed.
 * src/templates.c:
   Don't create templates/filetype.none either.
 * src/templates.c:
   Warn if custom template file no longer exists.


2009-09-30  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/symbols.c:
   Add missing icon for Java packages in the Symbol List.


2009-09-30  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/highlighting.c, data/filetypes.vala:
   Add Vala keywords to conf file.
 * src/templates.c, doc/geany.txt, doc/geany.html:
   Read custom file templates from $prefix/share/geany/templates/files
   as well as user dir.
 * src/templates.c, data/templates, data/templates/files,
   data/templates/files/file.rb, data/templates/files/file.html,
   data/templates/files/main.java, data/templates/files/main.c,
   data/templates/files/main.cxx, data/templates/files/file.php,
   data/templates/files/main.d, data/templates/files/program.pas,
   data/templates/files/main.py, data/templates/files/file.tex,
   wscript, Makefile.am:
   Move filetype template defaults into custom file template files.


2009-09-29  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/symbols.c, tagmanager/perl.c:
   Change Perl tag parser to ctags SVN r601. This removes support for
   buggy local/my/our but it parses constant/format/labels and should
   be less buggy overall (closes #2861232).
 * src/templates.c, src/utils.c, src/utils.h, src/symbols.c:
   Add utils_get_file_list_full() which can optionally sort or include
   a full path for each list item.
 * src/utils.c, src/plugindata.h, src/plugins.c:
   Add utils_get_file_list_full() to API.


2009-09-28  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/keybindings.c, src/sidebar.c, src/sidebar.h,
   src/makefile.win32, src/project.c, src/prefs.c, src/treeviews.c,
   src/callbacks.c, src/notebook.c, src/treeviews.h, src/document.c,
   src/main.c, src/symbols.c, src/Makefile.am, src/ui_utils.c,
   po/POTFILES.in, wscript:
   Rename treeviews.[hc] -> sidebar.[hc].
 * data/filetypes.common:
   Remove unused [styling] arguments.
 * src/highlighting.c, data/filetypes.markdown,
   data/filetypes.restructuredtext:
   Remove style defaults from the code - just read them from
   configuration files.
 * src/highlighting.c, HACKING:
   Add apply_style_entries() to simplify implementing styleset_foo().
 * src/highlighting.c:
   Remove filetype keyword defaults from the code - just read them from
   configuration files.
 * src/highlighting.c:
   Add sci_set_keywords() wrapper.


2009-09-27  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * scripts/create_py_tags.py:
   Make the code a bit more pythonic.
 * doc/images/build_menu_commands_dialog.png,
   doc/images/main_window.png:
   Add new images referenced in the documentation.
 * doc/geany.html, doc/geany.txt:
   Several documentation improvements (patch by Lex Trotman, thanks).
 * src/pluginutils.c:
   Fix setting the appropriate page of the combined plugins
   preferences dialog.


2009-09-27  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/keybindings.c:
   Only focus toolbar goto line entry when pressing keybinding if it's
   visible (patch by Eugene Arshinov, thanks).
 * src/callbacks.c:
   Focus editor after entering a number in the goto line toolbar entry.
 * configure.in:
   Use AC_PATH_PROG instead of which for portability (patch by Erik
   Southworth, thanks).
 * src/plugins.c:
   Show plugins that only implement plugin_configure_single() in the
   multiple-configure dialog as a page with a configure button on it.
   Add padding for multiple-configure dialog.
   Make the multiple-configure dialog notebook tabs scrollable.
 * src/pluginutils.c, src/pluginutils.h:
   Don't build pluginutils.o if HAVE_PLUGINS is not defined.
 * src/pluginprivate.h, src/plugindata.h, src/pluginutils.c,
   src/plugins.c, src/pluginutils.h, src/plugins.h, po/POTFILES.in,
   plugins/geanyfunctions.h, plugins/filebrowser.c:
   Add plugin_show_configure() API utility function.
   Add File Browser popup menu 'Preferences' item.
 * src/highlighting.c:
   Add get_keyfile_ints() instead of using tmp_style hack.
 * src/highlighting.c, data/filetypes.xml:
   Change new html_asp_default_language markup pref to use integer,
   not hex in config file.
   Fix minor issue with changing pref back to 0.
 * src/highlighting.c:
   Fix possible segfault in get_keyfile_int() if key value is malformed.


2009-09-24  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * THANKS, src/about.c, src/highlighting.c, data/filetypes.xml:
   Add "html_asp_default_language" pseudo style to filetypes.xml
   to allow setting the used language in embedded ASP code
   (patch by Ross McKay, thanks).
 * src/filetypes.xml:
   Update VBScript keywords (patch by Ross McKay, thanks).


2009-09-24  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/keybindings.c, THANKS:
   Apply patch from Lex Trotman to make 'Reflow block/lines(s)'
   keybinding use line breaking column when enabled.
 * src/document.c:
   Fix showing the document before reload dialog when opening an
   already-open file.
 * src/pluginprivate.h, src/plugins.c, doc/pluginsymbols.c:
   Add plugin_configure_single() plugin symbol which is easier to
   implement than plugin_configure() but won't support a
   multiple-plugin configure dialog.
 * src/plugins.c:
   Show multiple plugins in the 'Configure Plugins' dialog.


2009-09-22  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * doc/geany.txt, doc/geany.html:
   Change 'Foo tab in preferences dialog' titles to 'Foo preferences'.
   Minor edits.
 * doc/geany.txt, doc/geany.html:
   Add 'Toolbar entries' section.
 * doc/geany.txt, doc/geany.html:
   Update 'Go to line' keybinding description.
 * doc/geany.txt, doc/geany.html:
   Split keybinding table into group tables; update KB links.


2009-09-21  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/build.c:
   Fix compiler warnings about uninitialised variables.
 * src/callbacks.c, src/document.c:
   When reloading files, use the previously set encoding instead of
   detecting it again (closes #2862041).
 * configure.in:
   Turn on automake silent rules if supported.


2009-09-21  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/utils.c:
   Speed up sorting in utils_get_file_list(). This reduces the file
   browser delay on displaying a big directory, e.g. /usr/bin.
 * src/build.c:
   Expand command entry width when expanding Build Commands dialog.
 * src/build.c:
   Split Build Commands dialog notes label and edit text.
 * src/build.c:
   Add padding for Build Commands dialog separators.
   Add colons for regex field labels; fix 1 capitalisation.
 * src/build.c:
   Fix none filetype Build Commands dialog label.
   Make group labels bold.
 * src/build.c, src/ui_utils.h, src/dialogs.c, src/notebook.c,
   src/ui_utils.c:
   Add & use ui_label_set_markup(), ui_label_new_bold().
 * src/ui_utils.h, src/printing.c, src/tools.c, src/project.c,
   src/prefs.c, src/dialogs.c, src/geanyentryaction.c,
   src/plugindata.h, src/vte.c, src/search.c, src/ui_utils.c:
   Make ui_entry_add_clear_icon() take a GtkEntry, not GtkWidget.
 * src/keybindings.c:
   Make 'Go to Line' keybinding focus the toolbar entry if visible.


2009-09-20  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/filetypes.c, src/filetypes.h, src/symbols.c,
   tagmanager/parsers.h, tagmanager/makefile.win32,
   tagmanager/abc.c, tagmanager/Makefile.am, data/filetypes.abc,
   data/filetype_extensions.conf, wscript:
   Add new filetype: Abc (patch by Eric Forgeot, thanks).
 * tagmanager/php.c:
   Merge recent changes from the CTags project to further improve
   PHP symbol parsing.


2009-09-17  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/printing.c:
   Fix wrong alignment of printed pages when page headers are
   disabled (closes #2856822).
   Plug a small memory leak and improve function signature of
   add_page_header().
 * src/keyfile.c:
   Save an if expression.
 * src/ui_utils.c:
   After clearing a text field using the embedded clear icon, put the
   input focus into this text field.


2009-09-17  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * plugins/filebrowser.c:
   Free file list memory whilst iterating the list.
   Minor formatting fixes.
 * src/utils.c, src/utils.h:
   Add foreach_dir() API macro.
   Update API docs for utils_get_file_list().
 * wscript, src/queue.c, src/editor.c, src/Makefile.am, src/queue.h,
   po/POTFILES.in:
   Remove queue.[hc] - use GQueue instead of GeanyQueue.
   Beep if there are no more snippet positions.
   Limit length of snippet positions queue to 20.


2009-09-16  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/keybindings.c, src/callbacks.c, src/search.c:
   Make Goto Tag commands use the current selection if present (useful
   for selecting part of a tag or for ReST section names with spaces
   in).
 * src/document.c:
   Don't move the cursor when reloading.
 * src/plugindata.h, src/editor.c, src/editor.h:
   Make editor_prefs.snippets hash table private (not a pref).


2009-09-15  Frank Lanitz  <frank(at)frank(dot)uvena(dot)de>

 * src/main.c:
   Remove deprecated --debug flag. Please use --verbose/-v instead.


2009-09-15  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/search.c:
   Show Find in Files stderr output in messages window instead of
   debug window so that invalid regex messages can be seen easily.
   Combine FIF stdout and stderr callback code.


2009-09-14  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/utils.c:
   Fix opening filenames beginning with two dots (closes #2858487).
 * src/interface.c, src/highlighting.c, src/prefs.c, src/filetypes.c,
   src/filetypes.h, src/main.c, doc/geany.txt, doc/geany.html,
   data/filetypes.common, geany.glade:
   Update syntax highlighting after changing the 'Invert syntax
   highlighting colors' pref, instead of requiring a restart.
   Remove filetypes.common invert_all option - use 'Invert syntax
   highlighting colors' pref instead (closes #2854525).
 * src/prefs.c, src/dialogs.c, src/dialogs.h:
   Add 'Allow' button when showing the conflicting keybinding dialog.
   Make dialogs_show_question_full() use GTK dialog on Windows if
   button text is not the stock yes/no items.
   Add dialogs_show_prompt() which also has an 'Apply' button.
 * src/queue.c, src/queue.h:
   Add warning that GeanyQueue may be removed.
 * src/keybindings.c, src/editor.c, src/editor.h:
   Change snippet_goto_next_cursor() to
   editor_goto_next_snippet_cursor() as it's in editor.h.
   Avoid using GPOINTER_TO_INT macro.


2009-09-13  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/keybindings.c:
   Fix 'Reflow block' command when at the last paragraph and there's
   no last newline (patch by Eugene Arshinov, thanks).
 * HACKING:
   Add 'Compiler options & warnings' section.
   Update Style section to be clearer about code alignment and show
   some example code.
   Other minor edits.


2009-09-12  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/keybindings.c, src/sciwrappers.c, src/sciwrappers.h,
   src/plugindata.h, src/plugins.c, src/editor.c,
   plugins/geanyfunctions.h:
   Add sci_set_marker_at_line(), sci_delete_marker_at_line(),
   sci_is_marker_set_at_line() to the plugin API (thanks to Yura
   Siamashka).
   Add sci_toggle_marker_at_line().
   Fix SciFuncs alignment.


2009-09-11  Lex Trotman  <elextr(at)gmail(dot)com>

 * src/build.c:
   Fix erroneous free of returned string in prepare_run_script.


2009-09-10  Frank Lanitz  <frank(at)frank(dot)uvena(dot)de>

 * data/filetypes.latex:
   Changing default value for showing pdf and dvi to ensure to take
   *.pdf and *.dvi file.


2009-09-07  Frank Lanitz  <frank(at)frank(dot)uvena(dot)de>

 * src/about.c, THANKS:
   Change language string for Slovenian translation.


2009-09-07  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * tagmanager/txt2tags.c:
   Fix multi-byte character constant comparison.
 * src/treeviews.c:
   Fix Gtk warning when trying to update documents popup menu item
   sensitivity before they exist.


2009-09-06  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/plugins.c:
   Improve the opening string in the plugin manager dialog.
 * doc/geany.css:
   Use "max-width" to set the document width of the generated
   HTML documentation to let the text be auto-wrapped.
 * src/prefs.c, src/tagmanager/include/guregex.h,
   src/tagmanager/include/tm_tagmanager.h:
   Remove trailing spaces (patch by André Hentschel, thanks).
 * src/treeviews.c:
   Fix a compiler warning.
 * src/document.c:
   Fix crash when opening documents.
 * src/build.c, src/build.h, src/project.c:
   Adjust coding style (no code changes).
 * src/build.c, src/project.c:
   Use NZV() macro instead of strlen() to check for empty strings.
   Remove the FOREACH_GEANYBUILDCMD_ENTRY() macro.
 * doc/plugins.dox, plugins/geanyfunctions.h, src/document.c,
   src/geanyobject.c, src/geanyobject.h, src/plugindata.h,
   src/plugins.c, THANKS:
   Add new plugin signal: "document-before-save".
   Add get_line_end_position(), set_target_start(), set_target_end(),
   replace_target() to the plugin API
   (patch by Eugene Arshinov, thanks).
   Add new plugin signal: "document-filetype-set" (closes #2852286).
 * data/filetype_extensions.conf, data/filetypes.txt2tags, src/about.c,
   src/filetypes.c, src/filetypes.h, src/plugindata.h, src/symbols.c,
   tagmanager/Makefile.am, tagmanager/makefile.win32,
   tagmanager/parsers.h, tagmanager/txt2tags.c, tagmanager/txt2tags.c,
   wscript, THANKS:
   Add new filetype: Txt2Tags (patch by Eric Forgeot, thanks).


2009-09-04  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/treeviews.c, src/document.c:
   Apply patch from Thomas Martitz to improve sidebar type-ahead code:
   Use gtk_notebook_set_current_page() instead of
   document_open_file_full() when choosing an item from the documents
   list.
   Avoid using goto in document_open_file_full().


2009-09-03  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/treeviews.c, src/document.c, src/document.h, THANKS:
   Enable type-ahead find for sidebar symbols and documents tabs
   (patch by Thomas Martitz, thanks).
 * src/build.c:
   Fix 2 free's of possibly uninitialized pointers.


2009-09-03  Lex Trotman  <elextr(at)gmail(dot)com>

 * src/build.c, src/filetypes.h, src/filetypes.c:
   Only write filetype config files when build command or regex is
   actually changed.  Removed commented code in src/filetypes.c.
 * src/build.c:
   Ensure uses of filename are protected against nulls when running
   a build command and give status message if not.


2009-09-01  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/plugins.c:
   Remove plugin from plugin manager dialog on unloading if it no
   longer exists or is incompatible.


2009-08-31  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/plugins.c:
   Add warning if only one of the plugin_key_group[_info] symbols is
   defined for a plugin.
 * src/templates.c, src/highlighting.c, src/dialogs.c, src/filetypes.c,
   src/filetypes.h, src/document.c, src/main.c, src/symbols.c,
   TODO:
   Merge custom-filetypes branch:
   Support adding custom filetype files e.g. filetypes.Foo.conf.
 - Code:
   Allow GeanyFiletype::extension to be NULL.
   Add note about using GeanyFiletype pointer instead of filetype_id
   for filetypes.c function arguments.
   Replace styleset_none() with styleset_default().


2009-08-30  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/prefs.c:
   Show the sidebar if either the documents or the symbols list are
   enabled (related to #1876107).


2009-08-29  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/build.c, src/filetypes.c:
   Fix compiler warnings.
 * src/utils.c:
   Fix removing leading double slashes in filenames which are used for
   network resources on Windows (closes #2844085).


2009-08-27  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/keybindings.c:
   Fix Make keybindings (patch by Lex Trotman, thanks).
 * src/geany.h:
   Define G_GNUC_WARN_UNUSED_RESULT if GLib < 2.10.
 * doc/plugins.dox:
   Mention Files link at top for header files; demoplugin.c.
   Minor edits; remove 'far from being complete'.
 * src/keyfile.c, src/keyfile.h, src/main.c,
   data/filetype_extensions.conf, HACKING:
   Remove --generate-data-files argument & code - just edit
   filetype_extensions.conf by hand (filetype order was broken
   anyway).
   Add *.H extension for C++ (useful for non-Windows systems).


2009-08-27  Lex Trotman  <elextr(at)gmail(dot)com>

 * src/build.c:
   Fix implementation of loading old project files with base
   directories. Use project_make_base_path instead of re-
   implementing.  Now depends on project.c reading base dir
   prior to calling load_build_menu.
 * src/build.c:
   Change usage of project base directory to conform with
   previous documented behavior when loading old project files.
 * src/build.c:
   Change make custom and make object to ignore make in base path
   when reading old project file settings.  Changed some indent
   spaces to tabs. Fix missing compile menu accelerator.


2009-08-26  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * doc/plugins.dox:
   Add warning about not using undocumented features.
   Add reference to HACKING for plugin API development.
 * HACKING:
   Add section 'Plugin API/ABI design'.
 * src/keybindings.h, src/makefile.win32, src/project.h,
   src/filetypes.h, src/Makefile.am, wscript:
   Use GEANY_PRIVATE to hide some fields from plugins.
 * src/build.c:
   Fix invalid memory read (#2844632, patch by Lex Trotman, thanks).
 * src/build.c, src/build.h, src/project.c:
   Use build_ prefix for 3 functions in build.h; add a static modifier.


2009-08-25  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * tagmanager/php.c:
   Improve parsing of PHP functions by requiring a valid modifier or
   whitespace before the 'function' keyword to ignore some false
   positives like function tags inside comments
   (patch by Harold Aling, thanks).
 * tagmanager/python.c:
   Don't parse comments after import statements and other tags
   (closes #2838938, patch by Huandari Lopez, thanks).


2009-08-25  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * data/filetypes.markdown:
   Add filetypes.markdown for configuration (thanks to Jon Strait).
 * src/build.c, src/keybindings.c, src/keybindings.h, src/plugindata.h,
   src/pluginutils.c, src/plugins.c, src/pluginutils.h,
   plugins/geanyfunctions.h:
   Remove GeanyKeyGroup struct from the API - plugins should not set
   these fields.
   Make keybindings_set_item() duplicate the name and label fields
   (needed by GeanyLua) and return a keybinding pointer.
   Add keybindings_get_item() to the API (in case it's useful).
   Move some keybinding code out of plugin source files.


2009-08-24  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/build.h, src/project.h, src/plugindata.h, src/filetypes.h:
   Don't generate build.h API docs until everything is approved and
   functions are actually in geany_functions.
   Move new GeanyFiletype and GeanyProject field(s) to end of struct
   as they may be changed or made private later.
   Break ABI for fields removed.


2009-07-30  Lex Trotman  <elextr(at)gmail(dot)com>

 * src/build.h, src/build.c, src/keybindings.c, src/filetypes.c
   src/keyfile.c, src/project.c:
   Changed names of symbols visible in build API to GEANY_xxx.


2009-07-29  Lex Trotman  <elextr(at)gmail(dot)com>

 * src/project.h, src/project.c, src/build.c:
   Remove make_in_base_dir and run_cmd fields from project structure.
   Replaced by build functionality.  Remove incorrect use in src/build.c
   build_run_cmd function.


2009-07-28  Lex Trotman  <elextr(at)gmail(dot)com>

 * src/project.h, src/project.c:
   Removed unused project_get_make_dir function, this is now per
   command.


2009-07-28  Lex Trotman  <elextr(at)gmail(dot)com>

 * src/build.c, src/build.h, src/project.c, src/keyfile.c,
   src/filetypes.c:
   Fix some more warnings.
   Fix commented out execute/stop toolbar code in build.c.
   Add extra plugins documentation for GBO_TO_CMD and GBO_TO_GBG macros.
   Changed build.h api so all functions prefixed with build_.


2009-07-27  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/build.c, src/build.h, src/project.c:
   Fix some gcc warnings with '-Wall -W -ansi' enabled.


2009-07-25  Lex Trotman  <elextr(at)gmail(dot)com>

 * src/build.c:
   Fixed leaks and crashes due to inconsistent use of static vs dynamic
   strings when reading old format configuration & project files.
 * src/build.c, src/project.c:
   Fixed GLib array assertion warnings when no project filetypes are
   available to be saved.

2009-07-24  Lex Trotman  <elextr(at)gmail(dot)com>

 * src/build.c:
   Fix build warnings.


2009-07-22  Lex Trotman  <elextr(at)gmail(dot)com>

 * src/build.h, src/build.c, src/project.c:
   Created and documented plugins interface to build menu.
   Factored out new get_cmd_group function.
   Changed name of remove_command function to be consistent with the
   rest of the interface & changed calls in project.c.
 * src/Makefile.am, wscript:
   Added build.h to installed files lists.

2009-07-20  Lex Trotman  <elextr(at)gmail(dot)com>

 * doc/geany.txt:
   Updated manual to match build-menu capability.


2009-07-19  Lex Trotman  <elextr(at)gmail(dot)com>

 * src/build.c, src/build.h:
   Added set_build_non_ft_wd_to_proj() for use by project dialog.
   Improved interpretation of run_in_base_dir from old [build-settings]
   Added spacing to build commands dialog
 * src/project.c:
   Removed run in base path option from project dialog and added button
   to set working directories to d the same.


2009-07-18  Lex Trotman  <elextr(at)gmail(dot)com>

 * src/build.c:
   Re-incorporated toolbar changes in trunk accidently excluded in merge

2009-07-17  Lex Trotman  <elextr(at)gmail(dot)com>

 * src/build.c:
   Fixed substitute %f etc in commands
   Fixed potential leak in build_replace_placeholder
   Fixed leak in prepare_run_script (Thanks for patch Thomas)
   Fixed build_replace_placeholder to not require document.

2009-07-17  Lex Trotman  <elextr(at)gmail(dot)com>

 * src/build.c, src/build.h, src/filetypes.h, src/filetypes.c:
   Fixed crash and lots of warnings, deleted some commented out code.
 * geany.glade, src/keyfile.c, src/prefs.c, src/prefs.h, src/project.c:
   Removed make command from preferences and associated code

2009-07-16  Lex Trotman  <elextr(at)gmail(dot)com>

 * src/build.c, src/build.h:
   Incorporated patch for working directory field (thanks Thomas)
   Removed run_in_base_dir option and associated code that it replaces
   Improved handling of old config files and mapping to new ones.

2009-07-15  Lex Trotman  <elextr(at)gmail(dot)com>

 * src/build.h, src/build.c:
   Changed to itterate over entries in build commands dialog to allow
   additional fields to be added
   Implement support for multiple run commands
 * data/filetypes.latex:
   Implement configured commands and labels for latex.


2009-07-14  Lex Trotman  <elextr(at)gmail(dot)com>

 * src/build.h, src/build.c:
   added dialog support for error regular expressions from multiple
   sources and storing and loading them fixed some typos and memory
   leaks
 * src/filetypes.c, src/filetypes.h, project.c:
   added support for using error regexes from multiple sources


2009-07-11  Lex Trotman  <elextr(at)gmail(dot)com>

 * src/filetypes.h, src/filetypes.c, src/build.c, src/build.h,
   src/project.c:
   Removal of build menu item source made redundant by the following fix
 * src/build.c:
   Corrected priority oreder and loading of filetype dependent build
   menu items saved in the project file.  Added print routine for
   debugging command sources and priorities set compile symbol
   PRINTBUILDCMDS true to enable

2009-07-10  Lex Trotman  <elextr(at)gmail(dot)com>

 * src/build.c:
   fixed problem loading old format filetype files, some formatting
   fixes fixed saving new format files
   added operation for clear button on build commands dialog
 * src/filetypes.c:
   fixed loading and saving filetype files


2009-07-09  Lex Trotman  <elextr(at)gmail(dot)com>

Configurable Build Menu Changes

 * doc/geany.html, doc/geany.txt:
   Updated build menu section to new functionality
 * src/build.h, src/build.c:
   Largly re-written, configurability added, Latex code removed
 * src/filetypes.h, src/filetypes.c:
   Filetype structure updated to add new command pointers, configuration
   load and store changed
 * src/keybindings.h, src/keybindings.c:
   Changed to address new command storage structure.
 * src/keyfile.c:
   Changed to load/store new configuration.
 * src/main.c:
   Minor change to initialisation order.
 * src/msgwindow.c:
   Changed to address new menu item storage structure.
 * src/project.h, src/project.c:
   Changed to load/store the new configuration info.

2009-08-24  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/keybindings.c, src/keybindings.h, src/plugindata.h,
   src/pluginutils.c, src/plugins.c, src/pluginutils.h,
   doc/pluginsymbols.c, plugins/geanyfunctions.h,
   plugins/splitwindow.c:
   Update PLUGIN_KEY_GROUP() macro so it doesn't allocate any
   GeanyKeyBinding or GeanyKeyGroup structs, so we don't need to break
   the ABI when adding fields to them.
   Add plugin_set_key_group() for plugins to dynamically set a
   keybinding group (e.g. for the Lua script plugin). Used in Split
   Window plugin as an example.
   Improve keybinding docs a little.


2009-08-20  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * doc/Doxyfile.in, plugins/geanyfunctions.h, plugins/genapi.py:
   Add geanyfunctions.h to API docs.
 * plugins/splitwindow.c:
   Set the cursor color for the split window.


2009-08-18  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/callbacks.c:
   Fix 'Open Selected File' for unsaved new documents.
 * src/keybindings.c, src/keybindings.h, src/prefs.c:
   Fix updating main menu accelerators after changing keybindings
   (thanks to Lex Trotman).
 * src/callbacks.c:
   Fix using 'Insert date' keybinding when a custom date string has
   not been set.
 * src/pluginprivate.h, src/pluginutils.c, src/plugins.c:
   Merge Plugin and GeanyPluginPrivate structs.


2009-08-18  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/keybindings.c:
   Fix non-working Home and End keys on numpads.


2009-08-17  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * doc/geany.txt, doc/geany.html, NEWS:
   Add 'Scope autocompletion' section.
   Add 'Tools menu items' section to explain configuration files
   submenu, reload configuration item.
   Minor updates/fixes.


2009-08-16  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/document.c:
   Add a translation hint to an ambiguous format string.
 * src/Makefile.am:
   Add missing include path to fix 'make distcheck'.
 * src/win32.c:
   Fix opening of local files in the browser on Windows.
 * New release: Geany 0.18 "Kaine".
 * configure.in, geany.nsi, geany_private.rc, win32-config.h, wscript,
   src/geany.h, doc/geany.html, doc/geany.txt:
   Post-release version bump.


2009-08-15  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/editor.c:
   Temporarily disable reshowing calltips when the autocompletion
   list was closed implicitly by not choosing an item to fix
   problems with wrongly displayed calltips.
 * src/template.c:
   Add missing 'coding' cookie to the Python filetype template.
 * doc/images/pref_dialog_edit_completions.png,
   doc/images/pref_dialog_toolbar.png:
   Update images for Geany 0.18.


2009-08-13  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * wscript:
   Add command '--hackingdoc' to create the HTML form of the
   HACKING file.


2009-08-12  Frank Lanitz  <frank(at)frank(dot)uvena(dot)de>

 * po/pt_PT.po, po/LINGUAS:
   Added a first Portugese (Portugal) translation based on work done at
   launchpad by e.g. André Glória and Alexandre Jesus.
 * src/main.c: Fix a minor typo on --help call.


2009-08-11  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/highlighting.c:
   Call get_keyfile_wordchars() in highlighting_init_styles().


2009-08-09  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * data/filetypes.ada:
   Add missing file.
 * src/keybindings.c:
   Switching notebook tabs now works for the currently used notebook
   widget instead of always using the documents notebook.
 * src/document.c, src/document.h, src/documentprivate.h,
   doc/plugins.dox:
   Small corrections to some API docs.


2009-08-02  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/build.c, src/win32.h, src/win32.c:
   Expand system environment variables (%variableName%) on Windows when
   running Build commands.


2009-07-30  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/keybindings.c:
   Rename 'Reflow lines/paragraph' to 'Reflow lines/block' because in
   future using an indent block is more useful e.g. for ChangeLog
   files.
 * scintilla/LexMarkdown.cxx, scintilla/makefile.win32,
   scintilla/include/SciLexer.h, scintilla/include/Scintilla.iface,
   scintilla/KeyWords.cxx, scintilla/Makefile.am, src/highlighting.c,
   src/about.c, src/filetypes.c, src/filetypes.h, THANKS,
   tagmanager/parsers.h, tagmanager/makefile.win32,
   tagmanager/markdown.c, tagmanager/Makefile.am, wscript:
   Add Markdown filetype (patch by Jon Strait, thanks).
 * src/pluginprivate.h, src/pluginutils.c, src/plugins.c:
   Fix disconnecting plugin signal id when not using geany_object.
 * src/filetypes.c:
   Add filetype_make_title() instead of using:
   ft->title = g_strdup_printf(_("%s source file"), ft->name);
   It also supports "%s file" strings.


2009-07-29  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/pluginprivate.h, src/utils.h, src/plugindata.h,
   src/stash.c, src/pluginutils.c, src/plugins.c, src/pluginutils.h,
   doc/pluginsymbols.c, doc/plugins.dox, plugins/geanyfunctions.h,
   plugins/filebrowser.c:
   Add plugin_signal_connect() for connecting plugin signals at
   runtime and also for connecting to any GObject signal.
   Add 'Plugin Utility Functions' on main page.
   Add foreach_array() macro.
 * src/keybindings.c, src/sciwrappers.c, src/sciwrappers.h,
   src/document.c, src/editor.c:
   Rename 3 sci functions to sci_set_target_start(),
   sci_set_target_end(), sci_replace_target() to match the SCI_
   message name.


2009-07-28  Frank Lanitz  <frank(at)frank(dot)uvena(dot)de>

 * wscript: Fix compiling error with waf.


2009-07-28  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/pluginprivate.h, src/makefile.win32, src/plugindata.h,
   src/pluginutils.c, src/plugins.c, src/pluginutils.h,
   src/Makefile.am, wscript:
   Move plugin_* utility functions to pluginutils.c.
   Add pluginprivate.h.
 * src/editor.c:
   Fix reshowing calltip in the wrong document.


2009-07-25  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * doc/geany.txt, doc/geany.html:
   Add some general information about auto-completion capabilities
   (patch by Lex Trotman, thanks).


2009-07-25  Frank Lanitz  <frank(at)frank(dot)uvena(dot)de>

 * po/LINGUAS, po/sl_SI.po, THANKS, src/about.c:
   Added a first Slovenian translation. Thanks to Joze Klepec.


2009-07-24  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/highlighting.c:
   Use full styleset_foo[_init] function name as argument to
   init_styleset_case() and styleset_case() macros so it's easier to
   understand the code.
 * src/keybindings.c, src/keybindings.h, src/sciwrappers.c,
   src/sciwrappers.h, src/editor.c, src/editor.h, THANKS,
   doc/geany.txt, doc/geany.html:
   Add 'Reflow lines/paragraph' keybinding, defaults to Ctrl-J.
   Heavily based on a patch by Eugene Arshinov (thanks).
   Add sci_lines_split(), sci_lines_join(), sci_text_width(),
   editor_strip_line_trailing_spaces().


2009-07-24  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/editor.c:
   Attempt to fix reshowing calltips after the autocompletion list
   has been shown.
   Reshow calltips also when the autocompletion list was closed
   implicitly by not choosing an item.

2009-07-23  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/utils.c, src/utils.h, src/toolbar.c, src/plugindata.h,
   plugins/splitwindow.c:
   Change utils_str_remove_chars() to work in place; fix allocating on
   the stack (the string length could exhaust the stack size).
 * src/templates.c, src/build.c, src/utils.c, src/utils.h,
   src/printing.c, src/callbacks.c:
   Rename utils_str_replace() utils_str_replace_all(), setting a
   'gchar **haystack' argument instead of returning a new string.
 * src/editor.c:
   For the Tabs indent type, remove spaces when unindenting (only) if
   there are no tabs on the line.
   Group undo actions for (un)indenting of multiple lines.
 * src/document.c, src/editor.c:
   Fix scrolling horizontally after finding a search match with the
   search bar or Find Next/Previous which is off-screen.
 * src/keybindings.c:
   Fix GLib warning when pressing a key with no documents open.


2009-07-21  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/utils.c:
   Start unifying usage of @a and @c markup elements in API docs,
   to be continued.
 * src/main.c, src/prefs.c, src/toolbar.c, src/toolbar.h:
   Show/hide the toolbar without a restart when the setting in the
   preferences dialog is changed (closes #2824785).
 * src/dialogs.c, src/document.c, src/editor.c, src/encodings.c,
   src/filetypes.c, src/keybindings.h, src/main.c, src/msgwindow.c,
   src/navqueue.c, src/plugindata.h, src/prefs.c, src/toolbar.c,
   src/toolbar.h:
   Continue unifying usage of @a and @c markup elements in API docs.


2009-07-21  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/document.c:
   Remove relative/untidy path elements when creating new documents
   with a filename (e.g. from the command-line) (#2823998).


2009-07-20  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/callbacks.c:
   Disable 'Recent Projects' menu item if the list of recent projects
   is empty.
 * src/win32.c:
   Fix some harmless compiler warnings.
 * plugins/geanyfunctions.h, plugins/splitwindow.c, src/plugindata.h,
   src/plugins.c, src/utils.c, src/utils.h:
   Move utils_str_remove_chars() from the plugins/splitwindow.c to
   src/utils.c and add it to the plugin API.
   Make utils_str_remove_chars() work on a new copy of the input string
   instead of modifying it in place.
 * src/toolbar.c:
   Remove underscores from the toolbar items labels.
 * src/utils.c:
   Fix typos.
 * plugins/splitwindow.c:
   Fix broken 'Show the current document' tool button icon.


2009-07-20  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/treeviews.c, src/callbacks.c, src/stash.c, src/stash.h,
   src/keyfile.c:
   Add stash_group_add_widget_property() so we can save any widget's
   read/write properties.
   Use Stash for ui_prefs.sidebar_page setting.
 * src/utils.h, src/prefs.c, src/keyfile.c, src/symbols.c:
   Make foreach_ptr_array() use an integer argument for its
   implementation, as this is more useful potentially than a gpointer*
   argument, and more straightforward.
   Add foreach_c_array(), foreach_ptr_array() to API.
 * src/utils.c, src/utils.h, src/document.c:
   Remove relative/untidy path elements when opening documents (closes
   #2823998).
 * src/treeviews.c:
   Fix showing project name for documents list files with no
   subdirectory (oops).
 * src/dialogs.c:
   Fix checking whether to overwrite when using the Rename button in
   the 'Save As' dialog.


2009-07-19  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/dialogs.c:
   Don't use the main window as parent for dialog boxes if it is not
   yet realised.
   Set titles for message dialogs.


2009-07-18  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/toolbar.c:
   Display item labels instead of raw names in the toolbar editor.
   Apply changes in the toolbar editor instantly.
   Show icons in the toolbar editor.
   Speed up toolbar editor dialog creation.
 * src/templates.c:
   Improve inserting of comment templates like File header or licence
   notices. The comment information are now read from the filetype
   configuration files.

2009-07-16  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/document.c:
   Enable file monitoring for files which are written to disk by Geany
   for the first time.
 * src/filetypes.c:
   Fix broken special case handling when detecting filetypes from a
   shebang or other special file headers.


2009-07-16  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/search.c:
   Make Mark All keybinding clear search highlighting when there's no
   current word.
 * src/search.c:
   Fix wrong match length when using Mark with regex.
 * src/geanyobject.c, src/geanyobject.h, src/treeviews.c,
   src/keyfile.c, src/main.c:
   Add 'Show Paths' documents list popup item.
   Add "load_settings" core-only signal emitted just after loading
   main keyfile settings; useful to delay building UI elements until
   settings have been read.
 * src/treeviews.c:
   Fix GTK warning when right-clicking on default tag tree.
 * src/treeviews.c, src/treeviews.h, src/keyfile.c, src/main.c:
   Add treeviews_finalize().
   Remove tv.popup_openfiles field.


2009-07-15  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/highlighting.c:
   Fix building on GTK 2.8 (patch by Eugene Arshinov, thanks).


2009-07-14  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/utils.c:
   Quote the uri before passing it to the browser when opening a
   website (closes #2818635).
 * src/win32:
   Fix broken 'builtin' Run command for HTML files on Windows.


2009-07-14  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/editor.c:
   Properly fix wrong brace highlighting of non-brace character.
 * src/editor.c:
   Allow autocompletion in Perl double-quoted strings.
   Don't autocomplete in Perl single-quoted strings (closes #2821061).
   Don't autocomplete in Perl q() strings.
 * data/filetypes.common:
   Make Mark highlighting brighter.
 * src/interface.c, doc/geany.txt, doc/geany.html, geany.glade:
   Use hyphen for auto-feature terms.
 * src/plugindata.h, src/geany.h, src/filetypes.c, src/filetypes.h,
   src/document.h, src/main.c:
   Add documents_foreach() API macro that skips invalid docs.
   Make filetypes[], documents[] part of the API again.
   Add GEANY() macro for sharing geany symbols between API and core.
 * src/plugindata.h, src/plugins.c, doc/plugins.dox,
   plugins/saveactions.c, plugins/export.c, plugins/geanyfunctions.h,
   plugins/demoplugin.c, plugins/filebrowser.c, plugins/splitwindow.c,
   plugins/htmlchars.c, plugins/geanyplugin.h, plugins/Makefile.am,
   plugins/classbuilder.c, wscript:
   Add geanyplugin.h single include for plugin API; update all core
   plugins to use it.
   Add sci_set_font() to API.
   Update plugin howto.
 * src/filetypes.c, src/filetypes.h:
   Remove filetypes_foreach_named().


2009-07-13  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/highlighting.c, src/about.c, src/filetypes.c, src/document.c,
   src/document.h, src/main.c, THANKS:
   Apply patch from Eugene Arshinov to reload color schemes via menu
   (thanks).
 * src/filetypes.c:
   Reload filetypes.common after saving it.
 * src/editor.c:
   Improve wrong brace highlighting of non-brace character.


2009-07-10  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/editor.c:
   Delay highlighting matching braces by 100ms, which speeds up
   scrolling with the arrow keys.
 * src/keybindings.c, src/keybindings.h, src/search.c, src/search.h:
   Add 'Mark All' keybinding.
 * tagmanager/diff.c:
   Show relative paths in diff filename tags.


2009-07-09  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/highlighting.c:
   Fix setting keyword list 'classes' for Haxe
   (pointed out by Andreas Mokros, thanks).


2009-07-09  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/interface.c, src/keyfile.c, src/editor.c, src/editor.h,
   doc/geany.txt, doc/geany.html, geany.glade:
   Add 'Drop rest of word on completion' pref.
 * src/editor.c, doc/geany.txt, doc/geany.html:
   If autocompletion is already visible when forcing completion, show
   document word completion instead of tag completion.
   Docs: Minor edits of related prefs items.
 * src/printing.c, src/dialogs.c, src/dialogs.h, src/plugindata.h:
   Add warning when printing and editor font is not monospaced.
   Fix using GtkMessageType instead of gint param for
   dialogs_show_msgbox*().
   Add missing G_GNUC_PRINTF macro check to API dialog funcs.
 * src/editor.c:
   Support 'tab indents, space aligns' style for auto-indentation
   (closes #2789109).


2009-07-08  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/document.c, src/documentprivate.h:
   Rework the GIO based file monitoring code. Now it is used only
   to indicate a possible change of the file, the real check if the
   file has been changed is performed by stat().
 * data/filetypes.common, doc/geany.txt, src/highlighting.c:
   Add style 'line_height' to increase the line height.
   Add style 'marker_mark' and change style 'marker_search' to
   define the style used for marked search results.
 * doc/geany.txt, doc/geany.html:
   Add the new 'Autocomplete all words in document' pref to the docs.


2009-07-08  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/interface.c, src/keyfile.c, src/editor.c, src/editor.h,
   doc/geany.txt, doc/geany.html, geany.glade, TODO:
   Add 'Autocomplete all words in document' pref.
   Use 'autocompletion' in dialog and docs, not 'auto completion'.
 * src/editor.c:
   Fix limiting number of word completion entries too much.
 * src/editor.c, TODO, icons/16x16/classviewer-var.xpm,
   icons/16x16/classviewer-method.xpm, icons/16x16/Makefile.am:
   Show autocompletion icons for tag symbols - for now only tags with
   an arglist have the 'function/method' icon, all others have the
   'variable' icon.
   Note: XPMs were created from the PNGs with the ImageMagick 'convert'
   program.
 * src/highlighting.c:
   Highlight D WYSIWYG backtick `strings` and r"strings" (closes
   #1895745).


2009-07-06  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/highlighting.c, src/utils.h, plugins/splitwindow.c:
   Fix removing underscores in translated string using no_underscore()
   macro.
   Set a tooltip for the Split Window plugin's Show Current tool button.
   Add utils_strdupa() macro.
 * src/interface.c, geany.glade:
   Use stock Select All icon now we have >= GTK 2.8.
 * src/treeviews.c:
   Fix using project name for document items that start with the
   project base path but don't match it e.g. ".../geany-plugins"
   instead of ".../geany" when project name is 'geany'.


2009-07-04  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/build.c:
   Fix warnings when the toolbar does not contain the Run button.
 * tagmanager/lua.c:
   Fix wrong parsing of complex expressions in the Lua parser.
 * src/editor.c, src/geany.h, src/keybindings.c, src/plugindata.h,
   src/utils.c:
   Remove unnecessary enums.
 * scintilla/*, scintilla/include/*, src/plugindata.h:
   Update Scintilla to version 1.79.
 * src/document.c, src/editor.c, src/sciwrappers.c, src/sciwrappers.h,
   src/search.c:
   Use the new Scintilla struct names prefixed with 'Sci_'.
 * TODO, data/filetypes.common, doc/geany.html, doc/geany.txt,
   src/highlighting.c:
   Add second argument to the 'line_wrap_indent' styling setting to
   control the new Scintilla indentation mode for wrapped lines.
 * src/toolbar.c:
   Properly close the toolbar editor on delete-events.
   Fix warnings and possible crashes in the toolbar editor when the list
   of displayed toolbar items is empty.
 * data/filetypes.tcl:
   Update Tcl keywords for Tcl 8.6 (patch by Witek Mozga, thanks).
 * src/plugins.c:
   Make the plugin manager dialog a bit bigger.


2009-06-30  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * doc/geany.html, doc/geany.txt:
   Fix wrong default values for the 'Show Calltip' keybinding.


2009-06-29  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * data/filetypes.tcl, src/symbols.c:
   Fix duplicate "context_action_cmd" key.
   Use different icons for "Methods" and "Procedures" in the symbol
   list for Tcl files.
 * src/filetypes.c:
   Fix a small memory leak.
 * doc/geany.html, doc/geany.txt, src/editor.c, src/keybindings.c,
   src/keybindings.h, src/plugindata.h:
   Make the Scintilla keybindings 'Delete to end of line' and
   'Go to end of display line' configurable.
 * geany.nsi:
   Fix a typo (closes #2813624).


2009-06-28  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * tagmanager/tcl.c, src/symbol.c:
   Improve parsing of Tcl files (parsing new Tcl8.6 style classes,
   methods and namespaces).
   Patch by Witek Mozga, thanks.


2009-06-25  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * data/ui_toolbar.xml, doc/geany.txt, doc/geany.html, src/ui_utils.c,
   src/toolbar.c, src/toolbar.h:
   Remove ui_toolbar.xml Configuration Files menu item.
   Add a real toolbar editor dialog.
 * geany.glade, src/callbacks.c, src/callbacks.h, src/interface.c,
   src/prefs.c:
   Add a button in the preferences dialog and an item for the toolbar
   popup menu to run the toolbar editor dialog.


2009-06-25  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/dialogs.c:
   Fix Gtk NULL warning with gtk_file_chooser_set_current_folder().
   Fix using locale encoding for default Save As dialog path.
 * src/editor.c:
   Beep when trying to activate the '...' autocompletion item.
   Limit (forced) document word completion to
   autocompletion_max_entries.
   Beep if no completions are shown when forcing autocompletion.


2009-06-24  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * data/ui_toolbar.xml, src/toolbar.c:
   Add 'Build' toolbar button to the default layout.


2009-06-24  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/editor.c:
   If forcing autocompletion and there's nothing else to show, complete
   from words in the current document (using code from Enrico's
   'AutoComplete Test' plugin).


2009-06-23  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/plugins.c:
   Add debug message if plugin has not set a name for its keybinding
   group.
 * data/filetype_extensions.conf:
   Add *.m4 for shell scripts.


2009-06-22  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/highlighting.c, doc/geany.txt, doc/geany.html,
   data/filetypes.common, TODO:
   Make filetypes.common named styles use the "default" named style for
   all missing style fields.
   Set named styles to usually leave the background style empty. This
   currently allows C-like filetypes to have a common default
   background color.
   Allow hard-coded colors to use -1 for the default color.
   Add some highlighting style examples to the manual.


2009-06-21  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/templates.c:
   Create initial template files with proper platform-specific line
   ending characters.


2009-06-20  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * data/ui_toolbar.xml, doc/geany.txt, src/build.c,
   src/geanymenubuttonaction.c, src/geanymenubuttonaction.h, src/main.c,
   src/plugins.c, src/templates.c, src/toolbar.c, src/toolbar.h,
   src/ui_utils.c, src/ui_utils.h:
   Instantly reload (i.e. rebuild) the toolbar when ui_toolbar.xml is
   saved within Geany.
   Refactor some related code.
 * tagmanager/conf.c:
   Strip trailing spaces from "Key" tags.
 * geany.nsi:
   Quote the full filename to the Geany executable when creating the
   "Open with Geany" context menu item.
 * plugins/splitwindow.c:
   Avoid using deprecated GTK API.
 * src/log.c, src/main.c:
   Properly clean up the logging mechanism.
 * src/build.c:
   Fix LaTeX view commands on Windows (part of #2807688).
 * src/prefs.c:
   Add a popup menu for the keybinding list in the preferences dialog
   to easily expand and collapse all groups.
   Refactor the keybindings code for the preferences dialog, prefix all
   related functions.
 * src/main.c, src/ui_utils.c, src/ui_utils.h:
   Init stock items before creating the toolbar (closes #2809324).
 * wscript:
   Generate the geany.pc file also on Windows.
 * src/ui_utils.c:
   Invert the logic to determine which Save All we want to use:
   Use the Tango like icon only for the Tango theme and the Gnome / GTK
   like icon for any other themes.


2009-06-18  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/highlighting.c, README.Packagers, HACKING:
   Remove gsd_* default styles, use named styles instead.
   Note: this relies on filetypes.common being installed.
   Add load_style_entries(), which makes style initialization
   simpler, used in styleset_c_like_init().


2009-06-17  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/win32.c:
   Prevent possible crash on Windows when not setting an initial
   directory for native File Open/Save dialogs.
 * data/filetypes.xml, src/highlighting.c:
   Add style 'jscript_regex' for filetype HTML
   (patch by Chris Macksey, thanks).


2009-06-17  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/filetypes.h, src/document.c, src/document.h, src/ui_utils.c:
   Make GeanyDocument::file_type always be non-NULL, even for a new
   document with no filetype set.
 * src/editor.c:
   Only autocomplete scope for scopes matching the current filetype's
   language.
 * data/filetypes.java, data/filetypes.cpp, data/filetypes.vala,
   data/filetypes.haxe, data/filetypes.common, data/filetypes.glsl,
   data/filetypes.actionscript, data/filetypes.cs,
   data/filetypes.ferite, data/filetypes.c, data/filetypes.d,
   data/filetypes.javascript, HACKING:
   Make C++, D lexer filetypes use named styles (apart from uuid,
   verbatim, regex styles).


2009-06-16  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/dialogs.c:
   Don't explicitly change the current directory of the Save As dialog
   so that it uses the last used directory.


2009-06-14  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/encodings.c, src/encodings.h, src/plugindata.h:
   Add Japanese encoding "CP932" (patch by Ryūsei Yamaguchi, thanks).
 * src/editor.c:
   Remove dead code.
   When completing from the macro list, put the cursor after
   the inserted text.


2009-06-12  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * tagmanager/pascal.c:
   Fix type definitions being parsed as functions.
 * src/editor.c:
   Don't autocomplete in unterminated strings as well.
 * src/templates.c, src/utils.h, src/dialogs.c, src/plugindata.h,
   src/filetypes.c, src/ui_utils.c, plugins/saveactions.c:
   Remove data_ptr argument to foreach_[s]list() macros, as using
   node->data is enough sometimes; this makes the macro a bit more
   efficient too.
   Add foreach_[s]list() macros to the plugin API docs.


2009-06-11  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * scintilla/LexPascal.cxx:
   Backport fix from Scintilla CVS:
   Pascal lexer hanging on file that starts with 'interface' after
   whitespace.


2009-06-11  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * waf:
   Update Waf to 1.5.7.
 * wscript:
   Overwrite installation prefix on Windows only if it wasn't
   specified explicitly.


2009-06-10  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/editor.c:
   Display calltips for Pascal symbols in the Pascal way (#2803945).
 * tagmanager/pascal.c:
   Fix wrongly set return values for procedures (closes #2803945).
 * doc/Doxyfile.in, tagmanager/include/tm_work_object.h,
   tagmanager/include/tm_source_file.h,
   tagmanager/include/tm_workspace.h:
   Fix doxygen warnings.


2009-06-10  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/editor.c, tagmanager/include/tm_workspace.h,
   tagmanager/tm_workspace.c, TODO:
   Autocomplete scoped fields like struct members when typing '.' (and
   also '->' or '::' in C/C++).
   Save all tag types for C/C++ when generating a global tags file, so
   we can use autocompletion for structs also.
   Merge tm_workspace_find_scope_members(),
   tm_workspace_find_namespace_members() (currently not built) from
   Anjuta 2.24.1 tagmanager.


2009-06-09  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * tagmanager/pascal.c:
   Parse Pascal calltips (closes #2802640).


2009-06-09  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/filetypes.c, src/ui_utils.c:
   Add filetypes.common Configuration Files menu item.


2009-06-08  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/callbacks.c:
   Add backslash to the wordchars on Windows when using
   'Open Selected File'.
 * src/wscript:
   Add support (configure, build and install) for building on Windows
   and cross-compiling for Windows using the Waf build system.


2009-06-05  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/toolbar.c:
   Set status bar text instead of showing a dialog when saving
   ui_toolbar.xml because the user might save several times.
 * src/editor.c:
   Fix redrawing due to colourising just after the document is first
   drawn. Now colourising should happen before the first draw.
 * src/utils.c, src/highlighting.c, data/filetypes.common:
   Fix segfault on parsing a filetypes.* style definition that has < 4
   fields.
   Allow style definitions to have missing fields to use the default
   style fields.


2009-06-05  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/images.c, src/about.c, src/ui_utils.c, THANKS:
   Add a more Tango like icon for 'Save All' (by Jesse Mayes, thanks).
 * plugins/classbuilder.c:
   Fix wrongly created header guards when the class filenames contains
   dashes (patch by PCMan, thanks).
 * data/filetypes.matlab:
   Add build_settings section to allow executing Matlab scripts.
 * src/document.c:
   When closing a document, mark it as invalid before removing it from
   the documents notebook (this fixes wrong Save All button state when
   closing an unsaved document because the "switch-page" signal handler
   was using old data).


2009-06-03  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/highlighting.c, doc/geany.txt, doc/geany.html:
   Support toggling bold/italic when using a named style, e.g.:
   commentdockeyword=commentdoc,bold,italic
   Improve named style docs.


2009-06-01  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/build.c, src/editor.c:
   Fix crashes when parsing the output of a compiler which reports
   errors on line 0.


2009-06-01  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/highlighting.c:
   Support named styles also for filetypes.common [styling] entries.
 * doc/geany.txt, doc/geany.html, HACKING:
   Update docs for named styles in filetypes.* files.
 * src/symbols.c:
   Fix grouping symbol list children when parent name has "." character
   in for reStructuredText and Conf filetypes.
 * tagmanager/python.c:
   Fix grouping functions/classes under a nested function.


2009-05-30  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * geany.spec.in:
   Adjust icon paths (patch by Dominic Hopf, thanks).
 * doc/geany.txt, doc/geany.html, src/toolbar.c:
   Add 'Replace' toolbar button (closes #2798225).


2009-05-30  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/utils.c, src/highlighting.c, TODO:
   Implement named styles support for filetypes.* using a
   filetypes.common [named_styles] section e.g.:
   foo=0xc00000;0xffffff;false;true
   bar=foo
   These can be used in e.g. filetypes.c as:
   comment=foo


2009-05-28  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/ui_utils.c:
   Fix wrong sensitiveness of the Redo buttons (closes #2797862).


2009-05-28  Frank Lanitz  <frank(at)frank(dot)uvena(dot)de>

 * THANKS, src/about.c, po/lb.po, po/LINGUAS:
   Added Luxembourgian translation. Huge thanks to Laurent Hoeltgen.


2009-05-27  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/build.c:
   Remove quote_executable() as it is not used anymore.
   When creating the geany_run_script.bat use the "%0" variable
   expansion and quote it for the "del" command (closes #2797172).
 * src/win32.c:
   On Windows, fallback to the literal build command line if searching
   for the command in the system path failed (related to #2795923).
   Properly terminate the resulting strings when reading the stdout
   and stderr of any spawned commands on Windows.


2009-05-26  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/win32.c:
   Use the wide character versions of native Windows File dialogs.
 * src/project.c:
   Fix wrong initialisation of the default project path button callback
   in the preferences dialog.
 * Makefile.am, configure.in, geany.nsi, geany.spec.in, wscript,
   geany_private.rc, icons/16x16/Makefile.am, icons/16x16/geany.png,
   icons/48x48, icons/48x48/Makefile.am, icons/48x48/geany.png,
   icons/Makefile.am, icons/geany.ico, icons/scalable,
   icons/scalable/Makefile.am, icons/scalable/geany.svg,
   src/makefile.win32:
   Move the icons geany.png and geany.ico into the icons directory.
   Add a 16x16 pixel Geany icon and the scalable SVG icon.
   Drop the pixmaps directory.


2009-05-22  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/keybindings.c:
   Improve MRU document switching so there are no duplicates in the
   list and documents switched to whilst the dialog is open are
   ignored. Also beep when cycling through to the first document in the
   list.


2009-05-21  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/dialogs.c:
   Fix broken 'Cancel' button in the Save As dialog.


2009-05-20  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/editor.c:
   Fix multiline indent when selection covers text on the last line.
 * src/notebook.c:
   Show current document in bold in tab popup menu.
 * src/editor.c, tagmanager/python.c, TODO:
   Parse Python calltips.


2009-05-19  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/symbols.c, tagmanager/python.c:
   Parse Python import statements to get symbol completion for the
   imported module names.
 * src/editor.c, src/editor.h:
   Make some only locally used functions static.
   Fix wrong sanity check.
 * src/build.c:
   Fix quoting the build command string on Windows (closes #2791769).
   This broke when we made build commands run synchronously on Windows,
   now we don't need to special quote the commands anymore.


2009-05-19  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/editor.c:
   Drop rest of word to the right of cursor when autocompleting (do we
   need a pref for this?).


2009-05-18  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/sciwrappers.c, src/sciwrappers.h, src/editor.c:
   Add sci_set_selection().
 * doc/geany.txt, doc/geany.html:
   Update manual for MRU switching.
 * src/callbacks.c, src/editor.c, src/editor.h:
   Make indenting with the Tabs indent type preserve spaces on the line,
   so it works for the 'tab indents, space aligns' formatting style.


2009-05-17  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * tagmanager/python.c:
   Fix missing symbols for variables when an equal sign is used
   in a comment on the same line as the variable declaration.
   Backport change from CTags SVN to keep the parser more in sync:
   Add support for Cython constructs to the Python parser.
 * src/search.c:
   Remember the additional Find in Files search flags at startup.
 * src/dialogs.c:
   Don't close the Save As dialog when saving the file didn't succeed.


2009-05-13  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/keyfile.c:
   Remember scribble cursor position.
 * src/keybindings.c, TODO:
   Implement Most-Recently-Used document switching when pressing
   Ctrl-Tab keybinding. (It's probably not perfect, but works OK).


2009-05-13  Frank Lanitz  <frank(at)frank(dot)uvena(dot)de>

 * data/latex.tags: Added some more commands from unit.sty and
   moderncv.sty.


2009-05-12  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/symbols.c, doc/geany.txt, doc/geany.html,
   tagmanager/makefile.win32, tagmanager/nestlevel.c,
   tagmanager/nestlevel.h, tagmanager/python.c, tagmanager/rest.c,
   tagmanager/Makefile.am, wscript:
   Merge unstable branch:
   Add reStructuredText scope information for tags (for symbol list
   grouping).
   Read custom system global tags files from $prefix/share/geany/tags;
   Closes #2778923.
   Show the number of tags in a user global tags file (instead of the
   running total) in the debug message.
   Also print debug messages when loading a tag file manually or for
   default global tags files e.g. python.tags.
 - code:
   Move NestingLevel tags code into a separate file, add functions.
 - docs:
   Add 'Installation prefix' section instead of quoting '/usr/local'
   each time.
   Update for custom system global tags files.


2009-05-11  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/highlighting.c:
   Unset maybe previously keywords when setting up Scintilla for
   XML files. This fixed wrong highlighting after switching back to
   filetype XML from another one.
 * src/utils.c:
   Use plain old fwrite() in utils_write_file(). g_file_set_contents()
   is only used when explicitly requested.
 * src/dialogs.c:
   Remove unnecessary call to g_intern_string() to fix build with
   GLib 2.8 (closes #2790051).


2009-05-10  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/ui_utils.c:
   Make the clear icon of entry fields act on the release event, not
   on the press event like for other buttons.
 * src/editor.c:
   Refactor some multiple used code into get_multiline_comment_style().
 * src/main.c:
   Create parent directories if necessary when checking for the
   configuration directory on startup (closes #2784577).


2009-05-08  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * plugins/filebrowser.c:
   When a filter is set, apply it only to files, not directories and
   apply the filter to the UTF-8 name of the file as the filter string
   itself is also UTF-8.
 * src/utils.c, src/utils.h, src/highlighting.c, src/printing.c:
   Add utils_color_invert() and use it in highlighting.c and printing.c.
 * scintilla/include/Scintilla.h, scintilla/scintilla_changes.patch:
   Backport change from Scintilla CVS:
   Change capitalisation of header file to suit cross-compilation on
   Unix for Windows.


2009-05-03  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * wscript, scintilla/*, scintilla/include/*, src/plugindata.h:
   Update Scintilla to version 1.78.
 * src/editor.c, src/highlighting.c:
   Update Pascal styles as they changed in Scintilla.


2009-05-02  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/printing.c:
   Ignore the invert syntax highlighting colours setting when printing
   to not print characters on a dark background (closes #2785244).
 * New release: Geany 0.17 "Wessex".
 * configure.in, geany.nsi, geany_private.rc, win32-config.h, wscript,
   src/geany.h, doc/geany.html, doc/geany.txt:
   Post-release version bump.


2009-04-30  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/callbacks.c, src/callbacks.h, src/main.c:
   Update the View->Fullscreen menu item when fullscreen state is
   changed externally (e.g. by the window manager).
 * src/project.c:
   Fix passing wrong pointer to the File Open dialog for the Run
   command in the Project Properties dialog.


2009-04-27  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/callbacks.c, src/keyfile.c, src/main.c, src/ui_utils.c,
   src/ui_utils.h:
   Remember the active sidebar page between sessions.
 * src/project.c:
   Add a recent project item after creating a new project.
 * tagmanager/ruby.c:
   Fix wrong parsing of string literals (closes #2781264).
 * src/treeviews.c:
   Fix setting focus to the editor widget after changing the selection
   in the symbol list.


2009-04-25  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/symbols.c:
   Prevent crashes when two or more top level items in the symbol
   list have the same name (closes #2778246).


2009-04-24  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/keybindings.c:
   Manually show the main notebook tab bar menu when Shift-F10 is
   pressed. This broke when we disabled the default GTK tab bar menu.
 * src/document.c:
   Fix a crash when USE_GIO_FILEMON is enabled at closing a document
   which was reloaded shortly before.
 * src/editor.c:
   When the editor menu is opened by the Menu key, use the text cursor
   position for retrieving the current word. This fixes disabled
   Go to Tag items in the menu (#2780044).
 * src/treeviews.c:
   Set the "ellipsize" property of GtkCellRendererText to automatically
   shorten the path and file names in the Documents list.
 * doc/geany.html, doc/geany.txt, src/build.h:
   Increase the amount of highlighted build error messages to 100.
   At least for LaTeX we need higher values as there is a lot of
   informative output before any errors are reported.
 * src/filebrowser.c:
   Use the startup path as the initial directory for the filebrowser
   plugin when no project and no files are opened
   (patch by Matias Gea, thanks; closes #2780521).


2009-04-21  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/dialogs.c, src/document.c, src/document.h, src/treeviews.c,
   src/utils.c, src/utils.h:
   Ellipsize tab labels and some status messages for very long
   filenames (closes #2777348).
 * src/plugins.c, src/plugindata.h, plugins/geanyfunctions.h:
   Add utils_str_middle_truncate() and
   document_get_basename_for_display() to the plugin API.
 * doc/geany.html, doc/geany.txt, src/toolbar.c:
   Add new toolbar element: Print (patch by Roland Baudin, thanks).
 * doc/geany.html, doc/geany.txt, src/document.c, src/document.h,
   src/keyfile.c:
   Add a hidden preference 'use_safe_file_saving' to save files to disk
   by creating a temporary file first. This has serious side effects,
   please read the documentation before enabling this.
 * src/build.c:
   Make build commands on Windows run synchronously to avoid problems
   with reading build commands' output.
 * doc/geany.html, doc/geany.txt, src/build.c, src/build.h:
   Limit the amount of highlighted build error messages in the
   Compiler window to 50 for performance reasons.


2009-04-20  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/callbacks.c, src/editor.c, src/keybindings.c, src/keybindings.h,
   src/prefs.c:
   Replace our own GEANY_KEYS_MODIFIER_MASK by
   gtk_accelerator_get_default_mod_mask() which gives the same result.
 * src/filetypes.c, src/symbols.c, tagmanager/Makefile.am,
   tagmanager/makefile.win32, tagmanager/parsers.h, wscript:
   Add a trivial symbol parser for NSIS files.


2009-04-19  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/dialogs.c:
   Hide the extra file open dialog options in an expander to make the
   dialog more compact by default and to provide more space for the
   file view.
   Remove the filename field as it is also provided by GTK itself with
   more features like auto-completion.
   Watch the 'show-hidden' property of the file chooser widget using
   GObject's "notify" signal which gives accurate results and remove
   the hack using the "selection-changed" signal.


2009-04-17  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/callbacks.c, src/callbacks.h, src/encodings.c, src/filetypes.c:
   Prevent double execution of radio menu item "activate" or "toggled"
   signal handlers.
   Move 'Set Encoding' callback function into encodings.c.


2009-04-16  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/project.c:
   Add some missing 'void's in function definitions.
   If the project base path is './', just use the path of the project
   config file instead of appending './'.
 * src/treeviews.c, src/project.c:
   When a project is loaded, replace the project base path with the
   project name in the Documents sidebar for parent items
   (closes #2723679).


2009-04-15  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/keyfile.c, src/keyfile.h, src/project.c:
   Fix duplicating the recent files and projects lists when closing
   a project.
 * src/build.c, src/callbacks.c, src/dialogs.c, src/document.c,
   src/editor.c, src/encodings.c, src/filetypes.c,
   src/geanymenubuttonaction.c, src/geanyobject.c, src/geanywraplabel.c,
   src/highlighting.c, src/keybindings.c, src/keyfile.c, src/main.c,
   src/msgwindow.c, src/navqueue.c, src/notebook.c, src/plugins.c,
   src/prefs.c, src/queue.c, src/sciwrappers.c, src/socket.c,
   src/symbols.c, src/templates.c, src/toolbar.c, src/tools.c,
   src/treeviews.c, src/ui_utils.c, src/utils.c, src/vte.c:
   Remove all G_LIKELY macros inside g_return_if_fail() statements as
   this is redundant.
   Remove many other G_LIKELY/G_UNLIKELY macros which doesn't make much
   sense to keep the code more readable.


2009-04-09  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/symbols.c:
   When updating global type definitions for opened documents, take
   also C++ namespace symbols into account and don't ignore symbols
   which are defined inside a scope.


2009-04-09  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/plugins.c:
   Don't show 'plugin is not binary compatible' messages on the status
   bar, only the status window.


2009-04-08  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/socket.c:
   When opening files from a remote instance on X11, set the window
   server time to encourage window managers to pop up the main window
   (related to #2735467 and #2276179).
 * src/main.c:
   When finished sending filenames to a remote instance, notify the
   environment that we finished starting up.


2009-04-08  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/ui_utils.h, src/utils.h, src/ui_utils.c:
   Sort Configuration Files menu.
   Add ui_menu_sort_by_label().
   Add foreach_list() macro.
 * src/editor.c:
   Fix autocompletion.


2009-04-07  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/main.c:
   Fix setting a wrong default window size when starting without an
   existing configuration.
 * src/editor.c, src/sciwrappers.c, src/sciwrapper.h:
   Make editor_highlight_braces() static.
   Remove unused wrapper functions.
 * src/editor.c, src/symbols.c, src/symbols.h:
   Prevent showing an empty macro list.
   Show only macros of the same filetype instead of all macros of all
   loaded filetypes.
 * src/ui_utils.c:
   Don't add opened project files to the GtkRecentManager.


2009-04-07  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/editor.c:
   Add Configuration Files item for snippets.conf.
 * src/highlighting.c, src/symbols.c:
   Fix 2 old uses of filetype IDs.


2009-04-06  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/interface.c, src/printing.c, geany.glade:
   Minor string improvements (spotted by Jean-Philippe Moal, thanks).


2009-04-05  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/ui_utils.c:
   Add sanity checks in ui_lookup_widget() just to be safe.
 * THANKS, TODO, geany.glade, src/about.c, src/interface.c,
   src/keyfile.c, src/main.c, src/plugindata.h, src/project.c,
   src/project.h, src/ui_utils.c, src/ui_utils.h:
   Add "Recent Projects" menu to the Project menu
   (#2728630, patch by Elias Pschernig, thanks).
 * doc/geany.txt, doc/geany.html:
   Describe how to build Geany using the Waf build system.
 * src/build.c, src/callbacks.c, src/dialogs.c, src/document.c,
   src/document.h, src/editor.c, src/encodings.c, src/filetypes.c,
   src/geanymenubuttonaction.c, src/geanyobject.c, src/geanywraplabel.c,
   src/highlighting.c, src/keybindings.c, src/keyfile.c, src/log.c,
   src/main.c, src/msgwindow.c, src/navqueue.c, src/notebook.c,
   src/plugins.c, src/prefs.c, src/queue.c, src/sciwrappers.c,
   src/socket.c, src/symbols.c, src/templates.c, src/toolbar.c,
   src/tools.c, src/tools.h, src/treeviews.c, src/ui_utils.c,
   src/utils.c, src/utils.h, src/vte.c:
   Start using G_LIKELY/G_UNLIKELY macros to gain a little more
   performance when building the code with gcc.
 * src/highlighting.c:
   Fix typo in the G_LIKELY checks, introduced in last commit.
   Fix the size of the styles array.
 * src/document.c:
   Show a message dialog when renaming a file fails.


2009-04-03  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/build.c:
   Remove checks for the .pdf or .dvi files when viewing a LaTeX file
   (as we did for all other files in SVN r3382).


2009-04-03  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * src/filetypes.c, doc/geany.txt:
   Move ActionScript to the Script group.
   Fix wording & typo.
 * src/templates.c, src/utils.h, src/highlighting.c, src/dialogs.c,
   src/plugindata.h, src/filetypes.c, src/filetypes.h, src/plugins.c,
   src/symbols.c, src/ui_utils.c, plugins/saveactions.c,
   plugins/htmlchars.c:
   Merge reorder-filetypes branch:
   Make GEANY_FILETYPES_NONE = 0, sort filetype IDs randomly (so we can
   append randomly without breaking the ABI).
   Make None filetype name = title = _("None").
   Add foreach_slist() macro.
   Add filetypes_by_title list to GeanyData for plugin API access
   - a list of filetype pointers, which includes the None filetype
   first. This list stays constant by the time plugins are initialized,
   so you can use e.g. g_slist_nth_data(filetypes_by_title, n) to
   index the sorted list.


2009-03-31  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * doc/geany.txt, doc/geany.html, src/main.c:
   Add widget names for the menubar and toolbar.
 * src/msgwindow.c:
   When hiding the messages window, set the input focus back to the
   editor widget (part of #1910393).


2009-03-30  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * scintilla/LexOthers.cxx, src/highlighting.c, tagmanager/conf.c:
   Backport recent changes from Scintilla CVS to add partial support
   for RFC2822 styled text using the Properties lexer.
   Ignore leading whitespace for config files and RFC2822 text.
 * data/filetypes.actionscript:
   Update/fix ActionScript keywords (patch by Chris Macksey, thanks).
 * THANKS, src/treeviews.c:
   Display file/directory icons in the Documents sidebar
   (patch by Simon Treny, thanks).


2009-03-29  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * doc/geany.html, doc/geany.txt, geany.glade, src/callbacks.c,
   src/callbacks.h, src/interface.c, src/keyfile.c, src/main.c,
   src/plugindata.h, src/prefs.c, src/toolbar.c, src/toolbar.h:
   Add an option to allow appending the toolbar to the main menu bar
   to save some vertical space.
   Allow setting toolbar icon size to very small (menu icon size).


2009-03-27  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/keyfile.c, src/utils.c, src/utils.h:
   Add utils_path_skip_root(), a relative path safe variant of
   g_path_skip_root (forgotten patch by Colomban Wendling, #2518658).
 * src/keyfile.c, src/main.c:
   Allow negative window coordinates when saving and restoring the
   position of the main window.
   Restore the main window position and size *after* the window has
   been realised to get it positioned accordingly
   (this affects at least Windows).


2009-03-26  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/main.c, src/plugins.c, src/win32.c, src/win32.h:
   Use g_win32_get_package_installation_directory_of_module() on Windows
   with newer GLib versions instead of deprecated API.
 * src/keybindings.c:
   Don't manage the last used documents list when quitting to prevent
   errors by accessing invalid memory (may close #2533990).


2009-03-25  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/build.c:
   Delete the geany_run_script.sh immediately after execution
   to prevent leaking old copies when the script was quit unexpectedly
   (closes #2710482, patch by Martin Olsson, thanks).
 * src/keyfile.c:
   Check whether skipping the root element of a document's filename
   succeeded and use the filename itself if not (e.g. on relative
   filenames, #2702844).
   Use the locale encoded filename when saving session files.
 * src/callbacks.c:
   Re-set the quitting status after all documents have been closed on
   quitting.


2009-03-24  Frank Lanitz  <frank(at)frank(dot)uvena(dot)de>

 * plugins/htmlchars.c:
   Remove usage of deprecated sci_get_selected_text() from plugin.


2009-03-24  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/callbacks.c:
   Delay disk file checks when switching between documents a little
   bit to avoid fast, unintentional page switching in some cases.
 * plugins/geanyfunctions.h, src/plugindata.h, src/plugins.c,
   src/sciwrappers.c, src/sciwrappers.h:
   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).


2009-03-22  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * tagmanager/css.c:
   Fix wrong parsing of CSS tags when the definition block starts on
   a new line (reported by Dominic Hopf, thanks).


2009-03-20  Frank Lanitz  <frank(at)frank(dot)uvena(dot)de>

 * plugins/htmlchars.c:
   Extend plugin by feature to bulk replace and replace on input for
   special characters to their HTML entities.


2009-03-19  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/build.c:
   Update build menu items after changing anything in the
   'Set Includes and Arguments' dialog.
   Disable Compile/Run buttons/menu items when Compile/Run commands are
   set but empty.
   Reset current build directory to the base directory after reading a
   "Leaving directory" message when parsing Make output
   (closes #2694479, patch by Andrea Mazzoleni, thanks).
 * src/notebook.c:
   Fix wrong display of the filename in the tab bar menu for new files.
 * src/dialog.c:
   Set the initial directory for the Save As dialog only once on
   initialisation.
   Add a shortcut of the project's base directory to the
   File Open/Save As dialogs when a project is open for faster access.
 * src/splitwindow.c:
   Add keybindings for the split actions.


2009-03-16  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/search.c:
   When using Find All in the Find dialog (in Session and Document),
   display the right amount of matches.
   Fix the display of the matches once per line (I broke the original
   patch).
 * src/ui_utils.c:
   Fix wrong directory selection behaviour in all Open Folder dialogs
   (closes #2688020, patch by Marcel Stimberg, thanks).
 * src/socket.c:
   Don't present the main window of a running instance when starting
   a second instance separately.


2009-03-15  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/socket.c:
   Reduce default file permissions on the Unix Domain socket file
   (reported by Jörg Sommer, thanks).


2009-03-13  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * doc/geany.txt, doc/geany.html, geany.glade, src/interface.c,
   src/main.c, src/plugindata.h, src/plugins.c, src/prefs.c,
   src/prefs.h:
   Add an option to set an additional plugin lookup path.
 * src/search.c:
   When using Find All in the Find dialog, display matches only once
   per line in the messages window (patch by Bert Vermeulen, thanks).


2009-03-10  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * data/filetype_extensions.conf, data/filetypes.actionscript,
   src/about.c, src/document.c, src/filetypes.c, src/filetypes.h,
   src/highlighting.c, src/plugindata.h, src/symbols.c,
   tagmanager/Makefile.am, tagmanager/actionscript.c,
   tagmanager/makefile.win32, tagmanager/parsers.h, THANKS, wscript:
   Add filetype ActionScript (patch by Chris Macksey, thanks).
   Update type keywords only for real C-like languages.
   Fix wrong sorting of Assembler and Ada filetypes.
 * plugins/classbuilder.c:
   Use G_DEFINE_TYPE in the GTK+ class template instead of manual code.
   Other minor cleanups.


2009-03-05  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/notebook.c:
   Don't use menu item images for the tab bar menu to save some
   vertical space.
 * data/filetypes.fortran, tagmanager/fortran.c:
   Add keyword 'extends' and fix Fortran parser to support the
   'extends' keyword (closes #2654492).
 * geany.glade, plugins/export.c, src/interface.c, src/printing.c,
   src/search.c, src/toolbar.c:
   Fix punctuation.


2009-03-03  Frank Lanitz  <frank(at)frank(dot)uvena(dot)de>

 * src/about.c, THANKS:
   Added Jari Rahkonen to list of Finnish translators.


2009-03-02  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * geany.pc.in:
   Adjust minimum required GTK version.
 * src/Makefile.am, wscript:
   Add main.h to the list of installed header files.
 * geany.glade, src/document.c, src/documentprivate.h, src/interface.c,
   src/notebook.c, src/ui_utils.c:
   Remove GeanyDocumentPrivate::tabmenu_label.
   Disable the default tab bar menu for the main notebook widget and
   use a custom menu instead which lists all open files as usual plus
   'Close Other Documents' and 'Close All' menu items.


2009-02-27  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/callbacks.c, src/search.c, src/ui_utils.c, src/ui_utils.c:
   Move ui_set_search_entry_background() into ui_utils.c.
   Change the background colour of the search entries in the Find
   and Replace dialogs according to the search results like in the
   toolbar search field.
   Add images to the 'Replace' and 'Replace and Find' buttons in the
   Replace dialog.
   Minor cleanups in search.c.
 * tagmanager/tm_source_file.c:
   Update source files upon creation.
 * data/c99.tags:
   Update C tags for glibc 2.9.
 * src/callbacks.c, src/toolbar.c:
   Fix broken non-incremental search with the toolbar search entry when
   pressing Enter (closes #2638180).
 * plugins/splitwindow.c:
   Fix possible crash on non-32-bit systems (patch by
   Wolfgang Ocker, thanks).
 * geany.spec.in:
   Update the Packager tag due to Dominic's various contributions.
   Update description and feature list.
   Change Source tag to the gzip'ed tarball to be in sync with the
   Makefile target (thanks to Wolfgang Ocker for reporting).


2009-02-26  Frank Lanitz  <frank(at)frank(dot)uvena(dot)de>

 * plugins/vcdiff.c, plugins/Makefile.am, po/POTFILES.in:
   Removed deprecated plugin VC Diff


2009-02-25  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/templates.c:
   Fix wrong Fortran 90 comment characters when inserting templates.
 * doc/geany.html, doc/geany.txt, geany.glade, src/callbacks.c,
   src/callbacks.h, src/editor.c, src/interface.c, src/keybindings.c,
   src/keybindings.h, src/main.c, src/plugindata.h, src/vte.c,
   src/vte.h, THANKS:
   Add 'Send Selection to Terminal' command to the Edit->Format menu
   (initial patch by David Gleich, thanks).
 * geany.glade, src/interface.c:
   Fix mnemonic for the Edit->Preferences menu item.


2009-02-24  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * configure.in, plugins/Makefile.am:
   Enable socket support when cross-compiling.
   Enable plugin compilation when cross-compiling.
 * src/msgwindow.c:
   Fix missing NULL checks when reading the colour value of compiler
   output messages.
 * src/main.c, src/win32.c, src/win32.h:
   On Windows, change the working directory to the Geany installation
   path at startup to avoid unwanted directory locking(closes #2626124).
 * src/encoding.c:
   Fix broken selection of "Document->Set Encoding" menu items.
 * src/document.c, tagmanager/include/tm_source_file.h,
   tagmanager/include/tm_work_object.h, tagmanager/tm_project.c,
   tagmanager/tm_source_file.c, tagmanager/tm_tag.c,
   tagmanager/tm_work_object.c, tagmanager/tm_workspace.c:
   Don't let the tagmanager automatically reparse files if they
   seem to be changed on disk (affects all files in the current session,
   not the current one). This should speed up file saving a little bit,
   especially with remote files.
   Remove now unnecessary calls to tm_workspace_update().
 * src/printing.c:
   Allow an empty value for the date format in the print settings to
   omit the date/time string in the print header.


2009-02-20  Frank Lanitz  <frank(at)frank(dot)uvena(dot)de>

 * src/editor.c: Set cursor for LaTeX at auto closing of environment
   direct into area.


2009-02-19  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/utils.h:
   Add missing header include (closes #2615808).


2009-02-18  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * src/symbols.c:
   Fix a possible crash when comparing symbol names
   (could be related to Ubuntu bug #147151).
   Fix broken symbol list tooltips when tag names contain ampersands.


2009-02-15  Nick Treleaven  <nick(dot)treleaven(at)btinternet(dot)com>

 * plugins/makefile.win32:
   Don't build Split Window plugin on Windows (doesn't work).


2009-02-15  Enrico Tröger  <enrico(dot)troeger(at)uvena(dot)de>

 * ChangeLog, Makefile.am: Rotate ChangeLog.
 * configure.in, geany.nsi, geany_private.rc, win32-config.h,
   wscript, doc/geany.txt, doc/geany.html, src/geany.h:
   Post-release version bump.


*** See ChangeLog.pre-0-17 for earlier changes ***
