So I'm reading the ex spec and came across the following section under Command Line Parsing in ex:
Otherwise:
a. If the command was a map, unmap, abbreviate, or unabbreviate command, characters up to the first non-
<control>-V
-escaped<newline>
,<vertical-line>
, or double-quote character shall be skipped and be part of the command.b. Otherwise, characters up to the first non-
<backslash>
-escaped<newline>
,<vertical-line>
, or double-quote character shall be skipped and be part of the command.c. If the command was an append, change, or insert command, and the step 12.b. ended at a
<vertical-line>
character, any subsequent characters, up to the next non-<backslash>
-escaped<newline>
shall be used as input text to the command....
To me, this meant that the command
:i | quit
would insert the word "quit" instead of potentially exiting when I exit text input mode. Is this a bug or am I misreading the spec?
The ex
command on my machine is symlinked to vim (version 8.2)
:i here
insert the a line containing "here" instead of throwing an error