- []
Словарь для VIM
Мой любимый словарик StarDict, оказалось имеет версию, не использующую XWindow. Тут то и появилось желание интегрировать эту версию с vim.
Качаем с официального сайта StarDict версию программы для коммандной строки (sdcv), распаковываем, собираем (у меня с этим проблем не возникло). Если у вас уже установлен StarDict, sdcv cам найдет словари. О том как подсунуть ему нужный словарь читаем тут: словари для StarDict. Консольная версия ищет словари там же.
Открываем ~/.vimrc в любимом редакторе (конечно же это vim) и добавляем нижеследующий скрипт.
Скрипт перевода слов для VIM
map <F3> :call TRANSLATE()<cr>
function TRANSLATE()
let a=getline('.')
let co=col('.')-1
let starts=strridx(a," ",co)
let ends = stridx(a," ",co)
if ends==-1
let ends=strlen(a)
endif
let res = strpart(a,starts+1,ends-starts)
let cmds = "sdcv -n " . res
let out = system(cmds)
echo out
endfunction
Теперь сохраняем, выходим из vim, открываем в нем английский текст, ставим курсор в начало слова и жмем <F3> (не знаю почему я выбрал эту клавишу - вроде удобно).
После этих действий в строке состояния vim появится перевод, а точнее вывод sdcv -n <слово для перевода> .
Наслаждаемся!

