vi

Материал из Неолурк, народный Lurkmore
Перейти к навигации Перейти к поиску
<mixture> vim имеет два режима: всё портить и бибикать
Using a free version of vi is not a sin but a penance.


vi — текстовый редактор в UNIX-like системах. Известен крайне своеобразным принципом работы (см. эпиграф), из-за чего имеет как множество поклонников, так и множество противников. Споры между ними, по некоторым данным, и стали первой настоящей религиозной войной в интернетах.

Является внуком редактора em, который позиционировался как «editor for mortals», в противовес зело непростому для простых смертных ed.

Название редактора правильно произносится в транскрипции как «ВиАй». Педивикия гарантируэ.

Код оригинального виая долгое время был несвободен, потому были написаны несколько клонов:

  • nvi — (new vi) обладает наибольшей совместимостью с оригинальным редактором от Билла Джойя;
  • elvis — старейший клон, от которого затем отпочковался nvi;
  • vim — самый тяжёлый и самый популярный из всех клонов vi;
  • neovim — «новый vim», пилят как замену vim, но легковесный и модульный.

Особенности[править]

How to make a simple random word generator? Get someone to quit VIM
Как выйти?
Мсье Google знает толк в веселье
  • vi работает в нескольких разных режимах, причем в зависимости от режима одни и те же действия имеют разный эффект. В одном из режимов vi пищит, а в другом — всё портит. Особенно этот эффект радует нубов.
  • Практически любая строка латинских букв является синтаксически верной командой для vi.
  • vi (и его улучшенный клон vim) считается весьма мощным редактором. Теми, кто умеет с ними работать напильником.
  • Те же, кто не умеет работать с vi и не горит желанием научиться, помнят его как один из кошмаров мира UNIX. В сущности, хуже чем vi — только sendmail.cf.
  • Почти каждый UNIX-нуб спрашивал своего Гуру «Как выйти из vi?».
  • По сравнению с оригинальным Emacs vi занимает в среднем в 65 раз меньше места в оперативной памяти и в 850 раз на диске — канонiчные 1.44 mb.
  • В педивикии vim одно время был признан официально кошерным для удобного редактирования статей. Для редактирования уютненького тоже удобен, после минимального допила (если, конечно, слова «удобный» и «вим» можно поставить в одном предложении).
  • Более чем в 9000 случаев редактор vi становится единственным редактором, доступным в однопользовательском режиме, когда система в него падает из-за ошибок и прочих дизастеров. Знание vi в такие моменты весьма спасает анонимуса, когда нужно редактировать системные файлы.
  • Яндексу этот редактор известен, как редактор 6 (видимо, из-за римского написания шестерки как VI).
  • В отличие от единственного какбе «конкурента» не вызывает болезней суставов.

vi в фольклоре[править]

  • vim считается единственным конкурентом Emacs'а, у которого в свою очередь есть режим vi под названием evil-mode. С этим связано множество шуток, например «Ты нарушил баланс Силы» из userfriendly.org.
  • BOFH знает и любит vi. Одна из его знаменитых отмазок — «Система остановлена. vi нужно обновить до vii.».
  • vi vi vi — число дьявола.
  • Модератор эхи ru.vim перешел на Emacs.
  • Вий в восточнославянской мифологии — дух, несущий смерть, что символизирует. Алсо у Гоголя есть одноименная повесть.
  • Хотя в православном debian ви был выпилен (из состава /bin) и заменён на nano, но в составе бизибокса всё равно ви, так что учить его придётся.
  • Про vi написана песня:

Addicted To vi
(with apologies to Robert Palmer)

You press the keys with no effect,
Your mode is not correct.
The screen blurs, your fingers shake;
You forgot to press escape.
Can't insert, can't delete,
Cursor keys won't repeat.
You try to quit, but can't leave,
An extra «bang» is all you need.

You think it's neat to type an «a» or an «i»--
Oh yeah?
You won't look at emacs, no you'd just rather die
You know you're gonna have to face it;
You're addicted to vi!

You edit files one at a time;
That doesn't seem too out of line?
You don't think of keys to bind--
A meta key would blow your mind.
H, J, K, L? You're not annoyed?
Expressions must be a Joy!
Just press «f», or is it «t»?
Maybe «n», or just «g»?

Oh--You think it's neat to type an «a» or an «i»--
Oh yeah?
You won't look at emacs, no you'd just rather die
You know you're gonna have to face it;
You're addicted to vi!

Might as well face it,
You're addicted to vi!

You press the keys without effect,
Your life is now a wreck.
What a waste! Such a shame!
And all you have is vi to blame.

Oh--You think it's neat to type an «a» or an «i»--
Oh yeah?
You won't look at emacs, no you'd just rather die
You know you're gonna have to face it;
You're addicted to vi!

Might as well face it,
You're addicted to vi!

Vim для нубов[править]

Существует неправославная надстройка для Vim под названием Cream. Призвана сделать Vim простым в использовании. Впрочем смысл её существования неясен — заменяется использованием gvim и стандартными строками в конфиге из любого руководства для начинающих.

Откровение божье[править]

  • Чтобы выйти из vi, нужно нажать «ESC (можно использовать Ctrl+[ или Ctrl+C) :q!». Все изменения будут утеряны. Или ESC и ZQ если не нужно сохранять или ZZ если нужно. Либо вообще в другой консоли набрать «kill −9 `ps -ef | awk '/vi/ {print $2}'`» или не ебать мозг и просто сказать «killall vi».
  • Это единственное, что нормальному человеку вообще стóит знать о vi.
  • Ну а для не сильно нормальных вот еще: :e — открыть файл, :w -сохранить изменения, :q -выйти (или проще: :x — сохранить изменения и выйти).
  • vim можно элементарно освоить, запустив в консоли команду vimtutor ru и следуя инструкциям. Для Ъ — в комплекте с vim’ом идет готовый учебник для самых маленьких на русском.

Наслаждайтесь, на следующей неделе мы расскажем вам про ed — первооснову всех редакторов вообще и поделим на ноль.

  • В этой стране ВИМ — это также Всесоюзный (теперь всероссийский) институт механизации сельского хозяйства. Moar комбайнов хороших и разных. Так-то.
  • А в этом городе — Валентина Ивановна Матвиенко. Гой! Или хой? Не важно.
  • Если верить словарям, то vi переводится на русский как «деревенский дурачок».
  • vim — по английскому словарю: энергичность, прыть (что как бы намекает).

Vim на военной службе[править]

gvim в армейском линуксе

Данный редактор входит в состав дистрибутивов таких военных операционных систем, как:

  • МСВС (в консольной (vim) и графической (gvim) ипостасях);
  • AstraLinux (только в консольном (vim) воплощении).

Для особенно упоротых[править]

  • Имеются надстройки для Огнелиса: vimperator и его наследник — pentadactyl, для управления оным полностью с клавиатуры и, разумеется, используя команды а-ля vim.
  • Также лайтовый вариант для нубов — VimFx.
  • Есть такая же приблуда для хрома — vimium.
  • uzbl, luakit, jumanji — ТЫСЯЧИ их — vim’оподобных браузеров на движке WebKit.
  • Консольный музыкальный проигрыватель cmus также использует vim-like команды.
  • Или чудо-плеер^W^W^Wморда к музыкальному демону MPD под названием vimpc.
  • vifm — консольный файловый менеджер, визуально похож на mc, управляется, как вы поняли, по аналогии с vi.
  • И ещё один замечательный файловый менеджер — ranger.
  • zathura, apvlv — vim-like просмотрщики pdf/djvu файлов.
  • Почти все современные шеллы и приложения, основанные на библитеках readline или libedit имеют режим совместимости с vi (по умолчанию режим работы — в emacs стиле).

См. также[править]

Ссылки[править]

App.png Весьма полезная вещь, позволяет машинам работать с помощью коммандычей
МетаПрограммаDRM (SecuROMStarForceАналоговая дыра) • БагБот (Автоответчик) • Варез (Repack) • ГлюкГуйДонатКопирайт (By design) • ЛогНюкРут (Не работай под рутом) • Спортивное программированиеМегапиксельКомпьютерВерсия 2.0КодОбфускацияСкриншотДатамайнПлагинТекстовый файлБольшие данныеАльфа и бета-тестыТаймстампКэшШаблоныHello WorldНейросетиФайлИнсталляция
ФичиБагрепорт12309BSODCookiesEmbrace, extend and extinguishFL StudioSheep.exeWinlogon.exeБубенЗащита от дуракаКостыльМашинный переводПасхальные яйцаСвистелки и перделкиСм. рис. 1Съешь ещё этих мягких французских булокTermuxGNU MetroИндусский кодНескучные обои • Сжатие (За сжатие ДжипегаШакалШкала) • Работает — не трогайРандомайзерPDF (Распознавание PDF) • Дело Google в ФАСЧат-ботXMLМакросКритическая ошибка
ВредоносноеБотнетБрутфорсВинлокЗвонилкаКитайские пингвиныПиксель смертиТроянЧервь МоррисаBonziBuddyMediaGetBrowser hijackingTinderМиссис МажорУтечка буфера обмена
КомпанииApple / Apple (AppleScript) • GoogleMicrosoftSAPЯндекс
Движения8-bitOpen source (КрасноглазикиЛинуксоиды) • Вирусная сценаДаунгрейдДемосценаМоддингMMD
Офис3DS MAXGIMPGNU EmacsMovie MakerMS Paint • OpenOffice • PowerPointviMicrosoft WordExcelБлокнотФотошопАнтивирус КасперскогоAvast!TikZShareXAlternativeToСкрепышMicrosoft OfficeТекстовый редакторWeChatZoomДиспетчер задачMicrosoft Cortana
ОСAndroidBSDDOSMenuetOSReactOSWindows (Phone 7Phone 878Vista) / МаздайЛинуксРусская ОСФантом ОС
БраузерыInternet ExplorerОпера / Opera • Тормозилла (ОгнелисLolifoxMozilla FirefoxFirefoxFirefox Klar) • Хром (шпионаж) • SafariЯндекс.БраузерУведомления в браузереVivaldiTor-браузер
ИнтернетAdobe Systems (Flash) • I2PLow Orbit Ion CannonTorTunatic • Чат−клиенты (MirandaQIPSkypeЖабберDiscordVIPole) • HTTPSПрокси-сервер (Proxifier) • Торрент (Magnet-ссылкаΜTorrent) • JavaScriptCSSHTMLБаннермейкерИзменение TTL сетевых пакетовКапчаICQFiddlerViberZonaSteamSillyTavernWickr Me
РазработкаBrainFuckCC++C#JavaHaskellАссемблерChaos ConstructionsBATMySQLGitHubAutoHotKey (AutoHotInterception) • Sublime TextAPK (APKPureзапрет) • BASICPerlPythonPHPФоркUnity3DSAISIPСАПРФлаг
ЛюдиВеб-мастерLovinGODБалмерГейтсГенерал ФейлорДжобсМитникПоттерингде РаадтСпольскиСтоллманТорвальдсШахиджанянAche666Марк ЦукербергЕвгений ПоповДенис КумпонМассовая компьютерная безграмотность
КостылиCygwin • PunkBusterT9WineWishmasterАнтивирусыХакинтошСборки WindowsDenuvoЧистая установкаКалькулятор Consul WarMicrosoft StoreUBlock OriginLightshotAdBlockSearchApp.exeCPU-Z
Команды^H^WAlt+F4Ctrl+Alt+Delman/me/quitrm -rf