diff --git a/runtime/doc/options.txt b/runtime/doc/options.txt index 3bb0d4703d..07e373cca4 100644 --- a/runtime/doc/options.txt +++ b/runtime/doc/options.txt @@ -1092,7 +1092,9 @@ A jump table for the options with a short description can be found at |Q_op|. < Use 'backupdir' to put the backup in a different directory. *'backupskip'* *'bsk'* -'backupskip' 'bsk' string (default: "/tmp/*,$TMPDIR/*,$TMP/*,$TEMP/*") +'backupskip' 'bsk' string (default: "$TMPDIR/*,$TMP/*,$TEMP/*" + Unix: "/tmp/*,$TMPDIR/*,$TMP/*,$TEMP/*" + Mac: "/private/tmp/*,$TMPDIR/*,$TMP/*,$TEMP/*") global {not in Vi} {not available when compiled without the |+wildignore| diff --git a/src/Make_cyg_ming.mak b/src/Make_cyg_ming.mak index cefc430b29..81dd9378f6 100644 --- a/src/Make_cyg_ming.mak +++ b/src/Make_cyg_ming.mak @@ -28,52 +28,71 @@ # Updated 2014 Oct 13. #>>>>> choose options: -# set to yes for a debug build -DEBUG=no -# set to SIZE for size, SPEED for speed, MAXSPEED for maximum optimization -OPTIMIZE=MAXSPEED -# set to yes to make gvim, no for vim -GUI=yes -# set to no if you do not want to use DirectWrite (DirectX) -# MinGW-w64 is needed, and ARCH should be set to i686 or x86-64. -DIRECTX=yes # FEATURES=[TINY | SMALL | NORMAL | BIG | HUGE] # Set to TINY to make minimal version (few features). FEATURES=HUGE + +# set to yes for a debug build +DEBUG=no + +# set to SIZE for size, SPEED for speed, MAXSPEED for maximum optimization +OPTIMIZE=MAXSPEED + +# set to yes to make gvim, no for vim +GUI=yes + +# set to no if you do not want to use DirectWrite (DirectX) +# MinGW-w64 is needed, and ARCH should be set to i686 or x86-64. +DIRECTX=yes + +# Disable Color emoji support +# (default is yes if DIRECTX=yes, requires WinSDK 8.1 or later.) +#COLOR_EMOJI=no + # Set to one of i386, i486, i586, i686 as the minimum target processor. # For amd64/x64 architecture set ARCH=x86-64 . # If not set, it will be automatically detected. (Normally i686 or x86-64.) #ARCH=i686 # Set to yes to cross-compile from unix; no=native Windows (and Cygwin). CROSS=no + # Set to path to iconv.h and libiconv.a to enable using 'iconv.dll'. # Use "yes" when the path does not need to be define. #ICONV="." ICONV=yes GETTEXT=yes + # Set to yes to include multibyte support. MBYTE=yes + # Set to yes to include IME support. IME=yes DYNAMIC_IME=yes + # Set to yes to enable writing a postscript file with :hardcopy. POSTSCRIPT=no + # Set to yes to enable OLE support. OLE=no + # Set the default $(WINVER) to make it work with WinXP. ifndef WINVER WINVER = 0x0501 endif + # Set to yes to enable Cscope support. CSCOPE=yes + # Set to yes to enable Netbeans support (requires CHANNEL). NETBEANS=$(GUI) + # Set to yes to enable inter process communication. ifeq (HUGE, $(FEATURES)) CHANNEL=yes else CHANNEL=$(GUI) endif + # Set to yes to enable terminal support. ifeq (HUGE, $(FEATURES)) TERMINAL=yes @@ -588,7 +607,10 @@ endif ifeq ($(DIRECTX),yes) # Only allow DirectWrite for a GUI build. ifeq (yes, $(GUI)) -DEFINES += -DFEAT_DIRECTX -DDYNAMIC_DIRECTX -DFEAT_DIRECTX_COLOR_EMOJI +DEFINES += -DFEAT_DIRECTX -DDYNAMIC_DIRECTX +ifneq ($(COLOR_EMOJI),no) +DEFINES += -DFEAT_DIRECTX_COLOR_EMOJI +endif endif endif diff --git a/src/option.c b/src/option.c index 3e8fb5c077..bfc422f8e0 100644 --- a/src/option.c +++ b/src/option.c @@ -3456,7 +3456,11 @@ set_init_1(int clean_arg) mustfree = FALSE; # ifdef UNIX if (*names[n] == NUL) +# ifdef MACOS_X + p = (char_u *)"/private/tmp"; +# else p = (char_u *)"/tmp"; +# endif else # endif p = vim_getenv((char_u *)names[n], &mustfree); diff --git a/src/quickfix.c b/src/quickfix.c index 8c1df17938..c370761bf2 100644 --- a/src/quickfix.c +++ b/src/quickfix.c @@ -4556,7 +4556,10 @@ ex_vimgrep(exarg_T *eap) /* Check whether the quickfix list is still valid. When loading a * buffer above, autocommands might have changed the quickfix list. */ if (!vgr_qflist_valid(wp, qi, save_qfid, *eap->cmdlinep)) + { + FreeWild(fcount, fnames); goto theend; + } save_qfid = qi->qf_lists[qi->qf_curlist].qf_id; if (buf == NULL) diff --git a/src/testdir/test_options.vim b/src/testdir/test_options.vim index 5d2033a5df..0f2908fcb3 100644 --- a/src/testdir/test_options.vim +++ b/src/testdir/test_options.vim @@ -332,3 +332,19 @@ func Test_set_indentexpr() call assert_equal('', &indentexpr) bwipe! endfunc + +func Test_backupskip() + if has("mac") + call assert_match('/private/tmp/\*', &bsk) + elseif has("unix") + call assert_match('/tmp/\*', &bsk) + endif + + let bskvalue = substitute(&bsk, '\\', '/', 'g') + for var in ['$TEMPDIR', '$TMP', '$TEMP'] + if exists(var) + let varvalue = substitute(expand(var), '\\', '/', 'g') + call assert_match(varvalue . '.\*', bskvalue) + endif + endfor +endfunc diff --git a/src/version.c b/src/version.c index be56157a0c..41193a9280 100644 --- a/src/version.c +++ b/src/version.c @@ -777,6 +777,16 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ +/**/ + 1704, +/**/ + 1703, +/**/ + 1702, +/**/ + 1701, +/**/ + 1700, /**/ 1699, /**/ diff --git a/src/vimtutor b/src/vimtutor index e53201df58..1e8769b257 100755 --- a/src/vimtutor +++ b/src/vimtutor @@ -70,5 +70,5 @@ fi # The script tutor.vim tells Vim which file to copy $VIM -f -u NONE -c 'so $VIMRUNTIME/tutor/tutor.vim' -# Start vim without any .vimrc, set 'nocompatible' -$VIM -f -u NONE -c "set nocp" $TUTORCOPY +# Start vim without any .vimrc, set 'nocompatible' and 'showcmd' +$VIM -f -u NONE -c "set nocp showcmd" $TUTORCOPY