summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/ex_cmds.h10
-rw-r--r--src/ex_docmd.c10
-rw-r--r--src/version.c2
3 files changed, 14 insertions, 8 deletions
diff --git a/src/ex_cmds.h b/src/ex_cmds.h
index 2e35c8d5f..0c158e1bd 100644
--- a/src/ex_cmds.h
+++ b/src/ex_cmds.h
@@ -1775,7 +1775,7 @@ EXCMD(CMD_z, "z", ex_z,
EX_RANGE|EX_WHOLEFOLD|EX_EXTRA|EX_FLAGS|EX_TRLBAR|EX_CMDWIN,
ADDR_LINES),
-// commands that don't start with a lowercase letter
+// commands that don't start with a letter
EXCMD(CMD_bang, "!", ex_bang,
EX_RANGE|EX_WHOLEFOLD|EX_BANG|EX_FILES|EX_CMDWIN,
ADDR_LINES),
@@ -1800,6 +1800,11 @@ EXCMD(CMD_rshift, ">", ex_operators,
EXCMD(CMD_at, "@", ex_at,
EX_RANGE|EX_WHOLEFOLD|EX_EXTRA|EX_TRLBAR|EX_CMDWIN,
ADDR_LINES),
+EXCMD(CMD_tilde, "~", do_sub,
+ EX_RANGE|EX_WHOLEFOLD|EX_EXTRA|EX_CMDWIN|EX_MODIFY,
+ ADDR_LINES),
+
+// commands that start with an uppercase letter
EXCMD(CMD_Next, "Next", ex_previous,
EX_EXTRA|EX_RANGE|EX_COUNT|EX_BANG|EX_CMDARG|EX_ARGOPT|EX_TRLBAR,
ADDR_OTHER),
@@ -1809,9 +1814,6 @@ EXCMD(CMD_Print, "Print", ex_print,
EXCMD(CMD_X, "X", ex_X,
EX_TRLBAR,
ADDR_NONE),
-EXCMD(CMD_tilde, "~", do_sub,
- EX_RANGE|EX_WHOLEFOLD|EX_EXTRA|EX_CMDWIN|EX_MODIFY,
- ADDR_LINES),
#undef EXCMD
diff --git a/src/ex_docmd.c b/src/ex_docmd.c
index c70a4334c..25040df22 100644
--- a/src/ex_docmd.c
+++ b/src/ex_docmd.c
@@ -3153,9 +3153,9 @@ append_command(char_u *cmd)
char_u *
find_ex_command(
exarg_T *eap,
- int *full UNUSED,
- int (*lookup)(char_u *, size_t, cctx_T *) UNUSED,
- cctx_T *cctx UNUSED)
+ int *full UNUSED,
+ int (*lookup)(char_u *, size_t, cctx_T *) UNUSED,
+ cctx_T *cctx UNUSED)
{
int len;
char_u *p;
@@ -3285,6 +3285,8 @@ find_ex_command(
if (ASCII_ISLOWER(c2))
eap->cmdidx += cmdidxs2[CharOrdLow(c1)][CharOrdLow(c2)];
}
+ else if (ASCII_ISUPPER(eap->cmd[0]))
+ eap->cmdidx = CMD_Next;
else
eap->cmdidx = CMD_bang;
@@ -4766,7 +4768,7 @@ ex_blast(exarg_T *eap)
/*
* Check if "c" ends an Ex command.
- * In Vim9 script does not check for white space before #.
+ * In Vim9 script does not check for white space before # or #{.
*/
int
ends_excmd(int c)
diff --git a/src/version.c b/src/version.c
index 0ca4f39c9..c3a0a191d 100644
--- a/src/version.c
+++ b/src/version.c
@@ -747,6 +747,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 593,
+/**/
592,
/**/
591,