Насколько отличается Элвис от Vim?


15

Я уже некоторое время использую Slackware, который поставляется с Элвисом в качестве редактора по умолчанию.

Большинство других дистрибутивов Linux, похоже, поставляются с Vim вместо Elvis. Привыкнув к Элвису, столкнусь ли я с проблемой обучения при переходе на дистрибутив, в котором используется vim?

Каковы преимущества и недостатки Элвиса по сравнению с Vim?


10
Почему бы вам тогда просто не установить elvis? То, что в дистрибутив входит что-то, не означает, что вы вынуждены его использовать! Например, в Debian это aptitude install elvisсделают. Кстати, «редактор по умолчанию» - это переменная, а не константа. Просто установите EDITOR=/usr/bin/elvisв rc предпочитаемой оболочки.
Алексиос

4
В O'Reilly's Learning the vi Editor есть бесплатная глава, посвященная viклонам, в которой сравниваются, среди прочего, vimи elvisстарые vi.
sr_

Элвис мертв. Vim продолжает делать успехи и в настоящее время полностью реорганизован как neo vim , что значительно упростит архитектуру кодовой базы и плагинов и заменит vimscript на Lua, помимо других улучшений.
Заз

Ответы:


13

Элвис и Вим оба являются viклонами с высокой способностью , поэтому память на пальцах будет вам полезна при переключении между ними.

Они имеют много viрасширений:

  • Подсветка синтаксиса

  • Многократная отмена и повтор

  • Визуальный режим, через vиV

  • История команд и завершение

  • Стеки тегов (например :tags, :tnи т. Д.)

  • Многооконная редактирование, с помощью :split, Ctrl-Wи т.д.

  • Расширенные регулярные выражения: чередование, группировка подвыражений и т. Д.

  • Версия GUI, в дополнение к традиционному полноэкранному интерфейсу терминала

  • Удаленное редактирование файлов: чтение / запись по FTP и только чтение по HTTP

  • Снятие большинства классических viограничений, таких как длина строки и размер файла

  • Улучшена поддержка программирования: :makeавтоматический переход к ошибкам компилятора и т. Д.

Как впечатляет Elvis по сравнению со стандартным Unix vi, Vim обладает еще большими возможностями:

  • Vimscript намного мощнее, чем exязык сценариев, разработанный Элвисом .

    (Элвис и Vim расширили exязык в несовместимых направлениях. Это означает, что вы не можете легко перенести свой elvis.iniфайл, ~/.vimrcесли это не просто список простых exкоманд.)

  • В дополнение к Vimscript, Vim может быть написан на Lua, Perl, Python, Racket, Ruby и Tcl.

    (Однако, ваш локальный Vim, возможно, не имеет всех этих функций).

  • Архив сценария Vim содержит тысячи скриптов Vim, добавив весьма полезные функции, вспомогательные приложения, игры и многое другое.

    Элвис поставляется с несколькими дюжинами сценариев. Похоже, что нет никаких архивов сторонних скриптов Элвиса. (Я попробовал поискать в Google и нашел только сценарии для фильмов Элвиса Пресли . Вздох.)

  • Vim 7.4 поставляется с поддержкой подсветки синтаксиса примерно в 10 раз больше форматов файлов и языков программирования, чем Elvis 2.2.

    Их форматы файлов определения синтаксиса несовместимы, поэтому вы не можете легко портировать между ними.

  • Vim 7.4 поставляется с 18 стандартными цветовыми схемами. Если этого недостаточно для вас, Vim Color Sampler Pack - это кураторская коллекция из 177 лучших схем на момент написания статьи. Кроме того, есть много других.

    Elvis 2.2 поставляется только с тремя цветовыми схемами, и это только в том случае, если вы считаете схемы GUI и TUI отдельно. Архив Elvis темы имеет еще десяток цветовых схем, общ.

  • В Vim есть встроенная утилита diff со многими улучшениями по сравнению с командной строкой, diff(1)такими как окраска синтаксиса и слияние

  • В дополнение к FTP и HTTP, Vim также может редактировать удаленные файлы через SCP, SFTP, WebDAV, RCP и RSYNC.

Лучшая причина использовать Elvis вместо Vim сегодня в том, что он намного меньше. След Elvis 2.2 составляет примерно ⅕ от Vim 7.4 в моей системе. Это делает его хорошим выбором, например, для встроенных систем с ограниченными ресурсами.

Элвис - очень способный редактор, в пределах своих ограничений. Но, хотя Элвис сидел без движения почти десять лет, Vim продолжал улучшаться.


7

Понятно, что как клон VI, функциональных отличий между elvis и vim не существует. Согласно Learning the vi Editor, 6th Edition , единственное отличие состоит в том, что у elvis нет инкрементального поиска.

Маловероятно, что будет большая часть кривой обучения, переходящей от elvis к vim - ведь они оба основаны на vi и, по крайней мере, используют одни и те же базовые команды, такие как навигация, режимы, поиск.

Скорее всего, если бы вы установили vim и рассматривали его в качестве основного редактора в течение дня - вы бы уже знали, какие функции (если есть), которые elvis предлагает вам пропустить, и любые неудобства, которые может принести vim (если есть).

Я не очень знаком с elvis, но некоторые из преимуществ vim - это изобилие плагинов , и это поддерживается. Последняя версия vim (7.3) была выпущена в 2010 году , последняя версия elvis (2.2.0) была выпущена в 2003 году .

Примечание: как прокомментировал alexios - изменение дистрибутива не означает, что вы не можете просто продолжать использовать elvis.


3

Как давний elvisпользователь (возможно, с 1991 года), elvisмне не хватает одной функции - vimрежимов отображения.

Это очень удобно elvisдля редактирования страниц wysiwyg htmlи troffруководств, а также hexрежим разделенного экрана также очень полезен.

К сожалению, elvisзаброшен с 2004 года и пропускает поддержку UTF-8, что заставляет меня большую часть времени использовать vimвместо него.


1
Есть способ связать шестнадцатеричный редактор со стандартным Vim . Или, как я, использовать bvi. Для HTML независимый от редактора вариант - настроить автоматическую перезагрузку в реальном браузере. Понимание HTML Элвисом было несовершенным десять лет назад, когда он перестал двигаться. Это должно быть ужасно устарело сейчас.
Уоррен Янг

1
@WarrenYoung Нет текстового воспроизведения HTML может быть идеальным. elvisодин все еще достаточно удобен для большинства простых HTML-документов.
Jlliagre

Элвис больше не заброшен, так как на момент написания этой записи последнему
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.