Я недавно начал использовать Ubuntu и, следовательно, терминал.
В качестве текстового редактора я использовал предустановленный nano
. Теперь мне интересно, стоит ли мне устанавливать и использовать vim
также.
Каковы особенности, преимущества и недостатки каждого из этих текстовых редакторов? Какой из них лучше подходит для новичков, и для каких вариантов использования будет предпочтительнее другой?
Ответы:
Vim и Nano - совершенно разные терминальные текстовые редакторы.
Nano прост, прост в использовании и освоении, а Vim - мощная и сложная в освоении.
Чтобы отличить их, будет лучше перечислить некоторые их особенности. Поскольку мы не используем терминальные редакторы для обычного редактирования или кодирования, я перечисляю некоторые из наиболее интересных функций, которые помогают использовать их сегодня.
Nano:
Vim:
Хотя я ненавидел Вима, когда впервые встретил его, теперь я предпочитаю его Нано.
источник
nano
поддерживает подсветку синтаксиса: askubuntu.com/q/90013/158442 . Соответственно, Vim поддерживает все последние четыре функции, упомянутые для nano.goto line
, который исходит от его родительского vi, который исходит от его родительского Ex. Простой тип:31
в моральном режимеВ двух словах:
nano
просто,vim
мощно.Если вы хотите просто редактировать некоторые текстовые файлы,
nano
будет достаточно. На мой взгляд,vim
довольно продвинутый и сложный в использовании. Вы должны ожидать некоторое время, чтобы войти в него, прежде чем вы сможете правильно его использовать.Забавная (но не слишком нереальная) цитата о
vim
: ( источник )источник
Они оба текстовые редакторы, но сходство на этом и заканчивается . Может показаться странным, что два текстовых редактора могут быть такими разными. Ключевым является то, что оба они являются специализированными текстовыми редакторами, созданными для двух совершенно разных задач.
nano
иvim
(или, скорее,pico
иvi
, что они подражают) были предназначены для написания электронных писем и программ, соответственно.Вы не должны проводить много времени
nano
: вы входите, набираете свое электронное сообщение (или что бы вы ни писали), и вы быстро уходите . Все основано на том, чтобы как можно быстрее входить и выходить из вас, чтобы вы могли вернуться к тому, чем еще занимались. Все перечисленные ниже функции перечислены в нижней части окна, поэтому вам не придется тратить время на просмотр справочных экранов. Конечно, в нижней части окна остается очень много места, и поэтому функциональность ограничена тем, что можно выразить, наряду со всеми другими функциями, в двух строках текста. Результат чрезвычайно удобен для некоторых вещей.Вы должны проводить много (если не почти все) своего времени
vim
, поэтому оно старается не мешать вам, помогая быстро перебирать большие куски текста . Базовый экран запуска почти не дает информации, и когда вы открываете файл, вы получаете немного больше информации о том, где вы находитесь. И в обоих случаях вы не можете набирать текст сразу : вы начинаете в «обычном режиме» и должныi
сначала нажать, чтобы перейти в «режим вставки» (есть также несколько других букв, которые вы можете нажать вместоi
, предлагая некоторые варианты на эту тему, а также есть некоторые другие режимы, которые я не упомянул). Кривая обучения чрезвычайно крутая: онаvimtutor
помогает людямпосвященный исключительноvim
интерфейсу обучения . Подумайте об этом на секунду. Целая игра, просто чтобы научиться пользоваться текстовым редактором. И люди платят за это.Нет сомнений, что
nano
это лучше для новичка . Я что-то вродеvim
фанатиков, и даже я не могу оспорить это. Я виделvim
отключение Linux от новичков вообще. И если вы не планируете много редактировать текст, или ваши задачи редактирования текста довольно легки (например, писать электронные письма), тогда,nano
возможно, все, что вам нужно.Тем не менее, хотя освоение
vim
занимает много времени, окупаемость инвестиций высока . Я понимаю, что остальная часть этого поста звучит как-тоvim
плохо, но это не мое намерение. Вам просто нужно знать, во что вы ввязываетесь, потому чтоvim
это сложно . Но даже его конфигурация по умолчанию содержит функции, которые автоматизируют множество общих (и очень повторяющихся) задач редактирования текста: вы можете выполнить несколько нажатий клавиш, что может занять много минут или даже часов, если вам пришлось делать их все вручную. Есть плагины и скрипты, которые делают это еще дальше. Если вы собираетесь много заниматься программированием или выполнять такие же длинные и сложные задачи (диссертации, романы и т. Д.),vim
То в конечном итоге это лучший выбор, но вам все равно следует определитьсяnano
Во-первых: если возникнет чрезвычайная ситуация, и вам нужно что-то предпринять, прежде чем выvim
начнете понимать основы , вы захотите сделать то, что вам удобно.Итог: начните с
nano
и переходите к,vim
еслиnano
становится утомительным .источник
Вам не нужен vi или vim, если вам нравится nano.
Nano проще в использовании, если вы не знакомы с vim.
Vim похож на vi, который универсален (он установлен почти на всех Unix-подобных системах), но если вы никогда не использовали его раньше, вам нужно будет просмотреть некоторую документацию / руководство, прежде чем вы сможете что-либо с ним сделать.
источник
Vim очень мощный, но трудно учиться . Это так называемый «модальный редактор» - в отличие от обычного редактора, который является нано. Vim позволяет сделать весь текст за несколько нажатий клавиш, поэтому, если вы сможете печатать на клавиатуре, ваше движение с помощью чистой клавиатуры будет даже быстрее, чем с помощью мыши.
Так что, если вы не пишете много - например, программисты - тогда вы можете просто использовать любой обычный редактор. В противном случае я предлагаю вам узнать, что Vim. Например, я использую Emacs с режимом зла (который эмулирует Vim) , это круто.
Побочный эффект изучения Vim, о котором никто по какой-то причине не упоминает - если вы не умеете делать прикосновения, но хотите изучать его, просто изучайте Vim и используйте его каждый день. Vim заставляет вас двигаться без части стрелки (вместо h, j, k, l) , и, поскольку вы не можете смотреть на клавиатуру каждый раз, когда вы двигаетесь, вы будете вынуждены изучать все больше и больше положений клавиш. Так я научился сенсорному типу ☺
источник