# HG changeset patch # User vimboss # Date 1116799679 0 # Node ID 33d9c918b8abf72fdd29319d5384bbf527bbdd6e # Parent cd05cd5cea911f37fe2bdf848880c097fee02281 updated for version 7.0075 diff --git a/runtime/doc/change.txt b/runtime/doc/change.txt --- a/runtime/doc/change.txt +++ b/runtime/doc/change.txt @@ -1,4 +1,4 @@ -*change.txt* For Vim version 7.0aa. Last change: 2005 Apr 26 +*change.txt* For Vim version 7.0aa. Last change: 2005 May 22 VIM REFERENCE MANUAL by Bram Moolenaar @@ -19,6 +19,7 @@ 4. Complex changes |complex-change| 4.4 Changing tabs |change-tabs| 5. Copying and moving text |copy-move| 6. Formatting text |formatting| +7. Sorting text |sorting| For inserting text see |insert.txt|. @@ -1479,5 +1480,34 @@ And a few warnings: - Formatting a long paragraph and/or with complicated indenting may be slow. +============================================================================== +7. Sorting text *sorting* + +Vim has a sorting function and a sorting command. The sorting function can be +found here: |sort()|. + + *:sor* *:sort* +:[range]sor[t][!] [i] [u] [/{pattern}/] + Sort lines in [range]. + + With [!] the order is reversed. + + With [i] case is ignored. + + With [u] only keep the first of a sequence of + identical lines (ignoring case when [i] is used). + + When /{pattern}/ is specified the text matched with + {pattern} is skipped, so that you sort on what comes + after the match. For lines without a match sorting + starts in the first column (e.g., for empty lines). + Instead of the slash any non-letter can be used. + For example, to sort on the second comma-separated + field: > + :sort /[^,]*,/ +< To sort on the text at virtual column 10 (thus + ignoring the difference between tabs and spaces): > + :sort /.*\%10v/ +< vim:tw=78:ts=8:ft=help:norl: diff --git a/runtime/doc/eval.txt b/runtime/doc/eval.txt --- a/runtime/doc/eval.txt +++ b/runtime/doc/eval.txt @@ -1,4 +1,4 @@ -*eval.txt* For Vim version 7.0aa. Last change: 2005 May 18 +*eval.txt* For Vim version 7.0aa. Last change: 2005 May 22 VIM REFERENCE MANUAL by Bram Moolenaar @@ -1497,7 +1497,7 @@ getftype( {fname}) String description o getline( {lnum}) String line {lnum} of current buffer getline( {lnum}, {end}) List lines {lnum} to {end} of current buffer getqflist() List list of quickfix items -getreg( [{regname}]) String contents of register +getreg( [{regname} [, 1]]) String contents of register getregtype( [{regname}]) String type of register getwinposx() Number X coord in pixels of GUI Vim window getwinposy() Number Y coord in pixels of GUI Vim window @@ -1587,7 +1587,8 @@ setreg( {n}, {v}[, {opt}]) Number set re setwinvar( {nr}, {varname}, {val}) set {varname} in window {nr} to {val} simplify( {filename}) String simplify filename as much as possible sort( {list} [, {func}]) List sort {list}, using {func} to compare -split( {expr} [, {pat}]) List make List from {pat} separated {expr} +split( {expr} [, {pat} [, {keepempty}]]) + List make List from {pat} separated {expr} strftime( {format}[, {time}]) String time in specified format stridx( {haystack}, {needle}[, {start}]) Number index of {needle} in {haystack} @@ -2558,12 +2559,15 @@ getqflist() *getqflist()* :endfor -getreg([{regname}]) *getreg()* +getreg([{regname} [, 1]]) *getreg()* The result is a String, which is the contents of register {regname}. Example: > :let cliptext = getreg('*') < getreg('=') returns the last evaluated value of the expression register. (For use in maps.) + getreg('=', 1) returns the expression itself, so that it can + be restored with |setreg()|. For other registers the extra + argument is ignored, thus you can always give it. If {regname} is not specified, |v:register| is used. @@ -2577,7 +2581,6 @@ getregtype([{regname}]) *getregtype( is one character with value 0x16. If {regname} is not specified, |v:register| is used. - *getwinposx()* getwinposx() The result is a Number, which is the X coordinate in pixels of the left hand side of the GUI Vim window. The result will be @@ -3598,9 +3601,18 @@ setcmdpos({pos}) *setcmdpos()* setline({lnum}, {line}) *setline()* Set line {lnum} of the current buffer to {line}. {lnum} is used like with |getline()|. + When {lnum} is just below the last line the {line} will be + added as a new line. If this succeeds, 0 is returned. If this fails (most likely because {lnum} is invalid) 1 is returned. Example: > :call setline(5, strftime("%c")) +< When {line} is a List then line {lnum} and following lines + will be set to the items in the list. Example: > + :call setline(5, ['aaa', 'bbb', 'ccc']) +< This is equivalent to: > + :for [n, l] in [[5, 6, 7], ['aaa', 'bbb', 'ccc']] + : call setline(n, l) + :endfor < Note: The '[ and '] marks are not set. @@ -3669,7 +3681,7 @@ setreg({regname}, {value} [,{options}]) < This example shows using the functions to save and restore a register. > - :let var_a = getreg('a') + :let var_a = getreg('a', 1) :let var_amode = getregtype('a') .... :call setreg('a', var_a, var_amode) @@ -3712,6 +3724,7 @@ sort({list} [, {func}]) *sort()* *E7 :let sortedlist = sort(copy(mylist)) < Uses the string representation of each item to sort on. Numbers sort after Strings, Lists after Numbers. + For sorting text in the current buffer use |:sort|. When {func} is given and it is one then case is ignored. When {func} is a Funcref or a function name, this function is called to compare items. The function is invoked with two @@ -3723,21 +3736,23 @@ sort({list} [, {func}]) *sort()* *E7 endfunc let sortedlist = sort(mylist, "MyCompare") -split({expr} [, {pattern}]) *split()* - Make a List out of {expr}. When {pattern} is omitted each - white-separated sequence of characters becomes an item. +split({expr} [, {pattern} [, {keepempty}]]) *split()* + Make a List out of {expr}. When {pattern} is omitted or empty + each white-separated sequence of characters becomes an item. Otherwise the string is split where {pattern} matches, - removing the matched characters. Empty strings are omitted. + removing the matched characters. + When the first or last item is empty it is omitted, unless the + {keepempty} argument is given and it's non-zero. Example: > :let words = split(getline('.'), '\W\+') -< Since empty strings are not added the "\+" isn't required but - it makes the function work a bit faster. - To split a string in individual characters: > +< To split a string in individual characters: > :for c in split(mystring, '\zs') < If you want to keep the separator you can also use '\zs': > :echo split('abc:def:ghi', ':\zs') < ['abc:', 'def:', 'ghi'] ~ - The opposite function is |join()|. + Splitting a table where the first element can be empty: > + :let items = split(line, ':', 1) +< The opposite function is |join()|. strftime({format} [, {time}]) *strftime()* diff --git a/runtime/doc/tags b/runtime/doc/tags --- a/runtime/doc/tags +++ b/runtime/doc/tags @@ -2397,6 +2397,8 @@ 90.5 usr_90.txt /*90.5* :sno change.txt /*:sno* :snomagic change.txt /*:snomagic* :so repeat.txt /*:so* +:sor change.txt /*:sor* +:sort change.txt /*:sort* :source repeat.txt /*:source* :source_crnl repeat.txt /*:source_crnl* :sp windows.txt /*:sp* @@ -5117,6 +5119,7 @@ hebrew hebrew.txt /*hebrew* hebrew.txt hebrew.txt /*hebrew.txt* help various.txt /*help* help-context help.txt /*help-context* +help-tags tags 1 help-translated various.txt /*help-translated* help-xterm-window various.txt /*help-xterm-window* help.txt help.txt /*help.txt* @@ -5639,6 +5642,7 @@ mzscheme if_mzsch.txt /*mzscheme* mzscheme-buffer if_mzsch.txt /*mzscheme-buffer* mzscheme-commands if_mzsch.txt /*mzscheme-commands* mzscheme-examples if_mzsch.txt /*mzscheme-examples* +mzscheme-sandbox if_mzsch.txt /*mzscheme-sandbox* mzscheme-threads if_mzsch.txt /*mzscheme-threads* mzscheme-vim if_mzsch.txt /*mzscheme-vim* mzscheme-vimext if_mzsch.txt /*mzscheme-vimext* @@ -6225,6 +6229,7 @@ sniff-commands if_sniff.txt /*sniff-comm sniff-compiling if_sniff.txt /*sniff-compiling* sniff-intro if_sniff.txt /*sniff-intro* sort() eval.txt /*sort()* +sorting change.txt /*sorting* space intro.txt /*space* spec-customizing pi_spec.txt /*spec-customizing* spec-how-to-use-it pi_spec.txt /*spec-how-to-use-it* diff --git a/src/Makefile b/src/Makefile --- a/src/Makefile +++ b/src/Makefile @@ -1701,7 +1701,7 @@ testclean: # install: $(GUI_INSTALL) -install_normal: installvim installtools install-languages install-icons +install_normal: installvim installtools $(INSTALL_LANGS) install-icons installvim: installvimbin installruntime installlinks installmanlinks installmacros installtutor installspell @@ -1827,7 +1827,8 @@ installspell: $(DEST_VIM) $(DEST_RT) $(D # install helper program xxd installtools: $(TOOLS) $(DESTDIR)$(exec_prefix) $(DEST_BIN) \ - $(TOOLSSOURCE) $(DEST_VIM) $(DEST_RT) $(DEST_TOOLS) + $(TOOLSSOURCE) $(DEST_VIM) $(DEST_RT) $(DEST_TOOLS) \ + $(INSTALL_TOOL_LANGS) if test -f $(DEST_BIN)/xxd$(EXEEXT); then \ mv -f $(DEST_BIN)/xxd$(EXEEXT) $(DEST_BIN)/xxd.rm; \ rm -f $(DEST_BIN)/xxd.rm; \ @@ -1836,14 +1837,7 @@ installtools: $(TOOLS) $(DESTDIR)$(exec_ $(STRIP) $(DEST_BIN)/xxd$(EXEEXT) chmod $(BINMOD) $(DEST_BIN)/xxd$(EXEEXT) -$(SHELL) ./installman.sh xxd $(DEST_MAN) "" $(INSTALLMANARGS) - -$(SHELL) ./installman.sh xxd $(DEST_MAN_FR) "-fr" $(INSTALLMANARGS) - -$(SHELL) ./installman.sh xxd $(DEST_MAN_FR_I) "-fr" $(INSTALLMANARGS) - -$(SHELL) ./installman.sh xxd $(DEST_MAN_FR_U) "-fr.UTF-8" $(INSTALLMANARGS) - -$(SHELL) ./installman.sh xxd $(DEST_MAN_IT) "-it" $(INSTALLMANARGS) - -$(SHELL) ./installman.sh xxd $(DEST_MAN_IT_I) "-it" $(INSTALLMANARGS) - -$(SHELL) ./installman.sh xxd $(DEST_MAN_IT_U) "-it.UTF-8" $(INSTALLMANARGS) - -$(SHELL) ./installman.sh xxd $(DEST_MAN_RU) "-ru" $(INSTALLMANARGS) - -$(SHELL) ./installman.sh xxd $(DEST_MAN_RU_U) "-ru.UTF-8" $(INSTALLMANARGS) + # install the runtime tools $(INSTALL_DATA_R) $(TOOLSSOURCE)/* $(DEST_TOOLS) # When using CVS some CVS directories might have been copied. @@ -1859,6 +1853,17 @@ installtools: $(TOOLS) $(DESTDIR)$(exec_ awkpath=`./which.sh awk` && sed -e "s+/usr/bin/nawk+$$awkpath+" $(TOOLSSOURCE)/mve.awk >$(DEST_TOOLS)/mve.awk; fi; fi -chmod $(SCRIPTMOD) `grep -l "^#!" $(DEST_TOOLS)/*` +# install the language specific files for tools, if they were unpacked +install-tool-languages: + -$(SHELL) ./installman.sh xxd $(DEST_MAN_FR) "-fr" $(INSTALLMANARGS) + -$(SHELL) ./installman.sh xxd $(DEST_MAN_FR_I) "-fr" $(INSTALLMANARGS) + -$(SHELL) ./installman.sh xxd $(DEST_MAN_FR_U) "-fr.UTF-8" $(INSTALLMANARGS) + -$(SHELL) ./installman.sh xxd $(DEST_MAN_IT) "-it" $(INSTALLMANARGS) + -$(SHELL) ./installman.sh xxd $(DEST_MAN_IT_I) "-it" $(INSTALLMANARGS) + -$(SHELL) ./installman.sh xxd $(DEST_MAN_IT_U) "-it.UTF-8" $(INSTALLMANARGS) + -$(SHELL) ./installman.sh xxd $(DEST_MAN_RU) "-ru" $(INSTALLMANARGS) + -$(SHELL) ./installman.sh xxd $(DEST_MAN_RU_U) "-ru.UTF-8" $(INSTALLMANARGS) + # install the language specific files, if they were unpacked install-languages: languages $(DEST_LANG) $(DEST_KMAP) -$(SHELL) ./installman.sh install $(DEST_MAN_FR) "-fr" $(INSTALLMANARGS) diff --git a/src/auto/configure b/src/auto/configure --- a/src/auto/configure +++ b/src/auto/configure @@ -309,7 +309,7 @@ ac_includes_default="\ # include #endif" -ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS SET_MAKE CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT CPP EGREP AWK STRIP CPP_MM OS_EXTRA_SRC OS_EXTRA_OBJ VIMNAME EXNAME VIEWNAME line_break dovimdiff dogvimdiff compiledby vi_cv_path_mzscheme MZSCHEME_SRC MZSCHEME_OBJ MZSCHEME_PRO MZSCHEME_LIBS MZSCHEME_CFLAGS vi_cv_path_perl vi_cv_perllib shrpenv PERL_SRC PERL_OBJ PERL_PRO PERL_CFLAGS PERL_LIBS vi_cv_path_python PYTHON_CONFDIR PYTHON_LIBS PYTHON_GETPATH_CFLAGS PYTHON_CFLAGS PYTHON_SRC PYTHON_OBJ vi_cv_path_tcl TCL_SRC TCL_OBJ TCL_PRO TCL_CFLAGS TCL_LIBS vi_cv_path_ruby RUBY_SRC RUBY_OBJ RUBY_PRO RUBY_CFLAGS RUBY_LIBS WORKSHOP_SRC WORKSHOP_OBJ NETBEANS_SRC NETBEANS_OBJ SNIFF_SRC SNIFF_OBJ xmkmfpath X_CFLAGS X_PRE_LIBS X_LIBS X_EXTRA_LIBS X_LIB MOC KDE_CONFIG KDE_LIBS KDE_INCLUDES KDE_PREFIX CXX CXXFLAGS ac_ct_CXX QT_LIBS QT_INCLUDES ROOTQT GTK_CONFIG GTK12_CONFIG PKG_CONFIG GTK_CFLAGS GTK_LIBS GTK_LIBNAME GNOME_LIBS GNOME_LIBDIR GNOME_INCLUDEDIR GNOME_CONFIG MOTIF_LIBNAME NARROW_PROTO GUI_INC_LOC GUI_LIB_LOC GUITYPE GUI_X_LIBS HANGULIN_SRC HANGULIN_OBJ TAGPRG MSGFMT MAKEMO LIBOBJS LTLIBOBJS' +ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS SET_MAKE CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT CPP EGREP AWK STRIP CPP_MM OS_EXTRA_SRC OS_EXTRA_OBJ VIMNAME EXNAME VIEWNAME line_break dovimdiff dogvimdiff compiledby vi_cv_path_mzscheme MZSCHEME_SRC MZSCHEME_OBJ MZSCHEME_PRO MZSCHEME_LIBS MZSCHEME_CFLAGS vi_cv_path_perl vi_cv_perllib shrpenv PERL_SRC PERL_OBJ PERL_PRO PERL_CFLAGS PERL_LIBS vi_cv_path_python PYTHON_CONFDIR PYTHON_LIBS PYTHON_GETPATH_CFLAGS PYTHON_CFLAGS PYTHON_SRC PYTHON_OBJ vi_cv_path_tcl TCL_SRC TCL_OBJ TCL_PRO TCL_CFLAGS TCL_LIBS vi_cv_path_ruby RUBY_SRC RUBY_OBJ RUBY_PRO RUBY_CFLAGS RUBY_LIBS WORKSHOP_SRC WORKSHOP_OBJ NETBEANS_SRC NETBEANS_OBJ SNIFF_SRC SNIFF_OBJ xmkmfpath X_CFLAGS X_PRE_LIBS X_LIBS X_EXTRA_LIBS X_LIB MOC KDE_CONFIG KDE_LIBS KDE_INCLUDES KDE_PREFIX CXX CXXFLAGS ac_ct_CXX QT_LIBS QT_INCLUDES ROOTQT GTK_CONFIG GTK12_CONFIG PKG_CONFIG GTK_CFLAGS GTK_LIBS GTK_LIBNAME GNOME_LIBS GNOME_LIBDIR GNOME_INCLUDEDIR GNOME_CONFIG MOTIF_LIBNAME NARROW_PROTO GUI_INC_LOC GUI_LIB_LOC GUITYPE GUI_X_LIBS HANGULIN_SRC HANGULIN_OBJ TAGPRG INSTALL_LANGS INSTALL_TOOL_LANGS MSGFMT MAKEMO LIBOBJS LTLIBOBJS' ac_subst_files='' # Initialize some variables set by options. @@ -868,7 +868,7 @@ Optional Features: --enable-hangulinput Include Hangul input support. --enable-xim Include XIM input support. --enable-fontset Include X fontset output support. - --enable-gui=OPTS X11 GUI default=auto OPTS=auto/no/gtk/gtk2/gnome/gnome2/kde/motif/athena/neXtaw/beos/photon/carbon + --enable-gui=OPTS X11 GUI default=auto OPTS=auto/no/gtk/gtk2/gnome/gnome2/kde/motif/athena/neXtaw/photon/carbon --enable-kde-check If auto-select GUI, check for KDE default=no --enable-gtk-check If auto-select GUI, check for GTK default=yes --enable-gtk2-check If GTK GUI, check for GTK+ 2 default=yes @@ -6900,7 +6900,7 @@ rm -f conftest.err conftest.$ac_objext c fi fi -test "x$with_x" = xno -a "x$BEOS" != "xyes" -a "x$MACOSX" != "xyes" -a "x$QNX" != "xyes" && enable_gui=no +test "x$with_x" = xno -a "x$MACOSX" != "xyes" -a "x$QNX" != "xyes" && enable_gui=no echo "$as_me:$LINENO: checking --enable-gui argument" >&5 echo $ECHO_N "checking --enable-gui argument... $ECHO_C" >&6 @@ -13373,12 +13373,11 @@ fi - for ac_func in bcmp fchdir fchown fseeko fsync ftello getcwd getpseudotty \ getpwnam getpwuid getrlimit gettimeofday getwd lstat memcmp \ memset nanosleep opendir putenv qsort readlink select setenv \ setpgid setsid sigaltstack sigstack sigset sigsetjmp sigaction \ - sigvec snprintf strcasecmp strerror strftime stricmp strncasecmp \ + sigvec strcasecmp strerror strftime stricmp strncasecmp \ strnicmp strpbrk strtol tgetent towlower towupper iswupper \ usleep utime utimes do @@ -14251,67 +14250,6 @@ else echo "${ECHO_T}yes" >&6 fi -echo "$as_me:$LINENO: checking for vsnprintf()" >&5 -echo $ECHO_N "checking for vsnprintf()... $ECHO_C" >&6 -if test "$cross_compiling" = yes; then - { { echo "$as_me:$LINENO: error: failed to compile test program" >&5 -echo "$as_me: error: failed to compile test program" >&2;} - { (exit 1); exit 1; }; } -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ - -#include -#include - /* Check use of vsnprintf() */ - void warn(char *fmt, ...); - void warn(char *fmt, ...) - { - va_list ap; char buf[20]; - va_start(ap, fmt); - vsnprintf(buf, 20, fmt, ap); - va_end(ap); - } - main() - { - warn("testing %s\n", "a very long string that won't fit"); - exit(0); - } - -_ACEOF -rm -f conftest$ac_exeext -if { (eval echo "$as_me:$LINENO: \"$ac_link\"") >&5 - (eval $ac_link) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5 - (eval $ac_try) 2>&5 - ac_status=$? - echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - cat >>confdefs.h <<\_ACEOF -#define HAVE_VSNPRINTF 1 -_ACEOF - echo "$as_me:$LINENO: result: yes" >&5 -echo "${ECHO_T}yes" >&6 -else - echo "$as_me: program exited with status $ac_status" >&5 -echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - -( exit $ac_status ) -echo "$as_me:$LINENO: result: no" >&5 -echo "${ECHO_T}no" >&6 -fi -rm -f core *.core gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext -fi - - echo "$as_me:$LINENO: checking for rename" >&5 echo $ECHO_N "checking for rename... $ECHO_C" >&6 cat >conftest.$ac_ext <<_ACEOF @@ -14963,6 +14901,12 @@ fi; if test "$enable_nls" = "yes"; then echo "$as_me:$LINENO: result: no" >&5 echo "${ECHO_T}no" >&6 + + INSTALL_LANGS=install-languages + + INSTALL_TOOL_LANGS=install-tool-languages + + # Extract the first word of "msgfmt", so it can be a program name with args. set dummy msgfmt; ac_word=$2 echo "$as_me:$LINENO: checking for $ac_word" >&5 @@ -16814,6 +16758,8 @@ s,@GUI_X_LIBS@,$GUI_X_LIBS,;t t s,@HANGULIN_SRC@,$HANGULIN_SRC,;t t s,@HANGULIN_OBJ@,$HANGULIN_OBJ,;t t s,@TAGPRG@,$TAGPRG,;t t +s,@INSTALL_LANGS@,$INSTALL_LANGS,;t t +s,@INSTALL_TOOL_LANGS@,$INSTALL_TOOL_LANGS,;t t s,@MSGFMT@,$MSGFMT,;t t s,@MAKEMO@,$MAKEMO,;t t s,@LIBOBJS@,$LIBOBJS,;t t diff --git a/src/configure.in b/src/configure.in --- a/src/configure.in +++ b/src/configure.in @@ -2406,7 +2406,7 @@ fi if test "x$olibs" = "x$LIBS"; then AC_MSG_CHECKING([for tgetent()]) - AC_TRY_LINK([], + AC_TRY_LINK([], [char s[10000]; int res = tgetent(s, "thisterminaldoesnotexist");], AC_MSG_RESULT(yes), AC_MSG_ERROR([NOT FOUND! @@ -2932,6 +2932,12 @@ AC_ARG_ENABLE(nls, if test "$enable_nls" = "yes"; then AC_MSG_RESULT(no) + + INSTALL_LANGS=install-languages + AC_SUBST(INSTALL_LANGS) + INSTALL_TOOL_LANGS=install-tool-languages + AC_SUBST(INSTALL_TOOL_LANGS) + AC_CHECK_PROG(MSGFMT, msgfmt, msgfmt, ) AC_MSG_CHECKING([for NLS]) if test -f po/Makefile; then diff --git a/src/quickfix.c b/src/quickfix.c --- a/src/quickfix.c +++ b/src/quickfix.c @@ -2381,7 +2381,7 @@ ex_vimgrep(eap) p = skip_vimgrep_pat(eap->arg, &s, &flags); if (p == NULL) { - EMSG(_("E682: Invalid search pattern or delimiter")); + EMSG(_(e_invalpat)); goto theend; } regmatch.regprog = vim_regcomp(s, RE_MAGIC); diff --git a/src/testdir/test55.ok b/src/testdir/test55.ok --- a/src/testdir/test55.ok +++ b/src/testdir/test55.ok @@ -76,3 +76,10 @@ caught a:000[3] ['-0', 'A11', 'foo', 'foo6', 'x8', 'xaaa', 2, 4, [0, 1, 2]] [[0, 1, 2], 4, 2, 'xaaa', 'x8', 'foo6', 'foo', 'A11', '-0'] ['-0', 'A11', 'foo', 'foo6', 'x8', 'xaaa', 2, 4, [0, 1, 2]] +['aa', 'bb'] +['aa', 'bb'] +['', 'aa', 'bb', ''] +['', '', 'aa', '', 'bb', '', ''] +['aa', '', 'bb'] +['', 'aa', '', 'bb', ''] +['aa', '', 'bb', 'cc', ''] diff --git a/src/version.h b/src/version.h --- a/src/version.h +++ b/src/version.h @@ -36,5 +36,5 @@ #define VIM_VERSION_NODOT "vim70aa" #define VIM_VERSION_SHORT "7.0aa" #define VIM_VERSION_MEDIUM "7.0aa ALPHA" -#define VIM_VERSION_LONG "VIM - Vi IMproved 7.0aa ALPHA (2005 May 20)" -#define VIM_VERSION_LONG_DATE "VIM - Vi IMproved 7.0aa ALPHA (2005 May 20, compiled " +#define VIM_VERSION_LONG "VIM - Vi IMproved 7.0aa ALPHA (2005 May 22)" +#define VIM_VERSION_LONG_DATE "VIM - Vi IMproved 7.0aa ALPHA (2005 May 22, compiled "