- Основные команды текстового редактора VI / VIM
- Основные режимы работы.
- Перемещение по файлу
- Ввод текста
- Удаление и вставка
- Отмена изменений
- Поиск
- Выход
- Справка
- ИТ База знаний
- Полезно
- Навигация
- Серверные решения
- Телефония
- Корпоративные сети
- Как пользоваться vim в Linux
- Текстовый редактор Vim
- Командный режим и его возможности
- Записки программиста
- Моя шпаргалка по работе в Vim
Основные команды текстового редактора VI / VIM
Текстовый редактор vim, созданный на основе более старого vi. Один из мощнейших текстовых редакторов с полной свободой настройки и автоматизации, возможными благодаря расширениям и надстройкам. По умолчанию входит в состав любого дистрибутива Linux.
Открываем файл с помощью vi / vim:
Основные режимы работы.
«Обычный режим» — перемещение по файлу, стирание текста и другие редактирующие функции. Это — основной режим, только из него можно сразу перейти в другие режимы. Для возврата в основной режим из любого другого режима:
«Режим ввода» — ввод текста. Как только завершается ввод текста, принято сразу возвращаться в обычный режим. Заметьте, что стирание и ввод текста происходит в двух разных режимах. Переход в него из обычного режима:
«Командный режим» — Команды (операции с файлом, поиск и замена, настройка редактора…). Переход в него из обычного режима:
«Режим поиска» — ввод поискового запроса. Переход в него из обычного режима
«Визуальный режим» — режим выделения текста:
Перемещение по файлу
После загрузки Vim, на экране вы увидите часть загруженного вами текстового файла. Загрузившись, Vim находится в «командном режиме» — один из основных режимов. Это значит, что если вы нажмете клавишу (строчная L), вместо появления «l» на месте курсора вы увидите, что курсор сдвинулся на один символ вправо. В командном режиме знаки, набираемые на клавиатуре, используются как команды для Vim, а не как помещаемые в текст символы. Команды перемещения — один из наиболее важных типов команд. Вот некоторые из них:
Ввод текста
Следующие команды переводят редактор в режим ввода:
Удаление и вставка
Ниже перечислены основные комманды удаления и вставки текста:
Отмена изменений
Поиск
Перейти на строку:
Выход
Есть еще пара команд, которые вам необходимо знать:
В этой статье описаны основные возможности, необходимые для работы. Практически во все дистрибутивы Linux входит учебник по работе с редактором, — просто введите в командной строке команду vimtutor.
Справка
Для вызова справки (помощи) о редакторе введите в терминале команду:
Источник
ИТ База знаний
Курс по Asterisk
Полезно
— Узнать IP — адрес компьютера в интернете
— Онлайн генератор устойчивых паролей
— Онлайн калькулятор подсетей
— Калькулятор инсталляции IP — АТС Asterisk
— Руководство администратора FreePBX на русском языке
— Руководство администратора Cisco UCM/CME на русском языке
— Руководство администратора по Linux/Unix
Навигация
Серверные решения
Телефония
FreePBX и Asterisk
Настройка программных телефонов
Корпоративные сети
Протоколы и стандарты
Как пользоваться vim в Linux
Как редактировать файлы через консоль?
4 минуты чтения
Сегодня в статье будут кратко описаны главные функции текстового редактора Vim – данный редактор очень часто является самым простым способом отредактировать конфиг\текстовый файл, но он обладает не самым дружелюбным интерфейсом. Давайте разберём основные моменты.
Мини — курс по виртуализации
Знакомство с VMware vSphere 7 и технологией виртуализации в авторском мини — курсе от Михаила Якобсена
Текстовый редактор Vim
Этот текстовый редактор умеет работать в нескольких режимах: режиме вставки, командном режиме и «ex mode» режиме (режим последней строки). Сразу после открытия файла с помощью команды vim %file_name% редактор запуститься в так называемом «командном режиме» — ввод текста будет недоступен, Vim будет воспринимать только команды. Для переключения в режим вставки необходимо нажать «i» – у вас появится возможность редактировать текст. После того как все манипуляции будут завершены, вам необходимо будет перейти в режим последней строки и дать команду сохранить\выйти\сохранить и выйти и так далее – для этого необходимо: если находитесь в командном режиме нажать «:» (двоеточие) и ввести команду, а если находитесь в режиме вставки – сначала нужно нажать Escape и затем нажать двоеточие.
Командный режим и его возможности
В командном режиме доступно очень большое количество команд, с полным списком которых можно ознакомиться по ссылке: https://www.fprintf.net/vimCheatSheet.html, я же приведу здесь только самые часто используемые и полезные.
Самое главное, что нужно запомнить – это клавиши, используемые для перемещения по тексту – это h, j, k, l.
- h — сдвиг на один символ влево
- j сдвиг на один символ вниз
- k сдвиг на один символ вверх
- l сдвиг на один символ вправо
Кроме того, есть возможность перемещаться на одно слово вперед или назад – важно помнить, что словом является нечто вида «aesr1001k», то есть без дефиса и прочих разделительных знаков – «aesr-1001k» – это будет восприниматься редактором как два слова. Итак, для перехода на одно слово вперед нужно нажать «w», а для перехода назад – «b». Не очень интуитивно, не правда ли?:)
Если вам нужно что-то копировать – в Виме это делается достаточно просто – для этого нужно сначала переключиться в режим редактирования текста (клавиши «V» (выделение целых строк),»v»(посимвольное выделение) или «Ctrl-v»(блочное выделение) – после переключения можно будет выделять текст используя кнопки описанные выше или же используя клавиши со стрелками. После выделения нужно нажать клавишу «y» для копирования фрагмента в буфер обмена. Для вставки используются маленькая и большая «p» – маленькая для вставки после курсора и большая, соответственно, до.
Что касается удаления – здесь тоже есть свои «трюки»:
- d или x — удаление символов – курсор нужно ставить над нужным символом и нажимать указанную клавишу
- dw — удаление слова под курсором
- db — удаление предыдущего слова
- dd — удаление целой строки
- d$ — удаление части строки от позиции курсора до конца строки
- d^ — удаление части строки от позиции курсора до начала строки
Что если вам необходимо найти какую-нибудь информацию в тексте? Для этого вам потребуется переключиться в режим поиска, причём есть два режима поиска: при нажатии на «/» — включиться поиск в прямом направлении, и при нажатии на на «?» — включиться поиск в обратном направлении. После этого нужно ввести шаблон поиска – к примеру: :/ipaddress
Также возможен поиск и замена – данный режим включается командой :s, после чего вам необходимо будет указать слово для поиска и слово, на которое произойдет замена: :%s/192.168.1.1/192.168.2.2/ — в данном примере указана глобальная область поиска, и первый найденный сетевой адрес 192.168.1.1 будет заменен на 192.168.2.2. Если же необходимо заменить все найденные адреса на новые и запрашивать подтверждение при каждой замене – нужно добавить буквы «gc» — :%s/192.168.1.1/192.168.2.2/gc
У многих мог возникнуть вопрос – как же сделать столь привычное Undo, то есть отменить последние действие – для этого нужно воспользоваться командой «u» — но, к сожалению, отменить можно только последние действие. Если же нужно повторить отмененное действие (т.е сделать UnUndo) нужно нажать «Ctrl+r».
Важно – если отменен режим совместимости с Vi, то отменять можно большее количество действий.
Сохранение и выход
Теперь перейдем к важному моменту – сохранению и выходу. Тут есть несколько опций:
- :w сохранение изменений без выхода
- :wq или 😡 — старое доброе «сохранить и выйти»
- :q! — выход без сохранения изменений
- :w %file_name% — «сохранить как» в новый файл
На этом всё, помните, что Vim не является самым удобным редактором, и, если есть возможность – лучше установите что-то более привычное для вас. Но навыки использования Vim важны, так как часто это единственно доступный инструмент для редактирования конфигов на удаленных серверах.
Мини — курс по виртуализации
Знакомство с VMware vSphere 7 и технологией виртуализации в авторском мини — курсе от Михаила Якобсена
Источник
Записки программиста
Моя шпаргалка по работе в Vim
Самое главное — побороть боязнь белого листа. Я всегда говорю это себе, когда нужно начать работу над чем-то и не знаешь, как подступиться. Так что я решил не ломать голову над тем, о чем будет первая запись в этом блоге, а просто выложить небольшую шпаргалку по текстовому редактору Vim.
Шпаргалка эта уже не первый месяц хранится у меня в
/txt/vim.txt. За это время я успел составить довольно объемный справочник по основным командам Vim. При желании вы можете начать свое обучение работе с Vim с этого поста.
/.vimrc
Можно редактировать файлы через сеть, например
:e ://user@host/path/to/the/file.txt
:Ex или :e ./ — файловый менеджер
== Основы ==
hjkl перемещение в разные стороны
i режим вставки
I добавление в начало строки
a режим добавления
A добавление в конец строки
o добавить строку сразу за текущей
O добавить строку перед текущей
R писать поверх имеющегося текста
u, :u[ndo] отмена предыдущего действия (undo)
CTR-R, :red[o] отмена отмены предыдущего действия (redo)
dd вырезать (удалить) строку
cc удалить и начать редактирование
yy копировать строку
p вставить из буфера обмена
d удалить n+1 строку
y скопировать n+1 строку
ESC перейти в режим просмотра
DEL удалить следующий символ
: перейти на строку #n
% перейти к парной скобке
:e **/filename.c редактировать файл (с поиском по имени)
:w [fname] записать изменения
:wa сохранить изменения во всех файлах
:q выйти из редактора
:q! выйти из редактора, не сохраняя изменения
:color выбор цветовой схемы. цветвые схемы:
/usr/local/share/vim/vim72/colors/*.vim
:pwd текущий каталог
:cd [path] перейти в другой каталог
:!команда выполнить команду — man, git, и так далее
стрелочками веерх и вниз можно автодополнять
команды и искать по истории
CTR+p или CTR+n автоматическое дополнение текста
(в режиме редактирования)
CTR+r,=, вставить выражение, например 5*2 — 3
(в режиме редактирования)
CTR+u, CTR+d Page Up / Page Down
CTR+y, CTR+e Перемотка вверх/вниз без движения курсора
== Подсветка синтаксиса ==
:syntax on включить подсветку
:syntax off выключить подсветку (по умолчанию)
== Перенос строк ==
:set wrap разрешить word wrap (по умолчанию)
:set nowrap запретить word wrap
== Печать ==
:ha[rdcopy] распечатать документ
:set printoptions=duplex:off отключить двустороннюю печать
== Сворачивание ==
zc свернуть блок
zo развернуть блок
zM закрыть все блоки
zR открыть все блоки
za инвертирование
zf см :set foldmethod=manual
:set foldenable включить свoрачивание
:set foldmethod=syntax сворачивание на основе синтаксиса
:set foldmethod=indent сворачивание на основе отступов
:set foldmethod=manual выделяем участок с помощью v и говорим zf
:set foldmethod=marker сворачивание на основе маркеров в тексте
:set foldmarker=bigin,end задаем маркеры начала и конца блока
== Маркеры ==
ma установить локальный маркер a
mB установить глобальный маркер B
`c перейти к локальному маркеру c
`0 вернуться на позицию, на которой закончили
работу при закрытии vim
:marks просмотр маркеров
set viminfo=’1000,f1 маркеры пишутся в
/.viminfo, восстанавливаясь
при следующем запуске vim. маркер » хранит
последнюю позицию курсора в файле
== Сессии ==
mksession file.session сохранить текущую сессию
source file.session восстановить ранее сохраненную сессию
== Макросы ==
qa записать макрос с именем a
q в режиме записи макроса: закончить запись
@a выполнить макрос с именем a
@@ повторить последний макрос
== Регистры ==
«ayy скопировать строку в регистр a
«bdd вырезать строку и поместить в регистр b
«С2d вырезать три строки и дописать в конец
регистра C
:reg [name1][name2][. ] просмотреть содержимое регистров
== Выделение ==
v + hjkl выделение текста
SHIFT + v выделить строку
CTR + v выделение прямоугольника
p вставить
y копировать
d удалить
gu к нижнему регистру
gU к верхнему регистру
== Отступы ==
[#]> сдвинуть выделенное вправо
[#] > сдвинуть строку вправо
[#] gt перейти на таб #n
gt следующий таб
gT предыдущий таб
:tabm +1 переместить таб вперед на одну позицию
:tabm -1 переместить таб назад на одну позицию
:tabm 2 переместить таб на заданную позицию
(нумерация начинается с нуля)
== Работа с окнами ==
:split горизонтальное разбиение
:vsplit вертикальное разбиение
Ctr+W, затем
с закрыть окно
+- изменение высоты текущего окна
<> изменение ширины текущего окна
= установить равный размер окон
hjkl или стрелочки перемещение между окнами
== Проверка орфографии ==
mkdir -p
/.vim/spell
wget http://ftp.vim.org/vim/runtime/spell/ru.koi8-r.sug
wget http://ftp.vim.org/vim/runtime/spell/ru.koi8-r.spl
wget http://ftp.vim.org/vim/runtime/spell/en.ascii.sug
wget http://ftp.vim.org/vim/runtime/spell/en.ascii.spl
:set spell spelllang=ru,en включить проверку орфографии
:set nospell выключить проверку орфографии
]s следующее слово с ошибкой
[s предыдущее слово с ошибкой
z= замена слова на альтернативу из списка
zg good word
zw wrong word
zG ignore word
== Работа с кодировкой ==
e ++enc= Редактирование файла в . кодировке
w ++enc= Сохранить файл в новой кодировке
set fileencodings=utf-8,koi8-r Список автоматически определяемых
кодировок в порядке убывания
приоритета
== Другое ==
:set [no]wildmenu При авто-дополнении в командной строке над
ней выводятся возможные варианты
:set list Отображать табуляцию и переводы строк
q: История команд
. Повторение последней команды
Более подробный материал об использовании текстового редактора Vim вы найдете в книге Изучаем редакторы vi и Vim, 7-е издание. Книга доступна как в бумажном, так и в электронном формате.
На этом пока все. Думаю, я буду время от времени редактировать эту шпаргалку, так что следите за PS в конце следующих постов.
Источник