Кто-нибудь может объяснить, почему в Vim все еще есть режим совместимости с vi? Зачем его использовать?
Как следствие, мы должны держать set nocompatible
в нашем .vimrc
; есть много шума в документации , как {not in Vi}
, {Vi: no ++opt}
и т.д.
и я не могу понять, почему разработчики так тщательно это держат.
Ответы:
Во многих дистрибутивах Linux Vim также используется в качестве реализации
vi
. Пользователи (и сценарии) ожидают старого, совместимого поведения там.Обратная совместимость (также в разных версиях Vim) очень важна для Брэма (автора Vim), и это, вероятно, завоевало Vim столько поклонников за эти годы, а также богатую экосистему плагинов.
Я не думаю, что
{not in Vi}
загромождает отличную документацию, и воспринимаю это скорее как рекламу "улучшенной" части в Vim. Это также помогает при чтении старых руководств по vi.Обратите внимание, что вам не нужно
:set nocompatible
, это влияет на существование~/.vimrc
.источник