2015-10-16 4 views
0

Я использую XTERM эмулятор в моем archlinx, конфигурация Xresource заключается в следующем:Xterm конфигурация

XTerm*locale: true 
Xterm*faceName: Monaco:antialias=true 
XTerm*faceNameDoublesize: WenQuanYi micro hei:antialias=true 
XTerm*background: black 
XTerm*foreground: gray 

Я китайский, поэтому я XTerm*faceNameDoublesize на китайский шрифт, но когда я использовал vim-airline plugin символы в строке состояния не может показать, как это:

и это:

let g:airline_left_sep = '▶' 
let g:airline_symbols.branch = '⎇' 

(Символы выше это не может быть отображена в XTerm)

Я использовал другой эмулятор терминала, чтобы сделать это, и это было нормально, так что я думаю, что мой Xterm это неправильно, но я не могу найти почему.

+0

Кажется, проблема с шрифтами. Попробуйте [this] (https://powerline.readthedocs.org/en/master/installation.html#patched-fonts), а затем поставьте 'let g: airlines_powerline_fonts = 1' в свой .vimrc. Надеюсь, это поможет. – ryuichiro

+0

'uxterm' не поддерживает правильные символы по умолчанию? – Jason

ответ

0

Основная проблема заключается в том, что xterm использует единственный шрифт (а не набор шрифтов), и если специальные символы отсутствуют в шрифте, они не будут отображаться в соответствии с назначением.

Однако это не вопрос, заданный здесь. Скорее всего, это «Как я могу сделать плагин работать по назначению».

Комментарий g:airline_powerline_fonts = 1, является ключом, но неполным. Ссылаясь на vim-airline FAQ, мы находим расплывчатое утверждение:

Добавление Пусть г: airline_powerline_fonts = 1 к вашему vimrc автоматически заселить г: airline_symbols словарь с соответствующими глифов шрифта для различных символов.

Я нашел несколько связанных вопросов по этой теме, но все они были вырезаны/вставляются из FAQ, поэтому я не буду упоминать их.

На самом деле, чтение исходного кода (init.vim) дает лучшее объяснение (запись в FAQ не полезна). Что делает исходный код: инициализирует плагин для Unicode или ASCII-значений для различных специальных символов, в зависимости от переменной g:airline_powerline_fonts. В вопросе OP он, по-видимому, установил значения после инициализации плагина, что слишком поздно для того, чтобы переменная-настройка была полезна. Для правильной интеграции с плагином его должен делать что-то похожее на плагин, учитывая эту переменную.