mirror of
https://git.decapod.one/brethil/dotfiles
synced 2024-11-21 19:11:30 +01:00
vim: fix visual selection commands
- use <leader>gs to run fugitive's Git show on the selected text (must be a git ref) - use <leader>k to run ack on the selected text
This commit is contained in:
parent
34fd5a8726
commit
9430765116
|
@ -64,6 +64,11 @@ function! CmdLine(str)
|
|||
call feedkeys(":" . a:str)
|
||||
endfunction
|
||||
|
||||
" Call Git show on the selected text (must be a git ref)
|
||||
function! GitShowVisual() range
|
||||
execute "Git show " . @*
|
||||
endfunction
|
||||
|
||||
function! VisualSelection(direction, extra_filter) range
|
||||
let l:saved_reg = @"
|
||||
execute "normal! vgvy"
|
||||
|
@ -71,7 +76,7 @@ function! VisualSelection(direction, extra_filter) range
|
|||
let l:pattern = escape(@", "\\/.*'$^~[]")
|
||||
let l:pattern = substitute(l:pattern, "\n$", "", "")
|
||||
|
||||
if a:direction == 'gv'
|
||||
if a:direction == 'ack'
|
||||
call CmdLine("Ack '" . l:pattern . "' ")
|
||||
elseif a:direction == 'replace'
|
||||
call CmdLine("%s" . '/'. l:pattern . '/')
|
||||
|
|
|
@ -70,9 +70,6 @@ nmap <leader>h :ALEHover<CR>
|
|||
nmap <leader>r :ALERename<CR>
|
||||
map <leader>` :ALELint<CR>
|
||||
|
||||
" call ack when pressing gv in visual
|
||||
vnoremap <silent> gv :call VisualSelection('gv', '')<CR>
|
||||
|
||||
map <leader>nn :NERDTreeToggle<CR>
|
||||
map <leader>o :BufExplorer<CR>
|
||||
|
||||
|
@ -85,7 +82,7 @@ map <leader>b :CtrlPBuffer<CR>
|
|||
map <leader>f :CtrlPMRUFiles<CR>
|
||||
map <leader>t :CtrlPTag<CR>
|
||||
|
||||
|
||||
"Misc stuff
|
||||
let s:uname=''
|
||||
let s:uname = system('uname | tr -d "\n"') " Get platform name (stripping the trailing newline)
|
||||
if s:uname == "Darwin"
|
||||
|
@ -107,6 +104,11 @@ noremap <Leader>p "*p
|
|||
noremap <Leader>Y "+y
|
||||
noremap <Leader>P "+p
|
||||
|
||||
|
||||
" A friggin python breakpoint. Invoke with @b "FIXME: make this decent
|
||||
let @b = 'A
breakpoint()ýajkj0'
|
||||
|
||||
|
||||
" visual mode mappings
|
||||
vnoremap <silent> <leader>k :call VisualSelection('ack', '')<CR>
|
||||
vnoremap <silent> <leader>gs :call GitShowVisual()<CR>
|
||||
vnoremap <silent> <leader>r :call VisualSelection('replace', '')<CR>
|
||||
|
|
Loading…
Reference in New Issue
Block a user