Vim: Свой конфиг под судо
sudo -E vim /etc/some_conf_file
Как заставить Vim отображать русские символы, если локаль не UTF8?
set fileencoding=utf-8
set encoding=utf-8
set termencoding=utf-8
Перейти на строку при открытии
vim ~/.ssh/known_hosts +2
где ++2 - номер строки
Комбинации
- wdb - удалить слово находясь в любом месте слова
- 0w - переместиться к началу строки где есть текст
- ggcG - удалить все содержимое файла и включить режим редактирования
Управление
Перемещение курсора
h - переместить курсор в лево |
k - переместить курсор в вверх |
l - переместить курсор в право |
j - переместить курсор в вниз |
По строке |
0 - переместиться к началу строки |
$ - переместиться к концу строки |
e - переместиться к последнему символу след. слова |
b - переместиться к первому символу пред. слова |
w - переместиться к началу след. слова |
b - переместиться к началу пред. слова |
По экрану |
gg - переместиться к началу файла |
G - переместиться к концу файла |
H - переместить курсор к началу экрана |
L - переместить курсор к концу экрана |
M - переместить курсор к середине экрана |
Ctrl+f - переместиться к концу экрана |
Ctrl+b - переместиться к концу экрана |
:14 - переместиться к строке 14. Не работает в st3 |
Редактирование текста
Удаление |
x - удалить символ под курсором |
X - удалить символ до курсора |
dd - удалить строку под курсором |
dw (delete word) - удалить от места под курсором до конца слова |
de - удалить от места под курсором до конца слова НЕ включая след. пробел |
d$ (или D) - удалить от места под курсором до конца строки |
d^ - удалить от места под курсором до начала строки |
Вставка |
i - вставить текст под курсором |
a - вставить текст перед курсором |
I - вставить текст в начале строки |
A - вставить текст в конце строки |
o - вставить пустую строку ниже текущей |
O - вставить пустую строку выше текущей |
Замена |
r - заменить символ под курсором |
R - заменить несколько символов под курсором |
Изменение |
ce - изменить слово от символа под курсором до конца слова |
cb - изменить слово от символа под курсором до начала слова |
Поиск
Поиск слов |
/ - включение режима поика |
n - след. вхождение поиска |
N - пред. вхождение поиска |
Поиск парных скобок |
% - ищет парную скобку под курсором |
Копирование и вставка
yw - копировать слово в буфер |
p - вставить данные из буфера, перед курсором |
P - вставить данные из буфера, после курсора |
Найти и заменить
:s/foo/bar - заменит первое найденое foo на bar |
:s/foo/bar/g - заменит найденое foo на bar во всей строке |
:%s/foo/bar - заменит первое найденое foo на bar в каждой строке |
:%s/foo/bar/g - заменит найденое foo на bar во всем файле |
:%s/foo/bar/gc - поиск и замена с подтверждением.
- y - да, заменить
- n - нет, не заменять
- a - заменить все
- q - отменить замену
- l - заменить и выйти
|
Сохранение файла
:w TEST - Сохранить файл с именем TEST |
:wq - Сохранить и выйти |
Сохранить фрагмент |
v :w TEST - выделить фрагмент текста и сохранить в файл TEST |
Вставить содержимое файла под курсор |
:r TEST - вставит содержимое файла TEST |
:r !ls - вставит вывод команды под курсор |
Установки и параметры
:set ic - игнорировать регистр при поиске |
:set noic - НЕ игнорировать регистр при поиске |
:set number - показать номера строк |
:set nonumber - НЕ показывать номера строк |
Разное
Обычный режим
Ctrl+a - Увеличивает число на 1 |
Ctrl+x - Уменьшает число на 1 |
Ctrl+o - переместиться на пред. положение |
Ctrl+i - переместиться на след. положение |
q: - история команд |
q/ - история команд + поиск |
J - "Склеивает" строку с пред. строкой |
Ctrl+g - информация о файле, название, положение |
Отмена изменений |
u - отменить последнее действие |
U - отменить несколько последних действий. Не работает в st3 |
</tr>
Ctrl+R - отменить отмену. Не работает в st3 |
:! - выполнить внешнюю команду |