360 Commits

Author SHA1 Message Date
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
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
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
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
Nick Treleaven
467450fdce Scroll to the current line when moving the cursor to the next
cursor position in a snippet (#3139490).



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5495 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-12-22 13:44:41 +00:00
Nick Treleaven
a8e0cfb395 Typo in editor_get_[indent_]prefs() dox.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5433 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-11-23 17:40:30 +00:00
Nick Treleaven
ff6354d833 Remove unnecessary 'global' from long line editor pref field names.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5432 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-11-23 17:36:29 +00:00
Nick Treleaven
a29d75af2c Add editor_get_prefs() instead of editor_get_long_line_*()
functions. This general function can be extended to support
various project and document overrides.



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5431 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-11-23 17:25:58 +00:00
Nick Treleaven
ddefb0a0b4 Add API functions (patch by Eugene Arshinov, thanks):
Move editor.c: is_{string,comment,code}_style() functions to
highlighting.c, add to API.
Add editor_find_snippet(), editor_insert_snippet(),
utils_find_open_xml_tag() to API.



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5409 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-11-16 15:07:40 +00:00
Nick Treleaven
cb9982480f Make Reflow Lines/Block command use the current indented block, not
the whole paragraph, which could have mixed indentation.
Fix memory leak and off-by-one bug on first line when using Select
Paragraph command.



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5408 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-11-16 13:26:04 +00:00
Nick Treleaven
9e7515450a Don't use XML tag auto-indentation when '</' is to the right of the
cursor; allow auto-indentation when XML tag auto-closing is also
enabled.



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5406 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-11-15 13:06:11 +00:00
Nick Treleaven
3c558f52c5 Fix wrong snippet indentation when original cursor line has
non-indentation whitespace (patch by david, thanks).



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5397 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-11-11 13:27:34 +00:00
Nick Treleaven
eba0571fb6 Add xml_indent_tags filetype setting for documents using the
HTML/XML lexers (patch by Eugene Arshinov, thanks).



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5392 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-11-10 17:47:55 +00:00
Nick Treleaven
e38f2f6a17 Add 'Project->Apply Default Indentation' menu command to override
every document's indentation settings.
Improve 'Indentation' section docs.



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5386 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-11-08 18:15:14 +00:00
Nick Treleaven
e37b8eab76 Respect 'Smart' home key for Shift+Alt+Home (patch by Dimitar
Zhekov, thanks).



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5381 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-11-08 12:10:17 +00:00
Nick Treleaven
0a6f825926 Respect 'Smart' home key for Shift+Home (fixes #3100290).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5350 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-11-01 16:16:20 +00:00
Nick Treleaven
dbb9a1b2b8 Fix not autocompleting when breaking lines.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5343 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-10-29 15:00:42 +00:00
Nick Treleaven
eae0f24ba4 Simplify line breaking using SCI_NEWLINE message.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5336 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-10-27 16:28:28 +00:00
Nick Treleaven
568f1853d2 Remove unnecessary uses of FILETYPE_ID() macro with
GeanyDocument::file_type.



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5323 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-10-25 17:24:47 +00:00
Nick Treleaven
3c6212544c Auto-indent after an HTML/XML line with a missing closing tag (patch
by Eugene Arshinov, thanks).
Behaviour only applies if XML tag autoclosing is off.



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5322 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-10-25 16:58:13 +00:00
Nick Treleaven
a274363275 Move HTML automatic <table> tag completion into a 'table' snippet
so the user can decide when to use it (patch by Eugene Arshinov,
thanks).



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5320 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-10-25 16:07:15 +00:00
Nick Treleaven
3367e67393 Use editor_get_eol_char() instead of inline copy.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5304 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-10-20 11:38:37 +00:00
Nick Treleaven
14d751dd87 Don't cache overridden lexer properties.
Add foreach_strv() to plugin API.
Add utils_strv_join().



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5280 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-10-05 11:07:10 +00:00
Nick Treleaven
0f63274d8b Avoid global variable.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5279 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-10-04 14:33:21 +00:00
Nick Treleaven
1b6b5210eb Read snippet keybindings from system keyfile also.
Add keybinding example to default snippet.conf.



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5278 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-10-04 14:29:44 +00:00
Nick Treleaven
75a366c1e3 Rename snippets_init -> snippets_load.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5274 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-10-04 10:41:06 +00:00
Nick Treleaven
ae70850596 Add snippet keybinding support for keys in user snippets.conf (based
on patch by Eugene Arshinov, thanks). No docs yet.



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5271 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-10-01 15:08:43 +00:00
Nick Treleaven
45399a19f8 Refactor editor_snippets_init().
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5270 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-10-01 14:28:05 +00:00
Enrico Tröger
a29174086a When commenting/uncommenting with single-line comment characters, ignore any end of line characters before evaluating the current line.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5259 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-09-26 18:02:36 +00:00
Nick Treleaven
e664c8344f Allow per-document indent width setting (patch by Jiří Techet,
updated by Erik de Castro Lopo - thanks).



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5228 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-09-14 15:01:29 +00:00
Nick Treleaven
9c527a8063 Remove duplicate checks.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5218 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-09-09 17:00:41 +00:00
Nick Treleaven
c867de1041 Use Octave lexer instead of Matlab to support Octave # comment char.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5174 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-08-17 14:07:58 +00:00
Enrico Tröger
0f7d1928cc Add editor_goto_pos() to the plugin API.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5164 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-08-15 17:44:31 +00:00
Nick Treleaven
75a681b15a Revert r4840 scope completion mode as it sometimes breaks
autocompletion.



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5123 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-08-10 16:12:24 +00:00
Enrico Tröger
befcb63e59 Ensure inserted templates always have proper line ending characters
according to the current document's preference.
This is also fixes problems with templates on Windows which had
always Unix line ending characters but now since they are read
from files, these have Windows line ending characters and had been
converted twice.

git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5114 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-08-01 17:20:50 +00:00
Nick Treleaven
49ed139da7 Fix scrolling the editor line in view after loading a session and
switching document tabs. Note this causes repainting so needs
improvement.



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5098 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-07-09 12:12:23 +00:00
Nick Treleaven
2265fe283a Don't unnecessarily test G_FILE_TEST_IS_SYMLINK when testing
G_FILE_TEST_IS_REGULAR (patch by Dimitar Zhekov, thanks).



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5089 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-07-05 12:03:27 +00:00
Nick Treleaven
fa9acc8caa Tidy comment; remove unnecessary assignment.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5088 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-07-05 11:59:08 +00:00
Nick Treleaven
0168e3e475 Use SCI_SETFIRSTVISIBLELINE for editor_scroll_to_line(). Note this
doesn't affect the bug with document switching not scrolling cursor
in view after loading a session.



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5075 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-06-30 12:15:13 +00:00
Nick Treleaven
e7181e9295 Group undo action for Insert Multiline Comment.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@5015 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-06-10 15:43:50 +00:00
Enrico Tröger
48064120f8 Small improvements to speed up quit process with many open documents.
Avoid calling gtk_notebook_remove_page() on exit as it takes a lot of time.

git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@4921 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-05-16 17:43:24 +00:00
Enrico Tröger
e382869a16 Allow '+<number' and '-<number>' as values for Goto Line inputs to jump relative to the current line (closes #2997238).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@4894 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-05-09 15:48:55 +00:00
Nick Treleaven
16c87d5e7e Warn user if hidden hard tab width setting is not 8.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@4867 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-04-30 15:02:33 +00:00
Enrico Tröger
8c963d2829 Make string arguments const where appropriate (patch by Colomban Wendling, thanks).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@4862 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-04-25 17:43:39 +00:00
Nick Treleaven
cbf9813632 Recalculate line margin width when zooming (fixes #2990553).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@4853 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-04-22 16:02:45 +00:00
Nick Treleaven
6786e05e03 Support {pc} wildcard in snippets to escape percent char.
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@4852 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-04-22 13:01:45 +00:00
Nick Treleaven
cdd93f7ab8 Support {ob} and {cb} wildcards for snippets too (fixes #2937008).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@4847 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-04-21 17:19:27 +00:00
Nick Treleaven
216bf2e5f5 Fix Class Builder plugin to use correct indentation instead of
always tabs.
Make editor_insert_text_block() only replace leading tabs for the
'Tabs' indent type; also group edits for undo.



git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@4845 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-04-21 17:04:31 +00:00
Enrico Tröger
c499da1b4d Add a static global variable to monitor autocompletion mode in order to prevent cancellation of the struct/class (C/C++) auto completion list (patch by Thomas Martitz, thanks).
git-svn-id: https://geany.svn.sourceforge.net/svnroot/geany/trunk@4840 ea778897-0a13-0410-b9d1-a72fbfd435f5
2010-04-19 20:42:44 +00:00