Чим відрізняється Елвіс від Віма?


15

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

Більшість інших дистрибутивів Linux, здається, постачаються разом із Vim замість Елвіса. Звиклавшись до Елвіса, я зіткнуся з кривою навчання при переході до дистрибутива, який використовує vim?

Які переваги та недоліки Elvis порівняно з Vim?


10
Чому б тоді просто не встановити elvis? Просто те, що дистрибутив включає щось, не означає, що ви змушені ним користуватися! Наприклад, Debian це aptitude install elvisзробить. До речі, "редактор за замовчуванням" - це змінна, а не константа. Просто встановіть EDITOR=/usr/bin/elvisу вибраному ПК оболонки.
Олексій

4
" Редактор vi" O'Reilly має безкоштовну главу про viклони, яка порівнює - серед інших - vimта elvisзвичайну стару vi.
sr_

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

Відповіді:


13

Елвіс та Вім - це дуже здатні viклони, тому пам’ять пальця буде служити вам добре при перемиканні між ними.

Вони мають багато viрозширень:

  • Підсвічування синтаксису

  • Кілька скасувати і повторити

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

  • Історія команд та їх завершення

  • Tag стеки (наприклад :tags, :tnі т.д.)

  • Багатовіконна редагування, з допомогою :split, Ctrl-Wі т.д.

  • Розширені регекси: чергування, підгрупова експресія та ін.

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

  • Віддалене редагування файлів: читання / запис через FTP та лише для читання через HTTP

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

  • Покращена підтримка програмування: :makeавтоматичний перехід до помилок компілятора тощо.

Настільки вражаючий, як Елвіс у порівнянні з акціями Unix vi, Vim ще більш здатний:

  • Вімскрипт набагато потужніший за exсценарієм мови Елвіса .

    (Елвіс і Вім розширили exмову в несумісних напрямках. Це означає, що ви не можете легко перенести elvis.iniфайл, ~/.vimrcякщо тільки це не просто список простихex команд.)

  • Окрім Vimscript, Vim може бути скриптований через Lua, Perl, Python, Racket, Ruby та Tcl.

    (У вашому місцевому Vim, мабуть, не все це ввімкнено.)

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

    Елвіс постачається з кількома десятками сценаріїв. Здається, немає жодного архіву сторонніх сценаріїв Елвіса. (Я спробував Гуглінг і знайшов лише сценарії для фільмів про Елвіса Преслі . Зітхнення.)

  • Vim 7.4 поставляється із підтримкою виділення синтаксису для приблизно 10 × стільки форматів файлів та мов програмування, як і Elvis 2.2.

    Їх формати файлів визначення синтаксису несумісні, тому ви не можете легко встановити порт між ними.

  • Vim 7.4 поставляється з 18 стандартними кольоровими схемами. Якщо для вас цього не вистачає, пакет Vim Color Sampler Pack - це зібрана колекція з 177 найкращих схем, на момент написання цього документа. Окрім цього, є ще багато інших.

    Elvis 2.2 постачається лише з трьома кольоровими схемами, і це лише якщо ви рахуєте схеми GUI та TUI окремо. В архіві тем Елвіса міститься ще десяток кольорових гам.

  • Vim має вбудований об'єкт diff з багатьма вдосконаленнями командного рядка, diff(1)таких як забарвлення та злиття синтаксису.

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

Найкраща причина використовувати Елвіса над Вімом сьогодні - це набагато менше. Слід Елвіса 2.2 - приблизно ⅕, ніж Vim 7.4 в моїй системі. Це робить його хорошим вибором, наприклад, для вбудованих систем, обмежених ресурсами.

Елвіс - ідеально спроможний редактор, в межах своїх обмежень. Але, хоча Елвіс майже десятиліття сидів застояним, Вім продовжував удосконалюватися.


7

Що стосується VI-клону, зрозуміло, що функціональних відмінностей між ельвісом та вімом не виявляється багато. За інформацією Learning vi Editor, 6-е видання , єдиною відмінністю є те, що Елвіс не має поступового пошуку.

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

Швидше за все, якщо ви мали б встановити vim і розглядати його як основний редактор протягом дня - ви вже знали, які функції (якщо такі є) пропонують elvis, які ви б пропустили, і будь-які незручності vim можуть доставити вам (якщо такі є).

Я не такий знайомий з Елвісом, але однією з переваг vim є велика кількість плагінів і те, що він підтримується. Остання версія vim (7.3) була випущена в 2010 році , остання версія elvis (2.2.0) була випущена в 2003 році .

Примітка. Як коментує alexios - зміна дистрибутива не означає, що ви не можете просто продовжувати користуватися елвісом.


3

Як давній elvisкористувач (мабуть, з 1991 року), є одна elvisособливість, яку мені не вистачає vim, режими відображення.

Це дуже зручно elvisдля редагування htmlта редагування troffсторінок "wysiwyg" , а режим розділеного екрану hexтакож дуже корисний.

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


1
Існує спосіб виправити шестигранний редактор на складі Vim . Або, як я, користуюся bvi. Для HTML варіантом, незалежним від редактора, є налаштування автоматичного перезавантаження з реальним браузером. Розуміння Елвісом HTML було недосконалим десятиліття тому, коли він перестав рухатися. Це зараз має бути жахливо застарілим.
Warren Young

1
@WarrenYoung Жодне передання тексту HTML не може бути ідеальним. elvisодин все ще досить зручний для більшості простих html-документів.
jlliagre

Елвіс більше не відмовляється від програмного забезпечення, оскільки для цього написання останнього зобов’язання є 11 днів: github.com/mbert/elvis
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.