summaryrefslogtreecommitdiffstats
path: root/source/ap/vim/patches/7.3.609
diff options
context:
space:
mode:
author Patrick J Volkerding <volkerdi@slackware.com>2012-09-26 01:10:42 +0000
committer Eric Hameleers <alien@slackware.com>2018-05-31 22:51:55 +0200
commit9664bee729d487bcc0a0bc35859f8e13d5421c75 (patch)
treeb428a16618e36ed864a8d76ea3435e19a452bf90 /source/ap/vim/patches/7.3.609
parent75a4a592e5ccda30715f93563d741b83e0dcf39e (diff)
downloadcurrent-9664bee729d487bcc0a0bc35859f8e13d5421c75.tar.gz
current-9664bee729d487bcc0a0bc35859f8e13d5421c75.tar.xz
Slackware 14.0slackware-14.0
Wed Sep 26 01:10:42 UTC 2012 Slackware 14.0 x86_64 stable is released! We're perfectionists here at Slackware, so this release has been a long time a-brewing. But we think you'll agree that it was worth the wait. Slackware 14.0 combines modern components, ease of use, and flexible configuration... our "KISS" philosophy demands it. The ISOs are off to be replicated, a 6 CD-ROM 32-bit set and a dual-sided 32-bit/64-bit x86/x86_64 DVD. Please consider supporting the Slackware project by picking up a copy from store.slackware.com. We're taking pre-orders now, and offer a discount if you sign up for a subscription. Thanks to everyone who helped make this happen. The Slackware team, the upstream developers, and (of course) the awesome Slackware user community. Have fun! :-)
Diffstat (limited to 'source/ap/vim/patches/7.3.609')
-rw-r--r--source/ap/vim/patches/7.3.609251
1 files changed, 251 insertions, 0 deletions
diff --git a/source/ap/vim/patches/7.3.609 b/source/ap/vim/patches/7.3.609
new file mode 100644
index 000000000..ed731f509
--- /dev/null
+++ b/source/ap/vim/patches/7.3.609
@@ -0,0 +1,251 @@
+To: vim_dev@googlegroups.com
+Subject: Patch 7.3.609
+Fcc: outbox
+From: Bram Moolenaar <Bram@moolenaar.net>
+Mime-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+------------
+
+Patch 7.3.609
+Problem: File names in :checkpath! output are garbled.
+Solution: Check for \zs in the pattern. (Lech Lorens)
+Files: src/search.c, src/testdir/test17.in, src/testdir/test17.ok
+
+
+*** ../vim-7.3.608/src/search.c 2012-07-19 17:18:21.000000000 +0200
+--- src/search.c 2012-07-25 13:33:08.000000000 +0200
+***************
+*** 4740,4756 ****
+ * Isolate the file name.
+ * Include the surrounding "" or <> if present.
+ */
+! for (p = incl_regmatch.endp[0]; !vim_isfilec(*p); p++)
+! ;
+! for (i = 0; vim_isfilec(p[i]); i++)
+! ;
+ if (i == 0)
+ {
+ /* Nothing found, use the rest of the line. */
+ p = incl_regmatch.endp[0];
+ i = (int)STRLEN(p);
+ }
+! else
+ {
+ if (p[-1] == '"' || p[-1] == '<')
+ {
+--- 4740,4772 ----
+ * Isolate the file name.
+ * Include the surrounding "" or <> if present.
+ */
+! if (inc_opt != NULL
+! && strstr((char *)inc_opt, "\\zs") != NULL)
+! {
+! /* pattern contains \zs, use the match */
+! p = incl_regmatch.startp[0];
+! i = (int)(incl_regmatch.endp[0]
+! - incl_regmatch.startp[0]);
+! }
+! else
+! {
+! /* find the file name after the end of the match */
+! for (p = incl_regmatch.endp[0];
+! *p && !vim_isfilec(*p); p++)
+! ;
+! for (i = 0; vim_isfilec(p[i]); i++)
+! ;
+! }
+!
+ if (i == 0)
+ {
+ /* Nothing found, use the rest of the line. */
+ p = incl_regmatch.endp[0];
+ i = (int)STRLEN(p);
+ }
+! /* Avoid checking before the start of the line, can
+! * happen if \zs appears in the regexp. */
+! else if (p > line)
+ {
+ if (p[-1] == '"' || p[-1] == '<')
+ {
+*** ../vim-7.3.608/src/testdir/test17.in 2010-08-15 21:57:29.000000000 +0200
+--- src/testdir/test17.in 2012-07-25 13:41:43.000000000 +0200
+***************
+*** 1,4 ****
+! Tests for "gf" on ${VAR}
+
+ STARTTEST
+ :so small.vim
+--- 1,6 ----
+! Tests for:
+! - "gf" on ${VAR},
+! - ":checkpath!" with various 'include' settings.
+
+ STARTTEST
+ :so small.vim
+***************
+*** 20,27 ****
+ :endif
+ gf
+ :w! test.out
+! :qa!
+ ENDTEST
+
+ ${CDIR}/test17a.in
+ $TDIR/test17a.in
+--- 22,120 ----
+ :endif
+ gf
+ :w! test.out
+! :brewind
+ ENDTEST
+
+ ${CDIR}/test17a.in
+ $TDIR/test17a.in
++
++ STARTTEST
++ :" check for 'include' without \zs or \ze
++ :lang C
++ :!rm -f ./Xbase.a
++ :!rm -rf ./Xdir1
++ :!mkdir -p Xdir1/dir2
++ :e Xdir1/dir2/foo.a
++ i#include "bar.a"
++ :w
++ :e Xdir1/dir2/bar.a
++ i#include "baz.a"
++ :w
++ :e Xdir1/dir2/baz.a
++ i#include "foo.a"
++ :w
++ :e Xbase.a
++ :set path=Xdir1/dir2
++ i#include <foo.a>
++ :w
++ :redir! >>test.out
++ :checkpath!
++ :redir END
++ :brewind
++ ENDTEST
++
++ STARTTEST
++ :" check for 'include' with \zs and \ze
++ :!rm -f ./Xbase.b
++ :!rm -rf ./Xdir1
++ :!mkdir -p Xdir1/dir2
++ :let &include='^\s*%inc\s*/\zs[^/]\+\ze'
++ :function! DotsToSlashes()
++ : return substitute(v:fname, '\.', '/', 'g') . '.b'
++ :endfunction
++ :let &includeexpr='DotsToSlashes()'
++ :e Xdir1/dir2/foo.b
++ i%inc /bar/
++ :w
++ :e Xdir1/dir2/bar.b
++ i%inc /baz/
++ :w
++ :e Xdir1/dir2/baz.b
++ i%inc /foo/
++ :w
++ :e Xbase.b
++ :set path=Xdir1/dir2
++ i%inc /foo/
++ :w
++ :redir! >>test.out
++ :checkpath!
++ :redir END
++ :brewind
++ ENDTEST
++
++ STARTTEST
++ :" check for 'include' with \zs and no \ze
++ :!rm -f ./Xbase.c
++ :!rm -rf ./Xdir1
++ :!mkdir -p Xdir1/dir2
++ :let &include='^\s*%inc\s*\%([[:upper:]][^[:space:]]*\s\+\)\?\zs\S\+\ze'
++ :function! StripNewlineChar()
++ : if v:fname =~ '\n$'
++ : return v:fname[:-2]
++ : endif
++ : return v:fname
++ :endfunction
++ :let &includeexpr='StripNewlineChar()'
++ :e Xdir1/dir2/foo.c
++ i%inc bar.c
++ :w
++ :e Xdir1/dir2/bar.c
++ i%inc baz.c
++ :w
++ :e Xdir1/dir2/baz.c
++ i%inc foo.c
++ :w
++ :e Xdir1/dir2/FALSE.c
++ i%inc foo.c
++ :w
++ :e Xbase.c
++ :set path=Xdir1/dir2
++ i%inc FALSE.c foo.c
++ :w
++ :redir! >>test.out
++ :checkpath!
++ :redir END
++ :brewind
++ :q
++ ENDTEST
++
+*** ../vim-7.3.608/src/testdir/test17.ok 2010-08-15 21:57:29.000000000 +0200
+--- src/testdir/test17.ok 2012-07-25 13:45:37.000000000 +0200
+***************
+*** 1,3 ****
+--- 1,33 ----
+ This file is just to test "gf" in test 17.
+ The contents is not important.
+ Just testing!
++
++
++ --- Included files in path ---
++ Xdir1/dir2/foo.a
++ Xdir1/dir2/foo.a -->
++ Xdir1/dir2/bar.a
++ Xdir1/dir2/bar.a -->
++ Xdir1/dir2/baz.a
++ Xdir1/dir2/baz.a -->
++ "foo.a" (Already listed)
++
++
++ --- Included files in path ---
++ Xdir1/dir2/foo.b
++ Xdir1/dir2/foo.b -->
++ Xdir1/dir2/bar.b
++ Xdir1/dir2/bar.b -->
++ Xdir1/dir2/baz.b
++ Xdir1/dir2/baz.b -->
++ foo (Already listed)
++
++
++ --- Included files in path ---
++ Xdir1/dir2/foo.c
++ Xdir1/dir2/foo.c -->
++ Xdir1/dir2/bar.c
++ Xdir1/dir2/bar.c -->
++ Xdir1/dir2/baz.c
++ Xdir1/dir2/baz.c -->
++ foo.c^@ (Already listed)
+*** ../vim-7.3.608/src/version.c 2012-07-19 18:05:40.000000000 +0200
+--- src/version.c 2012-07-25 13:38:54.000000000 +0200
+***************
+*** 716,717 ****
+--- 716,719 ----
+ { /* Add new patch number below this line */
++ /**/
++ 609,
+ /**/
+
+--
+"The question of whether computers can think is just like the question
+of whether submarines can swim." -- Edsger W. Dijkstra
+
+ /// 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 ///