Mercurial > vim
view src/testdir/test_filetype.vim @ 11639:71d7b5ed08a0 v8.0.0702
patch 8.0.0702: an error in a timer can make Vim unusable
commit https://github.com/vim/vim/commit/c577d813b7978345dec4310b2d8f5d5624a681f6
Author: Bram Moolenaar <Bram@vim.org>
Date: Sat Jul 8 22:37:34 2017 +0200
patch 8.0.0702: an error in a timer can make Vim unusable
Problem: An error in a timer can make Vim unusable.
Solution: Don't set the error flag or exception from a timer. Stop a timer
if it causes an error 3 out of 3 times. Discard an exception
caused inside a timer.
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Sat, 08 Jul 2017 22:45:03 +0200 |
parents | 561b76ed9d12 |
children | c2aa4af29251 |
line wrap: on
line source
" Test :setfiletype func Test_detection() filetype on augroup filetypedetect au BufNewFile,BufRead * call assert_equal(1, did_filetype()) augroup END new something.vim call assert_equal('vim', &filetype) bwipe! filetype off endfunc func Test_conf_type() filetype on call writefile(['# some comment', 'must be conf'], 'Xfile') augroup filetypedetect au BufNewFile,BufRead * call assert_equal(0, did_filetype()) augroup END split Xfile call assert_equal('conf', &filetype) bwipe! call delete('Xfile') filetype off endfunc func Test_other_type() filetype on augroup filetypedetect au BufNewFile,BufRead * call assert_equal(0, did_filetype()) au BufNewFile,BufRead Xfile setf testfile au BufNewFile,BufRead * call assert_equal(1, did_filetype()) augroup END call writefile(['# some comment', 'must be conf'], 'Xfile') split Xfile call assert_equal('testfile', &filetype) bwipe! call delete('Xfile') filetype off endfunc