Hi Bram, On Sun, May 22, 2016 at 12:17 PM, Bram Moolenaar <[email protected]> wrote: > > Yegappan Lakshmanan wrote: > >> On Fri, May 20, 2016 at 9:17 AM, Bram Moolenaar <[email protected]> >> wrote: >> >> > Justin Keyes wrote: >> > >> > > >> > > ``` >> > > Doesn't work for :diffsplit, :diffpatch, :execute and :normal. >> > > ``` >> > > >> > > But it doesn't mention user commands. It would avoid a lot of redundant >> > commands, and add flexibility, if `:tab` supported user commands. >> > > >> > > Steps to reproduce: >> > > >> > > ``` >> > > :command! -nargs=1 Foo split <args> >> > > :tab Foo bar >> > > ``` >> > > >> > > - Expected behavior: opens a new buffer named "bar" in a new tab >> > > - Actual behavior: opens a new buffer named "bar" in a new split window >> > >> > OK, but this will cause trouble if the user command has several Ex >> > commands, then we don't know where to apply the modifier. E.g. when >> > temporarily opening a scratch bufffer. >> > >> > We could make the modifiers available in <> form, so that the user >> > command can apply them where needed. Possibly just <mods>, to pass on >> > all modifiers. >> >> The attached patch adds support for the <mods> user command escape >> sequence. > > Thanks. It would be nice if the help has an example that shows how the > modifiers are applied to only one of the commands. E.g. do something > else before the "split". >
We can use the example quoted by the OP: :command! -nargs=1 Foo <mods> split <args> Now the ":tab Foo bar" command will open the file in a new tab. - Yegappan -- -- You received this message from the "vim_dev" maillist. Do not top-post! Type your reply below the text you are replying to. For more information, visit http://www.vim.org/maillist.php --- You received this message because you are subscribed to the Google Groups "vim_dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
