view src/testdir/test8.in @ 8907:5deb9e8f4292 v7.4.1740

commit https://github.com/vim/vim/commit/4d585022023b96f6507e8cae5ed8fc8d926f5140 Author: Bram Moolenaar <Bram@vim.org> Date: Thu Apr 14 19:50:22 2016 +0200 patch 7.4.1740 Problem: syn-cchar defined with matchadd() does not appear if there are no other syntax definitions which matches buffer text. Solution: Check for startcol. (Ozaki Kiichi, haya14busa, closes https://github.com/vim/vim/issues/757)
author Christian Brabandt <cb@256bit.org>
date Thu, 14 Apr 2016 20:00:07 +0200
parents 1899acc5aebd
children
line wrap: on
line source

Test for BufWritePre autocommand that deletes or unloads the buffer.
Test for BufUnload autocommand that unloads all other buffers.

STARTTEST
:so small.vim
:au BufWritePre Xxx1 bunload
:au BufWritePre Xxx2 bwipe
/^start of
A1:.,/end of/w! Xxx1  " write test file Xxx1
$r2:.,/end of/w! Xxx2   " write test file Xxx2
:e! Xxx2                " edit Xxx2
:bdel test8.in		" delete this file from the buffer list
:e Xxx1                 " edit Xxx1
:w                      " write it, will unload it and give an error msg
:w! test.out            " Write contents of this file
:e! Xxx2                " start editing Xxx2
:bwipe test.out         " remove test.out from the buffer list
:w                      " write it, will delete the buffer and give an error msg
:w >>test.out           " Append contents of this file
:au! BufWritePre
:func CloseAll()
  let i = 0
  while i <= bufnr('$')
    if i != bufnr('%') && bufloaded(i)
      exe  i . "bunload"
    endif
    let i += 1
  endwhile
endfunc
:func WriteToOut()
  edit! test.out
  $put ='VimLeave done'
  write
endfunc
:set viminfo='100,nviminfo
:au BufUnload * call CloseAll()
:au VimLeave * call WriteToOut()
:e small.vim
:sp mbyte.vim
:q
:qa!
ENDTEST

start of Xxx
	test
end of Xxx