Поиск |
[software] [catdoc] [tcl] [geography] [old things] | |||||||||||||||||
Немного о настройке VimРедактирование текста в разных кодировкахVim 6.x понимает тексты в разных кодировках. Кодировку можно указать при открытии файла (команды :edit и :split) с помощью опции ++enc=имя файл, где имя - любое имя кодировки известное вашему системному iconv.Простейший способ сделать перекодировку на лету - повесить команды перегрузки текущего файла как файла с разными кодировками на какие-нибудь кнопки. Вот так: map <F2> :e ++enc=cp1251 %<CR> map <F3> :e ++enc=utf-8 %<CR> map <F4> :e ++enc=ibm866 %<CR> map <F5> :e ++enc=koi8-r %<CR> set wildmenu set wcm=<Tab> menu Encoding.koi8-r :e ++enc=koi8-r<CR> menu Encoding.windows-1251 :e ++enc=cp1251<CR> menu Encoding.ibm-866 :e ++enc=ibm866<CR> menu Encoding.utf-8 :e ++enc=utf-8 <CR> map <F8> :emenu Encoding.<TAB> Автоматическое подхватывание правильного шрифта gvim в зависимости от локалиСледующий фрагмент взят из .vimrc Артема Чуприны." SetGuiFont() " Выставляет опцию 'guifont' согласно текущему состоянию локали или " переменной RESOURCE_NAME function! SetGuiFont () if has('x11') && has('gui_running') let resource_name = $RESOURCE_NAME if resource_name == '' if &encoding == 'koi8-r' let resource_name = 'KOI' elseif &encoding == '8bit-cp1251' let resource_name = 'WIN' elseif &encoding == 'utf-8' let resource_name = 'UTF' elseif &encoding == 'iso-8859-5' let resource_name = 'ISO' elseif &encoding == 'latin1' let resource_name = 'LAT' endif endif let v:errmsg = '' silent! new +r\ !xrdb\ -query exe 'silent! /^' . resource_name . '\*font:' if v:errmsg == '' s/\s*$// let fontname = matchstr(getline('.'), '\S\+$') if fontname != '' let &guifont = fontname endif endif q! endif endfunctionДля того чтобы функция находила правильный шрифт требуется поместить в .Xdefaults следующие ресурсы (или им подобные):: ==== 8< [!xrdb -q | egrep '^[a-z][a-z][a-z]*font:'] ==== iso*font: -rfx-fixed-medium-r-normal--14-*-*-*-*-*-iso8859-5 koi*font: -rfx-fixed-medium-r-normal--14-*-*-*-*-*-koi8-r lat*font: -misc-fixed-medium-r-normal--14-*-*-*-*-*-iso8859-1 utf*font: -misc-fixed-medium-r-normal--14-*-*-*-*-*-iso10646-1 win*font: -rfx-fixed-medium-r-normal--14-*-*-*-*-*-microsoft-cp1251 ==== >8 [!xrdb -q | egrep '^[a-z][a-z][a-z]*font:'] ==== |