PostgreSQL
coub
css
express.js
freeware
git
jquery
laravel
links
linux
macos
mysql
node.js
php
python
task1
ubuntu
vim
virtualbox
анекдот
игры
интересно
музыка
стихи
цитаты
vim
vim
vim
vim
macos
vim
Vim: скринкасты
October 29, 2013
Тут буду подкладывать ссылок на кладбища скринкастов по виму
- Vim Tutorial Videos - для начинающих, от базовых до очень интересных вещей, веселый автор
- Vimcasts.org - широко известный ресурс, просто тонны всяких vim-вкусняшек, обязательно к посещению
- Destroy All Software - ворованный каталог из 80 скринкастов одного очень толкового дядьки. Кроме вима также рассматриваются git, TDD, *nix и т.д. Каталог можно глянуть вот тут.
- udioica.blogspot.ru - это не совсем скринкасты, а анимированные gif-ки с решениями задач с vimgolf.com. Вообще-то я не уверен что это человек. Больше похоже на vim-терминатора. Я не представляю как это все можно запомнить.
Vim: перезагрузка ~/.vimrc налету
October 29, 2013
Очень неудобно бывает после правки .vimrc закрывать сессию полностью чтобы применить внесенные изменения. Можно этого избежать довольно легко:
# выполните в редакторе :echo $MYVIMRC чтобы понять что это за переменная source $MYVIMRCЧтобы было удобнее жить можно добавить пару команд покороче, например так:
" edit ~/.vimrc file command! RcEdit e $MYVIMRC " reload ~/.vimrc config command! RcReload source $MYVIMRC
Vim: поиск и замена строк в файле
October 22, 2013
Я пользуюсь этим в виме не часто пока и постоянно забываю как там танцуется эта замена, самый простенький вариант примерно такой: имеем файл пример с таким содержимым:
Интересный нюанс: чтобы заменить что-то с переводом строки \n придется использовать \r то есть примерно вот так
./folder1/folder2/file1.txt ./folder1/folder2/file2.txt ./folder1/folder2/file3.txt ./folder1/folder2/file4.txt ./folder3/folder5/file5.txt ./folder3/folder5/file6.txt ./folder3/folder5/file7.txt ./folder4/folder6/file8.txt ./folder4/folder6/file9.txt ./folder4/folder6/file10.txtДопустим нужно отрезать из каждой строки все что касается пути, то есть чтобы остались только имена файлов. Переходим в командный режим и выполняем
:%s/\.\/.*\///gcВыглядит довольно похабно, но в общем-то главное знать что искать. Синтаксис замены вообще примерно такой
:%s/serach-str/replace-str/gsearch-str - то что ищем, replace-str - то на что заменяем, просто в примере выше использовано регулярное выражение и слешей много из-за обычного скрина точки и слешей. Модификатор c в примере означает что каждое найденное совпадение и соответственно его замену нам надо будет подтвердить, иначе все найденное в файле будет молча заменено.
Интересный нюанс: чтобы заменить что-то с переводом строки \n придется использовать \r то есть примерно вот так
:%s/\n/ -- \r/gcЛибо как вариант, тоже самое
# чтобы ввести ^M жмем (прямо в строке набора команды) Ctrl+v - Enter :%s/\n/ -- ^M/gc
Vim: как отформатировать xml
October 21, 2013
Для этого понадобится установить xmllint
В .vimrc это будет выглядеть примерно так
# для ubuntu sudo apt-get install libxml2-utils
В .vimrc это будет выглядеть примерно так
command FormatXml execute "%!xmllint --format --recover - "После этого вызов в редакторе чтобы отформатировать текущий файл будет таким:
:FormatXmlДругие бинды на ваше усмотрение конечно.
Как ассоциировать файлы с macvim?
October 16, 2013
В случае если macvim установлен через brew например, то нельзя просто взять и в файндере обычным способом ассоциировать с ним файлы. Его просто нет в папке /Applications потому что он ставится куда-то в дебри /usr/local/Cellar/macvim
Если кто-то ещё не догадался то нужно просто сделать ссылку на него в приложениях
После этой процедуры macvim будет виден как обычное приложение.
Если кто-то ещё не догадался то нужно просто сделать ссылку на него в приложениях
ln /usr/local/Cellar/macvim/7.4-70/MacVim.app /Applications/MacVim.appСсылку мы делаем жесткую в этом случае, любознательные граждане могут полистать man ln
После этой процедуры macvim будет виден как обычное приложение.