[gnome-builder/wip/libide] libide: add vim >> and << movements



commit ae4c6afdb07f03215ca53e716b55f2cf3c57ccc0
Author: Christian Hergert <christian hergert me>
Date:   Fri Mar 6 12:49:06 2015 -0800

    libide: add vim >> and << movements

 data/keybindings/vim.css |   22 ++++++++++++++++++++++
 1 files changed, 22 insertions(+), 0 deletions(-)
---
diff --git a/data/keybindings/vim.css b/data/keybindings/vim.css
index 0d88fe9..996ddaa 100644
--- a/data/keybindings/vim.css
+++ b/data/keybindings/vim.css
@@ -209,6 +209,9 @@
                     "copy-clipboard" ()
                     "delete-selection" () };
 
+  bind "greater" { "set-mode" ("vim-normal-indent", transient) };
+  bind "less" { "set-mode" ("vim-normal-indent", transient) };
+
   /* join selected lines */
   bind "<shift>j" { "movement" (first-char, 0, 0, 0)
                     "movement" (next-line, 1, 0, 0)
@@ -324,6 +327,20 @@
                   "delete-selection" () };
 }
 
+ binding-set builder-vim-source-view-normal-indent
+{
+  bind "greater" { "movement" (first-char, 0, 1, 0)
+                   "movement" (line-end, 1, 1, 0)
+                   "indent-selection" (1)
+                   "clear-selection" ()
+                   "movement" (first-nonspace-char, 0, 1, 0) };
+  bind "less"    { "movement" (first-char, 0, 1, 0)
+                   "movement" (line-end, 1, 1, 0)
+                   "indent-selection" (-1)
+                   "clear-selection" ()
+                   "movement" (first-nonspace-char, 0, 1, 0) };
+}
+
 @binding-set builder-vim-source-view-normal-z
 {
   bind "z" { "movement" (scroll-screen-center, 0, 0, 0) };
@@ -654,6 +671,11 @@ IdeSourceViewMode.vim-normal-g-u {
                     builder-vim-source-view-normal-g-u;
 }
 
+IdeSourceViewMode.vim-normal-indent {
+  gtk-key-bindings: builder-vim-source-view,
+                    builder-vim-source-view-normal-indent;
+}
+
 IdeSourceViewMode.vim-normal-y {
   gtk-key-bindings: builder-vim-source-view,
                     builder-vim-source-view-normal-y;


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]