166 lines
5.2 KiB
ReStructuredText
166 lines
5.2 KiB
ReStructuredText
*************
|
|
Other plugins
|
|
*************
|
|
|
|
.. _vim-vimrc:
|
|
|
|
Vim statusline
|
|
==============
|
|
|
|
If installed using pip just add
|
|
|
|
.. code-block:: vim
|
|
|
|
python from powerline.vim import setup as powerline_setup
|
|
python powerline_setup()
|
|
python del powerline_setup
|
|
|
|
(replace ``python`` with ``python3`` if appropriate) to the :file:`vimrc`.
|
|
|
|
If the repository was just cloned the following line needs to be added to the
|
|
:file:`vimrc`:
|
|
|
|
.. code-block:: vim
|
|
|
|
set rtp+={repository_root}/powerline/bindings/vim
|
|
|
|
where ``{repository_root}`` is the absolute path to the Powerline installation
|
|
directory (see :ref:`repository root <repository-root>`).
|
|
|
|
If pathogen is used and Powerline functionality is not needed outside of Vim
|
|
then it is possible to simply add Powerline as a bundle and point the path above
|
|
to the Powerline bundle directory, e.g.
|
|
:file:`~/.vim/bundle/powerline/powerline/bindings/vim`.
|
|
|
|
Vundle and NeoBundle users may instead use
|
|
|
|
.. code-block:: vim
|
|
|
|
Bundle 'powerline/powerline', {'rtp': 'powerline/bindings/vim/'}
|
|
|
|
(NeoBundle users need ``NeoBundle`` in place of ``Bundle``, otherwise setup is
|
|
the same).
|
|
|
|
Vim-addon-manager setup is even easier because it is not needed to write this
|
|
big path or install anything by hand: ``powerline`` can be installed and
|
|
activated just like any other plugin using
|
|
|
|
.. code-block:: vim
|
|
|
|
call vam#ActivateAddons(['powerline'])
|
|
|
|
.. warning::
|
|
*Never* install powerline with pathogen/VAM/Vundle/NeoBundle *and* with pip.
|
|
If powerline functionality is needed in applications other then Vim then
|
|
system-wide installation (in case used OS distribution has powerline
|
|
package), pip-only or ``pip install --editable`` kind of installation
|
|
performed on the repository installed by Vim plugin manager should be used.
|
|
|
|
No issues are accepted in powerline issue tracker for double pip/non-pip
|
|
installations, especially if these issues occur after update.
|
|
|
|
.. note::
|
|
If supplied :file:`powerline.vim` file is used to load powerline there are
|
|
additional configuration variables available: ``g:powerline_pycmd`` and
|
|
``g:powerline_pyeval``. First sets command used to load powerline: expected
|
|
values are ``"py"`` and ``"py3"``. Second sets function used in statusline,
|
|
expected values are ``"pyeval"`` and ``"py3eval"``.
|
|
|
|
If ``g:powerline_pycmd`` is set to the one of the expected values then
|
|
``g:powerline_pyeval`` will be set accordingly. If it is set to some other
|
|
value then ``g:powerline_pyeval`` must also be set. Powerline will not check
|
|
that Vim is compiled with Python support if ``g:powerline_pycmd`` is set to
|
|
an unexpected value.
|
|
|
|
These values are to be used to specify the only Python that is to be loaded
|
|
if both versions are present: Vim may disable loading one python version if
|
|
other was already loaded. They should also be used if two python versions
|
|
are able to load simultaneously, but powerline was installed only for
|
|
python-3 version.
|
|
|
|
Tmux statusline
|
|
===============
|
|
|
|
Add the following lines to :file:`.tmux.conf`, where ``{repository_root}`` is
|
|
the absolute path to the Powerline installation directory (see :ref:`repository
|
|
root <repository-root>`)::
|
|
|
|
source "{repository_root}/powerline/bindings/tmux/powerline.conf"
|
|
|
|
.. note::
|
|
The availability of the ``powerline-config`` command is required for
|
|
powerline support. DLlocation of this script may be specified via
|
|
``$POWERLINE_CONFIG_COMMAND`` environment variable.
|
|
|
|
.. note::
|
|
It is advised to run ``powerline-daemon`` before adding the above line to
|
|
tmux.conf. To do so add::
|
|
|
|
run-shell "powerline-daemon -q"
|
|
|
|
to :file:`.tmux.conf`.
|
|
|
|
IPython prompt
|
|
==============
|
|
|
|
For IPython<0.11 add the following lines to :file:`.ipython/ipy_user_conf.py`:
|
|
|
|
.. code-block:: Python
|
|
|
|
# top
|
|
from powerline.bindings.ipython.pre_0_11 import setup as powerline_setup
|
|
|
|
# main() function (assuming ipython was launched without configuration to
|
|
# create skeleton ipy_user_conf.py file):
|
|
powerline_setup()
|
|
|
|
For IPython>=0.11 add the following line to :file:`ipython_config.py` file in
|
|
the used profile:
|
|
|
|
.. code-block:: Python
|
|
|
|
c.InteractiveShellApp.extensions = [
|
|
'powerline.bindings.ipython.post_0_11'
|
|
]
|
|
|
|
IPython=0.11* is not supported and does not work. IPython<0.10 was not
|
|
tested (not installable by pip).
|
|
|
|
.. _pdb-prompt:
|
|
|
|
PDB prompt
|
|
==========
|
|
|
|
To use Powerline with PDB prompt you need to use custom class. Inherit your
|
|
class from :py:class:`pdb.Pdb` and decorate it with
|
|
:py:func:`powerline.bindings.pdb.use_powerline_prompt`:
|
|
|
|
.. code-block:: Python
|
|
|
|
import pdb
|
|
|
|
from powerline.bindings.pdb import use_powerline_prompt
|
|
|
|
@use_powerline_prompt
|
|
class MyPdb(pdb.Pdb):
|
|
pass
|
|
|
|
MyPdb.run('some.code.to.debug()')
|
|
|
|
. Alternatively you may use
|
|
|
|
.. code-block:: bash
|
|
|
|
python -mpowerline.bindings.pdb path/to/script.py
|
|
|
|
just like you used ``python -m pdb``.
|
|
|
|
.. note:
|
|
If you are using Python-2.6 you need to use ``python
|
|
-mpowerline.bindings.pdb.__main__``, not what is shown above.
|
|
|
|
.. warning:
|
|
Using PyPy (not PyPy3) forces ASCII-only prompts. In other cases unicode
|
|
characters are allowed, even if you use `pdbpp
|
|
<https://pypi.python.org/pypi/pdbpp>`_.
|