SF.net SVN: geany:[3378] trunk
eht16 at users.sourceforge.net
eht16 at xxxxx
Mon Dec 15 21:19:45 UTC 2008
Revision: 3378
http://geany.svn.sourceforge.net/geany/?rev=3378&view=rev
Author: eht16
Date: 2008-12-15 21:19:44 +0000 (Mon, 15 Dec 2008)
Log Message:
-----------
Improve auto-closing of braces, brackets and quotes (patch by Guillaume de Rorthais, thanks).
Modified Paths:
--------------
trunk/ChangeLog
trunk/src/editor.c
Modified: trunk/ChangeLog
===================================================================
--- trunk/ChangeLog 2008-12-15 18:13:31 UTC (rev 3377)
+++ trunk/ChangeLog 2008-12-15 21:19:44 UTC (rev 3378)
@@ -5,6 +5,13 @@
Add stash_group_add_radio_buttons().
+2008-12-14 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
+
+ * src/editor.c:
+ Improve auto-closing of braces, brackets and quotes
+ (patch by Guillaume de Rorthais, thanks).
+
+
2008-12-11 Enrico Tröger <enrico(dot)troeger(at)uvena(dot)de>
* src/plugins.c, src/toolbar.c:
Modified: trunk/src/editor.c
===================================================================
--- trunk/src/editor.c 2008-12-15 18:13:31 UTC (rev 3377)
+++ trunk/src/editor.c 2008-12-15 21:19:44 UTC (rev 3378)
@@ -1010,16 +1010,20 @@
static void auto_close_chars(ScintillaObject *sci, gint pos, gchar c)
{
const gchar *closing_char = NULL;
+ gint end_pos = -1;
- if ((editor_prefs.autoclose_chars & GEANY_AC_PARENTHESIS) && c == '(')
+ if (utils_isbrace(c, 0))
+ end_pos = SSM(sci, SCI_BRACEMATCH, pos - 1, 0);
+
+ if ((editor_prefs.autoclose_chars & GEANY_AC_PARENTHESIS) && end_pos == -1 && c == '(')
{
closing_char = ")";
}
- else if ((editor_prefs.autoclose_chars & GEANY_AC_CBRACKET) && c == '{')
+ else if ((editor_prefs.autoclose_chars & GEANY_AC_CBRACKET) && end_pos == -1 && c == '{')
{
closing_char = "}";
}
- else if ((editor_prefs.autoclose_chars & GEANY_AC_SBRACKET) && c == '[')
+ else if ((editor_prefs.autoclose_chars & GEANY_AC_SBRACKET) && end_pos == -1 && c == '[')
{
closing_char = "]";
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the Commits
mailing list