Как открыть vim через терминал
Как отсюда выйти: шпаргалка по Vim
Авторизуйтесь
Как отсюда выйти: шпаргалка по Vim
Вы собираетесь создать файл crontab и внезапно оказываетесь в этом странном редакторе по умолчанию. В том, в котором всё никак не разберётесь.
ESC? Ничего не произошло. CTRL + C? Нет. ESC ESC ESC? Неа. Вы в тупике.
Ну вот, опять. Склонив голову от стыда, вы запускаете очередной терминал, чтобы исполнить команду killall vim и продолжить заниматься своими делами.
С вами бывало такое? Конечно, бывало. Что ж, потратив несколько минут на эту статью, вы познакомитесь с основами редактора Vim (и научитесь быстро выходить из него).
20–22 декабря, Онлайн, Беcплатно
В умелых руках Vim может стать мощнее многих IDE. И, разумеется, он не ест сотни мегабайт памяти лишь для отображения пустого файла (да, Eclipse, это о тебе).
Основы
Некоторые из нижеописанных команд начинаются с двоеточия: нажав его, появится подсказка, в которой будет указана полная команда. Команды без двоеточий — это скорее горячие клавиши, которые можно использовать в режиме по умолчанию (в нём запускается Vim). Команды, написанные ЗАГЛАВНЫМИ БУКВАМИ — это отдельные клавиши: например, ESC — это клавиша Esc на вашей клавиатуре.
Все команды чувствительны к регистру и должны выполняться вне режима insert.
Выход из Vim
Выход без сохранения изменений:
Как запомнить: quit dammit! (закройся, чёрт возьми!)
Выход с сохранением изменений:
Как запомнить: write to disk and quit
Навигация
Для перемещения по открытому файлу используйте стрелки.
Перемещение на строку 285:
Поиск слова «import»:
Изменение текста
Вставка текста там, где стоит курсор:
Вставка текста в конце текущей строки:
Выход из режима редактирования (возврат в стандартный режим):
Выделение текста
Переход в визуальный режим:
Для выделения текста используйте стрелки.
Выход из визуального режима:
Копирование, удаление, вставка
Копирование выделенного текста в буфер:
Удаление выделенного текста:
Копирование текущей строки в буфер:
Как запомнить: yank yank
Копирование трёх строк, включая текущую, в буфер:
Удаление текущей строки и помещение её в буфер:
Как запомнить: delete delete
Удаление 5 строк, включая текущую:
Вставка из буфера перед текущей строкой:
Вставка из буфера после текущей строки:
Отмена и восстановление последнего изменения
Отмена последнего изменения:
Восстановление последнего отменённого изменения:
Отмена двух последних изменений:
Многоуровневое дерево отката изменений Vim очень мощное, подробнее о нём можно почитать в документации.
Работа с файлом
Открытие файла index.html вместо текущего:
Сохранение текущего файла:
Как запомнить: write to disk
Сохранение файла с изменённым именем, например, changes.txt:
Поиск и замена
Поиск и замена всех вхождений строки в файле:
Поиск и замена с запросом подтверждения замены:
Подсветка синтаксиса и отступы
Включение подсветки синтаксиса:
Включение автоматических отступов:
Увеличение отступов нескольких строк при выделении их в визуальном режиме:
Вкладки
Открытие server.py в новой вкладке:
Переход на вкладку справа:
Переход на предыдущую вкладку слева:
Как запомнить: tab previous
Разделённый экран
Открытие templates/base.html в режиме вертикального разделения экрана:
Как запомнить: vertical split
Открытие shared.js в режиме горизонтального разделения экрана:
Как запомнить: the ’default’ horizontal split
Перемещение между «частями» экрана:
Настройка Vim: файл .vimrc
Многие команды, используемые для изменения вида и поведения Vim, можно сделать включёнными по умолчанию, поместив их в .vimrc — файл конфигурации Vim, который расположен в домашнем каталоге.
Например, добавление этих строк в
/.vimrc сделает подсветку синтаксиса и автоматическую корректировку отступов включёнными по умолчанию:
Идеи для кастомизации Vim можно почерпнуть в этом GitHub-репозитории.
Полезные ресурсы
Вот ещё несколько полезных материалов для изучения Vim:
А какая команда Vim — ваша любимая? Может, вы знаете удобные приёмчики? Делитесь ими в комментариях!
Как использовать Vim в терминале?
Как настроить и начать использовать vim в терминале на OS X?
Я хочу начать писать свой код C, используя vim в терминале, а не отдельный текстовый редактор. Как начать с этого?
основы, такие как: открытие, создание, сохранение файлов через терминал с помощью vim и написание кода с помощью vim. Кроме того, компилируется ли непосредственно с помощью vim в терминале?
4 ответов
если у вас есть конкретный файл для редактирования, передайте его в качестве аргумента.
аналогично, запустите учебник
быстро
вы просто наберите vim в терминал, чтобы открыть его и запустить новый файл.
Vim имеет разные режимы, в отличие от большинства редакторов, которые вы, вероятно, использовали. Вы начинаете в NORMAL режим, в котором вы проведете большую часть своего времени, как только вы познакомитесь с напор.
первый режим, чтобы попробовать это INSERT режим, который вводится с a на добавить после курсора или я на вставить перед курсором.
настройка vim для твоя симпатия
вы можете редактировать свои
/.vimrc файл для настройки vim по своему вкусу. Лучше всего сначала посмотреть на несколько (вот моя), а затем решить, какие варианты соответствует вашему стилю.
вот как выглядит мой:
чтобы получить проводник слева, используйте NERDTree. В строке состояния используйте vim-авиакомпания. Наконец, цветовая схема solarized.
обучение
можно использовать man vim для некоторой помощи внутри терминала. Кроме того, работать vimtutor что является хорошей практической отправной точкой.
это хорошая идея, чтобы распечатать Vim Cheatsheet и держите его перед собой, пока вы изучаете vim.
вы можете точно построить свой код С ВИМ, что делает.
, вы нужно чтобы сначала пройти основы: введите vimtutor в ваш терминал и следуйте инструкциям до конца.
после того, как вы завершили его несколько раз, откройте существующий (не важно) текстовый файл и попробовать все, что вы узнали из vimtutor : вход / выход из режима вставки, отмена изменений, выход / сохранение, дергать / класть, двигать и так далее.
некоторое время вы не будете продуктивны с Vim и, вероятно, будете испытывать соблазн вернуться к предыдущей IDE/editor. Делайте это, но не отставайте от Вима немного каждый день. Вероятно, вас остановят очень странные и неожиданные вещи, но это будет происходить все реже и реже.
если вы хотите включить шаблон в том месте, где вы находитесь, вы можете использовать:
импортирует файл » myHeaderTemplate в том месте, где курсор был перед запуском команды.
вы можете, наоборот, выделить визуально какой-то код и сохранить его в файл
когда вы выбираете visualy, после типа»: «для того, чтобы ввести команду, вы увидите»‘ «появляются после»:»
^ при добавлении команды «
/ myfile » выбранная часть файла будет сохранена в myfile.
если вы редактируете файл и хотите его скопировать:
Vim для новичков
Russian (Pусский) translation by Anton L (you can also view the original English article)
Открываем файлы
Вы можете открыть файлы в Vim, как и в любом другом консольном редакторе.


Если файл, который вы хотите отредактировать называется life.md, введите в терминале
Vim откроется в этом терминале с загруженным файлом. Vim это консольная программа, а не программа с графическим интерфейсом.
Основы режимов Vim
В Vim есть четыре режима: Командный, Текстовый (иногда его называют режим вставки), Визуальный и режим командной строки. Текущий режим показывает своё название в нижнем левом углу статусной строки.
Когда вы запустите Vim, он находится в командном режиме Вы можете использовать все командные клавиши для навигации по файлу, а затем приступить к редактированию. Когда вы выходите из любого другого режима, Vim возвращается в командный режим.
Vim переключается в текстовый режим когда вы нажимаете a, A, i, I, o или O. Как только вы окажитесь в текстовом режиме, редактор будет находится в этом режиме, до тех пор пока вы не нажмёте кнопку Esc. Любая другая нажатая вами кнопка будет непосредственно вводиться в файл, в то место где в данный момент находится курсор.
Визуальный режим активируется когда вы используете v, V и Ctrl-v, команды в командном режиме. В Визуальном режиме вы можете выделить текст. В то время когда вы используете команды навигации область от того места где вы переключились в визуальный режим будет выделяться, до момента пока вы не покинете визуальный режим.
В любое время когда вы используете :command в командном режиме, вы окажитесь в режиме командной строки. В режиме командной строки вы можете выполнять мощные функции по редактированию, различные действия с файлами, а также вызывать функции шелла. Режим командной строки единственный режим, который ничего не отображает в статусной строке, но введённые команды, вместе с курсором, будут показываться под статусной строкой.
Сохраняем файлы и выходим из Vim
Основные команды навигации
В командном режиме вы передвигаетесь по файлу и выполняете различные команды по редактированию. Кнопка h передвинет курсор влево. Кнопка l в свою очередь передвинет курсор вправо. Кнопка j передвинет курсор вниз на одну строку, когда кнопка k передвинет курсор на одну строку вверх. Чтобы переместится к следующему слову используйте кнопку w. Для перемещения к предыдущему слову используйте команду b.
Если вы хотите переместить курсор больше чем на одну позицию, слово или строку, одной командой, укажите число и после этого нужное вам направление. Курсор переместится в указанном направлении определённое количество раз, в зависимости от числа. К примеру, если набрать 10j, курсор переместится вниз на десять строк.
В командном режиме можно переключить нумерацию строк с абсолютной на относительную:
Для того чтобы включить абсолютную нумерацию строк введите команду :set number. Чтобы не показывать нумерацию строк используйте :set nonumber.


Включить относительную нумерацию строк можно :set relativenumber. Чтобы вернуться к абсолютной нумерации достаточно набрать :set norelativenumber.


Установив :set number и :set relativenumber, ваш Vim будет показывать относительные номера строк, для всех строк, кроме текущей. Текущая строка будет показывать свой абсолютный номер.
Переключившись на относительную нумерацию, вы можете быстро увидеть количество строк для перемещения используя j или k команды. К примеру, чтобы переместится на строку с List, вы должны будите нажать 2j.
Чтобы попасть на начало строки используйте 0(это ноль) команду. На конец строки можно переместится после нажатия $ команды. Команда gg перемещает на начало файла, а команда G в конец файла.
Вероятно вам захочется постоянно использовать относительную нумерацию строк, но это неудобно каждый раз переключатся на неё когда вы запускаете Vim. Именно в этом случае вам пригодится файл для конфигурации Vim. В терминале, находясь в домашней директории, введите
Файл .vimrc, файл для конфигурации Vim. Любая команда, которую вы можете использовать в режиме командной строки, может быть добавлена в этот файл, она будет включаться при каждом запуске Vim. Оказавшись в этом файле, используйте команду i, чтобы начать вводить текст. Теперь добавьте эти строки и сохраните файл:
Таким образом каждый раз открывая Vim в нем будет установлена смесь абсолютной и относительной нумерации строк, а также подсветка поиска. Подсветка поиска понадобится нам в следующем разделе. Файл .vimrc обладает множеством возможностей и настроек редактора, но их описание придётся отложить до следующего туториала.
Поиск и Замена
Вы можете искать интересующий вас текст используя команду / в командном режиме. Напечатав /This, вы увидите что все слова This подсвечиваются, в примере ниже.


Нажав n, вы переместитесь к следующему вхождению поискового паттерна. Используя N, вы попадёте на предыдущее вхождение. Паттерн, который вы указываете после / может быть любым регулярным выражением. Почитайте статью Advanced search and Replace with RegEx для лучшего понимания принципов работы с регулярными выражениями.


Следующий формат / / /gi в котором и являются стандартными регулярными выражениями. В примере выше, я заменяю каждое вхождение слова This на That. Флаг i после g, делает поиск нечувствительным к регистру, в свою очередь I сделает поиск чувствительным к регистру. Флаг g делает замену глобальной. без этого флага замена выполнится лишь один раз, для строки.
Команды редактирования
Начать вводить текст слева от курсора, можно командой i. Команда a установит курсор для ввода текста справа, от текущего положения. Команда I служит для добавления текста в начало строки, а A для добавления текста в конец строки.
Команда o добавляет новую строку, после того места где находился курсор и переключается в текстовый режим в начале этой строки. O совершает аналогичные действия, но добавляет строку выше, положения курсора.
Для удаления символов, используйте команду d, после чего укажите направление в котором планируете удалять, или пробел, чтобы удалить символ находящийся под курсором. Если вы добавите к команде префикс с номером, Vim удалит соответствующее номеру количество символов в указанном направлении. Команда dd удалит текущую строку. D удаляет всё, начиная от положения курсора, до конца строки.
Команда x удалит символ под курсором. X удалит символ перед курсором. Обе команды x и X также возможны с использованием префикса с номером, для повторения удаления, определённое количество раз.
Копировать, Вырезать и Вставить
Когда вы нажимаете v в командном режиме, включается визуальный режим. Все передвижения курсора выделяют текст, с той позиции где был осуществлён переход в визуальный режим. Выделив нужный вам текст, нажмите команду y, после чего данный текст будет скопирован. Переместившись в новое место и нажав p скопированный текст добавится после курсора, P делает вставку перед курсором.
Выделив текст, команда x удалит этот текст. Команда d вырежет выделенный текст, в дальнейшем его можно вставить командой p.


Выделять блоки текста можно после нажатия команды -v. Команда V включает визуальный режим, в котором выделяются строки целиком, а не отдельные символы.
Практика и ещё раз практика
Теперь когда вы познакомились с основными командами Vim, вам следует больше практиковаться. Vim Adventure отличный способ испытать команды Vim на практике. Это игра-приключение для прохождения, которой вам необходимо будет использовать различные команды Vim.
Simple Tutorials Vim Reference шпаргалка, которая поможет вам запомнить распространённые команды Vim. Но самое важное продолжайте работать с этим одновременно простым и мощным редактором и вы обязательно достигните мастерства в нем.
ИТ База знаний
Полезно
— Онлайн генератор устойчивых паролей
— Онлайн калькулятор подсетей
— Руководство администратора FreePBX на русском языке
— Руководство администратора Cisco UCM/CME на русском языке
— Руководство администратора по Linux/Unix
Навигация
Серверные решения
Телефония
FreePBX и Asterisk
Настройка программных телефонов
Корпоративные сети
Протоколы и стандарты
Как пользоваться vim в Linux
Как редактировать файлы через консоль?
Сегодня в статье будут кратко описаны главные функции текстового редактора Vim – данный редактор очень часто является самым простым способом отредактировать конфиг\текстовый файл, но он обладает не самым дружелюбным интерфейсом. Давайте разберём основные моменты.
Онлайн курс по Linux
Мы собрали концентрат самых востребованных знаний, которые позволят тебе начать карьеру администратора Linux, расширить текущие знания и сделать уверенный шаг к DevOps
Текстовый редактор Vim
Командный режим и его возможности
В командном режиме доступно очень большое количество команд, с полным списком которых можно ознакомиться по ссылке: https://www.fprintf.net/vimCheatSheet.html, я же приведу здесь только самые часто используемые и полезные.
Самое главное, что нужно запомнить – это клавиши, используемые для перемещения по тексту – это h, j, k, l.
Кроме того, есть возможность перемещаться на одно слово вперед или назад – важно помнить, что словом является нечто вида «aesr1001k», то есть без дефиса и прочих разделительных знаков – «aesr-1001k» – это будет восприниматься редактором как два слова. Итак, для перехода на одно слово вперед нужно нажать «w», а для перехода назад – «b». Не очень интуитивно, не правда ли?:)
Если вам нужно что-то копировать – в Виме это делается достаточно просто – для этого нужно сначала переключиться в режим редактирования текста (клавиши «V» (выделение целых строк),»v»(посимвольное выделение) или «Ctrl-v»(блочное выделение) – после переключения можно будет выделять текст используя кнопки описанные выше или же используя клавиши со стрелками. После выделения нужно нажать клавишу «y» для копирования фрагмента в буфер обмена. Для вставки используются маленькая и большая «p» – маленькая для вставки после курсора и большая, соответственно, до.
Что касается удаления – здесь тоже есть свои «трюки»:
Важно – если отменен режим совместимости с Vi, то отменять можно большее количество действий.
Сохранение и выход
Теперь перейдем к важному моменту – сохранению и выходу. Тут есть несколько опций:
На этом всё, помните, что Vim не является самым удобным редактором, и, если есть возможность – лучше установите что-то более привычное для вас. Но навыки использования Vim важны, так как часто это единственно доступный инструмент для редактирования конфигов на удаленных серверах.
Онлайн курс по Linux
Мы собрали концентрат самых востребованных знаний, которые позволят тебе начать карьеру администратора Linux, расширить текущие знания и сделать уверенный шаг к DevOps
Редактор Vi/Vim
Содержание

Для того, чтобы установить Vim перейдите по ссылке слева или выполните в терминале:
Хотя в большинстве дистрибутивов Linux он уже установлен по умолчанию. В придачу к улучшенному консольному Vi, Vim доступен также в виде GVim — прекрасного графического редактора, который может быть сконфигурирован для использования с великолепной библиотекой GUI (графического интерфейса пользователя) GTK+.
Если Vi вам в новинку, попробуйте установить в своей системе GVim. Использование Vi в графической оболочке может кое в чем облегчить новичкам жизнь.
Также можно запустить обучающую программу, набрав в терминале команду
Это небольшая обучающая программа поможет за 25-30 минут освоиться в этом необычном для новичка редакторе.
Открываем файл
Перед использование Vi для редактирования файлов вам следует узнать, как в Vi перемещаться по файлу. У Vi множество команд перемещения, многие из них мы сейчас рассмотрим. Для этой части обучения найдите какой-нибудь малоценный текстовый файл (TODO: лучше на английском) и загрузите его в Vi напечатав:
Если у вас установлен Vim, наберите в консоли:
Если вы предпочитаете использовать GVim:
myfile.txt должно быть именем текстового файла в вашей системе.
Внутри Vi
После загрузки Vi, на экране вы должны увидеть часть загруженного вами текстового файла. Поздравляю — вы уже в Vi! В отличии от большинства редакторов, загрузившись, Vi находится в специальном режиме, называемом «командным режимом». Это значит, что если вы нажмете клавишу (строчная L), вместо появления «l» на месте курсора вы увидите, что курсор всего лишь сдвинулся на один символ вправо. В командном режиме знаки, набираемые на клавиатуре, используются как команды для Vi, а не как помещаемые в текст символы. Один из наиболее важных типов команд — это команды перемещения. Давайте рассмотрим некоторые из них.
Перемещаемся по документу
Перемещения в Vi, часть 1
Перемещения в Vi, часть 2
Vi предоставляет специальные команды для прыжков в начало и конец текущей строки:
Поскольку у Vi так много команд перемещения, его можно использовать в качестве великолепного инструмента просмотра — «pager»а (как команды more или less). Используя Vi для просмотра, вы очень быстро запомните все команды перемещения.
Вы также можете использовать и для перемещения вперед и назад сразу на страницу. Современные версии Vi (такие как Vim) могут позволить использовать для этих целей клавиши
Перемещение по словам, часть 1
Vi также позволяет вам перемещаться влево и вправо по словам:
Перемещение по словам, часть 2
Позабавившись с командами перемещения по словам, вы могли заметить, что Vi считает слова типа «foo-bar-oni» пятью различными словами! Это происходит потому, что Vi по умолчанию разделяет слова пробелами или знаками пунктуации (которые тоже считает словами). Поэтому foo-bar-oni считается пятью словами: «foo»,«-»,«bar»,«-» и «oni».
Перемещение по словам, часть 3
Чтобы переместиться на следующее или предыдущее большое слово, вы можете использовать «заглавные» команды перемещения по словам. Нажав следующие клавиши, вы попадете на:
Дальние переходы
Осталось рассмотреть еще несколько команд, и можно будет начинать их записывать на шпаргалку. Вы можете использовать скобки:
Выход
Мы рассмотрели основные команды перемещения, однако осталась еще пара команд, которые вам необходимо знать. Напечатав:
Теперь вы должны оказаться в командной строке системы.
Сохранение и редактирование
Save(сохранить) и Save as. (сохранить как. )
Мы уже видели, как используя ex-команду :q выйти из vi.
В Vim (и других потомках Vi, типа elvis), вы можете держать открытыми одновременно несколько буферов. Введите команду
Простое редактирование
Вот и подошло время заняться изучением простых команд редактирования. Рассматриваемые здесь команды считаются «простыми» из-за того, что оставляют вас в командном режиме. Более сложные команды автоматически переводят вас в режим ввода текста, позволяющий добавлять в буфер символьную информацию, набираемую на клавиатуре; их рассмотрим позднее.
Повторение и удаление
Повторить любую команду редактирования вы можете нажимая клавишу (точка). Если попробуете, то можете увидеть, что печать dd… удалит 4 строки, а J…… объединит семь строк. Как обычно, Vi обеспечивает вас различными удобными средствами сокращения трудозатрат.
Удалять текст вы можете также комбинируя команду d с любыми командами перемещения. Например, dw удалит часть текста от текущей позиции курсора до начала следующего слова; d) удалит вплоть до следующего конца предложения, и d> удалит весь остаток абзаца. Поэкспериментируйте с командой d и другими командами редактирования, пока не почувствуете себя с ними уверенно.
Режим ввода текста
Мы уже рассмотрели, как в vi перемещаться, выполнять чтение\запись файлов и основные операции редактирования. Однако, я еще не объяснил, как напечатать произвольный текст! Сделано это было умышленно, так как поначалу режим ввода текста в Vi малость сложноват. Тем не менее, после того, как вы станете спокойно себя чувствовать в режиме ввода текста, эта сложность (и гибкость) станет настоящей ценностью.
В Vi, в режиме ввода текста, вы можете вводить текст «прямо на экран», как в большинстве других экранных редакторов. Сделав свои изменения, вы можете нажать
Комбинированные команды
Разрешая комбинации (число)(команда перемещения), Vi позволяет еще совмещать команды d или c с числами или командами перемещения. Так d3w удалит следующие три слова, d2j удалит текущую и две следующие строки, и т.д. Попробуйте немного поэкспериментировать с командами c и d, совмещенными с перемещениями, чтобы почувствовать, каким мощным и лаконичным может быть редактирование в Vi. Когда эти команды станут вашей второй натурой, вы сможете редактировать файлы с невероятной скоростью.
Увеличение производительности
Только что мы рассмотрели, как перемещаться, сохранять и завершать работу, выполнять простое редактирование и удаление, пользоваться режимом ввода текста. С этим багажом знаний (только что показанным на шпаргалке) вы уже способны, используя Vi, справиться практически с любой задачей.
Однако, у Vi есть еще много более мощных команд. В этом разделе вы узнаете как вы’резать (cut), скопировать (copy) и вставить (paste), найти (search) и заменить (replace) текст, а так же, как использовать автоматический отступ (autoindent). Эти команды помогут Vi быть более приятным и производительным.
Экранный режим

Для копирования текста нажмите y (от слова «yank»). Чтобы вырезать текст нажмите d. Вы будете переведены назад в командный режим. Теперь переместитесь в то место, где вы хотите вставить вырезанный или скопированный текст, и нажмите P (заглавная) для вставки перед курсором или p (строчная) для вставки за курсором. Всё, копирование\вырезание и вставка выполнены! А теперь проделайте еще несколько раз процедуру копирования\вырезания и вставки перед тем, как перейти к следующему разделу.
Для того, чтобы вставить в редактор содержимое буфера обмена (в который Вы скопировали информацию по + ) необходимо установить утилиту xclip
и скопировав нужный текст выполнить в командном режиме редактора
Замена текста
Для замены образцов текста мы используем ex-режим. Если вы хотите заменить первый попавшийся в текущей строке образчик, наберите:
Для замены всех совпадений с эталоном в текущей строке используйте команду:
Выделение
Если авто отступ включен, вы можете использовать для уменьшения и для увеличения уровня отступа.
Ссылки
Означенные здесь ресурсы могут быть полезны желающим продолжить изучение vi далее. (Правда, на английском):
Полезное
Обои с описанием клавиатурных сокращений и команд.
Статьи про Vi
© 2018 Ubuntu-ru — Русскоязычное сообщество Ubuntu Linux.
© 2012 Canonical Ltd. Ubuntu и Canonical являются зарегистрированными торговыми знаками Canonical Ltd.

