[geany/geany-plugins] 06a579: Added keybinding for jumping to matching tag
Sagar Chalise
git-noreply at xxxxx
Tue Jan 3 20:44:23 UTC 2017
Branch: refs/heads/master
Author: Sagar Chalise <chalisesagar at gmail.com>
Committer: Frank Lanitz <frank at frank.uvena.de>
Date: Tue, 03 Jan 2017 20:44:23 UTC
Commit: 06a5792475c836e013a58917b315f452ae575f0f
https://github.com/geany/geany-plugins/commit/06a5792475c836e013a58917b315f452ae575f0f
Log Message:
-----------
Added keybinding for jumping to matching tag
Modified Paths:
--------------
pairtaghighlighter/src/pair_tag_highlighter.c
Modified: pairtaghighlighter/src/pair_tag_highlighter.c
31 lines changed, 30 insertions(+), 1 deletions(-)
===================================================================
@@ -21,6 +21,12 @@
#define NONMATCHING_PAIR_COLOR 0xff0000 /* red */
#define EMPTY_TAG_COLOR 0xffff00 /* yellow */
+/* Keyboard Shortcut */
+enum {
+ KB_MATCH_TAG,
+ KB_COUNT
+};
+
/* These items are set by Geany before plugin_init() is called. */
GeanyPlugin *geany_plugin;
GeanyData *geany_data;
@@ -382,7 +388,7 @@ static gboolean on_editor_notify(GObject *obj, GeanyEditor *editor,
gint lexer;
lexer = sci_get_lexer(editor->sci);
- if((lexer != SCLEX_HTML) && (lexer != SCLEX_XML))
+ if((lexer != SCLEX_HTML) && (lexer != SCLEX_XML) && (lexer != SCLEX_PHPSCRIPT))
{
return FALSE;
}
@@ -399,6 +405,25 @@ static gboolean on_editor_notify(GObject *obj, GeanyEditor *editor,
return FALSE;
}
+static void
+on_kb_goto_matching_tag (guint key_id)
+{
+ gint cur_line;
+ gint jump_line = 0;
+ if(highlightedBrackets[0] != highlightedBrackets[2] && highlightedBrackets[0] != 0){
+ GeanyDocument *doc = document_get_current();
+ cur_line = sci_get_current_position(doc->editor->sci);
+ if(cur_line >= highlightedBrackets[0] && cur_line <= highlightedBrackets[1]){
+ jump_line = highlightedBrackets[2];
+ }
+ else if(cur_line >= highlightedBrackets[2] && cur_line <= highlightedBrackets[3]){
+ jump_line = highlightedBrackets[0];
+ }
+ if(jump_line != 0){
+ sci_set_current_position(doc->editor->sci, jump_line, TRUE);
+ }
+ }
+}
PluginCallback plugin_callbacks[] =
{
@@ -409,6 +434,10 @@ PluginCallback plugin_callbacks[] =
void plugin_init(GeanyData *data)
{
+ GeanyKeyGroup *group;
+ group = plugin_set_key_group (geany_plugin, "Pair Tag Highlighter", KB_COUNT, NULL);
+ keybindings_set_item (group, KB_MATCH_TAG, on_kb_goto_matching_tag,
+ 0, 0, "goto_matching_tag", _("Go To Matching Tag"), NULL);
}
--------------
This E-Mail was brought to you by github_commit_mail.py (Source: https://github.com/geany/infrastructure).
More information about the Plugins-Commits
mailing list