SF.net SVN: geany:[5297] trunk
ntrel at users.sourceforge.net
ntrel at xxxxx
Fri Oct 15 17:15:13 UTC 2010
Revision: 5297
http://geany.svn.sourceforge.net/geany/?rev=5297&view=rev
Author: ntrel
Date: 2010-10-15 17:15:13 +0000 (Fri, 15 Oct 2010)
Log Message:
-----------
Add 'Insert New Line Before/After Current' keybindings (based on
patch by Eugene Arshinov, thanks).
Modified Paths:
--------------
trunk/ChangeLog
trunk/doc/geany.html
trunk/doc/geany.txt
trunk/src/keybindings.c
trunk/src/keybindings.h
Modified: trunk/ChangeLog
===================================================================
--- trunk/ChangeLog 2010-10-15 16:04:38 UTC (rev 5296)
+++ trunk/ChangeLog 2010-10-15 17:15:13 UTC (rev 5297)
@@ -5,6 +5,9 @@
* tagmanager/c.c:
Ignore D unittest blocks.
Parse D template functions with constraints.
+ * src/keybindings.c, src/keybindings.h, doc/geany.txt, doc/geany.html:
+ Add 'Insert New Line Before/After Current' keybindings (based on
+ patch by Eugene Arshinov, thanks).
2010-10-08 Nick Treleaven <nick(dot)treleaven(at)btinternet(dot)com>
Modified: trunk/doc/geany.html
===================================================================
--- trunk/doc/geany.html 2010-10-15 16:04:38 UTC (rev 5296)
+++ trunk/doc/geany.html 2010-10-15 17:15:13 UTC (rev 5297)
@@ -6,7 +6,7 @@
<meta name="generator" content="Docutils 0.4: http://docutils.sourceforge.net/" />
<title>Geany</title>
<meta name="authors" content="Enrico Tröger Nick Treleaven Frank Lanitz" />
-<meta name="date" content="2010-10-04" />
+<meta name="date" content="2010-10-07" />
<style type="text/css">
/*
@@ -139,7 +139,7 @@
<br />Nick Treleaven
<br />Frank Lanitz</td></tr>
<tr><th class="docinfo-name">Date:</th>
-<td>2010-10-04</td></tr>
+<td>2010-10-07</td></tr>
<tr><th class="docinfo-name">Version:</th>
<td>0.20</td></tr>
</tbody>
@@ -3518,6 +3518,14 @@
characters of the amount of a tab width when
tabs should be used for indentation.</td>
</tr>
+<tr><td>Insert New Line Before Current</td>
+<td> </td>
+<td>Inserts a new line with indentation.</td>
+</tr>
+<tr><td>Insert New Line After Current</td>
+<td> </td>
+<td>Inserts a new line with indentation.</td>
+</tr>
</tbody>
</table>
</div>
@@ -6256,7 +6264,7 @@
<div class="footer">
<hr class="footer" />
<a class="reference" href="geany.txt">View document source</a>.
-Generated on: 2010-10-07 14:02 UTC.
+Generated on: 2010-10-15 17:13 UTC.
Generated by <a class="reference" href="http://docutils.sourceforge.net/">Docutils</a> from <a class="reference" href="http://docutils.sourceforge.net/rst.html">reStructuredText</a> source.
</div>
Modified: trunk/doc/geany.txt
===================================================================
--- trunk/doc/geany.txt 2010-10-15 16:04:38 UTC (rev 5296)
+++ trunk/doc/geany.txt 2010-10-15 17:15:13 UTC (rev 5297)
@@ -3102,6 +3102,10 @@
be used for indentation and inserts space
characters of the amount of a tab width when
tabs should be used for indentation.
+
+Insert New Line Before Current Inserts a new line with indentation.
+
+Insert New Line After Current Inserts a new line with indentation.
=============================== ========================= ==================================================
Modified: trunk/src/keybindings.c
===================================================================
--- trunk/src/keybindings.c 2010-10-15 16:04:38 UTC (rev 5296)
+++ trunk/src/keybindings.c 2010-10-15 17:15:13 UTC (rev 5297)
@@ -372,6 +372,10 @@
LW(insert_date_custom1));
keybindings_set_item(group, GEANY_KEYS_INSERT_ALTWHITESPACE, NULL,
0, 0, "edit_insertwhitespace", _("_Insert Alternative White Space"), NULL);
+ keybindings_set_item(group, GEANY_KEYS_INSERT_LINEBEFORE, NULL,
+ 0, 0, "edit_insertlinebefore", _("Insert New Line Before Current"), NULL);
+ keybindings_set_item(group, GEANY_KEYS_INSERT_LINEAFTER, NULL,
+ 0, 0, "edit_insertlineafter", _("Insert New Line After Current"), NULL);
group = ADD_KB_GROUP(SETTINGS, _("Settings"), NULL);
@@ -2537,6 +2541,27 @@
}
+static void insert_line_after(GeanyEditor *editor)
+{
+ ScintillaObject *sci = editor->sci;
+
+ sci_send_command(sci, SCI_LINEEND);
+ sci_send_command(sci, SCI_NEWLINE);
+}
+
+
+static void insert_line_before(GeanyEditor *editor)
+{
+ ScintillaObject *sci = editor->sci;
+ gint line = sci_get_current_line(sci);
+ gint indentpos = sci_get_line_indent_position(sci, line);
+
+ sci_set_current_position(sci, indentpos, TRUE);
+ sci_send_command(sci, SCI_NEWLINE);
+ sci_send_command(sci, SCI_LINEUP);
+}
+
+
/* common function for insert keybindings, only valid when scintilla has focus. */
static gboolean cb_func_insert_action(guint key_id)
{
@@ -2556,6 +2581,12 @@
gtk_menu_item_activate(GTK_MENU_ITEM(
ui_lookup_widget(main_widgets.window, "insert_date_custom1")));
break;
+ case GEANY_KEYS_INSERT_LINEAFTER:
+ insert_line_after(doc->editor);
+ break;
+ case GEANY_KEYS_INSERT_LINEBEFORE:
+ insert_line_before(doc->editor);
+ break;
}
return TRUE;
}
Modified: trunk/src/keybindings.h
===================================================================
--- trunk/src/keybindings.h 2010-10-15 16:04:38 UTC (rev 5296)
+++ trunk/src/keybindings.h 2010-10-15 17:15:13 UTC (rev 5297)
@@ -236,6 +236,8 @@
GEANY_KEYS_FILE_OPENLASTTAB, /**< Keybinding. */
GEANY_KEYS_SEARCH_FINDINFILES, /**< Keybinding. */
GEANY_KEYS_GOTO_NEXTWORDPART, /**< Keybinding. */
+ GEANY_KEYS_INSERT_LINEAFTER, /**< Keybinding. */
+ GEANY_KEYS_INSERT_LINEBEFORE, /**< Keybinding. */
GEANY_KEYS_COUNT /* must not be used by plugins */
};
@@ -273,4 +275,3 @@
gboolean keybindings_check_event(GdkEventKey *ev, GeanyKeyBinding *kb);
#endif
-
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