Powerline is a statusline plugin for vim, and provides statuslines and prompts for several other applications, including zsh, bash, tmux, IPython, Awesome and Qtile.
Added functionality:
- Added fbterm (framebuffer terminal emulator) support.
- Added theme with unicode-7.0 symbols. (Note: most software is not ready for it
yet, including all Python-2\* versions.)
- Added support for PyPy3.
- Compiler is now called with CFLAGS from environment in setup.py if present.
- Added support for pyuv-1.\*.
- Added a way to write error log to Vim global variable.
- `powerline` script now supports overrides from `$POWERLINE_CONFIG_OVERRIDES`,
`$POWERLINE_THEME_OVERRIDES` environment variables, so does `powerline-config`
script.
- `powerline` and `powerline-config` scripts now support taking paths from
`$POWERLINE_CONFIG_PATHS`.
- `powerline-lint` is now able to report dictionaries which were merged in to
form marked dictionary and what were the previous values of overridden values.
- Added support for Byron Rakitzis’ rc shell reimplementation.
- Added support for querying battery status on cygwin platform.
Fixes:
- Vim: made all mode strings have equal width.
- Vim: fixed intermediate Vim-7.3\* support.
- Fixed typo in battery segment implementation that made it not possible to fall
back to next implementation if UPower is not available, but dbus is.
- Fixed libzpython overrides and modes support.
- Fixed Python-3\* support in zpython bindings.
- Fixed checking of themes located in user configuration directories in
`powerline-lint`.
- `powerline-daemon` now allows `--foreground` argument to be used in
conjunction with `--replace`.
- Fixed outdated tmux versions support (1.6 and 1.7).
Incompatible changes:
- Removed CtrlP support. If one wants to readd it make sure to fix problems
listed in 4e6b0a7ec8.
- `highlight_group` key in segment description (both in configuration and in
function output) was renamed to `highlight_groups` (note the trailing `s`).
- `attr` key in colorschemes was renamed to `attrs` key (note the trailing `s`).
- All highlight groups looking like `foo.bar` were renamed to `foo:bar`: dot in
highlight group names is no longer allowed.
- `detect` argument value was renamed to `auto` in network segments.
- `$POWERLINE_COMMAND` is now a single path to one executable. No arguments to
the executable are allowed inside `$POWERLINE_COMMAND`. Overrides using
argument to `$POWERLINE_COMMAND` are now deprecated.
- In place of overrides being part of `$POWERLINE_COMMAND` variable all shell
and tmux bindings now support overrides from `$POWERLINE_CONFIG_OVERRIDES` and
`$POWERLINE_THEME_OVERRIDES` environment variables.
- In place of config paths specified as a part of `$POWERLINE_COMMAND` variable
paths are now taken from `$POWERLINE_CONFIG_PATHS` environment variable.
- `$POWERLINE_CONFIG` was replaced with `$POWERLINE_CONFIG_OVERRIDES` for
zpython bindings when talking about overrides.
- `$POWERLINE_THEME_CONFIG` was renamed to `$POWERLINE_THEME_OVERRIDES` in
zpython bindings.
- `$POWERLINE_CONFIG` was replaced with `$POWERLINE_CONFIG_COMMAND` in all shell
bindings when talking about path to `powerline-config` executable.
- In Vim in place of `g:powerline_theme_overrides__{theme_name}` per-theme
dictionaries `g:powerline_theme_overrides` dictionary should be used. Theme
names in this case are top-level keys in the new dictionary.
- In IPython configuration paths list can be specified via `config_paths`
option, not via `paths` option.
- Some long options that defined overrides were renamed:
- `--theme_option` was renamed to `--theme-override`.
- `--config` was renamed to `--config-override`.
Note that these options are deprecated and shall be used for testing purposes
only.
- All long options that used to have underscore in them are now using
HYPHEN-MINUS instead. I.e.
- `--config_path` was renamed to `--config-path`.
- `--last_pipe_status` was renamed to `--last-pipe-status`.
- `--renderer_arg` was renamed to `--renderer-arg`.
- `--theme_option` was renamed to `--theme-override`.
Short options were not touched.
- All segments from `powerline.segments.common` were removed. Now they live in
`powerline.segments.common` submodules: e.g.
`powerline.segments.common.weather` is now
`powerline.segments.common.wthr.weather`. List of available segments can be
found in documentation, section [Common segments][common-segments].
- Segments `powerline.segments.common.now_playing` and
`powerline.segments.common.players.now_playing` were removed. In place of them
all players should be accessed via their own segments. List of segments is
available in [Media players][media-players].
[common-segments]: http://powerline.readthedocs.org/en/master/configuration/segments/common.html
[media-players]: http://powerline.readthedocs.org/en/master/configuration/segments/common.html#module-powerline.segments.common.players
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
Powerline
=========
:Author: Kim Silkebækken (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, tmux, IPython,
Awesome and Qtile.**
* `Support forum`_ (powerline-support@googlegroups.com)
* `Development discussion`_ (powerline-dev@googlegroups.com)
.. image:: https://api.travis-ci.org/powerline/powerline.png?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
Features
--------
* **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. It’s simple to write renderers for any
other applications that Powerline doesn’t 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 Powerline’s 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 don’t 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 Ling’s `vim-airline
<https://github.com/bling/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.
Screenshots
-----------
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/fonts/pragmatapro.htm