Если мне неудобно - я удаляю все неудобства. В vim, если вы часто занимаетесь переводом - должен быть словарь. Теперь он есть! Посмотрим, что для этого нужно.

Словарь для 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 <слово для перевода> .

Наслаждаемся!

Последние изменения: %2010/%03/%22 %01:%Mar