vim-patch:8.1.0083: "is" and "as" have trouble with quoted punctuation

Problem:    "is" and "as" have trouble with quoted punctuation.
Solution:   Check for punctuation before a quote. (Jason Franklin)
8516071124
This commit is contained in:
Jan Edmund Lazo
2018-08-23 18:32:07 -04:00
parent 925c153f86
commit 42428b3f85
2 changed files with 95 additions and 21 deletions

View File

@@ -182,3 +182,78 @@ x
norm it
q!
endfunc
func Test_sentence()
enew!
call setline(1, 'A sentence. A sentence? A sentence!')
normal yis
call assert_equal('A sentence.', @")
normal yas
call assert_equal('A sentence. ', @")
normal )
normal yis
call assert_equal('A sentence?', @")
normal yas
call assert_equal('A sentence? ', @")
normal )
normal yis
call assert_equal('A sentence!', @")
normal yas
call assert_equal(' A sentence!', @")
normal 0
normal 2yis
call assert_equal('A sentence. ', @")
normal 3yis
call assert_equal('A sentence. A sentence?', @")
normal 2yas
call assert_equal('A sentence. A sentence? ', @")
%delete _
endfunc
func Test_sentence_with_quotes()
enew!
call setline(1, 'A "sentence." A sentence.')
normal yis
call assert_equal('A "sentence."', @")
normal yas
call assert_equal('A "sentence." ', @")
normal )
normal yis
call assert_equal('A sentence.', @")
normal yas
call assert_equal(' A sentence.', @")
%delete _
endfunc
func! Test_sentence_with_cursor_on_delimiter()
enew!
call setline(1, "A '([sentence.])' A sentence.")
normal! 15|yis
call assert_equal("A '([sentence.])'", @")
normal! 15|yas
call assert_equal("A '([sentence.])' ", @")
normal! 16|yis
call assert_equal("A '([sentence.])'", @")
normal! 16|yas
call assert_equal("A '([sentence.])' ", @")
normal! 17|yis
call assert_equal("A '([sentence.])'", @")
normal! 17|yas
call assert_equal("A '([sentence.])' ", @")
%delete _
endfunc