Powerline

出自 ArchWiki

Powerline 是 Vim 的状态行插件,并为其他几个应用程序提供状态行和提示符,包括 zsh、bash、fish、tmux、IPython、Awesome、i3 和 Qtile。

安装

安装 powerlinepowerline-fonts

注意: 安装 powerline-fonts 不会提供 powerline-fonts-gitAUR 中的任何修补字体

使用

Bash

将以下内容添加到你的 bashrc

~/.bashrc
powerline-daemon -q
POWERLINE_BASH_CONTINUATION=1
POWERLINE_BASH_SELECT=1
. /usr/share/powerline/bindings/bash/powerline.sh

关闭并重新打开你的终端,它应该可以工作了。如果不行,请查看 Powerline bash 提示符 使用说明,以确保它没有更改。

提示: 如果你不想关闭并重新打开终端,你也可以之后 source 它。

Zsh

将以下内容添加到你的 zshrc

~/.zshrc
powerline-daemon -q
. /usr/share/powerline/bindings/zsh/powerline.zsh
注意: 如果你正在使用 oh-my-zsh,你应该删除或注释掉你的 ~/.zshrc 文件中的 ZSH_THEME=oh-my-zsh theme" 行。 同样,如果你正在使用 grml-zsh-config,请不要忘记在上面添加内容之前插入 prompt off

Fish

将以下内容添加到你的 config.fish

~/.config/fish/config.fish
set fish_function_path $fish_function_path "/usr/share/powerline/bindings/fish"
source /usr/share/powerline/bindings/fish/powerline-setup.fish
powerline-setup

重启你的终端模拟器,它必须可以工作。

Tmux

将以下内容添加到你的 tmux.conf

~/.config/tmux/tmux.conf
 source /usr/share/powerline/bindings/tmux/powerline.conf
注意
  • 只需将其添加到 tmux 配置文件中就足够了:无需向 shell 配置文件中添加任何内容。
  • 注意 tmux 配置文件中是否有冲突的样式(即 window-status-format)。

Vim

安装 vim-powerline

注意: 如果你安装了多个版本的 python,请将 let g:powerline_pycmd="py3"let g:powerline_pycmd="py" 添加到你的 .vimrc
提示
  • 默认情况下,状态行(以及 Powerline)仅在打开多个窗口时出现。 要始终显示它,请使用 :set laststatus=2
  • 此软件包将 Powerline 安装到 /usr/share/vim/vimfiles/plugin,vim 配置为默认检查该目录,这意味着这将为所有用户在 vim 中安装 Powerline,并且可能需要额外的配置。 如果这不是你的本意,请考虑使用 vim 插件管理器,或者安装 powerline 软件包并将 set rtp+=/usr/share/powerline/bindings/vim 添加到你的 .vimrc

详细使用

有关详细的使用说明,例如配置你的系统以将 Powerline 与其他 shell、窗口管理器小部件等一起使用,请参阅 Powerline 文档使用部分

自定义

官方 Powerline 文档 指的是 powerline_root,对于 Arch Linux,它是以下路径

/usr/lib/python3.x/site-packages/powerline

要自定义 Powerline,请将默认配置复制到 $XDG_CONFIG_HOME/powerline/...。 然后编辑文件以符合你的喜好。

自定义 tmux 的 Powerline 示例

$ mkdir -p ~/.config/powerline/themes/tmux/
$ cp /usr/lib/python3.x/site-packages/powerline/config_files/themes/tmux/default.json ~/.config/powerline/themes/tmux/default.json

技巧与提示

替代安装方式

使用 python-pip

使用 Vim 插件管理器

有许多 Vim 插件管理器可用,它们能够安装和更新 Powerline,前提是你使用的 Vim 版本支持 Python,或者你安装了 python。 例如,使用 vim-plugAUR,将以下内容添加到你的 .vimrc 文件

~/.vimrc
call plug#begin('path/to/vim/plugins/directory')

Plug 'powerline/powerline'

call plug#end()

path/to/vim/plugins/directory 替换为实际目录,例如 ~/.vim/plugged,并在 vim 中运行 vim-plug 命令 :PlugInstall。 这将从 Powerline GitHub 页面 下载 Powerline 到指定的插件目录,并将其添加到 vim。

注意: Powerline 尚不支持 Neovim:请参阅 添加对 NeoVim 的支持

替代字体

文本控制台的精简字体集可在 powerline-console-fontsAUR 中找到。

替代软件包

目前已知 Powerline 的一种替代方案是 — Vim-airline。 它是 vim-plugins 的一部分,可以作为 vim-airline 单独安装。 可选地,安装 vim-airline-themes

注意:vim-airline 中,显示当前 git 分支依赖于 vim-fugitive。 vim-fugitive v2.4 做出了更改,破坏了此功能。 上游不会标记包含修复 vim-fugitive v2.4 兼容性的单个提交的新版本。 在此之前,如果你想查看当前的 git 分支,你必须:使用 vim-airline-gitAUR; 将 vim-fugitive 降级到 v2.3; 或者制作你自己的 vim-airline v0.9.0,并 cherry-pick 上游的修复提交。 如果你决定 cherry-pick,它不会干净地应用,因此你还需要修复它。

故障排除

字体:字形缺失

如果你安装了 powerline-fonts 但你注意到缺少字形,请确保你的 locale 已设置。 重新启动你的会话以查看更改。