пʼятницю, 30 січня 2015 р.

Использование меню в Vim для запоминания команд

Как известно, наши недостатки - это продолжение наших достоинств. Широкие возможности, гибкость, масса плагинов Vim‘а приводят к тому, что для его эффективного использования необходимо помнить множество команд и клавиатурных сокращений. Чтобы упростить себе процесс запоминания, я создал меню из часто используемых команд и указал соответствующие команды/сокращения. Например, фрагмент .gvimrc:
" Common commands
"
" Plugin 'fisadev/FixedTaskList.vim'
amenu User.TaskList\ (F2)    <F2>
" Plugin 'vim-scripts/YankRing.vim'
amenu User.YRShow\ (F3)     <F3>
" Vim common
amenu User.Clear\ search\ selection\ (<Leader>c)      <Leader>c

" Pad menu: Plugin 'fmoralesc/vim-pad'
amenu User.Pad.Pad\ list\ (:Pad\ ls)  <ESC>:Pad ls<CR>
amenu User.Pad.Pad\ new\ unnamed\ (:Pad\ new) <ESC>:Pad new<CR>

" vim:noexpandtab


В меню User я перечислил наиболее общие команды. Для файлов отдельных типов меню создаю в соответствующих файлах, например для blog, ~/.vim/bundle/vim-xblogger/ftplugin/blog.vim:
amenu Blog.Insert\ code\ (:Rc\ file_name) :Rc
amenu Blog.Post\ (<Leader>post)  <Leader>post
amenu Blog.TOC\ (<Leader>t)  <Leader>t
amenu Blog.Check\ links\ (:make)  :make<CR>

К сожалению, в MacVim не работает использование <Tab> для задания правой части текста пункта меню:
:amenu &File.&Open<Tab>:e  :browse e<CR>
Поэтому я использую ().
После подобных настроек Vim будет иметь вид:



P.S. Для ленивых есть плагин для автоматического построения меню. Но, как и любое универсальное решение, он не очень удобен.

вівторок, 13 січня 2015 р.

Проверка правописания в сообщениях к git-commit’ам

При выполнении коммитов в git-репозитарий было бы неплохо выполнять поиск ошибок в описании к комииту. Для этого необходимо:
  1. Установить vim в качестве редактора git’а (если это еще не сделано):
    git config --global core.editor vim
    
  2. Создать файл ~/.vim/ftplugin/gitcommit.vim:
    setlocal spell
    " Underline misspelled words
    hi clear SpellBad
    hi SpellBad cterm=underline
    
    Я также настраиваю подчёркивание ошибок
  3. Не стоит использовать при коммитах параметр -m message. В этом случае git будет вызывать указанный реактор для редактирования сообщения.
После этих настроек можно использовать средства vim’а для проверки правописания в комментариях к коммитам: