Want to take your software engineering career to the next level? Join the mailing list for career tips & advice Click here


Powerline is a statusline plugin for vim, and provides statuslines and prompts for several other applications, including zsh, bash, tmux, IPython, Awesome and Qtile.

Subscribe to updates I use powerline

Statistics on powerline

Number of watchers on Github 8701
Number of open issues 109
Average time to close an issue 2 days
Main language Python
Average time to merge a PR 5 days
Open pull requests 21+
Closed pull requests 51+
Last commit over 2 years ago
Repo Created about 8 years ago
Repo Last Updated over 2 years ago
Size 3.89 MB
Homepage https://powerline...
Organization / Authorpowerline
Latest Release2.6
Page Updated
Do you use powerline? Leave a review!
View open issues (109)
View powerline activity
View on github
Fresh, new opensource launches 🚀🚀🚀
Software engineers: It's time to get promoted. Starting NOW! Subscribe to my mailing list and I will equip you with tools, tips and actionable advice to grow in your career.
Evaluating powerline for your project? Score Explanation
Commits Score (?)
Issues & PR Score (?)


:Author: Kim Silkebkken (kim.silkebaekken+vim@gmail.com) :Source: https://github.com/powerline/powerline :Version: beta

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.

  • Support forum_ (powerline-support@googlegroups.com)
  • Development discussion_ (powerline-dev@googlegroups.com)

.. image:: https://api.travis-ci.org/powerline/powerline.svg?branch=develop :target: travis-build-status_ :alt: Build status

.. _travis-build-status: https://travis-ci.org/powerline/powerline .. _Support forum: https://groups.google.com/forum/#!forum/powerline-support .. _Development discussion: https://groups.google.com/forum/#!forum/powerline-dev


  • Extensible and feature rich, written in Python. Powerline was completely rewritten in Python to get rid of as much vimscript as possible. This has allowed much better extensibility, leaner and better config files, and a structured, object-oriented codebase with no mandatory third-party dependencies other than a Python interpreter.
  • Stable and testable code base. Using Python has allowed unit testing of all the project code. The code is tested to work in Python 2.6+ and Python 3.
  • Support for prompts and statuslines in many applications. Originally created exclusively for vim statuslines, the project has evolved to provide statuslines in tmux and several WMs, and prompts for shells like bash/zsh and other applications. Its simple to write renderers for any other applications that Powerline doesnt yet support.
  • Configuration and colorschemes written in JSON. JSON is a standardized, simple and easy to use file format that allows for easy user configuration across all of Powerlines supported applications.
  • Fast and lightweight, with daemon support for even better performance. Although the code base spans a couple of thousand lines of code with no goal of less than X lines of code, the main focus is on good performance and as little code as possible while still providing a rich set of features. The new daemon also ensures that only one Python instance is launched for prompts and statuslines, which provides excellent performance.

*But I hate Python / I dont need shell prompts / this is just too much hassle for me / what happened to the original vim-powerline project / *

You should check out some of the Powerline derivatives. The most lightweight and feature-rich alternative is currently Bailey Lings vim-airline <https://github.com/vim-airline/vim-airline>_ project.

  • Consult the documentation <https://powerline.readthedocs.org/en/latest/>_ for more information and installation instructions.
  • Check out powerline-fonts <https://github.com/powerline/fonts>_ for pre-patched versions of popular, open source coding fonts.


Vim statusline ^

Mode-dependent highlighting

  • .. image:: https://raw.github.com/powerline/powerline/develop/docs/source/_static/img/pl-mode-normal.png :alt: Normal mode
  • .. image:: https://raw.github.com/powerline/powerline/develop/docs/source/_static/img/pl-mode-insert.png :alt: Insert mode
  • .. image:: https://raw.github.com/powerline/powerline/develop/docs/source/_static/img/pl-mode-visual.png :alt: Visual mode
  • .. image:: https://raw.github.com/powerline/powerline/develop/docs/source/_static/img/pl-mode-replace.png :alt: Replace mode

Automatic truncation of segments in small windows

  • .. image:: https://raw.github.com/powerline/powerline/develop/docs/source/_static/img/pl-truncate1.png :alt: Truncation illustration
  • .. image:: https://raw.github.com/powerline/powerline/develop/docs/source/_static/img/pl-truncate2.png :alt: Truncation illustration
  • .. image:: https://raw.github.com/powerline/powerline/develop/docs/source/_static/img/pl-truncate3.png :alt: Truncation illustration

The font in the screenshots is Pragmata Pro_ by Fabrizio Schiavi.

.. _Pragmata Pro: http://www.fsd.it/shop/fonts/pragmatapro

powerline open issues Ask a question     (View All Issues)
  • over 3 years Statusline not showing in iTerm with tmux -CC
  • over 3 years Multiline prompt, no newline at end of "above" line.
  • over 3 years [feature] tmux segment for synchronized panes
  • over 3 years [feature] Integrate Glances
  • over 3 years Powerline default shell theme no longer shows git branch on the right
  • over 3 years Generation of the prompt is really slow
  • almost 4 years IPython not working
  • almost 4 years VCS branch segment doesnt highlight properly if a powerline-daemon is running
  • almost 4 years VCS module doesn't know about is_watching()
  • almost 4 years In fish shell, No prompt until manually calling powerline-setup.
  • almost 4 years Custom window-status-format in tmux statusbar has to be added manually
  • almost 4 years Shell prompt disappered
  • almost 4 years Please create segments for TaskWarrior
  • almost 4 years Terminal title does not refresh after disconnecting an ssh connection
  • almost 4 years Hidden external IP segment (in tmux) does not join the surrounding segments properly.
  • almost 4 years "Above right" shell segments align to the left on multiline setup
  • almost 4 years add option to powerline.segments.vim.file_directory to abbreviate directory
  • about 4 years create segment for tmux-mem-cpu-load
  • about 4 years Wrong sysfs filenames in battery segment?
  • about 4 years Powerline does not show up on tmux 2.2
  • about 4 years Add iTunes now playing segment.
  • about 4 years White space is missing on the left side
  • about 4 years VCS segment displaying incorrect branch info
  • about 4 years Vim's quickfix window missing scroll percentage
  • about 4 years Can't get powerline to work with tmux...
  • over 4 years spotify segment in vim radically slows down vim
  • over 4 years Evaluate use of libuv-cffi bindings as a replacement for PyUV
  • over 4 years Rename some highlight groups
  • over 4 years fontconfig-infinality-ultimate support for PowerlineSymbols
  • over 4 years Remove deprecated g:powerline_use_var_handler variable
powerline open pull requests (View All Pulls)
  • Add support for OS X en0 on internal_ip
  • [WIP] Refactor editors code
  • ctrlp statusline
  • Use vterm for shell tests
  • Support for date segment to take a timezone argument
  • Another attempt to stabilize vterm tests
  • Add support for jython-2.7
  • Support for Subversion
  • [WIP] Add vcsinfo segments
  • Add maildir segment
  • Increase socket backlog number for `powerline-daemon`
  • reset last status code before calling zle reset-prompt
  • Use powerline daemon for running awesome bindings
  • Fix shell prompts which have above line(s), but no left segments
  • Feature/1666 tmux synchronized panes segment
  • Add file name to dict in mpd.
  • Replace awesome-client with a Python-native dbus interface.
  • Include license file in MANIFEST.in
  • (fix) updated linux spotify app dbus config
  • Initial support for gruvbox colorscheme
  • Update tests
powerline questions on Stackoverflow (View All Questions)
  • my powerline-status bar won't display
  • Can't install Powerline using Vundle in Vim editor
  • Tmux-powerline status-interval make flicker
  • MacVim displays ^^^^ characters in powerline on ctrlp
  • Can't get powerline symbols
  • Emacs powerline color to indicate narrow / macro definition
  • Powerline colors are buggy under vim and tmux
  • Powerline isn't working in console2
  • Powerline on Mac OS X not working as expected.
  • vim show all buffers on powerline
  • Missing characters in zsh; powerline
  • Powerline Glyphs Overlapping
  • Remove inequality signs in Powerline
  • Powerline-Status bar real-time update and fixed
  • Installing powerline fonts for zsh + Prezto theme
  • zsh tmux powerline multiple lines, normal operation
  • How to use vim airline or powerline on windows command promt?
  • Powerline (tmuxline and vim-airline) not showing the right characters [iTerm2, Mac OS X]
  • How can I setup my vim-airline or vim-powerline
  • How do I change the color of the evil-state face in powerline-evil?
  • Powerline/arrowline arrows are too small in urxvt
  • Powerline Installation Issues for Vim/Tmux on Mac OSX 10.10.5
  • Error setup powerline for bash shell on Yosemite
  • powerline status-line on ubuntu server 14.04 (no gui)
  • Custom emacs powerline themes
  • Urxvt - powerline wrong color
  • Adding weather widget powerline
  • Using patched Powerline fonts for vim-airline
  • How should I patch fonts for use with the vim plugin Powerline?
  • vim-powerline does not have the correct appearance
powerline list of languages used
powerline latest release notes
2.6 Release 2.6
  • Added support for new Vim modes.
  • Added ability to control output padding.
  • Added iTunes player segment.
  • Added support for tmux development builds.
  • Added a workaround for a fish bug sometimes occurring when using eval from config.fish (upstream status unknown).
  • Added a workaround for tmux 2.4 bug: excessive CPU usage when having multiple panes (also fixed upstream).
  • Fixed clean file status support in mercurial.
  • Fixed error when battery capacity is zero and using DBus.
  • Fixed mercurial command servers leakage.
  • Refactored awesome bindings to use powerline daemon.
2.5.2 Release 2.5.2
  • Fixed ipython-5.2* support.
2.5.1 Release 2.5.1
  • Made more robust theme default.
  • Made it use hglib in place of unstable mercurial plugin API.
  • Fixed latest fish version support.
  • Some other fixes and documentation adjustments.
More projects by powerline View all
Other projects in Python