-
Notifications
You must be signed in to change notification settings - Fork 10
Expand file tree
/
Copy pathruby_hl_lvar.vim
More file actions
49 lines (40 loc) · 1.44 KB
/
Copy pathruby_hl_lvar.vim
File metadata and controls
49 lines (40 loc) · 1.44 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
if !has('ruby')
echoerr "ruby_hl_lvar: This plugin does not work without has('ruby')"
finish
endif
let g:ruby_hl_lvar_hl_group =
\ get(g:, 'ruby_hl_lvar_hl_group', 'Identifier')
let g:ruby_hl_lvar_auto_enable =
\ get(g:, 'ruby_hl_lvar_auto_enable', 1)
let g:ruby_hl_lvar_show_warnings =
\ get(g:, 'ruby_hl_lvar_show_warnings', 0)
let g:ruby_hl_lvar_highlight_priority =
\ get(g:, 'ruby_hl_lvar_highlight_priority', 0)
augroup ruby_hl_lvar
autocmd!
autocmd Filetype * call Ruby_hl_lvar_filetype()
autocmd BufWinLeave * call ruby_hl_lvar#redraw()
autocmd BufWinEnter * call ruby_hl_lvar#redraw()
autocmd WinEnter * call ruby_hl_lvar#redraw()
autocmd WinLeave * call ruby_hl_lvar#redraw()
autocmd TabEnter * call ruby_hl_lvar#redraw()
autocmd TabLeave * call ruby_hl_lvar#redraw()
augroup END
function! Ruby_hl_lvar_filetype()
if &filetype !~# '\<ruby\>'
return
endif
if !g:ruby_hl_lvar_auto_enable
return ruby_hl_lvar#disable(1)
endif
call ruby_hl_lvar#refresh(1)
augroup ruby_hl_lvar
autocmd! * <buffer>
autocmd TextChanged <buffer> call ruby_hl_lvar#refresh(0)
autocmd InsertEnter <buffer> call ruby_hl_lvar#disable(0)
autocmd InsertLeave <buffer> call ruby_hl_lvar#refresh(0)
augroup END
endfunction
nmap <Plug>(ruby_hl_lvar-enable) :<C-U>call ruby_hl_lvar#enable(1)<CR>
nmap <Plug>(ruby_hl_lvar-disable) :<C-U>call ruby_hl_lvar#disable(1)<CR>
nmap <Plug>(ruby_hl_lvar-refresh) :<C-U>call ruby_hl_lvar#refresh(1)<CR>