Mercurial > vim
diff src/testdir/test83.in @ 3131:52526aec4afb v7.3.336
updated for version 7.3.336
Problem: When a tags file specifies an encoding different from 'enc' it
may hang and using a pattern doesn't work.
Solution: Convert the whole line. Continue reading the header after the
SORT tag. Add test83. (Yukihiro Nakadaira)
author | Bram Moolenaar <bram@vim.org> |
---|---|
date | Wed, 12 Oct 2011 19:53:52 +0200 |
parents | |
children | 1cedbee50ca6 |
line wrap: on
line diff
new file mode 100644 --- /dev/null +++ b/src/testdir/test83.in @@ -0,0 +1,76 @@ +Tests for tag search with !_TAG_FILE_ENCODING. + +STARTTEST +:so mbyte.vim +:if !has('iconv') +: e! test.ok +: w! test.out +: qa! +:endif +:set enc=utf8 + +:/^text for tags1$/,/^text for tags1$/+1w! Xtags1.txt +:/^text for tags2$/,/^text for tags2$/+1w! Xtags2.txt +:/^text for tags3$/,/^text for tags3$/+1w! Xtags3.txt +:/^tags1$/+1,/^tags1-end$/-1w! Xtags1 + +ggdG + +:call setline('.', 'Results of test83') + +:" case1: +:new +:set tags=Xtags1 +:let v:errmsg = '' +:tag abcdefghijklmnopqrs +:if v:errmsg =~ 'E426:' || getline('.') != 'abcdefghijklmnopqrs' +: close +: put ='case1: failed' +:else +: close +: put ='case1: ok' +:endif + +:" case2: +:new +:set tags=test83-tags2 +:let v:errmsg = '' +:tag /.BC +:if v:errmsg =~ 'E426:' || getline('.') != 'ABC' +: close +: put ='case2: failed' +:else +: close +: put ='case2: ok' +:endif + +:" case3: +:new +:set tags=test83-tags3 +:let v:errmsg = '' +:tag abc50 +:if v:errmsg =~ 'E426:' || getline('.') != 'ABC' +: close +: put ='case3: failed' +:else +: close +: put ='case3: ok' +:endif +:close + +:wq! test.out +ENDTEST + +text for tags1 +abcdefghijklmnopqrs + +text for tags2 +ABC + +text for tags3 +ABC + +tags1 +!_TAG_FILE_ENCODING utf-8 // +abcdefghijklmnopqrs Xtags1.txt /abcdefghijklmnopqrs +tags1-end