diff options
Diffstat (limited to 'data/vim/patches/8.1.0083')
-rw-r--r-- | data/vim/patches/8.1.0083 | 196 |
1 files changed, 0 insertions, 196 deletions
diff --git a/data/vim/patches/8.1.0083 b/data/vim/patches/8.1.0083 deleted file mode 100644 index ec805d366..000000000 --- a/data/vim/patches/8.1.0083 +++ /dev/null @@ -1,196 +0,0 @@ -To: vim_dev@googlegroups.com -Subject: Patch 8.1.0083 -Fcc: outbox -From: Bram Moolenaar <Bram@moolenaar.net> -Mime-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit ------------- - -Patch 8.1.0083 -Problem: "is" and "as" have trouble with quoted punctuation. -Solution: Check for punctuation before a quote. (Jason Franklin) -Files: src/search.c, src/testdir/test_textobjects.vim - - -*** ../vim-8.1.0082/src/search.c 2018-05-22 17:50:38.679980719 +0200 ---- src/search.c 2018-06-19 18:19:14.194486159 +0200 -*************** -*** 2707,2716 **** - } - - /* -! * findsent(dir, count) - Find the start of the next sentence in direction -! * "dir" Sentences are supposed to end in ".", "!" or "?" followed by white -! * space or a line break. Also stop at an empty line. -! * Return OK if the next sentence was found. - */ - int - findsent(int dir, long count) ---- 2707,2717 ---- - } - - /* -! * Find the start of the next sentence, searching in the direction specified -! * by the "dir" argument. The cursor is positioned on the start of the next -! * sentence when found. If the next sentence is found, return OK. Return FAIL -! * otherwise. See ":h sentence" for the precise definition of a "sentence" -! * text object. - */ - int - findsent(int dir, long count) -*************** -*** 2758,2783 **** - else if (dir == BACKWARD) - decl(&pos); - -! /* go back to the previous non-blank char */ - found_dot = FALSE; -! while ((c = gchar_pos(&pos)) == ' ' || c == '\t' || -! (dir == BACKWARD && vim_strchr((char_u *)".!?)]\"'", c) != NULL)) - { -! if (vim_strchr((char_u *)".!?", c) != NULL) -! { -! /* Only skip over a '.', '!' and '?' once. */ -! if (found_dot) -! break; - found_dot = TRUE; -! } -! if (decl(&pos) == -1) - break; -! /* when going forward: Stop in front of empty line */ -! if (LINEEMPTY(pos.lnum) && dir == FORWARD) -! { -! incl(&pos); -! goto found; -! } - } - - /* remember the line where the search started */ ---- 2759,2783 ---- - else if (dir == BACKWARD) - decl(&pos); - -! // go back to the previous non-white non-punctuation character - found_dot = FALSE; -! while (c = gchar_pos(&pos), VIM_ISWHITE(c) -! || vim_strchr((char_u *)".!?)]\"'", c) != NULL) - { -! tpos = pos; -! if (decl(&tpos) == -1 || (LINEEMPTY(tpos.lnum) && dir == FORWARD)) -! break; -! -! if (found_dot) -! break; -! if (vim_strchr((char_u *) ".!?", c) != NULL) - found_dot = TRUE; -! -! if (vim_strchr((char_u *) ")]\"'", c) != NULL -! && vim_strchr((char_u *) ".!?)]\"'", gchar_pos(&tpos)) == NULL) - break; -! -! decl(&pos); - } - - /* remember the line where the search started */ -*** ../vim-8.1.0082/src/testdir/test_textobjects.vim 2018-02-09 18:06:35.000000000 +0100 ---- src/testdir/test_textobjects.vim 2018-06-19 18:16:20.911420342 +0200 -*************** -*** 165,167 **** ---- 165,242 ---- - 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 -*** ../vim-8.1.0082/src/version.c 2018-06-19 17:49:20.300015350 +0200 ---- src/version.c 2018-06-19 18:27:12.611837877 +0200 -*************** -*** 763,764 **** ---- 763,766 ---- - { /* Add new patch number below this line */ -+ /**/ -+ 83, - /**/ - --- -From "know your smileys": - y:-) Bad toupee - - /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\ -/// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\ -\\\ an exciting new programming language -- http://www.Zimbu.org /// - \\\ help me help AIDS victims -- http://ICCF-Holland.org /// |