aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTeddy Wing2015-09-13 16:41:59 -0400
committerTeddy Wing2015-09-13 16:41:59 -0400
commit8e206e6d4ad49d70e4adc2b79feea4bbc426a3f2 (patch)
tree0ab29a0f9f2349b132a083b0b8fce50ff42edbab
parentedbfd44a582cd6c8782c097f0a021d70d0de5ec0 (diff)
downloadvim-grappele-8e206e6d4ad49d70e4adc2b79feea4bbc426a3f2.tar.bz2
Create G recall command
* Add mapping for the recall command. Using `gG` because it's quick, easy to remember, and doesn't appear to be used for anything. * Create `grappele#Recall()` function that goes to the last `G` count * Store the most recent count passed into `G` Using the recall command, you can `G` to the same count that you previously used no matter what buffer you're now in. TODO: The `G` command appears to be running slowly now for whatever reason. Investigate what's going on.
-rw-r--r--autoload/grappele.vim5
-rw-r--r--plugin/grappele.vim5
2 files changed, 10 insertions, 0 deletions
diff --git a/autoload/grappele.vim b/autoload/grappele.vim
index 7d7c660..8a599b9 100644
--- a/autoload/grappele.vim
+++ b/autoload/grappele.vim
@@ -1,5 +1,6 @@
function! grappele#Grappele(line)
let l:current_buffer = 0
+ let s:line = a:line
let l:column_position = 0
let l:column_offset = 0
@@ -15,3 +16,7 @@ function! grappele#Grappele(line)
\ ])
endif
endfunction
+
+function! grappele#Recall()
+ call grappele#Grappele(s:line)
+endfunction
diff --git a/plugin/grappele.vim b/plugin/grappele.vim
index a4fd3fa..a86c02a 100644
--- a/plugin/grappele.vim
+++ b/plugin/grappele.vim
@@ -5,7 +5,12 @@ let g:loaded_grappele = 1
nnoremap <silent> <Plug>Grappele :<c-u>call grappele#Grappele(v:count)<cr>
+nnoremap <silent> <Plug>GrappeleRecall :<c-u>call grappele#Recall()<cr>
if !hasmapto('<Plug>Grappele') || !maparg('G', 'n')
nmap G <Plug>Grappele
endif
+
+if !hasmapto('<Plug>GrappeleRecall') || !maparg('gG', 'n')
+ nmap gG <Plug>GrappeleRecall
+endif