Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Fetching contributors…

Cannot retrieve contributors at this time

5573 lines (4201 sloc) 204.743 kb
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,
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,
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
* 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,
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,
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,
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,
Add gio_unsafe_save_backup hidden pref (patch by Lex Trotman,
* 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,
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,
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
* 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
* src/templates.c:
Convert line endings for file templates.
Fix line endings when using file header template in a file template
* 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,
Restore top-level editor popup item 'Find Document Usage'.
* src/interface.c, src/ui_utils.c,
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,
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.
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,
Add filetypes_get_display_name() to get translations for filetype
* 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
* 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>
Add install-data-only target to only install data/* to speed up
* src/editor.c:
Fix not autocompleting when breaking lines.
* data/, 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,
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,
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,
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,
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,
* src/interface.c, src/prefs.c, src/about.c, src/keyfile.c,
src/document.c, src/document.h, THANKS,
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
* 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
* 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,
Add alternative color scheme based on Python colors.
* scintilla/LexErlang.cxx, scintilla/makefile.win32,
scintilla/KeyWords.cxx, scintilla/, 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
* 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/, src/ui_utils.c,, 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/, 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
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,
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/, src/ui_utils.c,, 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/, 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,
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,
Move 'Edit->Commands->Insert Alternative White Space' to editor popup
Insert menu.
* src/interface.c,
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,
Add hidden pref new_document_after_close for whether to open a new
document automatically, off by default.
Add 'Bugs to watch out for' section.
2010-09-22 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/stash.c, doc/, doc/stash-example.c,
Improve Stash GUI example.
2010-09-21 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/interface.c,
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,
Unify Find Selection strings.
* src/interface.c, src/ui_utils.c,
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,
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,
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,
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,
Combine indent width menu item callbacks.
* src/interface.c,
Don't translate indent width menu items as they are now used for
2010-09-13 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/interface.c, src/keybindings.c, src/ui_utils.c,
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,
Add Find Usage and Go to Tag items to Search menu for easier
* tagmanager/tm_symbol.c:
Fix possible NULL dereference.
Add link to glade-2.12.2.tar.gz on
* 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
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,
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,
Auto-enable building with included regex if no regcomp function is
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,
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
* 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/, src/highlighting.c,
data/filetypes.txt2tags, wscript:
Add lexer for Txt2Tags (patch by Forgeot Eric, thanks - #3020632).
* m4,,
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 <>
* 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,
* 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,
Add editor_goto_pos() to the plugin API.
2010-08-13 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
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>
Applying a patch by Erik de Castro Lopo for checking against
pkg-config when running Thanks for the patch.
* src/log.c:
Applying a patch by Colomban Wendling to print out log domains.
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
* 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,
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
* 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,
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/,
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,
Use ui_hookup_widget() instead of g_object_set_data_full() for
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.
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,
* 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,
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
* New release: Geany 0.19 "Vellam".
*, 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>
Don't individually install data/*.tags as all data/* files will be
installed anyway.
2010-06-07 Frank Lanitz <>
* 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/, scintilla/makefile.win32,
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
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/, src/, tagmanager/,
Pass G_LOG_DOMAIN to source files for better logging.
2010-05-24 Frank Lanitz <>
* THANKS, src/about.c:
Update of translation credits to reflect a change on Spanish
translation team better.
2010-05-23 Lex Trotman <>
* 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
* 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.
*, wscript, plugins/, src/,
src/plugindata.h, scintilla/*, scintilla/include/*:
Update Scintilla to version 2.11.
* plugins/, plugins/makefile.win32, src/,
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).
*, 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).
*, 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
* 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,
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,
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,
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,,
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()
* plugins/export.c, plugins/filebrowser.c, plugins/htmlchars.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,
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,
Support more folding icon styles: arrows, +/- and no lines
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
* 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,
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
* 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,
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>
*, 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.
*, 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/, 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
* 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
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
2010-04-01 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/geanymenubuttonaction.c, src/geanymenubuttonaction.h,
src/geanyentryaction.c, src/geanyentryaction.h,
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,
Add Stash widget functions to API.
Revert commit to use AC_PATH_PROG instead of 'which' (fixes
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/, 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,
to not set Geany's minimum window size anymore (closes #2972992).
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,
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,
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/, doc/,
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 <>
* 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>
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,
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,
Use 3rd person for more API dox.
Change 'This is a wrapper function for...' to 'Wraps...' in brief
Change 'After all...' to 'Afterwards...'.
* src/interface.c,
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,
Apply patch from Eugene Arshinov to add project long line marker
customisation (thanks).
* src/interface.c,
Edit/tidy 'Long line marker' labels.
2010-03-10 Lex Trotman <>
* 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
- 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
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.
*, 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/
Minor fixes.
Replace tabs by spaces.
* plugins/
Minor fixes.
Replace tabs by spaces.
* tagmanager/r.c, plugins/geanyfunctions.h, src/about.c,
src/filetypes.c, src/symbols.c, tagmanager/,
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/
Include geany.ico in the distribution tarball.
Fix 'make distcheck' by removing data/latex.tags from EXTRA_DIST.
* scripts/
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>
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
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/, doc/pluginsymbols.c,
plugins/geanyfunctions.h, plugins/,
plugins/pluginmacros.h, plugins/, 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
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
* doc/plugins.dox, src/geanyobject.c, src/geanyobject.h, src/main.c,
Add new signal: "geany-startup-complete" which is sent once all
initialization and startup tasks has been done.
* README.I18N,, 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
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>
Rename to
* plugins/geanyfunctions.h, src/plugins.c, src/plugindata.h,
Add sci_find_text() to the plugin API.
* doc/geany.html, doc/geany.txt,, 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,
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/
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,
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 <>
* 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 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>
*, src/interface.c:
Move 'Send Selection to Terminal' menu item from Format to Commands
* 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'
* src/msgwindow.c:
Refactor msgwin_goto_compiler_file_line().
* src/interface.c, src/keybindings.c,
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>
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/, src/highlighting.c,
src/filetypes.c, src/filetypes.h, src/symbols.c, THANKS,
tagmanager/parsers.h, tagmanager/makefile.win32,
tagmanager/verilog.c, tagmanager/,
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,
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,
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,
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/, 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().
*, 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,
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 [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]
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:
* 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
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
could be loaded which is only displayed *if* 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
2009-11-07 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* tagmanager/c.c:
Fix parsing some Java code (e.g. 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()
* 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,
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/
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,, plugins/splitwindow.c:
Allow GeanyKeyBinding label field to contain underscores, which won't
be displayed by Geany. This saves adding near-duplicate translation
Add mnemonics for 3 Edit->Format menu items.
Add keybindings_get_label().
* src/interface.c,
Use GtkVBoxes for Encoding prefs combo boxes to reduce width of prefs
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,
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,
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,
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,
Add Edit->Commands submenu which is shared with the editor popup
* src/interface.c, src/keybindings.c, src/ui_utils.c,
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,
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/, 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.
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,
Add sidebar position interface pref.
2009-10-23 Lex Trotman <>
* 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 <>
* 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
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.
*, 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,
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,
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
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,
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
* 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,
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
* 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,
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,
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
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,
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,
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,
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>
*, THANKS, src/about.c, src/document.c, src/encodings.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
* 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
* 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,
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/, 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/, data/templates/files/file.tex,
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/, src/ui_utils.c,
po/, wscript:
Rename treeviews.[hc] -> sidebar.[hc].
* data/filetypes.common:
Remove unused [styling] arguments.
* src/highlighting.c, data/filetypes.markdown,
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/
Make the code a bit more pythonic.
* doc/images/build_menu_commands_dialog.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.
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/,
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).
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,
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/, data/,
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
* 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/, src/queue.h,
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
* 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,
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).
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,
Add sci_set_marker_at_line(), sci_delete_marker_at_line(),
sci_is_marker_set_at_line() to the plugin API (thanks to Yura
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,
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.
* 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/, 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
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,
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
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.
Add section 'Plugin API/ABI design'.
* src/keybindings.h, src/makefile.win32, src/project.h,
src/filetypes.h, src/, 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,
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
2009-07-28 Lex Trotman <elextr(at)gmail(dot)com>
* src/build.c, src/build.h, src/project.c, src/keyfile.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/, 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.
*, 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
* 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,
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,
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/, plugins/geanyfunctions.h, plugins/
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/
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".
*, 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,
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
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,
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
* scintilla/LexMarkdown.cxx, scintilla/makefile.win32,
scintilla/include/SciLexer.h, scintilla/include/Scintilla.iface,
scintilla/KeyWords.cxx, scintilla/, src/highlighting.c,
src/about.c, src/filetypes.c, src/filetypes.h, THANKS,
tagmanager/parsers.h, tagmanager/makefile.win32,
tagmanager/markdown.c, tagmanager/, 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,
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/, 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(),
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,
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,
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,
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
* 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,
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/,
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
* 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,
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
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,, 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/
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'
* src/highlighting.c:
Highlight D WYSIWYG backtick `strings` and r"strings" (closes
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()
Set a tooltip for the Split Window plugin's Show Current tool button.
Add utils_strdupa() macro.
* src/interface.c,
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,
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,
Use the new Scintilla struct names prefixed with 'Sci_'.
* TODO, data/filetypes.common, doc/geany.html, doc/geany.txt,
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.
*, src/callbacks.c, src/callbacks.h, src/interface.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
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
* 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: