在Vim终端灯线状态栏中显示►字符

时间:2015-07-14 11:59:31

标签: linux vim encoding utf-8 powerline

我正在使用SUSE Linux Enterprise Desktop 11(x86_64),我在终端中使用Vim作为编辑器。我最近从https://github.com/itchyny/lightline.vim安装了一个名为 lightline 的插件。该插件使用特殊字符使状态行看起来像这样:

enter image description here

>酒吧的一部分实际上是►字符,就像它旁边的方形一样。问题是,就我而言,条形图看起来像这样:

enter image description here

虽然编码设置为UTF-8且系统上安装了所有必需的字体(电源线字体),但►字符显示不正确。在这种情况下,终端上设置的字体是Powerline的Liberation Mono。

我的vimrc中的Lightline设置:

set encoding=utf-8
scriptencoding utf-8

let g:lightline = {
   \ 'colorscheme': 'wombat',
   \ 'separator': {'left': "\u25B6", 'right': ''},
   \ 'subseparator': { 'left': '', 'right': ''}
   \ }

我也试过像这样复制►字符

let g:lightline = {
       \ 'colorscheme': 'wombat',
       \ 'separator': {'left': "►", 'right': ''},
       \ 'subseparator': { 'left': '', 'right': ''}
       \ }

但它以同样的方式表现出来。

此外,在任何应该有空格的地方都存在^字符的问题。

有没有解决方案?

2 个答案:

答案 0 :(得分:0)

问题在此线程stackoverflow.com/questions/7223309/中有所解释。它说如果stl和stlnc具有相同的值,它们将被替换为^^^。当你将stlnc和空格用于stl时,它可以工作。

答案 1 :(得分:-1)

以下是我的my_configs.vim for lightline,它在我的Fedora 26系统中运行良好。

let g:lightline = { 
       \ 'colorscheme': 'wombat',
       \ }

let g:lightline = { 
       \ 'colorscheme': 'wombat',
       \ 'active': {
       \   'left': [ ['mode', 'paste'],
       \             ['fugitive', 'readonly', 'filename', 'modified'] ],
       \   'right': [ [ 'lineinfo' ], ['percent'] ]
       \ },
       \ 'component': {
       \   'readonly': '%{&filetype=="help"?"":&readonly?"\ue0a2":""}',
       \   'modified': '%{&filetype=="help"?"":&modified?"\ue0a0":&modifiable?"":"-"}',
       \   'fugitive': '%{exists("*fugitive#head")?fugitive#head():""}'
       \ },
       \ 'component_visible_condition': {
       \   'readonly': '(&filetype!="help"&& &readonly)',
       \   'modified': '(&filetype!="help"&&(&modified||!&modifiable))',
       \   'fugitive': '(exists("*fugitive#head") && ""!=fugitive#head())'
       \ },
       \ 'separator': { 'left': "\ue0b0", 'right': "\ue0b2" },
       \ 'subseparator': { 'left': "\ue0b1", 'right': "\ue0b3" }
       \ }   "" This is comment: I fotgot this line in my last post, just added

抱歉我的错误,我刚修好了这个配置。 如果你从https://github.com/chrissimpkins/Hack/releases安装了hack字体 并通过命令安装powerline-fonts" sudo dnf install powerline-fonts"在Fedora 26系统中,您可能希望将以下配置添加到您的 /etc/fonts/local.conf

<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "fonts.dtd">
<fontconfig>
  <alias>
    <family>Hack</family>
    <prefer>
      <family>PowerlineSymbols</family>
    </prefer>
  </alias>
</fontconfig>