Персональные инструменты
Счётчики
Контакты / Реклама
В других энциклопедиях

vi

Материал из Lurkmore
Перейти к: навигация, поиск
«

<mixture> vim имеет два режима: всё портить и бибикать

»
Bashorgrufavicon.pngБашорг
«

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

»
Из комментов на StackOverflow
Как выйти?
  • 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 — по английскому словарю: энергичность, прыть (что как бы намекает)

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

  • Имееются надстройки для Огнелиса: 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 Vi — это не баг, это фича!
Мета  DRM (SecuROMStarForce) • БагБот (Автоответчик) • БотнетВарезГлюкГуйДонатКопирайт (By design) • ЛогНюкРут (Не работай под рутом) • Спортивное программирование
Фичи  12309BSODCookiesEmbrace, extend and extinguishFL StudioSheep.exeWinlogon.exeБубенЗащита от дуракаКостыльМашинный переводПасхальные яйцаСвистелки и перделкиСм. рис. 1Съешь ещё этих мягких французских булок
Вредоносное  ВинлокЗвонилкаКитайские пингвиныПиксель смертиТроянЧервь Морриса
Компании  AppleGoogleMicrosoftSAPЯндекс
Движения  8-bitOpen source (КрасноглазикиЛинуксоиды) • Вирусная сценаДаунгрейдДемосценаМоддинг
Офис  3DS MAXGIMPGNU EmacsMovie MakerMS Paint • OpenOffice • PowerPointviWordБлокнотФотошоп
ОС  AndroidBSDDOSMenuetOSReactOSWindows (Phone 7Phone 8SevenVista) / МаздайЛинуксРусская ОСФантом ОС
Браузеры  Internet ExplorerОпера • Тормозилла (ОгнелисLolifox) • Хром
Интернет  FlashI2PLow Orbit Ion CannonTorTunatic • Чат−клиенты (MirandaQIPSkypeАськаЖаббер)
Разработка  BrainFuckCC++JavaHaskellАссемблер
Люди  LovinGODБалмерГейтсГенерал ФейлорДжобсМитникПоттерингде РаадтСпольскиСтоллманТорвальдсШахиджанян
Костыли  Cygwin • PunkBusterT9WineWishmasterАнтивирусыХакинтош
Команды  ^H^WAlt+F4Ctrl+Alt+Delman/me/quitrm -rf