summaryrefslogtreecommitdiff
path: root/src/ex_docmd.c
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2021-02-15 21:30:30 +0100
committerBram Moolenaar <Bram@vim.org>2021-02-15 21:30:30 +0100
commitb8554304c3673b081e9b5996f009fd0e4307e482 (patch)
tree9ac90afb26ddcf64266c051ea7d67881bc4662c2 /src/ex_docmd.c
parenteed9d46293f0842aad0d50ff3a526f9a48b12421 (diff)
downloadvim-git-b8554304c3673b081e9b5996f009fd0e4307e482.tar.gz
patch 8.2.2519: Vim9: no reason to keep strange Vi behaviorv8.2.2519
Problem: Vim9: no reason to keep strange Vi behavior. Solution: ":3" and ":3|" both go to line 3. ":|" does not print the line. (closes #7840)
Diffstat (limited to 'src/ex_docmd.c')
-rw-r--r--src/ex_docmd.c10
1 files changed, 7 insertions, 3 deletions
diff --git a/src/ex_docmd.c b/src/ex_docmd.c
index 0dd21eb01..f4bdf7b15 100644
--- a/src/ex_docmd.c
+++ b/src/ex_docmd.c
@@ -1957,12 +1957,16 @@ do_one_cmd(
/*
* strange vi behaviour:
* ":3" jumps to line 3
- * ":3|..." prints line 3
- * ":|" prints current line
+ * ":3|..." prints line 3 (not in Vim9 script)
+ * ":|" prints current line (not in Vim9 script)
*/
if (ea.skip) // skip this if inside :if
goto doend;
- if (*ea.cmd == '|' || (exmode_active && ea.line1 != ea.line2))
+ if ((*ea.cmd == '|' || (exmode_active && ea.line1 != ea.line2))
+#ifdef FEAT_EVAL
+ && !vim9script
+#endif
+ )
{
ea.cmdidx = CMD_print;
ea.argt = EX_RANGE+EX_COUNT+EX_TRLBAR;