Элвис (текстовый редактор)

Улучшенный клон текстового редактора vi
Элвис
Оригинальный автор(ы)Стив Киркендалл
Стабильный релиз
2.2 / 21 октября 2003 г. ; 20 лет назад ( 2003-10-21 )
Написано вС
ПлатформаКроссплатформенность , включая Unix , Linux и Microsoft Windows
Доступно вАнглийский
ТипТекстовый редактор
ЛицензияClArtistic [a] [1]
Веб-сайтelvis.the-little-red-haired-girl.org

Elvis — это улучшенный клон текстового редактора vi , впервые выпущенный в январе 1990 года. Он представил несколько новых функций, включая подсветку синтаксиса и встроенную поддержку просмотра документов nroff и HTML . Elvis написан Стивом Киркендаллом и распространяется по лицензии Clarified Artistic License (ClArtistic), которая используется Perl и является лицензией свободного программного обеспечения, совместимой с GPL .

Elvis — это версия vi, которая поставляется с Slackware , Frugalware и KateOS .

Комментарии

Elvis был пионером клона vi, широко ценившимся в 1990-х годах за его краткость и множество функций. [2] [3] Он влиял на развитие Vim примерно до 1997 года. [4] [5]

Он был первым, кто обеспечил цветовую подсветку синтаксиса (и обобщил подсветку синтаксиса для нескольких типов файлов), первым, кто предоставил возможность подсвечивать выделенные фрагменты с помощью клавиатуры.

Встроенные в Элвиса дисплеи nroff (ранний) и HTML (поздний) придавали ему необычные функции WYSIWYG .

Пример экрана гипертекстовой справки Элвиса.

Elvis также распознает двоичные файлы и предоставляет разделенный экран для их редактирования.

Пример шестнадцатеричного режима редактирования Элвиса.

jelvis , японский вариант, доступен, основанный на работах Jun-ichiro itojun Hagino до 1998 года. [6] Его более поздняя работа в этой области распространялась в виде патчей против nvi . Также доступен корейский вариант helvis , первоначально созданный Park Chong-Dae. [7] [8] Эти варианты были модификациями elvis 1.8 (10 июля 1994 года). [9] Редактор nvi основан на более старой версии elvis 1.5 (2 апреля 1992 года). [10]

История

Elvis — это улучшенный клон vi. Чтобы понять полный контекст, в котором был создан Elvis, читателям следует рассмотреть историю vi . В этом разделе мы рассмотрим историю версий Elvis почти исключительно.

Стив Киркендалл опубликовал первую версию Elvis в группе новостей Usenet comp.os.minix в начале января 1990 года, намереваясь сделать ее более полным и точным клоном Vi, чем Stevie Тима Томпсона (редактор ST для энтузиастов VI), выпущенный тремя годами ранее. [11] [12] Киркендалл выделил несколько моментов, в которых Элвис отличался от Стиви, а именно:

  • Текст хранится во временном файле, как и настоящий vi , и в отличие от stevie. Благодаря этому вы можете редактировать файлы, размер которых больше, чем объем данных одного процесса. Кроме того, вы можете восстановить файл после сбоя или отключения питания.
  • Клавиши со стрелками работают в режиме ввода. Фактически, если вы вызовете редактор через имя "input", то он начнет редактирование в режиме ввода. Вы можете внести изменения, а затем выйти, дважды нажав Control-Z, и НИКОГДА не переходите в режим визуальных команд. Другими словами, elvis может действовать практически как обычный редактор — то, чего настоящий vi определенно не может.
  • Длинные строки отображаются по-разному. Если vi и stevie переносят строку на несколько строк экрана, то elvis отображает ее на одной строке и позволяет прокручивать вбок.

Кроме того, в Elvis работали почти все команды ex/vi (за исключением :@, :abbr и :preserve в режиме ex и @ в визуальном режиме и добавления к именованным буферам). [13]

Он быстро привлек значительный интерес в ряде сообществ энтузиастов. [14] Эндрю Таненбаум быстро попросил сообщество решить, какой из этих двух редакторов будет клоном vi в Minix ; [15] был выбран Элвис, который и по сей день остается клоном vi для Minix.

В 1989 году Линн Джолитц и Уильям Джолитц начали портировать BSD Unix для работы на процессорах класса 386, но для создания свободного дистрибутива им нужно было избежать любого кода, загрязненного AT&T, включая vi Билла Джоя . Чтобы заполнить пустоту, образовавшуюся после удаления vi, их дистрибутив 386BSD 1992 года принял Elvis в качестве замены vi. Но в Калифорнийском университете в Беркли Кейт Бостик хотел получить «совместимую по ошибкам» замену vi Джоя для BSD 4.4 Lite. Используя Elvis (версия 1.8) Киркендалла в качестве отправной точки, Бостик создал nvi , выпустив его весной 1994 года. [16]

В августе 1994 года Киркендалл объявил, что он работает над крупной переработкой Элвиса, [17] и в октябре 1996 года она была готова к выпуску. [18] Новая версия имела ряд новых функций, включая

  • Несколько буферов редактирования, что позволяет редактировать несколько файлов одновременно.
  • Несколько окон, поэтому буферы редактирования могут совместно использовать пространство экрана.
  • Несколько режимов отображения, включая...
    • «нормальный», который выглядит как традиционный экран vi
    • «hex», который хорош для просмотра двоичных файлов
    • «синтаксис», который поддерживает подсветку синтаксиса (настраивается)
    • "man", который форматирует страницы руководства Unix, как nroff
    • "html", который форматирует веб-страницы
  • Онлайн гипертекстовая помощь
  • Разнообразие пользовательских интерфейсов, включая...
    • «termcap», который использует текстовые экраны, как традиционный vi
    • «x11», который предоставляет графический интерфейс для пользователей Unix/X Window
    • Компиляция: elvis может анализировать сообщения об ошибках и переходить к источнику ошибки
  • Печать WYSIWYG с драйверами для большинства типов принтеров
  • Встроенный калькулятор с синтаксисом, похожим на C
  • Экстремальная настраиваемость
  • Режим «Открытый» для редактирования построчно даже на очень слабых терминалах

В декабре 1998 года Киркендалл выпустил Elvis 2.1, [19] с дополнительными функциями, включая автодополнение имени с помощью клавиши <Tab>, сетевые протоколы (позволяющие читать/писать через веб-URL) и режим отображения "tex". Киркендалл поддерживал выпуск 2.1 с исправлениями ошибок и незначительными улучшениями как 2.1_1, 2.1_2, 2.1_3, и достигнув кульминации в 2.1_4, выпущенном в октябре 1999 года. [20]

В октябре 2003 года, через четыре года после предыдущего релиза, Киркендалл выпустил Elvis 2.2, [21] который добавил ряд новых функций, включая встроенную контекстно-зависимую проверку орфографии, сворачивание текста , подсветку регионов и определяемые пользователем протоколы URL. Кроме того, он перенял ряд идей из Vim .

Примечания

Ссылки

  1. ^ «Уточненная художественная лицензия». spdx.org .
  2. ^ "editor-faq/Editor_List". Группа новостей : comp.editors. 13 августа 1992 г. Архивировано из оригинала 27-09-2007.
  3. ^ "Редакторы, доступные на центральных платформах UNIX". 1994-09-21. Архивировано из оригинала 2008-05-20 . Получено 2008-02-07 .
  4. ^ "VIM - Wishlist". Архивировано из оригинала 2008-05-20 . Получено 22-05-2008 .
  5. ^ "Список пожеланий для vim 6.0". 1998. Получено 2008-05-22 .
  6. Дзюнъитиро Хагино; Ёситака Токугава (6–11 июня 1999 г.). «Многоязычные клоны vi: прошлое, настоящее и будущее». Ежегодная техническая конференция USENIX 1999 г. USENIX.
  7. ^ "Описание Helvis от FreshPorts".
  8. ^ "Файл README для helvis".
  9. ^ "Клон vi/ex, стандартного редактора UNIX, с японским патчем". Архивировано из оригинала 2007-10-07 . Получено 2007-09-03 .
  10. ^ Томас Э. Дики (23 января 2007 г.). "как нарисовать линию в vi в 80 столбцов". Группа новостей : comp.unix.programmer.
  11. ^ Томпсон, Тим (2000-03-26). "Стиви" . Получено 2010-12-29 .
  12. ^ Тим Томпсон (1987-06-28). "Мини-vi для ST". Группа новостей : comp.sys.atari.st. Usenet:  129@glimmer.UUCP . Получено 2010-12-29 .
  13. ^ Стив Киркендалл (1990-04-20). "Скоро выйдет новый клон vi: ELVIS". Группа новостей : comp.editors. Usenet:  2719@psueea.UUCP . Получено 2010-12-29 .(обсуждается публикация comp.os.minix в январе и цели дизайна)
  14. Usenet, различные группы новостей (comp.editors, comp.sys.*, comp.os.*), 1990
  15. ^ Эндрю С. Таненбаум (1990-01-18). "Элвис против Стиви". Группа новостей : comp.os.minix. Usenet:  5133@ast.cs.vu.nl . Получено 2010-12-29 .
  16. ^ Роббинс, Арнольд; Ханна, Элберт; Лэмб, Линда (2008). "Глава 16: nvi: Новый vi". Изучение редакторов vi и vim (7-е изд.). O'Reilly Media, Inc. стр. 307–308. ISBN 978-0-596-52983-3. Получено 29.12.2010 .
  17. ^ Стив Киркендалл (1994-09-07). "Elvis 2.0 не выпущен, но..." Группа новостей : comp.editors. Usenet:  324d04$9vh@rigel.cs.pdx.edu . Получено 2010-12-31 .
  18. ^ Стив Киркендалл (1996-10-02). "Второе пришествие Элвиса (выпущен Elvis 2.0)". Группа новостей : comp.editors. Usenet:  52updt$qhj@rigel.cs.pdx.edu . Получено 2010-12-31 .
  19. ^ Стив Киркендалл (1998-12-09). "Официально: Elvis 2.1 настоящим выпущен". Группа новостей : comp.editors. Usenet:  74n8au$2hh$1@sirius.cs.pdx.edu . Получено 2010-12-31 .
  20. ^ Стив Киркендалл (1999-10-22). "Elvis 2.1_4 теперь доступен". Группа новостей : comp.editors. Usenet:  7uq0ib$lfc$1@sirius.cs.pdx.edu . Получено 2010-12-31 .
  21. ^ Стив Киркендалл (2003-10-20). "Elvis 2.2 теперь официально выпущен". Группа новостей : comp.editors. Usenet:  3f949d6b@nntp0.pdx.net . Получено 2010-12-31 .
  • Домашняя страница Элвиса
  • Неофициальный Элвис на GitHub
  • Элвис сказал, что будет работать на MINIX
  • Комментарий о vi-совместимости на Wayback Machine (архив 19 мая 2008 г.)
Взято с "https://en.wikipedia.org/w/index.php?title=Элвис_(текстовый_редактор)&oldid=1246314999"