diff --git a/7.4.450 b/7.4.450 new file mode 100644 index 0000000..bd94cf2 --- /dev/null +++ b/7.4.450 @@ -0,0 +1,417 @@ +To: vim_dev@googlegroups.com +Subject: Patch 7.4.450 +Fcc: outbox +From: Bram Moolenaar +Mime-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit +------------ + +Patch 7.4.450 +Problem: Not all commands that edit another buffer support the +cmd + argument. +Solution: Add the +cmd argument to relevant commands. (Marcin Szamotulski) +Files: runtime/doc/windows.txt, src/ex_cmds.h, src/ex_docmd.c + + +*** ../vim-7.4.449/runtime/doc/windows.txt 2014-03-25 13:03:44.929793765 +0100 +--- runtime/doc/windows.txt 2014-09-19 19:53:55.618447914 +0200 +*************** +*** 1042,1077 **** + a number). Insert a backslash before a space in a buffer + name. + +! :[N]b[uffer][!] [N] *:b* *:bu* *:buf* *:buffer* *E86* + Edit buffer [N] from the buffer list. If [N] is not given, + the current buffer remains being edited. See |:buffer-!| for + [!]. This will also edit a buffer that is not in the buffer + list, without setting the 'buflisted' flag. + +! :[N]b[uffer][!] {bufname} + Edit buffer for {bufname} from the buffer list. See + |:buffer-!| for [!]. This will also edit a buffer that is not + in the buffer list, without setting the 'buflisted' flag. + +! :[N]sb[uffer] [N] *:sb* *:sbuffer* + Split window and edit buffer [N] from the buffer list. If [N] + is not given, the current buffer is edited. Respects the + "useopen" setting of 'switchbuf' when splitting. This will + also edit a buffer that is not in the buffer list, without + setting the 'buflisted' flag. + +! :[N]sb[uffer] {bufname} + Split window and edit buffer for {bufname} from the buffer + list. This will also edit a buffer that is not in the buffer + list, without setting the 'buflisted' flag. + Note: If what you want to do is split the buffer, make a copy + under another name, you can do it this way: > + :w foobar | sp # + +! :[N]bn[ext][!] [N] *:bn* *:bnext* *E87* + Go to [N]th next buffer in buffer list. [N] defaults to one. + Wraps around the end of the buffer list. + See |:buffer-!| for [!]. + If you are in a help buffer, this takes you to the next help + buffer (if there is one). Similarly, if you are in a normal + (non-help) buffer, this takes you to the next normal buffer. +--- 1042,1082 ---- + a number). Insert a backslash before a space in a buffer + name. + +! :[N]b[uffer][!] [+cmd] [N] *:b* *:bu* *:buf* *:buffer* *E86* + Edit buffer [N] from the buffer list. If [N] is not given, + the current buffer remains being edited. See |:buffer-!| for + [!]. This will also edit a buffer that is not in the buffer + list, without setting the 'buflisted' flag. ++ Also see ||+cmd|. + +! :[N]b[uffer][!] [+cmd] {bufname} + Edit buffer for {bufname} from the buffer list. See + |:buffer-!| for [!]. This will also edit a buffer that is not + in the buffer list, without setting the 'buflisted' flag. ++ Also see ||+cmd|. + +! :[N]sb[uffer] [+cmd] [N] *:sb* *:sbuffer* + Split window and edit buffer [N] from the buffer list. If [N] + is not given, the current buffer is edited. Respects the + "useopen" setting of 'switchbuf' when splitting. This will + also edit a buffer that is not in the buffer list, without + setting the 'buflisted' flag. ++ Also see ||+cmd|. + +! :[N]sb[uffer] [+cmd] {bufname} + Split window and edit buffer for {bufname} from the buffer + list. This will also edit a buffer that is not in the buffer + list, without setting the 'buflisted' flag. + Note: If what you want to do is split the buffer, make a copy + under another name, you can do it this way: > + :w foobar | sp # ++ < Also see ||+cmd|. + +! :[N]bn[ext][!] [+cmd] [N] *:bn* *:bnext* *E87* + Go to [N]th next buffer in buffer list. [N] defaults to one. + Wraps around the end of the buffer list. + See |:buffer-!| for [!]. ++ Also see ||+cmd|. + If you are in a help buffer, this takes you to the next help + buffer (if there is one). Similarly, if you are in a normal + (non-help) buffer, this takes you to the next normal buffer. +*************** +*** 1079,1133 **** + the way when you're browsing code/text buffers. The next three + commands also work like this. + + *:sbn* *:sbnext* +! :[N]sbn[ext] [N] + Split window and go to [N]th next buffer in buffer list. + Wraps around the end of the buffer list. Uses 'switchbuf' + +! :[N]bN[ext][!] [N] *:bN* *:bNext* *:bp* *:bprevious* *E88* +! :[N]bp[revious][!] [N] + Go to [N]th previous buffer in buffer list. [N] defaults to + one. Wraps around the start of the buffer list. + See |:buffer-!| for [!] and 'switchbuf'. + +! :[N]sbN[ext] [N] *:sbN* *:sbNext* *:sbp* *:sbprevious* +! :[N]sbp[revious] [N] + Split window and go to [N]th previous buffer in buffer list. + Wraps around the start of the buffer list. + Uses 'switchbuf'. + +! *:br* *:brewind* +! :br[ewind][!] Go to first buffer in buffer list. If the buffer list is + empty, go to the first unlisted buffer. + See |:buffer-!| for [!]. + +! *:bf* *:bfirst* +! :bf[irst] Same as ":brewind". + +! *:sbr* *:sbrewind* +! :sbr[ewind] Split window and go to first buffer in buffer list. If the + buffer list is empty, go to the first unlisted buffer. + Respects the 'switchbuf' option. + +! *:sbf* *:sbfirst* +! :sbf[irst] Same as ":sbrewind". + +! *:bl* *:blast* +! :bl[ast][!] Go to last buffer in buffer list. If the buffer list is + empty, go to the last unlisted buffer. + See |:buffer-!| for [!]. + +! *:sbl* *:sblast* +! :sbl[ast] Split window and go to last buffer in buffer list. If the + buffer list is empty, go to the last unlisted buffer. + Respects 'switchbuf' option. + +! :[N]bm[odified][!] [N] *:bm* *:bmodified* *E84* + Go to [N]th next modified buffer. Note: this command also + finds unlisted buffers. If there is no modified buffer the + command fails. + +! :[N]sbm[odified] [N] *:sbm* *:sbmodified* + Split window and go to [N]th next modified buffer. + Respects 'switchbuf' option. + Note: this command also finds buffers not in the buffer list. +--- 1084,1144 ---- + the way when you're browsing code/text buffers. The next three + commands also work like this. + ++ + *:sbn* *:sbnext* +! :[N]sbn[ext] [+cmd] [N] + Split window and go to [N]th next buffer in buffer list. + Wraps around the end of the buffer list. Uses 'switchbuf' ++ Also see ||+cmd|. + +! :[N]bN[ext][!] [+cmd] [N] *:bN* *:bNext* *:bp* *:bprevious* *E88* +! :[N]bp[revious][!] [+cmd] [N] + Go to [N]th previous buffer in buffer list. [N] defaults to + one. Wraps around the start of the buffer list. + See |:buffer-!| for [!] and 'switchbuf'. ++ Also see ||+cmd|. + +! :[N]sbN[ext] [+cmd] [N] *:sbN* *:sbNext* *:sbp* *:sbprevious* +! :[N]sbp[revious] [+cmd] [N] + Split window and go to [N]th previous buffer in buffer list. + Wraps around the start of the buffer list. + Uses 'switchbuf'. ++ Also see ||+cmd|. + +! :br[ewind][!] [+cmd] *:br* *:brewind* +! Go to first buffer in buffer list. If the buffer list is + empty, go to the first unlisted buffer. + See |:buffer-!| for [!]. + +! :bf[irst] [+cmd] *:bf* *:bfirst* +! Same as |:brewind|. +! Also see |+cmd|. + +! :sbr[ewind] [+cmd] *:sbr* *:sbrewind* +! Split window and go to first buffer in buffer list. If the + buffer list is empty, go to the first unlisted buffer. + Respects the 'switchbuf' option. ++ Also see |+cmd|. + +! :sbf[irst] [+cmd] *:sbf* *:sbfirst* +! Same as ":sbrewind". + +! :bl[ast][!] [+cmd] *:bl* *:blast* +! Go to last buffer in buffer list. If the buffer list is + empty, go to the last unlisted buffer. + See |:buffer-!| for [!]. + +! :sbl[ast] [+cmd] *:sbl* *:sblast* +! Split window and go to last buffer in buffer list. If the + buffer list is empty, go to the last unlisted buffer. + Respects 'switchbuf' option. + +! :[N]bm[odified][!] [+cmd] [N] *:bm* *:bmodified* *E84* + Go to [N]th next modified buffer. Note: this command also + finds unlisted buffers. If there is no modified buffer the + command fails. + +! :[N]sbm[odified] [+cmd] [N] *:sbm* *:sbmodified* + Split window and go to [N]th next modified buffer. + Respects 'switchbuf' option. + Note: this command also finds buffers not in the buffer list. +*** ../vim-7.4.449/src/ex_cmds.h 2014-09-19 19:39:30.766446025 +0200 +--- src/ex_cmds.h 2014-09-19 19:53:55.618447914 +0200 +*************** +*** 132,140 **** + EX(CMD_aunmenu, "aunmenu", ex_menu, + EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN), + EX(CMD_buffer, "buffer", ex_buffer, +! BANG|RANGE|NOTADR|BUFNAME|BUFUNL|COUNT|EXTRA|TRLBAR), + EX(CMD_bNext, "bNext", ex_bprevious, +! BANG|RANGE|NOTADR|COUNT|TRLBAR), + EX(CMD_ball, "ball", ex_buffer_all, + RANGE|NOTADR|COUNT|TRLBAR), + EX(CMD_badd, "badd", ex_edit, +--- 132,140 ---- + EX(CMD_aunmenu, "aunmenu", ex_menu, + EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN), + EX(CMD_buffer, "buffer", ex_buffer, +! BANG|RANGE|NOTADR|BUFNAME|BUFUNL|COUNT|EXTRA|EDITCMD|TRLBAR), + EX(CMD_bNext, "bNext", ex_bprevious, +! BANG|RANGE|NOTADR|COUNT|EDITCMD|TRLBAR), + EX(CMD_ball, "ball", ex_buffer_all, + RANGE|NOTADR|COUNT|TRLBAR), + EX(CMD_badd, "badd", ex_edit, +*************** +*** 146,164 **** + EX(CMD_belowright, "belowright", ex_wrongmodifier, + NEEDARG|EXTRA|NOTRLCOM), + EX(CMD_bfirst, "bfirst", ex_brewind, +! BANG|RANGE|NOTADR|TRLBAR), + EX(CMD_blast, "blast", ex_blast, +! BANG|RANGE|NOTADR|TRLBAR), + EX(CMD_bmodified, "bmodified", ex_bmodified, +! BANG|RANGE|NOTADR|COUNT|TRLBAR), + EX(CMD_bnext, "bnext", ex_bnext, +! BANG|RANGE|NOTADR|COUNT|TRLBAR), + EX(CMD_botright, "botright", ex_wrongmodifier, + NEEDARG|EXTRA|NOTRLCOM), + EX(CMD_bprevious, "bprevious", ex_bprevious, +! BANG|RANGE|NOTADR|COUNT|TRLBAR), + EX(CMD_brewind, "brewind", ex_brewind, +! BANG|RANGE|NOTADR|TRLBAR), + EX(CMD_break, "break", ex_break, + TRLBAR|SBOXOK|CMDWIN), + EX(CMD_breakadd, "breakadd", ex_breakadd, +--- 146,164 ---- + EX(CMD_belowright, "belowright", ex_wrongmodifier, + NEEDARG|EXTRA|NOTRLCOM), + EX(CMD_bfirst, "bfirst", ex_brewind, +! BANG|RANGE|NOTADR|EDITCMD|TRLBAR), + EX(CMD_blast, "blast", ex_blast, +! BANG|RANGE|NOTADR|EDITCMD|TRLBAR), + EX(CMD_bmodified, "bmodified", ex_bmodified, +! BANG|RANGE|NOTADR|COUNT|EDITCMD|TRLBAR), + EX(CMD_bnext, "bnext", ex_bnext, +! BANG|RANGE|NOTADR|COUNT|EDITCMD|TRLBAR), + EX(CMD_botright, "botright", ex_wrongmodifier, + NEEDARG|EXTRA|NOTRLCOM), + EX(CMD_bprevious, "bprevious", ex_bprevious, +! BANG|RANGE|NOTADR|COUNT|EDITCMD|TRLBAR), + EX(CMD_brewind, "brewind", ex_brewind, +! BANG|RANGE|NOTADR|EDITCMD|TRLBAR), + EX(CMD_break, "break", ex_break, + TRLBAR|SBOXOK|CMDWIN), + EX(CMD_breakadd, "breakadd", ex_breakadd, +*************** +*** 814,836 **** + EX(CMD_saveas, "saveas", ex_write, + BANG|DFLALL|FILE1|ARGOPT|CMDWIN|TRLBAR), + EX(CMD_sbuffer, "sbuffer", ex_buffer, +! BANG|RANGE|NOTADR|BUFNAME|BUFUNL|COUNT|EXTRA|TRLBAR), + EX(CMD_sbNext, "sbNext", ex_bprevious, +! RANGE|NOTADR|COUNT|TRLBAR), + EX(CMD_sball, "sball", ex_buffer_all, +! RANGE|NOTADR|COUNT|TRLBAR), + EX(CMD_sbfirst, "sbfirst", ex_brewind, +! TRLBAR), + EX(CMD_sblast, "sblast", ex_blast, +! TRLBAR), + EX(CMD_sbmodified, "sbmodified", ex_bmodified, +! RANGE|NOTADR|COUNT|TRLBAR), + EX(CMD_sbnext, "sbnext", ex_bnext, +! RANGE|NOTADR|COUNT|TRLBAR), + EX(CMD_sbprevious, "sbprevious", ex_bprevious, +! RANGE|NOTADR|COUNT|TRLBAR), + EX(CMD_sbrewind, "sbrewind", ex_brewind, +! TRLBAR), + EX(CMD_scriptnames, "scriptnames", ex_scriptnames, + TRLBAR|CMDWIN), + EX(CMD_scriptencoding, "scriptencoding", ex_scriptencoding, +--- 814,836 ---- + EX(CMD_saveas, "saveas", ex_write, + BANG|DFLALL|FILE1|ARGOPT|CMDWIN|TRLBAR), + EX(CMD_sbuffer, "sbuffer", ex_buffer, +! BANG|RANGE|NOTADR|BUFNAME|BUFUNL|COUNT|EXTRA|EDITCMD|TRLBAR), + EX(CMD_sbNext, "sbNext", ex_bprevious, +! RANGE|NOTADR|COUNT|EDITCMD|TRLBAR), + EX(CMD_sball, "sball", ex_buffer_all, +! RANGE|NOTADR|COUNT|EDITCMD|TRLBAR), + EX(CMD_sbfirst, "sbfirst", ex_brewind, +! EDITCMD|TRLBAR), + EX(CMD_sblast, "sblast", ex_blast, +! EDITCMD|TRLBAR), + EX(CMD_sbmodified, "sbmodified", ex_bmodified, +! RANGE|NOTADR|COUNT|EDITCMD|TRLBAR), + EX(CMD_sbnext, "sbnext", ex_bnext, +! RANGE|NOTADR|COUNT|EDITCMD|TRLBAR), + EX(CMD_sbprevious, "sbprevious", ex_bprevious, +! RANGE|NOTADR|COUNT|EDITCMD|TRLBAR), + EX(CMD_sbrewind, "sbrewind", ex_brewind, +! EDITCMD|TRLBAR), + EX(CMD_scriptnames, "scriptnames", ex_scriptnames, + TRLBAR|CMDWIN), + EX(CMD_scriptencoding, "scriptencoding", ex_scriptencoding, +*** ../vim-7.4.449/src/ex_docmd.c 2014-09-09 12:21:57.716501404 +0200 +--- src/ex_docmd.c 2014-09-19 19:53:55.622447914 +0200 +*************** +*** 5135,5140 **** +--- 5135,5142 ---- + goto_buffer(eap, DOBUF_CURRENT, FORWARD, 0); + else + goto_buffer(eap, DOBUF_FIRST, FORWARD, (int)eap->line2); ++ if (eap->do_ecmd_cmd != NULL) ++ do_cmdline_cmd(eap->do_ecmd_cmd); + } + } + +*************** +*** 5147,5152 **** +--- 5149,5156 ---- + exarg_T *eap; + { + goto_buffer(eap, DOBUF_MOD, FORWARD, (int)eap->line2); ++ if (eap->do_ecmd_cmd != NULL) ++ do_cmdline_cmd(eap->do_ecmd_cmd); + } + + /* +*************** +*** 5158,5163 **** +--- 5162,5169 ---- + exarg_T *eap; + { + goto_buffer(eap, DOBUF_CURRENT, FORWARD, (int)eap->line2); ++ if (eap->do_ecmd_cmd != NULL) ++ do_cmdline_cmd(eap->do_ecmd_cmd); + } + + /* +*************** +*** 5171,5176 **** +--- 5177,5184 ---- + exarg_T *eap; + { + goto_buffer(eap, DOBUF_CURRENT, BACKWARD, (int)eap->line2); ++ if (eap->do_ecmd_cmd != NULL) ++ do_cmdline_cmd(eap->do_ecmd_cmd); + } + + /* +*************** +*** 5184,5189 **** +--- 5192,5199 ---- + exarg_T *eap; + { + goto_buffer(eap, DOBUF_FIRST, FORWARD, 0); ++ if (eap->do_ecmd_cmd != NULL) ++ do_cmdline_cmd(eap->do_ecmd_cmd); + } + + /* +*************** +*** 5195,5200 **** +--- 5205,5212 ---- + exarg_T *eap; + { + goto_buffer(eap, DOBUF_LAST, BACKWARD, 0); ++ if (eap->do_ecmd_cmd != NULL) ++ do_cmdline_cmd(eap->do_ecmd_cmd); + } + #endif + +*** ../vim-7.4.449/src/version.c 2014-09-19 19:39:30.766446025 +0200 +--- src/version.c 2014-09-19 19:54:39.442448010 +0200 +*************** +*** 743,744 **** +--- 743,746 ---- + { /* Add new patch number below this line */ ++ /**/ ++ 450, + /**/ + +-- +hundred-and-one symptoms of being an internet addict: +166. You have been on your computer soo long that you didn't realize + you had grandchildren. + + /// 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 ///