Почему vim-airline неправильно отображает символы?

Я использую vim-airline, чтобы показать строку состояния внизу в редакторе vim.

Ниже мой файл .vimrc.local.

введите здесь описание изображения

и вот как выглядит моя строка состояния.

введите здесь описание изображения

Почему символы не отображаются должным образом?


person ashishjmeshram    schedule 11.06.2015    source источник


Ответы (3)


Ваш шрифт не отображает все символы Юникода, но это не проблема.

Вам нужно установить пропатченный шрифт. Инструкции можно найти в официальной документации Powerline. Предустановленные шрифты можно найти в репозитории powerline-fonts.

В противном случае вы можете изменить разделитель, отредактировав свой vimrc, лично у меня следующее:

" the separator used on the left side
let g:airline_left_sep=''
" the separator used on the right side 
let g:airline_right_sep=''

Да, это не разделитель. Это визуализирует следующее (с соляризованными цветами):

авиакомпания без разделителя

person maggick    schedule 11.06.2015
comment
Я установил шрифты, как указано в документации. Все еще не работает. Нужно ли мне делать что-то еще после установки шрифтов? - person ashishjmeshram; 12.06.2015
comment
Как я уже сказал, я не использую пропатченные шрифты. У меня нет ничего, кроме документации, чтобы помочь вам. - person maggick; 15.06.2015

Я на Kubuntu, и вот как я настроил его для vim в терминале, а также для gvim.

  1. Установите шрифты powerline из репозитория Github, упомянутого пользователем maggick.
  2. Установите шрифт терминала на шрифт «Droid Sans Mono Slashed for Powerline».
  3. Запустите vim в этом терминале и перейдите в раздел справки авиакомпании:

    :help airline
    

Прокрутите вниз до раздела, показывающего символы Powerline, и скопируйте раздел:

" powerline symbols
let g:airline_left_sep = ''
let g:airline_left_alt_sep = ''
let g:airline_right_sep = ''
let g:airline_right_alt_sep = ''

(Не копируйте их отсюда, скопируйте их из справки vim в терминале)

  1. Откройте файл vimrc.local и вставьте туда строки.
  2. Установите шрифт в gvimrc.local на тот же шрифт, который вы выбрали в терминале:

    if has('gui_running')
        set guifont=Droid\ Sans\ Mono\ Slashed\ for\ Powerline
    endif
    

Запустите vim и gvim, и авиакомпания должна показывать правильные изображения в обоих случаях.

person pkout    schedule 10.12.2015
comment
Спасибо чувак. Вы действительно решаете это для меня. Только часть Droid Sans Mono Slashed для Powerline, которую я меняю на Droid Sans Mono Slashed для Powerline Regular, затем я изменил в set guifont=Droid\Sans\Mono\Slashed\for\Powerline, чтобы установить guifont=Droid\Sans\Mono\Slashed\ for \ Powerline \ Обычный - person Apit John Ismail; 28.02.2018

У меня была та же проблема, и я добавил:

set encoding=utf-8

на мой .vimrc решил проблему. Конечно, вам также необходимо подтвердить, что терминал также должен быть настроен для отображения UTF-8.

person Mario Chapa    schedule 19.10.2018