Mercurial > vim
view src/testdir/test_fileformat.vim @ 16660:04c2614af21c v8.1.1332
patch 8.1.1332: cannot flush listeners without redrawing, mix of changes
commit https://github.com/vim/vim/commit/fe1ade0a78a70a4c7ddaebb6964497f037f4997a
Author: Bram Moolenaar <Bram@vim.org>
Date: Tue May 14 21:20:36 2019 +0200
patch 8.1.1332: cannot flush listeners without redrawing, mix of changes
Problem: Cannot flush change listeners without also redrawing. The line
numbers in the list of changes may become invalid.
Solution: Add listener_flush(). Invoke listeners before adding a change
that makes line numbers invalid.
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Tue, 14 May 2019 21:30:06 +0200 |
parents | d6857a8dc07e |
children | 140bf183f946 |
line wrap: on
line source
" Test behavior of fileformat after bwipeout of last buffer func Test_fileformat_after_bw() bwipeout set fileformat& if &fileformat == 'dos' let test_fileformats = 'unix' elseif &fileformat == 'unix' let test_fileformats = 'mac' else " must be mac let test_fileformats = 'dos' endif exec 'set fileformats='.test_fileformats bwipeout! call assert_equal(test_fileformats, &fileformat) set fileformats& endfunc func Test_fileformat_autocommand() let filecnt = ["", "foobar\<CR>", "eins\<CR>", "\<CR>", "zwei\<CR>", "drei", "vier", "fünf", ""] let ffs = &ffs call writefile(filecnt, 'Xfile', 'b') au BufReadPre Xfile set ffs=dos ff=dos new Xfile call assert_equal('dos', &l:ff) call assert_equal('dos', &ffs) " cleanup call delete('Xfile') let &ffs = ffs au! BufReadPre Xfile bw! endfunc