在 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>
我正在使用 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>