2008-10-06 Nick Treleaven * 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 * geany.glade, 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. 2008-10-03 Frank Lanitz * data/latex.tags: Added some more keywords for moderncv to tag list. 2008-10-02 Enrico Tröger * doc/geany.txt, doc/geany.html, po/POTFILES.in, plugins/saveactions.c, plugins/autosave.c, plugins/Makefile.am, plugins/makefile.win32: Merge InstantSave, AutoSave and BackupCopy plugins into the plugin 'Save Actions'. Add a section for documentation of internal plugins in the documentation. * doc/geany.html, doc/geany.txt, geany.glade, 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/svn-changes.sh, scripts/wafinit.sh: Remove more bashisms and avoid using 'which' which is not LSB-compliant. 2008-10-01 Nick Treleaven * HACKING, doc/Makefile.am: 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 * 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 * 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 * 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 reporting). * 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 * geany.glade, 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, data/filetypes.po: 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/Makefile.am, wscript: When generating documentation, first try rst2html.py as it is the upstream default. 2008-09-27 Enrico Tröger * 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). * autogen.sh: Cleanup. Remove unnecessary checks and code. 2008-09-26 Enrico Tröger * geany.glade, src/interface.c, src/notebook.c: Remove can_focus flag from notebook widgets to avoid focused tab labels. * 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, thanks). 2008-09-26 Nick Treleaven * 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/Makefile.am, 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). * HACKING: Update to mention separate is_comment_style() and is_string_style() functions. * src/documentprivate.h, src/prefs.c, src/treeviews.c, src/notebook.c, src/document.c, src/document.h, src/editor.c, src/symbols.c, src/ui_utils.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 * geany.glade, 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, src/tools.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/svn-add.sh, scripts/svn-changes.sh: Remove bashisms. 2008-09-25 Nick Treleaven * 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 note. * 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 GEANY_AUTOINDENT_BASIC. 2008-09-24 Nick Treleaven * 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 * HACKING: 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 * 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 * document.c, document.h, editor.c, editor.h, prefs.c, sciwrappers.c, sciwrappers.h: Move document_apply_update_prefs() in editor.c. Refactor get_indent_guides_from_lexer() from sciwrappers.c in editor_set_indentation_guides(). * src/editor.c: Fix broken indentation of automatic HTML table tag completion (part of #2118289). 2008-09-19 Nick Treleaven * 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 * 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 * 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 indicator_clear(). * src/interface.c, src/prefs.c, src/keyfile.c, src/document.c, src/editor.c, src/editor.h, doc/geany.txt, doc/geany.html, geany.glade: 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 * 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, src/ui_utils.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 * 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, #2105982). * 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 * src/keybindings.c, src/sciwrappers.c, src/sciwrappers.h, src/filetypes.c: 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, doc/plugins.dox: Add plugin signal "document-close", sent just before a document is closed. (Merged from split-window-plugin branch). * src/plugindata.h, src/plugins.c, src/editor.c, src/editor.h, po/POTFILES.in, plugins/splitwindow.c, plugins/Makefile.am, plugins/makefile.win32: 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 * src/editor.c: Show ellipsis (...) item when there are too many symbol names for autocompletion. * 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 * 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 * 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 * data/filetypes.xml, src/highlighting.c: Add missing HTML attribute 'xml:lang'. 2008-09-08 Enrico Tröger * scripts/missing-mnemonics.sh, scripts/svn-add.sh: Remove bashisms. Add support for passing asterisk wildcards to missing-mnemonics.sh. * 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 * doc/geany.1.in: Little typographic update to use minus sign instead of a hyphen in the manpage. 2008-09-07 Enrico Tröger * 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 * geany.glade, 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 * geany.glade, src/interface.c, src/dialogs.c, src/printing.c, src/vte.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. * HACKING, README, README.I18N, configure.in, doc/geany.1.in, doc/geany.txt, doc/geany.html, doc/plugins.dox, geany.nsi, geany.spec.in, src/geany.h: New website address: www.geany.org. Merge README.I18N with latest changes from the wiki. * doc/geany.html, doc/geany.txt, geany.glade, 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. * geany.glade, src/interface: Fix ambiguous tooltip of new 'Stop scroll at last line' editor pref. 2008-08-29 Nick Treleaven * 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, geany.glade: Add 'Max. symbol name suggestions' autocompletion pref. Edit some autocompletion pref strings. Remove some trailing commas in array initializers (oops). Move GEANY_TOGGLE_MARK, GEANY_MAX_AUTOCOMPLETE_WORDS to keyfile.c. 2008-08-28 Nick Treleaven * src/symbols.c: Fix global tags loaded debug message, display total tags count. Add comment to warn about adding tags files vs. downloading separately. 2008-08-27 Nick Treleaven btinternet.com> * 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 * 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 SCI_STYLEGETFORE. * src/filetypes.c: Use pointer in init_builtin_filetypes() instead of repeating filetypes[GEANY_FILETYPES_X]->... on each line. 2008-08-25 Nick Treleaven * 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 * 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, geany.glade: 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 prompt). * 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 * src/document.c: Support detecting 'Tabs and Spaces' indent mode when opening a file. 2008-08-18 Enrico Tröger * scintilla/Makefile.am: Remove non-portable compiler optimisation '-Os'. * configure.in: 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 * 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 http://bugzilla.gnome.org/show_bug.cgi?id=542803). Fix missing snippets.conf in the Windows installers. Fix missing python.tags in the Windows installers. 2008-08-14 Nick Treleaven * 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 Ctrl-Shift-click). 2008-08-13 Enrico Tröger * 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 * doc/geany.txt, doc/geany.html: Add Tips and Tricks appendix. 2008-08-11 Enrico Tröger * geany.glade, wscript, src/Makefile.am, 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 * src/editor.c: Add SCE_[CD]_COMMENTDOCKEYWORD(ERROR) comment detection to is_comment(). * src/editor.c: Fix auto-multiline comment completion for CSS. Fix doc-comment keyword styles confusing auto-multiline comment completion. * src/editor.c: Break is_comment() into comment and string detection, each called in is_code_style(). * 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, src/editor.h: Rename GeanyIndentPrefs::tab_width to hard_tab_width, and update keyfile key name. * src/interface.c, geany.glade: Change 'Tab width' label to 'Hard tab width' for clarity. 2008-08-08 Nick Treleaven * 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 * src/printing.c: Fix compilation with GTK >= 2.10. 2008-08-07 Nick Treleaven * 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, geany.glade, 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(), combo_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 get_brace_indent(). Change editor_close_block() to use sci_get_line_indentation() for clarity. Make editor_close_block() static. Add editor_init(). 2008-08-05 Enrico Tröger * src/vte.c: Revert the recent VTE realisation changes as they don't make things better. * tagmanager/tcl.c: Fix wrong parsing of keywords if they are not followed by a space (closes #2037728). 2008-08-03 Enrico Tröger * 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 * 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 * src/notebook.c: Fix signature of focus_sci(). Double clicking on free space in the tab bar opens a new file (#2003291). * 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 * configure.in, wscript: Add support for retrieving the SVN revision number also when using a git-svn. * geany.glade, 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). * geany.glade, src/interface.c, src/vte.c: Add a small border to all notebook pages in the preferences dialog. 2008-07-25 Nick Treleaven * src/interface.c, src/ui_utils.c, geany.glade: Revert editor popup menu Current Word submenu changes. See http://lists.uvena.de/geany-devel/2008-July/000101.html. * src/sciwrappers.c, src/plugindata.h: Add dox for ScintillaFuncs. 2008-07-25 Enrico Tröger * data/filetypes.sh, 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 * 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 * 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, src/plugins.c: Add dox for FiletypeFuncs and some of GeanyFiletype. Rename filetypes_detect_from_file() to filetypes_detect_from_document(). 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 * 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 * 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, src/main.c, geany.glade: Add new Files pref 'Allow new documents from the command-line'. * src/interface.c, geany.glade: Rename above pref 'Open new documents...'. Group encodings prefs together in the Files tab. 2008-07-20 Enrico Tröger * 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 * 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 * 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, geany.glade: Add Find Document Usage popup menu command & keybinding. * src/interface.c, src/ui_utils.c, geany.glade: Move editor popup menu current word items to submenu. 2008-07-15 Enrico Tröger * 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 * 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, plugins/classbuilder.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 instead. 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 * 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 * 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. * geany.glade, 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 * plugins/classbuilder.c: Fix some formatting issues. Add 'static' keyword to generated finalize() function in GTK classes. 2008-07-10 Nick Treleaven * 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 * 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/Makefile.am, 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, plugins/classbuilder.c: 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 * doc/plugins.dox, src/editor.c, src/geanyobject.c, src/geanyobject.h, src/plugindata.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 * src/keybindings.c: Group focus keybinding callbacks together. 2008-07-03 Nick Treleaven * 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
. * 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 progress). 2008-07-03 Enrico Tröger * 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 * 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 * src/treeviews.c, src/callbacks.c, src/document.c, src/document.h: Add function document_close(). 2008-06-30 Enrico Tröger * 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, src/templates.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, geany.glade: Add Tools menu item to reload configuration data (at the moment: templates, filetype extensions/configs and snippets). 2008-06-30 Nick Treleaven * 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 * 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, src/plugindata.h: Add plugin signal "populate-edit-menu" to notify plugins when the editing menu is shown. 2008-06-27 Nick Treleaven * src/interface.c, src/callbacks.c, src/callbacks.h, geany.glade: 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 * 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 (#1931125). 2008-06-25 Nick Treleaven * src/interface.c, src/prefs.c, src/keyfile.c, src/search.c, src/search.h, geany.glade: 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, geany.glade: 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 * src/keybindings.c: Make keyboard shortcuts dialog non-modal (#1999384). * src/interface.c, doc/geany.txt, doc/geany.html, geany.glade: 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 * src/win32.c: Fix Windows build. 2008-06-20 Nick Treleaven * 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() static. 2008-06-19 Enrico Tröger * src/dialogs.c, src/dialogs.c: Add dialogs_show_input_numeric(). * geany.glade, 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, src/plugindata.h: Add keybindings for Line wrapping, Line breaking, Toggle fold and Replace Spaces by tabs. Refactor different document keybindings callback functions into cb_func_document_action(). * 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 * 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 * geany.glade, 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 * THANKS: Small update of Polish translation provided by Krzysztof Troska. Thanks for it. 2008-06-15 Enrico Tröger * 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 * tagmanager/python.c: Use proper quoted multi-line string check from CTags SVN. * src/geanyobject.c: Fix wrong marshal type (pointer != int). * scripts/wafinit.sh: 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 * 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. * Makefile.am, data/python.tags, scripts/create_py_tags.py, src/symbols.c: Add create_py_tags.py 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 * 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 * scintilla/makefile.win32: Compile Scintilla without threading support to fix freezes with GLib >= 2.16 on Windows. * doc/Makefile.am: Remove useless path separator. * configure.in: Set $(docdir) if it is not set automatically. * geany.nsi, plugins/makefile.win32, src/makefile.win32, src/main.c, src/plugins.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 * tagmanager/python.c: Fix variable names sometimes having leading junk characters. * tagmanager/python.c: Refactor using findVariable(). 2008-06-07 Frank Lanitz * THANKS, src/about.c: Added Anna Talianova to list of contributers for Czech translation. 2008-06-08 Enrico Tröger * 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, scintilla/ScintillaBase.cxx: Backport AutoCCancelled event implementation from Scintilla CVS. * src/editor.c: Reshow a previously shown calltip if an auto completion list was cancelled. 2008-06-07 Frank Lanitz * src/prefs.c: Update of a string for adding a missing full stop. 2008-06-06 Enrico Tröger * src/ui_utils.c: Display current file position in the status bar when compiled with GEANY_DEBUG. * configure.in, Makefile.am, geany.desktop.in.in, geany.desktop.in: Rename geany.desktop.in.in in geany.desktop.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 Doxyfile.in and geany.desktop.in. Move htmldoc and apidoc targets into shutdown(). 2008-06-06 Nick Treleaven * 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 * Makefile.am, waf, wscript, scripts/wafinit.sh: Add alternative build system: Waf. Use wafinit.sh to create a Makefile and configure files. * configure.in, wscript, tagmanager/entry.c: Remove check for unistd.h, assume it is available (already often used without checking). 2008-06-05 Nick Treleaven * 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 disk. * src/dialogs.c: Fix segfault after Save As (oops). 2008-06-04 Enrico Tröger * 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. * configure.in, src/gb.c: Remove useless or unused configure checks. * doc/Makefile.am: Install THANKS file by default. 2008-06-03 Nick Treleaven * 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 document_find_by_filename(). 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 * 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 * 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/Makefile.am, src/ui_utils.c: 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 * 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 * src/project.h, src/plugindata.h, src/geany.h, src/filetypes.h, src/document.h: Remove underscore prefix from some struct names. 2008-05-29 Nick Treleaven * 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 GeanyDocument. Remove deprecated pluginmacros.h documents macro, to avoid a conflict. Replace doc_list[] macro with documents[] macro, which returns a GeanyDocument pointer. 2008-05-28 Enrico Tröger * doc/geany.css, doc/geany.html: Add media types for screen and print to have a clean version of the manual for printing. * plugins/Makefile.am: Add again all GTK libraries to linker flags for each plugin. 2008-05-28 Nick Treleaven * 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 * 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 plugins. 2008-05-26 Nick Treleaven * 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, doc/plugins.dox: Add plugin_ prefix for plugin symbols version_check, init and cleanup. Deprecate init and cleanup; update PLUGIN_VERSION_CHECK macro. 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, plugins/classbuilder.c: Fix plugins to compile with GEANY_DISABLE_DEPRECATED. 2008-05-23 Nick Treleaven * src/plugindata.h, src/plugins.c, doc/plugin-symbols.c, doc/plugins.dox: 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 * 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 * plugins/Makefile.am: Specify the necessary libraries of each plugin to link against. * configure.in, 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 * 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 editor_smart_line_indentation(). 2008-05-19 Nick Treleaven * 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 ABI. Rename GeanyFunctions fields with a p_ prefix to avoid name conflicts. Add new plugin symbol geany_functions. Nearly all plugins will now need to declare the following: 'GeanyFunctions *geany_functions;', which is now used by pluginmacros.h. 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/Doxyfile.in, plugins/pluginmacros.h: Add API documentation for pluginmacros.h. Make Doxygen define GEANY_DISABLE_DEPRECATED. * doc/plugins.dox: Add Main Page links to plugindata.h and pluginmacros.h. 2008-05-18 Enrico Tröger * src/document.c: Force using tabs for indentation when opening Makefiles. * plugins/pluginmacros.h: Define p_editor in the right way, oops. * doc/geany.1.in, doc/geany.html, doc/geany.txt, src/main.c: Allow loading projects from command line (closes #1961083). 2008-05-16 Enrico Tröger * 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 * 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 * 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 * geany.glade, 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, doc/geany.html: 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 plugin. * 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 * 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(). * HACKING: Update adding a filetype section, make clearer. 2008-05-13 Nick Treleaven * 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 * 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 * 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 * 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, geany.glade, TODO, doc/geany.txt, doc/geany.html: Add basic Line Breaking option in the Document menu. Line breaking only works when typing characters past the line breaking column number. 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, geany.glade: 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 * 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 * 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, plugins/pluginmacros.h: 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. Add GEANY_MAX_BUILT_IN_FILETYPES. Remove GEANY_MAX_FILE_TYPES - use filetypes_array->len (or GEANY_MAX_BUILT_IN_FILETYPES) instead. Rename GEANY_FILETYPES_ALL GEANY_FILETYPES_NONE. 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 GEANY_FILETYPES_ALL. 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 configuration_save_session_files(). Refactor create_set_filetype_menu() from filetypes_init(). Move print_filetypes() out of parse_command_line_options(); 2008-05-06 Enrico Tröger * 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 * 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 * configure.in, tagmanager/lregex.c, tagmanager/include/regex.h, tagmanager/regex.c,tagmanager/include/Makefile.am, tagmanager/include/gnuregex.h, tagmanager/Makefile.am : 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). * autogen.sh: 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 * 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 * 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 g_path_is_absolute(). 2008-04-24 Enrico Tröger * 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 general. 2008-04-24 Nick Treleaven * 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 * 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 files. * src/utils.c, src/interface.c, src/prefs.c, src/prefs.h, src/keyfile.c, geany.glade: 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 * 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. * Makefile.am: 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 * 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. * geany.glade, src/interface.c: Fix wrong tooltip for "Show Increase and Decrease Indentation buttons" in the preferences dialog. 2008-04-19 Enrico Tröger * 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". * configure.in, 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 * 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 buttons). 2008-04-18 Frank Lanitz * THANKS, NEWS, src/about.c: Added Chikahiro Masami as new translator for Japanese translation. 2008-04-17 Enrico Tröger * src/navqueue.c, src/plugindata.h, src/navqueue.h, src/plugins.c, plugins/pluginmacros.h: 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 * THANKS, NEWS, src/about.c, po/LINGUAS, po/ro.po: Added Romanian translation (Thanks to Alex Eftimie). 2008-04-16 Nick Treleaven * src/interface.c, src/callbacks.c, src/callbacks.h, NEWS, geany.glade: 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 * doc/images/pref_dialog_gen.png: Update for 0.14. * plugins/makefile.win32, scintilla/makefile.win32, src/makefile.win32, tagmanager/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 * 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. * TODO: Remove "documentation: preferences" item as it has been mostly done by Robert McGinley. 2008-04-11 Enrico Tröger * 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 * src/filetypes.c: Make another string translatable. Thanks to Adrovane Kade for reporting. 2008-04-10 Enrico Tröger * 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 * src/ui_utils.c: Make some more strings translatable. Thanks to Adrovane Kade for reporting. 2008-04-09 Enrico Tröger * configure.in: Add an explicit check for a C++ compiler (#1938040). * plugins/Makefile.am: Avoid linking plugins against GTK libraries which seems unnecessary. 2008-04-08 Enrico Tröger * 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. * Makefile.am, scripts/intl_stats.sh, po/intl_stats.sh: Move intl_stats.sh 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 * THANKS: Added Dominic Hopf to list of translation supporters. 2008-04-04 Frank Lanitz * Makefile.am: Fix issue on make dist with intl_stats.sh-script. * scripts/changelist.pl: Make help output better readable if there are not enough arguments given. 2008-04-03 Nick Treleaven * 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 List. Refactor load_settings() from init(). 2008-04-03 Enrico Tröger * 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 * 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/intl_stats.sh, scripts/intl_stats.sh: Move intl_stats.sh 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 necessary. * geany.glade, src/interface.c: Make the notebook tabs in the messages window scrollable. 2008-04-01 Nick Treleaven * src/interface.c, src/plugins.c, geany.glade: 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 * src/build.c, src/interface.c, src/vte.c, plugins/export.c, plugins/classbuilder.c, geany.glade: Add missing mnemonics (except for 3 popup menu items, ran out of letters). Capitalize some menu items. * src/interface.c, geany.glade: 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 * src/editor.c: Unfold hidden code when the fold point modified (e.g. commented out, fixes #1923350). * geany.pc.in: 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 * 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 create_new_sci(). 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 * 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 * 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. * HACKING: Add note about not appending to structs like KeyBindingGroup and GeanyCallback. * 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 * 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 * 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 * data/filetypes.common, doc/geany.txt, doc/geany.html, src/highlighting.c: 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. * geany.glade, src/interface.c, src/prefs.c, src/prefs.h, src/keyfile.c src/callbacks.c, src/search.c, src/editor.c, src/editor.h, geany.glade: 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 * doc/plugins.dox: Fix a little typo that prevents docu from being build. 2008-03-22 Frank Lanitz * THANKS, src/about.c: Adjusted email of Brahmann. 2008-03-21 Enrico Tröger * 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/Makefile.am, doc/Makefile.am: Use configure's --docdir option when installing and using the documentation. * 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 * 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 * HACKING: Add note and link for GTK 2.6 API docs. 2008-03-20 Nick Treleaven * doc/plugin-symbols.c, doc/Makefile.am, 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 Manager. * doc/geany.txt, doc/geany.html: Update configurable keybindings section for new plugin groups ordering. s/tabulator/tab/. Move scroll by one line shortcuts to configurable keybindings section. 2008-03-19 Nick Treleaven * 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 * 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 * 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". * geany.glade, 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 * 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 * src/keybindings.c: Set main menu accelerators for keybindings. * src/keybindings.c, src/keybindings.h, src/plugindata.h, plugins/htmlchars.c: 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. * HACKING: Replace Plugins chapter with 'Writing plugins' section. Add generating plugin API documentation section. Replace 'Modifying data types' with 'Keeping the plugin ABI stable' section. Add note about using -ansi. 2008-03-14 Enrico Tröger * src/Makefile.am: 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). * geany.spec.in: 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 * src/plugindata.h, doc/plugins.dox: Update documentation for plugin_key_group[] to mention declaring it manually. * 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 * 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/Makefile.am, src/Makefile.am, plugins/Makefile.am, tagmanager/include/Makefile.am, Makefile.am, geany.pc.in, configure.in: Install header files and add a pkg-config file for external plugins. * geany.glade, 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 * 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, plugins/htmlchars.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() macro. 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 group. 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 * 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/Makefile.am: 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 * doc/Doxyfile.in, doc/Makefile.am: 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 * 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 * 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 * 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 * 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 * 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). * geany.desktop.in.in, TODO: Enable startup notification in desktop entry file and remove it from TODO list. 2008-02-26 Nick Treleaven * 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 * 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 * tagmanager/options.c, src/symbols.c, src/symbols.h: Define c_tags_ignore in options.c (tagmanager) instead of symbols.c. * configure.in: 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 * 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, src/editor.h: 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 sci_goto_line(). 2008-02-22 Enrico Tröger * scintilla/Makefile.am, src/Makefile.am: Fix more cross-compiling issues including little cleanup. 2008-02-21 Enrico Tröger * doc/geany.html, doc/geany.txt, src/editor.c, src/editor.h, src/keyfile.csrc/plugindata.h: Rename hidden pref auto_complete_whilst_editing to complete_snippets_whilst_editing. 2008-02-20 Enrico Tröger * plugins/*, src/*, tagmanager/*: Apply patch from Daniel Richard G. to fix to fix several compiler warnings, C89 violations and minor code problems (thanks). * configure.in, scintilla/ScintillaGTK.cxx, src/Makefile.am: Apply patch from Yura Siamashka to fix cross-compiling (thanks). 2008-02-18 Enrico Tröger * 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, tagmanager/options.c: 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 * configure.in, doc/Doxyfile.in, doc/Makefile.am, 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, src/utils.h: 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 * doc/geany.html, doc/geany.txt: Fix slightly wrong documentation for show_editor_scrollbars. * THANKS, doc/geany.1.in, 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 * 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, src/keyfile.c: Add hidden preference to disable scrolling past end of document. 2008-02-13 Enrico Tröger * 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 * 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 * src/about.c, THANKS: Added Nikita E. Shalaev to list of Russian translaters. 2008-02-10 Enrico Tröger * src/navqueue.c, src/navqueue.h, src/symbols.c, src/treeviews.c: Apply patch from Yura Siamashka to fix wrong navigation queue items (thanks). * 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 symlink. 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 * 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 * plugins/Makefile.am: 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 * plugins/autosave.c, plugins/filebrowser.c: Make forgotten strings translatable. 2008-02-05 Enrico Tröger * scintilla/include/Platform.h: Fix definition of PLAT_GTK_WIN32 on Windows to fix Copy&Paste problems. * New release: Geany 0.13 "Vensell". * configure.in, geany.nsi, geany_private.rc, win32-config.h, src/geany.h: Post-release version bump. 2008-02-04 Nick Treleaven * 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 * 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 * 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 * plugins/autosave.c: Fixed a little typo (Thanks to Jeff Bailes for reporting) 2008-01-31 Nick Treleaven * 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 /usr/include/gtk-2.0/gtk/gtk.h' 2008-01-31 Enrico Tröger * 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 * 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 code. 2008-01-28 Nick Treleaven * 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 * src/printing.c: Fix crash on Windows when printing an untitled file. Fix black line number margin when printing by using also pre-defined styles. 2008-01-25 Nick Treleaven * 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 * 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 * THANKS, src/about.c, po/el.po, po/LINGUAS: Add Greek translation (thanks to Stavros Temertzidis). 2008-01-18 Nick Treleaven * src/interface.c, geany.glade: 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 * 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 * geany.glade, 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 * src/editor.c: Fix hidden lines after deleting a line that is a collapsed fold point. * tagmanager/c.c: Fix parsing D constructor tags. 2008-01-15 Nick Treleaven * src/dialogs.c: Don't unlink the old file if renaming failed. 2008-01-14 Nick Treleaven * 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 * 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 * 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. * Makefile.am, 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 * src/build.c, src/project.c, src/project.h, doc/geany.txt, doc/geany.html: 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, tagmanager/include/tm_workspace.h: 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 * 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 * 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 * 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 * geany.glade, src/geanywraplabel.c, src/geanywraplabel.h, src/interface.c, src/plugins.c, src/prefs.c, src/vte.c, src/Makefile.am, 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 * geany.nsi, geany_private.rc, README, doc/geany.html, doc/geany.txt, po/intl_stats.sh, 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 * plugins/pluginmacros.h: Remove filetype macro to avoid naming conflicts. 2008-01-04 Frank Lanitz * 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 * THANKS, src/about.c, po/ja.po, po/LINGUAS: Adding of Japanese translation (Thanks to Tarot Osuji). 2008-01-02 Enrico Tröger * 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 * 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 * 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 * 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 * data/filetype_extensions.conf, src/filetypes.c: Add *.vala extension to CSharp filetype to support the Vala language. 2007-12-25 Nick Treleaven * src/keybindings.c, src/keybindings.h, src/plugindata.h: Add configurable keybindings for Cut, Copy and Paste. 2007-12-23 Enrico Tröger * 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 * 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() NULL-safe. * src/utils.c, src/win32.c, src/utils.h, src/win32.h, src/dialogs.c, src/search.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(), dialogs_show_save_as(). Add initial_dir argument for win32_show_file_dialog(). Add utils_get_default_dir_utf8(). Rename utils_get_current_file_dir() to utils_get_current_file_dir_utf8(). 2007-12-19 Enrico Tröger * TODO, src/main.c: Apply patch Jeff Pohlmeyer to handle unknown command line options better (thanks). * HACKING, src/Makefile.am, 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 * src/about.c, THANKS, po/uk_UA.po, po/LINGUAS: Added Ukrainian translation (Thanks to Boris Dibrov). 2007-12-18 Enrico Tröger * Makefile.am: Don't install pixmaps/geany.ico by default. * geany.spec.in: Fix mandir path and don't delete icons (patch by Yura Siamashka, thanks). * src/Makefile.am: Add PREFIX macro. Don't construct LOCALEDIR manually but use autotools $(localedir) variable instead. * HACKING: Add note about using autotools macros like DATADIR. * doc/geany.1.in, doc/geany.html, doc/geany.txt, src/main.c: Add --print-prefix command line option to output installation paths. 2007-12-18 Nick Treleaven * 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 files. * tagmanager/c.c: Fix parsing correct D class name when inheriting. 2007-12-17 Enrico Tröger * 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 VTE. Add VTE preference to skip the generated run script. when running commands in the VTE. Make vte_cwd() accept also paths not only filenames. * geany.desktop.in.in: Avoid full path for icon entry. * geany.spec.in: Add file HACKING and classviewer icons. * Makefile.am: Prevent installing geany.desktop twice. 2007-12-16 Enrico Tröger * geany.desktop.in.in: 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). * geany.glade, 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 * src/build.c: Fix Run command for HTML files when set to something else than "builtin". 2007-12-12 Enrico Tröger * geany.glade, 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. * configure.in, src/Makefile.am, 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 * geany.spec.in: 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 * 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 * doc/geany.html, doc/geany.txt, src/callbacks.c, src/document.c, src/document.h, src/encodings.c, src/encodings.h, src/keyfile.c, src/main.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 * 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 * 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 * 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 * plugins/filebrowser.c, plugins/pluginmacros.h, src/callbacks.c, src/plugins.c, src/plugindata.h, src/search.c, src/search.h, src/utils.c: 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 * src/templates.c: Avoid inclusion of PHP tags in PHP function descriptions. * plugins/Makefile.am, plugins/svndiff.c: Remove obsolete SVNdiff plugin, use the VC Diff plugin. * geany.glade, src /editor.c, src/editor.h, src/geany.h, src/interface.c, src/keyfile.c, src/plugindata.h, src/plugins.c, src/prefs.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 * src/filetypes.c, data/filetypes.conf: Added .ltx as extension for LaTeX-documents. 2007-11-30 Nick Treleaven * src/main.c, tagmanager/tm_project.c, tagmanager/tm_workspace.c, tagmanager/include/tm_workspace.h: Remove unused config_dir argument for tm_get_workspace(). * src/symbols.c: Fix broken generate tags command. 2007-11-29 Enrico Tröger * geany.glade, 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 * scintilla/LexHTML.cxx: Fix syntax colouring bug when using '?>' in a PHP comment (closes #1838854). 2007-11-25 Enrico Tröger * src/document.c: Display character which caused a failed encoding conversion when saving a file. 2007-11-23 Enrico Tröger * 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 * po/POTFILES.in, plugins/autosave.c, plugins/Makefile.am, plugins/makefile.win32: New plugin: Auto Save. * geany.glade, 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 * 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 * geany.glade, 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 unloaded. * src/plugindata.h, src/plugins.c: Add utils_mkdir() to the plugin API. 2007-11-19 Enrico Tröger * 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 * 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 * 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. * configure.in, geany.glade, 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/Makefile.am, 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/Makefile.am, tagmanager/lregex.c, tagmanager/makefile.win32, tagmanager/parse.c, tagmanager/parse.h, tagmanager/php.c, tagmanager/regex.c, tagmanager/tm_tag.c, tagmanager/include/Makefile.am, 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 * plugins/vcdiff.c, plugins/Makefile.am: 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 * 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 * src/highlighting.c: Don't change control char symbol in Scintilla. 2007-11-12 Enrico Tröger * Makefile.am, geany.glade, data/autocomplete.conf, data/snippets.conf, doc/geany.txt, doc/geany.html, doc/geany.1.in, 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 * src/templates.c, src/utils.c, src/utils.h: Remove utils_get_date() and add format argument to utils_get_date_time(). * 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 label. * 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 * 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 * src/editor.c, src/utils.c, src/utils.h: Remove unused unnecessary function utils_btoa(). 2007-11-07 Enrico Tröger * 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 * 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 * 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, geany.glade: 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 keybindings. 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 * HACKING: Update 'Adding a filetype' section for new highlighting.c code. 2007-11-05 Enrico Tröger * 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 * 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 * 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 created. Fix problems when configuration directory path contains special characters. * 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 * 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 styleset_foo_init(). 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 * 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 * 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 * 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 * 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 * plugins/svndiff.c: Make svn error messages better readable. 2007-10-29 Nick Treleaven * 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 * 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, plugins/svndiff.c: 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 * 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 * plugins/svndiff.c: Added feature to make a diff from an open project or a current directory. 2007-10-24 Nick Treleaven * 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, src/ui_utils.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/Makefile.am, plugins/pluginmacros.h: 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 twice). Fix hiding the sidebar/documents list from the popup menu when there's no selected item. 2007-10-23 Nick Treleaven * plugins/svndiff.c: Set the status bar instead of logging status messages. 2007-10-23 Frank Lanitz * plugins/svndiff.c: Small improvments in handling of non UTF-8 diffs. 2007-10-22 Enrico Tröger * src/notebook.c: Don't make notebook tabs higher than necessary. 2007-10-22 Nick Treleaven * plugins/filebrowser.c, plugins/Makefile.am, 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, po/POTFILES.in, geany.glade: Added File Browser sidebar plugin. Rename 'Open Files' sidebar tab 'Documents'. Add keybindings->send_command() and tm->get_real_path() to the plugin API. 2007-10-20 Enrico Tröger * src/keyfile.c: Fix possible wrong window title when loading session files. 2007-10-19 Frank Lanitz * src/about.c, THANKS, po/sv.po, po/LINGUAS: Added Swedish translation (Thanks to Tony Mattsson). 2007-10-19 Enrico Tröger * configure.in, doc/geany.html, doc/geany.txt, plugins/Makefile.am, scintilla/Makefile.am, scintilla/PlatGTK.cxx, src/Makefile.am, src/gb.c, src/project.c, src/vte.c, tagmanager/Makefile.am: Apply most of the patch from #1794250 (thanks): Remove compiler specific flags. Add configure option to specify the path to libvte.so. Remove many unnecessary configure checks. Stop configure if msgfmt was not found(gettext not installed). 2007-10-18 Enrico Tröger * 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 * 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, geany.glade, THANKS: Apply patch from Catalin Marinas to add a 'newline strips trailing spaces' pref (thanks). 2007-10-17 Nick Treleaven * 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, geany.glade: 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 * geany.glade, 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 * plugins/svndiff.c, plugins/Makefile.am, plugins/makefile.win32, po/POTFILES.in: New Plugin: Plugin to create a diff of a file against svn. 2007-10-13 Enrico Tröger * geany.glade, 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 * NEWS, doc/geany.1.in: Update for 0.12. * New release: Geany 0.12 "Delurin". * configure.in, geany.nsi, geany_private.rc, win32-config.h, src/geany.h: Post-release version bump. 2007-10-09 Enrico Tröger * src/document.c, src/highlighting.c, src/symbols.c, src/symbols.h: Fix wrong colouring of type keywords of tags from different filetypes. * 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 * 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 * 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 * src/prefs.c: Fix segfault when manually editing a keybinding and selecting another item. * 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 * 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 * 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 * 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 * 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/geany.1.in, 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 tagmanager/c.c. It also adds vStringChop() - chop last character from string. 2007-09-27 Enrico Tröger * src/keyfile.c: Don't load invalid window geometry data from the config file. 2007-09-27 Nick Treleaven * 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 subdirectory. 2007-09-26 Nick Treleaven * 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 * 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(). * TODO: 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 sci_get_line_from_position(). 2007-09-24 Nick Treleaven * 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 * 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 * src/editor.c: Make 'Select lines' not include an extra line when whole lines are selected. Make 'Delete lines' not include an extra line when whole lines are selected. * 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 * src/keyfile.c: Save and restore the current notebook page when quitting. 2007-09-17 Nick Treleaven * 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 iter. * tagmanager/haxe.c: Show Haxe enum types in the symbol list. * src/msgwindow.c, src/msgwindow.h, src/search.c: Add foreground colouring to messages items. 2007-09-13 Nick Treleaven * src/callbacks.c: Speed up Save All for C-like files by avoiding unnecessary recolourising after user typenames have changed. * src/keybindings.c, src/document.c, doc/geany.txt, doc/geany.html: Change scroll by line default keybindings to Alt-{Up, Down}. Change Previous/Next Paragraph Scintilla commands to Ctrl-{Up, Down}. Adding Shift extends selection by paragraph. * src/keybindings.c, src/keybindings.h, doc/geany.txt, doc/geany.html: Add Find keybinding (re-uses existing string). Group search-related callbacks together. Docs: Add table headings to group related keybindings together. * src/keybindings.c: Make some keybinding titles use existing string capitalization. * src/images.c: Apply patch from Christoph Berg to update main window icon and About dialog icon (thanks). 2007-09-12 Nick Treleaven * src/plugindata.h: Fix return type for document->open_file(). (Tidy up field name indentation). * doc/geany.txt, doc/geany.html: Apply patch from John Gabriele for an overview in the Tags section (thanks). (Format paragraph with fmt -w72). * src/keyfile.c, src/editor.c, src/editor.h, doc/geany.txt, doc/geany.html: Allow autocompletion on a line with trailing whitespace. Add auto_complete_whilst_editing hidden preference. * src/ui_utils.h, src/callbacks.c, src/main.c, src/ui_utils.c: Make Toggle Case use the current word if there's no selection. Make Toggle Case keep an existing selection. Rename ui_widgets.popup_items to popup_copy_items. * doc/geany.txt, doc/geany.html: Edit how to manually edit geany.conf hidden prefs. * src/win32.c, src/about.c, src/ui_utils.c: Use G_N_ELEMENTS(arr) instead of sizeof(arr) / sizeof(arr[0]). Correct prev_translators email address. 2007-09-11 Enrico Tröger * src/callbacks.c: HTML manual is called Manual.html on Windows, so open this file. 2007-09-11 Nick Treleaven * plugins/export.c, plugins/classbuilder.c, src/utils.c, src/win32.c, src/utils.h, src/plugindata.h, src/msgwindow.c, src/callbacks.c, src/keyfile.c, src/document.c, src/plugins.c, src/document.h, src/main.c, src/socket.c, src/ui_utils.c: Neaten up the plugin API: Make document_open_file() now wrap document_open_file_full(), without the idx for reloading or pos arguments. Replace str_replace() with string_replace_all() in the plugin API. Add utils_string_replace_all(), taking a GString argument. * src/plugindata.h, src/document.c, src/plugins.c, src/document.h: Add reload_file() document function to the plugin API. 2007-09-10 Enrico Tröger * THANKS, pixmaps/geany.ico, pixmaps/geany.png: Replace Geany's icon by a new one by Sebastian Kraft (thanks). * plugins/Makefile.am: Add makefile.win32 to EXTRA_DIST files. * plugins/export.c, src/plugins.c, src/plugindata.h: Remove get_zoom from plugin API. 2007-09-09 Enrico Tröger * src/build.c, src/callbacks.c: Change quotes in some error messages to be more consistent (thanks Frank). * doc/geany.txt: Add notice about code navigation history. * src/geany.nsi: Install symbol list icons with the installer. Use Geany's icon for the installer. 2007-09-07 Enrico Tröger * geany.glade, doc/geany.txt, src/callbacks.c, src/callbacks.h, src/interface.c, src/keybindings.c, src/keybindings.h, src/main.c, src/utils.c, src/utils.h, src/ui_utils.h: Remove convert to lower-/upper-case keybindings. Add toggle case keybinding and change shortcut to Ctrl-Alt-U. * src/about.c: Improved error message if license text could not be found (thanks Frank). 2007-09-07 Nick Treleaven * src/keybindings.c, src/keybindings.h, doc/geany.txt, doc/geany.html: Add 'Move document left' and 'Move document right' keybindings. Make fixed keybindings overridable. Add fixed keybindings for switching to leftmost/rightmost document, Ctrl-Shift-{PageUp,PageDown}. Docs: Add 'Switching documents' keybindings section. * src/interface.c, src/prefs.c, geany.glade: Replace 'Use tabs...' preference checkbox with Tabs, Spaces radio buttons (should be a bit clearer). * doc/geany.txt, doc/geany.html: Minor update of Preferences dialog section. 2007-09-05 Enrico Tröger * src/document.c: Fix missing syntax colouring when saving new files. * src/document.c, src/keybindings.c, src/keybindings.h: Make keybinding for scrolling by one line changeable. * src/prefs.c: Store the index of a keybinding in the treeview store to fix problems getting the correct index when editing a cell of the treeview. 2007-09-05 Nick Treleaven * src/utils.c, src/document.c: Rewrite document_find_by_filename() to work when the filename argument contains relative path elements or symlinks. 2007-09-03 Enrico Tröger * src/makefile.win32, src/ui_utils.c, src/win32.c, plugins/makefile.win32: Sort list of files to build on Windows. Add geanyobject.c to the list of files to build on Windows. Fix some warnings and build errors on Windows. 2007-09-03 Nick Treleaven * src/keybindings.c: Set copy lines default KB to Ctrl-Shift-C. Set cut lines default KB to Ctrl-Shift-X. * plugins/classbuilder.c, src/templates.c, src/keybindings.c, src/plugindata.h, src/callbacks.c, src/document.c, src/document.h, src/main.c, src/socket.c: Add text argument for document_new_file(), so that it's independent from filetype templates. Make File->New create a blank document, rather than using the None filetype template. Add None option for the 'New with Template' menu commands. * src/interface.c, geany.glade: Move 'Insert #include' menu item below other insert menu items. 2007-08-31 Nick Treleaven * src/highlighting.c, doc/geany.txt, doc/geany.html, data/filetypes.common: Include \n\r newline chars in Scintilla whitespace chars. * data/filetypes.common: Undo last commit, because it makes selecting text with the mouse include all trailing lines with no wordchars on them. 2007-08-30 Nick Treleaven * src/interface.c, src/keybindings.c, geany.glade: Change 'Goto' to 'Go to' everywhere. * doc/geany.txt, doc/geany.html: Add Plugins section, describe using a second instance to edit geany.conf in 'Hidden preferences' appendix. * src/keybindings.c: Rename non-menu keybinding titles, e.g. Tags menu -> Tags commands. * src/keybindings.c: Fix Ctrl-Shift bindings not working when caps lock is on. * src/treeviews.c: Only focus the current document after switching pages if the open files treeview currently has focus (otherwise focus commands can be overridden, e.g. when pressing F4 during opening several files). * src/editor.c: Prevent calltip after typing '(' when in a comment or string. Allow forced autocompletion in a comment or string. 2007-08-29 Nick Treleaven * src/keyfile.c, src/editor.c, src/editor.h, doc/geany.txt, doc/geany.html: Add 'Current chars' indentation mode, rename 'Advanced' indentation to 'Match braces' (closes #1726880). For 'Match braces' indentation, if a brace could not be matched, fall back to 'Current chars' indentation. * doc/geany.txt, doc/geany.html: Added 'Inserting unicode characters' Editing section, adapted from a patch by John Gabriele (thanks). * plugins/Makefile.am: Don't install Demo plugin. 2007-08-28 Nick Treleaven * src/keyfile.c: Group settings in load_dialog_prefs() by dialog tab. * src/keyfile.c, src/document.c, src/editor.h, doc/geany.txt, doc/geany.html: Add hidden editor preference 'use_gtk_word_boundaries'. Add docs appendix 'Hidden preferences'. * HACKING: Add more complete information for adding a filetype. 2007-08-28 Enrico Tröger * src/callbacks.c, src/callbacks.h, src/keybindings.c, src/main.c: Remove useless callback wrapper function. 2007-08-27 Nick Treleaven * src/interface.c, geany.glade: Add Prefs dialog 'Editor tabs' frame in Interface tab and group related preferences. Change some table spacing to multiples of 3. Rename Misc., Behaviour -> Miscellaneous. * src/plugindata.h: Clear PluginInfo fields in PLUGIN_INFO macro for future extensions. * src/keyfile.c: Group prefs in order for save_dialog_prefs(). * src/keyfile.c: Refactor configuration_load(). 2007-08-25 Enrico Tröger * geany.glade, plugins/classbuilder.c, plugins/demoplugin.c, plugins/export.c, plugins/htmlchars.c, src/interface.c, src/keyfile.c, src/notebook.c, src/plugindata.c, src/prefs.c, src/prefs.h: Add version to plugin info fields and two other fields for future use. Add option to show/hide the small crosses on each file tab (closes #1757680). 2007-08-24 Nick Treleaven * src/dialogs.c, src/callbacks.c: Fix saving the wrong document when using Save All with unnamed documents. * src/utils.c, src/highlighting.c, src/sciwrappers.c, src/document.c, src/symbols.c: Fix wrong brace formatting. * src/about.c, src/callbacks.c, src/keyfile.c, src/editor.c: Fix wrong // comment spacing. * src/keyfile.c: Refactor configuration_save() to group new struct settings together. Move 'Enable plugin support' keyfile pref to the 'geany' group. * src/prefs.c, src/prefs.h, src/plugindata.h, src/callbacks.c, src/keyfile.c, src/document.c, src/document.h, src/main.c, src/editor.h, src/ui_utils.c: Move file-related fields from EditorPrefs -> GeanyPrefs. Rename line_breaking -> line_wrapping for EditorPrefs and document. 2007-08-23 Enrico Tröger * src/document.c: Fix invalid filetype setting when using Save All and files with filetype None (thanks to Omair Eshkenazi for reporting). 2007-08-23 Nick Treleaven * plugins/export.c, src/templates.c, src/build.c, src/utils.c, src/ui_utils.h, src/build.h, src/utils.h, src/highlighting.c, src/keybindings.c, src/tools.c, src/prefs.c, src/dialogs.c, src/prefs.h, src/navqueue.c, src/plugindata.h, src/geany.h, src/treeviews.c, src/msgwindow.c, src/callbacks.c, src/notebook.c, src/treeviews.h, src/keyfile.c, src/vte.c, src/search.c, src/document.c, src/plugins.c, src/main.c, src/editor.c, src/symbols.c, src/main.h, src/editor.h, src/ui_utils.c: Rename MyApp -> GeanyApp. Move most GeanyApp fields into: GeanyPrefs for (most) Preferences dialog fields; UIPrefs for non-Prefs dialog visual settings; UIWidgets for less commonly used widgets such as menuitems and dialogs; GeanyStatus for various states the application can be in. Move some GeanyApp fields into EditorPrefs (and one into each of CommandLineOptions and SidebarTreeviews). Add plugin API prefs field. Move disabling build widgets on Windows to build_init(). Make build callbacks static. Add treeviews_init() to prepare popup menus and open files treeview. Replace treeviews_find_node() with treeviews_select_openfiles_item(). Make utils_isbrace() and utils_is_opening_brace() take an 'include_angles' argument (to separate from editor_prefs). Make 'Goto matching brace' keybinding include <> angle brackets. * src/geanyobject.c, src/plugindata.h, src/geanyobject.h, src/callbacks.c: Apply patch from blackdog to add "document-activate" plugin signal, which is sent when switching notebook pages (thanks). 2007-08-22 Enrico Tröger * plugins/export.c: Fix some minor LaTeX code errors. Add generation date to HTML header and as comment in the generated LaTeX code. 2007-08-21 Enrico Tröger * src/editor.h: Remove unused struct. 2007-08-19 Enrico Tröger * plugins/export.c, plugins/Makefile.am, plugins/makefile.win32, po/POTFILES.in, src/plugins.c, src/plugindata.h: New plugin: Export as HTML and LaTeX. Add some functions to the plugin API needed by the Export plugin. * src/utils.c: Include error code string in the debug message if a file could not be written. 2007-08-17 Nick Treleaven * src/plugins.c: Apply patch from Jeff Pohlmeyer to fix warning when unloading plugins that use signals when quitting (thanks). * tagmanager/get.c: Fix parsing C macro argument list. 2007-08-16 Nick Treleaven * src/msgwindow.c: Apply patch from Jon Senior to fix parsing Apache Ant compiler error messages (thanks). * src/interface.c, src/prefs.c, src/keyfile.c, src/main.c, src/main.h, geany.glade: Add 'Enable plugin support' Prefs checkbox. Minor edit of load VTE option text. * scintilla/include/Scintilla.h, scintilla/Editor.cxx, scintilla/ScintillaGTK.cxx, src/document.c, doc/geany.txt: Use sci_assign_cmdkey() to set GtkEntry-like word boundary handling. Clear unnecessary default Scintilla Ctrl-D duplicate keybinding. Add SCI_DELWORDRIGHTEND command (patch sent to Scintilla ML). Remove previous ScintillaGTK::KeyCommand override. * src/symbols.c: Fix symbol list sort by appearance order for e.g. geany.txt. 2007-08-16 Enrico Tröger * scintilla/PositionCache.cxx: Apply patch from Scintilla ML to fix problems with selections including the first and second character of a line. 2007-08-15 Enrico Tröger * src/symbols.c, src/symbols.h, src/treeviews.c: Add menu items for different sorting of the symbol list to the symbol list popup menu. 2007-08-15 Nick Treleaven * src/plugindata.h, src/plugins.c: Apply patch from Jeff Pohlmeyer to add document_remove() to the plugin API (thanks). Add document_open_files() to plugin API. * src/plugins.c: Disconnect plugin callback signals when unloading plugins, to prevent a segfault when emitting signals. * src/templates.c, src/build.c, src/utils.c, src/keybindings.c, src/highlighting.h, src/sciwrappers.h, src/dialogs.c, src/geany.h, src/treeviews.c, src/msgwindow.c, src/callbacks.c, src/keyfile.c, src/filetypes.h, src/document.c, src/plugins.c, src/document.h, src/main.c, src/editor.c, src/symbols.c, src/editor.h, src/symbols.h, src/ui_utils.c Move #define PLAT_GTK to geany.h. Move filetype typedef to geany.h. Don't #include any src/*.h files from headers. * src/msgwindow.c: Add support for Java Apache Ant compiler error messages. 2007-08-14 Nick Treleaven * src/filetypes.c, src/filetypes.h, src/symbols.c, tagmanager/parsers.h, tagmanager/makefile.win32, tagmanager/rest.c, tagmanager/Makefile.am: Add reStructuredText filetype and parser. * src/filetypes.c, src/filetypes.h: Sort filetype groups alphabetically. * src/keyfile.c, src/filetypes.c, data/filetype_extensions.conf: Add comment about generating filetype_extensions.conf. Update filetype_extensions.conf. * src/filetypes.c: Rewrite filetypes_get_from_uid() for easier maintenance. * HACKING: Add more information for adding a filetype. 2 minor edits. * src/plugindata.h, src/plugins.c: Apply patch from blackdog to add document_save_file() to the plugin API (thanks). Add document_open_file() to plugin API. 2007-08-13 Enrico Tröger * src/about.c: Increase border space in credits tab and align developer names left. * src/keyfile.c: Fix wrong debug message if a session file couldn't be loaded. 2007-08-12 Enrico Tröger * data/filetypes.freebasic: Add many keywordsGeanyObjectPrivate (patch by Arthur Skowronek, thanks). * geanyobject.c: Fix a runtime warning. * doc/Makefile.am, doc/geany.txt, doc/geany.html: Don't use output redirection since the reST tools accept output filenames. Apply patch from John Gabriele to add some tweaks/fixes (thanks). 2007-08-10 Nick Treleaven * src/keybindings.c, src/editor.c, src/editor.h: Make 'Delete current line' and 'Select current line' work for all lines that have a selection. Implement 'Copy current line'. * doc/geany.txt, doc/geany.html: Update selected line(s) keybindings. * src/plugindata.h: Tidy up struct typedefs. * src/geanyobject.c, src/plugindata.h, src/geanyobject.h, src/document.c, src/plugins.c, src/main.c, src/Makefile.am: Add plugin symbol geany_callbacks (see plugindata.h for details). Add GeanyObject type with "document-new", "document-open", "document-save" signals. 2007-08-10 Enrico Tröger * tagmanager/php.c: Fix parsing classes with modifiers like 'final'. 2007-08-09 Nick Treleaven * plugins/classbuilder.c: Fix missing GTypeInfo field initializer when generating 'objectname'_get_type() for GObject classes. * doc/geany.txt, doc/geany.html: Move 'About this document' section to end of Introduction. Update 'Contributing to this document' section. * doc/geany.1.in: Update for -g and -p options. * data/autocomplete.conf: Add %cursor% for default 'else' completion. Add space before while for 'do' completion. * src/keybindings.c: Prevent warning when trying to focus non-existent VTE. 2007-08-09 Enrico Tröger * doc/*, doc/html/*: Remove all docbook related files and use reST to generate the documentation. Thanks to John Gabriele for his great work on converting from docbook to the reST format. 2007-08-07 Nick Treleaven * src/symbols.c, tagmanager/python.c: Parse Python global variables and class variables from assignment statements; assignment to a tuple literal ('x, y =') not supported. 2007-08-05 Enrico Tröger * geany.glade, src/geany.h, src/interface.c, src/keyfile.c, src/msgwindow.c, src/prefs.c, src/ui_utils.c: Add option to suppress messages in the status bar. * src/dialogs.c: Use UTF-8 filename in Save As dialog when setting non-existing filename. 2007-08-04 Enrico Tröger * configure.in: Fix error in "make install" caused by old automake versions and intltool. * src/plugins.c: Prevent loading the same plugin in different paths. 2007-08-03 Nick Treleaven * src/plugindata.h, src/plugins.c, src/editor.h, HACKING: Add filetypes, editor_prefs fields to plugin API. Wrap scintilla_send_message(), sci_cmd(), lookup_widget(). Apply patch from Jeff Pohlmeyer to add more common scintilla wrappers to the plugin API (thanks). Increment plugin ABI version. 2007-07-31 Enrico Tröger * po/Makefile.in.in: Removed. * src/symbols.c: Fix crash when saving a file after setting encoding "None". 2007-07-30 Nick Treleaven * src/tools.c, src/sciwrappers.c, src/callbacks.c, src/search.c: Add allocation for NULL-terminated selection ends. 2007-07-29 Enrico Tröger * scintilla/LexHTML.cxx, scintilla/Makefile.am: Backport of LexHTML from Scintilla CVS to fix #1759166. Disable debug build of Scintilla and use -Os. * src/about.c: Rework credits page to fix some display issues. 2007-07-28 Enrico Tröger * src/editor.c, src/editor.h, src/keybindings.c: Rename editor_auto_forif() in editor_auto_complete(). Allow using auto completion in PHP files outside of the PHP tags, generally in comments, for news files without filetype and on non-empty lines. * src/Makefile.am, src/plugins.c: Only show the separator between built-in Tools menu items and plugins if there are any plugins. Use PACKAGE_LIB_DIR. Load plugins in ~/.geany/plugins/ prior to the default location. * src/symbols.c: Hide empty symbol types in the symbol list. * makefile.win32, win32-config.h, plugins/makefile.win32, src/plugins.c: Make plugins working and compiling on Windows. 2007-07-27 Nick Treleaven * plugins/demoplugin.c, plugins/htmlchars.c, plugins/classbuilder.c, src/plugindata.h, src/plugins.c: Add GeanyData* geany_data symbol for plugins so they don't have to keep a copy of the init() argument. Rename PluginData GeanyData (but use a typedef for backward compatibility). Update plugins to use newer API symbols. * src/utils.c, src/utils.h, src/tools.c, src/tools.h, src/dialogs.c, src/callbacks.c, src/callbacks.h: Move Color Chooser and Word Count tools to tools.c. * src/plugins.c: Add separator between built-in Tools menu items and plugins. * src/interface.c, src/keybindings.c, geany.glade: Use AE spelling of 'color'. 2007-07-26 Nick Treleaven * src/highlighting.c: Ignore whitespace_chars for Haxe. * src/plugins.c: Use a single PluginData struct for all plugins. 2007-07-26 Enrico Tröger * THANKS, data/filetype_extensions.conf, data/filetypes.haxe, tagmanager/haxe.c, tagmanager/parsers.h, tagmanager/makefile.win32, tagmanager/Makefile.am, src/templates.c, src/highlighting.c, src/highlighting.h, src/callbacks.c, src/filetypes.c, src/filetypes.h, src/symbols.c: Add filetype Haxe (patch by blackdog, thank you). * ChangeLog, po/ChangeLog, README: Change format of email addresses. 2007-07-25 Nick Treleaven * po/POTFILES.in: Translate the HTML Characters plugin. * src/main.c: Set app->debug_mode when GEANY_DEBUG is defined. * plugins/htmlchars.c, src/plugindata.h, src/plugins.c: Don't destroy plugin_fields->menu_item automatically - plugin_fields should be owned by the plugin, so the plugin is responsible for destroying it, and any other memory it allocated. Print a warning message in debug mode if a plugin has no cleanup() function. 2007-07-25 Enrico Tröger * src/document.c: Fix wrong selection handling when using Color Chooser. 2007-07-24 Nick Treleaven * src/plugindata.h, src/plugins.c: Apply patch from Jeff Pohlmeyer to add plugin functions for getting a file list and modifying scintilla text selections (thanks). * src/document.c: Fix hang when replacing all '[ ]*' regex matches (closes #1757748). 2007-07-24 Enrico Tröger * Makefile.am, doc/Makefile.am, icons/Makefile.am, plugins/Makefile.am, scintilla/include/Makefile.am, src/Makefile.am: Fix make distcheck. 2007-07-23 Nick Treleaven * plugins/htmlchars.c, plugins/Makefile.am, src/interface.c, src/keybindings.c, src/tools.c, src/tools.h, src/plugindata.h, src/callbacks.c, src/callbacks.h, src/plugins.c, src/plugins.h, src/ui_utils.c, HACKING, geany.glade: Convert 'Insert Special HTML Characters' tool into a plugin; keybinding support will be added later. Add plugin functions for inserting text into the current document. Add plugin support for disabling a menu item when no documents are open. Destroy plugin_fields->menu_item on unloading if set by a plugin. Use G_MODULE_BIND_LOCAL for plugins to prevent symbol shadowing by other modules, and to help detect unresolved symbols at loading time. * plugins/htmlchars.c: Fix warning. 2007-07-23 Enrico Tröger * src/symbols.c: Adjust symbol list icon path on Windows. 2007-07-22 Enrico Tröger * src/symbols.c, src/treeviews.c, src/treeviews.h, src/utils.c, src/utils.h: Extend icon search path to get symbol list icons working when using a non-standard installation prefix. Query default icon theme only once to improve startup speed. Store the line number separately in the tree store. Remove utils_get_local_tag(). * data/filetypes.common: Clarified description of white_space setting. 2007-07-20 Frank Lanitz * THANKS,po/LINGUAS,po/en_GB.po: Added British English translation (Thanks to Jeff Bailes). 2007-07-20 Nick Treleaven * src/ui_utils.h, src/geany.h, src/callbacks.c, src/document.c, src/main.c, src/ui_utils.c: Rename ui_close_buttons_toggle() ui_document_buttons_update(). Move app->sensitive_buttons to ui_utils.c for easier maintenance, rename to document_buttons. * configure.in, src/treeviews.c, src/treeviews.h, src/symbols.c, THANKS, Makefile.am, icons, icons/16x16, icons/16x16/classviewer-member.png, icons/16x16/classviewer-var.png, icons/16x16/classviewer-namespace.png, icons/16x16/classviewer-method.png, icons/16x16/Makefile.am, icons/16x16/classviewer-macro.png, icons/16x16/classviewer-other.png, icons/16x16/classviewer-struct.png, icons/16x16/classviewer-class.png, icons/Makefile.am: Apply patch to add symbol list icons from Jean-François Wauthy (thanks). Also thanks to KDevelop for the icons. Add list of projects to THANKS. 2007-07-19 Nick Treleaven * src/treeviews.c: Prevent warning when clicking on symbol list parent items. * src/geany.h, src/filetypes.c, src/filetypes.h, src/main.c: Use extern 'app' and 'filetypes' global variables in headers, so that G_MODULE_BIND_LOCAL can later be used when loading plugins to detect any unresolved symbols. 2007-07-18 Nick Treleaven * src/editor.c: Fix gcc warning, add comment for editor_scroll_to_line(). * src/navqueue.c: Fix possible segfault when a file is closed and using go forward. Fix 2 possible memory leaks when files have been closed. * src/interface.c, src/keybindings.c, src/keybindings.h, src/callbacks.c, src/callbacks.h, geany.glade: Make pressing escape focus the editor when using incremental search or the Goto Line entries. Add keybindings_cmd() to mimic a keybinding action. 2007-07-17 Nick Treleaven * src/dialogs.c, src/callbacks.c, src/callbacks.h, src/document.c, src/document.h: Move font & file open/save dialog callbacks to dialogs.c. Add document_clone() in document.c (for Save As open in new tab). * src/utils.c, src/navqueue.c, src/navqueue.h, src/treeviews.c: Add a navigation queue position when clicking on symbol list items. Prevent duplicates in the navigation queue. Add navqueue_append() which adds the current document position to the queue before adding the new position. 2007-07-17 Enrico Tröger * src/editor.c: Improve selection handling when decreasing indent by one space. Avoid using SCI_DELETEBACK for simple text removal. Fix a typo in is_doc_comment_char(). * src/callbacks.c, src/ui_utils.c, src/utils.c: Fix warnings about shadowing local variables. * geany.glade, src/interface.c: Fix typo. * configure.in, geany.desktop.in.in, Makefile.am, po/Makefile.in.in, po/POTFILES.in: Add --disable-deprecated option to configure to build without deprecated GLib and GTK code. Use intltool to make geany.desktop translatable Rename geany.desktop.in to geany.desktop.in.in. Add Makefile.in.in in po/ to get translation status from msgfmt when running make. * src/win32.c: Fix creation of wrong hex colours when inserting colours from the colour chooser dialog. * tagmanager/ctags.c, tagmanager/entry.c, tagmanager/tm_source_file.c, tagmanager/strlist.c, tagmanager/tm_project.c, tagmanager/sort.c, tagmanager/tm_work_object.c, tagmanager/read.c, tagmanager/regex.c, tagmanager/tm_workspace.c, tagmanager/parse.c, tagmanager/tm_file_entry.c, src/build.c, src/document.c, src/utils.c: Always use g_fopen() and g_stat() instead of fopen() and stat() to fix several problems with filenames containing special characters on Windows. Use GetFullPathName() instead of lrealpath() to get Tagmanager working on files containing special characters on Windows. * configure.in: Fix broken configure when using autoconf < 2.60. * doc/geany.docbook, src/editor.c, src/editor.h, src/keybindings.c, src/keybindings.h: Add keybinding for scroll to current line. 2007-07-16 Enrico Tröger * src/document.c, src/editor.c: Fix possible selection errors on commenting multiple lines when using CR/LF line endings. * doc/geany.docbook, src/editor.c, src/editor.h, src/keybindings.c, src/keybindings.h: Add keybindings for smart indent and indent/deindent by one space. * configure.in: Fix failing linking on some systems (needs to be solved cleanly). 2007-07-16 Nick Treleaven * src/dialogs.c, src/callbacks.c: Use Rename button instead of checkbox for Save As dialog. Add tooltips for Save As dialog's other options. * src/callbacks.c: Fix segfault (oops). 2007-07-13 Nick Treleaven * src/treeviews.c: Prevent warning when closing files when Geany is busy (e.g. pressing Ctrl-W when opening files). * src/main.c: If -i, --new-instance options are passed, disable loading & saving of session files. * src/plugins.c: Remove init_function_pointers(), use static initializers. * plugins/classbuilder.c, src/plugindata.h, src/plugins.c: Make Class Builder 'Create Class' dialog use Glade-style frames and remove some unnecessary border width. Add ui->dialog_vbox_new() and ui->frame_new_with_alignment() functions to the plugin API. * src/ui_utils.h, src/utils.h, src/project.c, src/geany.h, src/ui_utils.c: Add ui_table_add_row() for easily adding widgets to a GtkTable, and use it in project_new(). Group 'generic' functions related to GTK+ together at the top of ui_utils.h. Make sure G_GNUC_NULL_TERMINATED is defined in geany.h. 2007-07-12 Enrico Tröger * src/document.c, src/editor.c: Use again the usual, previous way of line scrolling and use SCI_SETXCARETPOLICY for horizontal scrolling. * src/filetypes.c: Add shebang-like detection for PHP files starting with " * src/prefs.c: Make Escape close the 'Grab Key' dialog. * src/keybindings.c, src/tools.c, src/dialogs.c, src/search.c Capitalize some dialog titles. * src/interface.c, src/prefs.c, src/keyfile.c, src/document.c, src/editor.h, geany.glade: Apply patch from Jeff Pohlmeyer to add a preference for whether to use 'smart' home key behaviour (thanks). 2007-07-11 Enrico Tröger * THANKS, configure.in, plugins/Makefile.am, scintilla/Makefile.am, src/Makefile.am, tagmanager/Makefile.am: Apply patch from Shiv to make build system more compatible with other compilers than gcc. * src/document.c, src/editor.c, src/sciwrappers.c, src/sciwrappers.h: Experimental change of scrolling to get horizontal scrolling working. * src/callbacks.c, src/search.c, src/search.h: Also change background colour of search bar when using find next/previous after using the search bar. 2007-07-11 Nick Treleaven * src/highlighting.c: Add custom wordchars and whitespace_chars support for Python & Ruby. Group setting lexer, wordchars, autocompletion height together in apply_filetype_properties(). * src/interface.c, src/prefs.c, geany.glade: Rearrange some of the Prefs dialog: Add Indentation frame on Editor tab, with tab width setting. Add Display tab for visual editor settings. Move Files tab below Editor tab (not needed so often). Add frame for toolbar page. Change some spacing to multiples of 3 (Gnome HIG recommends multiples of 6). Minor reordering of some checkbox groups. Add mnemonic for Keybindings 'Change' button. 2007-07-09 Enrico Tröger * src/filetypes.c, src/filetypes.h: Change name of XML filetype to "XML document". Add sub menus to "Set Filetype" menu. * src/editor.c: Always show calltip for PHP files. * src/keybindings.c, src/keybindings.h, src/prefs.c: Use a TreeView for keybinding list in the preferences dialog and add descriptive sections for better usability. * src/keybindings.c: Use Ctrl-B for Goto matching brace. * src/symbols.c, tagmanager/php.c: Use CTags SVN version of PHP parser. Use only supported symbol types in the symbol view for PHP. * src/treeviews.c: Focus the editor widget after switching between files with the open files list. * src/callbacks.c, src/document.c, src/document.h: Change the background colour of the search bar in the toolbar according to the search result. 2007-07-08 Enrico Tröger * src/dialogs.c: Fix missing descriptive text in message box when closing an unsaved file on Windows. 2007-07-07 Enrico Tröger * src/editor.c: Include new line character(s) when selecting a paragraph. * doc/geany.docbook, src/document.c, src/editor.c, src/editor.h, src/keybindings.c, src/keybindings.h: Add keybinding for Select, Transpose, Cut, Copy and Delete line. * src/keybindings.c: Change default shortcut for Find Next/Previous to Ctrl-G and Ctrl-Shift-G. * src/editor.c, src/geany.h: Use an extra space after comment toggle mark. Also comment blank lines when using toggle comment. Also comment already commented lines when using toggle comment. Fix some selection issues when using toggle comment. 2007-07-07 Nick Treleaven * scintilla/ScintillaGTK.cxx, src/highlighting.c, doc/geany.docbook, data/filetypes.common: Make Scintilla's move to word commands use the word end boundaries when moving to the right (like e.g. GtkEntry). Treat punctuation chars as whitespace. Add filetypes.common setting: whitespace_chars. * src/highlighting.c, data/filetypes.python: Add decorator (and word2) styling for Python. * src/interface.c, src/prefs.c, geany.glade: Move Context Action command to Tools tab, group with Print command. 2007-07-06 Enrico Tröger * doc/geany.docbook, src/editor.c, src/editor.h, src/keybindings.c, src/keybindings.h: Add keybinding for select current paragraph. * doc/geany.docbook, src/callbacks.c, src/dialogs.c, src/document.c: Use the default GTK file save dialog on Windows. Prevent some (probably) unnecessary filename encoding conversions. 2007-07-05 Enrico Tröger * src/search.c: Fix usage of wrong dialog pointer. * src/callbacks.c, src/editor.c, src/editor.h, src/geany.h, src/keybindings.c: Change comment toggle shortcut to Ctrl-E, undefine shortcuts for comment/uncomment. Improve some selection issues when using comment/uncomment. Improve comment toggling by adding an additional character to mark. 2007-07-05 Nick Treleaven * src/main.c, doc/geany.docbook: Add -p, --no-plugins options to disable plugin support. * src/main.c: Capitalize first letter of command-line argument descriptions. 2007-07-04 Enrico Tröger * geany.glade, doc/geany.docbook, src/interface.c, src/keybindings.c, src/keybindings.h: Change Help shortcut to F1, use Ctrl-H for Replace. * src/callbacks.c, src/dialogs.c, src/dialogs.h, src/document.c, src/document.h, src/editor.c, src/project.c, src/search.c, src/utils.c, src/win32.c, src/win32.h: Fix focus problem when using the Find dialog. * src/socket.c: Use a unique mutex name on Windows to be able to load multiple instances like on non-Windows systems. 2007-07-04 Nick Treleaven * src/utils.c, src/utils.h: Add comment for utils_free_pointers() warning not to use it if any pointers may be NULL. * plugins/Makefile.am, plugins/classbuilder.c, src/templates.c, src/interface.c, src/templates.h, src/tools.c, src/tools.h, src/plugindata.h, src/callbacks.c, src/callbacks.h, src/plugins.c, po/POTFILES.in, geany.glade: Make Class Builder into a plugin. Add some function pointers to the plugin API (for the class builder). Don't use G_MODULE_BIND_LAZY when loading plugins otherwise we can potentially get unresolved symbols at runtime, causing a segfault. Capitalize 2 menu item labels. * plugins/classbuilder.c: Make Class Builder dialog close when pressing escape. * src/symbols.c: Create $configdir/tags directory if it doesn't exist when loading global tags. 2007-07-02 Enrico Tröger * src/symbols.c, tagmanager/conf.c: Parse also sections in configuration files. Allow whitespace in keys and section names. * scintilla/makefile.win32, scintilla/KeyWords.cxx, scintilla/LexConf.cxx, scintilla/Makefile.am: Remove unused LexConf.cxx. * scintilla/LexOthers.cxx: Highlight also space separated key value pairs. * src/win32.c: Fix crash when trying to open the Save As dialog on Windows. 2007-06-29 Enrico Tröger * src/dialogs.c: Set also previous colour when setting the colour for the dialog. * tagmanager/c.c, tagmanager/get.c, tagmanager/get.h: Re-add previously removed code to fix broken calltips. Merge some minor bugfixes to C/C++ parser from CTags SVN and remove compiler warning. * src/search.c: Improve many mnemonics in the Search, Find in Files and Replace dialogs. 2007-06-28 Nick Treleaven * src/search.c, src/document.c: Fix hang with Find All/Usage with regex '^' or '$'. Fix replacing '^' or '$' regexes. Use double quotes for search strings. 2007-06-27 Enrico Tröger * src/callbacks.c, src/dialogs.c: Add palette to Colour Chooser Dialog. Fix picking colours starting with '#'. Replace existing selection with chosen colour. * src/callbacks.c, src/document.c, src/document.h, src/sciwrappers.c, src/sciwrappers.h, src/win32.c: Change signature of sci_replace_sel() to take a const gchar*. Move code to insert a colour to document.c Let the code also work on Windows (untested). 2007-06-27 Nick Treleaven * plugins/demoplugin.c, src/plugindata.h, src/plugins.c: Move plugin name and description into a separate struct, which is set by calling the PLUGIN_INFO() macro - this can be read before the plugin is initialized. Added more comments for plugin authors. 2007-06-26 Nick Treleaven * plugins/demoplugin.c, plugins/Makefile.am, configure.in, src/makefile.win32, src/plugindata.h, src/plugins.c, src/main.c, src/plugins.h, src/Makefile.am, win32-config.h, HACKING, Makefile.am, po/POTFILES.in: Added very basic plugin support - any plugins found in $prefix/lib/geany are loaded at startup. Windows support will be added later. Added Demo plugin (currently installed by default), which adds an item in the Tools menu. 2007-06-26 Enrico Tröger * geany.glade, src/document.c, src/editor.h, src/interface.c, src/keyfile.c, src/prefs.c: Add option to set a default encoding when opening files and disable auto detection of the file encoding. * geany.nsi: Change file encoding from ISO-8859-1 to UTF-8. * configure.in, plugins/Makefile.am, scintilla/Makefile.am, src/Makefile.am, tagmanager/Makefile.am: Change label of GTK check in configure.in from PACKAGE to GTK (only cosmetic). 2007-06-25 Enrico Tröger * src/main.c: Use setlocale to enable translation of strings before GLib command line parser gets active. 2007-06-24 Enrico Tröger * geany.nsi: Fix wrong working directory in generated shortcuts. 2007-06-23 Enrico Tröger * tagmanager/basic.c: Merge recent changes from CTags SVN. * geany.glade, src/interface.c: Apply patch from Gabor Kmetyko to improve wording (thanks). 2007-06-22 Enrico Tröger * tagmanager/c.c, tagmanager/get.c, tagmanager/get.h: Use get.c and get.h from CTags SVN. Merged CSharp parser support into from CTags SVN. * data/filetype_extensions.conf, data/filetypes.cs, data/filetypes.freebasic, scintilla/KeyWords.cxx, scintilla/LexBasic.cxx, scintilla/Makefile.am, src/editor.c, scintilla/makefile.win32, src/filetypes.c, src/filetypes.h, src/highlighting.c, src/highlighting.h, src/msgwindow.c, src/templates.c, tagmanager/basic.c, tagmanager/Makefile.am, tagmanager/makefile.win32, tagmanager/parsers.h: Add new filetypes CSharp and FreeBasic. 2007-06-20 Nick Treleaven * src/callbacks.c: Prevent segfault when using Goto Tag from an untitled file. 2007-06-19 Nick Treleaven * HACKING: Added 'About this file' and links for some Windows developer tools. Added notes on adding a source file to src/ and brief notes on adding a filetype. * src/build.c: Hopefully fix gtk_widget_set_sensitive assertion failed warning on Windows. 2007-06-18 Enrico Tröger * scintilla/*, scintilla/include/*: Updated Scintilla to version 1.74. * src/editor.c: Fix mem leak in auto completion and prevent completion of words with trailing spaces. 2007-06-17 Enrico Tröger * src/templates.c, src/tools.c: Apply patch from Alexander Rodin to improve the class builder code(thanks). * Makefile.am, TODO, data/autocomplete.conf, doc/geany.1.in, doc/geany.docbook, src/editor.c, src/editor.h, src/keyfile.c, src/keyfile.h, src/main.c: Add new command line option --ft-names to get a list of supported filetype names. Complete rewrite of auto completion to make it user-definable and much more flexible. 2007-06-15 Frank Lanitz * src/about.c: Update of about dialog. * THANKS: Added Spanish translator Nacho Cabanes. 2007-06-15 Enrico Tröger * geany.glade, src/interface.c, src/tools.c: Fix spelling of GTK. * src/tools.c: Fix bug when reopening the Insert special characters dialog after it was closed by a delete event. Fix creation of class files with an empty name and some code reformatting. * src/utils.c: Fix sanity checks in utils_str_replace(). * src/tools.c: Fix several memleaks. Avoid using broken functions g_strdown() and g_strup(). Only create header and source files if filename is not empty. 2007-06-14 Frank Lanitz * src/tools.c: Fixed a small typo. 2007-06-14 Enrico Tröger * src/callbacks.c: Avoid creation of unwanted undo action when opening a saved-as file in a new tab. 2007-06-14 Nick Treleaven * src/templates.c, src/interface.c, src/templates.h, src/tools.c, src/tools.h, src/callbacks.c, src/callbacks.h, geany.glade, THANKS: Apply class builder patch from Alexander Rodin (thanks). 2007-06-13 Nick Treleaven * src/build.c, src/utils.c: Use g_io_channel_win32_new_fd() as recommended in GLib docs for utils_set_up_io_channel() on Windows. (Unlikely to change behaviour though). * src/callbacks.c: Fix segfault when attempting to rename a new file from the Save As dialog. 2007-06-12 Enrico Tröger * src/callbacks.c, src/dialogs.c: Add "Open file in a new tab" and "Rename file" to the "Save as" dialog for more control over saved file. 2007-06-12 Nick Treleaven * src/interface.c, src/sciwrappers.c, src/sciwrappers.h, src/prefs.c, src/callbacks.c, src/callbacks.h, src/keyfile.c, src/document.c, src/document.h, src/main.c, src/editor.c, src/editor.h, src/ui_utils.c, geany.glade: Rename some menubar widget names. Use indentation spelling in variable names. 2007-06-11 Enrico Tröger * geany.glade, src/callbacks.c, src/callbacks.h, src/document.c, src/geany.h, src/interface.c, src/keyfile.c, src/main.c, src/prefs.c, src/vte.c: Add auto focus (to auto focus widgets below mouse cursor). 2007-06-10 Enrico Tröger * src/treeviews.c: Prevent double jump to line when clicking on a symbol list item. * src/build.c: Hide Next Error menu item and unnecessary separator from build menu on Windows. * src/callbacks.c: Fix broken help menu item on Windows. * src/utils.c: Add additional directory separator to generated READMEs. 2007-06-09 Enrico Tröger * THANKS, src/document.c: Apply patch from François Cami and Guillaume Duviol to improve replacement of tabs by spaces (thank you). * src/templates.c: Change PHP short open tag to the full open tag. * src/document.c: Prevent hang if searching for a regular expression fails (closes #1733676). 2007-06-08 Frank Lanitz * THANKS, src/about.c: Added new translator Adrovane Marques Kade. 2007-06-04 Enrico Tröger * src/main.c: Add rpl_malloc() for better compatibility with non-GNU systems (thanks to Harri Koskinen for reporting). * po/POTFILES.in: Add navqueue.c. * po/intl_stats.sh: Add revision time to the output. * src/callbacks.c, src/callbacks.h: Remove unneeded functions destroyapp and on_window_configure_event. * src/keyfile.c, src/main.c: Re-maximize the main window on startup when closed in maximized state (closes #1730369). * src/geany.h, src/keyfile.c, src/main.c: Improve code to avoid hiding the messages window (caused by last commit). * tagmanager/sort.c, tagmanager/tm_workspace.c: Replace malloc() by g_malloc(). 2007-06-03 Enrico Tröger * doc/geany.docbook, src/keybindings.c, src/keybindings.h: Add keybindings for forward/back code navigation. * src/navqueue.c, src/navqueue.h: Add Id SVN keyword and short file description. 2007-06-02 Enrico Tröger * geany.glade, src/callbacks.c, src/callbacks.h, src/geany.h, src/interface.c, src/keyfile.c, src/main.c, src/Makefile.am, src/navqueue.h, src/navqueue.c, src/prefs.c, src/ui_utils.c: Apply patch from Dave Moore to add simple code navigation (thank you). 2007-05-31 Enrico Tröger * src/templates.c: Add Haskell to make_comment_block(). 2007-05-29 Nick Treleaven * src/build.c, src/utils.c, src/utils.h, src/keybindings.c, src/prefs.c, src/geany.h, src/callbacks.c, src/keyfile.c, src/document.c, src/main.c, src/editor.c, src/editor.h, src/ui_utils.c: Move MyApp::pref_editor_* to editor.h, using editor_prefs struct. Move INDENT_* enums to editor.h. Move utils_get_whitespace() to editor.c. 2007-05-29 Enrico Tröger * doc/geany.docbook: Remove app_small entity. Add description for global configuration file. 2007-05-28 Nick Treleaven * src/project.c, src/document.c, src/ui_utils.c: Show current project name in window title. * configure.in, src/Makefile.am: Force debug mode for a SVN working copy. * src/highlighting.c, src/keybindings.c, src/makefile.win32, src/callbacks.c, src/sci_cb.c, src/sci_cb.h, src/search.c, src/document.c, src/main.c, src/editor.c, src/Makefile.am, src/editor.h, po/POTFILES.in: Rename sci_cb.[hc] editor.[hc]. 2007-05-26 Nick Treleaven * src/treeviews.c, src/filetypes.c, src/filetypes.h, src/document.c: Replace filetype::has_tags member with filetype_has_tags(). * HACKING: Add note about Adding a TagManager parser. 2007-05-26 Enrico Tröger * src/filetypes.c: Ignore case of filename extensions on Windows. * src/ui_utils.c: Add missing header file. * src/keyfile.c: Use current locale as default encoding for new files. Don't keep comments in configuration file to work around a bug in newer GLib versions. If config file doesn't exist, try to load a global one from $prefix/share/geany/. * src/utils.c: Don't create an empty geany.conf as write test, use access() instead. 2007-05-25 Enrico Tröger * data/filetype_extensions.conf, src/filetypes.c, tagmanager/sh.c: Add *.ash and *.bash as filetype entensions for filetype SH. Add ash and wish to the shebang patterns. * geany.glade, src/callbacks.c, src/callbacks.h, src/geany.h, src/interface.c, src/main.c, src/ui_utils.c: Improve sensitivity of recent files sub menus. * src/filetypes.c: Add shebang-like detection for XML files. 2007-05-25 Nick Treleaven * doc/geany.docbook: Comment out stopping make process. Remove note about editing build commands manually. * src/build.c, doc/geany.docbook: Add support for %e, %f in project run command. * src/about.c: Show SVN revision as '>=' because 'svn up' may not have caused a re-run of configure. Show build date as 'on or after' compilation of about.o. 2007-05-24 Nick Treleaven * src/utils.h: Add setptr() macro to free data and reassign to the same pointer. * src/build.c: Use get_build_executable() in prepare_run_script(). 2007-05-24 Enrico Tröger * src/document.c: Fix loading of UTF-16/32 encoded files with a BOM. 2007-05-23 Enrico Tröger * src/vte.c: Add popup menu item: Change current working directory. * geany.glade, src/dialogs.c, src/geany.h, src/interface.c, src/keyfile.c, src/main.c, src/prefs.c: Add default startup directory option (closes #1704988). * tagmanager/ruby.c, tagmanager/strlist.c, tagmanager/strlist.h: Backport changes from CTags SVN to fix parse problems in the Ruby parser. * data/filetype_extensions.conf, src/filetypes.c: Add filetype extension "*.ruby". * scintilla/ScintillaGTK.cxx: Fix wrong target list for PRIMARY clipboard. 2007-05-23 Nick Treleaven * src/filetypes.c, src/symbols.c, tagmanager/parsers.h, tagmanager/makefile.win32, tagmanager/haskell.c, tagmanager/Makefile.am: Add Haskell tags support from CTags patch on sf.net written by Peter Strand (thanks). * src/symbols.c: Use tag_list_add_groups() in init_tag_list(). 2007-05-22 Nick Treleaven * tagmanager/read.c, tagmanager/read.h, tagmanager/get.h: Move C-only isident(), isident1() functions to get.h. 2007-05-21 Enrico Tröger * NEWS, geany_private.rc, win32-config.h, doc/geany.1.in, doc/geany.docbook, doc/geany.txt, doc/images/*, doc/html/*: Updated for Geany 0.11. * New release: Geany 0.11 "Bandor". * configure.in, geany.nsi, geany_private.rc, win32-config.h, src/geany.h: Post-release version bump. 2007-05-16 Enrico Tröger * THANKS, src/about.c, po/LINGUAS, po/bg.po: Added Bulgarian translation (Thanks to Dilyan Rusev). 2007-05-16 Nick Treleaven * src/highlighting.c: Fix bug when loading custom filetypes.common styles. * src/sci_cb.c: Add workaround for PHP/TCL closing brace de-indenting. 2007-05-15 Nick Treleaven * src/highlighting.c, data/filetypes.common: Show fold line by default (so it's clearer there are hidden lines). 2007-05-15 Enrico Tröger * scintilla/ScintillaGTK.cxx: Fixed wrong clipboard target (closes #1711483). * doc/geany.docbook, src/callbacks.c: Hide notebooks tabs instead of sidebar when toggling additional widgets. * doc/geany.docbook, src/about.c, src/build.c, src/dialogs.c, src/keybindings.c, src/project.c, src/symbols.c, src/tools.c, src/ui_utils.c: Added many widget names to different dialogs for use with custom styles. Menu items still don't work. * data/filetypes.common, doc/geany.docbook, src/highlighting.c: Applied patch from Michal Kurgan to disable separately use of global white space foreground and background colours (thanks). 2007-05-14 Nick Treleaven * src/filetypes.c, src/filetypes.h: Add some menu separators to group filetype menu items. Reorder Haskell, O-Matrix, VHDL filetypes. * src/document.c: Fix removing indent spaces after switching back to tab indenting. * scintilla/LexHTML.cxx: Hopefully fix #1718532 - 'Crashes when open a special file'; backported from Scintilla 1.73. 2007-05-12 Nick Treleaven * tagmanager/sql.c: Fix #1717418, Hang on SQL file load. 2007-05-11 Nick Treleaven * src/utils.c, src/utils.h, src/search.c: Move search_get_file_list() to utils.c. * src/highlighting.c, src/highlighting.h, src/symbols.c: Load global tag files stored in ~/.geany/tags when needed. * doc/geany.docbook: Update docs for loading user tags at startup. * doc/geany.docbook: Rename 'confdialog' to 'prefs'. Move compile time options section into an appendix (most users shouldn't change these options). * src/highlighting.c: Prevent double loading of common styles when filetype none is used before other filetypes. Replace init_styles() with direct initialization of style_sets. * src/ui_utils.h, src/project.c, src/search.c, src/ui_utils.c: Use open folder dialog for project base path instead of create folder dialog (better for choosing existing directories, and can still create new folders). Add optional title parameter for open dialog with ui_path_box_new() and ui_setup_open_button_callback(). Use Windows folder dialog in ui_path_box_open_clicked(). * src/utils.c: Wrap notebook pages when switching tabs. * src/utils.c: Fix bug when directory doesn't exist in utils_get_file_list(). 2007-05-10 Nick Treleaven * data/global.tags: Update C global tags for GTK+ 2.10 and it's dependencies. 2007-05-09 Nick Treleaven * src/document.c: Make backspace unindent when using spaces for indentation. 2007-05-08 Nick Treleaven * src/sci_cb.c: Fix auto-indentation when the filetype is not set. 2007-05-08 Enrico Tröger * src/sciwrappers.c, src/sciwrappers.h: Added sci_get_line_indentation() and sci_set_line_indentation(). * src/callbacks.c: Fixed broken increase/decrease indentation when using only spaces for indentation. 2007-05-07 Enrico Tröger * data/filetypes.haskell: Added build instructions. * geany.nsi: Prevent installation in a directory without proper write permissions under Windows. Display an error message instead. 2007-05-06 Enrico Tröger * data/filetypes.haskell, scintilla/KeyWords.cxx, scintilla/LexHaskell.cxx, scintilla/Makefile.am, scintilla/makefile.win32, src/filetypes.c, src/filetypes.h, src/highlighting.c, src/highlighting.h, src/sci_cb.c, THANKS: Added new filetype Haskell (patch by Guillaume Hoffmann, thanks). * geany.glade, doc/geany.docbook, src/callbacks.c, src/callbacks.h, src/interface.c, src/keybindings.c, src/keybindings.h: Added menu item to hide or show all additional widgets and renamed keybinding to menu_toggleall. 2007-05-05 Nick Treleaven * src/keybindings.c: Make marker and matching brace keybindings global. (Also indent some case statement bodies). * src/sci_cb.c: Add brace indenting support for Perl and TCL. 2007-05-05 Enrico Tröger * doc/geany.docbook: Applied patch from John Gabriele which adds some text to the preferences section, thanks. 2007-05-04 Enrico Tröger * doc/geany.docbook, src/main.c, src/prefs.c: Set widget names for the main widgets to allow users to define custom styles in .gtkrc-2.0. * doc/geany.docbook, src/keybindings.c, src/keybindings.h, src/prefs.c, src/ui_utils.c, src/ui_utils.h: Added keybinding to show and hide all additional widgets(statusbar, toolbar, sidebar and messages window). 2007-05-03 Nick Treleaven * src/keybindings.c, src/keybindings.h: Add keybinding to show project properties dialog. * src/keybindings.c: Merge file menu keybinding callbacks into cb_func_file_action(). 2007-05-02 Frank Lanitz * THANKS, src/about.c: Update of e-mail of Jean-Philippe Moal. 2007-05-01 Nick Treleaven * geany.gladep: Don't regenerate the support.[hc] files, to prevent unnecessary rebuilding of files dependent on support.h. * src/project.c: Hide the unused File Patterns field in the project properties dialog. * src/build.c, src/project.c: Allow run for any file (with a path) when a valid project run command is set. * src/project.c: Allow a blank project base path to use the default Make All command. Update the 'project already open' & 'base path not found' dialogs. 2007-04-30 Nick Treleaven * src/symbols.c: Use g_printerr (if necessary) when generating global tags to convert UTF-8 automatically; mark error messages for translation. * src/search.c: Allow replacing identical text if case sensitive is not checked. * src/document.c: Fix reloading of read-only documents. * src/document.c: Make replace all commands report no matches for read-only documents. * src/search.c: Switch to status window when using Replace In Session to show which documents had replacements made. * src/search.c: Show number of matches when using Mark command. * src/utils.h: Add NZV() macro for checking a char* points to a non-empty string. * src/build.c: Disable the Build Includes run command field when there is a project open with a valid run command set. 2007-04-29 Nick Treleaven * src/interface.c, geany.glade: Rename 'tabulators' 'tabs'. * src/ui_utils.h, src/search.c, src/ui_utils.c: Add ui_path_box_new() for creating a path text entry with an open button, which runs a file chooser to set the text entry. Add ui_setup_open_button_callback() for setting up a button callback that behaves like the open button in ui_path_box_new(). Use ui_path_box_new() in FIF dialog setup. * src/interface.c, src/project.c, src/project.h, src/prefs.c, geany.glade: Add project file path preferences option in General tab. 2007-04-29 Enrico Tröger * src/geany.h: Changed default browser to firefox. 2007-04-26 Nick Treleaven * tagmanager/tm_source_file.c, tagmanager/include/tm_source_file.h: Add tm_source_file_get_lang_name() as a wrapper for getLanguageName() in parse.c. * src/main.c, src/symbols.c, tagmanager/tm_workspace.c, tagmanager/include/tm_workspace.h: Add support for generating global tags files for non-C-like filetypes. * doc/geany.docbook: Update Global Tags section now all filetypes can be generated. Comment out 'should be written' from Preferences section. * doc/geany.docbook: Add Project Management section. 2007-04-25 Nick Treleaven * src/filetypes.c, src/filetypes.h, src/main.c: Separate filetype menu item creation from filetypes_init_types() so it can be called without initializing GTK (for non-GUI commands). 2007-04-24 Nick Treleaven * src/search.c: Disable FIF extra options entry when checkbox is not checked. * src/sci_cb.c: Remove duplicate calltips (e.g. from function def and prototype). 2007-04-23 Nick Treleaven * src/build.c: When linking (or using Make Custom), remove error indicators in all documents (should fix #1705374). * src/symbols.c: Sort symbol list tags also by line number (fixes #1703575). * src/utils.c, src/utils.h: Add G_GNUC_NULL_TERMINATED to ensure variable arglists are NULL terminated (for GLib >= 2.8). 2007-04-21 Nick Treleaven * src/project.c, src/project.h, src/keyfile.c, src/main.c: Restore the current project when restarting Geany. * src/project.c: Fix no response with Project dialogs when the user enters invalid information (oops). 2007-04-20 Nick Treleaven * doc/geany.docbook: Update generating global tags section. * src/keyfile.c: Move save_recent_files(), save_session_files() code out of configuration_save(). Move load_file_lists() code out of configuration_load(). 2007-04-19 Enrico Tröger * doc/geany.docbook, src/vte.c: Fixed handling of command line arguments within the shell command for the VTE to enable use of shells as login shells. 2007-04-18 Nick Treleaven * doc/geany.docbook: Update Search section: escape sequences, Find All, Mark, Replace All. * src/filetypes.c, src/filetypes.h, src/document.c: Split filetypes_get_from_filename() into filetypes_detect_from_file() and filetypes_detect_from_filename(). * tagmanager/tm_tag.c: Use the usual TM parser for all langTypes except pascal, php, latex when loading global tags files. * tagmanager/tm_workspace.c: Keep tag names with different argument lists when loading global tags. Prevent segfault if using tm_workspace_find_scoped() with global tags. * src/interface.c, src/callbacks.c, src/callbacks.h, src/symbols.c, src/symbols.h, geany.glade: Add Load Tags command in the File menu. 2007-04-16 Enrico Tröger * src/build.c, src/dialogs.c, src/document.c, src/utils.c: Use g_stat() instead of stat() to prevent file read errors on Win32. Prevent unnecessary filename encoding conversions on Win32. 2007-04-16 Nick Treleaven * src/filetypes.c: Remove wrong UTF-8 conversion in filetypes_get_from_filename(). 2007-04-15 Enrico Tröger * geany.glade, data/filetypes.*, doc/geany.docbook, src/callbacks.c, src/callbacks.h, src/filetypes.c, src/filetypes.h, src/geany.h, src/interface.c, src/keybindings.c, src/keybindings.h, src/keyfile.c, src/main.c, src/prefs.c: Added context actions to run custom commands on current selection or the current word below cursor. * src/document.c, src/keyfile.c: Run print command asynchronously to prevent blocking of the main process (closes #1695786). 2007-04-15 Nick Treleaven * src/sci_cb.c: Prevent D module tag lookup for D constructor calltips. * tagmanager/tm_workspace.c: Allow overloaded argument lists in global tag files. * tagmanager/tm_workspace.c: Add tm_tag_function_t tags in global tags files, so that inline C++ methods (and D functions) get parsed. * src/keyfile.c, src/search.c, src/search.h: Save FIF extra options string in the keyfile. * src/search.c: Move 'Recurse in subfolders' FIF option below the others. Add tooltip for extra options entry. 2007-04-13 Enrico Tröger * src/sci_cb.c: Fixed missing calltip display when using a space after a symbol name (thanks to Anh Phạm for reporting). 2007-04-13 Nick Treleaven * src/sci_cb.c, tagmanager/tm_tag.c, tagmanager/tm_workspace.c: Show up and down arrows when there are multiple calltip matches. 2007-04-10 Enrico Tröger * geany.glade, src/document.c, src/geany.h, src/interface.c, src/keyfile.c, src/main.c, src/prefs.c, src/ui_utils.c: Added options to show or hide the statusbar as well as the editor scrollbars. * src/sciwrappers.c, src/sciwrappers.h: Added sci_set_scrollbar_mode() to easily show or hide the scrollbars. 2007-04-08 Enrico Tröger * configure.in, Makefile.am, doc/Makefile.am, scintilla/Makefile.am, src/Makefile.am, tagmanager/Makefile.am: Made "distcheck" working. 2007-04-06 Nick Treleaven * src/sci_cb.c: Only insert a space if construct completion occurs, to prevent unusual undo history. * doc/geany.docbook: Add Construct completion in the Editing section. Add Tags section, including how to generate a replacement global.tags file. 2007-04-05 Nick Treleaven * tagmanager/tm_workspace.c: Write tm_tag_enumerator_t and tm_tag_macro_t (e.g. for GTK_STOCK_*) tags when creating a global tags file, and store the pointerOrder. * doc/geany.docbook: Add filtering out version control files with Extra options info to Find in Files section. * src/keybindings.c: Only construct-complete when the editor widget has focus. * src/symbols.c, tagmanager/tm_workspace.c: Make \" filename quoting optional when creating a global tags file (quoting is useful if glob matching is needed). Run geany -g for example usage. 2007-04-03 Nick Treleaven * src/search.c: Add recursive option to Find in Files dialog. * src/search.c: Add 'Extra options' field and checkbox to FIF dialog. Don't allow arguments appended to Grep command. Prevent warning when using relative paths with open directory button. Refactor FIF options code into get_grep_options(), remove fif_options, fif_match_type. 2007-03-31 Nick Treleaven * src/templates.c, doc/geany.docbook: Make file header optional for filetype templates - use the string '{fileheader}' to mark where the file header should be placed, which can be anywhere in the filetype template. 2007-03-30 Nick Treleaven * geany.desktop.in: Added MimeTypes: C++ header, Pascal, Perl, Python, httpd-PHP, XML; thanks to Iñaki Rodriguez. * src/search.c: Prevent Find in Files directory combo being vertically stretched. 2007-03-30 Enrico Tröger * src/sci_cb.c: Fixed warning about shadowing a local variable. * doc_geany.docbook, src/keybindings.c, src/keybindings.h: Add keybinding for switching to the search bar (as suggested by Nikolas Arend). 2007-03-29 Nick Treleaven * src/sci_cb.c: Check size of construct completion buffer, remove unneeded static in sci_cb_auto_forif(). Reorder some of sci_cb_close_block(). * src/keybindings.c, src/keybindings.h: Add headings for the Keyboard Shortcuts dialog to group related commands. Shorten the 'Send to custom command' labels slightly. 2007-03-28 Nick Treleaven * src/sci_cb.c: Don't auto-indent {} braces for filetypes that don't use them. Add lexer_has_braces(), do_indent() for in place buffer indentation. Rewrite some of get_indent(). 2007-03-27 Nick Treleaven * src/keybindings.c, src/keybindings.h, src/sci_cb.c, src/sci_cb.h, doc/geany.docbook: Add keybinding for construct completion, and set the default to tab. Separate complete_constructs() code from sci_cb_auto_forif(). 2007-03-26 Nick Treleaven * src/keybindings.c, TODO: Change comment/uncomment keybinding to Ctrl-G/Ctrl-Shift-G. Change duplicate KB to Ctrl-D (Scintilla default). Change goto line KB to Ctrl-J (so Ctrl-L line cut Sci KB works). Remove default goto matching brace KB (doesn't work on all keyboards). * src/sci_cb.c, src/symbols.c, src/symbols.h: Load HTML-entities when the PHP lexer is first needed, instead of when typing outside of PHP styles. * src/sci_cb.c: Separate on_margin_click(), on_update_ui(), on_char_added() Scintilla notifications. 2007-03-25 Enrico Tröger * doc/geany.docbook, src/keybindings.c, src/keybindings.h, src/sci_cb.c, src/sci_cb.h, src/utils.c, src/utils.h: Use Ctrl+Shift+Space always for showing calltips because Alt+Space is used often by window managers (not only under Windows). Added keybinding for inserting alternative whitespace characters. 2007-03-24 Nick Treleaven * src/sci_cb.c, src/symbols.c: Fix segfault when pressing ctrl-enter when there are no workspace tags (thanks to R8Rooy for reporting). * src/build.c, src/build.h, src/dialogs.c, src/dialogs.h, src/callbacks.c, src/callbacks.h: Move dialogs_show_includes_arguments_*() to build.c. Move on_includes_arguments_*dialog_response() to build.c. Make several build functions static. * src/keybindings.c: Ignore Caps Lock in keybindings_got_event() (could cause problems with e.g. Shift-F9). * src/search.c: Don't beep when pressing escape to close the Find or Replace dialogs. 2007-03-23 Nick Treleaven * src/dialogs.c: Add Edit button to Keyboard Shortcuts dialog. * src/keybindings.c, src/keybindings.h, src/dialogs.c, src/dialogs.h, src/callbacks.c: Move dialogs_show_keyboard_shortcuts() to keybindings.c. * src/keybindings.c, src/prefs.c, src/prefs.h, src/callbacks.c, src/vte.c: Rename dialogs_show_prefs_dialog() to prefs_show_dialog(). 2007-03-22 Enrico Tröger * THANKS, doc/geany.docbook, src/keybindings.c, src/keybindings.h, src/sci_cb.c, src/sci_cb.h: Applied patch from Anh Phạm to add a keybinding for selecting the current word under the cursor (thanks). 2007-03-21 Nick Treleaven * src/project.c: Made all project dialogs modal. * src/main.c, src/symbols.c, src/symbols.h, tagmanager/tm_workspace.c: Add option --generate-tags (-g) to generate a global tags file from a list of source files. Currently this is only likely to work correctly for C source files. Run 'geany -g' for syntax info. Remove short option for hidden option --generate-data-files. Update tm_workspace_create_global_tags() from Anjuta 1.2.4a. * tagmanager/tm_tag.c, tagmanager/include/tm_tag.h Separate alternative PHP/LaTeX global tags parser into tm_tag_init_from_file_alt() (for easier diff with Anjuta). 2007-03-20 Enrico Tröger * data/filetypes.common, doc/geany.docbook, src/highlighting.c: Added option to change the caret width. 2007-03-15 Nick Treleaven * src/keybindings.c, src/keybindings.h, src/sciwrappers.c, src/sciwrappers.h: Add Goto Previous/Next Marker keybindings (Ctrl-, and Ctrl-.). Make sci_marker_next() and sci_marker_previous() return marker line number. * src/keybindings.c, src/keybindings.h, src/sciwrappers.c, src/sci_cb.c: Add Toggle Marker keybinding (Ctrl-M). * THANKS, doc/geany.docbook: Add bookmarks section written by John Gabriele (thanks). Group some subsections into an 'Editing' section. 2007-03-14 Nick Treleaven * src/callbacks.c: Delay updating interface items when switching notebook tabs until after the page has changed, so it appears to switch pages faster. * src/treeviews.c, src/notebook.c: Don't recreate the open files items when DnD reordering tabs, now that the open files treeview is sorted alphabetically. * src/project.c: Make suggested New Project filename use the projects/ directory as parent directory, instead of projects/name/. 2007-03-13 Enrico Tröger * src/highlighting.c: Fixed wrong margin colours for filetype All/None. * src/highlighting.c: Init the default styles before first usage. 2007-03-13 Nick Treleaven * src/ui_utils.c: Use tab stops for status bar line, column and selection data to stop the other fields being moved so often when browsing code or typing. Rearrange status bar statistics to be clearer/more concise. * src/document.c: Count total replacements made when replacing in a rectangular selection. * src/keybindings.c, src/keybindings.h, src/callbacks.c, src/callbacks.h, doc/geany.docbook: Add 'Switch to last used document' keybinding. 2007-03-12 Enrico Tröger * doc/geany.docbook: Added description for disable-server command line option for Xfce Terminal. * src/project.c: Added missing whitespace (found by Frank). 2007-03-12 Nick Treleaven * src/build.c: Switch to Compiler window when using Next Error command. * src/utils.c, src/document.c: Update the status bar after setting the document file type, if it has changed. Update the status bar after colourising open files, so the current tag is accurate. 2007-03-10 Nick Treleaven * src/project.c: Separate New Project dialog from Project Properties dialog. Make Properties Filename field read-only, below Name field. Capitalize dialog titles. * src/utils.c, src/utils.h, src/project.c: Make New Project dialog create parent directories of the chosen base path if necessary. Prevent warnings when setting open dialog directory to a path whose parent directory doesn't exist. Add create_parent_dirs argument for utils_mkdir(). 2007-03-09 Enrico Tröger * src/callbacks.c, src/encodings.c, src/encodings.h, highlighting.c, src/msgwindow.c, src/notebook.c, src/project.c, src/sci_cb.c, src/search.c, src/tools.c, src/ui_utils.c, src/utils.c: Fixed several compiler warnings (mainly shadowing local variables and unreachable code). * src/sci_cb.c: Auto completion of multi line comments is now (again) configurable with the auto complete constructs option. * src/highlighting.c: Set default highlighting style for filetype None to get it also inverted if invert_all is set. Reset all previously defined styles when switching filetype to None. * data/filetypes.common, doc/geany.docbook, src/highlighting.c: Added style "default" to filetypes.common to be able to change the default style for files without a filetype set. 2007-03-09 Nick Treleaven * src/interface.c, doc/geany.docbook, data/filetypes.*, geany.glade: Fix indentation spelling. 2007-03-08 Nick Treleaven * src/document.c: Fix not setting existing project typenames for C-like files if they don't contain typenames themselves (bug introduced in r1323). * doc/geany.docbook: Updated Templates section for filetype templates and added some subsection titles. 2007-03-08 Enrico Tröger * geany.glade, src/interface.c: Fixed wrong tooltip. * geany.glade, doc/geany.docbook, src/document.c, src/document.h, src/geany.h, src/interface.c, src/keyfile.c, src/main.c, src/prefs.c, src/sci_cb.c, src/ui_utils.c: Added different auto indention modes to select how should Geany indent new lines (closes #1615605). 2007-03-06 Nick Treleaven * src/win32.c, src/callbacks.c, src/keyfile.c, src/document.c, src/document.h, src/main.c, src/socket.c: Speed up loading multiple C-like files when existing documents are open (by ensuring documents are only colourised once). Add document_open_files(), document_colourise_new(). Add some missing function parameter names to document.h. 2007-03-05 Enrico Tröger * doc/geany.docbook: Added single line comment examples for clarification. 2007-03-05 Nick Treleaven * src/build.c, src/project.c, src/project.h: Add project run command support. Run command is a custom command-line and can include arguments. Make 'Choose project filename' dialog use a Save button. 2007-03-03 Nick Treleaven * src/build.c: Moved all code for checking and creating the geany run script temporary file from build_run_cmd() to prepare_run_script(). * src/build.c, src/utils.c: Fix memory leak with utils_remove_ext_from_filename(). * src/build.c: Fix memory leak, remove unused build_create_shellscript() argument. * src/build.c: Use UTF-8 for missing executable error message. 2007-03-02 Enrico Tröger * src/win32.c: Added new file filter for Open File dialog to only show supported source files (for native Win32 dialog). * src/main.c: Changed location of translation files to lib\locale on Win32. * geany.nsi: Added NSIS installer script for the Win32 installer. * data/filetypes.c, data/filetypes.cpp, src/highlighting.c: Added support for secondary keywords for filetypes C and C++. * doc/geany.docbook: Fixed typo (thanks to John Gabriele). 2007-03-01 Nick Treleaven * src/build.c, src/project.c, src/project.h: Run Make All and Make Custom from the project base directory, if set. Add project_get_make_dir(). 2007-03-01 Enrico Tröger * src/tools.c, src/utils.c: Applied patch from Jeff Pohlmeyer to improve the custom command execution code(thanks). * src/sciwrappers.c, src/sciwrappers.h: Added sci_get_selection_mode(), sci_set_selection_mode(), sci_get_pos_at_line_sel_start(), sci_get_pos_at_line_sel_end(). * src/document.c: Improved replacing in rectangle selections (closes #1665571). * src/build.c, src/tools.c, src/utils.c, src/utils.h: Set IO channels for custom commands to blocking mode (thanks to Jeff Pohlmeyer). * data/filetypes.python, src/highlighting.c: Added missing keywords: as, with, False, None and True. * src/dialogs.c, src/filetypes.c, src/filetypes.h: Added new file filter for Open File dialog to only show supported source files (list of all defined filename extensions). 2007-02-28 Nick Treleaven * src/msgwindow.c, src/msgwindow.h, src/search.c: Show number of matches when using Find All or Find in Files. Add msgwin_msg_add_fmt(). * src/build.c: Make build_spawn_cmd() take a command string instead of joining an array of strings. 2007-02-27 Nick Treleaven * src/filetypes.c: Use utils_strv_new() for all filetype patterns. 2007-02-26 Enrico Tröger * src/tools.c: Fixed wrong sensitiveness of custom commands menu items. * configure.in, THANKS: Applied patch from Slava Semushin to improve SVN checks (thank you). 2007-02-25 Enrico Tröger * geany.glade, doc/geany.docbook, src/geany.h, src/interface.c, src/keybindings.c, src/keybindings.h, src/keyfile.c, src/main.c, src/tools.c, src/tools.h: Added custom commands to send selected text through some definable commands and replace the selection with the output. * data/filetype_extensions.conf, src/filetypes.c: Added *.pod to Perl file patterns. * src/sci_cb.c: Auto complete multi line comments only when auto completion of constructs is enabled. 2007-02-25 Nick Treleaven * src/build.c: Prevent undefined behaviour when using the Stop command that can kill X when Geany is run from the KDE or Xfce menu (not from a terminal). Should close #1668017. 2007-02-24 Enrico Tröger * configure.in, Makefile.am, README.I18N, po/intl_stats.sh, po/LINGUAS: Moved list of available translations to new file po/LINGUAS. Added readme file for translation information. Added little shell script intl_stats.sh to display some basic translation statistics. 2007-02-24 Nick Treleaven * src/*.c: Add descriptions for all .c source files below the file header. 2007-02-23 Nick Treleaven * src/keyfile.c, src/document.c, src/document.h, src/main.c: Speed up loading multiple C-like files when restoring session or loading command-line files at startup by ensuring documents are only colourised once. Also prevent re-colourising C-like documents after saving a file unless the list of typenames has changed. Add document_delay_colourise(), document_colourise_all(). * src/dialogs.c, src/document.c, src/document.h: Fixed switching to the wrong tab when showing the unsaved dialog. * src/templates.c: Don't include filetype.none in the new file template menus. 2007-02-20 Enrico Tröger * src/sci_cb.c, src/sci_cb.h: Made auto_close_bracket() static and auto close brackets only when auto completion of constructs is enabled (closes #1665015). * doc/geany.1.in: Fixed typo. * geany.glade, src/interface.c: Improved tooltip for auto completion. 2007-02-20 Nick Treleaven * src/document.c: Remove the yellow error line marker also when using 'Remove Error Indicators'. 2007-02-19 Enrico Tröger * src/search.c: Fixed compiler warning. * src/project.c, src/win32.c, src/win32.h: Added Windows dialogs for Project new and Project open actions. Fixed some mem leaks in the Windows code. 2007-02-19 Nick Treleaven * src/templates.c, src/templates.h, src/highlighting.c, src/callbacks.c, src/callbacks.h, src/filetypes.c, src/main.c: Support filetype templates for all filetypes (scan ~/.geany/templates/filetype.* at startup). Default filetype templates are now created in init_ft_templates(). Move on_new_with_template() to templates.c. Move on_filetype_change() to filetypes.c. 2007-02-18 Enrico Tröger * data/filetypes.ruby, src/highlighting.c: Added several missing style types for filetype Ruby. * doc/geany.docbook: Added notice about contributing to the docs (patch from John Gabriele, thanks). 2007-02-17 Nick Treleaven * src/ui_utils.c: Scroll Compiler and Messages window in view when using Next Error or Next Message. * src/search.c: Add Mark button as a Find All option in the Find dialog. * src/interface.c, src/callbacks.c, src/callbacks.h, src/document.c, geany.glade: Add Remove Markers item to the Document menu. Remove Error Indicators no longer removes current tag marker. 2007-02-16 Nick Treleaven * src/sciwrappers.c, src/sciwrappers.h, src/sci_cb.c, src/document.c: Rename sci_get_line_end_from_position() with line argument, not position. Don't autocomplete for/if constructs when editing an existing line. * src/document.c: Set single undo action when using document_strip_trailing_spaces(). * src/search.c: Show grep command and directory when using Find in Files. 2007-02-15 Enrico Tröger * data/filetypes.perl, src/highlighting.c: Added several missing style types for filetype Perl (thanks to John Gabriele for reporting). * src/treeviews.c: Aligned "No symbols found" label to top. * src/callbacks.c, src/document.c, src/document.h, src/keybindings.c, src/main.c, src/socket.c: Added possibility to create and open non-existent files from command line (closes #1635094 and #1652917). 2007-02-14 Frank Lanitz * geany.glade, src/interface.c: Fixed a typo. 2007-02-14 Nick Treleaven * geany.desktop.in: Add MimeType text/x-diff. * scintilla/ScintillaGTK.cxx: Redraw instead of scrolling in ScintillaGTK::ScrollText if there is an existing update region. Revert earlier ScintillaGTK::ExposeTextThis change. * tagmanager/c.c: Fix wrong D function return type after a class definition. 2007-02-13 Nick Treleaven * src/treeviews.c: Allow popup Symbols menu when the current document has no tags, so the sidebar can be hidden. Use a GtkLabel to display 'No tags found'. 2007-02-12 Enrico Tröger * src/main.c: Convert config, application and documentation dir paths to locale encoding before using it. 2007-02-08 Nick Treleaven * src/utils.c, src/utils.h, src/filetypes.c, data/filetype_extensions.conf: Add *.rej as a Diff filename pattern. Add utils_strv_new() to duplicate a va_list of strings. 2007-02-07 Frank Lanitz * data/pascal.tags, THANKS: Fixed a wrong autocompletion. Thanks to Dirk Weber for reporting. 2007-02-06 Nick Treleaven * src/symbols.c: Fix missing global tags for C files when a C++ source file was loaded first. 2007-02-05 Nick Treleaven * src/treeviews.c: Prevent right click in Symbol list from selecting a tag. * src/ui_utils.h, src/treeviews.c, src/callbacks.c, src/treeviews.h, src/document.c, src/main.c, src/ui_utils.c: Move ui_update_tag_list() to treeviews.c. Make treeviews_prepare_taglist() static. 2007-02-03 Nick Treleaven * src/document.c: Prevent scroll bar from moving when using document_find_text() and no match is found. * tagmanager/c.c: Make anonymous typenames use anon_typename_n instead of typename_anon_n (it seems we can't use <> brackets because of missing scope problem). * src/build.c: Allow Make for files with no extension - prevent Build when the output filename would be the same as the source file. 2007-02-01 Nick Treleaven * src/ui_utils.c: Show file path on window title after file name. 2007-02-01 Enrico Tröger * src/build.c: Prevent compiling or executing of files without a filename extension(closes #1642029). * src/document.c: Made --line and --column also working for already open files (thanks to Mark Knoop for his help). * THANKS, src/treeviews.c: Applied patch from Tomás Vírseda to sort the list of open files in the sidebar alphabetically (thanks). 2007-01-31 Enrico Tröger * scintilla/ScintillaGTK.cxx, src/document.c, src/document.h, src/keybindings.c, src/sci_cb.c, src/sciwrappers.c, src/sciwrappers.h, src/utils.c: Improved the auto scrolling of documents (actually done by Nick). 2007-01-30 Frank Lanitz * configure.in, THANKS, src/about.c, po/fi.po: Added Finnish translation (Thanks to Harri Koskinen). 2007-01-27 Enrico Tröger * src/callbacks.c, src/document.c, src/document.h, src/keyfile.c, src/sci_cb.c, src/sciwrappers.c, src/sciwrappers.h: Fixed some scrolling issues with session files and files remotely open via the socket. Added need_scrolling flag to document struct. 2007-01-26 Enrico Tröger * src/document.c: Applied patch from Jeff Pohlmeyer to clear the line marker when clearing the compile error markers. * geany.glade, src/geany.h, src/interface.c, src/keyfile.c, src/prefs.c, src/sci_cb.c: Added an option to disable auto completion of known symbols while typing (still can be forced by pressing the keybinding). 2007-01-25 Enrico Tröger * src/vte.c: Applied patch from Jeff Pohlmeyer to improve loading of the VTE library. * src/ui_utils.c: Applied patch from Jeff Pohlmeyer to make the window title Gnome HIG compatible. 2007-01-24 Enrico Tröger * data/filetype_extensions.conf, src/filetypes.c: Added *.xsd to XML file patterns. * geany.glade, src/callbacks.c, src/callbacks.h, src/geany.h, src/interface.c, src/keybindings.c, src/keybindings.h, src/main.c, src/sci_cb.c, src/sci_cb.h, src/search.c: Added keybinding and menu entry to open a file which is selected in current tab. Made Insert Special HTML characters insensitive if there are no open tabs. Removed Zoom items from popup menu. * tagmanager/latex.c: Allow \section*{} and other commands with *. * doc/geany.1.in, doc/geany.docbook, src/document.c, src/main.c, src/main.h, src/socket.c: Added command line option --column to allow setting the initial column for the first opened file on command line. Don't apply the --line and --column options to the first opened session file. Make --line and --column options work for opening files in an already running instance. * src/document.c: Oops. Revert the change to ignore --line setting when opening session files. 2007-01-24 Nick Treleaven * src/callbacks.c, src/search.c: Setup Find Next/Previous to use the same search text after using Find Selected/Prev Selected. 2007-01-23 Nick Treleaven * src/interface.c, src/keybindings.c, src/keybindings.h, src/callbacks.c, src/callbacks.h, src/search.c, src/search.h, geany.glade: Applied patch from Jeff Pohlmeyer to add 'Find Selected' and 'Find Prev Selected' Search commands and keybindings (thanks). 2007-01-21 Enrico Tröger * src/project.c: Implemented loading and saving of the project file and minor improvements. * src/build.c, src/msgwindow.c, src/msgwindow.h: Applied patch from Jeff Pohlmeyer to avoid parsing of compiler errors by the va_list system. * src/project.c: Replaced the New button by a Create button. 2007-01-20 Enrico Tröger * scintilla/makefile.win32: Fixed typo. * scintilla/*, src/sci_cb.c: Updated Scintilla to version 1.72. * doc/geany.docbook: Added a notice of changed DnD behaviour in Scintilla 1.72. 2007-01-19 Enrico Tröger * src/build.c: Use "rm" to delete the run script because unlink is not available on all systems. * geany.desktop.in: Added more mimetypes supplied by Nick Schermer. * doc/geany.docbook: Documented GEANY_PROJECT_EXT. * src/dialogs.c, src/prefs.c, src/prefs.h, src/search.c: Fixed crashes when using some dialogs after they were closed before. 2007-01-18 Enrico Tröger * src/project.c: Do not auto complete project filename and base path when they were changed manually. * src/geany.h, src/project.c: Implemented project open dialog, but open doesn't do anything yet. Added GEANY_PROJECT_EXT macro. * geany.glade, src/interface.c: Removed unintended keybindings for the project menu items. * geany.desktop.in: Added MimeType entry as suggested by Nick Schermer. 2007-01-18 Nick Treleaven * src/keybindings.c: Change default keybinding for Close All to Ctrl-Shift-W to avoid conflict with Document menu (thanks to Jeff Pohlmeyer). Remove Alt-P default KB for Preferences to avoid conflict with Project menu. 2007-01-17 Enrico Tröger * src/project.c, src/project.h: Added properties dialog (still far away from state ready). Added file_patterns field. * src/utils.c, src/utils.h: Added utils_mkdir(). 2007-01-17 Nick Treleaven * src/callbacks.c, doc/geany.docbook: Make Go to Tag Definition work for all tags except forward declarations and externs. 2007-01-16 Enrico Tröger * src/vte.c: Use g_shell_quote to avoid problems with special characters in the path of a filename. 2007-01-16 Nick Treleaven * tagmanager/c.c: Backport improvements from Anjuta 2.02. Parse anonymous struct and enums (using contextual_fake_count). Add better C99 support, e.g. wchar_t variables. * tagmanager/include/tm_symbol.h, tagmanager/tm_symbol.c: Add tm_arglist_compare(). Fix comparison in tm_symbol_tag_compare(). 2007-01-15 Enrico Tröger * src/vte.c: Fixed changing directories when the path contains whitespace. * src/callbacks.c: When using Save As the returned filename needs to be converted into UTF-8. * geany.glade, po/POTFILES.in, src/callbacks.c, src/callbacks.h, src/geany.h, src/interface.c, src/main.c, src/makefile.win32, src/Makefile.am, src/project.c, src/project.h: Started to implement project management (still unusable). Added project.[c|h]. 2007-01-15 Nick Treleaven * src/symbols.c: Reorder symbol list by Namespaces, Classes, Functions, Members, Structs, Macros, Variables. Add D Variables, rename D Methods -> Functions. 2007-01-14 Enrico Tröger * geany.glade, src/build.c, src/document.c, src/geany.h, src/highlighting.c, src/interface.c, src/keyfile.c, src/prefs.c, src/sci_cb.c, src/sci_wrappers.c, src/sciwrappers.h, src/utils.c, src/utils.h: Added sci_set_use_tabs(). Fixed mem leak in sci_cb_auto_forif(). Moved free_pointers() to utils.c. Applied patch from Jeff Pohlmeyer to add an option for using spaces or tabulators when inserting some whitespace. * src/about.c: Updated copyright information. * geany_private.rc, README, src/*.c, src/*.h: Updated copyright information. * data/filetype_extensions.conf, src/filetypes.c: jsp is a Java extension. * src/sci_cb.c: Enabled auto completion of constructs for filetype JavaScript. 2007-01-14 Nick Treleaven * src/treeviews.c, src/treeviews.h, src/symbols.c, po/POTFILES.in: Move treeviews_init_tag_list() and symbol list GtkTreeIters to symbols.c. * src/highlighting.c: Fix segfault when setting Lua filetype. 2007-01-13 Enrico Tröger * data/filetype_extensions.conf, data/filetypes.javascript, data/filetypes.lua, scintilla/KeyWords.cxx, scintilla/LexLua.cxx, scintilla/Makefile.am, scintilla/makefile.win32, src/filetypes.c, src/filetypes.h, src/highlighting.c, src/highlighting.h, src/sci_cb.c, src/templates.c, tagmanager/js.c, tagmanager/lua.c, tagmanager/Makefile.am, tagmanager/makefile.win32, tagmanager/parsers.h: Added new filetypes Javascript and Lua. * geany.glade, THANKS, src/geany.h, src/interface.c, src/keyfile.c, src/prefs.c, src/sci_cb.c: Applied patch from Jeff Pohlmeyer to add an option for disabling DnD in the editor widget. 2007-01-13 Nick Treleaven * src/main.c, src/socket.c, po/POTFILES.in: Print an error message (instead of debug message) when a command-line file cannot be loaded. * src/utils.c, src/utils.h, src/geany.h, src/symbols.c, src/ui_utils.c, src/symbols.h: Move utils_compare_symbol(), GeanySymbol, recreate_tag_list() to symbols.c. * src/document.c: Update the symbol list when starting a new document. 2007-01-12 Nick Treleaven * src/sci_cb.c, src/symbols.c, src/symbols.h: Use '::' context separator for C also (so C/C++ share the same syntax, and C++ .h headers use correct syntax). Add symbols_get_context_separator() and use for calltips and the symbol list. * src/treeviews.c, src/document.c: Don't select the current document when reordering tabs (fixes #1632708). * src/utils.c: Fix g_strconcat leaks in utils_make_settings_dir(). 2007-01-11 Nick Treleaven * src/sci_cb.c: Fix commenting multiple lines (oops). Set single undo action when toggling multiple lines. 2007-01-09 Enrico Tröger * src/callbacks.c: Try to fix paste problems on Windows (should close #1628951). 2007-01-09 Nick Treleaven * src/utils.c, src/sci_cb.c, src/sciwrappers.c: Prevent some possible buffer overflows. 2007-01-08 Enrico Tröger * doc/geany.docbook, src/keybindings.c, src/keybindings.h: Added keyboard shortcut for Save As. Added missing documentation for some keyboard shortcuts. * src/vte.c: Improved tool tip for terminal emulation. 2007-01-07 Nick Treleaven * src/utils.c, src/utils.h, src/encodings.c, src/document.c, src/encodings.h, src/dialogs.c, src/ui_utils.c: Fix memory leak when using utils_scan_unicode_bom(). Prevent invalid memory read in utils_scan_unicode_bom() when text length is < 4. Move utils_scan_unicode_bom(), utils_is_unicode_charset() to encodings.c. Read the BOM length in handle_bom(). 2007-01-07 Enrico Tröger * geany.glade, src/interface.c: Fixed typo. 2007-01-06 Enrico Tröger * src/callbacks.c, src/sci_cb.c, src/sci_cb.h, src/templates.c, src/templates.h: Removed multiline template because it makes not much sense, instead just comment three lines using the general comment functionality. Removed special templates for Pascal and some other filetypes using "#" as comment char. The comment characters for fileheader and GPL templates are now added dynamically according to the current filetype. * geany.glade, doc/geany.docbook, src/callbacks.c, src/callbacks.h, src/interface.c, src/templates.c, src/templates.h: Added template for BSD licence. * src/document.c: Fixed missing colouring of tab menu label. * doc/geany.docbook, src/geany.h, src/utils.c, src/templates.c: Save template files in a subdirectory "templates" inside Geany's configuration directory. 2007-01-06 Nick Treleaven * src/keybindings.c: Ensure the VTE visual settings are applied when switching to VTE when the Message Window is hidden. Show the Message Window when switching to Scribble. * src/document.c: Use load_text_file() in document_open_file() to read, verify and handle encoding using FileData struct. Refactored handle_[forced_]encoding with FileData* argument. Update data length after removing BOM chars in handle_bom(). 2007-01-04 Nick Treleaven * src/build.c, src/build.h: Make build_parse_make_dir() more efficient. 2007-01-03 Nick Treleaven * src/sci_cb.c, tagmanager/entry.h, tagmanager/tm_tag.c, tagmanager/include/tm_tag.h, tagmanager/c.c: Parse pointers in function return type for C-like files. Show scope in calltips. Made tm_tag_destroy() static. * src/treeviews.c: Fix for C89 compatibility. * src/templates.c, src/build.c, src/templates.h, src/build.h, src/highlighting.c, src/filetypes.h: Added filetype_id typedef so that GEANY_FILETYPES_* can be shown when debugging (also renamed some filetype_id variable names). 2006-12-31 Enrico Tröger * src/treeviews.c: When opening a file, set the current selected entry in the open files list to the file's filename. 2006-12-30 Nick Treleaven * src/ui_utils.c: Don't use gtk_rc_get_style() in ui_update_tab_status() because it can cause an invalid memory read on some systems. * src/build.c, src/build.h, src/msgwindow.c, src/msgwindow.h: Applied patch from Josef Whiter to parse 'Entering directory' build messages so that subsequent error messages are handled correctly (thanks). Assume gcc-style error messages when filetype is not set. 2006-12-26 Nick Treleaven * tagmanager/tm_tag.c, tagmanager/include/tm_tag.h: Fix missed matches in tm_tags_find(). * src/sci_cb.c, tagmanager/tm_workspace.c, tagmanager/include/tm_workspace.h: Add calltip support for D constructors. Add tm_workspace_find_scoped() (adapted from Anjuta 2.02 tm_workspace_find()). 2006-12-24 Nick Treleaven * src/utils.c, src/sci_cb.c: Only call SCI_BRACEMATCH once in sci_cb_highlight_braces(). Separate find_calltip() from sci_cb_show_calltip(). * src/sciwrappers.c: Improve accuracy of sci_scroll_to_line() when line wrapping and/or folding is used. 2006-12-22 Nick Treleaven * src/utils.c: Don't reparse the current function when fold level is higher than the function fold level (when the line has only changed by 1). 2006-12-21 Enrico Tröger * doc/geany.1.in, doc/Makefile.am, doc/geany.docbook, doc/images/*, doc/html/*: Fixed encoding of generated PDF file. Deleted all jpg images and replaced them by png images. Updated date in documentation and manpage. * src/callbacks.c: Fixed wrong paste behaviour under Windows with some applications. * src/ui_utils.c: Start column count from 0 in the statusbar display. * New release: Geany 0.10 "Sander". * configure.in, src/geany.h, geany_private.rc: Version bump and updated codename for the next release. 2006-12-20 Enrico Tröger * src/keyfile.c: Changed default values: Confirm exit -> disabled by default Use tab to indent -> disabled by default. 2006-12-20 Nick Treleaven * src/keyfile.c: Fix strv leak in configuration_open_files(). * src/treeviews.c, src/ui_utils.c: Fix tag treeview not being freed (because of g_object_ref). Separate recreate_tag_list() from ui_update_tag_list(). * src/vte.c: Stop Valgrind complaining about a vc->emulation leak. * src/callbacks.c, src/search.c: Remove unneeded static from current word strings. 2006-12-18 Enrico Tröger * src/tools.c: Completed list of special characters, implemented expanding and collapsing of categories at double click. * src/geany.h: Updated codename (not really important). 2006-12-18 Nick Treleaven * src/callbacks.c, src/search.c, src/document.c: Don't log simple error messages like 'No text to find'. * src/keyfile.c: Open tabs left to right by default. * src/keyfile.c: Scroll cursor to 50% of the view for session files at startup. * src/callbacks.c, src/dialogs.c: Always switch to the tab when showing the unsaved file dialog. * src/document.c: Don't set the cursor to the start of the document when attempting to open an already open file. * src/utils.c, src/utils.h, src/callbacks.c, src/sci_cb.c, src/document.c: Force a file changed check when attempting to open an already open file. * src/sciwrappers.c, src/sciwrappers.h, src/document.c: Scroll cursor to 50% of the view when reloading a file. Rename sci_goto_pos() argument 'unfold'. 2006-12-17 Enrico Tröger * geany.glade, src/interface.c: Made the sidebar notebook tabs scrollable. * geany.glade, src/callbacks.c, src/callbacks.h, src/interface.c, src/ui_utils.c: Fixed wrong insert position when the cursor was moved by keyboard and comments, includes or a date was inserted. Also fixed some segfault when inserting comments, dates and includes at a position prior to some deleted text. * src/document.c: Fixed disabled build menu items after opening the first file of a filetype. 2006-12-17 Nick Treleaven * src/search.c: Fix using the current word on first use of the Find in Files dialog. * src/document.c: Don't log 'replaced 0 occurrences' status messages. * src/search.c: Remove unneeded 'missing response' debug messages. 2006-12-16 Nick Treleaven * src/utils.c: Fix memory leak in utils_check_disk_status(). * src/highlighting.c, src/sci_cb.c, src/sci_cb.h, src/document.c, src/symbols.c, src/symbols.h: Colourise C enum, union and D/Java interface typenames. Add sci_cb_lexer_get_type_keyword_idx() for use when finding if a lexer supports typename colouring. 2006-12-15 Enrico Tröger * src/main.c, src/sci_cb.c, src/sci_cb.h, src/symbols.c, src/symbols.h: Moved html_entities array to symbols.c. Fixed some checks for the new D lexer and improved detection of comments when auto completing or showing calltips. * src/search.c: Bring the Find, Replace and FIF dialog back to top if they are already shown but lost focus. 2006-12-15 Nick Treleaven * src/sci_cb.c: Only remove extra space indent after a multiline comment if the indent contains one too many spaces. * src/highlighting.c, data/filetypes.d: Show D typedefs in bold. * src/sci_cb.c, src/sci_cb.h, src/document.c: Fix setting project typenames for the new D lexer. Add sci_cb_lexer_is_c_like() which returns TRUE for C++/D lexers. Only recolourise C-like files when updating project typename keywords. 2006-12-14 Frank Lanitz * src/about.c: Fixed a typo. 2006-12-14 Nick Treleaven * src/document.c: Fix updating the symbol list when a file is saved. Update C-like typedef keywords when reloading a file. * src/sci_cb.c: Fix adding a multiline comment character after pressing enter on the last line of a multiline comment. Remove multiline comment indent after pressing enter on last line. Prevent invalid memory reads in auto_multiline(). 2006-12-13 Frank Lanitz * THANKS: Small update of contact data and small fix of translated language. 2006-12-13 Nick Treleaven * src/ui_utils.h, src/about.c, src/treeviews.c, src/msgwindow.c, src/callbacks.c, src/keyfile.c, src/document.c, src/prefs.c, src/main.c, src/ui_utils.c: Fix memory leaks when using GdkPixbuf, PangoFontDescription and some strings. Capitalize main window title. Add ui_widget_modify_font_from_string(). * src/build.c, src/keybindings.c, src/msgwindow.c, src/msgwindow.h, src/vte.c, src/main.c: Add 'Hide Message Window' popup menu item for each window in the message window area. Add msgwin_menu_add_common_items(). Move remaining message window setup code to msgwin_init(). * src/interface.c, geany.glade: Add 'Invert syntax highlighting colours' Preferences dialog option (hidden for now). 2006-12-12 Enrico Tröger * src/document.c, src/geany.h, src/keyfile.c, src/sciwrappers.c, src/sciwrappers.h: Added option to toggle usage of Tab button for indentation. * geany.glade, po/POTFILES.in, src/callbacks.c, src/callbacks.h, src/interface.c, src/keybindings.c, src/keybindings.h, src/Makefile.am, src/makefile.win32, src/tools.c, src/tools.h: New files tools.c and tools.h. Added a dialog to insert HTML special characters. 2006-12-12 Nick Treleaven * src/build.c, src/interface.c, src/callbacks.c, src/ui_utils.c, geany.glade: Use GNOME HIG Header style capitalization for all menu items. * src/main.c: Make files loaded from the command-line at startup get added to the recent files menus. 2006-12-11 Enrico Tröger * data/filetypes.vhdl: Fixed typo in "number" and "string" styles. 2006-12-11 Nick Treleaven * src/main.c: Show GTK+, GLib runtime version debug message after socket_init(). * src/callbacks.c: Make indenting and unindenting keep the same cursor position when the cursor is within the indentation characters. * configure.in: Link with libsocket if necessary to fix building on Solaris. 2006-12-10 Enrico Tröger * src/build.c, src/callbacks.c, src/document.c, src/keyfile.c, src/prefs.c, src/vte.c, src/vte.h: Added option to execute programs in the VTE instead of executing them in a terminal emulation window (closes #1594456). * src/dialogs.c: Use a table to layout the word count dialog. 2006-12-09 Nick Treleaven * src/build.c: Fix building on win32; also fix some warnings. * src/document.c: Read the file's modification timestamp after saving because on Windows it can be later than expected (closes #1611530). * src/keybindings.c: Show the Message window when switching to the vte. * src/build.c, src/keybindings.c, src/keybindings.h: Add keybindings for Next Message and Next Error commands. 2006-12-08 Nick Treleaven * src/build.c, src/interface.c, src/ui_utils.h, src/build.h, src/keybindings.c, src/msgwindow.c, src/callbacks.c, src/msgwindow.h, src/callbacks.h, src/main.c, src/ui_utils.c, geany.glade: Add Next Message and Next Error menu items. Don't select the last build message on completing a build. Change build_get_menu_items(-1) to return current build menu. Add Copy popup menu item for Status and Messages windows. Move on_message_treeview_clear_activate(), on_compiler_treeview_copy_activate() to msgwindow.c. Create the Recent files submenu item manually because Glade 2.10 removes empty menus. * src/dialogs.c, src/ui_utils.c: Use ui_button_new_with_image() in dialogs_show_unsaved_file(). 2006-12-08 Enrico Tröger * src/build.c: Made the created run script for command execution a bit more portable to other shells than bash (thanks to Nacho Cabanes for reporting). * src/document.c, src/document.h, src/sciwrappers.c, src/ui_utils.h, src/sciwrappers.h: Fixed broken overtype update in the statusbar. Removed unused field do_overwrite in document struct. * src/msgwindow.c: Removed compiler warning. * src/sci_cb.c, src/sci_cb.h: Made sci_cb_get_indent and sci_Cb_auto_multiline static. Improved auto completion of multi line comments and support /+ +/ for D files. * src/msgwindow.c: Fixed wrong check button state in view menu if message window was shown automatically. 2006-12-07 Frank Lanitz * src/about.c, THANKS, configure.in, po/fr.po: Added French translation (Thanks to Jean-Philippe Moal). 2006-12-07 Enrico Tröger * src/document.c: Create new tm file object when changing the filetype of a document to avoid a confused tagmanager. * data/filetypes.d, scintilla/KeyWords.cxx, scintilla/LexD.cxx, scintilla/Makefile.am, scintilla/makefile.win32, scintilla/include/SciLexer.h, src/highlighting.c: Added new scintilla lexer for D. It needs testing and there is more work to do to get it working properly. * src/about.c, src/build.c, src/callbacks.c, src/document.c, src/encodings.c, src/gb.c, src/keyfile.c, src/prefs.c, src/sci_cb.c, src/search.c, src/symbols.c, src/ui_utils.c, src/utils.c, src/utils.h, src/dialogs.c, src/vte.c: Revert the last change to utils_str_equal() and use it again because g_str_equal() is not NULL-safe. 2006-12-06 Enrico Tröger * src/sci_cb.c: Don't insert extra indentation in Python files after a colon if the line is a comment (closes #1609761). * src/about.c, src/build.c, src/callbacks.c, src/document.c, src/encodings.c, src/gb.c, src/keyfile.c, src/prefs.c, src/sci_cb.c, src/search.c, src/symbols.c, src/ui_utils.c, src/utils.c, src/utils.h: Removed utils_str_equal() and use g_str_equal() from GLib because it does exactly the same. 2006-12-05 Enrico Tröger * src/treeviews.c, tagmanager/latex.c: Let the LaTeX parser recognise the keyword \chapter. 2006-12-05 Nick Treleaven * src/socket.c: Prevent Valgrind warning with unlink(NULL). * src/ui_utils.h, src/treeviews.c, src/callbacks.c, src/notebook.c, src/treeviews.h, src/notebook.h, src/document.c, src/document.h, src/ui_utils.c: Show read-only notebook tabs in green. Add document_get_status() to get the tab colour for the document. Use ui_update_tab_status() to update notebook tabs and open files treeview items. Avoid using GtkTreeIter struct as treeviews function arguments. Remove unneeded arguments for treeviews_openfiles_add(), notebook_new_tab(). 2006-12-04 Nick Treleaven * src/highlighting.c, data/filetypes.d: Move C/C++ styling_within_preprocessor code out of C-like styles. Use styleset_c_like() when applying C-like Scintilla styles. Synchronize gsd_reserved_word, gsd_system_word and data/filetypes.d with styles in data/filetypes.c. 2006-12-04 Enrico Tröger * src/document.c: Use default GTK foreground colour for filenames on notebook tabs instead of hardcoded colour black. * src/sci_cb.c: Fixed broken auto completion for LaTeX files. 2006-12-03 Enrico Tröger * data/filetypes.c, data/filetypes.cpp, data/filetypes.d, data/filetypes.ferite, data/filetypes.java, src/highlighting.c: Added new style for doc keyword error and added some doc key words for Doxygen and Javadoc. * geany.glade, src/geany.h, src/interface.c, src/keyfile.c, src/prefs.c, src/sci_cb.c: Added new preference to unfold all children of a fold point if the fold point is unfolded. * src/msgwindow.c: Applied patch from Bob Doan to ignore libtool messages when parsing the output of make (thanks). * src/sci_cb.c, src/sci_cb.h: Made handle_xml() static. Fixed wrong XML auto completion in PHP files when inserting '>', thanks to Bob Doan for reporting. 2006-12-02 Enrico Tröger * src/highlighting.c: Use the same style for unknown doc keywords (/** @something */) as for known keywords. 2006-12-01 Enrico Tröger * geany.glade, src/interface.c, src/geany.h, src/main.c, src/ui_utils.c: Removed invisible place holder menu item in recent files menu. Create separate sub menu for the recent files menu in the toolbar to prevent GTK warnings when using GTK >= 2.10. 2006-12-01 Nick Treleaven * src/vte.c: Make the switch to vte menu shortcut override work before the VTE has been realized. 2006-11-30 Nick Treleaven * src/main.c: Disable open toolbutton recent files menu for now because on GTK+2.10 packing the recent files menu twice causes warnings. * src/build.c, src/build.h, src/keybindings.c, src/callbacks.c, src/filetypes.c, src/filetypes.h, src/dialogs.c: Make all filetypes except LaTeX use the same build menu, disabling any items that don't apply for the current document. Move BuildMenuItems struct type to build.h. 2006-11-29 Nick Treleaven * src/build.c, src/build.h, src/keybindings.c, src/filetypes.c, src/filetypes.h: Make stop button only apply for killing running programs. Disable build commands when building is in progress. Make build_menu_update() detect how to call set_stop_button(). Make build_menu_update() also update the LaTeX build menu. Make build keybindings only active when the equivalent menu item is also active. 2006-11-27 Nick Treleaven * src/build.c: Show build result on status bar if Compiler window is not selected. 2006-11-25 Nick Treleaven * src/msgwindow.c, src/notebook.c, src/msgwindow.h, src/notebook.h: Add some const char* argument modifiers, remove unneeded static from some local vars. * src/vte.c: Remove vte_char_size_changed() workaround, not needed since r988; this also fixes an issue where the VTE is limited to 30x5 chars. * src/search.c, src/document.c, src/document.h: When replacing in session, use notebook page order and show a count of the files changed. Show the filename when replacing text over a range. Add DOC_FILENAME() null-safe macro to get the filename at doc_idx. * src/build.c, src/ui_utils.h, src/msgwindow.c, src/search.c, src/document.c, src/ui_utils.c: Make ui_set_statusbar() use printf-style arguments & assume the message should not be overridden. * data/filetypes.python: Change python default compile command to create a compiled python .pyc file (thanks to Bajusz Tamás). 2006-11-24 Nick Treleaven * src/ui_utils.h, src/prefs.c, src/dialogs.c, src/ui_utils.c: Add frame for VTE Preferences tab, update packing. Replace ui_frame_new() with ui_frame_new_with_alignment(). * src/callbacks.c, src/callbacks.h, src/vte.c, src/vte.h, src/prefs.c, src/prefs.h: Move VTE preferences GUI code to vte.c. Move on_pref_tools_button_clicked() to prefs.c. 2006-11-23 Enrico Tröger * src/vte.c: Fixed segfault when opening the preferences dialog for the first time from the VTE widget. 2006-11-23 Nick Treleaven * src/highlighting.c, src/geany.h, doc/geany.docbook, data/filetypes.*: Only use [a-zA-Z0-9] chars for default wordchars, to avoid problems with word matching when using Find & Replace functions. * src/keybindings.c: Add switching to a notebook tab number using Alt-1 to Alt-9; Alt-0 switches to the last tab. * src/geany.h, data/filetypes.*: Add underscore to default wordchars again (oops). 2006-11-22 Frank Lanitz * po/hu.po, src/about.c, THANKS, configure.in: Added Hungarian translation (Thanks to Gabor Kmetyko aka kilo ). 2006-11-22 Nick Treleaven * src/notebook.c, src/notebook.h, src/document.c: Ensure tab DnD is enabled when tabs are added; use notebook_remove_page() instead of gtk_notebook_remove_page(). Unified notebook_[en|dis]able_dnd_for_dropping_files() in tab_count_changed(). 2006-11-21 Enrico Tröger * src/callbacks.c, src/callbacks.h, src/document.c, src/main.c, src/notebook.c, src/notebook.h: Removed DnD handler for the main window (not very useful). Fixed broken tab reordering by only enabling DnD for dropping files when there are no open file tabs, otherwise disable it and enable DnD for moving file tabs. Dropping files into Geany when file tabs are open still works because then it is handled by the Scintilla widget. * src/msgwin.c: Applied patch from Bob Doan to parse PHP compile errors better (thanks). 2006-11-18 Nick Treleaven * src/sciwrappers.c, src/sciwrappers.h: Added sci_get_first_visible_line(). * src/interface.c, src/geany.h, src/sci_cb.h, src/keyfile.c, src/vte.c, src/search.c, src/document.c, src/prefs.c, geany.glade: Applied patch from Bob Doan to prevent scrolling when wrap searching around a document, and to add a preference for suppressing search dialogs when wrapping or after Find Next. Rearranged some Preferences dialog options, added Files tab. Disable tab position when file tabs are hidden (not new file tab placement option, it still affects order of pages). * src/interface.c, geany.glade: Add Preferences frame alignment for Tools, Templates, Keybindings. Revert tab placement label text. 2006-11-17 Enrico Tröger * src/build.c, src/main.c: Fixed compile error under Win32. Ignore pressed Stop button under Win32 (at least for the moment, not yet implemented). 2006-11-17 Nick Treleaven * src/search.c: Change Find Next/Previous buttons to use better stock icons. * src/callbacks.c, src/sci_cb.c, src/document.c, src/document.h: Fix sign comparison warnings. 2006-11-16 Enrico Tröger * src/main.c: Enabled DnD also for the main notebook widget to drop files in the main area of Geany. 2006-11-15 Enrico Tröger * src/vte.c: Don't unload the VTE module on exit to avoid crashes on some systems. * src/main.c: Fixed small memory leak. * src/callbacks.c, src/callbacks.h, src/document.c, src/document.h, src/main.c, src/sci_cb.c: Enabled drag and drop for the whole main window to be able to drop files even if no tabs are open. Moved code for getting the file list to document_open_file_list(). 2006-11-15 Frank Lanitz * src/about.c, configure.in, THANKS, po/zh_TW.po: Added tranditional Chinese translation (Thanks to KoViCH ). 2006-11-15 Nick Treleaven * src/ui_utils.h, src/search.c, src/ui_utils.c: Add search history for Find in Files. Add ui_combo_box_add_to_history() and use to prevent blocks of duplicates (but not all duplicates) from search history combo boxes, and limit history to 30 entries. * src/build.c: Remove the stop button in build_exit_cb() when using Make commands. Fix set_stop_button() when using Make when the current file has no filetype. 2006-11-14 Enrico Tröger * scintilla/LexPascal.c: Tried to fix wrong styling at "end.". 2006-11-14 Frank Lanitz * po/zh_CN.po, src/about.c, configure.in, THANKS: Added simple Chinese (zh_CN) translation (Thanks to Dormouse Young ). 2006-11-14 Nick Treleaven * src/templates.c, src/templates.h, src/callbacks.c, src/filetypes.c, src/filetypes.h, src/document.c, src/document.h: Add NULL-safe FILETYPE_ID macro to get filetype::id from pointer. Allow insertion of GPL notice and file header when the filetype is not set. Add commenting for PHP & HTML GPL notice and file header templates. Add make_comment_block() to templates.c. Move document_prepare_template(), filetypes_get_template() to templates.c. 2006-11-13 Enrico Tröger * src/filetypes.c, src/filetypes.h, src/highlighting.c, src/highlighting.h, src/treeviews.c, scintilla/Makefile.am, scintilla/makefile.win32, scintilla/KeyWords.cxx, scintilla/LexVHDL.cxx, tagmanager/vhdl.c, tagmanager/parsers.h, tagmanager/Makefile.am, tagmanager/makefile.win32, data/filetype_extensions.conf, data/filetypes.vhdl: Added new filetype VHDL. * geany.glade, src/interface.c, src/keybindings.c: Use plural for line commentation description labels. * src/build.c: Added missing inclusion of signal.h. 2006-11-13 Nick Treleaven * src/sci_cb.c: Fix invalid memory read in sci_cb_get_indent(). * src/callbacks.c: Fix invalid memory write in on_exit_clicked(). 2006-11-12 Nick Treleaven * src/vte.c: Fix message window horizontal scrollbar being too tall on some systems (thanks to Rob van der Linde). 2006-11-11 Enrico Tröger * src/vte.c: Probe different versions of libvte.so, not only libvte.so and libvte.so.4. * src/keyfile.c: Fixed a segfault when closing preferences dialog and loading VTE was enabled after it was disabled. * src/build.c, src/build.h, src/main.c: Extended the build_info struct with useful information of the current running command. Added stop button(using the Run button) to cancel the execution of a command like Run, Compile or Build. Fixed a typo in an error message. * doc/geany.docbook: Described new folding_horiz_line setting in filetypes.common. Added documentation for stopping of running processes. 2006-11-09 Enrico Tröger * src/highlighting.c, data/filetypes.java, data/filetypes.cpp, data/filetypes.ferite, data/filetypes.c, data/filetypes.d, data/filetypes.pascal, data/filetypes.sql, data/filetypes.xml: Changed commentdoc(used for javadoc and Doxygen, /** */) colour to a light blue. 2006-11-09 Nick Treleaven * src/keyfile.c, src/main.c: Fix a possible bug with g_file_test when opening files at startup. Show warning message on status bar if some session files couldn't be loaded, showing debug messages for each session file that fails. 2006-11-08 Nick Treleaven * src/utils.c, src/highlighting.c, src/utils.h, src/callbacks.c, src/sci_cb.c, src/document.c, src/symbols.c, src/ui_utils.c, src/symbols.h: Move utils_get_tag_list() to symbols.c, make utils_find_tm_tag() static. Move symbols_get_global_keywords() to get_global_typenames() in highlighting.c. Add symbols_find_tags_as_string(), symbols_get_tag_list(), symbols_get_macro_list(), symbols_find_in_workspace() from various tag-related existing code. * src/ui_utils.c: Never show the Sidebar if app->show_sidebar is false (prevents showing Sidebar after setting Preferences, when user has chosen to hide the Sidebar). * src/utils.c, src/utils.h, src/about.c, src/callbacks.c, src/sci_cb.c, src/keyfile.c, src/search.c, src/encodings.c, src/document.c, src/prefs.c, src/gb.c, src/symbols.c: Rename utils_strcmp() utils_str_equal() (to avoid return value confusion with strcmp()). 2006-11-07 Enrico Tröger * src/treeviews.c: Fixed unintentional appearance of sidebar after it was hidden and the preferences dialog was closed. * data/filetypes.common, src/highlighting.c: Added an option to draw an horizontal line above or below folded text. * src/dialogs.c: Don't set width of file open dialog. 2006-11-07 Nick Treleaven * src/win32.c, src/win32.h, src/callbacks.c, src/keyfile.c, src/dialogs.c, src/dialogs.h: Don't close any tabs when quitting until all unsaved changes have been accounted for; switch to each unsaved file before showing the unsaved dialog. Remove limit of ~256 chars for session filenames. Make dialogs_show_unsaved_file() fail if the Save As dialog was cancelled. 2006-11-06 Enrico Tröger * data/filetypes.java, src/highlighting.c: Added Java keywords true and false. Converted "NULL" to lower case. * src/sci_cb.c: Little code cleanup in brace_match(). 2006-11-05 Enrico Tröger * src/sci_cb.c: Fixed (hopefully) wrong indentation in some cases when inserting '}'. 2006-11-04 Enrico Tröger * src/highlighting.c, src/highlighting.h: Applied patch from Bob Doan to do not set keywords for XML documents(thanks). Made styleset_markup() static. 2006-11-04 Nick Treleaven * src/search.c: Fix pressing enter to search from the Find dialog. * src/keyfile.c, src/keyfile.h, src/main.c: Make filetype_extensions.conf generation only available with a debug build of Geany. * src/filetypes.c, data/filetype_extensions.conf: Recognise *.xsl, *.xslt filenames for XML filetype. Recognise 'GNUmakefile' filename for Make filetype. 2006-11-03 Nick Treleaven * src/msgwindow.c: Don't set error indicators when clicking on an error message if the document has been modified. * src/notebook.c: Focus the current document after clicking on a tab. * src/utils.c, src/keybindings.c, src/callbacks.c, src/sci_cb.c, src/sciwrappers.c, src/search.c, src/sciwrappers.h, src/document.c, src/document.h: Scroll matching selection to 1/3 of the view when searching. Add sci_scroll_to_line(); remove sci_goto_line_scroll(). Show 'not found' message on status bar also when enter is pressed in the search bar. 2006-11-02 Enrico Tröger * src/callbacks.c, src/dialogs: Run set includes build dialogs for LaTeX files modally, too. 2006-11-02 Nick Treleaven * src/highlighting.c, data/filetypes.perl, data/filetypes.pascal, data/filetypes.sh, data/filetypes.makefile, data/filetypes.ruby, data/filetypes.tcl: Make all remaining 0xff0000 comment styles darker using a common default comment style. Add some other generic styles (used only by C-like filetypes for now). 2006-11-01 Enrico Tröger * src/search.c: Changed tooltip of checkbox "Close dialog" to be more descriptive. * src/keybindings.c: Changed keybinding for Print to Ctrl+P. * scintilla/LexBash.cxx: Fixed wrong detection of some words. 2006-11-01 Nick Treleaven * src/document.c: Prevent possible invalid memory read. * src/ui_utils.h, src/search.c, src/search.h, src/ui_utils.c, src/callbacks.c: Add Find Previous, Find All in File/Session buttons to the Find dialog. Move Find Usage code from on_find_usage1_activate to search.c. Add ui_button_new_with_image(), ui_hbutton_box_copy_layout(). * src/utils.c: Prevent end of line char showing for current function. * src/search.c: Update Save All state after Replace in Session. * src/callbacks.c: Update Undo items when switching notebook pages. 2006-10-30 Enrico Tröger * src/sci_cb.c: Add extra indentation for Python after a colon. * tagmanager/latex.c, src/treeviews.c: Removed "begin" section in symbol list and sort it at environment. 2006-10-29 Enrico Tröger * geany.glade, src/interface.c, src/prefs.c, src/geany.h, src/keyfile.c, src/ui_utils.c, src/main.c: Added an Apply button to preferences dialog. New setting to show/hide the Quit toolbar item. New setting to show/hide notebook tabs. * src/document.c, src/treeviews.c, src/treeviews.h: Colour also the open files list items according to their changed state. * src/callbacks.c, src/callbacks.h, src/msgwindow.c, src/msgwindow.h, src/treeviews.c, src/treeviews.h, src/geany.h: Moved all treeview related callback functions from callbacks.c to msgwindow.c and treeviews.c. * src/document.c: Fixed bug when setting colour of open files list entry on new, unnamed files. 2006-10-28 Nick Treleaven * src/ui_utils.c: Add temporary fix for sci infinite loop in Document::GetColumn(int) when current pos is beyond document end (can occur when removing blocks of selected lines especially brace sections near end of file). 2006-10-28 Enrico Tröger * doc/geany.docbook: Some small updates. Got rid of &app; entitity. Extended description of encoding support. 2006-10-27 Nick Treleaven * src/highlighting.c, src/filetypes.c, src/filetypes.h, data/filetypes.java, data/filetypes.cpp, data/filetypes.ferite, data/filetypes.c, data/filetypes.d: Add filetypes_get_conf_extension() and use in highlighting.c. Fix a memory leak in load_keyfiles(). Group C-like default syntax in init_c_like_styleset(). Make C-like comment colour darker; make globalclass brighter to distinguish it from word colour. Make Java use same default syntax highlighting colours as C. * src/utils.c: Limit parse depth to 500 chars when parsing C-like function name. * src/sci_cb.c: Find last unmatched open bracket for Show Calltip so nested matched brackets are ignored (except LaTeX). 2006-10-26 Nick Treleaven * src/keybindings.c, src/keybindings.h: Only accept editing keybindings when the current Scintilla widget has focus. Group editing keybindings together in cb_func_edit. Change keybinding callbacks to pass keybinding index as an argument. 2006-10-25 Nick Treleaven * src/document.c: When replacing tabs by space, prevent the scroll position changing, and fix a possible change of cursor position. 2006-10-25 Enrico Tröger * src/dialogs.c, src/dialogs.h, src/build.c, src/prefs.c, src/win32.c src/document.c: Added warning message dialog, united dialogs_show_info() and dialogs_show_error() to dialogs_show_msgbox(). * src/document.c: Added warning message when opening files that cannot be handled correctly and set them to read-only mode. * src/document.c, src/encodings.c, src/encodings.h, src/utils.c, src/utils.h: Moved utils_convert_to_utf8() and utils_convert_to_utf8_from_charset() to encodings.c. 2006-10-24 Enrico Tröger * src/build.c, src/socket.c: Fixed compiler warnings under Windows. * win32-config.h, src/dialogs.c: Use GTK's file open dialog also under Windows to have the extended options(kept old dialog code for optional use). * win32-config.h, src/dialogs.c, src/geany.h: Removed unneeded macro GEANY_MAX_TAGS_COUNT. Moved macro GEANY_USE_WIN32_DIALOG to geany.h. 2006-10-24 Nick Treleaven * src/sciwrappers.h, src/sciwrappers.c, src/document.h, src/document.c: Fix setting document unchanged state when using Undo/Redo for encoding or BOM changes. Add sci_is_modified(). Added useful doc() function used only when debugging. * src/search.c: Reorder Replace All buttons. * src/msgwindow.c src/callbacks.c: Change Messages and Compiler window to go to line with a single click instead of double click. 2006-10-23 Enrico Tröger * src/encodings.c, src/encodings.h, src/document.c, src/callbacks.c, src/dialogs.c: Added new encoding "None" to open files without any character conversions (fixes #1580456). * src/callbacks.c: Don't allow changing the encoding or setting a BOM if the file is read only. 2006-10-22 Enrico Tröger * src/geany.h, src/keyfile.c, src/main.c: Added configuration option for the alignment of toolbar quit button. * geany.glade, src/interface.c, src/geany.h, src/keyfile.c, src/main.c: Removed previously added configuration option and removed the right alignment of the toolbar quit button. * src/sci_cb.c, src/sci_cb.h, src/search.c: Let the Find, Replace and FIF dialogs use the word at current cursor position if there is no selection. * src/filetypes.c: Added shebang detection for D files (dmd). * src/callbacks.c, src/dialogs.c, src/document.c: Added drop down box to the file open dialog to select an encoding. Added possibility to open a file without any character set conversions (could already fix #1580456, have to be continued). 2006-10-22 Nick Treleaven * src/ui_utils.h, src/search.c, src/document.c, src/dialogs.c, src/document.h, src/ui_utils.c: Add separate Replace button, rename old button Replace & Find. Add expander to group Replace All options for Replace dialog. Use Replace All In Session button instead of checkbox. Add border, update packing for all dialogs in search.c. Add ui_dialog_vbox_new() for consistent dialog borders. 2006-10-21 Nick Treleaven * src/document.c: Make search bar automatically wraparound if necessary. Detect when Find has searched all text and display a 'not found' message on the status bar. * src/build.c: Remove unused argument. * src/callbacks.c, src/document.c, src/document.h: Rename document_find_next() document_search_bar_find(). * src/msgwindow.h, src/dialogs.h, src/main.h: Add G_GNUC_PRINTF checks for variable argument function prototypes. * src/build.c, src/utils.c, src/highlighting.c, src/geany.h, src/callbacks.c, src/sci_cb.c, src/vte.c, src/search.c, src/main.h: Move geany_debug prototype to geany.h so that all files can use it without a dependency on main.h. * src/callbacks.c, src/main.c, src/main.h: Moved finalization code from destroyapp() to main_quit(). 2006-10-20 Nick Treleaven * src/interface.c, src/main.c, geany.glade: Add drop-down recent files menu to Open toolbar button. Align quit toolbar button on the right. Move Colour Chooser, Word Count to Tools menu. Reorder Format, add Indent icons, edit Remove Indicators items. 2006-10-19 Nick Treleaven * src/build.c, src/about.c, src/dialogs.c: Added 6pt border, changed padding for all dialogs in dialogs.c; also allow ESC to close cancellable dialogs. Updated unsaved, LaTeX Set Arguments dialogs. 2006-10-18 Enrico Tröger * src/utils.c, src/treeviews.c, tagmanager/c.c: Use "::" as context separator only for C++, otherwise use ".". Detect module declarations in D and put them in the symbol list. * src/callbacks.c, src/geany.h, src/msgwindow.c, src/treeviews.c: Use enum values to reference different treeview widgets (code cleanup). 2006-10-18 Nick Treleaven * src/build.c, src/build.h, src/ui_utils.h, src/ui_utils.c, src/keybindings.c, src/callbacks.c, src/callbacks.h, src/document.c, src/main.c: Move build menu related functions and callbacks to build.c. Renamed ui_update_build_menu -> build_menu_update. 2006-10-17 Nick Treleaven * src/callbacks.c, src/filetypes.h, src/ui_utils.c: Disable Make All, Make Custom menu items for unnamed files. Allow Run and Make Object for C header files. * src/document.c: Fixed Undo/Redo setting the wrong document changed state when making edits after saving a file. 2006-10-17 Enrico Tröger * THANKS, configure.in, src/about.c: Added Italian translation (thanks to M. Baldinelli and Dario Santomarco). 2006-10-16 Nick Treleaven * src/keybindings.c: Change goto matching brace default keybinding to CTRL-SHIFT-< (requires shift on some keyboards). * src/build.c, src/build.h, src/geany.h, src/callbacks.c: Don't overwrite Make Custom string when using Make Object. Move app->build_make_custopt to build_options struct in build.c. * src/build.c, src/build.h, src/msgwindow.c, src/callbacks.c, src/msgwindow.h: Move build_info struct to build.c and merge with build_options. 2006-10-13 Enrico Tröger * src/ui_utils.c, src/treeviews.c: Improved symbol list view for filetype Java. 2006-10-13 Nick Treleaven * src/utils.c: Fix infinite loop from parsing current function name. 2006-10-12 Enrico Tröger * src/utils.c: Improved function name parsing to fix some invalid parsed function names. 2006-10-12 Nick Treleaven * src/utils.c: Fix parsing the current function name for Java. When the document is unedited, get the current function name from the previous function tag parsed by tagmanager. Don't update the current function if the cursor is 1 line from the previous call and the fold level is unchanged. * tagmanager/tm_workspace.c, tagmanager/include/tm_workspace.h: Backported tm_get_current_function() from Anjuta. * src/sciwrappers.c, src/sciwrappers.h: Added sci_get_last_child(), sci_get_fold_parent(). * src/keyfile.c: Small fix for sign warning. 2006-10-11 Enrico Tröger * src/keyfile.c, src/geany.h: Removed hard limit of session files. * doc/geany.docbook: Updated section about session files limit. * tagmanager/makefile.win32, tagmanager/Makefile.am, tagmanager/parsers.h, tagmanager/diff.c, src/filetypes.c, src/treeviews.c: Added simple parser for filetype Diff to create tags for each patched file in a diff file. * src/sci_wrappers.c: Added sci_find_bracematch(). * src/keybindings.c: Added keyboard shortcut Ctrl+< to jump between matching braces(closes #1571283). * doc/geany.docbook: Updated missing keybindings. 2006-10-10 Enrico Tröger * src/document.c: Connect only once to the "sci-notify" signal. * scintilla/CellBuffer.cxx, scintilla/Document.cxx, scintilla/include/Scintilla.h: Applied patch from Armel Asselin (thanks). It adds SC_START_ACTION notification which is required for Geany's new Undo system. * src/document.c, src/sci_cb.c, src/callbacks.c: Finished new Undo system. Now some more actions can be undone and also redone. * src/sci_cb.c: Got rid of goto usage and added auto completion for monitor construct for filetype Ferite. * src/highlighting.c, data/filetypes.css: Fixed several highlighting errors, added new styles: identifier2, important and id. 2006-10-09 Nick Treleaven * src/win32.c, src/geany.h, src/callbacks.c, src/search.c, src/document.c, src/document.h, src/prefs.c, src/dialogs.c, src/main.c, src/ui_utils.c: Removed the GEANY_MAX_OPEN_FILES limit, using a dynamic array. 2006-10-09 Enrico Tröger * src/dialogs.c: Made string "Permissions" in the file property dialog translatable. 2006-10-08 Enrico Tröger * src/highlighting.c, data/filetypes.ferite: Added some new keywords. * src/sci_cb.c: Added auto completion for iferr construct for filetype Ferite. * src/socket.c: Added additional header files for compatibility with FreeBSD. 2006-10-08 Nick Treleaven * tagmanager/tm_source_file.c: Only parse tags once for simple parsers. 2006-10-06 Enrico Tröger * tagmanager/python.c: Improved Python parser to support nested classes. * src/filetypes.c, src/document.c: Implemented simple "shebang" detection. It is used prior to the filename extension detection. * src/highlighting.c, data/filetypes.latex: Changed foreground colour for LaTeX style "math" to differentiate it from the "comment" style. 2006-10-04 Enrico Tröger * src/ui_utils.c, src/main.c, src/document.c, src/callbacks.c: Renamed ui_build_show_hide() in ui_update_build_menu(). * src/filetypes.c, src/ui_utils.c: Fixed crash when using "Make object" on new files(closes #1570818). 2006-10-03 Enrico Tröger * src/callbacks.c: Save configuration(i.e. list of open files) as late as possible and save the filetype build commands first shortly before quitting. * doc/geany.docbook, doc/geany.1.in, src/main.c, src/document.c: Reordered command line options alphabetically. Added new command line option --line to set the initial line for the first opened file. * data/filetypes.sh, src/highlighting.c: Added keyword "until". 2006-10-02 Nick Treleaven * src/templates.c: Added a blank line indent for templates D, HTML, PHP. * src/symbols.c, src/symbols.h, src/highlighting.c, src/makefile.win32, src/Makefile.am, po/POTFILES.in: Move global tags code to symbols.c. Added symbols_global_tags_loaded(), symbols_get_global_keywords(). * src/callbacks.c, src/sci_cb.c, src/sciwrappers.c, src/sciwrappers.h, src/document.c: Change sci_get_line to return a NULL terminated string. Fix memory leak and possible invalid read in sci_cb_auto_latex(). 2006-10-01 Enrico Tröger * configure.in: Use datarootdir for defining paths to fix autoconf 2.60 problems(thanks to Christoph Berg for reporting). 2006-10-01 Nick Treleaven * src/callbacks.c, src/filetypes.c, src/filetypes.h, TODO: Save the build includes and arguments on quitting. 2006-09-30 Nick Treleaven * src/highlighting.c, src/highlighting.h: Changed StyleSet struct to use Style array, which can use less memory. Added separate struct for the common style set. Also use a struct for tracking the loaded global tags files. Renamed some static functions. * src/document.c, src/ui_utils.c: Clear the symbol list when opening a file with no tags. 2006-09-29 Enrico Tröger * src/filetypes.c, data/filetype_extensions.conf: Added pattern *.agi for filetype Perl (closes #1567355). * doc/geany.docbook: Updated information for Debian and Gentoo packages. * New release: Geany 0.9 "Kintaro". * THANKS, src/about.c: Changed credits of topi. 2006-09-27 Nick Treleaven * src/vte.c: Change VTE word selection chars to include paths. * src/highlighting.c, data/filetypes.common: Only override the default Scintilla selection style if foreground and/or background flags are set in filetypes.common. Also increase the current line background brightness. 2006-09-27 Enrico Tröger * src/sci_cb.c: Fixed broken autocompletion for filetype PHP. 2006-09-26 Enrico Tröger * win32-config.h: Enabled socket code on Windows. * src/socket.c: Re-enabled the gtk_window_present() call for Windows to pop up the main window. * src/utils.c, src/sci_cb.c: Enabled notification if file on disk has changed under Windows, it seems to work (closes #1557689). 2006-09-26 Frank Lanitz * po/nl.po, THANKS, configure.in, src/about.c: Added Dutch translation (Thanks to Kurt De Bree). 2006-09-22 Nick Treleaven * src/main.c: Apply toolbar style on startup (Fixes #1563125). * src/build.c, src/geany.h: Prevent a segfault if the Terminal tool is not set. Use cmd.exe as default Terminal tool on Windows. * scintilla/makefile.win32, src/makefile.win32, tagmanager/makefile.win32, makefile.win32: Let make clean continue when a file can't be deleted. 2006-09-21 Nick Treleaven * src/ui_utils.c: Fix a bug when clicking on a recent file. * src/callbacks.c, src/sciwrappers.c: Prevent a partial selection on a line being deleted when using CTRL-I to indent; also improve CTRL-Shift-I unindenting. Closes #1557963. 2006-09-20 Enrico Tröger * src/sci_cb.c: Don't start autocompletion in strings and comments. 2006-09-20 Nick Treleaven * src/search.c, src/search.h: Add whole word only matching option for Find in Files. Add fixed string matching option for Find in Files. Make fixed string, case sensitive matching default for efficiency. Sort filenames passed to Grep alphabetically. * src/socket.c: Don't move Geany to the current desktop when opening files remotely. 2006-09-18 Enrico Tröger * src/dialogs.c, src/callbacks.c: Fixed compiler warnings and removed unnecessary signal handler. 2006-09-17 Nick Treleaven * src/templates.h, src/templates.c: Move all static strings from templates.h to templates.c. * src/sci_cb.c: Fix sign comparison warning. * src/utils.c, src/msgwindow.c: Improve utils_get_current_time_string(). * src/ui_utils.c: Only reorder recent files menu when recent file loaded correctly. Reorder the recent file menu instead of recreating it. 2006-09-15 Nick Treleaven * src/ui_utils.h, src/ui_utils.c, src/callbacks.c, src/dialogs.c: Add ui_frame_new(). Run set includes build dialogs modally, keeping the same filetype. Updated set includes & arguments dialog layout & text. * src/build.c: Don't print the g_spawn argv strings in build_run_cmd() on the status bar. 2006-09-12 Enrico Tröger * geany.glade, src/interface.c, src/callbacks.c, src/keybindings.c: Added menu items for toggle line commentation. Changed some mnemonics in the "format" submenu. * src/callbacks.c, src/keybindings.c: Added keyboard shortcuts for "Convert Selection to lower-case". 2006-09-12 Frank Lanitz * data/pascal.tags: Adding data for unit x86. 2006-09-11 Enrico Tröger * src/socket.c: Made socket code for detecting running instances working under Windows. * src/win32.c, src/ui_utils.c, src/dialogs.c: Fixed compile warnings under Windows. * src/highlighting.c: Fixed a typo. * src/callbacks.c, src/build.c, src/main.c, src/prefs.c, src/ui_utils.c: Implemented Run command (from the build menu) under Windows, the other commands will follow somewhen. 2006-09-10 Enrico Tröger * src/sci_cb.c, src/keybindings.c, src/callbacks.c: Added comment toggle functionality to easily comment and uncomment a line with one shortcut (default Ctrl+B) (closes #1552184). 2006-09-09 Nick Treleaven * src/document.c, src/ui_utils.c: Reorder the recent files list if necessary when a file is (re)opened - closes #1552178. * src/msgwindow.c: Check msgwin visible before scrolling. * src/ui_utils.h, src/ui_utils.c, src/callbacks.c, src/callbacks.h, src/dialogs.c, src/dialogs.h, src/main.c: Move on_recent_file_activate, dialogs_create_recent_menu, dialogs_create_build_menu_gen, dialogs_create_build_menu_tex to ui_utils.c. Also make some functions static. 2006-09-08 Nick Treleaven * src/build.c, src/msgwindow.c, src/msgwindow.h: Show parsable errors in red; stderr and compile failure in dark red. * src/callbacks.c: Fix compilation problem with sci_cb_do_comment. * src/document.c: Quick fix for C89 compatibility. * src/msgwindow.c: Make C, C++, Ruby and Java error message parsing more tolerant so that linker errors are also parsed if debug line info is available. Group all gcc-like error message parsing information together. * src/msgwindow.c, src/msgwindow.h: Allow compiler and find messages to be added when the messages window is hidden. Add msgwin_show(). * src/build.c: Show messages window on build failure. Show build success message on status bar if messages window hidden. * src/document.c: Use handle_forced_encoding(), handle_encoding() and handle_bom() when opening files. 2006-09-07 Enrico Tröger * src/socket.c, src/main.c, src/callbacks.c: Moved the socket code from main.c to socket.c. * src/document.c: Remove an unchanged empty document when loading a new file (closes #1545129). 2006-09-06 Enrico Tröger * src/callbacks.c, src/document.c, src/ui_utils.c, src/sci_cb.c: Added own implementation of an Undo stack (not yet working). * src/utils.c, src/document.c: Convert tag names to UTF-8 before showing them in the sidebar. * src/document.c: Fixed a crash when a compiler output reports an error in a blank line(can happen in LaTeX). Thanks to Frank for reporting. 2006-09-05 Enrico Tröger * src/templates.c, src/document.c, src/filetypes.c: Added new file template for filetype HTML. * src/document.c, src/dialogs.c: Don't quit when an error occurs while saving changed files. 2006-09-05 Nick Treleaven * src/utils.c, src/utils.h, src/ui_utils.c, src/ui_utils.h, src/keybindings.c, src/about.c, src/treeviews.c, src/msgwindow.c, src/callbacks.c, src/notebook.c, src/sci_cb.c, src/keyfile.c, src/vte.c, src/document.c, src/prefs.c, src/main.c, po/POTFILES.in, src/Makefile.am, src/makefile.win32: Moved UI related utils from utils.c to ui_utils.c. 2006-09-04 Nick Treleaven * src/keyfile.c, src/main.c, src/main.h: Rename --no-socket, -s command-line option to --new-instance, -i. Add --no-session, -s command-line option to not load session files. Only save session when session files were loaded at startup. * doc/geany.docbook: Update command-line options and running instance behaviour. * src/callbacks.c, src/callbacks.h, src/sci_cb.c, src/sci_cb.h, src/keybindings.c, src/document.c: Move current_word and clickpos to editor_info struct in sci_cb.c. Move on_editor_button_press_event to sci_cb.c. 2006-09-03 Nick Treleaven * src/main.c: Open a new instance without loading session files if socket already exists and no filenames are specified on the command-line. 2006-09-03 Enrico Tröger * src/utils.c: Save All button is also active when only one file is changed(improves usability). 2006-09-02 Enrico Tröger * src/document.c, src/search.c: Escape special characters when shown in the status window after "Replace All" or replacing a selection. Set the focus to the replace entry widget when pressing the tabulator key in the find entry widget in the replace dialog. Set the focus to the find entry widget when pressing the tabulator key in the directory entry widget in the FIF dialog. 2006-09-02 Nick Treleaven * src/utils.c, src/sci_cb.c, src/main.c: Fixed C89 variable declaration and two sign comparison warnings. * src/document.c, src/document.h: Add document_get_current(). * src/msgwindow.c: Use parse_file_line() for grep and compiler error messages. Add error message support for D, also for the GDC frontend. 2006-09-01 Enrico Tröger * src/document.c, src/dialogs.c, src/prefs.c, src/callbacks.c, src/interface.c, geany.glade: Fixed some typos. * src/filetypes.c, src/highlighting.c, src/keybindings.c, src/sci_cb.c, data/filetypes.html, data/filetype_extensions.conf, src/callbacks.c, src/msgwindow.c: Split filetype PHP/HTML into PHP and HTML. 2006-09-01 Frank Lanitz * configure.in, po/vi.po: Added Vietnamese translation (Thanks Clytie Siddall). * THANKS, src/about.c: Added translator credits. 2006-08-31 Enrico Tröger * src/msgwindow.c, data/filetypes.ferite: Improved parsing compiler messages when using the ferite compiler. Added some primitives and improved compiler settings for Ferite. 2006-08-30 Enrico Tröger * configure.in, src/callbacks.c, src/geany.h, src/main.c: Removed the whole FIFO code and replaced it with support for (Unix Domain) Sockets(including Windows support, but not yet done). * src/vte.c, src/callbacks.c, src/document.c: Change the current working directory within the VTE also when a new file is saved. 2006-08-29 Enrico Tröger * src/sci_cb.c: Added auto completion for LaTeX command "begin". 2006-08-28 Enrico Tröger * geany.glade, src/interface.c: Fixed typo in a tooltip text. * THANKS, src/about.c: Added translator credits. * src/treeviews.c, src/utils.c: Fixed a crash when switching between several filetypes. 2006-08-27 Frank Lanitz * configure.in, po/cs.po: Added Czech translation (Thanks Petr Messner). 2006-08-27 Enrico Tröger * tagmanager/parsers.h, tagmanager/c.c, data/filetype_extensions.conf, data/filetypes.diff, data/filetypes.ferite, src/highlighting.c, src/filetypes.c, src/msgwindow.c: Added new filetypes Diff and Ferite. * src/search.c: Applied patch from Stefan Oltmanns to add the possibility to keep the Replace dialog open. 2006-08-26 Enrico Tröger * src/geany.h, src/main.c, src/utils.c: Fixed weird behaviour of Save all tool button and menu item. * src/document.c: Fixed missing styling settings on new files (needs to be tested). Now the filetype sub menu in the document file menu will be updated when the filetype is set by the filename on new files. 2006-08-23 Enrico Tröger * src/prefs.c, src/vte.c: Added new VTE settings to the preferences dialog. Improved ignore menu bar accelerator setting. Keep current working directory when restarting the VTE (happens when hitting Ctrl+C). * src/document.c: Added counter when using "Replace All" and display the count of replacements in the status window. 2006-08-23 Frank Lanitz * src/highlighting.c, data/pascal.tags: Added auto completion for PASCAL. * data/latex.tags: Update of catalog. 2006-08-22 Nick Treleaven * src/callbacks.c: Fix quit confirmation message with no files open. 2006-08-22 Enrico Tröger * src/vte.c, src/prefs.c, src/keyfile.c, src/utils.c: Save all VTE settings in an own VTE section in the configuration file instead of using an unhandy string list. Added new settings: ignore menu bar accelerator and define the shell which is started within the VTE. (Code not yet complete, might be buggy, GUI stuff is missing) * tagmanager/pascal.c: Added recognition for keyword "type". 2006-08-21 Enrico Tröger * src/images.c, src/notebook.c: Applied patch from Củ Văn Chuối to enlarge the tab close icon. This should fix some display issues. * scintilla/*: Updated Scintilla to version 1.71. 2006-08-20 Enrico Tröger * src/build.c, src/document.c, src/document.h, src/geany.h, src/highlighting.c, src/main.h, src/sci_cb.c, src/search.c, src/templates.c, src/utils.c, src/vte.c: Moved prototype for geany_debug() to main.h. Moved declaration of document struct to document.h. * src/sci_cb.c: Keep selection when commenting and uncommenting code. 2006-08-20 Nick Treleaven * src/callbacks.c, src/main.c: Fix opening more than one file from the command-line (with fifo). * src/geany.h, src/callbacks.c, src/Makefile.am, src/main.c, src/main.h: Moved HAVE_FIFO MyApp fields to fifo_info struct in src/main.c. Prevent unnecessary 'does not look like a filename' debug messages. Added fifo_finalize(). * src/geany.h, src/filetypes.h, document.h, src/highlighting.h, src/sci_cb.h, src/highlighting.c, src/sciwrappers.c: Remove filetypes.h and Scintilla includes from geany.h. * src/document.h: Add VALID_DOC_IDX macro. * src/utils.h, src/utils.c, src/callbacks.c, src/keybindings.c, src/sci_cb.h, src/sci_cb.c, src/dialogs.c, src/filetypes.h, src/filetypes.c: Move utils_brace_match to sci_cb.c. Move utils_find_current_word to sci_cb.c. Move utils_create_file_filter to filetypes.c. 2006-08-19 Enrico Tröger * geany.glade, src/interface.c, src/keybindings.c, src/utils.c, src/geany.h, src/callbacks.c, src/main.c, src/keyfile.c: Added menu items to insert configurable date/time strings. * src/dialogs.c, src/callbacks.c: Replaced dialogs_show_make_target() by dialogs_show_input() to have a general input dialog. * src/sci_cb.c: Comment already commented lines, too (re-closes #1521714). 2006-08-19 Nick Treleaven * src/callbacks.c: Fix a segfault at startup if terminal follow path setting is enabled. * src/geany.h, src/callbacks.c, src/keyfile.c, src/vte.c, src/vte.h, src/prefs.c, src/main.c: Move HAVE_VTE MyApp settings to vte_info struct in src/vte.c. * src/vte.c, src/vte.h: Add vte_get_working_directory adapted from Terminal by os-cillation. * src/vte.c, src/keyfile.c: Remember the VTE current directory. * src/callbacks.c: Only send VTE cd command if directory is different. 2006-08-18 Enrico Tröger * src/document.c: Use codepage SC_CP_UTF8 because we use always GTK even under Windows. 2006-08-18 Nick Treleaven * src/keyfile.c: Fix a small memory leak in configuration_load. * src/dialogs.c: Change Don't save button icon and add mnemonic. * src/main.c: Fix building on win32 - thanks to Củ Văn Chuối. * src/dialogs.c, src/dialogs.h: Add dialogs_show_question_full for custom buttons and extra text. Don't show message dialogs in the window manager taskbar. * src/utils.c: Use Reload button for utils_check_disk_status dialog. * src/callbacks.c: Improve Reload and Quit dialog. Share on_reload_as_activate code for reloading. * tagmanager/d.c, tagmanager/c.c, tagmanager/Makefile.am: Merged tagmanager/d.c with tagmanager/c.c, which also adds user function calltips support for D. 2006-08-17 Nick Treleaven * src/callbacks.c, src/callbacks.h, src/main.c: Move signal_cb to main.c. * src/main.c: Move main_init command line settings to parse_command_line_options. Use setup_paths, locale_init, parse_command_line_options, setup_config_dir in main(). * src/msgwindow.c: Reorder widget lookup; ensure FIF dir is set. * src/main.c: Fix Show messages window checkbox state when -m used. 2006-08-15 Nick Treleaven * tagmanager/c.c: Backported calltips workspace support for C-like user files from Anjuta. * src/keybindings.c, src/sci_cb.c, src/sci_cb.h: Return to showing calltips after successful autocompletion. Use separate functions for html and tag autocompletion. 2006-08-15 Enrico Tröger * src/callbacks.c: Made increase/decrease indentation working with selections. Keep the old cursor position when working on a single line (do not jump to line start). * src/sci_cb.c: Fixed "while" and "switch" autocompletion. * src/highlighting.c, data/filetypes.common, doc/geany.docbook: Use the filetype's default style(SCE_*_DEFAULT) as the main default style(STYLE_DEFAULT). * src/sci_cb.c: Improved HTML "" auto completion to use the indentation better. * src/filetypes.c, src/highlighting.c, src/msgwindow.c, data/filetypes.fortran, data/filetype_extensions.conf, scintilla/Makefile.am, scintilla/LexFortran.cxx, scintilla/KeyWords.cxx, tagmanager/fortran.c, tagmanager/Makefile.am, tagmanager/parsers.c: Added new filetype Fortran 77. 2006-08-14 Nick Treleaven * src/sci_cb.c: Applied patch from Jens Granseuer to fix build with gcc 2.95 (closes #1539502). * src/build.c, src/geany.h, src/msgwindow.c, src/msgwindow.h, src/callbacks.c, src/search.c, src/search.h, src/main.c: Store build information instead of using app->cur_idx. Assume C-like warning messages when running make when the current file is a Makefile. Moved some msgwin setup and cleanup code to msgwindow.c. * src/utils.c, src/utils.h: Moved utils_parse_compiler_error_line to msgwindow.c. 2006-08-13 Enrico Tröger * src/document.c: Use wrappers for converting between utf8 and locale encoding. Fixed small memory leak. * src/vte.c: Added the GTK IM menu items to the VTE popup menu. * src/utils.c, src/dialogs.c, src/build.c, src/callbacks.c, src/search.c, src/keyfile.c: Use utf8/locale encoding wrappers. * data/filetypes.common, src/highlighting.c, src/geany.h, src/keyfile.c, src/prefs.c, src/document.c, src/interface.c, geany.glade, doc/geany.docbook: Added colour values for indentation guides and white space. Made hard coded SCI_AUTOCSETMAXHEIGHT changeable and added an option in the preferences dialog. * src/sciwrappers.c: Added sci_set_autoc_max_height(). 2006-08-12 Enrico Tröger * src/document.c: Removed unnecessary code in document_replace_tabs(). Really take tab width when replacing instead of using width = 4. * src/Makefile.am: Applied patch from Fryderyk Dziarmagowski to fix build problem with linker flag "-Wl,--as-needed" (closes #1539239). 2006-08-12 Nick Treleaven * src/search.c: Enable case sensitive when regex search enabled. Some label text changes for the dialogs. Use hbox packing in Find and Find in files dialogs. Add select directory button for Find in files. * src/utils.c, src/utils.h: Add wrappers for converting between utf8 and locale encoding. 2006-08-11 Nick Treleaven * src/keybindings.c, src/geany.h, src/callbacks.c, src/callbacks.h, src/search.c, src/search.h, src/dialogs.c, src/main.c, src/dialogs.h: Group search related code. 2006-08-11 Enrico Tröger * src/document.c: Changed SEARCH_NOT_FOUND_TXT. Fixed possible segfault when replacing tabs by spaces. * tagmanager/python.c: Fixed wrong classification of local functions as methods(thanks to Sebastian Koch). * src/sci_cb.c: Fixed segfault when try to (un)comment some code and no filetype is set(reported by John Gabriele). 2006-08-09 Enrico Tröger * doc/geany.docbook: Removed section about global ctags, the information were obsolete. Added section about file encodings and the Unicode Byte-Order-Mark. * doc/images/*: Updated screenshots. * New release: Geany 0.8 "Kadir". 2006-08-09 Nick Treleaven * src/main.c: Add startup debug message showing GTK+ runtime version. * src/notebook.c: Use native tab DnD reordering on GTK+ 2.10; closes #1519650. 2006-08-08 Nick Treleaven * src/notebook.c: Fixed GTK 2.6 workaround for DnD tab reordering so it works on the first attempt. * src/utils.c, src/highlighting.c, src/geany.h, src/treeviews.c, src/callbacks.c, src/keyfile.c, src/encodings.c, src/dialogs.c: Fixed all sign comparison warnings. 2006-08-07 Enrico Tröger * src/callbacks.c: Applied patch from Củ Văn Chuối to re-enable XIM support. Thanks! 2006-08-07 Nick Treleaven * src/callbacks.c: Allow Find even when the replace text is the same. Place the cursor in "" for insert blank include. * src/utils.c, src/utils.h, src/callbacks.c, src/document.c: Move recent file item to the top when it is clicked on. 2006-08-06 Nick Treleaven * doc/geany.docbook: Improved search section; added all find and go to commands. Added Filetype extensions section. Grouped configuration file sections into a chapter. 2006-08-05 Nick Treleaven * src/callbacks.c: Allow partial word selection for Find Usage. * src/keyfile.c, src/filetypes.c, src/filetypes.h: Use unique filetype id in geany.conf to avoid new filetype problems. Make unique id numbers compatible with Geany 0.7 filetype order. * src/highlighting.c: Fix loading Perl, TCL system config files first. 2006-08-04 Nick Treleaven * src/callbacks.c, src/callbacks.h, src/dialogs.c: Disable word and word start matching when regexes are enabled. Don't hide the Find dialog after searching; use Close button. * src/filetypes.c: Set radio item None for new files. 2006-08-03 Enrico Tröger * geany.glade, src/callbacks.c, src/filetypes.c, src/filetypes.h, src/encodings.c, src/encodings.h, src/interface.c, src/utils.c: Made document related submenus(filetype, encoding, line endings) radio buttons for better usability. 2006-08-03 Nick Treleaven * src/utils.c, src/utils.h, src/sci_cb.c: Wrap calltip and prevent it obscuring the current line. 2006-08-02 Enrico Tröger * src/callbacks.c: Don't set file as changed when changing encoding to the same one. * src/document.c, src/callbacks.c, dialogs.c: Fixed wrong behaviour of Save As on unchanged files. 2006-08-01 Enrico Tröger * geany.glade, src/interface.c, src/callbacks.c, src/keybindings.c, src/main.c, src/sciwrappers.c: Added some menu items to the edit menu for editing tasks. Added keyboard shortcuts for increase/decrease of line indentation (closes #1521717). 2006-08-01 Nick Treleaven * src/interface.c, src/utils.c, src/utils.h, src/callbacks.c, src/keyfile.c, src/document.c, src/prefs.c, geany.glade: Added Auto indentation and Line wrapping options to Preferences dialog. Split up Miscellaneous items into Display and Features. Renamed Change Selection and Run toolbutton. * src/keyfile.c: Change default for removing trailing spaces to off. * src/callbacks.c: Clear search flags when using find toolbar entry. Removed some unnecessary static variables. * document.c, document.h, prefs.c: Apply the tab width setting for new documents. * src/keyfile.c, data/filetype_extensions.conf, Makefile.am: Install a system filetype_extensions.conf which can be overridden. * src/filetypes.c data/filetype_extensions.conf: Add Make pattern to recognise makefile*. * src/keyfile.c, src/keyfile.h, src/main.c: Add hidden option -g to generate filetype_extensions.conf. 2006-07-31 Enrico Tröger * src/keybindings.c, src/sci_cb.c: Added functionality to uncomment code and added keyboard shortcut Ctrl+Shift+D for this (closes #1521714). 2006-07-30 Enrico Tröger * doc/geany.docbook, data/filetypes.common, src/.c: Added style to change the colour of the caret(closes #1530486). 2006-07-29 Nick Treleaven * src/msgwindow.c, src/msgwindow.h, src/callbacks.c, src/search.c: Remember Find in files directory for opening grep results. * Makefile.am: Add win32 build files to EXTRA_DIST. 2006-07-28 Enrico Tröger * src/search.c, src/callbacks.c, src/dialogs.c: Added some options to the Find in files dialog, made search directory editable. 2006-07-28 Nick Treleaven * src/sciwrappers.h: Set PLAT_GTK before including ScintillaWidget.h. * src/Makefile.am, geany_windres.rc.in: Correct a typo. * scintilla/makefile.win32, src/makefile.win32, makefile.win32, tagmanager/makefile.win32, win32-config.h, geany_private.rc: Add makefiles for building on win32. 2006-07-27 Enrico Tröger * src/sciwrappers.c, src/callbacks.c, src/utils.c, src/dialogs.c, src/keybindings.c: Removed unused colour parsing functions. Let the colour chooser pick the colour under the cursor. * data/filetypes.*, src/highlighting.c, src/utils.c: Fixed bug in parsing strings containing hex values, modified the styles to keep the syntax highlighting consistent. * src/main.c: Removed startup warning. * src/geany.h, src/main.c: Added Select All item to sensitive buttons. * src/win32.c, src/dialogs.c, src/callbacks.c: Let the colour chooser pick the colour under the cursor(Win32 code). Added some sanity checks. 2006-07-26 Enrico Tröger * src/Makefile.am: Added target to remove geany_res.res when cleaning. * src/geany.h, src/main.c, src/callbacks.c, src/highlighting.c, src/document.c, src/dialogs.c, src/prefs.c, src/utils.c, src/win32.c, src/keybindings.c, src/gb.c, src/about.c: Removed macro GEANY_WIN32, use G_OS_WIN32 instead. Introduced global variables for PACKAGE_DATA_DIR and PACKAGE_LOCALE_DIR, removed macro DOCDIR (these changes are important for the Windows port). 2006-07-26 Nick Treleaven * src/win32.c: Don't add .c extension for All files filter. Only set open tool dialog path if it exists. * src/keybindings.c: Use CTRL-SHIFT-space for Windows show calltips. * src/prefs.c: Never show compile & run toolbuttons on Windows and hide the prefs option to show them. * src/main.c: Disable the Compiler tab instead of hiding it so that messages window tabs have the right index on switching. * src/utils.c: Only replace untitled.x within the first 2 lines. 2006-07-25 Enrico Tröger * src/encodings.c, src/document.c, src/keyfile.c, src/main.c: Save default encoding for new files as charset string. * src/filetypes.c: Reordered the filetypes (just a cosmetic change). * src/win32.c, src/utils.c: Removed title argument from win32_message_dialog because it is defined by the dialog type. Added simple wrapper function win32_open_browser(). * src/dialogs.c, src/main.c, src/document.c, src/callbacks.c: Removed some unneeded functions to avoid duplicate code. * src/callbacks.c: Fixed broken Find usage. Put "No matches" message also in the message window. * Makefile.am, geany_windres.rc, configure.in, src/Makefile.am, scintilla/Makefile.am, src/callbacks.c, tagmanager/tm_work_object.c, tagmanager/ctags.c, tagmanager/get.c: Small changes to get cross compiling using mingw32 suite working. * tagmanager/get.c: Applied patch to fix building with gcc 2.95 (closes #1528516, thanks). 2006-07-24 Enrico Tröger * src/geany.h, tagmanager/strlist.c, tagmanager/tm_project.c, tagmanager/parse.c, tagmanager/general.h, tagmanager/ctags.c, tagmanager/tm_workspace.c: Fixed some cross compiling/Win32 issues. * geany.glade, src/callbacks.c, src/document.c, src/interface.c, src/main.c: Added menu item to the document menu to add/remove BOM. Replaced switch_notebook_page by ignore_callback flag. * src/win32.c, src/dialogs.c: Convert Unicode strings to wide characters to avoid weird display. * src/document.c: Set CR/LF as EOL mode on new files on Windows. 2006-07-24 Nick Treleaven * src/geany.h: Use generic font names & increase the default size. * src/notebook.c: Use tab reorder workaround only if GTK runtime <2.8. * src/utils.c, src/about.c: Change 2 paths to use G_DIR_SEPARATOR_S. * src/dialogs.c: Wait for Save as dialog to run before closing tab. 2006-07-23 Enrico Tröger * src/build.c: Search terminal program in PATH (closes #1527203). * src/documents.c: Fixed some mistakes from last commit. * src/dialogs.c, src/utils.c, src/document.c, src/geany.h: Renamed document element unicode_bom in has_bom. * src/callbacks.c: Let Find usage search for the current selection if there is one. 2006-07-22 Nick Treleaven * src/dialogs.c: Make Find and Replace dialogs more compact. * src/treeviews.c: Fix a warning when updating open files treeview. 2006-07-22 Enrico Tröger * src/callbacks.c, src/utils.c, src/document.c, src/encodings.c, src/geany.h, src/main.c, src/dialogs.c, geany.glade, src/interface.c, src/sci_cb.c, src/keyfile.c: Added Unicode BOM detection. Added "Reload as" menu item to force opening a file with a specified encoding(both were patches from Stefan Oltmanns). * src/callbacks.c: Fixed two issues when showing / hiding the sidebar. * src/filetypes.c: Added *.cfg as extension for config files. * src/treeviews.c, src/notebook.c: Keep the list of open files in sync when reordering notebook tabs. 2006-07-21 Nick Treleaven * src/dialogs.c: Prevent using Find in files for unnamed files. 2006-07-21 Enrico Tröger * src/geany.h, src/main.c, src/callbacks.c: Introduced app->ignore_callback to ignore callback actions when changing the state of GUI elements. * geany.glade, src/interface.c, src/main.c, src/callbacks.c, src/utils.c, src/prefs.c, src/keybindings.c: Added menu item View->Show Sidebar and improved code around it. 2006-07-20 Enrico Tröger * src/highlighting.c: Unset fold.compact setting. 2006-07-20 Nick Treleaven * TODO: Added 3 more items discussed on the ML. * doc/scikeybinding.docbook: Commented out some keys not working. * src/dialogs.c: Share find/replace common checkbox setup code. * src/build.c, src/build.h, src/sciwrappers.h, src/dialogs.c, src/dialogs.h: Don't include geany.h. * src/geany.h, src/callbacks.h: Moved GEANY_RESPONSE_* to callbacks.h. * src/callbacks.c, src/document.c, src/document.h, src/dialogs.c: Added Find button to Replace dialog to skip a match. Change Replace button to find first & use current selection. Ask whether to wraparound when replacing and no next match is found. 2006-07-19 Enrico Tröger * src/highlighting.c, data/filetypes.common: Highlighting of current line can be disabled. * geany.glade, src/interface.c: Fixed typo. * src/utils.c, src/callbacks.c, src/dialogs.c: Improved replacing escape sequences in Find and Replace dialog (thanks to Stefan Oltmanns). 2006-07-18 Nick Treleaven * src/sciwrappers.c, src/sciwrappers.h, src/document.c: Fix replacing the right length of text matched from a regex. Add support for back references when replacing with regex. Improve the speed of replace all/replace in selection. Don't lose the selection range after replacing in selection. * src/callbacks.c, src/callbacks.h, src/document.c, src/dialogs.c, doc/geany.docbook: Use more POSIX-like syntax for regular expression bracket matching. Prevent searching backwards with a regex (unsupported). Scroll in view after the last replacement for replace all/selection. 2006-07-18 Enrico Tröger * src/dialogs.c, src/callbacks.c: Added option to replace escape sequences in Find and Replace dialog. * doc/Makefile.am: Reverted last change, we want to use xmlto. * src/encodings.c: Restored original order of the encodings, kept the sorted order in the document menu. * src/notebook.c: Compile notebook_motion_notify_event_cb() only with GTK 2.6 (again). * src/about.c: Made "built on" string translatable. 2006-07-17 Nick Treleaven * doc/scikeybinding.docbook, doc/geany.docbook, doc/geany_gpl.docbook: Moved external appendix elements to geany.docbook to validate ok. 2006-07-17 Enrico Tröger * src/utils.c, src/document.c, src/callbacks.c: Moved document related functions from utils.c to document.c. Keep cursor position when replacing tabs by spaces. * doc/geany.xsl: Added UTF-8 as default encoding. * doc/Makefile.am: Replaced xmlto command by xsltproc. * doc/geany.docbook: Added reference for the GPL appendix. 2006-07-16 Enrico Tröger * src/encodings.c: Reordered encodings in the file menu, divided into subregions. * geany.glade, src/interface.c: Added missing mnemonics to file menu. * src/document.c: Added filename to an error message. * src/encodings.c: Removed function encodings_get_encodings(). * src/utils.c: Simplified locale detection and little speed up. * src/main.c, src/document.c, src/geany.h: Removed code for alternative scrolling(it was not better). * src/sci_cb.c, src/callbacks.c, src/utils.c, src/highlighting.c, src/main.c, data/html_entities.tags, Makefile.am: Moved HTML entities from sci_cb.h to data/html_entities.tags. 2006-07-16 Nick Treleaven * doc/scikeybinding.docbook, doc/geany.docbook: Added Scintilla keyboard commands appendix taken from the SciTE documentation section 'Keyboard Commands'. 2006-07-15 Enrico Tröger * src/keybindings.c, src/sci_cb.c: Show auto completion list immediately when called by a keybinding. * geany.glade, src/interface.c, src/prefs.c, src/geany.h, src/keyfile.c, src/utils.c: Toolbar items for file operations can also be hidden. 2006-07-15 Nick Treleaven * keybindings.c, keybindings.h: Add keybinding for Find in files. * doc/geany.docbook: Updated Make command names and keybindings. * src/vte.c: Fix applying vte settings on startup and prevent the message window vertical scrollbar being hidden. 2006-07-14 Nick Treleaven * src/search.c: Give accurate message on finishing finding in files. * src/callbacks.c: Use locale encoding for Find in files and remember previous searches. 2006-07-14 Enrico Tröger * src/filetypes.c, src/highlighting.c, tagmanager/tm_tag.c, tagmanager/tm_workspace.c: Fixed autocompletion for filetype C++. * src/utils.c: Removed unneeded functions: utils_glist_strings_free() and utils_glist_from_string(). * src/encodings.c: Fixed wrong charset detection on UTF-8 (and maybe other) systems. 2006-07-13 Nick Treleaven * src/build.c, src/interface.c, src/utils.c, src/utils.h, src/geany.h, src/msgwindow.c, src/msgwindow.h, src/callbacks.c, src/callbacks.h, src/keyfile.c, src/search.c, src/search.h, src/prefs.c, src/dialogs.c, src/main.c, src/dialogs.h, src/Makefile.am, geany.glade: Added basic Find in files search functionality. 2006-07-11 Enrico Tröger * src/dialogs.c: Moved dialogs_show_prefs_dialog() to src/prefs.c. * geany.glade, src/interface.c, src/vte.c, src/prefs.c, src/dialogs.c, src/geany.h, src/main.c, src/callbacks.c, src/keybindings.c, src/keyfile.c, src/utils.c: Improved toolbar popup menu. Added new preferences tab for toolbar settings, several toolbar buttons can be hidden. Added Undo and Redo toolbar buttons (closes request #1519261). * src/sci_cb.c, src/keybindings.c: Added return value and tag name to the calltip. 2006-07-11 Nick Treleaven * src/main.c: Prefix command-line opened files with the current directory so relative paths will work better. 2006-07-10 Enrico Tröger * src/sci_cb.c: Autocompletion only works on blank lines. * src/callbacks.c, src/dialogs.c: Added "Replace in all open files" option in the replace dialog. 2006-07-09 Enrico Tröger * tagmanager/d.c, tagmanager/Makefile.am, tagmanager/parsers.h, src/filetypes.c, src/highlighting.c, src/utils.c, src/build.c, src/templates.c, data/filetypes.d: Added new filetype D(patch by Christoph Berg, thanks). 2006-07-08 Nick Treleaven * src/keyfile.c: Fix saving the terminal tool on quitting. * src/keyfile.c, src/main.c: Improve switching out of fullscreen after startup. 2006-07-08 Enrico Tröger * src/encodings.c: Made encoding descriptions translatable. * src/notebook.c: Compile notebook_motion_notify_event_cb() only with GTK 2.6. 2006-07-07 Enrico Tröger * src/prefs.c: Fixed bug when saving VTE settings. * src/keybindings.c, src/utils.c, src/callbacks.c, src/geany.h, src/prefs.c, src/keyfile.c: Improved behaviour of toggle sidebar after a restart. Introduced new flag sidebar_visible, renamed configuration keys. 2006-07-06 Nick Treleaven * src/keybindings.c, src/keybindings.h, src/dialogs.c: Add keybinding for Make object, update Make descriptions. 2006-07-05 Nick Treleaven * src/sciwrappers.c: Make sci_goto_line_scroll work better with line wrapping and folding. * src/callbacks.c, src/dialogs.c: Add Make object command to compile the current file. Added some separators and renamed Build with make items. 2006-07-03 Nick Treleaven * src/utils.c, src/dialogs.c: Fix a problem with the recent files menu. * src/utils.c, src/sciwrappers.c, src/sciwrappers.h: Scroll to 1/4 of visible lines when going to a line number. 2006-07-03 Enrico Tröger * doc/Makefile.am: Fixed wrong dependency in target 'install'. 2006-07-02 Enrico Tröger * src/callbacks.c, src/msgwindow.c, src/utils.c: Improved "Find usage", so it displays not "null" for unsaved files in the results, and unsaved file are also clickable. * geany.glade, src/interface.c, src/geany.h, src/keyfile.c, src/prefs.c, src/dialogs.c, src/main.c: Little redesign of the preferences dialog. New options for setting the placement of notebook tabs. * doc/Makefile.am: Minor improvements. * src/keyfile.c, src/geany.h, src/prefs.c, src/vte.c, src/callbacks.c, src/dialogs.c: Added option to disable the VTE follows path feature. * THANKS, configure.in, src/about.c: Added new Portuguese translation. 2006-07-02 Nick Treleaven * src/callbacks.c: For Find Usage, ignore unnamed files. 2006-07-01 Enrico Tröger * src/document.c, src/keybindings.c: Added shortcut for Select All. * src/main.c: Deiconify the main window when a new file is opened from the named pipe. * src/geany.h, src/keyfile.c: Moved some default values to geany.h. * doc/geany.docbook.c, doc/html/*: Added documentation for indicators and printing support. Updated keybindings actions and compile time options. 2006-07-01 Nick Treleaven * src/notebook.c: Don't prevent notebook tab focus because this disables the notebook arrows. * src/callbacks.c: Prevent a segfault if the VTE has not been loaded. * src/utils.c, src/utils.h, src/msgwindow.c: Add utils_get_current_time_string and fix getting the time string. * src/utils.c, src/utils.h, src/callbacks.c: Fix a segfault on Go to tag defn/decl if no files have tags. Add utils_find_tm_tag. * src/keyfile.c: Save the toolbar icon size when quitting. Set large toolbar icons by default. * src/keyfile.c: Use the user settings for toolbar icon size & style. 2006-06-30 Enrico Tröger * src/vte.c, src/callbacks.c: Change the path in the VTE widget when switching between files according to the path of the current file. Process the switch_page callback only once. * src/callbacks.c: Finally fixed the second call of the switch_page callback. * geany.glade, src/interface.c, src/callbacks.c, src/sci_wrappers.c: Added "Select All" menu item. * geany.glade, src/interface.c, src/document.c, src/sci_wrappers.c, src/prefs.c, src/geany.h: Improved settings for the long line marker, it can now be easily disabled or set to highlight the background of too long lines. 2006-06-29 Nick Treleaven * src/utils.c, src/utils.h, src/win32.c, src/callbacks.c, src/document.c, src/prefs.c: Apply fonts in Preferences when they are set and only if they have changed. Rename utils_set_font to utils_set_editor_font. 2006-06-29 Enrico Tröger * src/geany.h, src/build.c, src/callbacks.c, src/keyfile.c, src/utils.c, src/prefs.c: Renamed tools settings from build_* in tools_*. * src/main.c: Ignore SIGPIPE to prevent crashes when running external programs. * src/geany.h, src/dialogs.c, src/callbacks.c, src/keyfile.c, src/utils.c, src/prefs.c, geany.glade, src/interface.c, src/keybindings.c, src/document.c: Implemented simple printing support. * src/utils.c: Added function is_opening_brace(). * src/sci_cb.c: Use is_opening_brace() for better handling of calltips. * src/callbacks.c: Create a new tm_source_file object if a file is renamed, otherwise tagmanager won't work correctly. 2006-06-28 Enrico Tröger * src/utils.c, src/keyfile.c: Fixed weird behaviour of the recent files list. * src/document.c: Fixed a small typo. Skip converting from UTF-8 in UTF-8 when saving. Show an error messages dialog if the conversion into an encoding failed. 2006-06-27 Enrico Troeger * data/filetypes.php, data/filetypes.pascal, src/callbacks.c, src/build.c: Parse stdout of compiler output too. * src/utils.c, data/filetypes.latex: Add support for parsing compiler output for LaTeX with latex's --file-line-error-style command line argument. Removed unneeded function utils_free_ptr_array(). * src/sci_cb.c: Fixed a crash when auto completion or call tips are used if no filetype was set. Added some sanity checks. 2006-06-27 Nick Treleaven * src/geany.h, src/keyfile.c: Add recent files items in the same order as they were saved. Remove app->recent_files and use g_strfreev in keyfile.c. * src/utils.c, src/utils.h, src/msgwindow.c: Make Status messages override the document statistics using utils_set_statusbar; don't use a fixed buffer for statistics. 2006-06-26 Enrico Troeger * src/sci_cb.c: Fixed broken auto completion for switch(). * src/document.c: Reload also the symbol list when reloading a file. * src/treeviews.c: Changed some titles to plural. Added own definitions for filetype Python. * src/filetypes.c, tagmanager/make.c: Add mk pattern for Makefile. * tagmanager/tm_source_file.c: Fixed bug which prevented tag creation for the first opened file. * src/document.c, src/callbacks.c: Removed unused code. * tagmanager/sh.c: Fixed missing tags beginning with underscore. * tagmanager/get.c: Fixed problem in preprocessor directive handling. * tagmanager/c.c: Fixed identification of prototypes of functions returning wchar_t * without the extern keyword. 2006-06-26 Nick Treleaven * src/document.c: Fix a possible segfault on quitting caused by processing GTK messages before status messages. 2006-06-25 Enrico Troeger * README, doc/geany.docbook: Added license notice Scintilla. * src/callbacks.c, src/keybindings.c: Remember the active page when toggling the sidebar. Simplified code for toggling messages window. * tagmanager/tm_tag.c, tagmanager/tm_workspace.c: Fixed wrong line numbers for found tags. 2006-06-25 Nick Treleaven * src/notebook.c, src/notebook.h, src/document.c, src/callbacks.c, src/callbacks.h: Enable drag reordering of tabs for GTK+2.8, and a temporary workaround for GTK+2.6. Add notebook_new_tab and update document_create_new_sci to use it; also remove on_tab_close_clicked. * src/notebook.c: Fix close tab button bug introduced in last commit. * src/callbacks.c, src/utils.c: Add clipboard functionality for find and go to line widgets, and Scribble widget. 2006-06-24 Enrico Troeger * src/utils.c: Replaced 'blank' by 'include "..."'. Fixed a bug in utils_brace_match() which prevents correctly matching. * src/document.c, src/sci_cb.c, src/filetypes.c: Made auto completion work only for the current filetype (i.e. it hides symbols from other filetypes). * tagmanager/options.c, tagmanager/parse.c: Removed unneeded code. * tagmanager/tm_workspace.c, tagmanager/tm_source_file tagmanager/tm_tag.c, tagmanager/tm_project, tagmanager/parsers.h, tagmanager/tm_file_entry.c, tagmanager/entry.c, src/highlighting.c, data/latex.tags, data/php.tags, Makefile.am: Added global auto completion tags for PHP and LaTeX. * src/keybindings.c, src/callbacks.c, src/sci_cb.c, src/main.c, src/geany.h, src/dialogs.c: Added some sanity checks to prevent crashes. * src/sci_cb.c, src/highlighting.c: Removed URL highlighting code(useless feature, never was enabled). * src/treeviews.c: Set policy settings for the scolledwindow. * scintilla/License.txt, scintilla/Makefile.am, doc/Makefile.am: Added Scintilla license file. 2006-06-23 Nick Treleaven * src/msgwindow.c: Add a timestamp to messages in the Status window (closes request #1509908). 2006-06-22 Enrico Troeger * src/utils.c: Reorganised C include file items, added C++ headers. * src/callbacks.c: Insert include statements and comment templates at mouse pointer position instead of cursor position. 2006-06-21 Enrico Troeger * src/keybindings.c: Added missing shortcut for "Close". * geany.glade, src/interface.c, src/prefs.c, src/keyfile.c, src/document.c, src/dialogs.c, src/encodings.h: Added option in the preferences dialog to replace tabs by spaces when saving a file. Added option for default encoding for new files. * scintilla/*: Updated Scintilla to version 1.70. 2006-06-20 Nick Treleaven * src/utils.c, src/utils.h, src/callbacks.c, src/document.c, src/document.h: Go back to the same line when reloading. Fix start selection bug when clicking in the current file if it has changed. * src/msgwindow.c, src/document.c: Also show status messages on the status bar. 2006-06-19 Enrico Troeger * THANKS, src/about.c: Added translator credits. * src/callbacks.c, src/encodings.c, src/utils.c, src/document.c, geany.glade, src/interface.c: Implemented encoding support to switch between different encodings. 2006-06-19 Frank Lanitz * configure.in: Added Spanish translation. More info at po/ChangeLog. 2006-06-19 Nick Treleaven * src/build.c, src/utils.c, src/utils.h, src/callbacks.c: Don't open files or go to errors automatically whilst compiling. Rename utils_goto_workspace_tag to utils_goto_file_line. 2006-06-18 Enrico Troeger * src/keybindings.c: Fixed a segfault when pressing shortcut for "Find Usage" and there is no open file. * src/dialogs.c: Removed unneeded label padding. 2006-06-18 Nick Treleaven * src/dialogs.c: Make Keyboard shortcuts dialog scrollable. * src/interface.c, geany.glade: Set toolbar button Compile text, Execute icon and insert separators before Quit and before Revert, Close. Move popup item Goto definition above declaration (used more often). Move recent files menu up to Open item. In prefs use 'Recent files' instead of 'MRU'. Correct indentation spelling. * src/keybindings.c: Show shortcut keys for Undo/Redo and popup items. * src/keybindings.c, src/geany.h, src/callbacks.c, src/sci_cb.c, src/callbacks.h: Use correct current_word buffer for popup menu item keybindings; also use GEANY_MAX_WORD_LENGTH. 2006-06-17 Nick Treleaven * src/keybindings.c, src/sciwrappers.c, src/sciwrappers.h, doc/geany.docbook: Made Duplicate Line command duplicate selection if present. * src/highlighting.c: Fixed styling for unmatched braces. * src/keybindings.h, doc/geany.docbook: Group toggle sidebar keybinding with toggle messages. * src/keybindings.c: Set keyboard shortcuts for switching tab pages. * src/keybindings.c, src/keybindings.h: Add keybindings for Find Usage, Go to definition/declaration, based on the current cursor position. * src/utils.c: Ensure null termination in utils_find_current_word. 2006-06-16 Enrico Troeger * src/build.c: Delete all indicators when starting a new compilation. * src/highlighting.c, data/filetypes.common: Added keys for linenumber and folding margin, added key for inverting all colours(if you like dark background). 2006-06-16 Nick Treleaven * src/notebook.c, src/notebook.h, src/main.c, src/Makefile.am: Added currently disabled drag reordering of notebook tabs. * src/callbacks.c: Execute: only save file if the run command uses it. * src/templates.c, src/templates.h, src/utils.c, src/utils.h, src/callbacks.c: Cache the current function name for efficiency in utils_get_current_function, other related fixes. * src/geany.h, src/callbacks.c, src/prefs.c, src/dialogs.c: src/main.c: Don't include keybindings.h in geany.h. 2006-06-15 Enrico Troeger * src/utils.c: Fixed a bug at opening files when clicking on compiler error messages(thanks Yura Semashko). * doc/Makefile.am: Fixed a bug which breaks "make install" when xmlto is not installed. 2006-06-13 Enrico Troeger * doc/Makefile.am: Renamed target html/index.html in htmldoc, added geany.xsl to EXTRA_DIST. * doc/geany.docbook: Removed appendix for keybindings, updated section keybindings to new action identifiers. * src/utils.c: Improved and finished switching between files when clicking on compiler error messages. * src/sciwrappers.c, src/document.c, src/highlighting.c, src/build.c, src/keyfile.c, src/prefs.c, src/interface.c, geany.glade, src/geany.h: Implemented code for setting indicators while compiling. 2006-06-12 Enrico Troeger * THANKS, src/about.c: Added translator credits. * src/main.c: Defined N_() again, so command line args are really translatable. * geany.glade, src/interface.c: Added missing mnemonic to build menu item. 2006-06-12 Frank Lanitz * configure.in: Added Belarusian and Russian language support. More Information at po/ChangeLog 2006-06-11 Enrico Troeger * geany.glade, src/interface.c: Added some mnemonics in the file menu. * src/highlighting.c: Replaced "/" by G_DIR_SEPARATOR_S. * src/utils.c: Fixed an issue, which let the build menu item insensitive once a new file w/o template was opened. * src/document.c: Fixed a segfault in document_find_by_filename(). * src/geany.h, src/callbacks.c, src/main.c: Improved the handling of GIOChannels(for named pipes), ensure they are closed in a proper way. * src/document.c: document_open_file() returns the index of the opened file. * src/utils.c: Open or switch to files when clicking on compiler error messages and the error message mentions another file than the opened one. 2006-06-10 Enrico Troeger * src/main.c: Made command line options translatable, hide compiler message treeview under Win32. * src/filetypes.c: Added additional patterns to detect configure scripts as Shell scripts. * src/dialogs.c: Made preferences dialog transient for the main window 2006-06-08 Enrico Troeger * src/keybindings.c, src/prefs.c, src/dialogs.c: Added labels for each defined shortcut to have a nicer representation in the dialogs. * geany.desktop.in: Removed duplicate entry for Encoding, now desktop-file-validate processes with no errors. * configure.in, doc/geany.1.in: Renamed geany.1 to geany.1.in to let it be processed by configure. Added GEANY_DATA_DIR to configure.in. * doc/Makefile.am, doc/geany.xsl: Removed unneeded code for generating geany.1. Added man_MANS to get installed the manpage. Changed build command for HTML documentation. Added new file doc/geany.xsl. * geany.spec.in: Some improvements, corrected download URL. * src/prefs.c: Hide make and terminal settings under Windows. 2006-06-07 Nick Treleaven * src/callbacks.c: Fixed segfault when inserting comments and no filetype is set. * src/callbacks.c, src/sciwrappers.c, src/sciwrappers.h: Use the character position under the mouse click for Go to definition/declaration and for overridden middle click text paste. * src/utils.c, src/utils.h, src/callbacks.c, src/document.c, src/document.h: Fix bug with Go to tag defn/decl when the filename is a link (TagManager dereferences linked filenames) 2006-06-06 Enrico Troeger * src/highlighting.c: Enabled folding for markup filetypes (HTML, XML, PHP, DocBook). * src/treeviews.c: Replaced "Members" by "Methods" to make it clearer. 2006-06-05 Nick Treleaven * doc/geany.docbook: Added save current file behaviour when building. * src/sci_cb.c: Fix empty white box glitch with tag autocompletion, also improves typing response efficiency. 2006-06-05 Enrico Troeger * src/dialog.c, src/callbacks.c: Added dialog to show defined keyboard shortcuts, this replaces the previous link to the documentation. * src/main.c, src/document.c: Fixed wrong setting of filetype when using "All files" as filetype. * src/dialogs.c: Fixed compiler warning "not enough variable arguments to fit a sentinel". 2006-06-04 Enrico Troeger * README, NEWS: updated for Geany 0.7 * src/keybindings.c: Changed default keybinding for menu_replace to Ctrl+E. * new release: Geany 0.7 "Ravik" * configure.in: Fixed svn detection code, changed version to 0.8. 2006-06-03 Enrico Troeger * src/sci_cb.c: Fixed bug in auto completion of constructs. * doc/geany.docbook: Added documentation for filetype definition files and definable keyboard shortcuts. 2006-06-03 Nick Treleaven * doc/geany.docbook: More minor corrections/rewording. Added Build System section. Some corrections to the Filetypes section. 2006-06-02 Enrico Troeger * src/highlighting.c, data/filetypes.css: improved colouring * src/utils.c: Added some sanity checks if filetype is NULL. * src/utils.c: Corrected readme text for filedefs/filetypes.README. 2006-06-02 Nick Treleaven * src/dialogs.c: Fix dialog path warnings for command-line files. * src/callbacks.c: Fix Go to tag declaration/definition. * tagmanager/docbook.c: Fix a segfault with missing id in element. * doc/geany.docbook: Minor changes to chapter 1. 2006-05-31 Nick Treleaven * scintilla/PlatGTK.cxx: Backport a Scintilla fix for crashes with recent GTK+ font issue. * src/keyfile.c: Discard old session files also for unsaved documents. 2006-05-30 Nick Treleaven * src/keyfile.c, src/sciwrappers.c, src/sciwrappers.h, src/document.c: Scroll session files in view after all resizing of the Scintilla widget and rename sci_scroll_to_line. * data/filetypes.pascal: Updated identifier styling as highlighting.c. 2006-05-30 Enrico Troeger * src/dialogs.c, src/main.c: Removed unneeded function dialogs_show_fifo_error(), fixed small memory leak in dialogs_show_question() * src/utils.c: Fixed a wrong(non ISO-C) array size allocation, improved utils_replace_tabs(). * src/keybindings.c: Added shortcut for Replace Tabs by Space, extend usage of GEANY_ADD_ACCEL macro. * src/prefs.c: Detect duplicate shortcuts and prevent saving them. * tagmanager/css.c: Fixed a crash when opening malformed CSS files. 2006-05-29 Enrico Troeger * src/about.c: Added Jacek Wolszczak and Frank Lanitz to the credits. 2006-05-28 Enrico Troeger * configure.in, po/pl.po: Added Polish translation contributed by Jacek Wolszczak. * src/dialogs.c, src/utils.c: Made recent files menu item insensitive when the list is empty. 2006-05-26 Nick Treleaven * src/interface.c, src/callbacks.c, src/callbacks.h, geany.glade: Fixed nasty hang when closing a tab and both the next tab and the first tab files have been externally modified. * src/dialogs.c: Add mnemonics to Replace dialog buttons, reorder. * src/document.c: Fix incremental find and replace of back to back matches. 2006-05-25 Nick Treleaven * src/document.c: On loading use SCI_SETTEXT instead of SCI_ADDTEXT to avoid Scintilla text changed signal. * src/callbacks.c, src/document.c, src/document.h: Make Replace in selection non-incremental and use single Undo blocks for this and for Replace All. 2006-05-24 Nick Treleaven * src/keybindings.c, src/keybindings.h: Add shortcuts for Find Previous, Go to line * src/keybindings.c: Set shortcut for Replace and split keybindings_init code 2006-05-23 Nick Treleaven * src/utils.c: check if file has been closed in utils_goto_workspace_tag * src/interface.c, src/callbacks.c, src/callbacks.h, geany.glade: created Search menubar item with Find items from Edit menu, added Find Previous and Go to line commands * src/vte.c: remove vte middle click override to allow X paste and update popup preferences item for Terminal tab number 2006-05-22 Nick Treleaven * src/callbacks.c, src/templates.c: insert the file type extension and fix a warning when inserting a fileheader in a new document 2006-05-22 Enrico Troeger * src/keybindings.c, src/utils.c: improved toggle visibility of sidebar when toggled by keyboard 2006-05-21 Enrico Troeger * src/keybindings.c: added menu_messagewindow and toggle_sidebar shortcuts * src/highlighting.c, data/filetypes.c, data/filetypes.cpp: added option to disable styling within preprocessor directives * src/dialogs.c, src/about.c, src/callbacks.c, configure.in: rewrote about dialog to reduce code size, added subversion revision * src/vte.c: declared some functions static * src/dialogs.c: do not create VTE settings in the preferences dialog if VTE is disabled at runtime * geany.glade, src/interface.c, src/callbacks.c, src/keyfile.c, src/main.c, src/prefs.c: added option to disable load of VTE at startup * src/highlighting.c, src/utils.c: applied sanity check patch from Pierre(posted on mailing list) 2006-05-20 Nick Treleaven * src/dialogs.c: fix pressing enter to open more than one file in the open file dialog * src/sci_cb.c: fix a segfault when commenting out lines with ctrl-d when no filetype is set * src/utils.c: fix a segfault clicking on a compile error if the compiled file has been closed 2006-05-19 Enrico Troeger * src/sci_cb.c: fix a small bug in sci_cb_show_calltip() to prevent an endless loop * src/keybindings.c, src/dialogs.c, src/callbacks.c, src/main.c, src/Makefile.am, src/geany.h, src/prefs.c, geany.glade: make keyboard shortcuts user-definable * src/document.c, src/utils.c: fixed a crash when clicking on the run button and no file is opened 2006-05-17 Enrico Troeger * src/utils.c: added code for creation of filedefs subdirectory * src/document.c: fixed compiler warning * src/keyfile.c: removed obsolete and commented code 2006-05-16 Enrico Troeger * tagmanager/Makefile.am, tagmanager/tcl.c, tagmanager/parsers.h, scintilla/Makefile.am, scintilla/LexTCL.cxx, scintilla/KeyWords.cxx, src/filetypes.c, src/highlighting.c, data/filetypes.tcl: new filetype Tcl/Tk * src/sci_cb.c: enabled autocompletion for all filetypes (fine tuning still needed) * src/document.c: removed mmap()-code, use at the moment only g_file_get_contents, fixed memory leak * scintilla/ScintillaGTK.cxx: updated to CVS version * data/filetypes.*: quoted filename wildcards for filenames with whitespace 2006-05-15 Enrico Troeger * src/utils.c, src/callbacks.c: added previously code to prevent opening of non-text files, fixed detection of C++-destructors and other improvements in utils_get_current_tag() 2006-05-14 Enrico Troeger * configure.in, po/ca.po, THANKS, src/dialogs.c: added catalan translation contributed by Topi * data/filetypes.php, data/filetypes.perl, data/filetypes.ruby, data/filetypes.pascal, src/utils.c: added compiler commands to run a syntax check and parse the output, so it is clickable in compiler message window 2006-05-12 Enrico Troeger * src/utils.c. src/callbacks.c: added code for parsing python error messages when clicked in compiler message window * tagmanager/ruby.c, src/treeviews.c: improved parser to detect variables and members * src/highlighting.c, data/filetypes.ruby: added missing keywords 2006-05-11 Enrico Troeger * src/utils.c: show appropriate error code when use(i.e. write access) of configuration directory fails * src/highlighting.c, src/filetypes.c: read the filetype definitions first from the configuration directory and then from the datadir (%prefix/share/geany) 2006-05-10 Enrico Troeger * src/document.c, src/filetypes.c, src/templates.c, src/callbacks.c: added template support for filetypes with comment character #, updated GPL to the current address of the FSF * tagmanager/python.c: fixed wrong identification of keyword class in ''' comments * tagmanager/parse.c, tagmanager/python.c: added code from anjuta to parse methods and functions separately * tagmanager/ruby.c: applied patch from ctags Sourceforge site to recognise things like Foo::Bar (ctags #1213512) * tagmanager/perl.c, src/treeviews.c: improved symbol list for filetype Perl, improved parser * src/document.c, src/callbacks.c: improved tag list updating, should be a bit faster on opening files 2006-05-09 Enrico Troeger * scintilla/ScintillaGTK.cxx: fixed encoding problem which causes many problems with non-Ascii characters * src/document.c: fixed a strange segfault at creating new file tabs 2006-05-08 Enrico Troeger * src/callbacks.c: save current file if it is executed (e.g. shell scripts) * src/highlighting.c: fixed a typo which prevented highlighting of variables in Perl * src/filetypes.c, tagmanager/Makefile.am, tagmanager/parsers.h, tagmanager/css.c: added parser for CSS filetype * tagmanager/ruby.c, tagmanager/Makefile.am, tagmanager/parsers.h, scintilla/LexRuby.cxx, scintilla/Makefile.am, scintilla/KeyWords.cxx src/filetypes.c, src/highlighting.c: added new filetype Ruby 2006-05-05 Enrico Troeger * src/callbacks.c: fix a crash when clicking in the compiler output * src/dialogs.c: improved file permission display if they cannot be read (e.g. on Windows) 2006-05-03 Enrico Troeger * src/win.c, src/utils.c, src/highlighting.c: moved my_strtod() from win32.c to utils.c, use it always, not only on Win32 systems 2006-05-01 Enrico Troeger * data/filetypes.perl: added two compiler commands * data/filetypes.cpp, src/highlighting.c: added some C++ keywords * src/sci_cb.c: added try-catch-auto completion 2006-04-30 Enrico Troeger * src/main.c: fixed a crash when starting Geany without debug messages * sci_cb.c: fixed a small issue when dragging files to Geany * new release: Geany 0.6 "Nivers" 2006-04-29 Enrico Troeger * src/keyfile.c, src/callbacks.c: applied two patches from Nick Treleaven to fix invalid memory read and improve the ordering of file tabs while loading session files * src/vte.c: applied patch from Nick Treleaven to improve removing the vte widget, fixed also a bug with disappearing scrollbars 2006-04-28 Enrico Troeger * src/treeviews.c, src/msgwindow.c: disabled interactive search function since it never worked and is unnecessary and confusing * src/utils.c: added small check for NULL pointer * src/document.c: fixed some inconsistency with the read only check box in the file menu 2006-04-27 Enrico Troeger * src/callbacks.c: improved key press handling to avoid that cursor rans out of editor widget when pressing F8 * src/sciwrappers.c: applied two little patches from Nick Treleaven * tagmanager/tex.c: fixed naming of the parser to get recognised again for parsing LaTeX files 2006-04-26 Enrico Troeger * src/document.c: applied patch from Nick Treleaven to right-align the close buttons on each tab, reload the symbol list at reloading a file * src/dialogs.c, src/callbacks.c: applied patch from Nick Treleaven which improves the file open dialog, make it more compact, replaced read-only checkbox by a button, fixed memory leak * src/sci_cb.c: applied patch from Nick Treleaven to fix a small bug in auto commenting lines with CTRL+D * src/document.c: applied patch from Nick Treleaven to switch to the new opened tab if placement of new file tabs is set to Right * src/utils.c: applied patch from Nick Treleaven to fix a bug in utils_get_current_tag() with C++ methods 2006-04-25 Enrico Troeger * src/sci_cb.c: added support for complete do while loops * src/highlighting.c, data/filetypes.cpp: added keywords this, public, private and protected * scintilla/ScintillaGTK.cxx, scintilla/PlatGTK.cxx: applied patches from John Ehresmann (posted on the Scintilla ML) * src/dialogs.c: improved the file properties dialog * src/gb.c: translated comments into English and fixed some bugs 2006-04-24 Enrico Troeger * src/main.c, src/geany.h: removed unneeded time variables 2006-04-23 Enrico Troeger * scintilla/LexBash.cxx: fixed crash when typing "\" as last character in a bash file (patch from Scintilla ML) 2006-04-20 Enrico Troeger * geany.glade, src/keyfile.c, src/document.c, src/interface.c src/prefs.c, src/geany.h: added option to place new file tabs to the right or left of the tab list * src/utils.c, src/keyfile.c, src/prefs.c, src/build.c, src/vte.c, src/filetypes.c: replaced lots of g_new() by g_new0() * src/dialogs.c: at saving a new file, the extension of the file is guessed based on the default extension in filetypes.c * src/build.c, src/msgwindow.c: improved scrolling of compiler messages at building * src/build.c, src/dialogs.c, src/callbacks.c: rewrote most of the building code, get compiler settings from filetype definition files, handle non-UTF8 filenames better and much more things 2006-04-18 Enrico Troeger * src/geany.h, src/keyfile.c, src/utils.c: added option to match < and > to, but disabled by default 2006-04-09 Enrico Troeger * src/sci_cb.c: added handler for dragged file URIs in the editor widget, so they will get opened 2006-04-07 Enrico Troeger * src/dialogs.c: now the file save dialog returns when pressing Enter, too, also fixed a bug if path of current file contains non-UTF8 characters, added question dialog, to ask for various things, so removed dialogs_show_confirm_exit() * src/callbacks.c: added a check for overwriting files when using file save dialog * src/document.c: default charset encoding for new files is set to UTF-8 * src/highlighting.c, data/filestypes.common: added setting folding_style to define the style of the folding icons 2006-04-06 Enrico Troeger * src/build.c: fixed some errors with non-UTF8 filenames and paths * bugfix: src/dialogs.c: fixed an error when changing the current directory in the file open dialog and the path contains non-UTF8 characters * src/document.c: removed useless for loop in document_set_filetype 2006-04-05 Enrico Troeger * bugfix: src/document.c: fixed a segfault when opening a file and filename is NULL 2006-04-04 Enrico Troeger * bugfix: src/callbacks.c: fixed potentially segfault when opening a file from the recent file menu 2006-04-03 Enrico Troeger * src/vte.c: applied three patches from Nick Treleaven to improve usage of the VTE component 2006-04-01 Enrico Troeger * tagmanager/general.h: added inclusion of unistd.h to avoid compile errors on MacOSX * src/document.c: fixed memory allocation while opening files, so that empty files (size = 0 byte) can also be opened 2006-03-29 Enrico Troeger * geany.glade, src/interface.c: let the editor widget also be resized, so resizing the main window is nicer * src/keyfile.c, src/main.c: moved some code from configuration_open_files to configuration_apply_settings, because configuration_open_files is not called every time 2006-03-28 Enrico Troeger * src/utils.c, src/sci_cb.c, src/callbacks.c: applied patch from Nick Treleaven to avoid segmentation faults on long words(>120 characters) * src/main.c, src/sci_cb.c: applied patch from Nick Treleaven to fix a possible segmentation fault 2006-03-22 Enrico Troeger * src/utils.c: added error messages to utils_write_file() * src/keyfile.c: rewrote the code for reading the session files 2006-03-19 Enrico Troeger * src/highlighting.c, src/sci_cb.c, data/filetypes.*: added definable comment characters to all filetypes 2006-03-18 Enrico Troeger * src/highlighting.c, data/filetypes.*: added wordchars key to all filetypes * src/main.c: improved reading and writing of the named pipe, so Geany does not go into in an endless loop after opening a file 2006-03-17 Enrico Troeger * bugfix: src/sci_cb.c: typing } on lines longer than 256 chars caused a crash (segfault) * src/dialogs.c, src/callbacks.c, src/interface.c, geany.glade: moved VTE settings tab code in the preferences dialog to dialogs.c, so this code will not be compiled if HAVE_VTE is unset 2006-03-15 Enrico Troeger * src/geany.h, src/main.c, src/keyfile.c: added GEANY_WINDOW_MINIMAL_WIDTH, GEANY_WINDOW_MINIMAL_HEIGHT, GEANY_WINDOW_DEFAULT_WIDTH, GEANY_WINDOW_DEFAULT_HEIGHT to make it easier to changed these defaults 2006-03-14 Enrico Troeger * src/callbacks.c: added check for existing documentation, otherwise try online documentation 2006-03-11 Enrico Troeger * geany.glade, src/interface.c, src/main.c: set minimal size to 620x440, default size to 900x600, added command line option -m or --no-msgwin to disable message window at startup * doc/geany.docbook: added description for -m option 2006-03-10 Enrico Troeger * src/callbacks.c: applied patch from Nick Treleaven to allow reclicking of taglist treeview item * src/keyfile.c: fixed small error which adds every time a new comment in the filetype extensions configuration file * data/filetypes.*, src/highlighting.c: added italic flag to all styles, added background colour for current line * src/dialogs.c, src/sciwrappers.c: applied patch from Nick Treleaven which improved inserting of current selection in the find and replace dialogs * src/filetypes.c: added new extensions for filetype Pascal * src/data/filetypes.conf, src/highlighting.c: added "key" and edited colours for changed lexer * scintilla/*: updated Scintilla to version 1.68 2006-03-09 Enrico Troeger * data/filetypes.pascal: added new keywords supplied by Marko Peric * src/highlighting.c: added support for // and (* ... *) comments in Pascal * src/utils.c, src/document.c: improved utils_check_disk_status() behaviour to work with files on filesystems with another time than the time from the local host 2006-03-02 Enrico Troeger * src/callbacks.c, src/build.c, src/geany.h: clicking on a compiler error message jumps to the correct file, if it is not the current one * src/dialogs.c: fixed crash when closing find or replace dialog twice by pressing escape (triggering the delete_event), closes #1441359 2006-02-27 Enrico Troeger * src/sci_cb.c: added auto completion in LaTeX mode for \begin 2006-02-26 Enrico Troeger * src/callbacks.c: removed unneeded destroyapp_early() * src/main.c, src/utils.c: improved configuration directory creation * src/sci_cb.c, src/highlighting.c, src/document.c, geany.glade, src/geany.h, src/interface.c, src/prefs.c, src/callbacks.c: implemented first version of rudimentary folding support, added goto line entry in the toolbar and made it hideable 2006-02-25 Enrico Troeger * src/keyfile.c: fixed memory leak, load filetype extensions from a file in the configuration directory, the filetype of a document is now also stored at loading and saving session files * src/filetypes.c: removed unneeded constant GEANY_MAX_PATTERNS 2006-02-24 Enrico Troeger * src/utils.c, src/callbacks.c, src/dialogs.c, src/main.c: made "make" build menu items sensitive for C header files * bugfix: src/vte.c: hopefully fixed a crash when closing the preferences dialog and message window was hidden and shown before 2006-02-21 Enrico Troeger * src/utils.c: added utils_make_human_readable_str() * src/dialogs.c: added file properties dialog * geany.glade, src/interface.c, src/callbacks.c, src/dialogs.c: moved font selection dialog from glade code to dialogs.c, removed unnecessary callback functions for delete_event's 2006-02-20 Enrico Troeger * src/callbacks.c: fixed bug when using color selector and no file is open, only fixed on some other actions * src/geany.h, src/main.c: disable menu functions of the edit menu when no files are open * src/main.c: added the possibility to delete an existing fifo in the case, that Geany crashed previously 2006-02-17 Enrico Troeger * src/gb.c: fixed bug which caused always same figures under Win32, some other code cleanups and changes * geany.glade, src/interface.c, src/callbacks.c, src/main.c: replaced the New toolbar button by a menu button, so it works also under Win32 * src/prefs.c: all settings are now saved by pressing OK in the settings dialog, up to now it was only done at exiting 2006-02-16 Enrico Troeger * src/main.c, callbacks.c, document.c: fixed some line breaking issues 2006-02-14 Enrico Troeger * Makefile.am, doc/Makefile.am: improved "make uninstall" of Geany * configure.in: added check for mkfifo(), made it also an option * src/main.c: added a message box if lost pipe was found, FIFO code now depends on HAVE_FIFO * src/Makefile.am: do not compile win32.c anymore, added to EXTRA_DIST * src/geany.h, src/main.c, src/callbacks.c: added command line option -p or --no-pipe to ignore a running instance of Geany and force opening a new instance 2006-02-13 Enrico Troeger * src/utils.c: added utils_show_linenumber_margin() * geany.glade, src/interface.c, src/callbacks.c, src/dialogs.c, src/main.c, src/geany.h, src/keyfile.c, src/sci_cb.c: removed some items from the document menu to the preferences dialog, removed file save dialog from interface.c to dialogs.c, added toggle for line numbers 2006-02-10 Enrico Troeger * scintilla/LexOMS.cxx, scintilla/keywords.cxx, scintilla/include/SciLexer.h, scintilla/Makefile.am: added new lexer LexOMS(based on LexBash) for OMS support * src/highlighting.c: added new filetype OMS (O-Matrix) * src/dialogs.c: improved the find and replace dialog, an existing selection is inserted, fixed focus settings * src/callbacks.c: prevent Geany entering an endless loop, at replacing something like "YELLOW" with "yellow", if search flag "Case sensitive" is not checked 2006-02-08 Enrico Troeger * src/main.c, src/callbacks.c, src/geany.h: Geany now creates a FIFO, to communicate between different instances 2006-02-07 Enrico Troeger * src/utils.c, src/callbacks.c, src/document.c: fixed a memory leaks * src/document.c: improved filename handling on saving files * src/callbacks.c: improved the filename entry widget in the file open dialog, it handles now directories, too 2006-02-06 Enrico Troeger * src/document.c: improved behaviour of HOME/END keys on wrapped lines * src/sciwrappers.c: added sci_assign_cmdkey() * geany.glade, src/interface.c, src/callbacks.c, src/dialogs.c: rewrite of the file open dialog, now it enters a directory instead of trying to open it in Geany (closes #1421776) * src/sci_cb.c: improved sci_cb_do_comment() to handle SQL and Caml comments * src/sciwrappers.c, src/sci_cb.c: applied patch from Nick Treleaven to improve multiline selection by selecting the lines in the line number margin, removed also the right click behaviour to set a marker * src/highlighting.c: added filetypes SQL and (O)Caml, heavily reduced code size * src/main.c: fixed wrong handling of the visibility of the message window * src/vte.c: fixed a crash when preferences are set and message window is hidden (thanks to Joo Martin for reporting) 2006-02-03 Enrico Troeger * src/document.c: improved filename handling in document_open_file(), fixed a crash at reloading files * src/main.c: fixed a crash when opening more than 25 files from the command line (closes #1422135) * src/sci_cb.c: improved sci_cb_do_comment() to handle CSS comments 2006-02-01 Enrico Troeger * src/build.c: applied patch from Nick Treleaven to fix memory leaks * src/document.c: changed * src/win32.c: set the Open File dialog directory to the same directory as the current file * src/utils.c: disabled the build menu under Win32, at least temporary * src/templates.c, doc/geany.docbook: added new wildcard {geanyversion} to have actual Geany version in filetype templates (e.g. HTML template) 2006-01-27 Enrico Troeger * new release: Geany 0.5 "Rebus" 2006-01-26 Enrico Troeger * src/utils.c, src/dialogs.c: set the Open File dialog directory to the same directory as the current file (thanks to Nick Treleaven for this patch) * src/sci_cb.c: fixed a bug with auto indention and CR/LF line endings (thanks to Tamim for reporting) 2006-01-21 Enrico Troeger * tagmanager/tex.c, src/treeviews.c: added tag support for "\begin", fixed gcc4 warnings * tagmanager/docbook.c: fixed gcc4 warnings * src/filetypes.c, src/document.c, src/keyfile.c: fixed some bugs when opening files with non UTF-8 filenames 2006-01-18 Enrico Troeger * src/callbacks.c: it is now possible to insert a function description (use right mouse button popup menu) without having the cursor inside the { and } of a function 2006-01-17 Enrico Troeger * src/sci_cb.c: fixed two auto indention bugs * geany.glade, src/interface.c: fixed incorrect size of Save as dialog 2006-01-16 Enrico Troeger * scintilla/*: updated Scintilla to version 1.67 * src/treeviews.c: added category class to the symbol list, changed category names for filetype DocBook and LaTeX * src/sci_cb.c: improved auto indention, now "for (...) {" works, too * configure.in: set prefix if it was not specified * geany.desktop.in: added GenericName[de] 2006-01-15 Enrico Troeger * configure.in, Makefile.am, desktop.in: replaced geany.desktop by geany.desktop.in, some changes to the desktop file like absolute icon path * tagmanager/tex.c: added tags section, subsection and subsubsection * tagmanager/docbook.c: complete rewrite, works great 2006-01-14 Enrico Troeger * bugfix: src/document.c, src/treeviews.c: update open file list entry when "Saving as" * bugfix: src/document.c: fixed wrong g_object_unref() which causes crashes * bugfix: src/geany.h, src/document.c, src/utils.c: fixed wrong symbol list in files with tag support but without exisiting symbols, added new boolean has_tags in document struct * src/geany.h, src/document.c, src/utils.c: removed unneeded utils_get_new_sci_number() and scid from document struct * src/treeviews.c, src/callbacks.c: added popup menu to symbol list, added "Hide" and "Hide sidebar" to symbol list popup and open files list popup, to quickly hide the list or the whole sidebar 2006-01-10 Enrico Troeger * bugfix: geany.glade, src/interface.c: added missing tooltip to compile button * src/filetypes.c: applied patch from Nick Treleaven, to add .cc, .hh and .hxx extension for filetype C++ and improve the pattern handling 2006-01-08 Enrico Troeger * tagmanager/docbook.c, tagmanager/parsers.h, tagmanager/Makefile.am: added conf.c(built from pascal.c), to create tags for docbook files * src/build.c, src/utils.c, src/main.c, src/callbacks.c: made the build menu filetype specific to have different menu items * bugfix: src/keyfile.c: save window geometry with gtk_window_get_position() so restoring the window works correctly under Win32, too 2006-01-06 Enrico Troeger * src/main.c, src/callbacks.c, src/vte.c, src/geany.h: added commandline option to specify the path to the VTE library 2006-01-03 Enrico Troeger * data/filetypes.markup, src/highlighting.c: added new keywords for PHP5 and replaced phpKeyWords by php (thanks to Simon Stoye for reporting) * geany.glade, src/interface.c, src/prefs.c, src/keyfile.c src/callbacks.c, src/document.c, src/build.c, src/sci_cb.c: added new option "Beep on errors" to disable beeping 2005-12-31 Enrico Troeger * src/gb.c: fixed segfault when exiting the easteregg program when it is still running * src/highlighting.c, src/win32.c: added my_strtod(), as replacement for Win32 strtod() 2005-12-29 Enrico Troeger * tagmanager/tm_tag.c: eliminated compiler (gcc4) warnings * bugfix: tagmanager/tm_workspace.c: replaced macro __unix__ by HAVE_GLOB_H(closes #1387828) and improved handling of P_tmpdir (closes #1387839) 2005-12-28 Enrico Troeger * bugfix: src/dialogs.c: fixed a segfault in dialogs_show_not_found() * bugfix: src/utils.c: fixed bug in utils_strpos() which returned -1 if length needle is 1 * src/utils.c: added utils_treeviews_showhide(), to get the right settings at startup for the left side treeviews * src/gb.c: eliminated compiler(gcc4) warnings, replaced macro __unix__ by HAVE_FCNTL_H, use /dev/urandom or /dev/random (in this order) if available and rand() if not * src/configure.in: added checks for /dev/urandom and /dev/random 2005-12-25 Enrico Troeger * src/dialogs.c: text entry field in the find and replace dialog grabs focus by default, so the cursor is always inside 2005-12-19 Enrico Troeger * new release: Geany 0.4 "Tarkin" * src/gb.c: several improvements and bugfixes * src/prefs.c, src/callbacks.c: improved HAVE_VTE handling * src/sci_cb.c: set cursor position between brackets in sci_cb_auto_close_bracket() 2005-12-18 Enrico Troeger * src/callbacks.c: changed keyboard shortcut for rebuilding the symbol list, now it is Ctrl+Shift+R, Ctrl+R is now used reload the current file * src/callback.c, src/utils.c, src/document.c, src/treeviews.c, src/main.c, src/geany.h: made the symbol list document-oriented, so it has not to be generated on every notebook switch page event * src/geany.h, src/main.c, src/keyfile.c, src/callbacks.c: introduced opening_session_files, to suppress notebook switch page events at loading the files from the last session * geany.glade, src/interface.c, src/geany.h, src/callbacks.c: added new menu items: Help->Keyboard shortcuts and File->Revert 2005-12-16 Enrico Troeger * src/dialogs.c: changed "build with make" keyboard shortcut to Shift+F9 to avoid problems with window managers key bindings (thanks to Nick Treleaven for reporting) * src/about.c, src/gb.c: added a nice easteregg(type "geany" in the about dialog *g*) * src/vte.c: added popup menu for the VTE widget * bugfix: src/prefs.c: fixed crash when opening option dialog and VTE is disabled * geany.glade, src/interface.c, src/main.c, src/callbacks.c: removed unnecessary functions 2005-12-13 Enrico Troeger * src/sci_cb.c: added sci_cb_auto_close_bracket() to close { and [ brackets in LaTex-Mode (more could be added) 2005-12-12 Enrico Troeger * src/callbacks.c: changed key binding to switch between open documents from CTRL to ALT+Left/Right, so CTRL+Left/Right moves the cursor to word boundaries 2005-12-11 Enrico Troeger * src/callbacks.c: added shortcut F6 to switch to the VTE widget * doc/geany.docbook: described some of the compile time options in geany.h and marked filename with -tag. * src/interface.c, src/prefs.c, src/utils.c, src/callbacks.c, src/geany.h, src/documents.c: made length of MRU list changeable * bugfix: src/highlighting.c: fixed a wrong color value 2005-12-10 Enrico Troeger * src/prefs.c, src/vte.c, src/keyfile.c, src/utils.c, src/callbacks.c: many changes, adding color settings for VTE 2005-12-09 Enrico Troeger * geany.glade, src/utils.c, src/interface.c, src/callbacks.c, src/main.c, src/keyfile.c: removed symbol list combo box in the toolbar * src/treeviews.c, src/utils.c: heavily improved the tag list to categorise the tags in a tree 2005-12-08 Enrico Troeger * src/interface.c: added tooltip text for exit button * src/main.c: open a new file at startup if none is open * bugfix: src/keyfile.c: fixed a segfault when starting without a configuration dir 2005-12-06 Enrico Troeger * src/document.c, src/callbacks.c: diabled extended HOME and END key default behaviour due to many problems 2005-12-03 Enrico Troeger * src/filetypes.c, src/highlighting.c: added new filetype "Assembler" 2005-12-01 Enrico Troeger * src/document.c, src/callbacks.c: extending HOME and END key default behaviour, to jump back to previous cursor position if pressed again 2005-11-30 Enrico Troeger * src/keyfile.c, src/prefs.c, src/interface.c, src/vte.c: added some options for the VTE to the preferences dialog * bugfix: src/sci_cb.c: fixed a small bug by auto closing }-brackets * src/callbacks.c, src/main.c: added signal and handler for F12 key, pressed in the main widget 2005-11-28 Enrico Troeger * src/vte.c: added rudimentary clipboard support by pressing middle(paste) and right(copy) mouse button 2005-11-27 Enrico Troeger * src/vte.c/h: newly created: contains functions for the terminal emulator widget, which is loaded if libvte.so.4 is available * configure.in: added option --[en|dis]able-vte to disable vte support 2005-11-25 Enrico Troeger * scintilla/LexOthers.cxx: edited the properties lexer to colourize key=value pairs a bit nicer * tagmanager/parsers.h, tagmanager/conf.c, tagmanger/Makefile.am: added conf.c(built from make.c), to create tags for config files * src/utils.c, src/callbacks.c: rewrite untitled.extension after "Save As" in the file header 2005-11-24 Enrico Troeger * src/keyfile.c, src/interface.c, src/prefs.c, src/msgwindow.c: added new option "Switch to status message list" * src/keyfile.c: store the position of vpaned1 too(sizer between editor window and the status message list) * src/highlighting.c, src/filetypes.c: added new filetype "Conf" 2005-11-22 Enrico Troeger * bugfix: src/sci_cb.c: added missing / to the closing tr-tag in HTML table auto completion * src/sci_cb.c: disabled auto completion in HTML at writing pure CDATA 2005-11-21 Enrico Troeger * src/keyfile.c: store the position of hpaned1(sizer between editor window and the taglist) and load it if window positions are saved and restored * src/treeviews.c, src/callbacks.c: added special popup menu to the list of open files 2005-11-20 Enrico Troeger * new release: Geany 0.3 "Muzzer" * src/treeviews.c/h: newly created: contains functions for the taglist and open files treeviews on the left side * src/treeviews.c, src/callbacks.c: added an open files treeview, which represents all open files * src/interface.c: added a toolbar button to open the color chooser * bugfix: src/sci_cb.c: there was an error at the next line after closing a multiline comment in C/C++/Java 2005-11-18 Enrico Troeger * src/document.c: make a beep if a file could not be saved 2005-11-16 Enrico Troeger * bugfix: src/sci_cb.c: fixed a small bug that kills the current line if a } was added and there is no newline and there are no non-space characters on the line (thanks to Frank Lanitz for reporting) 2005-11-15 Enrico Troeger * src/callbacks.c: Save As add a recent opened file to the list, too 2005-11-14 Enrico Troeger * src/utils.c, src/callbacks.c: added shortcut for "walking" between open documents by pressing STRG+LEFT resp. STRG+RIGHT * src/templates.h, src/templates.c, src/document.c, src/filetypes.c: removed hardcoded filetype templates from filetypes.c and added them to templates.h/c 2005-11-12 Enrico Troeger * src/templates.c, src/interface.c, src/callbacks.c, src/prefs.c, src/keyfile.c, src/document.c, src/filetypes.c: removed GPL options(in the settings dialog, in the context menu for inserting comments like fileheader with GPL), now this is completly done within the fileheader template and the wildcard {gpl}, added also the first template for new file (filetype None) 2005-11-11 Enrico Troeger * bugfix: src/utils.c: fixed segfault if configuration directory could not created * src/dialogs.c, src/main.c, src/callbacks.c: added a error box which is shown if configuration directory could not created * bugfix: src/callbacks.c: fixed a bug which freezed Geany sometimes at exiting(thanks to Frank Lanitz for re- porting) 2005-11-09 Enrico Troeger * bugfix: src/filetypes.c: set correct filetype id for type C++, so template for new C++ file will work again (thanks to Frank Lanitz for reporting) 2005-11-06 Enrico Troeger * src/highlighting.c: added highlighting support for Python * src/highlighting.c: extracted all hardcoded styling definitions for all filetypes, so they can be easily edited by user in %PREFIX/%DATADIR/geany, a GUI interface is planned * src/main.c, src/highlighting.c: load global.tags file only if a file was opened * src/callbacks.c: added key combo: Shift+Space to explicitly suppress use of sci_cb_auto_forif() * Makefile.am: added data/ to be included in tarballs and get installed 2005-11-03 Enrico Troeger * src/interface.c, src/prefs.c: added long line marker settings to preferences dialog 2005-10-31 Enrico Troeger * src/callbacks.c, src/sciwrappers.c: reset the line number margin width at zooming in and out (thanks to Frank Lanitz for reporting) * src/dialogs.c, src/callbacks.c, src/document.c, src/keyfile.c: re-implemented recent files menu, this time in a useful way * bugfix: auto completion is working again 2005-10-30 Enrico Troeger * bugfix: src/filetypes.c: fixed the function pointer of filetype Tex to get the correct styling (thanks to Frank Lanitz for reporting) * src/document.c: reset the width of line number margin at saving * src/document.c, sciwrapper.c, geany.h, keyfile.c: added vertical line (by default at column 72) to mark long lines 2005-10-25 Enrico Troeger * new release: Geany 0.2 "Panaka" * configure.in, src/utils.c: added check for gethostname() and modified utils_get_hostname() appropriately * src/dialogs.c, src/interface.c: redesigned file open dialog to make it looks nicer 2005-10-24 Enrico Troeger * Makefile.am: added autogen.sh to EXTRA_DIST * scintilla/*: updated Scintilla to version 1.66 * bugfix: configure.in: added check for fgetpos(), so compilation with gcc 4 is possible * src/sci_cb.c: removed sci_cb_show_entity_list(), because it was unnecessary 2005-10-23 Enrico Troeger * doc/geany.docbook: added search information in section Usage * src/utils.c: bugfix: check_disk_status should now work better * src/callbacks.c, src/dialogs.c, src/document.c, src/sci_wrappers.c, interface.c: created "Replace" dialog with Replace, Replace All and Replace Selection, also improved the Find dialog a little bit * src/callbacks.c, src/interface.c: added "show hidden files" checkbox in file open dialog 2005-10-22 Enrico Troeger * src/callbacks.c, src/dialogs.c, src/document.c: heavily improved find dialog * src/sci_cb.c: added simple
-completion in HTML-mode * src/callbacks.c, src/interface.c, src/main.c, src/keyfile.c: added toolbar popup entries for toolbar icon size * src/dialogs.c, src/images.c: removed compile icon and replaced it by the GTK stock icon "convert" 2005-10-21 Enrico Troeger * src/callbacks.c, src/interface.c, src/document.c, src/sciwrappers.c: added read-only mode (and checkbox in file open dialog) added also text entry in file open dialog to enter directly filenames * doc/geany.docbook: added startup information in section General * src/callbacks.c, src/interface.c, src/keyfile.c: added "Recent files" list to the file menu * src/build.c: at linking a file(C and C++): if source is newer than a existing object file, it is rebuilt * bugfix: src/build.c: compiling a file without any special arguments didn't work 2005-10-20 Enrico Troeger * src/Makefile.am: EXTRA_DIST entry added, to include images.c (thanks to Frank Boehme for reporting of missing file) 2005-10-19 Enrico Troeger * first release - Geany 0.1 "Freyborn"