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

Displaying ► character in Vim terminal lightline status bar

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



栏的 > 部分实际上是 ► 字符颜色,就像它旁边的方块一样。问题是,就我而言,栏看起来像这样:

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

我的 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': ''}
       \ }

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

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

有解决办法吗?

此线程 Whosebug 中解释了该问题。com/questions/7223309/。它说如果 stl 和 stlnc 具有相同的值,它们将被替换为 ^^^。当您为 stlnc 放置 * 并为 stl 放置空白时,它会起作用。

以下是我的 my_configs.vim 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 字体 并在 Fedora 26 系统中通过命令 "sudo dnf install powerline-fonts" 安装 powerline-fonts,您可能需要将以下配置添加到您的 /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>