| 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 |
| |