Данная статья будет посвящена настройке vim, в которой я поделюсь своим «скромным» пониманием того, каким должен быть текстовый редактор, чтобы в нем было удобно/приятно/легко (нужное подчеркнуть) писать код также, как это сейчас возможно во всевозможных IDE типа PyCharm, SublimeText и т.п.
Весь процесс постараюсь описать как можно более подробно, чтобы вопросов по мере чтения для начинающих осваивать vim возникало как можно меньше.
Читать полностью »
Метка «vimscript»
VIM как IDE для разработки на Python
2014-06-02 в 18:40, admin, рубрики: python, vim, vimscript, метки: .vimrc, python, vim, vimscriptПока Vim пишет код за Вас…
2013-07-21 в 5:32, admin, рубрики: plugin, python, vim, vimscript, метки: plugin, python, vimscript
Не буду долго распинаться на тему того, насколько велик и могуч Vim — это уже давно и достоверно известно. Кто-то даже утверждает, что «Практически любая строка латинских букв является синтаксически верной командой для vi».
Иногда программист настолько тонко познает темную сторону силы, что Vim начинает писать код вместо него, оставляе время для медитации и прочих полезных вещей. Одним из таких полезных дел может быть написание очередного супер полезного плагина. Последующие строки сего скромного трактата повествуют именно об этом.
Замена " на ‘ и обратно одним кликом
2013-03-08 в 19:42, admin, рубрики: vim, vimscript, метки: vim, vimscriptДобавляем в .vimrc:
function! s:ToggleQuote()
let q = searchpos("'", 'n', line('.'))
let qb = searchpos("'", 'bn', line('.'))
let dq = searchpos('"', 'n', line('.'))
let dqb = searchpos('"', 'bn', line('.'))
if q[0] > 0 && qb[0] > 0 && (dq[0] == 0 || dq[0] > q[0])
execute "normal mzcs'"`z"
elseif dq[0] > 0 && dqb[0] > 0
execute "normal mzcs"'`z"
endif
endfunction
nnoremap <silent>' :<C-U>call <SID>ToggleQuote()<CR>
Если курсор переместить внутрь кавычек и нажать ', то кавычки поменяются на двойные/одинарные.
ps. скрипт использует vim-surround.