Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Fetching contributors…
Cannot retrieve contributors at this time
11169 lines (8183 sloc) 425 KB
2008-10-19 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* New release: Geany 0.15 "Quillan".
2008-10-18 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* plugins/splitwindow.c:
Include "support.h" for I18N support instead of <glib/gi18n.h>
to get strings translated with GLib 2.18+.
* data/filetypers.tcl:
Use 'tclsh' as default Compile/Run command (part of #2037728).
* scintilla/*, scintilla/include/, src/plugindata.h:
Update Scintilla to version 1.77.
* src/highlighting.c, data/filetypes.diff:
Add new style 'Changed' to filetype Diff.
Require automake 1.7 or later.
* src/highlighting.c, data/filetypes.css:
Add new styles and keyword types for filetype CSS.
Remove default keywords from highlighting.c.
Update CSS keyword lists and a few styles
(patch by Jason Oster, thanks).
* doc/images/*, doc/geany.txt, doc/geany.html:
Update images for documentation.
2008-10-17 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/keybindings.c:
Make keyboard shortcuts dialog using a treeview to display
the shortcuts to make it scrollable with the keyboard.
2008-10-16 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* wscript, waf:
Update Waf once more.
* tagmanager/
Add variable 'regex_sources' to append to libtagmanager_a_SOURCES
if necessary.
2008-10-16 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/editor.c:
Don't connect editor callbacks when creating the editor widget for
the split window plugin (they didn't work anyway, except for
* doc/geany.txt, doc/geany.html, NEWS:
Update for missing documentation since 0.14.
2008-10-15 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* geany.nsi:
Add option to not create desktop and quicklaunch shortcuts.
Allow skipping creation of the Start Menu folder.
2008-10-15 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/interface.c, src/callbacks.c, src/callbacks.h, src/plugins.c,
Show the tools menu separator if there are any items below it.
* src/plugins.c, src/plugins.h, src/ui_utils.c:
Fix showing desensitive widgets if no documents are open when a
plugin is first loaded.
Remove plugins_update_document_sensitive().
* plugins/vcdiff.c:
Fix mixed indentation (prevents vcdiff.c being detected as T/S).
2008-10-14 Frank Lanitz <frank(at)frank(dot)uvena(dot)de>
* THANKS, src/about.c: Update of name of Korean translator. Thanks
Park Jang-heon.
2008-10-14 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/ui_utils.h, src/plugindata.h, src/plugins.c, src/ui_utils.c,
Add ui_add_document_sensitive() to the plugin API.
Deprecate plugin_fields, PluginFlags - use
ui_add_document_sensitive() instead.
* plugins/saveactions.c, plugins/export.c, plugins/vcdiff.c,
plugins/demoplugin.c, plugins/filebrowser.c, plugins/splitwindow.c,
plugins/htmlchars.c, plugins/classbuilder.c:
Use ui_add_document_sensitive().
except the Demo plugin (as an example).
* doc/, doc/pluginsymbols.c:
Generate API documentation for deprecated symbols.
* src/ui_utils.c:
Fix having a small gap before plugin toolbar items.
2008-10-13 Frank Lanitz <frank(at)frank(dot)uvena(dot)de>
* ko.po, LINGUAS, src/about.c, THANKS:
Added Korean translation. Thanks to netkiss for translation.
2008-10-13 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/ui_utils.h, src/plugindata.h, src/plugins.c, src/ui_utils.c,
doc/, doc/pluginsymbols.c, plugins/demoplugin.c,
- API changes:
Replace p_ui->get_toolbar_insert_position() with
p_plugin->add_toolbar_item(), which also adds a separator when the
first item is added.
Add 'GeanyPlugin *geany_plugin' plugin symbol, partly to replace
plugin_info (now deprecated), mainly to identify a plugin and hold
private implementation fields for plugin utility functions.
(plugin_info will be removed after the 0.15 release.)
- Code changes:
Add ui_auto_separator_add_ref() to hide separator-like widgets when
their visible group elements are hidden or destroyed.
* tagmanager/css.c:
Fix gcc warning, wrap line.
* src/plugins.c:
Tidy up plugin cleanup code.
* src/plugins.c:
Use geany_debug() instead of g_warning() when a plugin has
unresolved symbols.
* src/dialogs.c:
Refactor dialogs_show_unsaved_file() with run_unsaved_dialog().
2008-10-12 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/highlighting.c:
Fix regression: clear all styles for filetype None to not break
the 'invert_all' option.
* src/saveactions.c:
InstantSave: when opening new files from template, use the template's
filetype, otherwise fall back to configured default filetype.
* THANKS, src/about.c, src/symbols.c, tagmanager/css.c:
Upate of the CSS parser to detect also ID and Type selectors
(patch by Bronisław Białek, thanks).
2008-10-12 Frank Lanitz <frank(at)frank(dot)uvena(dot)de>
* src/search.c:
Change of a typo in singular form of some status messages. Thanks to
Jeff Bailes for reporting.
2008-10-10 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/editor.c:
Fix Ctrl-click on a word when Numpad is enabled.
* src/dialog.c:
Make a some labels in the File Properties dialog selectable.
2008-10-08 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* plugins/splitwindow.c:
Fix only updating filename label after saving the relevant document.
2008-10-07 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* plugins/filebrowser.c, plugins/htmlchars.c, src/editor.c,
src/msgwindow.c, src/plugins.c, src/prefs.c, src/treeviews.c:
Plug some memory leaks due to some missing g_object_unref's.
* src/editor.c:
Fix wrong cursor positioning while line breaking when the last
character on the line was a space.
* src/wscript:
Add missing 'mandatory' attribute for the GTK check.
Change build directory to '_build_'.
*, src/interface.c:
Reorder Help menu items (swap 'Keyboard Shortcuts' and 'Website').
2008-10-07 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* plugins/splitwindow.c:
Add toolbar with Refresh button to sync to the current document, and
an Unsplit button (reuses existing string).
* src/editor.c:
Fix segfault when holding Alt and scrolling editor window.
* plugins/splitwindow.c:
Use EditWindow structure instead of separate global variables.
* plugins/splitwindow.c:
Fix segfault when clicking on split window after the original
document has been closed and the view has been refreshed to another
* plugins/splitwindow.c:
Refactor with set_editor().
* plugins/splitwindow.c:
Add filename label.
Fix Gtk warning when resplitting.
2008-10-06 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* plugins/splitwindow.c:
Fix wrong editor scrollbar mouse cursor and broken middle-click
paste after splitting or unsplitting (fixes #2142186).
Note: this is a workaround for an issue with Scintilla where the
widget (or its parents) can't be removed or reparented to a
non-visible widget.
2008-10-06 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
*, src/interface.c:
Enable interactive search for the keybindings tree view in the
prefs dialog.
* wscript, waf:
Update waf to its latest SVN version (nearly 1.5.0).
Adjust wscript to latest Waf API changes.
*, wscript, tagmanager/ctags.c, src/tools.c:
Use g_strerror() instead of strerror().
Remove build system checks for strerror().
2008-10-03 Frank Lanitz <frank(at)frank(dot)uvena(dot)de>
* data/latex.tags: Added some more keywords for moderncv to tag list.
2008-10-02 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* doc/geany.txt, doc/geany.html, po/, plugins/saveactions.c,
plugins/autosave.c, plugins/, plugins/makefile.win32:
Merge InstantSave, AutoSave and BackupCopy plugins into the
plugin 'Save Actions'.
Add a section for documentation of internal plugins in the
* doc/geany.html, doc/geany.txt,, src/interface.c,
src/keyfile.c, src/prefs.c, src/project.c, src/project.h:
Add an option to store the project file of new projects inside the
project base directory.
Doc: Add descriptions for the Search tab in the preferences dialog.
* scripts/, scripts/
Remove more bashisms and avoid using 'which' which is not
2008-10-01 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* HACKING, doc/
Reformat HACKING as true reStructuredText.
Add 'make hacking-doc' target to generate hacking.html.
* src/highlighting.c:
Fix using common styleset for filetype None.
* src/highlighting.c:
Remove unused argument ft_id from styleset_common().
2008-09-30 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/project.c:
Fix a few memleaks.
Handle errors when creation of the project base directory fails.
Update the window title also when creating new projects.
* src/build.c:
Remove inexact and unnecessary warning if a Run command has failed.
2008-09-29 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* data/filetypes.r, src/highlighting.c:
Fix syntax highlighting for filetype R, synchronise the colours with
those other filetypes.
Add two more keyword types and add many many more keywords.
2008-09-29 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* doc/geany.txt, doc/geany.html:
Remove use of non-greedy matching in error_regex - this doesn't seem
to be supported by common versions of glibc (thanks to AC for
* src/documentprivate.h, src/document.c, src/editor.c:
Apply patch from Jason Oster to auto-update the line margin width as
lines are added (thanks; #2129157).
2008-09-28 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
*, src/interface.c, src/notebook.c:
Revert previous notebook focus changes as this disables the tab
scroll arrows.
* scintilla/include/SciLexer.h, scintilla/include/Scintilla.iface,
scintilla/KeyWords.cxx, scintilla/LexOthers.cxx, src/templates.c,
src/highlighting.c, src/plugindata.h, src/filetypes.c,
src/filetypes.h, src/editor.c, data/filetype_extensions.conf,
Add new filetype 'Gettext translation file' (closes #2131985).
* src/highlighting.c, data/filetypes.perl:
Don't use hard-coded stylebits values for different lexers, query
the correct value from Scintilla and use it (this fixes a display
problem with Perl code like 'sub test()').
Add missing styles for filetype Perl.
* doc/, wscript:
When generating documentation, first try as it is
the upstream default.
2008-09-27 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/log.c:
Make the debug messages window a little bigger.
Enable wrapping of messages to avoid horizontal scrolling.
Automatically scroll to the end of the messages when showing the
dialog or updating its contents.
* src/editor.c:
Make 'Line Breaking' UTF-8 safe (to work with non-ASCII characters).
Cleanup. Remove unnecessary checks and code.
2008-09-26 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
*, src/interface.c, src/notebook.c:
Remove can_focus flag from notebook widgets to avoid focused tab
* doc/geany.txt, doc/geany.html, src/editor.c, src/keybindings.c,
src/keybindngs.h, src/plugindata.h:
Make 'Previous/Next word part' keybindings configurable.
* src/editor.c:
Fix unintentional switch fall-through (patch from Jason Oster,
2008-09-26 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/editor.c:
Return GEANY_AUTOINDENT_BASIC from editor_get_indent_prefs() if the
per-document pref is set, even if the global mode is none.
* scintilla/makefile.win32, scintilla/LexR.cxx,
scintilla/KeyWords.cxx, scintilla/, src/templates.c,
src/highlighting.c, src/plugindata.h, src/about.c,
src/filetypes.c, src/filetypes.h, src/editor.c, THANKS,
data/filetype_extensions.conf, data/filetypes.r:
Apply patch from Andrew Rowland to add support for the R language
(thanks, #2121502).
Update to mention separate is_comment_style() and is_string_style()
* src/documentprivate.h, src/prefs.c, src/treeviews.c, src/notebook.c,
src/document.c, src/document.h, src/editor.c, src/symbols.c,
Use GeanyDocumentPrivate instead of using inheritance for non-public
fields (this was unnecessary and meant using ugly casts).
2008-09-25 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
*, src/interface.c, src/vte.c:
Set the page_size parameter of GtkAdjustments to 0 instead
of 10 which is set by default by Glade. This prevents breakage of
spin buttons with early versions of GTK 2.14.
* src/callbacks.c, src/document.c, src/editor.c, src/editor.h,
src/ui_utils.c, src/keybindings.c, src/prefs.c, src/search.c,
Unify the API in editor.c, all public functions now take a
GeanyEditor* object.
* src/editor.c:
When using editor_get_eol_char_* functions with an invalid editor
object, return the appropriate value according to the eol character
preference (just in case).
* src/callbacks.c, src/document.c, src/editor.c, src/editor.h,
src/highlighting.c, src/sciwrappers.c, src/sciwrappers.h:
Fix using direct Scintilla access in document.c and callbacks.
Add wrapper functions instead.
* scripts/, scripts/
Remove bashisms.
2008-09-25 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/filetypes.c:
Hopefully fix building when HAVE_REGCOMP is not defined.
Add debug message when trying to parse an error regex when
HAVE_REGCOMP is undefined.
* src/filetypes.c, doc/geany.txt, doc/geany.html:
Detect which error regex match contains the line number, and use the
other match for the filename.
Update 'Build system' docs for custom error regexes.
* doc/geany.txt, doc/geany.html:
Minor formatting changes - make the using a Makefile paragraph a
* src/editor.c:
Don't disable the per-document auto-indent pref when the global
auto-indent mode is set to none (undoes part of r2981). In this
case, the per-document pref just behaves like
2008-09-24 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/main.h, src/about.c, src/main.c, src/socket.c:
Show SVN revision also for geany -v and first status message.
Add main_get_version_string().
Rename get_argv_filename() main_get_argv_filename().
2008-09-23 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
Move adding a lexer notes to 'Syntax highlighting' section; mention
adding the LINK_LEXER command manually.
Some minor edits (reST section grouping).
* src/msgwindow.c:
Remove ParseData::dir argument as it's not necessary for parsing;
instead, use function make_absolute().
Refactor msgwin_parse_compiler_error_line().
* src/msgwindow.c, src/filetypes.c, src/filetypes.h, doc/geany.txt,
doc/geany.html, HACKING, TODO:
Add filetypes.* [build_settings] key 'error_regex' to support custom
error message parsing using an extended regular expression.
2008-09-22 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/editor.c, src/ui_utils.c:
When the global auto-indent style pref is disabled, disable
auto-indentation for all editors.
Don't disable the auto-indent document pref when switching back to a
document with auto-indent turned off.
* src/editor.c:
Fix HTML table autocompletion when the indent type is 'Tabs &
Spaces' (#2118289).
Add functions count_indent_size(), string_append_indent_width().
* src/editor.c:
Rename get_indent() read_indent().
Fix possible overflow in auto_table().
2008-09-21 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* document.c, document.h, editor.c, editor.h, prefs.c, sciwrappers.c,
Move document_apply_update_prefs() in editor.c.
Refactor get_indent_guides_from_lexer() from sciwrappers.c in
* src/editor.c:
Fix broken indentation of automatic HTML table tag completion
(part of #2118289).
2008-09-19 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/sciwrappers.c:
Disable indent guides for the Diff filetype, as they can be
distracting as added/removed lines don't get them.
* src/plugindata.h:
Remove 2 unnecessary deprecated macros.
* src/filetypes.c, src/filetypes.h:
Add GeanyFiletypePrivate instead of using inheritance for non-public
fields (this was unnecessary and meant using ugly casts).
2008-09-18 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/ui_utils.c:
Display also the style of the current position in the status bar
when debug mode is enabled.
No need to make the debugging strings translatable in the status bar.
* src/editor.c, src/plugins.c, src/sciwrappers.c, src/sciwrappers.h:
Rename the new indicator functions and add documentation comment.
* src/msgwindow.c:
Handle error messages and warnings from the mcs (Mono) compiler like
those from Pascal or Basic compilers.
2008-09-18 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/plugins.c:
Use wrap label for the first label in the plugin manager dialog.
Use scrolled window for plugin details text area to avoid resizing
dialog components if a plugin has a long description.
* src/plugindata.h:
Fix ScintillaFuncs::indic_clear() return type, and rename to
* src/interface.c, src/prefs.c, src/keyfile.c, src/document.c,
src/editor.c, src/editor.h, doc/geany.txt, doc/geany.html,
Add 'Tab key indents' pref, which replaces hidden pref
'use_tab_to_indent'; it's now on by default.
2008-09-17 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* data/filetypes.css, src/highlighting.c:
Add missing 'directive' style to filetype CSS
(patch from Jason Oster, #2114697, thanks).
* src/callbacks.c, src/editor.c, src/keybindings.c, src/plugindata.h,
src/plugins.c, src/sciwrappers.c, src/sciwrappers.h, src/tools.c,
API changes:
Rename sci_can_copy() into sci_has_selection().
Rename sci_find_bracematch() into sci_find_matching_brace().
* src/main.c:
Display SVN revision number in version information if available.
* src/editor.c, src/highlighting.c, src/plugindata.h, src/plugins.c,
src/sciwrappers.c, src/sciwrappers.h:
Replace the usage of the old Scintilla indicator API by the new
modern API and remove old hacks (patch by Jason Oster, thanks).
Add new sci_indic_clear() function to the plugin API.
2008-09-17 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/callbacks.c, THANKS:
Cancel autocompletion on Undo/Redo (based on a patch by Jason Oster,
thanks; #2102715).
* src/sciwrappers.c, src/document.c:
Apply patch (with minor changes) from Jason Oster to improve showing
brace indent guides on empty lines when appropriate (thanks,
* doc/geany.txt, doc/geany.html:
Update feature list in About Geany section.
* doc/geany.txt, doc/geany.html:
Edit 'About Geany' text to be more concise.
A few minor fixes.
2008-09-16 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/keybindings.c, src/sciwrappers.c, src/sciwrappers.h,
Fix Doxygen 1.5.4 undocumented parameter warnings.
Improve dox for sciwrappers.c.
Correct sci_grap_focus() misspelling.
(Merged from split-window-plugin branch).
* doc/plugins.dox:
Fix wrong parameter for "project-close" signal.
(Merged from split-window-plugin branch).
* src/geanyobject.c, src/geanyobject.h, src/document.c,
Add plugin signal "document-close", sent just before a document is
(Merged from split-window-plugin branch).
* src/plugindata.h, src/plugins.c, src/editor.c, src/editor.h,
po/, plugins/splitwindow.c, plugins/,
Merge split-window-plugin branch.
Add Split Window plugin (should work OK for viewing and basic text
editing; most other features are not implemented yet).
Add editor_create_widget() to the API.
2008-09-15 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/editor.c:
Show ellipsis (...) item when there are too many symbol names for
* src/editor.c:
Apply patch from Jason Oster to highlight matching brace indent
guides (thanks, #2104099).
* doc/geany.txt, doc/geany.html:
s/auto detect/auto-detect.
Minor formatting fixes.
2008-09-14 Frank Lanitz <frank(at)frank(dot)uvena(dot)de>
* COPYING: Fixing a little encoding issue in GPL text.
* po/tr.po, po/LINGUAS, src/about.c, THANKS: Adding Turkish translation
provided by Gürkan Gür. Thanks for it.
2008-09-10 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/editor.c:
When checking for starting auto completion always use the style
of the previous character and remove possible error indicator styles
which caused wrong checking (should fix #2058005).
2008-09-09 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* data/filetypes.xml, src/highlighting.c:
Add missing HTML attribute 'xml:lang'.
2008-09-08 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* scripts/, scripts/
Remove bashisms.
Add support for passing asterisk wildcards to
* src/plugindata.h, src/plugins.c, src/ui_utils.c, src/ui_utils.h:
Add ui_get_toolbar_insert_position() for plugins to get a position to
insert new toolbar items.
* src/log.c:
Update the debug messages automatically in the debug messages window
if it is open.
2008-09-07 Frank Lanitz <frank(at)frank(dot)uvena(dot)de>
* doc/
Little typographic update to use minus sign instead of a hyphen
in the manpage.
2008-09-07 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* doc/geany.html, doc/geany.txt:
Update feature list.
Small updates of outdated information.
Remove 'Supported Systems' sub section.
2008-09-04 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
*, src/build.c, src/callbacks.c, src/callbacks.h,
src/interface.c, src/keybindings.c, src/main.c, src/prefs.c,
src/treeviews.c, src/ui_utils.c, src/plugindata.h:
Rename all toolbar widgets for consistent names.
* doc/geany.html, doc/geany.txt:
Fix typo.
* src/callbacks.c:
Add '-' (dash) to the wordchars when using 'open selected filename'.
Please open a bug report if this will break any filenames.
2008-09-01 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
*, src/interface.c, src/dialogs.c, src/printing.c,
Set 'can_focus' property on some checkboxes in the prefs dialog
which were missing it.
Enable 'focus_on_click' property on most checkboxes in the prefs
dialog to ease keyboard navigation.
* waf, wscript:
Update waf to its latest SVN version (1.5.0 preview).
Adjust wscript to latest Waf API changes.
doc/geany.txt, doc/geany.html, doc/plugins.dox, geany.nsi,, src/geany.h:
New website address:
Merge README.I18N with latest changes from the wiki.
* doc/geany.html, doc/geany.txt,, src/document.c,
src/editor.c, src/interface.c, src/keyfile.c, src/prefs.c,
src/sciwrappers.c, src/sciwrappers.h:
Add 'Stop scroll at last line' editor pref
(patch by Timothy Boronczyk, thanks).
* src/vte.c:
Mark the VTE as clean when restarting it to make Geany able to
execute commands in it.
*, src/interface:
Fix ambiguous tooltip of new 'Stop scroll at last line' editor pref.
2008-08-29 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* doc/geany.txt, doc/geany.html:
Separate runtime requirements and build requirements subsections.
Mention that usually building GTK manually is not necessary.
Run 'make install' as root.
Add some subsection titles.
* src/interface.c, src/prefs.c, src/keyfile.c, src/editor.c,
src/symbols.c, src/editor.h, doc/geany.txt, doc/geany.html,
Add 'Max. symbol name suggestions' autocompletion pref.
Edit some autocompletion pref strings.
Remove some trailing commas in array initializers (oops).
2008-08-28 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/symbols.c:
Fix global tags loaded debug message, display total tags count.
Add comment to warn about adding tags files vs. downloading
2008-08-27 Nick Treleaven <nick.treleaven<at>>
* src/highlighting.c, src/plugindata.h, src/filetypes.c,
src/filetypes.h, src/symbols.c, THANKS, tagmanager/parsers.h,
tagmanager/c.c, data/filetypes.glsl, data/filetype_extensions.conf:
Add OpenGL Shader Language (GLSL) filetype (patch from Colomban
Wendling, thanks; closes #2060961).
* src/filetypes.c, src/filetypes.h:
Add GeanyFiletypeGroupID enum and GeanyFiletype::group field.
* src/keyfile.c, doc/geany.txt, doc/geany.html:
Change hidden pref scroll_stop_at_last_line to TRUE (#2030914).
2008-08-26 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/highlighting.c:
Add assert statements to check that the StyleSet styling arrays are
not exceeded.
Make highlighting_get_style() work with all filetypes.
* src/highlighting.c, src/highlighting.h, src/plugindata.h:
Rename HighlightingStyle to GeanyLexerStyle.
Add dox for highlighting_get_style(), GeanyLexerStyle, mentioning
* src/filetypes.c:
Use pointer in init_builtin_filetypes() instead of repeating
filetypes[GEANY_FILETYPES_X]->... on each line.
2008-08-25 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/document.c, src/editor.c, src/editor.h:
Add editor_destroy() to dispose of a GeanyEditor struct (in future
we may want to do more than just free it).
Fix editor.h dox description to be more informative for the API
(and move dox from editor.h to editor.c).
2008-08-19 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/editor.c:
Fix not using auto-completion in strings and comments (patch by
Jason Oster, thanks; fixes #2057979).
* src/interface.c, src/callbacks.c, src/callbacks.h,
Don't disable 'Detect from file' indent type pref when 'Tabs and
Spaces' is selected.
* src/document.c:
Don't warn about a missing file on disk more than once (otherwise
sometimes it's too difficult to close the file before getting the
* src/document.c:
Detect 'Tabs and Spaces' indent mode on finding one or more hard
tabs before a soft tab at the start of several lines, and also when
the first indent symbol count is not mainly tabs or mainly spaces.
2008-08-18 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/document.c:
Support detecting 'Tabs and Spaces' indent mode when opening a file.
2008-08-18 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* scintilla/
Remove non-portable compiler optimisation '-Os'.
Don't use AC_CHECK_PROG() to check for a C++ compiler as it
breaks compatibility with suncc (reported by Andras Barna, thanks).
2008-08-17 Enrico Tröger <Enrico Tröger@localhost>
* geany.nsi:
Put geany.exe into a 'bin' subdirectory as well as the included
GTK runtime environment to fix current hardcoded 'bin' values
in GTK (see
Fix missing snippets.conf in the Windows installers.
Fix missing python.tags in the Windows installers.
2008-08-14 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/notebook.c:
Don't look up "scroll_arrow_hlength" and "scroll_arrow_vlength"
GtkWidget properties on GTK < 2.10.
* src/prefs.h, src/plugindata.h, src/plugins.c:
Rename api_version GEANY_API_VERSION.
Rename abi_version GEANY_ABI_VERSION.
Use enums for each of these so they can be used to initialize a
global variable, and add dox.
* src/editor.c, doc/geany.txt, doc/geany.html:
Make Ctrl-click on a word perform Go to Tag Definition (this
shouldn't conflict with column editing as this uses
2008-08-13 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* doc/geany.txt, doc/geany.html:
Add middle-click document closing to the Tips and Tricks appendix.
* src/makefile.win32:
Expect GTK 2.10 libs to link against by default and remove GTK210
flag. If anyone wants to build on Windows against GTK 2.6 or 2.8
use 'make GTK280=1'.
* src/support.c:
Replace fprintf() with g_critical().
* src/log.c, src/win32.c:
Fix logging of messages in the debug window on Windows.
When '--debug' option is given on Windows, set the
G_SPAWN_WIN32_DEBUG flag for more debug info for spawned processes.
* src/log.c, src/main.c:
Don't force debug mode when compiling with GEANY_DEBUG (this affects
only the messages on stdout and stderr). Messages are logged always
in the debug window.
2008-08-13 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* doc/geany.txt, doc/geany.html:
Add Tips and Tricks appendix.
2008-08-11 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
*, wscript, src/, src/makefile.win32,
src/callbacks.c, src/callbacks.h, src/interface.c, src/log.c,
src/log.h, src/main.c:
Move geany_debug() into log.c.
Use GLib log/print handlers to log messages/warnings into a
string for later usage.
Add a debug messages window, accessable through the help menu to
easily view debug messages/warnings.
This might replace the extra console window on Windows.
* src/prefs.c:
Fix bad wording (closes #2038807).
* src/log.c, src/main.c, src/makefile.win32:
Remove trailing spaces.
2008-08-11 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/editor.c:
Add SCE_[CD]_COMMENTDOCKEYWORD(ERROR) comment detection to
* src/editor.c:
Fix auto-multiline comment completion for CSS.
Fix doc-comment keyword styles confusing auto-multiline comment
* src/editor.c:
Break is_comment() into comment and string detection, each called in
* plugins/export.c:
Fix using correct hard tab width for HTML export, not just LaTeX.
* src/prefs.c, src/plugindata.h, src/keyfile.c, src/editor.c,
Rename GeanyIndentPrefs::tab_width to hard_tab_width, and update
keyfile key name.
* src/interface.c,
Change 'Tab width' label to 'Hard tab width' for clarity.
2008-08-08 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/printing.c:
Fix using correct display tab width when the Tabs & Spaces indent
type is set.
* src/sciwrappers.c, src/plugindata.h, src/plugins.c, src/editor.c,
src/editor.h, plugins/export.c:
Add sci_get_tab_width() to the API, and use it to get the correct
display tab width in the Export plugin.
* src/keybindings.c:
Don't set plugin keybinding accels for menu items in
keybindings_set_item(), so user keycombos can override them.
* src/build.c, src/keybindings.c, src/keybindings.h, src/tools.c,
src/prefs.c, src/plugindata.h, src/plugins.c:
Rename KeyCallback GeanyKeyCallback.
Rename KeyBinding GeanyKeyBinding.
Rename KeyBindingGroup GeanyKeyGroup.
2008-08-08 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/printing.c:
Fix compilation with GTK >= 2.10.
2008-08-07 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/interface.c, src/prefs.c, src/plugindata.h, src/callbacks.c,
src/callbacks.h, src/keyfile.c, src/document.c, src/plugins.c,
src/main.c, src/editor.c, src/editor.h, src/ui_utils.c,,
plugins/export.c, TODO:
Merge changes from the custom-tab-width branch (closes #1662173).
Thanks to Joerg Desch for explaining how it needs to work.
Note: this breaks the plugin API for indentation editor_prefs.
Add separate Width indent pref (as well as the Tab Width pref).
Add 'Tabs & Spaces' Indent Type radio option pref.
Add 'Tabs and Spaces' Document menu indent option.
Note: Tabs & Spaces cannot be detected (yet) when opening files;
default file templates still only use tabs.
Set 'Detect from file' indent type setting insensitive when Tabs &
Spaces is set.
Don't change per-document auto-indent setting after changing default
auto-indentation type.
- API changes:
Add GeanyIndentPrefs struct from some GeanyEditorPrefs fields.
Replace GeanyIndentPrefs::use_tabs with GeanyIndentType field 'type'.
Add editor_get_indent_prefs() to the API, which should be used to
get the right settings for a document/editor instead of reading
any struct fields. This could also support project/filetype
indentation prefs quite easily.
- Core code changes:
Move toggle_prefs to a function toggle_items_foreach(), which takes
a PREF_DISPLAY or PREF_UPDATE argument. This means the PrefEntry
array can contain runtime fields, so can read pointer contents.
Add pref_item_callbacks array of functions to call;
toggle_items_foreach(), spin_items_foreach(), radio_items_foreach(),
Update keyfile.c to use foreach-style functions for SettingEntry
arrays, like the new PrefEntry code in prefs.c.
Add get_indent_size_after_line() to replace get_indent() for
clarity, and to fix Tabs & Spaces auto-indentation > basic.
Remove opening-brace indent code from get_indent() as it's now in
Change editor_close_block() to use sci_get_line_indentation() for
Make editor_close_block() static.
Add editor_init().
2008-08-05 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/vte.c:
Revert the recent VTE realisation changes as they don't make things
* tagmanager/tcl.c:
Fix wrong parsing of keywords if they are not followed by a space
(closes #2037728).
2008-08-03 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/vte.c:
Realize the VTE widget manually (still for #1844985).
* src/notebook.c:
Ignore the scroll arrows when checking for a double click in
the notebook tab bar (closes #2033059).
2008-08-01 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/callbacks.c, src/vte.c, src/vte.h:
Revert r2843 because it messed it Ctrl-C/SIGINT in the VTE.
* src/vte.c:
Initialise the VTE pid var with 0 just for safety.
* src/highlighting.c, data/filetypes.sql:
Add some keywords for filetype SQL (patch by Felipe Pena, thanks).
2008-07-30 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/notebook.c:
Fix signature of focus_sci().
Double clicking on free space in the tab bar opens a new file
* src/vte.c:
Start the shell in the VTE first when the VTE is actually realized
to avoid strange display bugs on some systems (closes #1844985).
* src/callbacks.c, src/vte.c, src/vte.h:
Make Copy & Paste clipboard keybindings also work for the VTE
(closes #2029675).
* src/about.c, THANKS:
Add a list of contributors to the About dialog.
Update the THANKS file.
* src/highlighting.c, data/filetypes.php:
Add four new PHP 5.3 keywords (patch by Felipe Pena, thanks).
2008-07-27 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
*, wscript:
Add support for retrieving the SVN revision number also
when using a git-svn.
*, doc/geany.html, doc/geany.txt, src/editor.c,
src/interface.c, src/keyfile.c, src/plugindata.h, src/prefs.c:
Add a preference for the comment toggle mark string("~ " by default).
*, src/interface.c, src/vte.c:
Add a small border to all notebook pages in the preferences dialog.
2008-07-25 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/interface.c, src/ui_utils.c,
Revert editor popup menu Current Word submenu changes. See
* src/sciwrappers.c, src/plugindata.h:
Add dox for ScintillaFuncs.
2008-07-25 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* data/, src/highlighting.c:
Add missing "error" and heredoc styles to filetype Shellscript
(related to #2026853).
* waf, wscript:
Update waf to its latest SVN rev and exclude some unused modules
which makes it another 20 KB smaller.
Update waf script to reflect waf API changes(module Install removed).
* src/editor.c:
Fix wrong checks when determining whether a style is a PHP style
(style SCE_HPHP_COMPLEX_VARIABLE was ignored, closes #2027235).
2008-07-24 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/filetypes.c:
Only compile filetypes_detect_from_file() if HAVE_PLUGINS is defined.
* src/plugindata.h:
Rename p_filetypes->detect_from_filename() to detect_from_file() in
the plugin API.
* src/ui_utils.c:
Add dox for all UIUtilsFuncs.
* src/plugindata.h, src/document.c:
Rename document_new_file() argument to utf8_filename.
* src/project.c, src/project.h, src/geany.h:
Add dox for GeanyApp, GeanyProject.
Move GeanyProject typedef to project.h, as it is rarely used without
including project.h.
* src/plugindata.h, src/document.c, src/document.h:
Add more dox explaining how to use documents_array (moved from
document.h, to minimise rebuilding after adding dox).
Remove some mentions of document indexes in document.c comments.
* src/vte.c:
Change VTE restart command to not call vte_terminal_fork_command() -
this should prevent the hang reported in #1990323 with VTE 0.16.14.
Note that with VTE 0.16.14 the reset sometimes leaves a blank
terminal, but pressing enter makes it then behave as normal.
2008-07-23 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/utils.c, src/utils.h, src/plugindata.h, src/callbacks.c,
src/plugins.c, src/main.c, src/main.h, plugins/pluginmacros.h:
Move utils_reload_configuration() to main.c.
* src/main.c:
Add doxygen file header for generating MainFuncs API documentation.
* src/plugindata.h, src/filetypes.c, src/filetypes.h, src/document.c,
Add dox for FiletypeFuncs and some of GeanyFiletype.
Rename filetypes_detect_from_file() to
Rename filetypes_detect_from_filename() to
filetypes_detect_from_file() because it also detects shebang lines.
Remove function prototype comments for filetypes.h (see filetypes.c
or API dox instead).
* src/ui_utils.c:
Add dox for GeanyMainWidgets.
2008-07-22 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* scintilla/LexHTML.cxx:
Backport latest HTML/PHP lexer fixes from Scintilla CVS (#2024387).
* src/editor.c:
Fix space-only indentation when auto-generating HTML tables
(patch by Colomban Wendling, thanks, closes #2023160).
2008-07-21 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/main.c, src/socket.c, src/main.h:
Fix filename encoding for new files at startup from the command-line.
Make socket open command support filename:line:column syntax.
* src/interface.c, src/prefs.c, src/keyfile.c, src/document.h,
Add new Files pref 'Allow new documents from the command-line'.
* src/interface.c,
Rename above pref 'Open new documents...'.
Group encodings prefs together in the Files tab.
2008-07-20 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/keybindings.c:
Add menu item accelerators first after default and user keybindings
have been read to avoid that menu item accelerators of user
keybindings can't be overridden anymore (closes #2021703).
* src/callbacks.c, src/plugindata.h, src/plugins.c, src/utils.c, src/utils.h:
Move code to reload configuration files into utils_reload_configuration()
and add it to the plugin API.
2008-07-18 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* plugins/classbuilder.c, plugins/demoplugin.c, plugins/export.c,
plugins/filebrowser.c, plugins/htmlchars.c, plugins/vcdiff.c,
src/about.c, src/build.c, src/dialogs.c, src/document.c,
src/editor.c, src/encodings.c, src/filetypes.c, src/gb.c, src/main.c,
src/msgwindow.c, src/notebook.c, src/plugins.c, src/prefs.c,
src/printing.c, src/project.c, src/search.c, src/templates.c,
src/tools.c, src/treeviews.c, src/ui_utils.c, src/vte.c:
Rename "delete_event" to "delete-event".
Remove some unnecessary GObject casts in g_signal_connect() calls.
* src/geanywraplabel.c:
Remove unnecessary finalize() function.
* plugins/classbuilder.c:
Encourage single header includes as it is necessary with GTK 2.14+.
* src/treeviews.c:
Handle tooltip requests for items in the open files tree view
properly by using gtk_tree_view_get_tooltip_context().
2008-07-17 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/ui_utils.c, src/ui_utils.h, src/main.c:
Move widget array lookups from main.c to ui_utils.c.
* src/interface.c, src/keybindings.c, src/keybindings.h,
src/callbacks.c, src/callbacks.h,
Add Find Document Usage popup menu command & keybinding.
* src/interface.c, src/ui_utils.c,
Move editor popup menu current word items to submenu.
2008-07-15 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* data/filetypes.fortran:
Add missing keywords: 'elemental', 'pure' and 'procedure' which also
fix broken folding (patch by Henrik Holst, thanks).
* src/document.c:
Enforce focus grabbing when creating new documents (closes #2018427).
2008-07-15 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/build.c, src/utils.c, src/utils.h, src/keybindings.c,
src/printing.c, src/tools.c, src/prefs.c, src/navqueue.c,
src/plugindata.h, src/treeviews.c, src/msgwindow.c, src/callbacks.c,
src/notebook.c, src/keyfile.c, src/filetypes.c, src/search.c,
src/document.c, src/document.h, src/main.c, src/editor.c,
src/symbols.c, src/editor.h, src/symbols.h, src/ui_utils.c,
plugins/export.c, plugins/vcdiff.c, plugins/htmlchars.c,
Merge the editor-struct branch:
Note: this breaks the plugin API for editor-related document fields
and functions.
Split new GeanyEditor struct type from GeanyDocument fields sci,
line_wrapping, auto_indent, scroll_percent, use_tabs, line_breaking.
GeanyEditor::document allows access back to document fields.
Add GeanyDocument::editor field; this is only valid when the
document is valid, and NULL otherwise. This means any checks for
doc->editor->scintilla != NULL will segfault for invalid
documents - check against doc->is_valid or doc->editor != NULL
Change plugin API EditorFuncs to use GeanyEditor pointers.
Make editor_set_font() take a pango-style font string, and use a
GeanyEditor pointer.
Use GeanyEditor* instead of GeanyDocument* in editor.c (most global
editor functions still need conversion though, but this may be done
gradually or as required).
Move utils_get_current_function() to symbols.c.
Move utils_replace_filename() to document.c.
* plugins/filebrowser.c:
Show '..' item when the current folder is empty (fixes #2015121).
Replace is_top_level_directory() code by checking g_path_skip_root().
* src/plugins.c:
Prevent warning when trying to load an active plugin at startup that
doesn't exist on disk any more.
2008-07-14 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* data/filetype_extensions.conf, data/filetypes.f77,
data/filetypes.fortran, scintilla/KeyWords.cxx, src/document.c,
src/editor.c, src/filetypes.c, src/filetypes.h, src/highlighting.c,
src/msgwindow.c, src/plugindata.h, src/symbols.c, src/templates.c,
tagmanager/fortran.c, tagmanager/parsers.h:
Split filetype Fortran into Fortran 77 and Fortran 90.
2008-07-13 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* data/snippets.conf, doc/geany.html, doc/geany.txt, src/editor.c:
Add support to use template wildcards in snippets.
* src/editor.c, src/templates.c, src/templates.h:
Use templates_replace_all() also for snippet completion.
*, doc/geany.html, doc/geany.txt, src/editor.c,
src/interface.c, src/keyfile.c, src/plugindata.h, src/prefs.c,
src/templates.c, src/templates.h:
Add preferences for year, date and datetime format of the
corresponding template wildcards to make them more flexible.
2008-07-12 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* plugins/classbuilder.c:
Fix some formatting issues.
Add 'static' keyword to generated finalize() function in GTK classes.
2008-07-10 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* plugins/pluginmacros.h:
Remove deprecated struct field macros (this fixes building Geany
when GEANY_DISABLE_DEPRECATED is not set, fixes #2014586).
2008-07-07 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* tagmanager/haskell.c:
Fix infinite loop when parsing datatypes (fixes #2011356).
* src/editor.c:
Make line breaking work with multi-line comment completion and
'Newline strips trailing spaces' pref.
* doc/plugin-symbols.c, doc/, doc/plugins.dox:
Rename plugin-symbols.c pluginsymbols.c.
* src/plugindata.h, doc/plugins.dox, plugins/export.c,
plugins/vcdiff.c, plugins/demoplugin.c, plugins/filebrowser.c,
plugins/htmlchars.c, plugins/autosave.c, plugins/pluginmacros.h,
Remove deprecated macros and typedefs (except DOC_IDX_*), as some of
them are likely to cause naming conflicts and all plugins will need
updating since 0.14 anyway.
Add geany macro that simply expands to geany_data.
Deprecate app, main_widgets, prefs, project macros, as the geany
macro can be used instead.
2008-07-05 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* doc/plugins.dox, src/editor.c, src/geanyobject.c, src/geanyobject.h,
Rename signal "populate-edit-menu" into "update-editor-menu".
* scintilla/LexHTML.cxx:
Revert the change of rev2072: Fix syntax colouring bug when using
'?>' in a PHP comment (closes #1838854 and #1848518).
2008-07-04 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/keybindings.c:
Group focus keybinding callbacks together.
2008-07-03 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/utils.c, src/editor.c:
Fix memory leak in utils_find_open_xml_tag() when size < 3, and only
allocate string when '<' found.
Factor insert_closing_tag() from handle_xml(), fixing a memory leak
when ignoring tags like <br>.
* src/keybindings.c:
Avoid flickering the menu bar when 'Override Geany keybindings'
Terminal pref is set.
* src/editor.c:
Fix possible segfault for XML tag completion when no '<' brace could
be found.
* src/document.c:
Ensure all opened documents are colourised before being drawn
(should happen anyway in document_set_filetype(), but just in case).
* src/keybindings.c, src/keybindings.h:
Add 'Switch to Compiler' keybinding (useful when checking build
2008-07-03 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/utils.c:
Fix unnecessary 40 character limit for auto-closing XML tags
(closes #2007278).
* src/keyfile.c:
Fix broken session file support with more than 99 files
(closes #2007288).
* src/symbols.c:
Load "ignore_tags" file before generating global tags file.
* src/editor.c:
Move the checks for HTML entity completion into an own function
to increase readability.
Remove workaround for a wrong styling on last character and replace
it with proper style reading (patch by Jason Oster, thanks).
2008-07-02 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/keybindings.c:
Fix behaviour of Home and End keys in non-editor widgets when they
are set as keybindings for Go to Line Start/End.
This uses a new ignore_keybinding variable because changing
KeyCallback to return gboolean would break plugin keybindings.
* src/plugindata.h, src/plugins.c:
Add document_close() to the plugin API.
2008-07-01 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/treeviews.c, src/callbacks.c, src/document.c, src/document.h:
Add function document_close().
2008-06-30 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* waf, wscript:
Update waf to its latest SVN rev which makes it 20 KB smaller.
Update waf script to reflect waf API changes.
* src/filetypes.c, src/filetypes.h, src/highlighting.c,
In templates_free_templates() destroy also file template menu items.
Add reload argument to filetypes_load_config() to allow re-reading
of the settings.
* src/editor.c, src/editor.h, src/keyfile.c, src/keyfile.h, src/main.c:
Move code to read snippets configuration to editor.c.
Split editor_snippets_free() from editor_finalize().
* src/interface.c, src/callbacks.c, src/callbacks.h,
Add Tools menu item to reload configuration data (at the moment:
templates, filetype extensions/configs and snippets).
2008-06-30 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/ui_utils.c:
Use a dynamic pointer array for document sensitive widgets, so it's
easy to group widget names together in the source.
Make 'Close other documents' menu item document-sensitive.
* src/ui_utils.c:
Fix stack corruption (cannot use stack GPtrArray as this is just a
base-class for private GRealPtrArray).
2008-06-28 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/socket.c:
When opening files remotely using the socket, handle filename
encoding better and try to auto-detect the used encoding as it
might be different each time (hopefully closes #2003980).
* src/editor.c:
Attempt to make editor_find_current_word() Unicode-safe. Note: this
can be done better.
* doc/plugins.dox, src/editor.c, src/geanyobject.c, src/geanyobject.h,
Add plugin signal "populate-edit-menu" to notify plugins when the
editing menu is shown.
2008-06-27 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/interface.c, src/callbacks.c, src/callbacks.h,
Add 'Close Other Documents' File menu command (#1976724).
* src/keybindings.c, src/keybindings.h, src/editor.c:
Add Go to Start/End of Line keybindings (#1996175).
2008-06-26 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/vte.c, src/vte.h:
Move struct _VteTerminal, VteFunctions from vte.h to vte.c.
Call vte_restart() in vte_keypress() as the code is the same.
* src/build.c, src/build.h, src/msgwindow.c:
Add Previous Error menu item.
* src/build.c, src/keybindings.c, src/keybindings.h:
Add keybindings for Previous Message, Previous Error commands
2008-06-25 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/interface.c, src/prefs.c, src/keyfile.c, src/search.c,
Move 2 search prefs to new Search tab of Preferences dialog.
Add new search pref: 'Use the current file's directory for Find in
Files' (#1930435).
Add PrefEntry struct which is used for an array containing widget
names to lookup; currently only used for 3 search-related
GtkToggleButton prefs.
Add SettingEntry struct which is used for an array containing keyfile
key and group information; currently only used for 3 search-related
gboolean settings.
* src/interface.c, src/ui_utils.h, src/msgwindow.c, src/callbacks.c,
src/callbacks.h, src/ui_utils.c,
Add Previous Message menu item.
Don't abbreviate Find Prev Selected.
Add ui_tree_view_find_previous().
Set Next Message menu item sensitivity when clicking on Search menu.
Thanks to Beau Barker (skip76) for an initial version of
ui_tree_view_find_previous() (see #1931125).
2008-06-24 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/keybindings.c:
Make keyboard shortcuts dialog non-modal (#1999384).
* src/interface.c, doc/geany.txt, doc/geany.html,
Split Preferences dialog Editor tab into a sub-notebook, with
Features, Completions and Display pages. This also reduces the
minimum height of the Preferences dialog.
2008-06-21 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/win32.c:
Fix Windows build.
2008-06-20 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/document.c, src/documentprivate.h:
Don't colourise any documents until they need to be drawn. This
should make Save All faster for filetypes that support typename
highlighting, and makes the document_delay_colourise(),
document_colourise_all() functions redundant (they'll be removed in
the next commit).
Note: I'll move on_editor_expose_event() to editor.c.
* src/dialogs.c:
Use stack buffers for g_vsnprintf() instead of heap allocation.
* src/callbacks.c, src/keyfile.c, src/document.c, src/document.h,
src/main.c, src/socket.c:
Remove document_delay_colourise(), document_colourise_all().
* src/document.c, src/editor.c, src/editor.h:
Move on_editor_expose_event(), create_new_sci() to editor.c.
Make on_editor_button_press_event() and on_editor_scroll_event()
2008-06-19 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/dialogs.c, src/dialogs.c:
Add dialogs_show_input_numeric().
*, src/callbacks.c, src/callbacks.h, src/editor.c,
src/editor.h, src/interface.c:
Add "Replace spaces by tabs".
* doc/geany.txt, doc/geany.html, src/keybindings.c, src/keybindings.h,
Add keybindings for Line wrapping, Line breaking, Toggle fold and
Replace Spaces by tabs.
Refactor different document keybindings callback functions into
* src/editor.c:
Improve scrolling on wrapped lines to avoid having search results on
wrapped lines but outside of visible lines.
* src/editor.c:
Allow symbol auto completion in embedded JavaScript in HTML files
(closes #1997409).
* src/document.c, src/editor.c, src/editor.h:
Allow scrolling page by page by holding down the Shift or Alt key
(closes #1995405).
* src/msgwindow.c:
Add "Copy All" to the popup menu of the Status, Compiler and Messages
treeviews to copy all items to the clipboard.
* src/editor.c:
Scroll by page only when Alt key is held to avoid possible conflicts.
2008-06-18 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/build.c, src/utils.c, src/win32.c, src/ui_utils.h, src/build.h,
src/utils.h, src/keybindings.c, src/printing.c, src/printing.h,
src/tools.c, src/tools.h, src/project.c, src/encodings.c,
src/prefs.c, src/dialogs.c, src/dialogs.h, src/navqueue.c,
src/geanyobject.c, src/plugindata.h, src/navqueue.h,
src/geanyobject.h, src/geany.h, src/treeviews.c, src/msgwindow.c,
src/callbacks.c, src/notebook.c, src/treeviews.h, src/msgwindow.h,
src/callbacks.h, src/notebook.h, src/keyfile.c, src/vte.c,
src/filetypes.c, src/search.c, src/filetypes.h, src/search.h,
src/document.c, src/plugins.c, src/document.h, src/main.c,
src/editor.c, src/symbols.c, src/socket.c, src/editor.h,
src/symbols.h, src/ui_utils.c, doc/plugins.dox, plugins/export.c,
plugins/vcdiff.c, plugins/filebrowser.c, plugins/htmlchars.c,
plugins/autosave.c, plugins/classbuilder.c:
Merge the document-pointer branch.
Note: this breaks the plugin API for document functions,
document signal callbacks, msgwin_msg_add() and navqueue_goto_line().
Make all DocumentFuncs use a GeanyDocument* instead of an integer
index, so there's no need to access the documents array or use
DOC_IDX_VALID() - usually just check for non-NULL.
Pass a document pointer to the callbacks of all "document-*" signals.
Add GeanyDocument::index field for use with the documents array.
Remove DocumentFuncs::get_cur_idx() - use get_current() instead.
Replace DocumentFuncs::get_n_idx() with get_from_page().
Rename DocumentFuncs::find_by_realpath() to find_by_real_path().
Replace DocumentFuncs::remove() with remove_page().
Add 'changed' argument for DocumentFuncs::set_text_changed().
Make NavQueueFuncs and MsgWinFuncs use a GeanyDocument* instead of an
integer index.
Add DOC_VALID() macro.
Add deprecated DOC_IDX() macro to get the document index from a
possibly NULL pointer; deprecate macro DOC_IDX_VALID. These macros
can make porting outside plugins easier; of course, it is better to
rewrite the code to use document pointers.
Use document pointer instead of an index to the documents array
everywhere in the core code.
Rename utils_check_disk_status() in document_check_disk_status() and
move it into document.c.
Adjust plugins to work with these changes.
Add dox for document_set_filetype().
Rename debugging function doc() doc_at() to avoid conflicts.
Update plugin signals dox.
2008-06-17 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
*, src/interface.c, src/keybindings.c:
Fix spelling of a few strings (mostly BE -> AE).
* src/build.c:
Fix executing commands in the VTE.
2008-06-17 Frank Lanitz <frank(at)frank(dot)uvena(dot)de>
* THANKS: Small update of Polish translation provided by Krzysztof
Troska. Thanks for it.
2008-06-15 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* tagmanager/python.c:
Fix a regression introduced in latest bug fixes and fix some
indentation and comments.
* wscript:
Add compiler flags to supress Scintilla warnings.
Fix old usage of build.env.
Make configure-only options only available when actually configure
is used.
* scintilla/ScintillaGTK.cxx:
Backport string casts from Scintilla CVS to avoid compiler warnings.
2008-06-11 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* tagmanager/python.c:
Use proper quoted multi-line string check from CTags SVN.
* src/geanyobject.c:
Fix wrong marshal type (pointer != int).
* scripts/
Create Makefiles for src, tagmanager and scintilla sub directories
to be able to run make from within Geany.
* scintilla/scintilla-marshal.c:
Updated generated marshal code for Scintilla.
2008-06-10 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/utils.c:
Allow and use arguments to the browser command (closes #1989575).
Add 'xdg-open' as first browser fallback.
* tagmanager/python.c:
Fix endless loop when there are two triple strings on one line
inside a multiline string.
*, data/python.tags, scripts/,
Add to create a global tags file for Python
(thanks to Dominic Hopf).
Add generated Python tags file (Python 2.5).
* data/php.tags, scripts/create_php_tags.php, tagmanager/tm_tag.c:
Change format of PHP tags file to internal tagmanager format since
it is auto-generated and is read maybe a little bit faster.
Add auto-generated notice and timestamp at the beginning of the file.
2008-06-10 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* tagmanager/python.c:
Remove unnecessary vStringClear(name) calls after using the name
buffer, as the convention is now to clear the buffer before use, and
this is easier to remember to do.
2008-06-09 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* scintilla/makefile.win32:
Compile Scintilla without threading support to fix freezes with
GLib >= 2.16 on Windows.
* doc/
Remove useless path separator.
Set $(docdir) if it is not set automatically.
* geany.nsi, plugins/makefile.win32, src/makefile.win32, src/main.c,
Windows changes:
Install plugins into lib/ not into plugins/.
Don't link against libiconv when compiling against GLib 2.14 and
above (it's statically linked into GLib).
Install Geany's message catalogs into share/locale rather than
lib/locale as GTK does since 2.12.2.
2008-06-09 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* tagmanager/python.c:
Fix variable names sometimes having leading junk characters.
* tagmanager/python.c:
Refactor using findVariable().
2008-06-07 Frank Lanitz <frank(at)frank(dot)uvena(dot)de>
* THANKS, src/about.c: Added Anna Talianova to list of contributers for
Czech translation.
2008-06-08 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* doc/geany.html, doc/geany.html, src/encodings.c:
Fix two ambiguous encoding names for better compatibility with
libiconv (closes #1986134).
Improve the regular expression for detecting encoding cookies to
allow more variants (e.g. "encoding: utf-8").
* tagmanager/python.c:
Use Python from CTags SVN.
Adapt variable parsing code from the old parser code.
Fix three bugs (see CTags bugs #1988026, 1988027 and 1988130).
* waf:
Update Waf to its latest SVN version.
* wscript:
Don't update po files on normal build, add target --update-po for
this task.
Fix wrong handling of CCFlags and CXXFlags which caused the build
to hang if CFLAGS were not already set.
Don't make checks for header files and functions mandatory.
Update some method names to latest API changes in Waf.
Various other small fixes.
Fix indentation of two lines.
List source files explicitly to avoid compiling foreign source files.
* scintilla/include/Scintilla.h, scintilla/include/Scintilla.iface,
Backport AutoCCancelled event implementation from Scintilla CVS.
* src/editor.c:
Reshow a previously shown calltip if an auto completion list was
2008-06-07 Frank Lanitz <frank(at)frank(dot)uvena(dot)de>
* src/prefs.c: Update of a string for adding a missing full stop.
2008-06-06 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/ui_utils.c:
Display current file position in the status bar when compiled
Rename in as we need to
process it only once.
* plugins/vcdiff.c:
Fix diff output when files were manually added with 'git add'
in GIT repositories (patch by Yura Siamashka, thanks).
* wscript:
Remove unused imports.
Remove hacks for and
Move htmldoc and apidoc targets into shutdown().
2008-06-06 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/utils.c:
Check that the current file is still on disk as well as checking the
modification time.
Also fix the document last_check assignment so that the disk is only
polled every file_prefs.disk_check_timeout seconds (not sure how
this got missing - maybe it was my fault?).
* src/editor.c:
Revert use of SCN_PAINTED - this is called much more often than
SCN_UPDATEUI and slows down Geany.
2008-06-05 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
*, waf, wscript, scripts/
Add alternative build system: Waf.
Use to create a Makefile and configure files.
*, wscript, tagmanager/entry.c:
Remove check for unistd.h, assume it is available (already often
used without checking).
2008-06-05 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/document.c:
Only set GeanyDocument::real_path when the file exists on disk -
after a successful save or open.
* src/keyfile.c:
Only save session documents that have existed on disk (don't save
documents with a filename set but have never been saved).
* src/document.c:
Only reorder recent files on closing documents that have existed on
* src/dialogs.c:
Fix segfault after Save As (oops).
2008-06-04 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/dialogs.c:
Restore the previous state of main_status.quitting status when asking
for reload a changed file instead of setting it to true.
* src/dialogs.c, src/document.c:
Change preprocessor checks for sys/time.h and remove unnecessary
sys/stat.h check.
*, src/gb.c:
Remove useless or unused configure checks.
* doc/
Install THANKS file by default.
2008-06-03 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/build.c, src/dialogs.c, src/document.c, src/document.h,
src/msgwindow.c, src/navqueue.c, src/plugindata.h, src/plugins.c,
src/symbols.c, src/win32.c:
Note: this breaks the plugin API for plugins using
Make document_find_by_filename() take only a utf8_filename argument,
and now match any documents that have a filename set but aren't saved
on disk.
Add document_find_by_realpath() to the plugin API.
Add filename argument for document_save_file_as().
Add GeanyDocument::real_path field, which if non-NULL indicates the
file once existed on disk (not just as an unsaved document filename).
* plugins/vcdiff.c:
Fix using wrong encoding for document filename when doing a
directory diff.
Replace find_by_filename() with p_document->find_by_filename() (now
it does the same job).
2008-06-03 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/main.c:
Fix slightly wrong preprocessor checks.
* src/dialogs.c:
When quitting, prevent inconsistent GUI elements when cancelling on
an unsaved file.
2008-06-02 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/documentprivate.h, src/prefs.c, src/plugindata.h,
src/treeviews.c, src/callbacks.c, src/notebook.c, src/document.c,
src/document.h, src/editor.c, src/symbols.c, src/,
Move GeanyDocument GUI elements and saved_encoding to private
Document struct which inherits from GeanyDocument. This is to hide
implementation fields from the plugin API, so that we can change
them if necessary.
Add DOCUMENT() macro to convert a GeanyDocument* to a Document*.
Also move UNDO_*, FileEncoding to documentprivate.h.
Move undo_action struct to document.c.
* src/utils.c:
Reload a changed document immediately on user clicking reload
(waiting was not related to the now fixed reload-colourise problem).
* src/document.c:
Fix possible document double-colourise after reloading a file.
* src/editor.c:
Cancel any autocompletion list when completing a snippet.
2008-05-30 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/plugindata.h:
Add deprecated macro for doc_array.
* src/editor.c:
Allow line breaking after typing any character, not just wordchars.
* src/editor.c:
Handle non-Scintilla GUI updates after SCN_PAINTED instead of
SCN_UPDATEUI to hopefully appear more responsive to typing.
2008-05-29 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/project.h, src/plugindata.h, src/geany.h, src/filetypes.h,
Remove underscore prefix from some struct names.
2008-05-29 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/build.c, src/utils.c, src/win32.c, src/keybindings.c,
src/printing.c, src/tools.c, src/prefs.c, src/dialogs.c,
src/navqueue.c, src/plugindata.h, src/treeviews.c, src/msgwindow.c,
src/callbacks.c, src/notebook.c, src/keyfile.c, src/vte.c,
src/filetypes.c, src/search.c, src/document.c, src/plugins.c,
src/document.h, src/main.c, src/editor.c, src/symbols.c,
src/socket.c, src/ui_utils.c, plugins/export.c, plugins/vcdiff.c,
plugins/filebrowser.c, plugins/htmlchars.c, plugins/autosave.c,
plugins/pluginmacros.h, plugins/classbuilder.c:
Note: this breaks the plugin API.
Replace doc_array with documents_array, a pointer array. This is
necessary to avoid breaking the ABI every time a field is added to
Remove deprecated pluginmacros.h documents macro, to avoid a
Replace doc_list[] macro with documents[] macro, which returns a
GeanyDocument pointer.
2008-05-28 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* doc/geany.css, doc/geany.html:
Add media types for screen and print to have a clean version
of the manual for printing.
* plugins/
Add again all GTK libraries to linker flags for each plugin.
2008-05-28 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/plugindata.h, src/plugins.c, doc/plugin-symbols.c,
plugins/demoplugin.c, plugins/filebrowser.c, plugins/autosave.c:
Note: this breaks the plugin API.
Remove plugin symbol configure().
Add plugin symbol plugin_configure() which is used to tell Geany a
widget to pack into the plugin preferences dialog, and connect a
response callback for when the dialog receives a user decision.
This allows Geany to in future implement a common preferences dialog
for all plugins, without breaking the plugin API/ABI.
Add Apply button for plugin preference dialogs (to indicate plugins
should handle the apply response as well as OK, as a multiple plugin
configuration dialog would want an apply button).
2008-05-27 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/plugins.c:
Fail to load a plugin if it has no plugin_init() function.
* src/plugins.c:
Make plugin_free() act like a destructor only, let
pm_dialog_response() call a separate function to only free non-active
2008-05-26 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/plugins.c:
Move all symbol lookups except plugin_set_info() into plugin_init().
Add debug message for missing init() function in a plugin.
* src/plugindata.h, src/plugins.c, doc/plugin-symbols.c,
Add plugin_ prefix for plugin symbols version_check, init and
cleanup. Deprecate init and cleanup; update PLUGIN_VERSION_CHECK
Add a debug message and fail to load a plugin if it has no
plugin_version_check() function.
Check that plugin keybinding names have been set in plugin_init(),
otherwise print a debug message and ignore all of them.
* plugins/export.c, plugins/vcdiff.c, plugins/demoplugin.c,
plugins/filebrowser.c, plugins/htmlchars.c, plugins/autosave.c,
Fix plugins to compile with GEANY_DISABLE_DEPRECATED.
2008-05-23 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/plugindata.h, src/plugins.c, doc/plugin-symbols.c,
Make GeanyCallback, geany_callbacks deprecated, and replace with
PluginCallback, plugin_callbacks. This is because the array is owned
by the plugin, not Geany.
* src/plugindata.h:
Increment plugin ABI, API versions for plugin_callbacks change.
* src/plugindata.h, src/plugins.c, doc/plugin-symbols.c,
doc/plugins.dox, plugins/export.c, plugins/vcdiff.c,
plugins/demoplugin.c, plugins/filebrowser.c, plugins/htmlchars.c,
plugins/autosave.c, plugins/classbuilder.c:
Deprecate PLUGIN_INFO() in favour of PLUGIN_SET_INFO().
Remove plugin symbol info(), which is replaced by plugin_set_info()
and a new symbol plugin_info. This is so the PluginInfo struct is
zero'd first by Geany, so plugins are still ABI compatible if we
want to add any more fields in the future.
Fail to load a plugin if plugin_info->name is not set.
Remove now unused string.h include from plugindata.h.
2008-05-22 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/templates.c, src/build.c, src/utils.c, src/ui_utils.h,
src/win32.c, src/utils.h, src/keybindings.c, src/printing.c,
src/tools.c, src/sciwrappers.c, src/project.c, src/sciwrappers.h,
src/encodings.c, src/prefs.c, src/dialogs.c, src/navqueue.c,
src/plugindata.h, src/geany.h, src/about.c, src/treeviews.c,
src/msgwindow.c, src/callbacks.c, src/notebook.c, src/keyfile.c,
src/filetypes.c, src/search.c, src/document.c, src/plugins.c,
src/main.c, src/editor.c, src/symbols.c, src/socket.c,
src/editor.h, src/ui_utils.c, plugins/export.c, plugins/vcdiff.c,
plugins/demoplugin.c, plugins/filebrowser.c, plugins/htmlchars.c,
plugins/autosave.c, plugins/pluginmacros.h, plugins/classbuilder.c:
Note: this commit breaks the plugin API.
Split widget fields out of GeanyApp into GeanyMainWidgets, so other
data items can be added without breaking the plugin ABI.
Add GeanyData::main_widgets, and macro.
Rename treeview_notebook sidebar_notebook in GeanyMainWidgets.
Move tools_menu from GeanyData to GeanyMainWidgets.
Move statusbar out of GeanyApp (shouldn't be used directly).
Move ignore_callback out of GeanyApp.
Rename sci_goto_line() argument unfold, like sci_goto_pos().
Make utils_goto_file_pos(), utils_goto_line(),
utils_switch_document() into static functions (they are UI-related,
so shouldn't be in utils.c).
Move utils_goto_pos() to editor.c, add mark argument.
2008-05-21 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* plugins/
Specify the necessary libraries of each plugin to link against.
*, win32-config.h, src/gb.c:
Fix some quotations to not screw up the bash lexer.
Don't use /dev/random or /dev/urandom in gb.c, instead of GLib's
random functions.
2008-05-21 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/editor.c:
Refactor editor_auto_line_indentation().
Make Smart Line Indentation set the cursor to the beginning of
indentation for single line selections, so the user can fine-tune
indentation if necessary. For multiple line selections, select all
the lines after indenting.
* src/keybindings.c, src/editor.c, src/editor.h:
Rename editor_auto_line_indentation() to
2008-05-19 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/plugindata.h, src/plugins.c, doc/plugin-symbols.c,
plugins/export.c, plugins/vcdiff.c, plugins/demoplugin.c,
plugins/filebrowser.c, plugins/htmlchars.c, plugins/autosave.c,
plugins/pluginmacros.h, plugins/classbuilder.c:
Note: this breaks the plugin API.
Split GeanyFunctions out of GeanyData so data pointers can be
appended before the function pointer structs without breaking the
Rename GeanyFunctions fields with a p_ prefix to avoid name
Add new plugin symbol geany_functions.
Nearly all plugins will now need to declare the following:
'GeanyFunctions *geany_functions;', which is now used by
Add doxygen examples for geany_data and geany_functions.
Move deprecated document and filetype typedefs to src/plugindata.h,
as plugins aren't required to use pluginmacros.h.
Initialize geany_data by copying a stack struct so the compiler can
check for any missing field initializers.
Rename plugin macro p_encoding to p_encodings to follow the core
function encodings_ prefix.
* src/msgwindow.c, src/editor.c:
Fix doxygen-1.4.6 warnings about undocumented function parameters
when using documentation comments e.g. for TODO.
* plugins/pluginmacros.h:
Add deprecated p_encoding alias for p_encodings.
* src/keybindings.c:
Fix Switch to Sidebar shortcut so that it works for whichever widget
is in the current sidebar notebook page (fixes #1967104).
* doc/, plugins/pluginmacros.h:
Add API documentation for pluginmacros.h.
* doc/plugins.dox:
Add Main Page links to plugindata.h and pluginmacros.h.
2008-05-18 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/document.c:
Force using tabs for indentation when opening Makefiles.
* plugins/pluginmacros.h:
Define p_editor in the right way, oops.
* doc/, doc/geany.html, doc/geany.txt, src/main.c:
Allow loading projects from command line (closes #1961083).
2008-05-16 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* plugins/pluginmacros.h, plugins/vcdiff.c, src/build.c,
src/callbacks.c, src/dialogs.c, src/document.c, src/document.h,
src/editor.c, src/filetypes.c, src/filetypes.h, src/geany.h,
src/keybindings.c, src/keyfile.c, src/main.c, src/msgwindow.c,
src/notebook.c, src/plugindata.h, src/printing.c, src/symbols.c,
src/templates.c, src/templates.h:
Rename document struct to GeanyDocument.
Rename filetype struct to GeanyFiletype.
* src/build.c, src/build.h, src/plugindata.h:
Rename BuildInfo struct to GeanyBuildInfo.
2008-05-16 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/templates.c, src/build.c, src/utils.c, src/ui_utils.h,
src/templates.h, src/keybindings.c, src/printing.c, src/prefs.c,
src/dialogs.c, src/prefs.h, src/plugindata.h, src/treeviews.c,
src/msgwindow.c, src/callbacks.c, src/notebook.c, src/keyfile.c,
src/search.c, src/search.h, src/document.c, src/plugins.c,
src/document.h, src/main.c, src/editor.c, src/editor.h, src/ui_utils.c,
plugins/export.c, plugins/filebrowser.c:
Note: this commit breaks the plugin API (but is necessary so that in
future the ABI can stay stable when adding preferences).
Split up prefs into interface_prefs, toolbar_prefs, file_prefs,
search_prefs, tool_prefs, template_prefs, and add these to the
plugin API.
Move suppress_search_dialogs and search_use_current_word to
search_prefs, and rename accordingly.
Rename switch_msgwin_pages pref to switch_to_status.
Remove toolbar_ prefix for toolbar_prefs items.
Remove tool_ prefix for tool_prefs items.
Remove template_ prefix for template_prefs items.
Add Geany prefix for EditorPrefs.
Add Geany prefix for SearchPrefs.
Initialize search_prefs to zero in main.c.
* plugins/filebrowser.c:
Make right clicking on items not lose the current selection, like
the standard GtkFileChooser.
Add separator before the Clear filter toolbar button.
2008-05-15 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/*.c src/*.h:
Move several editing related functions from document.c to editor.c.
Fix two compiler warnings about non-literal format strings.
* plugins/pluginmacros.h:
Make p_editor macro also available if GEANY_DISABLE_DEPRECATED
is not defined.
2008-05-14 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
*, src/document.c, src/document.h, src/editor.c,
src/editor.h, src/interface.c, src/keyfile.c, src/plugindata.h,
src/prefs.c, src/prefs.h, src/utils.c, src/utils.h, doc/geany.txt,
Add preferences for default end of line characters for new files
(closes #1895362) and to disable the automatic continuation of
multi-line comments in C-like languages.
Enable multi-line continuation also for CSS files.
* src/document.c, src/document.h, src/msgwindow.c, src/msgwindow.h,
src/plugins.c, src/plugindata.h:
Add new function document_set_indicator_on_line() for future use.
Add some functions to the plugin API for the upcoming spell check
* plugins/vcdiff.c:
Change an error message to be more clear about the error.
* src/templates.c:
Remove unnecessary case statement for PHP files, can be handled by
the default case.
* src/filetypes.c:
Add shebang detection for Makefiles.
* src/build.c, src/plugindata.h, src/msgwindow.c, src/callbacks.c,
src/filetypes.c, src/document.c, src/plugins.c, src/document.h,
src/main.c, src/editor.c, src/editor.h, plugins/pluginmacros.h:
Move indicator functions from document.c into editor.c.
2008-05-14 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/templates.c:
Sort custom template file menu items by filetype, with None
filetypes first.
* src/document.c:
Recolourise the document in document_reload_file() because the
text may have changed (should fix #1948857).
* src/document.c:
Fix line breaking not getting reset for new documents sometimes.
Merge all document default settings into init_doc_struct().
Update adding a filetype section, make clearer.
2008-05-13 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/templates.c, src/utils.c, src/ui_utils.h, src/ui_utils.c,
doc/geany.txt, doc/geany.html, TODO:
Add support for custom file templates found at startup in the
~/.geany/templates/files directory. These are currently shown
underneath filetype templates in the New with Template menu.
Add ui_menu_item_get_text().
Make utils_string_replace_all() ignore empty haystacks.
* src/templates.c:
Create ~/.geany/templates/files directory if it doesn't exist.
2008-05-12 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/highlighting.c, data/filetypes.xml:
Use Javascript styles for any VBScript and ASP code embedded in a
HTML file.
Use Python styles for embedded Python code.
* src/highlighting.c:
Remove hotspot code as it was never really used.
* src/socket.c:
Iconify the main window on Windows before de-iconifying it when
opening files remotely to ensure the main window pops up.
* src/symbols.c:
Clear a document's symbol list first after it was detached from its
container to prevent crashes when saving files with collapsed
symbol list items.
2008-05-10 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/dialogs.c, src/prefs.c:
Use gtk_window_present() instead of gtk_widget_show() for Open File
and Preferences dialog.
2008-05-09 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/interface.c, src/prefs.c, src/callbacks.c, src/callbacks.h,
src/keyfile.c, src/document.c, src/document.h, src/editor.c,
src/editor.h, src/ui_utils.c,, TODO, doc/geany.txt,
Add basic Line Breaking option in the Document menu. Line breaking
only works when typing characters past the line breaking column
Add 'Line breaking column' editor pref.
* src/callbacks.c, src/callbacks.h, src/interface.c, src/keyfile.c,
src/main.c, src/ui_utils.c,
Rename old uses of line breaking -> line wrapping. This includes the
keyfile pref, so any users with this enabled will have to reset it.
* doc/geany.txt, doc/geany.html:
Update Code Navigation section for build errors and message items.
Correct Load Tags menu item being in the Tools menu now.
Document 'Disk check timeout' pref.
* src/plugindata.h:
Update api_version for new line breaking struct fields.
* src/filetypes.c:
Set filetype::id automatically in filetype_add().
* src/filetypes.c:
Add source_only argument for filetypes_find_source() and rename.
2008-05-08 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/filetypes.c:
Fix C headers getting detected as C++ files (iterate through
filetypes_array, not filetypes_hash as the order is not consistent
with the filetype_id enum).
Add static function filetypes_find_source().
2008-05-07 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/templates.c, src/build.c, src/utils.c, src/win32.c,
src/highlighting.c, src/dialogs.c, src/plugindata.h,
src/msgwindow.c, src/keyfile.c, src/keyfile.h, src/filetypes.c,
src/filetypes.h, src/document.c, src/plugins.c, src/main.c,
src/symbols.c, src/ui_utils.c, plugins/vcdiff.c,
Merge revisions 2537:2558 from the custom-filetypes branch:
Note: this breaks the API.
This commit is to restructure most of the filetypes code that
affects the plugin API, custom filetype support is not implemented.
Add filetypes_array to GeanyData for plugins to access a dynamic
array of filetype pointers.
Remove old filetypes array from API.
Use a hash table for filetypes, using filetype::name keys.
Replace filetypes_get_from_uid() with filetypes_lookup_by_name().
Store filetype::name instead of unique ID when saving sessions.
Remove all filetype UID code.
Remove GEANY_MAX_FILE_TYPES - use filetypes_array->len (or
Make Open dialog file filter work for filetypes added after
GEANY_FILETYPES_NONE (really the None filetype should be made the
first element in filetypes_array, but this would need rewriting
quite a lot of code).
Add deprecated aliases for GEANY_MAX_FILE_TYPES and
Remove unused filetype::item field.
Create FullFileType private type that 'inherits' from filetype
(FullFileType* can be cast to filetype*). This is used in
filetype_new() to hide filetype struct fields from the API.
Remove radio_items[] and use FullFileType::menu_item instead.
Make filetypes_detect_from_extension() work for all filetypes
in filetypes_hash.
Add filetype_new() to create and initialize a new filetype.
Refactor open_session_file() from configuration_open_files().
Refactor get_session_file_string() from
Refactor create_set_filetype_menu() from filetypes_init().
Move print_filetypes() out of parse_command_line_options();
2008-05-06 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* doc/geany.txt, doc/geany.html:
Add a note about the limitation of matching only line by line
when using regular expressions.
2008-05-04 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/document.c:
Show an error dialog with an appropriate message when a file could
not be saved.
* THANKS, src/about.c:
Update email address of Dormouse Young.
* tagmanager/html.c:
Fix parsing when heading tags contain attributes (part of #1896068).
2008-04-27 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
*, tagmanager/lregex.c, tagmanager/include/regex.h,
tagmanager/include/gnuregex.h, tagmanager/ :
Add configure option --enable-gnu-regex to implicitly build the
included GNU regex library (in case the host system doesn't provide
a usable regex library).
Rename tagmanager/include/regex.h in tagmanager/include/gnuregex.h
to avoid unintended inclusion in source files (this fixes the
OpenSolaris crashes).
* src/encodings.c:
Don't use GNU regex specific regex_t::buffer element to build also
without this extension (e.g. on OpenSolaris).
Don't check for CVS directory as we don't use CVS anymore and remove
non-portable -path option of find.
* src/document.c:
Fix crash when trying to change the encoding of a file
(introduced in r2529).
* src/keybindings.c:
Allow Ctrl-A (or whatever "Select All" has been set to) to select
all text in the scribble text widget (closes #1952335).
2008-04-25 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/document.c:
Refactor write_data_to_disk() and save_convert_to_encoding()
from document_save_file().
Include missing error string in error message when writing the
file failed.
* tagmanager/ctags.c:
Set ExecutableName to "geany" to prevent possible crashes on
Windows and maybe other systems.
2008-04-25 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/document.c:
Add/reorder a recent file item when closing a document.
* src/utils.c:
Make utils_is_absolute_path() a NULL-safe version of
2008-04-24 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* data/filetypes.xml, data/filetypes.javascript, src/highlighting.c:
Unify the embedded JavaScript styles with the styles of the
JavaScript filetype for a more consistent styling of JavaScript in
2008-04-24 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/utils.c:
Make utils_get_file_list() use a case-insensitive search so that the
file browser lists files and directories in a more intuitive order.
* src/project.c:
Fix build because of wrong document_close_all() usage - oops.
* src/callbacks.c, src/document.c, src/document.h:
Move Close All functions to document.c.
Add document_account_for_unsaved().
2008-04-23 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/win32.c, src/project.h, src/geany.h, src/keyfile.c,
src/symbols.c, src/editor.h, doc/geany.txt, doc/geany.html:
Move non-general compile-time constants into their relevant source
* src/utils.c, src/interface.c, src/prefs.c, src/prefs.h, src/keyfile.c,
Make disk check timeout configurable in the prefs dialog Files tab.
Make a value of zero disable disk checks.
* src/project.c, src/document.c, src/document.h:
Add document_close_all() and use it in project.c.
2008-04-22 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/plugins.c:
Fix GLib warning when starting with a new config.
* src/prefs.c:
Fix wrong usage of gtk_file_chooser_get_filename() in callback of
Open File dialogs in the preferences dialog.
* plugins/autosave.c, src/search.c, src/document.c:
Make use of ngettext() for strings with plural forms.
Add target "sign" to sign generated tarballs with gpg.
* plugins/filebrowser.c:
Add file filter text entry (patch by Robert McGinley, thanks).
2008-04-20 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/build.c:
Don't chmod created run script when using the Run command and
execute the script with /bin/sh on Unix-like systems to be able
to run files on FAT filesystems.
*, src/interface.c:
Fix wrong tooltip for "Show Increase and Decrease Indentation
buttons" in the preferences dialog.
2008-04-19 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* tagmanager/js.c:
Make property tags be recognised in the symbol list.
* src/document.c, src/navqueue.c, src/navqueue.h:
Clean related navigation queue items when closing a document.
* New release: Geany 0.14 "Selit".
*, geany.nsi, geany_private.rc, win32-config.h,
doc/geany.txt, doc/geany.html, src/geany.h:
Post-release version bump.
2008-04-18 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* doc/geany.txt, doc/geany.html:
Move 'Switching between documents' from prefs Interface section into
new Documents section.
Remove repeated title text of preference dialog tab sections.
Edit preferences descriptions for clarity.
Comment out some unexplained General preferences.
Fix some prefs typos, add some links and expand some descriptions.
Correct some wrong preferences descriptions (e.g. Back/Forward
2008-04-18 Frank Lanitz <frank(at)frank(dot)uvena(dot)de>
* THANKS, NEWS, src/about.c:
Added Chikahiro Masami as new translator for Japanese translation.
2008-04-17 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/navqueue.c, src/plugindata.h, src/navqueue.h, src/plugins.c,
Add navqueue_goto_line() to plugin API.
Make navqueue_goto_line() store document filename instead of
tagmanager filename (patch by Yura Siamashka, thanks).
This makes it also possible to add navigation history items for files
without a tagmanager filename.
* tagmanager/make.c:
Improve Makefile parser for better parsing of targets
(from CTags' patches tracker, for reference this is patch v3).
2008-04-16 Frank Lanitz <frank(at)frank(dot)uvena(dot)de>
* THANKS, NEWS, src/about.c, po/LINGUAS, po/ro.po:
Added Romanian translation (Thanks to Alex Eftimie).
2008-04-16 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/interface.c, src/callbacks.c, src/callbacks.h, NEWS,
Make pressing escape in the sidebar focus the editor.
Group toolbar GtkEntry escape key checks into a common callback.
* src/main.c:
Refactor handle_cl_filename() from open_cl_files().
* src/callbacks.c:
Fix geany_debug() warnings with Close All.
* src/keyfile.c, src/plugins.c, src/plugins.h:
Move plugin keyfile pref saving and loading to plugins.c.
* src/plugindata.h, src/geany.h, src/plugins.c, src/main.c:
Remove active_plugins from GeanyApp.
* src/plugins.c, NEWS:
When quitting, remember plugin filenames that couldn't be loaded at
startup as well as active plugins.
2008-04-15 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* doc/images/pref_dialog_gen.png:
Update for 0.14.
* plugins/makefile.win32, scintilla/makefile.win32, src/makefile.win32,
Add DEBUG flag to all Windows makefiles to make it possible to build
with debug symbols and without optimizations also on Windows
(using make DEBUG=1).
2008-04-13 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/callbacks.c, src/callbacks.h:
Fix wrong return value for on_close_all1_activate() callback.
Fix broken Close All command by not double checking for validity
of a document.
Remove "documentation: preferences" item as it has been mostly done
by Robert McGinley.
2008-04-11 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* THANKS, doc/geany.txt, doc/geany.html:
Add documentation for several options in the preferences dialog
(patch from Robert McGinley, thanks).
* src/filetypes.c, src/ui_utils.c:
Revert the translatable filetype name of filetype All, add a
workaround in ui_update_statusbar() instead.
* data/filetypes.xml, src/highlighting.c:
Update PHP keywords (closes #1939931).
2008-04-10 Frank Lanitz <frank(at)frank(dot)uvena(dot)de>
* src/filetypes.c: Make another string translatable. Thanks to Adrovane
Kade for reporting.
2008-04-10 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/editor.c:
Fix a couple of wrong or missing checks to prevent auto completion
in comments in several filetypes.
* THANKS, scripts/create_php_tags.php, data/php.tags:
Add script to generate PHP tags file (by Matti Mårds, thanks).
Update PHP tags file to latest PHP API docs (closes #1888691).
* src/navqueue.c, src/utils.c, src/utils.c:
Make navigation queue position based to restore the line and column
when returning to a previous position (closes #1936927).
2008-04-09 Frank Lanitz <frank(at)frank(dot)uvena(dot)de>
* src/ui_utils.c: Make some more strings translatable. Thanks to
Adrovane Kade for reporting.
2008-04-09 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
Add an explicit check for a C++ compiler (#1938040).
* plugins/
Avoid linking plugins against GTK libraries which seems unnecessary.
2008-04-08 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/document.c, src/document.h, src/main.c, src/project.c:
Add document_new_file_if_non_open() to open new documents if no
other documents are open.
* src/editor.c:
Backport a bugfix from Scite to fix folding problems.
*, scripts/, po/
Move script back to po directory to not have to
include the scripts directory in the distribution.
* src/win32.c:
Fix compiler warnings by correct type casting.
* src/symbols.c:
Fix possible crash by an uninitialized variable.
2008-04-06 Frank Lanitz <frank(at)frank(dot)uvena(dot)de>
* THANKS: Added Dominic Hopf to list of translation supporters.
2008-04-04 Frank Lanitz <frank(at)frank(dot)uvena(dot)de>
* Fix issue on make dist with
* scripts/ Make help output better readable if there are
not enough arguments given.
2008-04-03 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/callbacks.c:
Make Close All check for unsaved documents first before closing any,
so that clicking cancel keeps all documents open.
This also prevents the UI from not being updated after cancelling
Close All.
* NEWS, plugins/filebrowser.c:
Add configurable keybindings for focusing the Path Entry and File
Refactor load_settings() from init().
2008-04-03 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/keybindings.c:
Fix missing menu accelerators for default keybindings on startup.
Fix too small dialog window when showing the keyboard shortcuts
dialog from the help menu.
* src/plugins.c:
Show warning about ABI mismatch when loading plugins in the status
message window to avoid confusion about missing plugins.
2008-04-02 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/dialogs.c:
Fix GTK warnings in open file dialog by using a positive response ID
for the View button.
* src/callbacks.c, src/main.h, src/project.c:
Ignore notebook_switch_page signal handler when closing projects
to speed it up a little bit with many session files.
* po/, scripts/
Move script to scripts directory and make it working
from top source directory.
* src/document.c:
Avoid setting line number margin twice when creating new tabs, also
don't call gtk_notebook_set_current_page() explicitly as it isn't
*, src/interface.c:
Make the notebook tabs in the messages window scrollable.
2008-04-01 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/interface.c, src/plugins.c,
Move Load Tags item from File to Tools menu.
Capitalize Page Setup item.
Add separator before Plugin Manager item.
* src/navqueue.c, src/msgwindow.c:
Make navqueue_goto_line() ignore an invalid old document index, and
ignore any documents that don't have a tagmanager work object.
Make Next Error and Next Message commands add positions to the
navqueue, so the user can return to where they were and also so they
can move backwards through error and message items.
2008-03-31 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/build.c, src/interface.c, src/vte.c, plugins/export.c,
Add missing mnemonics (except for 3 popup menu items, ran out of
Capitalize some menu items.
* src/interface.c,
Add 3 remaining mnemonics for popup menu, copy Insert include
mnemonic - even though these have conflicts, just let GTK toggle
between them.
2008-03-28 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/editor.c:
Unfold hidden code when the fold point modified
(e.g. commented out, fixes #1923350).
Add datadir and localedir to Geany's pkgconfig file.
* src/callbacks.c:
Fix usage of wrong pointer when showing the toolbar popup menu.
2008-03-27 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* plugins/vcdiff.c:
Rename VCDiff plugin Version Diff.
* src/plugindata.h:
Document most of GeanyData, add links to files.
Make PluginData alias deprecated.
* src/utils.c:
Fix getting asked whether to reload a file twice, when a disk check
is forced immediately after a disk check has been done.
* src/document.c:
Split document_create_new_sci() into document_create() and
Rename filename parameter utf8_filename.
* src/keybindings.c:
Check file on disk for changes (with timeout) when pressing a key.
* src/keyfile.c:
Ignore documents with no absolute path when saving session files.
* src/build.c:
Fix segfault with Run command when a project is open and the current
file's filetype has no run command.
2008-03-26 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* scintilla/*, scintilla/include/*:
Update Scintilla to version 1.76.
* scintilla/include/Scintilla.iface:
Add this file for plugin authors.
* plugins/vcdiff.c:
Fix two memory leaks and prevent showing two dialog boxes with the
same error message.
* src/document.c, src/win32.c, src/win32.h:
Add support for resolving Windows shortcuts when opening files and
open the shortcut's target.
2008-03-26 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* plugins/pluginmacros.h:
Rename p_filetype p_filetypes to keep the symmetry with filetypes_*,
and define it also when GEANY_DISABLE_DEPRECATED is not set.
Add note about not appending to structs like KeyBindingGroup and
* src/plugindata.h, doc/plugin-symbols.c, doc/plugins.dox, plugins/*.c:
Rename VERSION_CHECK PLUGIN_VERSION_CHECK, but keep a deprecated
alias so outside plugins still compile.
Update our plugins to use this.
2008-03-24 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/plugins.c, src/plugindata.h:
Add document_set_filetype() and filetypes_get_from_uid() to
the plugin API.
* plugins/pluginmacros.h:
Add p_filetype.
2008-03-24 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/editor.c:
Fix Python auto-indentation when line endings are set to CR/LF.
* src/keybindings.h, src/plugindata.h:
Add note about allowing appending of keybindings to groups without
breaking the API.
Undo unnecessary ABI change.
* src/plugindata.h:
Redo ABI change (it was for r2389 editor.h change, oops).
* src/symbols.c:
Make Go to Tag commands look for the tag in the current document
before searching the workspace.
Fix memory leaks when using tm_tags_extract().
2008-03-23 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* data/filetypes.common, doc/geany.txt, doc/geany.html,
Add styles to customize line and search marker and add
translucency setting.
* tagmanager/make.c, src/symbols.c:
Update Makefile parser from CTags SVN and improve it to detect
targets in Makefiles.
*, src/interface.c, src/prefs.c, src/prefs.h, src/keyfile.c
src/callbacks.c, src/search.c, src/editor.c, src/editor.h,
Add preference for not using the current word under the cursor when
opening Find dialogs.
* src/keybindings.c, src/keybindings.h, src/plugindata.h:
Add shortcut to switch to the sidebar.
* src/ui_utils.c:
Small improvement in counting changed documents for Save All update.
2008-03-23 Frank Lanitz <frank(at)frank(dot)uvena(dot)de>
* doc/plugins.dox: Fix a little typo that prevents docu from being build.
2008-03-22 Frank Lanitz <frank(at)frank(dot)uvena(dot)de>
* THANKS, src/about.c: Adjusted email of Brahmann.
2008-03-21 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/callbacks.c:
When opening the manual on the website, include version string to
ensure the appropriate manual version is shown.
* src/prefix.h, src/main.c, src/, doc/
Use configure's --docdir option when installing and using the
* data/snippets.conf:
Add better "for" completion for Python.
* tagmanager/tcl.c, src/symbols.c:
Update TCL parser from CTags SVN which adds new symbol types for
classes and methods (closes #1918748).
* data/snippets.conf:
Add missing colon to "for" snippet for Python and set cursor position
(thanks mamaar on IRC).
* src/win32.c:
Fix crash on Windows due to missing error message when a process
spawning fails.
* src/treeviews.c:
Allow selecting items in the symbol list by pressing Enter or Space.
2008-03-21 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/notebook.c:
When closing tabs that were opened left-to-right, don't temporarily
focus the previous tab when closing tabs, to prevent unnecessary
checking for disk changes.
* src/win32.c, src/dialogs.c, src/document.c, src/document.h:
Only use filetype detection after Save As, not on every save when the
filetype is None (fixes #1891778).
* src/dialogs.c, src/document.c:
Replace untitled file header filename after Save As and add to recent
files on Windows too.
* src/utils.c:
Fix asking detect reload question again if the user doesn't respond
within 10 seconds (oops).
2008-03-20 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* HACKING: Add note and link for GTK 2.6 API docs.
2008-03-20 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* doc/plugin-symbols.c, doc/, doc/plugins.dox:
Move plugin symbols page into separate source file so that symbols
are listed as variables and functions and are autolinked.
Edit plugin symbols description, document some function parameters.
* doc/plugins.dox:
Add page links on the main page (easier than going to Related Pages,
and we can also list special files like plugin-symbols.c).
* src/utils.c:
When detecting a change on disk, reload the file after all pending
Scintilla messages have been processed, to prevent problems with
partial colourisation.
* src/symbols.c:
Fix bug with showing macro list items all on one line.
* src/plugins.c:
Load and save plugin keybindings when toggling plugins in the Plugin
* doc/geany.txt, doc/geany.html:
Update configurable keybindings section for new plugin groups
Move scroll by one line shortcuts to configurable keybindings
2008-03-19 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/plugins.c:
Set mnemonic for Plugin Manager.
Use GTK_RESPONSE_CANCEL for Plugin Manager dialog so pressing escape
closes the dialog.
2008-03-18 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/treeviews.c, src/symbols.c, src/symbols.h:
Save sorting order of the symbol list when saving a file (#1917262).
* data/filetype_extensions.conf, src/filetypes.c:
Add ".xhtml" extension for filetype XML (#1914587).
2008-03-17 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* doc/geany.txt, doc/geany.html:
Add a note about column mode editing.
* src/editor.c:
Fix broken auto multiline comment with files in CR/LF mode.
* src/win32.c:
Fix encoding problems with project file dialogs.
* src/plugins.c:
Rework internal handling of plugin/module loading.
At startup, only load enabled plugins, all others are only loaded
when the plugin manager is opened and get completely unloaded when
it is closed.
* data/filetypes.caml, data/filetypes.cpp, data/filetypes.c,
data/filetypes.d, data/filetypes.fortran, src/build.c:
Remove old and useless code from build_link_file().
Don't add "-o" compiler option automatically instead make it
configurable through linker command.
* data/filetypes.python, src/highlighting.c:
Add additional keyword group for python and slightly change the
foreground colour for style "word2".
*, src/dialogs.c, src/interface.c:
Fix modal dialog problems on Windows by not setting taskbar hint
(closes #1916994).
2008-03-15 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/projects.c: Fix wrong directory when choosing project filename
in the New Project dialog.
* scintilla/Editor.cxx: Add (basic) column mode editing, pasting text
does not work. Patch by chuck, thanks.
2008-03-14 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/keybindings.c:
Set main menu accelerators for keybindings.
* src/keybindings.c, src/keybindings.h, src/plugindata.h,
Make KeyBinding name and label fields non-const strings so they can
be freed by any plugins that need to use malloc'd strings.
Document KeyCallback typedef.
Replace Plugins chapter with 'Writing plugins' section.
Add generating plugin API documentation section.
Replace 'Modifying data types' with 'Keeping the plugin ABI stable'
Add note about using -ansi.
2008-03-14 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/ Add prefs.h to the list of installed header files.
* src/win32.c: Fix crashes on Windows when error argument of
utils_spawn_* is NULL.
* src/build.c, src/win32.c, src/win32.h:
Add win32_get_exit_status() to retrieve the exit code from a
command on Windows (code moved from build.c).
* Add pkg-config file and new include directory to the
files section (thanks to Dominic Hopf).
* src/tools.c:
Fix freeze when reading from stderr when using "Send Selection To".
Don't modify current selection if the executed command returned error
messages and/or an unsuccessful exit code.
Improve error reporting when using "Send Selection To" (#1909452).
2008-03-13 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/plugindata.h, doc/plugins.dox:
Update documentation for plugin_key_group[] to mention declaring it
* src/keybindings.c, src/keybindings.h, src/plugins.c, doc/plugins.dox:
Check plugin keybinding group name is valid.
Ignore plugin keybinding groups with no elements defined.
* src/utils.c, src/document.c:
Fix Doxygen undocumented parameter warnings.
2008-03-13 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* doc/geany.html, doc/geany.txt, src/search.c:
Use monospace font for text entry fields in search dialogs and add
a notice how to change the used font (#1907117).
* src/plugins.c: Don't load all available plugins on startup, it's only
necessary opening the plugin manager.
* src/keyfile.c, src/search.c:
Use the default values for various tools if they don't exist in the
config file instead of using g_find_program_in_path(), patch by
Yura Siamashka (thanks).
Fix executable check for grep command.
* scintilla/include/, src/, plugins/,
Install header files and add a pkg-config file for external plugins.
*, src/interface.c:
Add missing accelerator for string "Toggle All Additional Widgets".
* plugins/htmlchars.c: Use a separate string for keybinding label to
avoid display of an underscore.
* src/callbacks.c, src/tools.c: Fix compiler warnings about
uninitialized variables.
2008-03-12 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/build.c, src/keybindings.c, src/keybindings.h,
src/tools.c, src/prefs.c, src/plugindata.h, src/callbacks.c,
src/plugins.c, src/main.c, doc/plugins.dox, plugins/filebrowser.c,
Merge plugin-keybindings branch:
Change keybindings code to use keybinding groups, each with a
separate enum set, which will make the plugin ABI more stable, and
lay the groundwork for plugin keybindings support.
Note: this breaks the plugin API.
Rename keybindings_cmd() to keybindings_send_command(), which now
takes a group_id argument.
Add keybindings_lookup_item().
Add documentation for keybindings structs.
Add support for plugin keybindings using the PLUGIN_KEY_GROUP()
Add a plugin keybinding for 'Insert Special HTML Characters'.
Rename KBCallback, cmd_id, cb_func with clearer names.
Add KeyBinding::menu_item field for setting accelerators (currently
does nothing).
Load keybindings keyfile after plugins have loaded at startup, so
their shortcuts are also loaded. Still to do: loading individual
plugin keybindings after startup.
Group most keybinding callbacks together according to keybinding
Add keybindings_set_item() and add it to the plugin API.
Set main menu widget accels with keybindings_set_item() - they are
ignored for now. Popup menu accels are set separately.
* doc/geany.txt, doc/geany.html:
Update 'Filtering out version control files' section for new versions
of GNU Grep.
* src/keybindings.c:
Fix bug with keybindings using check_current_word().
2008-03-09 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/document.c:
Use SCI_SETSCROLLWIDTHTRACKING to improve horizontal scrollbar
behaviour by always adjusting to the longest line (part of #1905141).
* src/filetypes.c, src/symbols.c, tagmanager/parsers.h,
tagmanager/makefile.win32, tagmanager/html.c, tagmanager/
Add HTML parser to get h1, h2, h3 symbols as well as link anchors and
JavaScript functions (closes #1896068).
2008-03-07 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* doc/, doc/
Use doxygen option QUIET to disable non-warning messages instead of
redirecting output to /dev/null.
* src/keyfile.c:
When opening session files, don't try to set document properties if
the document can't be opened.
* data/filetypes.common, doc/geany.html, doc/geany.txt,
src/highlighting.c, src/sciwrappers.c:
Add opton to style "caret" to change the caret into a block caret.
Add new styles "translucency", "line_wrap_visuals" and
"line_wrap_indent" to filetypes.common (#1905141).
2008-03-06 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/callbacks.c:
Apply patch from Jeff Pohlmeyer (thanks) to fix toggle case with
rectangular selections (works only for Ascii characters).
2008-03-05 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/filetypes.c, src/filetypes.h, src/symbols.c:
Apply patch from Yura Siamashka to use she-bang filetype detection
also in filetypes_detect_from_filename() which let plugins benefit
from this feature.
* src/document.c:
Don't open zero byte sized files read-only (e.g. files in /proc).
* src/symbols.c, tagmanager/fortran.c, tagmanager/keyword.c,
tagmanager/js.c, tagmanager/asm.c, tagmanager/c.c:
Backport js.c and asm.c from CTags SVN.
Fix Assembler tagmanager support and add appropriate symbol types.
Fix JavaScript parse bug (#1895242).
Change default return value of lookupKeyword() in keyword.c as it was
done in CTags SVN(r339) and adjust affected parsers.
2008-03-03 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* tagmanager/fortran.c, src/symbols.c:
Adjust available symbol types between Fortran parser and symbols.c to
make some more of the possbile symbol types available.
2008-02-28 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/utils.c, src/utils.h, tagmanager/parse.h:
Replace unsigned long in guint64 and use int instead of off_t
(patch by Daniel Richard G., thanks).
* src/sciwrappers.c: Make Scintilla remember the current column when
changing the cursor position (#1902732).
2008-02-27 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* plugins/*, scintilla/*, src/*, tagmanager/*:
Replace all C++-style comments with usual C-like multi-line comments.
* src/keybindings.c: Fix ignoring of some keybindings when caps lock is
active (introduced in r2253).
* src/document.c, src/utils.c, src/utils.h:
Fix a few more compiler warnings (type conversion warnings).
* src/utils.c, src/win32.c, src/win32.h:
Apply patch from Pierre Joye to improve new Win32 process spawning
code (thanks).
*, TODO:
Enable startup notification in desktop entry file and remove it from
TODO list.
2008-02-26 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/highlighting.c:
Move symbols_global_tags_loaded() out of styleset_common().
* src/symbols.c:
Load ignore.tags even when global tags loading is disabled on the
command-line, so that local tags in each open file can be ignored.
2008-02-25 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/notebook.c:
When closing a tab when using left-to-right tabs, focus the next
document, not the previous.
* src/search.c, src/document.c:
Don't beep when using Replace All in Session unless all open files
have no replacements (fixes #1893796).
2008-02-24 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* tagmanager/options.c, src/symbols.c, src/symbols.h:
Define c_tags_ignore in options.c (tagmanager) instead of symbols.c.
Apply patch from Yura Siamashka to add a check for the presence of
fnmatch(), thanks.
* THANKS, plugins/vcdiff.c, src/plugindata.h, src/plugins.c,
src/utils.c, src/utils.h, src/win32.c, src/win32.h:
Apply patch by Pierre Joye to add new process spawning implementation
for Windows. Make utils_spawn_* available to plugin API.
This makes the VCdiff plugin to work on Windows (thanks).
* makefile.win32:
Make the make command overwritable, patch by Pierre Joye. Thanks.
2008-02-22 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* tagmanager/options.c:
Use extern for c_tags_ignore declaration to avoid allocating a
second copy of it (patch by Daniel Richard G., thanks).
* src/callbacks.c, src/search.c, src/document.c, src/editor.c,
Don't scroll the editor view if it is unnecessary when using Find
Next/Previous, Find Selected and when searching from the search bar.
* src/keybindings.c, src/sciwrappers.c:
Don't scroll the editor view if it is unnecessary when using Go to
Marker or Go to Matching Brace commands.
Make sci_set_current_line() not scroll the view, unlike
2008-02-22 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* scintilla/, src/
Fix more cross-compiling issues including little cleanup.
2008-02-21 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* doc/geany.html, doc/geany.txt, src/editor.c, src/editor.h,
Rename hidden pref auto_complete_whilst_editing to
2008-02-20 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* plugins/*, src/*, tagmanager/*:
Apply patch from Daniel Richard G. to fix to fix several
compiler warnings, C89 violations and minor code problems (thanks).
*, scintilla/ScintillaGTK.cxx, src/
Apply patch from Yura Siamashka to fix cross-compiling (thanks).
2008-02-18 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/vte.c: Apply patch from Jeff Pohlmeyer to mark the VTE also as
clean when Ctrl-C is pressed (thanks).
* src/socket.c: Fix compiler warnings on Windows.
* doc/geany.html, doc/geany.txt, src/symbols.c, src/symbols.h,
Add support for reading tags(only for C/C++) from a file which should
be ignored while parsing the file (ctags command line option -I).
2008-02-17 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
*, doc/, doc/, doc/plugins.dox,
src/dialogs.c, src/dialogs.h, src/document.c, src/document.h,
src/encodings.c, src/encodings.h, src/plugindata.h, src/utils.c,
Add support for generating API reference documentation using doxygen.
This is the first step, it is far away from being complete.
Add make target "api-doc" to generate the reference documentation.
Add documentation comments to a few functions.
Move basic plugin documentation from plugindata.h to doc/plugins.dox.
2008-02-16 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* doc/geany.html, doc/geany.txt:
Fix slightly wrong documentation for show_editor_scrollbars.
* THANKS, doc/, doc/geany.html, doc/geany.txt, src/main.c:
Apply patch from Daniel Richard G. to add support for +NNN command
line arguments and for recognising filename:line:column: format on
the command line (thanks).
2008-02-15 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* tagmanager/python.c: Fix parsing bug when there is text after the
end of a multi line comment (closes #1894084).
* src/socket.c: Apply patch from Daniel Richard G. to update some
source code comments (thanks).
* doc/geany.html, doc/geany.txt, src/document.c, src/editor.h,
Add hidden preference to disable scrolling past end of document.
2008-02-13 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/keybindings.h: Fix broken compilation with GTK < 2.10.
* src/document.c, src/encodings.c, src/treeviews.c, src/vte.c:
Fix some compiler warnings.
2008-02-12 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/editor.c, src/search.c, src/ui_utils.c:
Allow using Find In Files dialog even if no files are open
(closes #1891818).
* src/main.c, src/socket.c:
Allow start of Geany with given files on the command line but
without a writable temporary directory and without a writable
configuration directory.
Improve filename of created symlink to the socket file.
* src/document.c: Don't force unique line ending characters when saving
files to avoid unexpected saving behaviour.
* src/keybindings.c, src/keybindings.h, src/prefs.c:
Use a modifiers mask to ignore unwanted modifiers(caps lock,
num lock) when handling key presses (maybe fixes #1891276).
* src/dialogs.c:
Fix compiler warnings.
Improve Save As dialog usability problems.
2008-02-11 Frank Lanitz <frank(at)frank(dot)uvena(dot)de>
* src/about.c, THANKS: Added Nikita E. Shalaev to list of
Russian translaters.
2008-02-10 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/navqueue.c, src/navqueue.h, src/symbols.c, src/treeviews.c:
Apply patch from Yura Siamashka to fix wrong navigation queue items
* src/editor.c:
Add workaround for a Scintilla bug in HTML/PHP lexer which styles the
last line of document wrong when in PHP mode.
* README.Packagers: Add some notes for package maintainers.
* src/socket.c:
Use a random integer as part of socket file name instead of current
time stamp.
Before creating a new socket, delete a maybe existing socket and its
Apply patch from Daniel Richard G. to include the hostname in the
socket filename (thanks).
* src/utils.c, src/win32.c, src/win32.h:
Add support for getting hostname on Windows.
2008-02-08 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/project.c:
Fix crash on Windows when a project could not be opened.
* src/win32.c:
Remove prefix from win32_get_file_filters() and win32_get_filters().
Fix some encoding problems with filenames retrieved from the native
Windows file dialogs.
* src/sciwrappers.c:
Fix wrong placement of long line marker (closes #1889392).
2008-02-07 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* plugins/ Fix typo (thanks Slava Semushin for reporting).
* scintilla/include/Platform.h:
Use a better check for PLAT_GTK_WIN32 (backport from Scintilla CVS).
* src/socket.c:
Create the Unix Domain Socket for detecting a running instance in
system's tmp directory and create a symlink to it in Geany's
configuration directory (closes #1888561).
* src/socket.c:
Include display number for the filename of the symbolic link to the
real Unix Domain Socket file (closes #1888565).
2008-02-06 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* plugins/autosave.c, plugins/filebrowser.c:
Make forgotten strings translatable.
2008-02-05 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* scintilla/include/Platform.h: Fix definition of PLAT_GTK_WIN32 on
Windows to fix Copy&Paste problems.
* New release: Geany 0.13 "Vensell".
*, geany.nsi, geany_private.rc, win32-config.h,
src/geany.h: Post-release version bump.
2008-02-04 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* doc/geany.txt, doc/geany.html:
List Cut, Copy, Paste keybinding descriptions.
* src/plugindata.h, src/plugins.c:
Add sci_get_current_line() to plugin API.
Add ui_table_add_row(), ui_path_box_new() to plugin API (thanks to
Yura Siamashka).
* doc/geany.txt, doc/geany.html, NEWS:
Show default shortcuts in Keybindings section.
* src/plugindata.h, src/plugins.c:
Add ui_button_new_with_image() to plugin API.
2008-02-04 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* doc/geany.html, doc/geany.txt, images/*: Update images for 0.13.
* src/geany.h: Reduce minimum window size to 550x350 (closes #1883367).
2008-02-01 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* doc/geany.txt, doc/geany.html, NEWS:
Add Indentation subsection under Editor section.
* doc/geany.txt, doc/geany.html, NEWS:
Update Project section for project-based session support.
2008-01-31 Frank Lanitz <frank(at)frank(dot)uvena(dot)de>
* plugins/autosave.c: Fixed a little typo
(Thanks to Jeff Bailes for reporting)
2008-01-31 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/keyfile.c:
Fix saving project session from a 2nd instance of Geany.
* data/global.tags:
Update for GTK+ 2.12.5.
This also adds return type modifiers like const and *.
Command used (on Fedora 8):
'CFLAGS=`pkg-config --cflags gtk+-2.0` geany -g gtk-2.12.c.tags
2008-01-31 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/project.c:
Open a new, empty file when closing a project and no session files
are available or when opening a project without stored session files.
Close all open files when opening projects.
* src/printing.c: Fix losing line breaks when printing a file with LF
line endings and a non-Ascii character at the end of
a line.
2008-01-29 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/search.c:
Allow case sensitive replace when the replace string varies only
in case.
* src/keybindings.c, src/keybindings.h:
Rename binding type KeyBinding.
* src/search.c:
Factor out get_search_flags() from Find, Replace dialog response
2008-01-28 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* plugins/pluginmacros.h, src/plugindata.h, plugins/*.c:
Add new macros for plugin API functions that use a 'p_' prefix to
prevent conflicts with other tags whilst keeping the same first word
as core function names, and update plugins to use them.
The old plugin macros are still available, but will be removed
after the next release.
Compiling with -DGEANY_DISABLE_DEPRECATED in CFLAGS will disable
the old macros.
2008-01-27 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/printing.c:
Fix crash on Windows when printing an untitled file.
Fix black line number margin when printing by using also pre-defined
2008-01-25 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/project.c:
Remove unnecessary save of project keyfile.
* src/callbacks.c, src/main.c:
Close any project before closing all documents so the project
session files are saved.
2008-01-23 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/geanywraplabel.c, src/geanywraplabel.h:
Move class and label structs to geanywraplabel.c.
Override widget functions instead of using event handlers
(trying to fix #1869399).
* src/prefs.c: Fix wrong placement of descriptive texts in Templates
and Tools tabs in the preferences dialog.
* src/callbacks.c, src/main.c, src/prefs.c, src/treeviews.c,
src/ui_utils.c, src/ui_utils.h:
Rename ui_treeviews_show_hide() in ui_sidebar_show_hide().
Don't hide sidebar when symbol and document lists are hidden but
other notebook tabs are still there.
2008-01-22 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* THANKS, src/about.c, po/el.po, po/LINGUAS:
Add Greek translation (thanks to Stavros Temertzidis).
2008-01-18 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/interface.c,
Split up Prefs dialog General tab options into Startup, Shutdown
and Projects frames.
Rename 'Load and save session files...' option 'Use project-based
session files'.
2008-01-17 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* data/filetypes.ruby, src/editor.c, src/highlighting.c:
Add two missing highlight styles to filetype Ruby.
Enable comment/uncomment for POD-like comments for filetypes Ruby
and Perl.
2008-01-16 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
*, src/interface.c, src/keyfile.c, src/prefs.c,
src/project.c, src/project.h:
Add option for project session files support.
* src/encodings.c, src/encodings.h, src/plugindata.h, src/plugins.c:
Add encodings_get_charset_from_index() and make it available through
plugin API.
2008-01-16 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/editor.c:
Fix hidden lines after deleting a line that is a collapsed fold
* tagmanager/c.c:
Fix parsing D constructor tags.
2008-01-15 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/dialogs.c:
Don't unlink the old file if renaming failed.
2008-01-14 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/callbacks.c, src/search.c, src/editor.c, src/editor.h:
Make 'Open Selected File' first try the current file's directory,
falling back to the project base path if no file was found.
Add editor_get_default_selection() from get_default_text() in
search.c, to get the current selection or current word.
2008-01-13 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/keyfile.c, src/project.c:
Save project session file list when project is closed.
Don't load default session files in a second instance after a project
was closed.
Fix not updating symbol list (and other things) when changing tabs
after a project was opened or closed in a second instance.
2008-01-12 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/keyfile.c:
Try to fix changing message window height when using full screen
(closes #1869415).
* src/printing.c:
Avoid double status message if print dialog was cancelled.
Print status messages in status-changed handler.
*, po/POTFILES.skip:
Add POTFILES.skip to ignore files with translatable strings.
Make "distcheck" working.
* src/editor.c:
Don't add '>' when auto completing HTML tags when it's already there.
Fix wrong indentation when '{' and '}' are on the same line.
2008-01-11 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/build.c, src/project.c, src/project.h, doc/geany.txt,
Add 'Make in base path' project file preference, on by default.
Add project_get_base_path(), separated from project_get_make_dir().
* src/dialogs.c, src/plugindata.h, src/document.c,
tagmanager/tm_project.c, tagmanager/tm_workspace.c,
Apply patch from Yura Siamashka to speed up removing several
workspace object's tags without updating the workspace until
necessary (thanks).
2008-01-11 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/dialogs.c: Fix broken Rename functionality (closes #1868621).
* src/printing.c:
Fix crash while reading Scintilla styles.
Add GTK's progress dialog when printing large documents which also
provides the ability to cancel a print operation.
* plugins/export.c:
Fix crash while reading Scintilla styles.
Append "_export" to the exported file name when the exported file has
the same extension as the source file.
2008-01-10 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/keybindings.c:
Hopefully fix bug with Cut/Copy/Paste KB not working (#1867861).
* src/prefs.c, src/keyfile.c, src/vte.c, doc/geany.txt, doc/geany.html:
Add 'Override Geany keybindings' VTE prefs dialog option (replaces
hidden pref), and make it off by default.
2008-01-09 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/project.c:
Edit base path entry tooltip for clarity.
Use stock close button in close project prompt.
Allow the base path to be empty, so that users can use the current
file's directory for the Make command (but still use project session
support). In future, perhaps it would be good to have a separate Make
path setting for projects.
2008-01-09 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
*, src/geanywraplabel.c, src/geanywraplabel.h,
src/interface.c, src/plugins.c, src/prefs.c, src/vte.c,
src/, src/makefile.win32:
Add GeanyWrapLabel (subclass of GtkLabel) to wrap text at any width.
Use GeanyWrapLabel in preferences dialog and plugin manager dialog
to save a lot of space and improve layout of descriptive texts.
* src/msgwindow.c:
Add workaround for display problem in Message window:
Truncate displayed string at 1024 bytes if it is longer.
* src/utils.c, src/win32.v:
Fix compile error on Windows.
Don't use _waccess_s since it seems to be unavailable in MingW32.
2008-01-06 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* geany.nsi, geany_private.rc, README, doc/geany.html, doc/geany.txt,
po/, plugins/*, src/*, tagmanager/rest.c:
Update copyright information and change format of email addresses in
source files.
* src/project.c, src/utils.c, src/utils.h, src/win32:
Add utils_is_file_writeable().
Improve checks for write permission of files and directories.
Don't overwrite maybe existing project files when trying to create
new project and checking for project file's write permission
(thanks to Yura Siamashka for reporting and his patch).
2008-01-04 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* plugins/pluginmacros.h:
Remove filetype macro to avoid naming conflicts.
2008-01-04 Frank Lanitz <frank(at)frank(dot)uvena(dot)de>
* src/about.c, THANKS: Changed Ukrainian language code to just uk to
make it better fit with po-file-directory.
2008-01-03 Frank Lanitz <frank(at)frank(dot)uvena(dot)de>
* THANKS, src/about.c, po/ja.po, po/LINGUAS:
Adding of Japanese translation (Thanks to Tarot Osuji).
2008-01-02 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* README, src/makefile.win32:
Add -lshfolder to linker flags on Windows.
Add notice for Win9x users to install SHFolder.dll.
* plugins/pluginmacros.h, src/plugindata.h, src/plugins.c,
src/project.h, src/symbols.c: Patch by Yura Siamashka:
Add project type field.
Go to tag definition/declaration will open the file with the tag if
it isn't already open.
Add some utils and tagmanager functions to the plugin API.
2008-01-02 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* tagmanager/c.c:
Ignore D import statements.
* plugins/filebrowser.c:
Use documents->open_files() as it's more efficient when opening
multiple files and existing files are open for filetypes with
typename colouring.
* src/search.c:
Add mnemonics for Find All, Replace All expanders in dialogs.
Fix Find dialog mnemonic conflict _f.
2007-12-30 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* tagmanager/basic.c:
Don't parse in comments and fix wrong creation of tags including
non-tag characters(e.g. '=' sign).
* src/document.c: Avoid crash on Windows with enabled debug messages.
* src/main.c, src/win32.c, src/win32.h:
Add debug console window when debug mode is enabled to get any text
messages on Windows.
Fix wrong argument in win32_check_write_permission()
(reported by Jeff Pohlmeyer, thanks).
* src/main.c, src/win32.c, src/win32.h:
Create Geany's configuration directory in user's appdata path instead
of the default home directory (closes #1856305).
* src/geany.h, src/project.c: Remove unnecessary macro GEANY_HOME_DIR.
2007-12-28 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* plugins/filebrowser.c:
Refactor with functions: check_single_selection(),
is_folder_selected(), get_tree_path_filename() and separate menu
item callbacks.
Rename "Open with..." popup item "Open externally" ("..." is usually
used when the user can input more information).
* plugins/filebrowser.c:
Disable popup menu items when there is no selection.
2007-12-25 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* data/filetype_extensions.conf, src/filetypes.c:
Add *.vala extension to CSharp filetype to support the Vala language.
2007-12-25 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/keybindings.c, src/keybindings.h, src/plugindata.h:
Add configurable keybindings for Cut, Copy and Paste.
2007-12-23 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/keybindings.c: Fix inverted move tab first/last commands.
* src/templates.c:
Add Python filetype template (patch by Elena of Valhalla, thanks).
* src/main.c:
Enable parsing command line options without a valid X display.
2007-12-21 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/build.c, src/dialogs.c, src/dialogs.h, src/callbacks.c:
Add combo box input history for Make Custom Target dialog.
Make dialogs_show_input() automatically activate on pressing enter in
the GtkEntry, use a callback for input text, and have a 'persistent'
option to hide the dialog instead of deleting it, using a combo box
for input text history.
* src/utils.c:
Make utils_get_utf8_from_locale(), utils_get_locale_from_utf8()
* src/utils.c, src/win32.c, src/utils.h, src/win32.h, src/dialogs.c,
Make Open, Save As dialogs start in project base path (or default
path pref) when the current file has no filename.
Split up widget setup code for dialogs_show_open_file(),
Add initial_dir argument for win32_show_file_dialog().
Add utils_get_default_dir_utf8().
Rename utils_get_current_file_dir() to
2007-12-19 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* TODO, src/main.c: Apply patch Jeff Pohlmeyer to handle unknown
command line options better (thanks).
* HACKING, src/, src/main.c, src/makefile.win32,
src/plugins.c, src/prefix.h, src/symbols.c:
Prefix autotools macros with GEANY to avoid problems with already
defined symbols on Windows.
2007-12-18 Frank Lanitz <frank(at)frank(dot)uvena(dot)de>
* src/about.c, THANKS, po/uk_UA.po, po/LINGUAS:
Added Ukrainian translation (Thanks to Boris Dibrov).
2007-12-18 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* Don't install pixmaps/geany.ico by default.
* Fix mandir path and don't delete icons
(patch by Yura Siamashka, thanks).
* src/
Add PREFIX macro.
Don't construct LOCALEDIR manually but use autotools $(localedir)
variable instead.
* HACKING: Add note about using autotools macros like DATADIR.
* doc/, doc/geany.html, doc/geany.txt, src/main.c:
Add --print-prefix command line option to output installation paths.
2007-12-18 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* tagmanager/c.c:
Fix parsing C arrays (broken in r1952, oops).
* src/keybindings.c:
Don't flicker menubar when typing Shift-[a-z] in the VTE.
* tagmanager/entry.h, tagmanager/c.c:
Remove unused pointerOrder code from C parser, as it's not necessary
since r1952, and not in the standard ctags code. Leaving it in the
TagManager code however for backwards compatibility with global tag
* tagmanager/c.c:
Fix parsing correct D class name when inheriting.
2007-12-17 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/build.c, src/keyfile.c, src/prefs.c, src/vte.c, src/vte.h:
Use project's base dir and run command when running commands in the
Add VTE preference to skip the generated run script. when running
commands in the VTE.
Make vte_cwd() accept also paths not only filenames.
* Avoid full path for icon entry.
* Add file HACKING and classviewer icons.
* Prevent installing geany.desktop twice.
2007-12-16 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
Apply patch from Ubuntu package to match FD.o standards
(thanks to Siegfried-Angel Gevatter Pujals).
* plugins/classbuilder.c, plugins/htmlchars.c:
Use pluginmacros.h.
* src/highlighting.c, src/highlighting.h:
Add highlighting_get_style().
* plugins/pluginmacros.h, src/plugindata.h, src/plugins.c:
Add highlighting_get_style() to the plugin API.
Rename DocumentFuncs field in GeanyData struct to avoid name clashes.
* doc/geany.html, doc/geany.txt, src/kebindings.c, src/keybindings.h:
Add Move document first/last keybindings
(patch by Catalin Marinas, thank you).
*, src/interface.c, src/keyfile.c, src/plugindata.h,
src/prefs.c, src/prefs.h, src/ui_utils.c:
Add toolbar items to increase/decrease indentation (closes #1850697).
2007-12-14 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/build.c: Fix Run command for HTML files when set to something
else than "builtin".
2007-12-12 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
*, src/interface.c, src/msgwindow.c, src/plugins.c:
Set treeview rules hint for several treeviews and remove manual
setting the background colour of odd rows of the status and message
treeviews (closes #1848901).
* src/vte.c: Enable dragging of text into the VTE.
* src/msgwindow.c: Fix crashes when clicking on message window items
introduced with changing rules hints for treeviews.
*, src/, src/main.c, src/plugins.c,
src/prefix.c, src/prefix.h, src/symbols.c:
Add binary relocation support.
2007-12-09 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* Apply patch from Yura Siamashka and Dominic Hopf
to fix build of rpm package (thanks).
* src/win32.c: Fix wrong file filters in file dialogs opened in the
preferences dialog.
* src/keyfile.c: Fix wrong debug display of filenames which could not
be loaded from last session.
2007-12-07 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/project.c, src/ui_utils.c, src/win32.c, src/win32.h:
Fix wrong file filters in project-related file dialogs on Windows.
2007-12-07 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* doc/geany.html, doc/geany.txt, src/callbacks.c, src/document.c,
src/document.h, src/encodings.c, src/encodings.h, src/keyfile.c,
Store more document-related settings session-based in the
configuration file(including the file encoding).
Detect in-file specified file encoding by scanning the file using
regular expressions.
2007-12-06 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/build.c, src/vte.c, src/vte.h:
Prevent execution of commands by Geany if the VTE may contain any
text on the prompt (thanks to "Jeff Pohlmeyer for reporting).
2007-12-05 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/document.c: Add "b" flag to fopen when saving files to avoid
broken line ending characters on Windows
(flag was removed by accident, closes #1844405).
* plugins/filebrowser.c:
Improve error message when external command could not be executed.
Allow use of external command also for the special ".." item.
2007-12-04 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* plugins/filebrowser.c:
Add ".." path entry to every directory.
Fix display of double backslash in path entry on Windows.
Add basic path entry auto completion.
Print error message when external command fails to execute.
Let right-clicks select an item.
* src/vte.c, src/vte.h:
Don't load unused symbols from library.
Grab focus after right-clicked in the VTE widget.
2007-12-02 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* plugins/filebrowser.c, plugins/pluginmacros.h, src/callbacks.c,
src/plugins.c, src/plugindata.h, src/search.c, src/search.h,
Add search_show_find_in_files_dialog() to the plugin API.
Make path entry of filebrowser plugin editable.
Add "Open with" and "Find in Files" popup menu items to filebrowser
plugin and add configuration dialog.
* scintilla/*, scintilla/include/*: Update Scintilla to version 1.75.
2007-12-01 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/templates.c:
Avoid inclusion of PHP tags in PHP function descriptions.
* plugins/, plugins/svndiff.c:
Remove obsolete SVNdiff plugin, use the VC Diff plugin.
*, src /editor.c, src/editor.h, src/geany.h,
src/interface.c, src/keyfile.c, src/plugindata.h, src/plugins.c,
Add option for amount of characters to trigger symbol completion.
Add document_find_by_filename to the plugin API.
2007-11-30 Frank Lanitz <frank(at)frank(dot)uvena(dot)de>
* src/filetypes.c, data/filetypes.conf:
Added .ltx as extension for LaTeX-documents.
2007-11-30 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/main.c, tagmanager/tm_project.c, tagmanager/tm_workspace.c,
Remove unused config_dir argument for tm_get_workspace().
* src/symbols.c:
Fix broken generate tags command.
2007-11-29 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
*, doc/geany.html, geany.txt, src/editor.c,
src/interface.c: Improve usage of "Unfold all children" option and
add some basic documentation for folding support.
* plugins/filebrowser.c: Fix display of double slash in path entry.
* src/document.c, src/ui_utils.c:
Deny "(Un)Fold All" actions when folding is disabled.
Hide "(Un)Fold All" menu items instead of just disabling them.
* src/dialogs.c, src/dialogs.h, src/document.c:
Add dialogs_show_msgbox_with_secondary().
Add line and column number in charset conversion error dialog when
saving a file and improve display of the failed character.
* src/build.c: Fix broken Run command on Java files on Windows.
* src/symbols.c, tagmanager/ruby.c:
Use Ruby parser from CTags SVN and add/fix symbol list sections.
2007-11-27 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* scintilla/LexHTML.cxx: Fix syntax colouring bug when using '?>' in
a PHP comment (closes #1838854).
2007-11-25 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/document.c: Display character which caused a failed encoding
conversion when saving a file.
2007-11-23 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/symbols.c, tagmanager/basic.c:
Use FreeBasic specific sections in symbol list.
Use Basic parser from CTags SVN and improve the parser for better
handling of dim and const keywords.
* src/plugins.c: Fix plugin separator placement in the Tools menu.
2007-11-22 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* po/, plugins/autosave.c, plugins/,
plugins/makefile.win32: New plugin: Auto Save.
*, src/editor.c, src/interface.c:
Enable Shift+click on a fold point to unfold all possibly folded
children (same as the pref "Unfold all children of a fold point").
2007-11-21 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/editor.c: Fix crash when trying to add a multiline comment in
filetypes which don't support it.
* src/symbols.c, src/treeviews.c, src/treeviews.h:
Revert the change to make symbol sections bold and use some small
indentation when expanders are hidden.
* src/geanyobject.c, src/geanyobject.h, src/main.c, src/plugindata.h,
src/plugins.c, src/project.c, src/project.h:
Remove unused function project_save().
Fix typo in plugin API at utils_mkdir().
Add document_get_n_idx() to the plugin API.
Fix display of plugin separator in the Tools menu when only plugins
without menu item are loaded.
Add three new signals: project_open, project_save, project_close.
On Shutdown close the project before plugins are unloaded to let
plugins work on the last project closed event.
2007-11-20 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
*, plugins/*.c src/callbacks.c, src/callbacks.h,
src/geany.h, src/interface.c, src/keyfile.c, src/main.c,
src/plugindata.h, src/plugins.c, src/plugins.h:
Add plugin manager dialog to select plugins to load at startup and
to call a plugin configure dialog.
Add configure symbol for plugins which is called by Geany when a
configure dialog for the plugin is requested, optionally.
Add author field to plugin info struct.
Add sample configure dialog to the demo plugin.
Fix cleanup code in filebrowser plugin to remove it completely when
* src/plugindata.h, src/plugins.c: Add utils_mkdir() to the plugin API.
2007-11-19 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* tagmanager/read.c: Fix file type detection for parsers using regexp
code with non-standard file type extensions.
* src/symbols.c, src/treeviews.c, src/treeviews.h:
Make sections in the symbol list bold for better distinction if
expanders are hidden.
2007-11-18 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* doc/geany.html, doc/geany.txt, src/keyfile.c, src/plugindata.h,
src/prefs.h, src/treeviews.c:
Add hidden pref to hide symbol list treeview expander (GTK >= 2.12).
Double click on symbol list sections now expands/collapses them.
* src/symbols.c, tagmanager/lregex.c, tagmanager/php.c:
Add missing symbol types: Interface and Constants for PHP.
Disable use of non-ASCII characters for PHP parser, it caused
problems when using with locales other than "C".
Add missing line break characters in error messages in lregex.c.
* src/callbacks.c, src/keyfile.c, src/keyfile.h, src/main.c,
src/project.c, src/project.h:
Apply patch from Bo Lorentsen to improve support for project session
files (thank you).
2007-11-17 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/templates.c, src/utils.c, src/utils.h:
Fix possible memory leak and add time_t argument in
utils_get_date_time() to pass a time pointer to use.
*,, TODO, doc/geany.html, doc/geany.txt,
src/callbacks.c, src/callbacks.h, src/document.c, src/document.h,
src/interface.c, src/keyfile.c, src/main.c, src/,
src/makefile.win32, src/prefs.c, src/prefs.h, src/printing.c,
src/printing.h, src/ui_utils.c, src/ui_utils.h:
Add native GTK printing support.
* src/printing.c: Set line width for page header, handle empty filename
in page header correctly.
* tagmanager/, tagmanager/lregex.c,
tagmanager/makefile.win32, tagmanager/parse.c, tagmanager/parse.h,
tagmanager/php.c, tagmanager/regex.c, tagmanager/tm_tag.c,
tagmanager/include/, tagmanager/include/regex.h:
Fix two more compiler warnings.
Use php.c and lregex.c from CTags SVN (closes #1795810).
Add regex.c and regex.h (GNU regex) for regex support on Windows.
2007-11-14 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* plugins/vcdiff.c, plugins/
Added plugin 'VC Diff', slightly modified from a patch by Yura
Siamashka (thanks). It was adapted from the SVN Diff plugin.
Currently it supports SVN, CVS and GIT.
Fixed GTK warnings when the current file has no filename and when
the current directory has no version control system.
Made some refactoring changes to make the VC_RECORD struct contain
all necessary attributes about each version control system.
2007-11-13 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* plugins/filebrowser.c:
Make 'Set path from document' use the current working directory or
the project base path when no document is open.
2007-11-13 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/highlighting.c: Don't change control char symbol in Scintilla.
2007-11-12 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
*,, data/autocomplete.conf, data/snippets.conf,
doc/geany.txt, doc/geany.html, doc/, src/document.c,
src/editor.c, src/editor.h,src/geany.h, src/highlighting.c,
src/interface.c, src/keybindings.c, src/keybindings.h, src/keyfile.c,
src/keyfile.h, src/main.c, src/plugindata.h, src/prefs.c:
Rename "Contruct autocompletion" to "Snippets".
Allow changing height of the symbol completion list even if automatic
symbol is disabled, it still can be forced by keybinding.
2007-11-11 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/templates.c, src/utils.c, src/utils.h:
Remove utils_get_date() and add format argument to
* src/main.c: Don't compile plugin command line option when plugin
support is disabled.
* src/notebook.c:
Enable close tab on middle-clicking a notebook tab label.
Enable toggle additional widgets on double-clicking notebook tab
* THANKS, src/project.c, src/project.h, src/keyfile.c, src/keyfile.h,
src/main.c: Apply patch from Bo Lorentsen to add support for project
session files (thank you).
2007-11-08 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/prefs.c:
Separate keybindings tree setup code from prefs_init_dialog(); use
enum for tree model columns.
Ask the user whether to override an existing keybinding when setting
a combination that is already in use.
* plugins/filebrowser.c, src/treeviews.c, src/vte.c:
Fix popup menu item capitalization according to Gnome HIG.
Add separator menu item to VTE popup menu.
Move VTE Prefs item below Input Methods.
* src/keybindings.c:
Set Ctrl-Alt-P as default Prefs KB.
Change Decrease Indent default KB to Ctrl-U (very common action,
and Ctrl-U was unused).
* src/keybindings.c:
Allow VTE to interpret F-keys (except if they're focus commands).
2007-11-08 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/editor.c, src/utils.c, src/utils.h:
Remove unused unnecessary function utils_btoa().
2007-11-07 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/vte.c: Apply patch from Simone Denei to add a "Restart" item to
the VTE popup menu in case running application hangs.
* src/utils.c: Fix bug when creating configuration directory on Unix.
* tagmanager/tm_work_object.c, tagmanager/tm_workspace.c:
Don't create tagmanager status file, seems to be unnecessary
(needs testing).
2007-11-06 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/build.c: Enable stopping of Run command on Windows.
* src/build.c: Quote first element of command line when using Compile,
Build and Make commands on Windows to avoid problems
if the tools are specified with full path.
2007-11-06 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* plugins/svndiff.c:
Fix sign comparison warning.
* plugins/svndiff.c:
Fix gtk_widget_destroy() warning when unloading plugin and no svn
binary is in $PATH.
* plugins/svndiff.c:
Add menu separator so users don't accidentally click revert and lose
all their work.
Capitalize revert menu item.
* src/interface.c, src/callbacks.c, src/callbacks.h,
Add 'Strip Trailing Spaces' document menu item.
* src/keybindings.c, src/keybindings.h, src/plugindata.h, TODO:
Make VTE interpret all keyboard shortcuts except for focus group
Add enum values for keybinding groups.
Make Notebook tabs keybindings group.
Move Go to tags items into Tags keybindings group.
Move navigation items into a new Other keybindings group.
* HACKING, data/filetypes.restructuredtext:
Add a default configuration file for reStructuredText.
* src/document.c:
Allow scrolling past end of document, so the user can append text
with the last lines drawn at the top of the view.
2007-11-05 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
Update 'Adding a filetype' section for new highlighting.c code.
2007-11-05 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/dialogs.c, src/document.c, src/utils.c:
Don't use unnecessary #ifdefs for utils_get_locale_from_utf8().
2007-11-05 Frank Lanitz <frank(at)frank(dot)uvena(dot)de>
* plugins/svndiff.c:
Added function for svn revert and check before complete loading of
then plugin if svn is inside $PATH.
Added patch from Yura Siamashka to re-use an already created tab
for a new diff on the same file. Thanks.
2007-11-04 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/build.c:
Fix error in Compile and Build commands on Windows if the command
contains double quotes.
Fix error in Build command when the executable file name contains
spaces(Linux and Windows).
* src/filetypes.c: Add support for env wrapper in shebang detection
(inspired by a patch from Yura Siamashka).
* src/plugindata.h, src/plugins.c:
Add document_set_text_changed() to the plugin API.
* src/main.c, src/utils.c, src/utils.h, src/win32.c, src/win32.h:
Fix crashes on Windows when configuration directory could not be
Fix problems when configuration directory path contains special
* tagmanager/tm_workspace.c: Use g_unlink() instead of unlink().
* src/build.c:
Use g_unlink() instead of unlink().
Minor code cleanups and add some sanity checks.
Fix broken Run command on Windows by not changing Geany's working
directory (this might break other things, unfinished).
2007-11-02 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/sciwrappers.c:
Show line wrap symbol at start of line for wrapped lines.
* src/templates.c, src/highlighting.c, src/highlighting.h,
src/filetypes.c, src/filetypes.h, src/document.c, src/main.c:
Fix bug with using the default extension, not the user set one, if
'New with template' is used before any documents of the same filetype
are open.
Load filetype keyfiles from filetypes_load_config(), not from
Add highlighting_init_styles(), highlighting_set_styles(),
simplifying a lot of styleset function code.
Remove filetype::style_func_ptr field.
2007-11-02 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/build.c, src/makefile.win32: Add exit code detection for Windows.
* src/keyfile.c: Fix broken window maximization.
* src/document.c: Remove Scintilla keybinding Alt-Backspace for Undo.
2007-11-01 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/win32.c:
Prevent prefs dialog being hidden after using the prefs file dialog.
* src/build.c, src/prefs.c:
Enable build support on Windows.
* src/document.c:
Ensure document_update_tag_list() always shows the empty symbol list
when tags cannot be parsed.
* src/filetypes.c, doc/geany.txt, doc/geany.html, data/filetypes.*:
Add configurable default file extension setting for filetype
definition files.
Note: There is a bug with using the default extension, not the user
set one, if 'New with template' is used before any documents of the
same filetype are open.
2007-11-01 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/document.c, /src/main.c, src/symbols.c, tagmanager/tm_project.c,
tagmanager/include/tm_workspace.h, tagmanager/tm_workspace.c:
Create tagmanager status file in configuration directory, not in a
guessed temporary directory to ensure having write access.
Fix crashes if status file can't be written.
2007-10-31 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/filetypes.c, data/filetype_extensions.conf:
Set reStructuredText default file extension .rst.
* src/document.c, src/editor.c:
Use newline as autocompletion list separator, so that reST entries
show correctly.
* src/document.c:
Ensure empty symbol list is shown when tags cannot be parsed (fixes
wrong symbol list shown when creating a new document with an unsaved
filename set).
* src/filetypes.c:
Only translate '%s source file' instead of whole title for filetypes
(easier for new translations).
2007-10-31 Frank Lanitz <frank(at)frank(dot)uvena(dot)de>
* plugins/svndiff.c: Make svn error messages better readable.
2007-10-29 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* plugins/svndiff.c:
Factor out common make_diff() and show_output() functions for both
file and directory diffs.
Show any SVN error message on the status bar.
Use directory name as prefix for output filename when doing a
directory diff.
Don't remove filename extension for file diffs.
Fix some memory leaks.
* plugins/svndiff.c:
Add a separate menu item for diff from the current directory.
Disable file and directory diff menu items if the current document
has no filename.
Disable project menu item when no project is open.
* src/document.c:
Make Fold All/Unfold All attempt to scroll the current line in view.
* plugins/filebrowser.c:
Don't dereference symlinks.
Make sure current_dir always has a full path.
2007-10-28 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* doc/geany.txt, src/build.c, src/project.c, src/project.h:
Add support for relative project base path.
Improve and synchronize base path tooltips in project new and
properties dialogs.
Fix minor GUI annoyances in project dialogs.
* plugins/export.c, plugins/filebrowser.c, plugins/pluginmacros.h,
Add macro project for app->project.
Rename macro tm to tagm to avoid conflicts with tm struct of time.h.
Fix a warning about shadowing a global symbol.
Use plugin macros in Export and SVNDiff plugins.
* src/treeviews.c, src/treeviews.h:
Replace "Hide" popup menu items of the symbol and document list with
"Show Document List" and "Show Symbol List" check menu items.
2007-10-26 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* plugins/svndiff.c, plugins/export.c, plugins/demoplugin.c,
plugins/filebrowser.c, plugins/htmlchars.c, plugins/classbuilder.c:
Make all plugins distributed with Geany have the same version number
as Geany.
* plugins/pluginmacros.h:
Prevent conflict with document::encoding.
* plugins/svndiff.c:
Capitalize menu item text.
Minor editing of some strings.
* plugins/classbuilder.c:
Capitalize menu item text.
* plugins/filebrowser.c:
Show icons only in the file browser toolbar.
2007-10-25 Frank Lanitz <frank(at)frank(dot)uvena(dot)de>
* plugins/svndiff.c:
Added feature to make a diff from an open project or a
current directory.
2007-10-24 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/build.c, src/ui_utils.h, src/tools.c, src/project.c, src/geany.h,
src/msgwindow.c, src/callbacks.c, src/keyfile.c, src/search.c,
src/document.c, src/plugins.c, src/main.c, src/symbols.c,
Make msgwin_status_add() only log a message, not display it on the
status bar.
Make ui_set_statusbar() take a log argument for whether to record the
message in the Status window.
(Plugin API functions already do this).
* plugins/filebrowser.c:
Use the current directory when there are no documents open.
Add popup menu with Open command.
Separate toolbar code from init().
* plugins/filebrowser.c:
Add 'Show hidden files' checkbox in the popup menu.
* plugins/demoplugin.c, plugins/filebrowser.c, plugins/,
Add pluginmacros.h to define common macros for app, utils, etc.
Add more documentation/comments to demoplugin.c.
* src/treeviews.c:
Fix bug with choosing 'show full path name' from documents list popup
menu when there is no selected item (can happen after using the command
Fix hiding the sidebar/documents list from the popup menu when there's
no selected item.
2007-10-23 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* plugins/svndiff.c:
Set the status bar instead of logging status messages.
2007-10-23 Frank Lanitz <frank(at)frank(dot)uvena(dot)de>
* plugins/svndiff.c:
Small improvments in handling of non UTF-8 diffs.
2007-10-22 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/notebook.c: Don't make notebook tabs higher than necessary.
2007-10-22 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* plugins/filebrowser.c, plugins/, plugins/makefile.win32,
src/interface.c, src/utils.c, src/plugindata.h, src/treeviews.c,
src/vte.c, src/plugins.c, doc/geany.txt, doc/geany.html,
Added File Browser sidebar plugin.
Rename 'Open Files' sidebar tab 'Documents'.
Add keybindings->send_command() and tm->get_real_path() to the plugin
2007-10-20 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/keyfile.c: Fix possible wrong window title when loading session
2007-10-19 Frank Lanitz <frank(at)frank(dot)uvena(dot)de>
* src/about.c, THANKS, po/sv.po, po/LINGUAS:
Added Swedish translation (Thanks to Tony Mattsson).
2007-10-19 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
*, doc/geany.html, doc/geany.txt, plugins/,
scintilla/, scintilla/PlatGTK.cxx, src/,
src/gb.c, src/project.c, src/vte.c, tagmanager/
Apply most of the patch from #1794250 (thanks):
Remove compiler specific flags.
Add configure option to specify the path to
Remove many unnecessary configure checks.
Stop configure if msgfmt was not found(gettext not installed).
2007-10-18 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/plugindata.h, src/plugins.c:
Add encoding related functions to the plugin API.
* data/autocomplete.conf, doc/geany.txt, doc/geany.html, src/editor.c:
Add special key wordchars to autocomplete.conf to let the user
redefine used wordchars.
2007-10-18 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/vte.c:
Only connect vte_keypress() if enable_bash_keys pref is not set.
* src/document.c, src/document.h, src/editor.c, src/editor.h,
src/interface.c, src/keyfile.c, src/plugindata.h, src/prefs.c,, THANKS:
Apply patch from Catalin Marinas to add a 'newline strips trailing
spaces' pref (thanks).
2007-10-17 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* tagmanager/tm_tag.c, tagmanager/c.c, TODO:
Parse arrays, const and pointers in C-like function return types
(and store in varType).
Fix some indentation.
* src/interface.c, src/keybindings.c, src/prefs.c, src/callbacks.c,
src/callbacks.h, src/keyfile.c, src/document.c, src/document.h,
src/editor.c, src/editor.h, src/ui_utils.c,
Add Indent Type option in the Document menu.
Add 'Detect from file' Editor indentation pref.
Show TAB or SP for current document's indent type.
Minor editing of Document menu and editor Indentation prefs group.
Use GString for statusbar statistics.
2007-10-16 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
*, src/callbacks.c, src/callbacks.h, src/interface.c:
Suppress selection changed signal when switching between open files
and symbol list.
* src/plugins.c, src/plugindata.h, plugins/export.c:
Add dialogs_show_save_as() to the plugin API.
Fix wrong callback signatures in Export plugin and make menu item
document sensitive.
2007-10-15 Frank Lanitz <frank(at)frank(dot)uvena(dot)de>
* plugins/svndiff.c, plugins/, plugins/makefile.win32,
New Plugin: Plugin to create a diff of a file against svn.
2007-10-13 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
*, src/interface.c, src/keyfile.c, src/plugindata.h,
src/prefs.c, src/prefs.h, src/treeviews.c, src/treeviews.h:
Add menu accelerators to the symbol and open files list popup menus.
Add option to display full path name in the open files list.
* src/callbacks.c, src/ui_utils.c:
Add menu accelerators to the custom date menu items.
* src/ui_utils.c: Add recent files also to GTK's recent files buffer.
2007-10-10 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* NEWS, doc/ Update for 0.12.
* New release: Geany 0.12 "Delurin".
*, geany.nsi, geany_private.rc, win32-config.h,
src/geany.h: Post-release version bump.
2007-10-09 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/document.c, src/highlighting.c, src/symbols.c, src/symbols.h:
Fix wrong colouring of type keywords of tags from different
* src/treeviews.c: Add full file name as tooltip in the open files list
(only for GTK 2.12 and above).
2007-10-09 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/keybindings.c:
Fix inserting spaces instead of tab when using 'Suppress construct
completion' and spaces are used for indentation.
2007-10-08 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/callbacks.c, src/keybindings.c:
Fix wrong insert position of Insert Date function when using keyboard
shortcut and place the cursor behind the inserted date.
* src/treeviews.c: Enable horizontal scrollbar for the Open Files list.
2007-10-03 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/prefs.c:
Fix segfault when manually editing a keybinding and selecting another
* src/vte.c:
Don't reset the VTE when pressing Ctrl-[CD] if bash keys are enabled,
because they are now sent to the VTE.
2007-10-02 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/notebook.c:
Attempt to fix problem with tab close button size.
* src/keyfile.c, doc/geany.txt, doc/geany.html:
Don't overwrite hidden prefs when quitting unless they are missing.
* src/keybindings.c, src/keyfile.c, src/vte.h, doc/geany.txt,
doc/geany.html, NEWS:
Move and rename the bash shortcuts hidden preference - it's now in
geany.conf, [VTE] section, called 'enable_bash_keys'.
2007-10-01 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/document.c: Fix scrolling bugs when searching text and the cursor
is outside of the current visible area.
Unfold search result.
* src/main.c: Also print version of Geany together with GTK/GLib
version information.
2007-10-01 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* tagmanager/python.c:
Show parent class for inner classes.
* src/notebook.c:
Use stock close image for notebook tab close buttons.
2007-09-28 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/keybindings.c:
Also ignore Ctrl-L for VTE bash command.
Allow 'Switch to editor' command to override any bash commands.
Also disable the popup menu to avoid VTE bash conflicts.
* src/main.c, src/symbols.c, src/symbols.h:
Add --no-preprocessing, -P option when generating tags files to
disable preprocessing of C/C++ source files.
* doc/geany.txt, doc/geany.html, doc/, NEWS:
Add documentation for --no-preprocessing option.
* src/keybindings.c:
Add Project Properties menu accelerator.
* tagmanager/vstring.h, tagmanager/vstring.c:
Fix a possible segfault with vStringPut() - backported from CTags
5.7. This appears to fix a segfault on Windows 2000 when loading
It also adds vStringChop() - chop last character from string.
2007-09-27 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/keyfile.c:
Don't load invalid window geometry data from the config file.
2007-09-27 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/keybindings.c:
Add enable_vte_bash_keys keybindings.conf hidden pref in [Settings].
Refactor keybindings_init().
* src/msgwindow.c, src/document.c, src/plugins.c, NEWS:
Don't show file opened/saved/closed messages on the status bar.
Add temporary function msgwin_status_add_new() for v0.12 (to avoid
many code changes updating msgwin_status_add() before the release).
* src/utils.h, src/keyfile.c:
Fix possible conflict of 'tmp' variable name in setptr macro.
* src/build.c, NEWS:
Fix displaying error indicators with Make after entering a
2007-09-26 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/keybindings.c:
Fix selecting text with Shift-{PageUp,PageDown} (closes #1801315).
* src/keybindings.c, src/vte.c:
Make common bash Ctrl-[a-z] keyboard shortcuts work in the VTE.
(Not sure why Ctrl-Shift-[cv] copy/paste shortcuts still don't work).
2007-09-25 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/keybindings.c, src/navqueue.c, src/navqueue.h, src/treeviews.c,
src/callbacks.c, src/symbols.c, src/symbols.h:
Fix bug when using Navigate backwards after using the keyboard to
set the cursor position on the current word.
Add symbols_goto_tag().
Replace navqueue_append() with navqueue_goto_line().
Updated for project and plugins improvements, and others.
Added wishlist items (which are unlikely to be worked on).
* plugins/export.c, src/plugindata.h, src/plugins.c:
Add ui->set_statusbar() to the plugin API.
Make plugin function msgwin->status_add() not set the statusbar - but
ui->set_statusbar() can now be used to do both with the log argument.
After Geany 0.12 this is how the core versions of those functions
will work, so the status window can be set independently.
* src/utils.c, src/keybindings.c, src/sciwrappers.c, src/sciwrappers.h,
src/navqueue.c, src/callbacks.c, src/editor.c:
Remove pos argument from sci_get_current_line(), because
sci_get_line_from_position() can be used instead and it's clearer.
Remove unused sci_get_line_end_styled() - it's also the same as
2007-09-24 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/keybindings.c, src/editor.c, src/editor.h:
Fix bug with 'Delete lines' when cursor is at the start of a
multi-line selection.
* src/keybindings.c, src/msgwindow.c, src/msgwindow.h:
Add msgwin_switch_tab(), msgwin_clear_tab() functions.
2007-09-22 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/keybindings.c, src/editor.c:
Undo r1891 so that 'Delete lines' again includes the cursor line
even when at the start of a line - like Cut/Copy lines do.
2007-09-21 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/editor.c:
Make 'Select lines' not include an extra line when whole lines are
Make 'Delete lines' not include an extra line when whole lines are
* src/keybindings.c, src/callbacks.c:
Make 'Duplicate lines' work for whole lines when more than one line
has a selection.
2007-09-18 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/keyfile.c:
Save and restore the current notebook page when quitting.
2007-09-17 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
* src/build.h, src/plugindata.h, src/plugins.c:
Apply patch from blackdog to add build_info and
msgwindow->compiler_add() to the plugin API (thanks).
* src/symbols.c, tagmanager/haxe.c:
Apply code from blackdog to parse Haxe typedef tags (thanks).
Show Haxe typedefs in the symbol list.
Add tag_type treeview i