Как выйти из режима редактирования вхождения. Как отсюда выйти: шпаргалка по Vim. Командный режим Vim

Вы собираетесь создать файл crontab и внезапно оказываетесь в этом странном редакторе по умолчанию. В том, в котором всё никак не разберётесь.

ESC? Ничего не произошло. CTRL + C? Нет. ESC ESC ESC? Неа. Вы в тупике.

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

С вами бывало такое? Конечно, бывало. Что ж, потратив несколько минут на эту статью, вы познакомитесь с основами редактора Vim (и научитесь быстро выходить из него).

Vim по умолчанию установлен во многих операционных системах (включая большинство дистрибутивов Linux и macOS), поэтому хотя бы поверхностные знания о нём лишними не будут. Откройте терминал и введите vim .

В умелых руках Vim может стать мощнее многих IDE. И, разумеется, он не ест сотни мегабайт памяти лишь для отображения пустого файла (да, Eclipse, это о тебе).

Основы

Некоторые из нижеописанных команд начинаются с двоеточия: нажав его, появится подсказка, в которой будет указана полная команда. Команды без двоеточий - это скорее горячие клавиши, которые можно использовать в режиме по умолчанию (в нём запускается Vim). Команды, написанные ЗАГЛАВНЫМИ БУКВАМИ - это отдельные клавиши: например, ESC - это клавиша Esc на вашей клавиатуре.

Все команды чувствительны к регистру и должны выполняться вне режима insert .

Выход из Vim

Выход без сохранения изменений:

Как запомнить: q uit dammit! (закройся, чёрт возьми!)

Выход с сохранением изменений:

Как запомнить: w rite to disk and q uit

Навигация

Для перемещения по открытому файлу используйте стрелки.

Перемещение на строку 285:

Поиск слова «import»:

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

Вставка текста там, где стоит курсор:

Как запомнить: i nsert

Вставка текста в конце текущей строки:

Как запомнить: A ppend

Выход из режима редактирования (возврат в стандартный режим):

Выделение текста

Переход в визуальный режим:

Как запомнить: v isual

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

Выход из визуального режима:

Копирование, удаление, вставка

Копирование выделенного текста в буфер:

Как запомнить: y ank

Удаление выделенного текста:

Как запомнить: d elete

Копирование текущей строки в буфер:

Как запомнить: y ank y ank

Копирование трёх строк, включая текущую, в буфер:

Удаление текущей строки и помещение её в буфер:

Как запомнить: d elete d elete

Удаление 5 строк, включая текущую:

Вставка из буфера перед текущей строкой:

Примечание: заглавная P

Вставка из буфера после текущей строки:

Отмена и восстановление последнего изменения

Отмена последнего изменения:

Как запомнить: u h-oh 🙂

Восстановление последнего отменённого изменения:

CTRL + R

Вывод изменений:

:undolist

Отмена двух последних изменений:

Многоуровневое дерево отката изменений Vim очень мощное, подробнее о нём можно почитать .

Работа с файлом

Открытие файла index.html вместо текущего:

:edit index.html

Сохранение текущего файла:

Как запомнить: w rite to disk

Сохранение файла с изменённым именем, например, changes.txt :

:w changes.txt

Поиск и замена

Поиск и замена всех вхождений строки в файле:

:%s/typo/corrected/g

Поиск и замена с запросом подтверждения замены:

:%s/typo/corrected/gc

Как запомнить: c onfirm

Подсветка синтаксиса и отступы

Включение подсветки синтаксиса:

:syntax on

Включение автоматических отступов:

:set autoindent

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

Вкладки

Открытие server.py в новой вкладке:

:tabe server.py

Как запомнить: tab e dit

Переход на вкладку справа:

Как запомнить: tab n ext

Переход на предыдущую вкладку слева:

Как запомнить: tab p revious

Для закрытия вкладки переключитесь на неё и используйте команду:q или:wq .

Разделённый экран

Открытие templates/base.html в режиме вертикального разделения экрана:

:vs templates/base.html

Как запомнить: v ertical s plit

Открытие shared.js в режиме горизонтального разделения экрана:

:sp shared.js

Как запомнить: the ’default’ horizontal sp lit

Перемещение между «частями» экрана:

CTRL + W + ARROW KEYS

Для закрытия экрана переключитесь на него и используйте команду:q или:wq .

Настройка Vim: файл.vimrc

Многие команды, используемые для изменения вида и поведения Vim, можно сделать включёнными по умолчанию, поместив их в .vimrc - файл конфигурации Vim, который расположен в домашнем каталоге.

Например, добавление этих строк в ~/.vimrc сделает подсветку синтаксиса и автоматическую корректировку отступов включёнными по умолчанию.

Во время работы с документами, содержащими различную информацию на многих страницах (научные труды, маркетинговые исследования, медицинские статьи и т.п.) приложение Microsoft Word предлагает дополнительную функцию регистрации изменений в текстовых блоках. Это удобно для анализа исправлений с возможностью возврата к предыдущим вариантам как для одного пользователя, так и для нескольких, работающих с одним и тем же файлом.

Переход в режим правки

Чтобы включить этот режим, нужно перейти на вкладку «Рецензирование» панели инструментов и нажать кнопку «Исправления».

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

В параметрах пункта «Исправления» можно указать цветовую гамму, толщину и тип линий, а так же другие характеристики для вставки и удаления текста и изменения в таблицах.

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

Сохранение исправления

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

Проверка на наличие исправлений

Приложение Word 2010 обладает функцией проверки документа на наличие скрытого текста, примечаний, сносок и прочей информации.

Для вызова этой возможности нужно перейти в меню «Файл» к разделу «Сведения».

При нажатии на кнопку «Поиск проблем» нужно выбрать «Инспектор документов».

Функция предлагает указать параметры для проверки, а по окончанию анализа удалить исправления.

Удаление исправлений

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

Так же может понадобиться удаление примечаний соответствующей кнопкой группы функций «Примечания».

Опция Прямоугольный (Rectangular) запрашивает два противоположных угла для построения прямоугольника, который становится контуром подрезки. ОпцияМногоугольный (Polygonal) запрашивает точки, образующие по окончании их ввода замкнутый многоугольный контур, который не должен иметь самопересечений. В случае опцииВыбрать полилинию (Select polyline) нужно указать полилинию, состоящую только из прямолинейных сегментов и не имеющую самопересечений. Если полилиния не замкнута, то AutoCAD добавит к контуру замыкающий сегмент. ОпцияоБратная подрезка (Invert clip) переключает видимость: часть ссылки внутри контура становится невидимой, а вне контура - видимой.

Пример результата подрезки блоков приведен на рис. 8.48. Для удобства контур подрезки сделан видимым, хотя по умолчанию он невидим.

На рис. 8.49 показан результат применения инвертирования к контуру подрезки (та часть DWG-ссылки, которая оказалась внутри многоугольного контура, стала невидимой).

Управление видимостью и печатью контура подрезки осуществляется с помощью кнопки панелиСсылка (Reference) в ленте (см. рис. 8.41). Данная кнопка открывает подменю, в котором контуры подрезки блоков и DWG-ссылок можно сделать невидимыми или непечатаемыми.

8.3.3. Контекстное редактирование вхождений блоков и DWG-ссылок

Изучаемая версия системы AutoCAD предлагает еще один инструмент работы с блоками и DWG-ссылками - редактирование внешних ссылок и определений блоков через их вхождения в текущий чертеж (команда ССЫЛРЕД (REFEDIT)). Эта команда является морально устаревшей в связи с появлением редактора динамических блоков, поэтому рассмотрим ее коротко. Ее существование оправдывает ограничение, существующее у динамических блоков, - использовать в основном двумерные объекты (все вспомогательные ручки и символы операций располагаются в плоскостиZ =0).

Операция контекстного (по месту) редактирования затрагивает сложные связи внутри чертежа (для блоков) и связи с другими чертежами (для внешних ссылок), поэтому объем подобного редактирования не должен быть велик. Операция редактирования применима к массивам блоков, созданным командой МВСТАВИТЬ (MINSERT), но выполняется над первым объектом из массива, а затем автоматически распространяется на остальные.

Команде ССЫЛРЕД (REFEDIT) соответствуют кнопка панели инструментовСсылред (Refedit) (рис. 8.50) и одноименной панели ленты, а также пункт падающего менюСервис | Внешняя ссылка или блок для контекстного редактирования |

Редактирование вхождений (Tools | Xref and Block In-place Editing | Edit Reference In-Place).

Рис. 8.50. Панель инструментовСсылред

Перечислим этапы работы с командой ССЫЛРЕД (REFEDIT).

1. Выбрать объект одного из трех типов:

статический блок

динамический блок

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

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

Особняком стоит третий случай - если выбран динамический блок. Редактировать его определение напрямую слишком сложно, поэтому в этой ситуации система по динамическому блоку создаст новое определение статического блока с другим именем и будет выполнять редактирование этого определения.

2. С помощью кнопки убрать лишние объекты из рабочего набора, в который по умолчанию включены для редактирования все примитивы блока, кроме атрибутов, а с помощью кнопки- добавить нужные.

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

панели инструментовСсылред (Refedit) и подтвердить сохранение после дополнительного запроса системы.

Опытные пользователи 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 очень много и запомнить их все без практики невозможно. Для запуска обучения наберите:

Но делать это сейчас необязательно, в этой статье есть вся необходимая базовая информация и после ее прочтения вы уже сможете уверенно пользоваться 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

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

vim имя_файла

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

Поиск и замена в Vim

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

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

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

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

:%s/искать/заменить/g

Двоеточие запускает командную оболочку с командой 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. Это еще далеко не все его возможности, но теперь вы можете уверенно обращаться с редактором и забыть о nano. А вы уже пользуетесь Vim? Или другим редактором? Напишите в комментариях!

Еще немного информации по использованию Vim можно почерпнуть из видео:

Мало. Очень часто возникает необходимость внести изменения в блок, при этом не разрушая его целостность. Способов сделать это существует несколько.

Несколько способов, как редактировать блок в Автокаде:

1-й способ (самый быстрый): если блок присутствует на чертеже, то нужно щелкнуть по нему дважды ЛКМ.

Рис. 1. Один из способов вызова редактора блоков в AutoCAD.

2-й способ – воспользоваться командой «Редактор блоков», которая находится на вкладке «Вставка» → панель «Определение блока» (см. рис. 2).

Рис. 2. Команда AutoCAD «Редактор блоков».

3-й способ , который также считается рациональным – это воспользоваться командной строкой или динамическим вводом. Команда, отвечающая за редактирование, носит название БЛОКРЕД (см. рис. 3).

Рис. 3. Вызов Редактора блоков через динамический ввод.

Какой бы способ вы ни выбрали, результат будет один и тот же: откроется диалоговое окно, в котором необходимо выбрать блок для изменения. При этом предварительный просмотр помогает осуществить выбор быстрее (см. рис. 4).

Рис. 4. Диалоговое окно «Редактирование определения блока».

После этого откроется редактор блоков Автокад.

В AutoCAD редактор блоков – это дополнительная вкладка, которая появляется на ленте. Она предназначена непосредственно для изменения геометрии ранее созданного блока, присвоения ему параметров и операций, определяющих свойства и функции динамического изменения.

Рис. 5. Редактор блоков AutoCAD.

В редакторе блоков можно применять как команды рисования , так и редактирования . К примеру, команда «Масштаб» позволит изменить размер нашего объекта. Но для большей наглядности давайте добавим некоторые элементы к этому блоку, тем самым преобразуем конденсатор постоянной емкости в конденсатор электролитический поляризованный (ГОСТ 2.728-74). Для этого перейдем на вкладку «Главная» и воспользуемся стандартными примитивами.

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

Рис. 6. Команда «Закрыть редактор блоков» AutoCAD.

Появится диалоговое окно, в котором следует подтвердить внесенные изменения.

Рис. 7. Сохранение внесенных изменений в блок AutoCAD.

Как видите, в названии блока допущена ошибка. Самое время рассмотреть, как переименовать блок AutoCAD.

Как переименовать в Автокаде блок?

Имя блока не только должно быть уникальным, но и отображать суть создаваемого элемента чертежа. Если вы хотите работать быстро и извлекать максимальную пользу из AutoCAD, то примите это на заметку. Если вы изначально будете создавать блоки с нечитабельными именами (к примеру, «123»), то в дальнейшем будут возникать определенные сложности. Ведь количество блоков постоянно увеличивается и в результате просто возникнет путаница.

Чтобы изменить имя блока в Автокаде нужно в командной строке прописать «_rename».