home *** CD-ROM | disk | FTP | other *** search
- To: vim-dev@vim.org
- Subject: Patch 7.2.223
- 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.2.223
- Problem: When a script is run with ":silent" it is not able to give warning
- messages.
- Solution: Add the ":unsilent" command.
- Files: runtime/doc/various.txt, src/ex_cmds.h, src/ex_docmd.c
-
-
- *** ../vim-7.2.222/runtime/doc/various.txt 2008-08-09 19:36:54.000000000 +0200
- --- runtime/doc/various.txt 2009-07-09 15:52:54.000000000 +0200
- ***************
- *** 508,513 ****
- --- 508,524 ----
- messages though. Use ":silent" in the command itself
- to avoid that: ":silent menu .... :silent command".
-
- + *:uns* *:unsilent*
- + :uns[ilent] {command} Execute {command} not silently. Only makes a
- + difference when |:silent| was used to get to this
- + command.
- + Use this for giving a message even when |:silent| was
- + used. In this example |:silent| is used to avoid the
- + message about reading the file and |:unsilent| to be
- + able to list the first line of each file. >
- + :silent argdo unsilent echo expand('%') . ": " . getline(1)
- + <
- +
- *:verb* *:verbose*
- :[count]verb[ose] {command}
- Execute {command} with 'verbose' set to [count]. If
- *** ../vim-7.2.222/src/ex_cmds.h 2008-11-09 13:43:25.000000000 +0100
- --- src/ex_cmds.h 2009-07-01 18:12:55.000000000 +0200
- ***************
- *** 991,996 ****
- --- 991,998 ----
- BANG|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN),
- EX(CMD_unmenu, "unmenu", ex_menu,
- BANG|EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN),
- + EX(CMD_unsilent, "unsilent", ex_wrongmodifier,
- + NEEDARG|EXTRA|NOTRLCOM|SBOXOK|CMDWIN),
- EX(CMD_update, "update", ex_update,
- RANGE|WHOLEFOLD|BANG|FILE1|ARGOPT|DFLALL|TRLBAR),
- EX(CMD_vglobal, "vglobal", ex_global,
- *** ../vim-7.2.222/src/ex_docmd.c 2009-07-01 20:18:43.000000000 +0200
- --- src/ex_docmd.c 2009-07-09 15:24:03.000000000 +0200
- ***************
- *** 1677,1684 ****
- char_u *errormsg = NULL; /* error message */
- exarg_T ea; /* Ex command arguments */
- long verbose_save = -1;
- ! int save_msg_scroll = 0;
- ! int did_silent = 0;
- int did_esilent = 0;
- #ifdef HAVE_SANDBOX
- int did_sandbox = FALSE;
- --- 1677,1684 ----
- char_u *errormsg = NULL; /* error message */
- exarg_T ea; /* Ex command arguments */
- long verbose_save = -1;
- ! int save_msg_scroll = msg_scroll;
- ! int save_msg_silent = -1;
- int did_esilent = 0;
- #ifdef HAVE_SANDBOX
- int did_sandbox = FALSE;
- ***************
- *** 1856,1864 ****
- }
- if (!checkforcmd(&ea.cmd, "silent", 3))
- break;
- ! ++did_silent;
- ++msg_silent;
- - save_msg_scroll = msg_scroll;
- if (*ea.cmd == '!' && !vim_iswhite(ea.cmd[-1]))
- {
- /* ":silent!", but not "silent !cmd" */
- --- 1856,1864 ----
- }
- if (!checkforcmd(&ea.cmd, "silent", 3))
- break;
- ! if (save_msg_silent == -1)
- ! save_msg_silent = msg_silent;
- ++msg_silent;
- if (*ea.cmd == '!' && !vim_iswhite(ea.cmd[-1]))
- {
- /* ":silent!", but not "silent !cmd" */
- ***************
- *** 1886,1891 ****
- --- 1886,1898 ----
- #endif
- continue;
-
- + case 'u': if (!checkforcmd(&ea.cmd, "unsilent", 3))
- + break;
- + if (save_msg_silent == -1)
- + save_msg_silent = msg_silent;
- + msg_silent = 0;
- + continue;
- +
- case 'v': if (checkforcmd(&ea.cmd, "vertical", 4))
- {
- #ifdef FEAT_VERTSPLIT
- ***************
- *** 2684,2696 ****
-
- cmdmod = save_cmdmod;
-
- ! if (did_silent > 0)
- {
- /* messages could be enabled for a serious error, need to check if the
- * counters don't become negative */
- ! msg_silent -= did_silent;
- ! if (msg_silent < 0)
- ! msg_silent = 0;
- emsg_silent -= did_esilent;
- if (emsg_silent < 0)
- emsg_silent = 0;
- --- 2691,2702 ----
-
- cmdmod = save_cmdmod;
-
- ! if (save_msg_silent != -1)
- {
- /* messages could be enabled for a serious error, need to check if the
- * counters don't become negative */
- ! if (!did_emsg)
- ! msg_silent = save_msg_silent;
- emsg_silent -= did_esilent;
- if (emsg_silent < 0)
- emsg_silent = 0;
- ***************
- *** 2987,2992 ****
- --- 2993,2999 ----
- {"silent", 3, FALSE},
- {"tab", 3, TRUE},
- {"topleft", 2, FALSE},
- + {"unsilent", 3, FALSE},
- {"verbose", 4, TRUE},
- {"vertical", 4, FALSE},
- };
- *** ../vim-7.2.222/src/version.c 2009-07-01 20:18:43.000000000 +0200
- --- src/version.c 2009-07-09 15:53:05.000000000 +0200
- ***************
- *** 678,679 ****
- --- 678,681 ----
- { /* Add new patch number below this line */
- + /**/
- + 223,
- /**/
-
- --
- Q: How many legs does a giraffe have?
- A: Eight: two in front, two behind, two on the left and two on the right
-
- /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\
- /// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
- \\\ download, build and distribute -- http://www.A-A-P.org ///
- \\\ help me help AIDS victims -- http://ICCF-Holland.org ///
-