mirror of
https://github.com/neovim/neovim.git
synced 2025-09-16 08:18:17 +00:00
vim-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) https://code.google.com/p/vim/source/detail?r=v7-4-450
This commit is contained in:
@@ -3957,13 +3957,17 @@ static void ex_bunload(exarg_T *eap)
|
||||
*/
|
||||
static void ex_buffer(exarg_T *eap)
|
||||
{
|
||||
if (*eap->arg)
|
||||
if (*eap->arg) {
|
||||
eap->errmsg = e_trailing;
|
||||
else {
|
||||
if (eap->addr_count == 0) /* default is current buffer */
|
||||
} else {
|
||||
if (eap->addr_count == 0) { // default is current buffer
|
||||
goto_buffer(eap, DOBUF_CURRENT, FORWARD, 0);
|
||||
else
|
||||
} else {
|
||||
goto_buffer(eap, DOBUF_FIRST, FORWARD, (int)eap->line2);
|
||||
}
|
||||
if (eap->do_ecmd_cmd != NULL) {
|
||||
do_cmdline_cmd(eap->do_ecmd_cmd);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3974,6 +3978,9 @@ static void ex_buffer(exarg_T *eap)
|
||||
static void ex_bmodified(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);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -3983,6 +3990,9 @@ static void ex_bmodified(exarg_T *eap)
|
||||
static void ex_bnext(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);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -3994,6 +4004,9 @@ static void ex_bnext(exarg_T *eap)
|
||||
static void ex_bprevious(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);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -4005,6 +4018,9 @@ static void ex_bprevious(exarg_T *eap)
|
||||
static void ex_brewind(exarg_T *eap)
|
||||
{
|
||||
goto_buffer(eap, DOBUF_FIRST, FORWARD, 0);
|
||||
if (eap->do_ecmd_cmd != NULL) {
|
||||
do_cmdline_cmd(eap->do_ecmd_cmd);
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
@@ -4014,6 +4030,9 @@ static void ex_brewind(exarg_T *eap)
|
||||
static void ex_blast(exarg_T *eap)
|
||||
{
|
||||
goto_buffer(eap, DOBUF_LAST, BACKWARD, 0);
|
||||
if (eap->do_ecmd_cmd != NULL) {
|
||||
do_cmdline_cmd(eap->do_ecmd_cmd);
|
||||
}
|
||||
}
|
||||
|
||||
int ends_excmd(int c) FUNC_ATTR_CONST
|
||||
|
Reference in New Issue
Block a user