100 команд vim, которые должен знать каждый программист

Oct 09, 2009 10:46

Оригинал взят из блога Юникс и другие
Поиск
/word Искать слово “word” сверху вниз ?word Искать слово “word” снизу вверх /jo[ha]n> Искать “john” или “joan” /\< the Искать слова, начинающееся на “the” /the\> Искать слова, заканчивающиеся на “the” /\< the\> Искать “the” /\< …. \> Искать слова из четырех символов /fred\|joe Искать “fred” или “joe” /\<\d\d\d\d\> Искать 4 цифры подряд /^\n\{3} Искать 3 пустые строки :bufdo /searchstr/ Искать во всех открытых файлах  
Замена
:%s/old/new/g Заменить все вхождения “old” на “new” :%s/old/new/gw Заменить все вхождения “old” на “new” с запросом подтверждения :2,35s/old/new/g Заменить все вхождения “old” на “new” между 2 и 35 строками :5,$s/old/new/g Заменить все вхождения “old” на “new” начиная с 5 строки и до конца файла :%s/^/hello/g Добавить “hello” в начало каждой строки :%s/$/Harry/g Добавить “Harry” в конец каждой строки :%s/onward/forward/gi Заменить “onward” на “forward” с учетом регистра :%s/ *$//g Убрать все пробелы :g/string/d Удалить все строки, содержащие “string” :v/string/d Удалить все строки, не содержащие “string” :s/Bill/Steve/ Заменить первое вхождение “Bill” на “Steve” в текущей строке :s/Bill/Steve/g Заменить все вхождения “Bill” на “Steve” в текущей строке :%s/\r//g Убрать символ возврата каретки (Такие тексты обычно приходят от windows-пользователей) :%s#>[^<]\+>##g Очистить текст от HTML-тегов :%s/^\(.*\)\n\1$/\1/ Удалить строки, повторяющиеся дважды Ctrl+a Увеличить число под курсором на единицу Ctrl+x Уменьшить число под курсором на единицу ggVGg? Преобразовать текст в Rot13 Регистр
Vu Перевести строку в нижний регистр VU Перевести строку в верхний регистр g~~ Инвертировать регистр vEU Перевести слово под курсором в верхний регистр vE~ Инвертировать регистр слова ggguG Перевести весь текст в нижний регистр :set ignorecase Регистронезависимый поиск :set smartcase Игнорировать регистр при поиске, если в искомом выражении нет символов верхнего регистра :%s/\<./\u&/g Перевести первую букву каждого слова в верхний регистр :%s/\<./\l&/g Перевести первую букву каждого слова в нижний регистр :%s/.*/\u& Перевести первую букву первого слова в каждой строке в верхний регистр :%s/.*/\l& Перевести первую букву первого слова в каждой строке в нижний регистр Чтение/запись файлов
:1,10 w outfile Записать в outfile с первой по десятую строки :1,10 w >> outfile Добавить в outfile с первой по десятую строки :r infile Вставить содержимое файла infile :23r infile Вставить содержимое файла infile после 23 строки Навигация по ФС
:e . Открыть встроенный файл-менеджер :Sex Разбить окно и открыть встроенный файл менеджер :browse e Графический файл-менеджер :ls Список буферов :cd .. Перейти в родительскую директорию :args Список открытых файлов :args *.php Открыть все файлы с расширением *.php :grep expression *.php Показать список файлов с расширением php, содержащих в имени expression gf Открыть файл с именем, равным слову, находящемуся под курсором Взаимодействие с ОС
:!pwd Выполнить команду pwd и вернуться !!pwd Выполнить команду pwd и вставить результат в редактор :sh Открыть шелл $exit Вернуться в редактор из шелла Выравнивание
:%!fmt Выровнять все строки !}fmt Выровнять все строки в текущей позиции 5!!fmt Выровнять следующие 5 строк Вкладки
:tabnew Создать новую вкладку gt Перейти на следующую вкладку :tabfirst Перейти на первую вкладку :tablast Перейти на последнюю вкладку :tabm n(position) Изменить порядок вкладок :tabdo %s/foo/bar/g Выполнить команду во всех вкладках :tab ball Поместить все открытые файлы во вкладки Разделение окна
:e filename Редактировать filename в текущем окне :split filename Разделить окно и открыть filename ctrl-w + стрелка ВВЕРХ Переместить курсор в верхнее окно ctrl-w ctrl-w Переместить курсор в следующее окно ctrl-w_ Максимизировать текущее окно ctrl-w= Подогнать окна по размеру 10 ctrl-w+ Увеличить текущее окно на 10 строк :vsplit file Вертикально разделить окно :sview file Разделить окно и открыть file только для чтения :hide Закрыть текущее окно :only Закрыть все окна, кроме текущего :b 2 Открыть #2 в текущем окне Автодополнение
Ctrl+n Ctrl+p (в режиме вставки) Дополнить слово Ctrl+x Ctrl+l Дополнить строку :set dictionary=dict Установить словарь Ctrl+x Ctrl+k Дополнение из словаря Метки
mk Пометить текущую позиция как k ‘k Перейти к метке k d’k Удалить все до метки k Сокращения
:ab mail mail@provider.org Определить mail как сокращение от mail@provider.org Отступы
:set autoindent Включить автоматическую расстановку отступов :set smartindent Включить “умную” расстановку отступов :set shiftwidth=4 Установить отступ равный 4 пробелам ctrl-t, ctrl-d Убрать/добавить отступ в режиме вставки << Добавить отступ >> Убрать отступ Подсветка синтаксиса
:syntax on Включить подсветку :syntax off Выключить подсветку :set syntax=perl Установить режим подсветки

vim

Previous post Next post
Up