VimTouch и встраивание plugins
Когда нет места в каталоге boot
Интеграция социальных сетей в Jekyll
Особенности при написании регулярных выражений в vim
Специфика использования символов. Причем, некоторые символы нужно экранировать, другие экранирования не требуют. Это напрягает с непривычки, однако.
(, )
- группировка. При использовании необходимо экранировать обратным слешем \
\1, \2, ...
- обозначение найденных групп в выражении (первая, вторая, и т.д.). Можно использовать в том же выражении при поиске,
а не только при замене
Примеры:
/\(o\)\1
- найдет идущие подряд буквы o
, например, в слове вoo
бще
+
- символ повторения группы “от 1 и более вхождений”. При использовании необходимо экранировать обратным слешем \
.
Интересно, что схожий символ повторения *
“от 0 и более вхождений” используется без экранирования
Примеры:
/\s*
- поиск любого количества пробелов или табуляций от 0 и более
/\s\+
- будет искать от одного и более пробельных символов.
Для поиска и вставки символа конца строки необходимо использовать символ \r
Для того чтобы использовать регулярные выражения в стандартной нотации перед выражением необходимо ввести \v
.
Поиск двух букв оо
запишется так:
/\v(o)\1
Для тех, кому привычнее стандартное написание регулярных выражений полезно добавить в настроечный файл .vimrc
(или что у вас там вместо него) следующие строки:
nnoremap / /\v
vnoremap / /\v
так же полезно добовить следующее:
set ignorecase " умный поиск. Если вы ищете строку, которая состоит только из прописных букв, то поиск будет регистро-независимым, но если один или больше символов в строке заглавные, то искать будет с учетом регистра. Чаще всего это то, что нужно"
set smartcase
set gdefault " применяет замены к строкам"
Последняя строка позволит опускать символ g
в конце выражения поиска и замены
В случае, когда поиск и замену необходимо выполнить сразу в нескольких файлах, следует использовать команды:
:argdo
- обработать все файлы в списке аргументов
:bufdo
- все буферы
:tabdo
- все табы
:windo
- все окна в текущем табе
Команда:
:arddo %s/pattern/replace/ge | update
произведет замену во всех файлах из списка аргументов и сохранит их. В случае, если ничего не найдено, то сообщение об этом будет подавлено суфиксом ge
:arg
- посмотреть список аргументов
:arg **/*.cpp
- сформировать список аргументов (показан рекурсивный обход текущего каталога)
:argadd **/.*h
- добавить в список аргументов
Мышки и алкоголь
В далекие, далекие времена, можно сказать, легендарные. Когда солнце светило ярче, жизнь была веселее, а телевизоры вообще — черно-белые. В одной отдельно взятой квартире жил мужик, а телевизор у него показывал, только если капнуть водкой на определенный контакт. Капнет и смотрит телек три дня, а потом опять нужно было капать, что б, скажем посмотреть футбол или программу Время.