home *** CD-ROM | disk | FTP | other *** search
/ vim.ftp.fu-berlin.de / 2015-02-03.vim.ftp.fu-berlin.de.tar / vim.ftp.fu-berlin.de / patches / 7.4 / 7.4.450 < prev    next >
Encoding:
Internet Message Format  |  2014-09-19  |  14.6 KB

  1. To: vim_dev@googlegroups.com
  2. Subject: Patch 7.4.450
  3. Fcc: outbox
  4. From: Bram Moolenaar <Bram@moolenaar.net>
  5. Mime-Version: 1.0
  6. Content-Type: text/plain; charset=UTF-8
  7. Content-Transfer-Encoding: 8bit
  8. ------------
  9.  
  10. Patch 7.4.450
  11. Problem:    Not all commands that edit another buffer support the +cmd
  12.         argument.
  13. Solution:   Add the +cmd argument to relevant commands. (Marcin Szamotulski)
  14. Files:        runtime/doc/windows.txt, src/ex_cmds.h, src/ex_docmd.c
  15.  
  16.  
  17. *** ../vim-7.4.449/runtime/doc/windows.txt    2014-03-25 13:03:44.929793765 +0100
  18. --- runtime/doc/windows.txt    2014-09-19 19:53:55.618447914 +0200
  19. ***************
  20. *** 1042,1077 ****
  21.           a number).  Insert a backslash before a space in a buffer
  22.           name.
  23.   
  24. ! :[N]b[uffer][!] [N]            *:b* *:bu* *:buf* *:buffer* *E86*
  25.           Edit buffer [N] from the buffer list.  If [N] is not given,
  26.           the current buffer remains being edited.  See |:buffer-!| for
  27.           [!].  This will also edit a buffer that is not in the buffer
  28.           list, without setting the 'buflisted' flag.
  29.   
  30. ! :[N]b[uffer][!] {bufname}
  31.           Edit buffer for {bufname} from the buffer list.  See
  32.           |:buffer-!| for [!].  This will also edit a buffer that is not
  33.           in the buffer list, without setting the 'buflisted' flag.
  34.   
  35. ! :[N]sb[uffer] [N]                    *:sb* *:sbuffer*
  36.           Split window and edit buffer [N] from the buffer list.  If [N]
  37.           is not given, the current buffer is edited.  Respects the
  38.           "useopen" setting of 'switchbuf' when splitting.  This will
  39.           also edit a buffer that is not in the buffer list, without
  40.           setting the 'buflisted' flag.
  41.   
  42. ! :[N]sb[uffer] {bufname}
  43.           Split window and edit buffer for {bufname} from the buffer
  44.           list.  This will also edit a buffer that is not in the buffer
  45.           list, without setting the 'buflisted' flag.
  46.           Note: If what you want to do is split the buffer, make a copy
  47.           under another name, you can do it this way: >
  48.               :w foobar | sp #
  49.   
  50. ! :[N]bn[ext][!] [N]                    *:bn* *:bnext* *E87*
  51.           Go to [N]th next buffer in buffer list.  [N] defaults to one.
  52.           Wraps around the end of the buffer list.
  53.           See |:buffer-!| for [!].
  54.           If you are in a help buffer, this takes you to the next help
  55.           buffer (if there is one).  Similarly, if you are in a normal
  56.           (non-help) buffer, this takes you to the next normal buffer.
  57. --- 1042,1082 ----
  58.           a number).  Insert a backslash before a space in a buffer
  59.           name.
  60.   
  61. ! :[N]b[uffer][!] [+cmd] [N]        *:b* *:bu* *:buf* *:buffer* *E86*
  62.           Edit buffer [N] from the buffer list.  If [N] is not given,
  63.           the current buffer remains being edited.  See |:buffer-!| for
  64.           [!].  This will also edit a buffer that is not in the buffer
  65.           list, without setting the 'buflisted' flag.
  66. +         Also see ||+cmd|.
  67.   
  68. ! :[N]b[uffer][!] [+cmd] {bufname}
  69.           Edit buffer for {bufname} from the buffer list.  See
  70.           |:buffer-!| for [!].  This will also edit a buffer that is not
  71.           in the buffer list, without setting the 'buflisted' flag.
  72. +         Also see ||+cmd|.
  73.   
  74. ! :[N]sb[uffer] [+cmd] [N]                *:sb* *:sbuffer*
  75.           Split window and edit buffer [N] from the buffer list.  If [N]
  76.           is not given, the current buffer is edited.  Respects the
  77.           "useopen" setting of 'switchbuf' when splitting.  This will
  78.           also edit a buffer that is not in the buffer list, without
  79.           setting the 'buflisted' flag.
  80. +         Also see ||+cmd|.
  81.   
  82. ! :[N]sb[uffer] [+cmd] {bufname}
  83.           Split window and edit buffer for {bufname} from the buffer
  84.           list.  This will also edit a buffer that is not in the buffer
  85.           list, without setting the 'buflisted' flag.
  86.           Note: If what you want to do is split the buffer, make a copy
  87.           under another name, you can do it this way: >
  88.               :w foobar | sp #
  89. + <        Also see ||+cmd|.
  90.   
  91. ! :[N]bn[ext][!] [+cmd] [N]                *:bn* *:bnext* *E87*
  92.           Go to [N]th next buffer in buffer list.  [N] defaults to one.
  93.           Wraps around the end of the buffer list.
  94.           See |:buffer-!| for [!].
  95. +         Also see ||+cmd|.
  96.           If you are in a help buffer, this takes you to the next help
  97.           buffer (if there is one).  Similarly, if you are in a normal
  98.           (non-help) buffer, this takes you to the next normal buffer.
  99. ***************
  100. *** 1079,1133 ****
  101.           the way when you're browsing code/text buffers.  The next three
  102.           commands also work like this.
  103.   
  104.                               *:sbn* *:sbnext*
  105. ! :[N]sbn[ext] [N]
  106.           Split window and go to [N]th next buffer in buffer list.
  107.           Wraps around the end of the buffer list.  Uses 'switchbuf'
  108.   
  109. ! :[N]bN[ext][!] [N]            *:bN* *:bNext* *:bp* *:bprevious* *E88*
  110. ! :[N]bp[revious][!] [N]
  111.           Go to [N]th previous buffer in buffer list.  [N] defaults to
  112.           one.  Wraps around the start of the buffer list.
  113.           See |:buffer-!| for [!] and 'switchbuf'.
  114.   
  115. ! :[N]sbN[ext] [N]            *:sbN* *:sbNext* *:sbp* *:sbprevious*
  116. ! :[N]sbp[revious] [N]
  117.           Split window and go to [N]th previous buffer in buffer list.
  118.           Wraps around the start of the buffer list.
  119.           Uses 'switchbuf'.
  120.   
  121. !                             *:br* *:brewind*
  122. ! :br[ewind][!]    Go to first buffer in buffer list.  If the buffer list is
  123.           empty, go to the first unlisted buffer.
  124.           See |:buffer-!| for [!].
  125.   
  126. !                             *:bf* *:bfirst*
  127. ! :bf[irst]    Same as ":brewind".
  128.   
  129. !                             *:sbr* *:sbrewind*
  130. ! :sbr[ewind]    Split window and go to first buffer in buffer list.  If the
  131.           buffer list is empty, go to the first unlisted buffer.
  132.           Respects the 'switchbuf' option.
  133.   
  134. !                             *:sbf* *:sbfirst*
  135. ! :sbf[irst]    Same as ":sbrewind".
  136.   
  137. !                             *:bl* *:blast*
  138. ! :bl[ast][!]    Go to last buffer in buffer list.  If the buffer list is
  139.           empty, go to the last unlisted buffer.
  140.           See |:buffer-!| for [!].
  141.   
  142. !                             *:sbl* *:sblast*
  143. ! :sbl[ast]    Split window and go to last buffer in buffer list.  If the
  144.           buffer list is empty, go to the last unlisted buffer.
  145.           Respects 'switchbuf' option.
  146.   
  147. ! :[N]bm[odified][!] [N]                *:bm* *:bmodified* *E84*
  148.           Go to [N]th next modified buffer.  Note: this command also
  149.           finds unlisted buffers.  If there is no modified buffer the
  150.           command fails.
  151.   
  152. ! :[N]sbm[odified] [N]                    *:sbm* *:sbmodified*
  153.           Split window and go to [N]th next modified buffer.
  154.           Respects 'switchbuf' option.
  155.           Note: this command also finds buffers not in the buffer list.
  156. --- 1084,1144 ----
  157.           the way when you're browsing code/text buffers.  The next three
  158.           commands also work like this.
  159.   
  160.                               *:sbn* *:sbnext*
  161. ! :[N]sbn[ext] [+cmd] [N]
  162.           Split window and go to [N]th next buffer in buffer list.
  163.           Wraps around the end of the buffer list.  Uses 'switchbuf'
  164. +         Also see ||+cmd|.
  165.   
  166. ! :[N]bN[ext][!] [+cmd] [N]        *:bN* *:bNext* *:bp* *:bprevious* *E88*
  167. ! :[N]bp[revious][!] [+cmd] [N]
  168.           Go to [N]th previous buffer in buffer list.  [N] defaults to
  169.           one.  Wraps around the start of the buffer list.
  170.           See |:buffer-!| for [!] and 'switchbuf'.
  171. +         Also see ||+cmd|.
  172.   
  173. ! :[N]sbN[ext] [+cmd] [N]            *:sbN* *:sbNext* *:sbp* *:sbprevious*
  174. ! :[N]sbp[revious] [+cmd] [N]
  175.           Split window and go to [N]th previous buffer in buffer list.
  176.           Wraps around the start of the buffer list.
  177.           Uses 'switchbuf'.
  178. +         Also see ||+cmd|.
  179.   
  180. ! :br[ewind][!] [+cmd]                    *:br* *:brewind*
  181. !         Go to first buffer in buffer list.  If the buffer list is
  182.           empty, go to the first unlisted buffer.
  183.           See |:buffer-!| for [!].
  184.   
  185. ! :bf[irst] [+cmd]                    *:bf* *:bfirst*
  186. !         Same as |:brewind|.
  187. !         Also see |+cmd|.
  188.   
  189. ! :sbr[ewind] [+cmd]                    *:sbr* *:sbrewind*
  190. !         Split window and go to first buffer in buffer list.  If the
  191.           buffer list is empty, go to the first unlisted buffer.
  192.           Respects the 'switchbuf' option.
  193. +         Also see |+cmd|.
  194.   
  195. ! :sbf[irst] [+cmd]                    *:sbf* *:sbfirst*
  196. !         Same as ":sbrewind".
  197.   
  198. ! :bl[ast][!] [+cmd]                    *:bl* *:blast*
  199. !         Go to last buffer in buffer list.  If the buffer list is
  200.           empty, go to the last unlisted buffer.
  201.           See |:buffer-!| for [!].
  202.   
  203. ! :sbl[ast] [+cmd]                    *:sbl* *:sblast*
  204. !         Split window and go to last buffer in buffer list.  If the
  205.           buffer list is empty, go to the last unlisted buffer.
  206.           Respects 'switchbuf' option.
  207.   
  208. ! :[N]bm[odified][!] [+cmd] [N]            *:bm* *:bmodified* *E84*
  209.           Go to [N]th next modified buffer.  Note: this command also
  210.           finds unlisted buffers.  If there is no modified buffer the
  211.           command fails.
  212.   
  213. ! :[N]sbm[odified] [+cmd] [N]                *:sbm* *:sbmodified*
  214.           Split window and go to [N]th next modified buffer.
  215.           Respects 'switchbuf' option.
  216.           Note: this command also finds buffers not in the buffer list.
  217. *** ../vim-7.4.449/src/ex_cmds.h    2014-09-19 19:39:30.766446025 +0200
  218. --- src/ex_cmds.h    2014-09-19 19:53:55.618447914 +0200
  219. ***************
  220. *** 132,140 ****
  221.   EX(CMD_aunmenu,        "aunmenu",    ex_menu,
  222.               EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN),
  223.   EX(CMD_buffer,        "buffer",    ex_buffer,
  224. !             BANG|RANGE|NOTADR|BUFNAME|BUFUNL|COUNT|EXTRA|TRLBAR),
  225.   EX(CMD_bNext,        "bNext",    ex_bprevious,
  226. !             BANG|RANGE|NOTADR|COUNT|TRLBAR),
  227.   EX(CMD_ball,        "ball",        ex_buffer_all,
  228.               RANGE|NOTADR|COUNT|TRLBAR),
  229.   EX(CMD_badd,        "badd",        ex_edit,
  230. --- 132,140 ----
  231.   EX(CMD_aunmenu,        "aunmenu",    ex_menu,
  232.               EXTRA|TRLBAR|NOTRLCOM|USECTRLV|CMDWIN),
  233.   EX(CMD_buffer,        "buffer",    ex_buffer,
  234. !             BANG|RANGE|NOTADR|BUFNAME|BUFUNL|COUNT|EXTRA|EDITCMD|TRLBAR),
  235.   EX(CMD_bNext,        "bNext",    ex_bprevious,
  236. !             BANG|RANGE|NOTADR|COUNT|EDITCMD|TRLBAR),
  237.   EX(CMD_ball,        "ball",        ex_buffer_all,
  238.               RANGE|NOTADR|COUNT|TRLBAR),
  239.   EX(CMD_badd,        "badd",        ex_edit,
  240. ***************
  241. *** 146,164 ****
  242.   EX(CMD_belowright,    "belowright",    ex_wrongmodifier,
  243.               NEEDARG|EXTRA|NOTRLCOM),
  244.   EX(CMD_bfirst,        "bfirst",    ex_brewind,
  245. !             BANG|RANGE|NOTADR|TRLBAR),
  246.   EX(CMD_blast,        "blast",    ex_blast,
  247. !             BANG|RANGE|NOTADR|TRLBAR),
  248.   EX(CMD_bmodified,    "bmodified",    ex_bmodified,
  249. !             BANG|RANGE|NOTADR|COUNT|TRLBAR),
  250.   EX(CMD_bnext,        "bnext",    ex_bnext,
  251. !             BANG|RANGE|NOTADR|COUNT|TRLBAR),
  252.   EX(CMD_botright,    "botright",    ex_wrongmodifier,
  253.               NEEDARG|EXTRA|NOTRLCOM),
  254.   EX(CMD_bprevious,    "bprevious",    ex_bprevious,
  255. !             BANG|RANGE|NOTADR|COUNT|TRLBAR),
  256.   EX(CMD_brewind,        "brewind",    ex_brewind,
  257. !             BANG|RANGE|NOTADR|TRLBAR),
  258.   EX(CMD_break,        "break",    ex_break,
  259.               TRLBAR|SBOXOK|CMDWIN),
  260.   EX(CMD_breakadd,    "breakadd",    ex_breakadd,
  261. --- 146,164 ----
  262.   EX(CMD_belowright,    "belowright",    ex_wrongmodifier,
  263.               NEEDARG|EXTRA|NOTRLCOM),
  264.   EX(CMD_bfirst,        "bfirst",    ex_brewind,
  265. !             BANG|RANGE|NOTADR|EDITCMD|TRLBAR),
  266.   EX(CMD_blast,        "blast",    ex_blast,
  267. !             BANG|RANGE|NOTADR|EDITCMD|TRLBAR),
  268.   EX(CMD_bmodified,    "bmodified",    ex_bmodified,
  269. !             BANG|RANGE|NOTADR|COUNT|EDITCMD|TRLBAR),
  270.   EX(CMD_bnext,        "bnext",    ex_bnext,
  271. !             BANG|RANGE|NOTADR|COUNT|EDITCMD|TRLBAR),
  272.   EX(CMD_botright,    "botright",    ex_wrongmodifier,
  273.               NEEDARG|EXTRA|NOTRLCOM),
  274.   EX(CMD_bprevious,    "bprevious",    ex_bprevious,
  275. !             BANG|RANGE|NOTADR|COUNT|EDITCMD|TRLBAR),
  276.   EX(CMD_brewind,        "brewind",    ex_brewind,
  277. !             BANG|RANGE|NOTADR|EDITCMD|TRLBAR),
  278.   EX(CMD_break,        "break",    ex_break,
  279.               TRLBAR|SBOXOK|CMDWIN),
  280.   EX(CMD_breakadd,    "breakadd",    ex_breakadd,
  281. ***************
  282. *** 814,836 ****
  283.   EX(CMD_saveas,        "saveas",    ex_write,
  284.               BANG|DFLALL|FILE1|ARGOPT|CMDWIN|TRLBAR),
  285.   EX(CMD_sbuffer,        "sbuffer",    ex_buffer,
  286. !             BANG|RANGE|NOTADR|BUFNAME|BUFUNL|COUNT|EXTRA|TRLBAR),
  287.   EX(CMD_sbNext,        "sbNext",    ex_bprevious,
  288. !             RANGE|NOTADR|COUNT|TRLBAR),
  289.   EX(CMD_sball,        "sball",    ex_buffer_all,
  290. !             RANGE|NOTADR|COUNT|TRLBAR),
  291.   EX(CMD_sbfirst,        "sbfirst",    ex_brewind,
  292. !             TRLBAR),
  293.   EX(CMD_sblast,        "sblast",    ex_blast,
  294. !             TRLBAR),
  295.   EX(CMD_sbmodified,    "sbmodified",    ex_bmodified,
  296. !             RANGE|NOTADR|COUNT|TRLBAR),
  297.   EX(CMD_sbnext,        "sbnext",    ex_bnext,
  298. !             RANGE|NOTADR|COUNT|TRLBAR),
  299.   EX(CMD_sbprevious,    "sbprevious",    ex_bprevious,
  300. !             RANGE|NOTADR|COUNT|TRLBAR),
  301.   EX(CMD_sbrewind,    "sbrewind",    ex_brewind,
  302. !             TRLBAR),
  303.   EX(CMD_scriptnames,    "scriptnames",    ex_scriptnames,
  304.               TRLBAR|CMDWIN),
  305.   EX(CMD_scriptencoding,    "scriptencoding", ex_scriptencoding,
  306. --- 814,836 ----
  307.   EX(CMD_saveas,        "saveas",    ex_write,
  308.               BANG|DFLALL|FILE1|ARGOPT|CMDWIN|TRLBAR),
  309.   EX(CMD_sbuffer,        "sbuffer",    ex_buffer,
  310. !             BANG|RANGE|NOTADR|BUFNAME|BUFUNL|COUNT|EXTRA|EDITCMD|TRLBAR),
  311.   EX(CMD_sbNext,        "sbNext",    ex_bprevious,
  312. !             RANGE|NOTADR|COUNT|EDITCMD|TRLBAR),
  313.   EX(CMD_sball,        "sball",    ex_buffer_all,
  314. !             RANGE|NOTADR|COUNT|EDITCMD|TRLBAR),
  315.   EX(CMD_sbfirst,        "sbfirst",    ex_brewind,
  316. !             EDITCMD|TRLBAR),
  317.   EX(CMD_sblast,        "sblast",    ex_blast,
  318. !             EDITCMD|TRLBAR),
  319.   EX(CMD_sbmodified,    "sbmodified",    ex_bmodified,
  320. !             RANGE|NOTADR|COUNT|EDITCMD|TRLBAR),
  321.   EX(CMD_sbnext,        "sbnext",    ex_bnext,
  322. !             RANGE|NOTADR|COUNT|EDITCMD|TRLBAR),
  323.   EX(CMD_sbprevious,    "sbprevious",    ex_bprevious,
  324. !             RANGE|NOTADR|COUNT|EDITCMD|TRLBAR),
  325.   EX(CMD_sbrewind,    "sbrewind",    ex_brewind,
  326. !             EDITCMD|TRLBAR),
  327.   EX(CMD_scriptnames,    "scriptnames",    ex_scriptnames,
  328.               TRLBAR|CMDWIN),
  329.   EX(CMD_scriptencoding,    "scriptencoding", ex_scriptencoding,
  330. *** ../vim-7.4.449/src/ex_docmd.c    2014-09-09 12:21:57.716501404 +0200
  331. --- src/ex_docmd.c    2014-09-19 19:53:55.622447914 +0200
  332. ***************
  333. *** 5135,5140 ****
  334. --- 5135,5142 ----
  335.           goto_buffer(eap, DOBUF_CURRENT, FORWARD, 0);
  336.       else
  337.           goto_buffer(eap, DOBUF_FIRST, FORWARD, (int)eap->line2);
  338. +     if (eap->do_ecmd_cmd != NULL)
  339. +         do_cmdline_cmd(eap->do_ecmd_cmd);
  340.       }
  341.   }
  342.   
  343. ***************
  344. *** 5147,5152 ****
  345. --- 5149,5156 ----
  346.       exarg_T    *eap;
  347.   {
  348.       goto_buffer(eap, DOBUF_MOD, FORWARD, (int)eap->line2);
  349. +     if (eap->do_ecmd_cmd != NULL)
  350. +     do_cmdline_cmd(eap->do_ecmd_cmd);
  351.   }
  352.   
  353.   /*
  354. ***************
  355. *** 5158,5163 ****
  356. --- 5162,5169 ----
  357.       exarg_T    *eap;
  358.   {
  359.       goto_buffer(eap, DOBUF_CURRENT, FORWARD, (int)eap->line2);
  360. +     if (eap->do_ecmd_cmd != NULL)
  361. +     do_cmdline_cmd(eap->do_ecmd_cmd);
  362.   }
  363.   
  364.   /*
  365. ***************
  366. *** 5171,5176 ****
  367. --- 5177,5184 ----
  368.       exarg_T    *eap;
  369.   {
  370.       goto_buffer(eap, DOBUF_CURRENT, BACKWARD, (int)eap->line2);
  371. +     if (eap->do_ecmd_cmd != NULL)
  372. +     do_cmdline_cmd(eap->do_ecmd_cmd);
  373.   }
  374.   
  375.   /*
  376. ***************
  377. *** 5184,5189 ****
  378. --- 5192,5199 ----
  379.       exarg_T    *eap;
  380.   {
  381.       goto_buffer(eap, DOBUF_FIRST, FORWARD, 0);
  382. +     if (eap->do_ecmd_cmd != NULL)
  383. +     do_cmdline_cmd(eap->do_ecmd_cmd);
  384.   }
  385.   
  386.   /*
  387. ***************
  388. *** 5195,5200 ****
  389. --- 5205,5212 ----
  390.       exarg_T    *eap;
  391.   {
  392.       goto_buffer(eap, DOBUF_LAST, BACKWARD, 0);
  393. +     if (eap->do_ecmd_cmd != NULL)
  394. +     do_cmdline_cmd(eap->do_ecmd_cmd);
  395.   }
  396.   #endif
  397.   
  398. *** ../vim-7.4.449/src/version.c    2014-09-19 19:39:30.766446025 +0200
  399. --- src/version.c    2014-09-19 19:54:39.442448010 +0200
  400. ***************
  401. *** 743,744 ****
  402. --- 743,746 ----
  403.   {   /* Add new patch number below this line */
  404. + /**/
  405. +     450,
  406.   /**/
  407.  
  408. -- 
  409. hundred-and-one symptoms of being an internet addict:
  410. 166. You have been on your computer soo long that you didn't realize
  411.      you had grandchildren.
  412.  
  413.  /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net   \\\
  414. ///        sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\
  415. \\\  an exciting new programming language -- http://www.Zimbu.org        ///
  416.  \\\            help me help AIDS victims -- http://ICCF-Holland.org    ///
  417.