The nomagic
setting was created to support the edit
mode, which was "designed for more casual or beginning users", rather than as a general "nothing is a metacharacter" mode.
From the ex reference manual:
The ex default setting of magic gives quick access to a powerful set of regular expression metacharacters. The disadvantage of magic is that the user must remember that these metacharacters are magic and precede them with the character '\' to use them as "ordinary" characters. With nomagic, the default for edit, regular expressions are much simpler, there being only two metacharacters. The power of the other metacharacters is still available by preceding the (now) ordinary character with a '\'. Note that '\' is thus always a metacharacter.
The remainder of the discussion of regular expressions assumes that that the setting of this option is magic. To discern what is true with nomagic it suffices to remember that the only special characters in this case will be '^' at the beginning of a regular expression, '$' at the end of a regular expression, and '\'.
When started as edit
, ex 1.1 sets noopen
(not permitted to enter visual mode), nomagic
, and notify=1
(ex default is 5, notify
is equivalent to vim report
).
The nomagic
setting also affects the usage of &
and ~
in substitution commands.
(Still no idea why, but we'd probably have to ask someone who was at Berkeley in the '70s for that.)