Ответ 1
Попробуйте перезагрузить документ, используя:
:e! ++enc=utf8
Если это сработает, вы можете изменить настройки fileencodings
в вашем .vimrc.
Я работаю на веб-страницах, в которых используются неанглийские скрипты время от времени, большинство из них использует кодировку utf-8, VIM и Gvim не отображают символы UTF-8 правильно.
Использование VIM 7.3.46 для Windows 7 64 бит, с set guifont=Monaco:h10
в _vimrc
Есть ли способ исправить это?
Обновление: я googled вокруг и нашел, что set guifontwide
действует как второй резерв для региональных языков.
Я добавил следующие строки в _vimrc, и большинство моих проблем были решены.
set enc=utf-8
set fileencoding=utf-8
set fileencodings=ucs-bom,utf8,prc
set guifont=Monaco:h11
set guifontwide=NSimsun:h12
Вышеупомянутый шрифт NSimsun работает на китайском языке. Проблема в том, что я не знаю, как они получили название шрифта для работы с VIM, Courier New
упоминается как Courier_New
также NSimsun
нигде в каталоге шрифтов. Шрифт, который я хочу использовать, - Latha
Но я не знаю, как его использовать в файле _vimrc. set guifontwide=latha:h12
или set guifontwide=latha:h12
не работает.
Если я успешно установил guifontwide
в Latha
, тогда моя проблема будет решена, как это сделать?
Попробуйте перезагрузить документ, используя:
:e! ++enc=utf8
Если это сработает, вы можете изменить настройки fileencodings
в вашем .vimrc.
Вы пробовали
:set encoding=utf-8
:set fileencoding=utf-8
?
В M $Windows gvim не позволит вам выбирать немоноширинные шрифты. К сожалению, Latha - это немоноширинный шрифт.
Существует способ взлома: Используя FontForge (вы можете загрузить двоичный файл Windows из http://www.geocities.jp/meir000/fontforge/), чтобы отредактировать Latha.ttf и пометить его как моноширинный шрифт. Выполнение следующего:
Удачи!
Является ли эта проблема решена тем временем?
У меня возникла проблема, что gvim не отображал все символы Unicode (но только подмножество, включая умлауты и акцентированные символы), тогда как :set guifont?
был пуст; см. мой вопрос. После прочтения здесь, установив guifont
на разумное значение, зафиксировало это для меня. Однако мне не нужны символы за пределами 2 байта.
Я не смог получить какие-либо другие шрифты, которые я установил, чтобы отображаться в моем редакторе Windows GVim, поэтому я просто переключился на Lucida Console
, который имеет, по крайней мере, несколько лучшую поддержку UTF-8. Добавьте это в конец вашего _vimrc
:
" For making everything utf-8
set enc=utf-8
set guifont=Lucida_Console:h9:cANSI
set guifontwide=Lucida_Console:h12
Теперь я вижу по крайней мере некоторые символы UTF-8.
Если сюда придут японские люди, добавьте следующие строки в ~/.vimrc
set encoding=utf-8
set fileencodings=iso-2022-jp,euc-jp,sjis,utf-8
set fileformats=unix,dos,mac