changeset 8253:1b6a589a0efc v7.4.1419

commit https://github.com/vim/vim/commit/49c39ff678e2ba9f7dc280b25368e12084a610cf Author: Bram Moolenaar <Bram@vim.org> Date: Thu Feb 25 21:21:52 2016 +0100 patch 7.4.1419 Problem: Tests slowed down because of the "not a terminal" warning. Solution: Add the --not-a-term command line argument.
author Christian Brabandt <cb@256bit.org>
date Thu, 25 Feb 2016 21:30:04 +0100
parents 5967a5b23715
children 9b72baaa2dbf
files runtime/doc/starting.txt src/main.c src/testdir/Make_dos.mak src/testdir/Make_ming.mak src/testdir/Make_vms.mms src/testdir/Makefile src/version.c
diffstat 7 files changed, 24 insertions(+), 13 deletions(-) [+]
line wrap: on
line diff
--- a/runtime/doc/starting.txt
+++ b/runtime/doc/starting.txt
@@ -414,6 +414,10 @@ a slash.  Thus "-R" means recovery and "
 		not needed, because Vim will be able to find out what type
 		of terminal you are using.  (See |terminal-info|.)  {not in Vi}
 
+--not-a-term	Tells Vim that the user knows that the input and/or output is
+		not connected to a terminal.  This will avoid the warning and
+		the two second delay that would happen.
+
 							*-d*
 -d		Start in diff mode, like |vimdiff|.
 		{not in Vi} {not available when compiled without the |+diff|
--- a/src/main.c
+++ b/src/main.c
@@ -50,6 +50,7 @@ typedef struct
 
     int		want_full_screen;
     int		stdout_isatty;		/* is stdout a terminal? */
+    int		not_a_term;		/* no warning for missing term? */
     char_u	*term;			/* specified terminal name */
 #ifdef FEAT_CRYPT
     int		ask_for_key;		/* -x argument */
@@ -1856,6 +1857,7 @@ command_line_scan(mparm_T *parmp)
 				/* "--version" give version message */
 				/* "--literal" take files literally */
 				/* "--nofork" don't fork */
+				/* "--not-a-term" don't warn for not a term */
 				/* "--noplugin[s]" skip plugins */
 				/* "--cmd <cmd>" execute cmd before vimrc */
 		if (STRICMP(argv[0] + argv_idx, "help") == 0)
@@ -1883,6 +1885,8 @@ command_line_scan(mparm_T *parmp)
 		}
 		else if (STRNICMP(argv[0] + argv_idx, "noplugin", 8) == 0)
 		    p_lpl = FALSE;
+		else if (STRNICMP(argv[0] + argv_idx, "not-a-term", 10) == 0)
+		    parmp->not_a_term = TRUE;
 		else if (STRNICMP(argv[0] + argv_idx, "cmd", 3) == 0)
 		{
 		    want_argument = TRUE;
@@ -2519,7 +2523,7 @@ check_tty(mparm_T *parmp)
 	    /* don't want the delay when started from the desktop */
 	    && !gui.starting
 #endif
-	    )
+	    && !parmp->not_a_term)
     {
 #ifdef NBDEBUG
 	/*
@@ -3303,6 +3307,7 @@ usage(void)
     main_msg(_("-F\t\t\tStart in Farsi mode"));
 #endif
     main_msg(_("-T <terminal>\tSet terminal type to <terminal>"));
+    main_msg(_("--not-a-term\t\tSkip warning for input/output not being a terminal"));
     main_msg(_("-u <vimrc>\t\tUse <vimrc> instead of any .vimrc"));
 #ifdef FEAT_GUI
     main_msg(_("-U <gvimrc>\t\tUse <gvimrc> instead of any .gvimrc"));
--- a/src/testdir/Make_dos.mak
+++ b/src/testdir/Make_dos.mak
@@ -38,7 +38,7 @@ win32:	nolog $(SCRIPTS_FIRST) $(SCRIPTS)
 $(DOSTMP_INFILES): $(*B).in
 	if not exist $(DOSTMP)\NUL md $(DOSTMP)
 	if exist $@ del $@
-	$(VIMPROG) -u dos.vim -U NONE --noplugin "+set ff=dos|f $@|wq" $(*B).in
+	$(VIMPROG) -u dos.vim $(NO_PLUGIN) "+set ff=dos|f $@|wq" $(*B).in
 
 # For each input file dostmp/test99.in run the tests.
 # This moves test99.in to test99.in.bak temporarily.
@@ -47,7 +47,7 @@ win32:	nolog $(SCRIPTS_FIRST) $(SCRIPTS)
 	move $(*B).in $(*B).in.bak
 	copy $(DOSTMP)\$(*B).in $(*B).in
 	copy $(*B).ok test.ok
-	$(VIMPROG) -u dos.vim -U NONE --noplugin -s dotest.in $(*B).in
+	$(VIMPROG) -u dos.vim $(NO_PLUGIN) -s dotest.in $(*B).in
 	-@if exist test.out MOVE /y test.out $(DOSTMP)\$(*B).out
 	-@if exist $(*B).in.bak move /y $(*B).in.bak $(*B).in
 	-@if exist test.ok del test.ok
@@ -55,7 +55,7 @@ win32:	nolog $(SCRIPTS_FIRST) $(SCRIPTS)
 	-@if exist Xfind rd /s /q Xfind
 	-@del X*
 	-@if exist viminfo del viminfo
-	$(VIMPROG) -u dos.vim -U NONE --noplugin "+set ff=unix|f test.out|wq" \
+	$(VIMPROG) -u dos.vim $(NO_PLUGIN) "+set ff=unix|f test.out|wq" \
 		$(DOSTMP)\$(*B).out
 	@diff test.out $*.ok & if errorlevel 1 \
 		( move /y test.out $*.failed \
@@ -104,7 +104,7 @@ benchmark:
 
 bench_re_freeze.out: bench_re_freeze.vim
 	-if exist benchmark.out del benchmark.out
-	$(VIMPROG) -u dos.vim -U NONE --noplugin $*.in
+	$(VIMPROG) -u dos.vim $(NO_PLUGIN) $*.in
 	@IF EXIST benchmark.out ( type benchmark.out )
 
 # New style of tests uses Vim script with assert calls.  These are easier
--- a/src/testdir/Make_ming.mak
+++ b/src/testdir/Make_ming.mak
@@ -65,8 +65,8 @@ win32:	fixff $(SCRIPTS_FIRST) $(SCRIPTS)
 	echo ALL DONE
 
 fixff:
-	-$(VIMPROG) -u dos.vim -U NONE --noplugin "+argdo set ff=dos|upd" +q *.in *.ok
-	-$(VIMPROG) -u dos.vim -U NONE --noplugin "+argdo set ff=unix|upd" +q \
+	-$(VIMPROG) -u dos.vim $(NO_PLUGIN) "+argdo set ff=dos|upd" +q *.in *.ok
+	-$(VIMPROG) -u dos.vim $(NO_PLUGIN) "+argdo set ff=unix|upd" +q \
 		dotest.in test60.ok test71.ok test74.ok test_listchars.ok
 
 clean:
@@ -84,7 +84,7 @@ clean:
 
 .in.out:
 	$(CP) $*.ok test.ok
-	$(VIMPROG) -u dos.vim -U NONE --noplugin -s dotest.in $*.in
+	$(VIMPROG) -u dos.vim $(NO_PLUGIN) -s dotest.in $*.in
 	diff test.out $*.ok
 	-$(DEL) $*.out
 	$(MV) test.out $*.out
@@ -96,5 +96,5 @@ clean:
 
 bench_re_freeze.out: bench_re_freeze.vim
 	-$(DEL) benchmark.out
-	$(VIMPROG) -u dos.vim -U NONE --noplugin $*.in
+	$(VIMPROG) -u dos.vim $(NO_PLUGIN) $*.in
 	$(CAT) benchmark.out
--- a/src/testdir/Make_vms.mms
+++ b/src/testdir/Make_vms.mms
@@ -4,7 +4,7 @@
 # Authors:	Zoltan Arpadffy, <arpadffy@polarhome.com>
 #		Sandor Kopanyi,  <sandor.kopanyi@mailbox.hu>
 #
-# Last change:  2015 Dec 28
+# Last change:  2016 Feb 25
 #
 # This has been tested on VMS 6.2 to 8.3 on DEC Alpha, VAX and IA64.
 # Edit the lines in the Configuration section below to select.
@@ -163,7 +163,7 @@ SCRIPT_PYTHON = test86.out test87.out
 	-@ write sys$output "                "$*" "
 	-@ write sys$output "-----------------------------------------------"
 	-@ !run the test
-	-@ create/term/wait/nodetach mcr $(VIMPROG) $(GUI_OPTION) -u vms.vim -U NONE --noplugin -s dotest.in $*.in
+	-@ create/term/wait/nodetach mcr $(VIMPROG) $(GUI_OPTION) -u vms.vim $(NO_PLUGIN) -s dotest.in $*.in
 	-@ !analyse the result
 	-@ directory /size/date test.out
 	-@ if "''F$SEARCH("test.out.*")'" .NES. "" then rename/nolog test.out $*.out 
--- a/src/testdir/Makefile
+++ b/src/testdir/Makefile
@@ -52,7 +52,7 @@ report:
 
 RM_ON_RUN = test.out X* viminfo
 RM_ON_START = tiny.vim small.vim mbyte.vim mzscheme.vim lua.vim test.ok benchmark.out
-RUN_VIM = VIMRUNTIME=$(SCRIPTSOURCE); export VIMRUNTIME; $(VALGRIND) $(VIMPROG) -f -u unix.vim -U NONE --noplugin -s dotest.in
+RUN_VIM = VIMRUNTIME=$(SCRIPTSOURCE); export VIMRUNTIME; $(VALGRIND) $(VIMPROG) -f -u unix.vim $(NO_PLUGIN) -s dotest.in
 
 clean:
 	-rm -rf *.out *.failed *.res *.rej *.orig test.log messages $(RM_ON_RUN) $(RM_ON_START) valgrind.*
@@ -118,7 +118,7 @@ nolog:
 # New style of tests uses Vim script with assert calls.  These are easier
 # to write and a lot easier to read and debug.
 # Limitation: Only works with the +eval feature.
-RUN_VIMTEST = VIMRUNTIME=$(SCRIPTSOURCE); export VIMRUNTIME; $(VALGRIND) $(VIMPROG) -f -u unix.vim -U NONE --noplugin
+RUN_VIMTEST = VIMRUNTIME=$(SCRIPTSOURCE); export VIMRUNTIME; $(VALGRIND) $(VIMPROG) -f -u unix.vim $(NO_PLUGIN)
 
 newtests: newtestssilent
 	@/bin/sh -c "if test -f messages && grep -q 'FAILED' messages; then cat messages && cat test.log; fi"
--- a/src/version.c
+++ b/src/version.c
@@ -749,6 +749,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    1419,
+/**/
     1418,
 /**/
     1417,