Vi по сравнению с энергией, или, является там какой-либо причиной, почему я когда-либо хотел бы использовать vi?

ctrl-a d

87
12.09.2015, 08:29
9 ответов

vi (также) редактор стандарта POSIX. Существует много реализаций и vim вероятен самое популярное, по крайней мере, на Linux.

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

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

Это весьма схоже с проблемой, которая происходит с использованием сценариев не, POSIX bashisms стоял к более православным реализациям оболочки как dash или ksh.

61
27.01.2020, 19:30

Никакой vi не имеет никакого значительного преимущества перед энергией скорее, это наоборот. Vim имеет больше преимуществ затем Vi. Можно интересоваться: Да ведь о, ДА ВЕДЬ те #?! nutheads используют vi?

Редактирование также чтение: действительно ли изучение VIM стоит усилия?

29
27.01.2020, 19:30
  • 1
    Да. Я не использую IDE, потому что редакторы, которых они вынуждают Вас использовать просто, не являются Vim. –  Keith 12.01.2013, 09:51
  • 2
    @Keith я использую и XCode и Eclipse и я все еще может сделать редактирование с vi только. –  ott-- 12.01.2013, 11:39
  • 3
    @Keith SlickEdit имеет большую эмуляцию Vim, и ИДЕЯ близко подходит к нему. Кроме того, Visual Studio имеет ViEmu. –  demonkoryu 23.04.2013, 16:50
  • 4
    IntellIJ также имеет хороший плагин энергии переопределение поведения типичного редактора. –  JulienD 26.08.2015, 09:59

После расходов большой части моей жизни (не включая детство) редактирующий удобно с Vim, я провел приблизительно месяц только с помощью vi. При этом я понял, что зависел от Vim для всех моих текстовых потребностей модификации. Перед моим прохождением с vi, каждый раз, когда я должен был заменить некоторым текстом или выполнить подобную операцию в большой группе файлов, я просто открою файлы в Vim и выполню a :bufdo команда, и каждый раз, когда я должен был сделать отступ или формат некоторые файлы, я буду открывать их в Vim и использовать Vim = и gw команды. Я был зависим от Vim. После понимания vi не имел этих команд, я был вынужден выполнить объемные текстовые преобразования с sed и ставший известный много о других программах такой как awk и indent. Хотя я переключился назад на использование Vim в конце, знание, которое я получил при помощи менее известного редактора, было существенным и оказалось чрезвычайно полезным. В дополнение к приобретению знаний об инструментах за пределами текстового редактора я также стал лучше познакомившим с vi. Каждый раз, когда я работаю над новой системой или сервером, который не имеет Vim, я чувствую себя намного более комфортно использующий vi, чем я сделал перед своим месячным отклонением.

Кроме того, в прошлом месяце я установил Linux на дешевом планшете WM8650 и нашел там, чтобы быть значимым различием в производительности между Vim и vi, таким образом, я склонен использовать vi на планшете.

24
27.01.2020, 19:30
  • 1
    я нахожу, что это - распространенная проблема в IT - инструменты, которые помогают нам, может также затенить вещи, мы были бы более обеспеченным изучением. –  danno 17.12.2015, 19:11
  • 2
    ответа На самом деле, обрабатывание оперативного редактирования файла на многих файлах не может портативно быть сделано с Awk или Sed также. ( -i включите оба - расширение GNU.), Но можно использовать их портативно с чем-то как for f in *; do printf '%s\n' '%!sed -e '\''some sed command'\' x | ex "$f"; done –  Wildcard 10.11.2016, 14:38

Мне было бы нелегко жить без энергии, но я не могу выдержать vi. Однако изучение первого, по крайней мере, оставит Вас с идеей того, как иметь дело с позже, когда это - все, что доступно.

Интерфейс энергии по умолчанию на самом деле достаточно близок к vi. Если я работаю над системой с энергией первая вещь, я делаю, добавляет этот материал к ~/.vimrc:

syntax enable
set nocp
set wildmenu

Существует набор другого материала, который я предпочитаю - nowrap и нумерующий на, и т.д. - но не имеет значения. "синтаксис включает", просто включает выделение базового синтаксиса (несколько более раскормленный: filetype plugin on фундаментально также); "nocp" выключает vi совместимость, и это - это, которое начинает отличать энергию от Вас olde vi (например, это включает showmode который делает целый опыт несколько более человеческим, так как у Вас теперь есть некоторая подсказка о том, являетесь ли Вы в команде или ~INSERT ~ режимом). "wildmenu" просто дает Вам горизонтальное меню завершения при выполнении некоторых вещей, который делает жизнь легче также.

Средства редактирования текста энергии являются первоклассными - кроме emacs, я никогда не видел или слышал о части программного обеспечения, которое приближается. Их не легко изучить, но после того как Вы знаете их, они намного быстрее, чем меню мыши для использования и намного более динамичный, чем простые ключевые макро-альтернативы в мыши основанные на меню интерфейсы. Для программирования я иногда использую энергию вместе с IDE как Eclipse, но я делаю большую часть работы в энергии.

Если Вы выбираете это путь, lol, изучаете автозавершение и taglist плагины. И остерегайтесь темной стороны.

12
27.01.2020, 19:30
  • 1
    я всегда добавляю set mouse=a также. –  ott-- 12.01.2013, 18:36
  • 2
    Относительно Вашего комментария программирования можно найти eclim интересный... –  ire_and_curses 05.02.2013, 01:41
  • 3
    @ire_and_curses: не попробовали его. Eclipse и энергия и контролируют исходные файлы и позволяют им быть обновленными внешне, и зеркально отражающий от одного рабочего стола до другого зеркально отражает от одного рабочего стола до другого. Походит вполне на идею tho. –  goldilocks 05.02.2013, 02:33
  • 4
    Хотя я не думаю, что этот ответ должен быть выбранным ответом (так как он смещается), это - точно тип перспективы, которая полезна для понимания различий. Спасибо за то, что заняли позицию. –  geneorama 19.07.2015, 20:24

Преимущество состоит в том, что vi обычно предварительно устанавливал на предприятии UNIX как AIX или Солярис. Помимо энергии не доступно на установочном носителе.

8
27.01.2020, 19:30

Я заметил, что только выбираю Vi VIM когда я копирую и вставляю текстовый документ или файл конфигурации, который я использовал cat команда. Это вызвано тем, что, когда я пытаюсь ctrl-c и затем ctrl-v в VIM открытый документ, это вынуждает все строки иметь комментарий infront их. Таким образом, когда я использую Vi кому: ctrl-v или paste в Vi открытый документ, это вставляет точно, с чего я скопировал. Кроме этого, я использую VIM целый день.

Приятного отдыха!

1
27.01.2020, 19:30

Как уже упоминалось в предыдущих ответах, vi поставляется практически с каждой системой UNIX.

Я просто хотел добавить пример. Arch Linux - один из особенно популярных и легких дистрибутивов, в котором ни установщик, ни базовый дистрибутив не поставляются с vim по умолчанию, однако оба поставляются с vi.

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

Также, для полноты картины, никто еще не упомянул, что vi является прямым предшественником vim. Vim был разработан специально для того, чтобы быть всем тем, чем был vi, и даже больше.

Так что в самом прямом смысле vim превосходит vi, потому что он был создан для этого.

2
27.01.2020, 19:30

La única razón para usar vi sobre vim es cuando no tienes otra opción.

¡Hay muchas, muchas razones por las que vim significa "vi mejorado"!

Tomando prestado de un post relacionado respondí:-

  1. Múltiples ventanas -horizontales, verticales y pestañas.
  2. Resaltado visual.
  3. Ayuda en línea a través del comando de ayuda :.
  4. Grabe macros en un registro que luego puede ejecutar.
  5. Deshacer (y rehacer )varias veces, en lugar del loco deshacer del viejo vi palanca.
  6. Historial de línea de comandos, historial de búsqueda.
  7. Un lenguaje completo incrustado junto con una gran cantidad de funciones, por ejemplo, getcwd()
  8. Coincidencia de patrones muy ampliada.
  9. Finalización de palabras mediante ctrl -P & ctrl -N.
  10. Un navegador de archivos incorporado (un poco torpe, pero puede ser útil ).
  11. La tecla ESC en realidad cierra los comandos que estaba intentando,bien, escapar en lugar de (ejecutarlos locamente )como lo hace vi.
  12. Capacidad para ejecutar comandos en todos los búferes, argumentos o ventanas a través de bufdo, argdo y ventana.
3
27.01.2020, 19:30

Это отрывок из Вима Коанса:

Master Wq и мастер Unix

Старый мастер Unix пришел к мастеру Wq. «Я обеспокоен, Вк. Вы учите пути Vim. vi свят, а Vim — нет; его код расползается, его особенности переполняют память; его двоичные файлы огромны, его поведение непоследовательно. Это не путь Unix. Боюсь, вы вводите в заблуждение своих учеников. Что можно сделать?"

Мастер Вк кивнул. — Вы правы, — сказал он. «Вим сломался. Давайте исправим это. Начнем?"

Старый мастер Unix согласился и открыл оболочку. Он напечатал:

$ vi vim.c

Он начал кодировать. Мастер Вк некоторое время наблюдал, а затем спросил его: «Какую реализацию vi вы используете? Нви? Вим? Элвис?

«Я не знаю», — сказал мастер Unix. «Это не имеет значения».

Мастер Вк кивнул. Мастер Unix на мгновение застыл, ошеломленный, и закрыл несохраненный документ.

3
27.01.2020, 19:30

Теги

Похожие вопросы