4134 Commits

Author SHA1 Message Date
Colomban Wendling
441bab9d3b Add new filetype setting "comment_single"
This provides separated single-line and multiline comment support.

git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5609 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-03-20 15:02:22 +00:00
Colomban Wendling
bf16b24b98 Create a new undo action when inserting templates
This makes sure the user can undo the template insertion without also
undoing a previous action.

git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5608 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-03-19 22:48:43 +00:00
Colomban Wendling
7b706faf8e Properly convert template files to UTF-8 on loading
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5607 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-03-18 15:57:15 +00:00
Colomban Wendling
f60ead793d Move document encoding conversion with BOM support to encodings.[ch]
Adds the new function encodings_convert_to_utf8_auto(). This makes easy
to convert file data to UTF-8 in a high-level fashion, with BOM support
and everything.

git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5606 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-03-18 15:57:02 +00:00
Nick Treleaven
e38f3b560a Fix generating tag files and --ft-names option by ensuring GTK is
initialized before calling ui_get_mime_icon().



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5604 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-03-17 18:00:20 +00:00
Nick Treleaven
c5b834629c Make special case for filetypes.matlab instead of truncating all
filetype config filenames at slash.



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5603 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-03-17 17:03:01 +00:00
Nick Treleaven
d74206bf77 Fix wrong label capitalization for Toolbar Preferences dialog tab
and 2 other labels.



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5601 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-03-17 16:41:25 +00:00
Colomban Wendling
ba645513f8 Don't use non-C89 initializers
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5600 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-03-17 16:14:56 +00:00
Nick Treleaven
a46c2fd899 Support copying filetype definition file group keys from a system
keyfile with e.g. [styling=C].
Add function utils_make_filename() for building filenames easily.



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5596 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-03-17 12:17:04 +00:00
Nick Treleaven
18c1d6c88e Use utils_build_path() for simplicity where the result is only used immediately (it returns a temporary buffer).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5595 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-03-17 12:08:06 +00:00
Frank Lanitz
fccb2fd32f Fix entity inside about dialog. Oops
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5594 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-03-15 22:42:09 +00:00
Frank Lanitz
0ff5c9d577 Addded Wei-Lun Chao as current maintainer for traditional Chinese as well as to THANKS file
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5593 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-03-15 21:59:03 +00:00
Colomban Wendling
7a2a413f8c Restore sorting order of plugins configuration tabs (broke by me in r5586)
Now simply insert elements in sorted order rather than sorting the
list at a later point: it's simpler, cleaner and probably faster.

git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5591 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-03-15 16:52:12 +00:00
Colomban Wendling
6236c506f2 Use the same indentation for all templates (part of FR#3193527)
From a patch by Matthew Brush, thanks.

git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5590 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-03-15 16:51:47 +00:00
Nick Treleaven
e6a7d02fbe Fix sign warning in tag_hash().
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5589 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-03-14 17:37:44 +00:00
Colomban Wendling
8e79a2255a Prefer prepend elements to lists rather than append them
This is for better performances since appending to a list means walking
it to find the last element to append to. When the list ordering
matters, simply reverse the list after prepengins.

git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5586 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-03-10 22:27:04 +00:00
Colomban Wendling
6f481c8086 Correctly expand the menubar if the toolbar is appended to it but not visible (closes #3204955)
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5585 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-03-10 16:05:29 +00:00
Enrico Tröger
c6241e16b8 Fix wrong code example in the API docs (spotted by Matthew Brush, thanks).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5584 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-03-08 20:19:01 +00:00
Colomban Wendling
3ebfcceafe When sorting tags by line, also sort by scope if line is the same
This avoids wrong sorting, and then wrong display in the symbols list,
if a parent tag is on the same line than its children, and one of it's 
children would be sorted before alphabetically (closes #3193982).


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5580 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-03-06 17:25:15 +00:00
Colomban Wendling
87350d7624 Fix wrong constant variable
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5577 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-03-06 17:08:54 +00:00
Enrico Tröger
4f6354d434 Respect saved state of 'Case sensitive' option when using the 'Regular expressions' option as well.
Cleanup.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5575 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-03-06 14:36:42 +00:00
Enrico Tröger
56cd8dff87 Remember Find and Replace options across restarts (patch by Dimitar Zhekov, thanks).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5573 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-03-06 14:18:05 +00:00
Enrico Tröger
3e4a399140 Fix Windows build
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5572 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-03-06 13:10:48 +00:00
Enrico Tröger
1920cc6a1d Fix typo.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5571 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-03-06 12:11:54 +00:00
Colomban Wendling
6f7a06780f Improve performances of symbol list updating
Rather than walking the whole tree for each tag to find a possibly
corresponding row, use a hash table as cache.
This is a very significant improvement on large files with many tags,
reducing for example to about 170ms an update that took more than 18s
before.

Also fix merging of tags with same name and scope (probably unlikely to
exist in real-world files, but the tagmanager extract them correctly
and they used to display correctly too).


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5567 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-03-05 22:56:55 +00:00
Colomban Wendling
57d00f48d0 Update the symbol list rather than clearing and re-building it
The main advantages of not clearing and rebuilding the whole list is
that it doesn't loose the folding and selection (as far as the selected
row(s) still exist after the update, of course), and it reduces
flickering upon update.

The current implementation works in 3-steps:
1) mark all rows as invalid;
2) insert/update the rows, according to the new tag list, marking them
   as valid;
3) remove all rows that are still invalid.
This walks (rows) the first time, (tags*rows) the second and (rows) the
third. This also uses an extra column to store the row's validity.

A (probably) better implementation would be to:
1) walk the current rows, updating them if necessary, or removing them;
2) add the remaining tags that weren't there before.
This is probably faster in theory (and probably also in practice), but
it needs to refactor a lot the code to easily update *or* create a row,
what the current code does not provide.
Basically this is would be a two-pass update, walking (rows*tags) in
the first pass, and only the remaining non-added tags in the second.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5562 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-03-05 22:53:13 +00:00
Colomban Wendling
a1a13e18e2 Don't remove and add the symbols tree view if we re-add the same one
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5561 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-03-05 22:51:32 +00:00
Colomban Wendling
f120554364 Provide a GType for TMTag and use it
It is a boxed type but uses reference counting behind the scene. This
allow for example the tag store to make sure the tags it holds are
always valid.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5560 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-03-05 22:50:04 +00:00
Colomban Wendling
88aa81b6a8 Improve implementation of hide_empty_rows() to do all in one shot
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5558 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-03-05 22:47:13 +00:00
Colomban Wendling
67cd5dbd13 Add possibility to update symbol list in IDLE time
Enabled by default, using a minimal delay of 250ms between two updates.
Also add a preference to configure this in Geany's UI, under
Preferences -> Editor -> Completion.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5557 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-03-05 22:46:32 +00:00
Colomban Wendling
676f8e6d76 Enable in-memory tag parsing
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5556 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-03-05 22:44:22 +00:00
Colomban Wendling
569670b771 Move most of TagManager's I/O to MIO
Moved the parsers to MIO, which allows both in-memory and file parsing.


git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5555 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-03-05 22:40:50 +00:00
Colomban Wendling
77e400d1aa Add missing documentation to some plugin API functions
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5553 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-03-02 21:08:51 +00:00
Enrico Tröger
84da9b961b Welcome Colomban Wendling, a new Geany developer.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5552 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-03-02 20:16:00 +00:00
Nick Treleaven
4998d40f46 Fix segfault when inserting e.g. fileheader template when the
template file is empty (#3070913, thanks to lphilpot).



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5544 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-02-22 17:15:29 +00:00
Enrico Tröger
bf4067f910 Rename utils_is_file_writeable() into utils_is_file_writable().
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5539 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-02-06 16:47:18 +00:00
Enrico Tröger
426dbff4b6 Add a warning if writing the project file fails on close.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5538 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-02-06 16:36:04 +00:00
Enrico Tröger
277e2c2cdf Improve error checking when trying to write project files (patch by Colomban Wendling, thanks).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5537 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-02-06 16:32:49 +00:00
Enrico Tröger
ec408fa4b9 Add filetype Cobol (based on a patch by Seth Keiper).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5533 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-01-30 15:03:51 +00:00
Enrico Tröger
e7e9410c5c Ensure the editor widget has the focus when the editor menu is called.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5532 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-01-30 13:48:21 +00:00
Enrico Tröger
044791794f Post-release version bump.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5529 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-01-19 19:47:35 +00:00
Enrico Tröger
6ac2623208 Update copyright information.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5528 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-01-19 19:39:09 +00:00
Enrico Tröger
f3b425fd64 Add and use secondary keywords for filetype JavaScript, update and sanitize JavaScript keyword lists (patch by Jason Oster, thank you).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5526 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-01-18 19:29:15 +00:00
Frank Lanitz
c05ac6f39b Added Rafael Peregrino da Silva to list of contributors for Brazilian Portuguese (pt_BR) translation.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5524 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-01-11 21:49:23 +00:00
Nick Treleaven
43dc30a5d1 Merge trunk to r5519.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/branches/unstable@5520 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-01-10 13:58:12 +00:00
Nick Treleaven
c8cd1a0457 Thanks to Matthew Brush.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5519 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-01-10 13:39:47 +00:00
Nick Treleaven
4d4bf2f347 Add Save As toolbar button option (patch by Matthew Brush, thanks;
#3153490).



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5518 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-01-10 13:35:29 +00:00
Nick Treleaven
3ba9517d8f Add debug message with the number of compatible plugins in each
plugin search path when showing the Plugin Manager dialog.



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5507 ea778897-0a13-0410-b9d1-a72fbfd435f5
2011-01-04 12:41:22 +00:00
Nick Treleaven
6c30fc692f Add Edit->Insert Alternative White Space menu item (was previously
removed from Edit->Commands submenu).



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5498 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-12-24 13:31:39 +00:00
Nick Treleaven
4c17428732 Add filetypes_get_display_name() to API.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5497 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-12-22 16:59:38 +00:00