vim-patch:9.1.0205: Cannot use modifiers before :-Ntabmove (#28031)

Problem:  Cannot use modifiers before :-Ntabmove.
Solution: Check backwards from the command instead of checking from the
          start of the command line. Slightly adjust docs to make them
          more consistent (zeertzjq).

closes: vim/vim#14289

076faac537
This commit is contained in:
zeertzjq
2024-03-26 05:04:57 +08:00
committed by GitHub
parent 31c4cb2347
commit fb4e2dbbeb
3 changed files with 23 additions and 15 deletions

View File

@@ -4368,12 +4368,15 @@ static int get_tabpage_arg(exarg_T *eap)
tab_number = 0;
} else {
tab_number = (int)eap->line2;
char *cmdp = eap->cmd;
while (--cmdp > *eap->cmdlinep && (*cmdp == ' ' || ascii_isdigit(*cmdp))) {}
if (!unaccept_arg0 && *cmdp == '-') {
tab_number--;
if (tab_number < unaccept_arg0) {
eap->errmsg = _(e_invrange);
if (!unaccept_arg0) {
char *cmdp = eap->cmd;
while (--cmdp > *eap->cmdlinep
&& (ascii_iswhite(*cmdp) || ascii_isdigit(*cmdp))) {}
if (*cmdp == '-') {
tab_number--;
if (tab_number < unaccept_arg0) {
eap->errmsg = _(e_invrange);
}
}
}
}