Vim linux режим редактирования

Основные команды текстового редактора VI / VIM

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

Открываем файл с помощью vi / vim:

Основные режимы работы.

«Обычный режим» — перемещение по файлу, стирание текста и другие редактирующие функции. Это — основной режим, только из него можно сразу перейти в другие режимы. Для возврата в основной режим из любого другого режима:

«Режим ввода» — ввод текста. Как только завершается ввод текста, принято сразу возвращаться в обычный режим. Заметьте, что стирание и ввод текста происходит в двух разных режимах. Переход в него из обычного режима:

«Командный режим» — Команды (операции с файлом, поиск и замена, настройка редактора…). Переход в него из обычного режима:

«Режим поиска» — ввод поискового запроса. Переход в него из обычного режима

«Визуальный режим» — режим выделения текста:

Перемещение по файлу

После загрузки Vim, на экране вы увидите часть загруженного вами текстового файла. Загрузившись, Vim находится в «командном режиме» — один из основных режимов. Это значит, что если вы нажмете клавишу (строчная L), вместо появления «l» на месте курсора вы увидите, что курсор сдвинулся на один символ вправо. В командном режиме знаки, набираемые на клавиатуре, используются как команды для Vim, а не как помещаемые в текст символы. Команды перемещения — один из наиболее важных типов команд. Вот некоторые из них:

Ввод текста

Следующие команды переводят редактор в режим ввода:

Удаление и вставка

Ниже перечислены основные комманды удаления и вставки текста:

Отмена изменений

Поиск

Перейти на строку:

Выход

Есть еще пара команд, которые вам необходимо знать:

В этой статье описаны основные возможности, необходимые для работы. Практически во все дистрибутивы Linux входит учебник по работе с редактором, — просто введите в командной строке команду vimtutor.

Справка

Для вызова справки (помощи) о редакторе введите в терминале команду:

Источник

КАК ИСПОЛЬЗОВАТЬ ТЕКСТОВый РЕДАКТОР VIM

Опытные пользователи Linux часто используют терминал, потому что так можно намного быстрее выполнить необходимые действия. Во время настройки системы нам довольно часто приходится редактировать различные файлы. Это могут быть настройки программ, какие-нибудь данные или обычные текстовые файлы.

В операционной системе Linux есть несколько текстовых редакторов, которые работают в терминале. Чаще всего новички используют редактор nano, но если вы заметили на нашем сайте во всех статьях используется текстовый редактор vi. Nano неудобный, и недостаточно функционален. Я сознательно не пишу в своих статьях о nano. Есть намного лучший текстовый редактор, это редактор vi. Здесь поддерживается быстрое перемещение по тексту, удобное редактирование, команды для изменения настроек работы, выполнение команд терминала из редактора, а также плагины для расширения функциональности. Но он немного сложный для новичков и очень непривычный.

В этой статье мы рассмотрим как пользоваться vim, рассмотрим основы работы с этим редактором, а также его основные команды.

МИНИМАЛЬНЫЕ ОСНОВЫ

На данный момент существует две версии редактора — vi и vim. Vim расшифровывается как Vi Improved, улучшенный vi. Это новая версия, которая принесла очень много улучшений. В большинстве современных дистрибутивов используется именно она. Поэтому если я буду писать vi, это значит, что я предполагаю использование vim.

Текстовый редактор Vim может работать в двух режимах. Это и есть его главная особенность. Первый режим, который используется по умолчанию при открытии редактора — это командный. В этом режиме вы можете вводить команды vi, а также использовать символьные клавиши для управления редактором. Второй режим — обычное редактирование текста, он работает так же как и редактирование текста в nano. Для переключения в командный режим используется клавиша Esc. Для переключения в режим редактирования — клавиша i. Если вас интересует только как в редакторе vi сохранить и выйти, листайте вниз, но если вы хотите узнать как пользоваться текстовым редактором vim, эта статья для вас.

Перед тем как идти дальше я бы посоветовал вам пройти курс обучения встроенный в редакторе. Выполнение всех обучающих заданий займет 25-30 минут. Но после того как вы освоите все что там написано, эта статья поможет вам закрепить материал. Дело в том, что команд и сочетаний клавиш у vim очень много и запомнить их все без практики невозможно. Для запуска обучения наберите:

Читайте также:  Звуковые драйвера для windows 10 64 bit последняя версия

Но делать это сейчас необязательно, в этой статье есть вся необходимая базовая информация и после ее прочтения вы уже сможете уверенно пользоваться vim, а обучение пройти чуть позже.

КАК ИСПОЛЬЗОВАТЬ РЕДАКТОР VIM

Начнем мы, как обычно с запуска программы, а также опций, которые ей можно передать. Синтаксис Vim очень прост:

$ vim опции имя_файла

$ vi опции имя_файла

Простой запуск vim без указания имени файла приведет к созданию пустого файла. А теперь давайте рассмотрим основные опции запуска:

  • +номер — переместить курсор к указной строке после запуска.
  • +/шаблон — выполнить поиск по шаблону и переместить курсор к первому вхождению
  • «+команда» — выполнить команду после запуска программы
  • -b — двоичный режим, для редактирования исполняемых файлов.
  • -d — режим поиска различий в файлах, нужно указать несколько файлов для открытия.
  • -g — графический режим.
  • -n — не использовать автосохранение для восстановления файла при сбое.
  • -R — режим только для чтения.
  • -w — сохранить все действия в файл.
  • -x — шифровать файл при записи.
  • -C — режим совместимости с Vi.

Круто, правда? Но это только начало. Опции ничего по сравнению с командами редактора.

КОМАНДНЫЙ РЕЖИМ VIM

В командном режиме вы можете перемещаться по редактируемому тексту и выполнять действия над ним с помощью буквенных клавиш. Именно этот режим открывается по умолчанию при старте редактора. Здесь вы будете использовать краткие команды, перед которыми может устанавливаться номер, чтобы повторить команду несколько раз. Для начинающих может быть поначалу очень запутанно то, что в командном режиме символы интерпретируются как команды.

Для перемещения используются такие команды:

  • h — на один символ влево;
  • l — на один символ вправо;
  • j — на одну строку вниз;
  • k — на одну строку вверх;
  • w — на слово вправо;
  • b — на слово влево;
  • H — перейти в низ экрана;
  • G — перейти в конец файла;

Можете запустить редактор и поэкспериментировать, чтобы было легче понять как это работает. Если перед тем как нажать кнопку буквы нажать цифру, то эта команда будет повторена несколько раз. Например, 3j переведет курсор на три строки вверх.

Для переключения в режим редактирования используются такие команды:

  • i — вставить текст с позиции курсора, символ под курсором будет заменен;
  • I — вставить текст в начало строки;
  • a — добавить текст начиная от позиции курсора;
  • o — вставить новую строку после этой и начать редактирование;
  • O — вставить новую строку перед этой и начать редактирование;
  • r — заменить текущий символ;
  • R — заменить несколько символов.

К этим командам тоже применимы символы повторения. Поэкспериментируйте, можно получить интересный и не совсем ожиданий результат.

Более сложны команды редактирования текста. Вы можете править текст не только в обычном режиме, но и в командном с помощью команд. Для этого применяются такие команды:

  • d — удалить символ;
  • dd — удалить всю строку;
  • D — удалить символы начиная от курсора и до конца строки;
  • y — копировать символ;
  • yy или Y — скопировать всю строку;
  • v — выделить текст;

Эти команды редактора vim работают немного по-другому после нажатия одной из них ничего не произойдет. Мы еще можем задать количество символов, к которым будет применена команда и направление, с помощью кнопок перемещения курсора. Например, чтобы удалить два символа справа от курсора нажмите d3l, а чтобы удалить три строки вниз — d3j. Команды yy, dd, Y — не что иное, как сокращения.

Кроме этих команд, есть еще несколько полезных, которые мы не можем не рассмотреть:

  • p — вставить после позиции курсора;
    P — вставить перед позицией курсора;
  • u — отменить последнее действие;
  • . — повторить еще раз последнее действие;
  • U — отменить последнее действие в текущей строке;
  • /шаблон — искать вхождение;
  • %s/шаблон/заменить — заменить первое слово на второе;
  • n — продолжить поиск вперед;
  • N — продолжить поиск назад;

С основными командами разобрались. Но у нас есть еще командная строка Vim, которая сама по себе тоже представляет огромный интерес.

КОМАНДНАЯ СТРОКА VIM

Командная строка Vim запускается в командном режиме нажатием двоеточия — «:«. Здесь доступны команды для сохранения файла и выхода из редактора, настройки внешнего вида и взаимодействия с внешней оболочкой. Рассмотрим наиболее часто используемые команды редактора vim:

  • :w — сохранить файл;
  • :q — закрыть редактор;
  • :q! — закрыть редактор без сохранения;
  • :e файл — прочитать содержимое файла в позицию курсора;
  • :r файл — вставить в содержимое файла в следующую строку;
  • :r! — выполнить команду оболочки и вставить ответ в редактор;
  • :set переменная=значение — установить значение переменной, например, tabstop=4, или set number, с помощью этой команды можно управлять многими аспектами работы vim.
  • :buffers — посмотреть открытые файлы.

Со всеми основами разобрались, и вы теперь использование vim не будет казаться вам таким сложным. Но это еще далеко не все, этот мощный редактор может еще очень многое. Дальше мы рассмотрим несколько примеров использования vim, чтобы вам было легче справиться с новой программой.

РЕДАКТИРОВАНИЕ ФАЙЛА В VIM

Несмотря на то, что из всего вышесказанного можно понять как это делается рассмотрим еще раз. Чтобы открыть файл выполните:

Затем, если вы не хотите пока использовать возможности командного режима просто нажмите i, чтобы перейти в режим редактирования. Здесь вы можете редактировать файл так же, как и в nano. После того как завершите нажмите Esc, чтобы перейти в командный режим и наберите :wq. Записать и выйти. Все, готово.

Читайте также:  Windows 10 зависает wifi

ПОИСК И ЗАМЕНА В VIM

Довольно часто нам нужно найти определенную последовательность в тексте. Текстовый редактор Vim умеет это делать.

Во-первых, если нужно найти символ в строке, нажмите f и наберите нужный символ, курсор будет перемещен к его позиции.

Для поиска по всему файлу используйте команду /. После нее нужно ввести слово, которое нужно найти. Для поиска следующего вхождения используйте n, для предыдущего — N.

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

Двоеточие запускает командную оболочку с командой s для замены. Символ % означает что обрабатывать нужно весь файл, а g значит, что нужно обработать все найденные строки, а не только первую. Чтобы программа спрашивала перед каждой заменой можно добавить в конец строки опцию c.

ОДНОВРЕМЕННОЕ РЕДАКТИРОВАНИЕ НЕСКОЛЬКИХ ФАЙЛОВ

Чтобы открыть несколько файлов, просто передайте их в параметры при запуске программы:

vim файл1 файл2 файл3

Редактор vim linux откроет первый файл, для переключения ко второму используйте команду :n, чтобы вернутся назад :N.

С помощью команды :buffers вы можете посмотреть все открытые файлы, а командой :buffer 3 переключится на третий файл.

БУФЕР ОБМЕНА VIM

Текстовый редактор Vim имеет свой буфер обмена. Например, вам нужно скопировать в четыре строки и вставить их в другое место программы, для этого выполните такую последовательность действий:

  • Нажмите Esc, чтобы перейти в командный режим;
  • Наберите 4yy чтобы скопировать четыре строки;
  • Переместите курсор в место где нужно вставить эти строки;
  • Нажмите p для вставки.

Также можно использовать выделение vim, чтобы скопировать строки. Выделите текст с помощью v, а затем нажмите y, чтобы скопировать.

КИРИЛЛИЦА В VIM

Кириллица в Vim работает превосходно. Но есть одно но, когда включена кириллица в системе, все команды vim не работают, им и не нужно работать, они же не приспособлены для кириллицы.

Но переключать каждый раз раскладку, когда работаете в командном режиме тоже не очень удобно, поэтому открываем файл

/.vimrc и добавляем туда такие строки:

set keymap=russian-jcukenwin
set iminsert=0
set imsearch=0

Теперь раскладка клавиатуры в командном режиме переключается по Ctrl+^ и все команды работают.

Источник

Установка и использование текстового редактора Vim

Один из наиболее мощных текстовых редакторов, доступных из командной строки, – редактор Vim. Основанный на Vi и выпущенный в 1976, данный редактор обладает дополнительной функциональностью и мощностью, сохраняя при этом стиль редактирования своего предшественника.

Данное руководство охватывает установку и базовое использование Vim.

Установка vim

Благодаря широкому использованию vim в командной строке Linux он доступен в репозитории по умолчанию почти каждого дистрибутива.

Для установки редактора на Ubuntu и Debian используйте команду apt-get:

sudo apt-get install vim

Чтобы установить vim на Fedora и CentOS, используйте yum:

sudo yum install vim

На Arch Linux vim можно установить с помощью pacman:

sudo pacman -S vim

Итак, теперь Vim установлен.

Начало работы c Vim

При вызове без аргументов Vim по умолчанию открывает пустой документ. В зависимости от дистрибутива Vim может сначала вывести вступление и лицензию, которые исчезнут сразу после начала работы с редактором.

Тем не менее, сейчас запускать vim с чистого документа не нужно. Чтобы продемонстрировать возможности vim, можно создать новый документ под названием «newfile»

echo «This is a new file.
Here is the second line
And here is the third line.
Some more text is on this line. We will edit this file in vim.
It will be great fun.» >> newfile

Теперь откройте только что созданный файл.

Модальное редактирование

Главное отличие Vim от большинства других редакторов состоит в том, что vim является «модальным» редактором. В редакторах такого типа специальные функции редактирования, такие как копирование текста, выполняются путем удерживания одной или нескольких клавиш-модификаторов и затем нажатия обычной клавиши. Vim использует различные режимы, чтобы отличать эти функции от обычного ввода текста.

Обычный режим

Используется для редактирования операций. Копирование, вставка, перемещение, удаление и изменение текста осуществляются в этом режиме.

Vim выполняет редактирование в «обычном» режиме. В данном режиме редактор находится при запуске. Этот режим используется для быстрого перемещения и редактирования текстового документа. Он не используется для ввода текста.

  • [esc] – чтобы перейти в обычный режим, нажмите клавишу «escape».

Режим вставки

Используется для ввода текста. Данный режим можно установить несколькими способами.

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

  • i – устанавливает режим вставки в текущей позиции курсора;
  • а – устанавливает режим вставки после текущей позиции курсора;
  • I – устанавливает режим вставки в начале текущей строки;
  • А – устанавливает режим вставки в конце текущей строки.

Визуальный режим

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

Читайте также:  Windows add name server

Третий режим, который использует Vim, называется визуальным. Участки текста выделяются как цель для команд редактирования или форматирования.

  • v – устанавливает обычный визуальный режим. Выбор осуществляется путем перемещения курсора вверх, вниз, влево и вправо.
  • V – устанавливает режим визуальной строки. Выбираются целые строки, от первого до последнего символа, путем перемещения вверх и вниз.
  • [ctrl]-v – Переход в режим визуального блока. Блок для выбора можно расширить и сузить. С помощью этого метода можно выбрать отдельные части нескольких строк.

Командный режим

Используется для выполнения команд. Для активации этого режима используется двоеточие.

Дополнительный режим, который необходим для сложного редактирования, изменения настроек и для управления vim, называется командным. Данный режим используется для сохранения документов, завершения работы программ, выполнения сложного поиска, и т.п.

Перемещение по тексту в редакторе vim

Основы перемещения

Перемещаться по тексту всегда можно при помощи клавиш со стрелками, но Vim предоставляет и более быстрые способы перемещения по документу. В обычном режиме можно использовать клавиши h, j, k и l для передвижения влево, вниз, вверх и вправо соответственно.

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

Расширенное перемещение

Существуют также другие горячие клавиши перемещения. Ниже приведены самые полезные их них.

  • gg – перемещение в начало документа;
  • G – перемещение в конец документа. Указав перед данной опцией номер строки, можно перейти к этой строке.
  • w – переход к следующему слову. Указав перед опцией число, можно перейти к такому количеству слов.
  • b – вернуться к предыдущему слову. Указав перед опцией число, можно вернуться на такое количество слов назад.
  • e – переход в конец слова. Указав перед опцией число, можно пропустить такое количество слов.
  • 0 – перемещение в начало строки.
  • $ – передвижении в конец строки.

Редактирование

Редактирование текста в Vim осуществляется путем запуска команд в обычном режиме.

Важно понимать, что команды редактирования в Vim очень мощны в сочетании с операторами движения. Все опции, описанные в главе о перемещении, могут быть использованы в качестве направления. К примеру, команду редактирования слова можно выполнить при помощи внесения флага «w».

Ниже приведены несколько действий, которые можно использовать:

Удаление текста

  • x – удаляет символ под курсором.
  • d – удаляет символ в направлении, указанном после ввода команды. Например, «dl» удаляет символ справа.
  • dd – удаляет строку.
  • D – удаляет текст от текущей позиции курсора до конца строки.

Изменение текста

  • r – заменяет символ под курсором. Укажите символ, который нужно заменить, в конце команды.
  • c – изменяет текст в указанном направлении. К примеру, «cw» изменяет текущее слово. После выполнения этой команды vim переходит в режим вставки, так что можно ввести текст для замены.
  • C – изменяет текст до конца строки. Данная команда также переводит vim в режим вставки.

Копирование и вставка

  • y – копирует в указанном направлении.
  • yy – копирует целую строку.
  • Y – копирует текст до конца строки.
  • p – вставляет последнюю скопированную (или удаленную) строку под текущей строкой.
  • P – вставляет последнюю скопированную (или удаленную) строку над текущей строкой.

Прочее редактирование

  • u – отменить последнее действие.
  • r – повторить последнее действие.
  • J – соединить текущую строку со следующей.

Управление документами

Vim управляет документами преимущественно в командном режиме. Для ввода команд перед каждой нужно использовать двоеточие.

  • :q – выйти из vim. Если изменения не были сохранены, это не удастся.
  • :q! – выйти из vim, не учитывая все несохраненные изменения.
  • :w – сохранить изменения. Нажмите пробел и введите имя файла, чтобы сохранить документ в другое место; если это первое сохранение, укажите место для сохранения.
  • :e – отредактировать следующий файл.
  • :bn – отредактировать следующий открытый в vim файл.
  • :bp – отредактировать предыдущий открытый в vim файл.

Итоги

Как уже упоминалось ранее, мощность Vim состоит в возможности объединять различные команды в цепи. Самый простой способ понять эту концепцию – рассматривать команды vim как английский язык. То есть, клавиши в обычном режиме могут представлять прилагательные, глаголы и существительные.

К примеру, чтобы скопировать (yank) 4 слова (words), просто переведите эту фразу на понятный vim язык. В данном случае получится:

Чтобы удалить (delete) текст с текущей строки и до конца файла, введите:

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

Заглавная версия команды редактирования чаще всего нацелена от текущей позиции курсора до конца строки. К примеру, чтобы изменить текст от текущей позиции курсора до конца строки, используйте:

Чтобы выполнить эту же команду на несколько строк, просто добавьте к команде числовой префикс. Это изменит текст от текущей позиции курсора до конца следующей строки:

Существует целое множество мощных техник использования vim, не вошедших в данное руководство. Чтобы получить больше информации, используйте встроенный в vim мануал. Он не охватывает сложных тем, но дает представление о том, как работать и выполнять базовое редактирование с Vim. Для запуска учебника используйте:

Источник

Оцените статью