Powerline
Powerline is a statusline plugin for Vim, and provides statuslines and prompts for several other applications, including zsh, bash, fish, tmux, IPython, Awesome, i3 and Qtile.
Installation
Install powerline and powerline-fonts from the official repositories
Usage
Bash
Add the following to your ~/.bashrc:
powerline-daemon -q POWERLINE_BASH_CONTINUATION=1 POWERLINE_BASH_SELECT=1 . /usr/share/powerline/bindings/bash/powerline.sh
Close and reopen your terminal and it should be working. If not, check the Powerline bash prompt usage instructions to ensure that it has not changed.
You can also enter:
source ~/.bashrc
if you do not want to close and re-open your terminal.
Zsh
Add the following to your ~/.zshrc:
powerline-daemon -q . /usr/share/powerline/bindings/zsh/powerline.zsh
ZSH_THEME="oh-my-zsh theme"
line in your ~/.zshrc. Similarly if you are using grml-zsh-config, do not forget to insert prompt off
before the above addition.Fish
Add the following to your ~/.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
Restart your terminal emulator and it must work.
Tmux
Add the following to your ~/.tmux.conf:
source /usr/share/powerline/bindings/tmux/powerline.conf
Vim
Install powerline-vim
let g:powerline_pycmd="py3"
or let g:powerline_pycmd="py"
to your .vimrc
.:set laststatus=2
/usr/share/vim/vimfiles/plugin
, which vim is configured to check by default, meaning this will install Powerline in vim for all users and may require additional configuration. If this is not intended, consider either using a vim plugin manager, or installing the powerline package and adding set rtp+=/usr/share/powerline/bindings/vim
to your .vimrc
.Detailed Usage
For detailed usage instructions, such as configuring your system to use Powerline with other shells, window manager widgets, etc., please refer to the Usage section of the Powerline documentation.
Customizing
The official Powerline documentation refers to powerline_root
, which for Arch Linux is the following:
/usr/lib/python3.x/site-packages/powerline
To customize Powerline, copy a default configuration to $XDG_CONFIG_HOME/powerline/...
. Then edit the file to your liking.
Example to customize Powerline for tmux:
$ mkdir -p ~/.config/powerline/themes/tmux/ $ cp /usr/lib/python3.9/site-packages/powerline/config_files/themes/tmux/default.json ~/.config/powerline/themes/tmux/default.json
Miscellaneous
Alternative Installation
Using python-pip
- Install python-pip from the official repositories
- Please refer to the Powerline installation guide for additional python-pip instructions
Using a vim plugin manager
There are many vim plugin managers available which are able to install and update Powerline, assuming you are using a version of vim with Python support or you install python. For example, using vim-plugAUR from the AUR, add the following to your .vimrc
file:
~/.vimrc
call plug#begin('path/to/vim/plugins/directory') Plug 'powerline/powerline' call plug#end()
Substitute path/to/vim/plugins/directory
with the actual directory, such as ~/.vim/plugged
, and run the vim-plug command :PlugInstall
within vim. This will download Powerline from the Powerline GitHub page to the specified plugin directory and add it to vim.
Alternative Fonts
A reduced set of fonts for the text console are available in powerline-console-fontsAUR.
Alternative Package
There is currently one known alternative to Powerline - Vim-airline. It is a part of vim-plugins and can be installed separately as vim-airline. Optionally, install vim-airline-themes.
Troubleshooting
Fonts: glyphs missing
If you installed powerline-fonts but you notice missing glyphs, make sure your locale is set. Restart your session to see the changes.