forked from aniani/vim
Problem: When using ":'<,'>del" errors may be given for the visual line
numbers being out of range.
Solution: Reset Visual mode in ":del". (Lech Lorens)
38 lines
823 B
Plaintext
38 lines
823 B
Plaintext
Test for visual mode not being reset causing E315 error.
|
|
STARTTEST
|
|
:so small.vim
|
|
:enew
|
|
:let g:msg="Everything's fine."
|
|
:function! TriggerTheProblem()
|
|
: " At this point there is no visual selection because :call reset it.
|
|
: " Let's restore the selection:
|
|
: normal gv
|
|
: '<,'>del _
|
|
: try
|
|
: exe "normal \<Esc>"
|
|
: catch /^Vim\%((\a\+)\)\=:E315/
|
|
: echom 'Snap! E315 error!'
|
|
: let g:msg='Snap! E315 error!'
|
|
: endtry
|
|
:endfunction
|
|
:enew
|
|
:setl buftype=nofile
|
|
:call append(line('$'), 'Delete this line.')
|
|
:"
|
|
:"
|
|
:" NOTE: this has to be done by a call to a function because executing :del the
|
|
:" ex-way will require the colon operator which resets the visual mode thus
|
|
:" preventing the problem:
|
|
:"
|
|
GV:call TriggerTheProblem()
|
|
:%del _
|
|
:call append(line('$'), g:msg)
|
|
:w! test.out
|
|
:brewind
|
|
ENDTEST
|
|
|
|
STARTTEST
|
|
:qa!
|
|
ENDTEST
|
|
|