У документації Vim сказано про :open
команду:
This command is in Vi, but Vim only simulates it:
*:o* *:op* *:open*
:[range]o[pen] Works like |:visual|: end Ex mode.
{Vi: start editing in open mode}
:[range]o[pen] /pattern/ As above, additionally move the cursor to the
column where "pattern" matches in the cursor
line.
Vim does not support open mode, since it's not really useful. For those
situations where ":open" would start open mode Vim will leave Ex mode, which
allows executing the same commands, but updates the whole screen instead of
only one line.
Він не коментує характер "моделювання", і чому це вважається імітацією, а не реальною командою з різною поведінкою. Запускаючи з колишнього режиму (Q), він дійсно веде себе так, як описано.
Однак, як видається, є і інша відкрита команда. При запуску із звичайного командного рядка або з колишнього режиму з різними аргументами, це здається синонімом для :edit
. При запуску в командному режимі з а /pattern/
, він позиціонує курсор і, мабуть, працює :edit
(при цьому положення курсору видно лише, якщо: редагування не вдається.) Він також може бути запущений як :open /pattern/ file
, який позиціонує курсор і працює:edit file
Моє запитання: Чому це не документально підтверджено? Чи є якісь відмінності від того, :edit
що я не помічаю? Був :open
колись синонімом :edit
і лише змінився пізніше, намагаючись наполовину відповідати POSIX?