]> git.madduck.net Git - etc/vim.git/blobdiff - README.rst

madduck's git repository

Every one of the projects in this repository is available at the canonical URL git://git.madduck.net/madduck/pub/<projectpath> — see each project's metadata for the exact URL.

All patches and comments are welcome. Please squash your changes to logical commits before using git-format-patch and git-send-email to patches@git.madduck.net. If you'd read over the Git project's submission guidelines and adhered to them, I'd be especially grateful.

SSH access, as well as push access can be individually arranged.

If you use my repositories frequently, consider adding the following snippet to ~/.gitconfig and using the third clone URL listed for each project:

[url "git://git.madduck.net/madduck/"]
  insteadOf = madduck:

Revert "Improve s:find_start_of_multiline_statement: only look for round parens"...
[etc/vim.git] / README.rst
index ebcf4d4472246e7bd5c5f5a8348fdcffbf59dd13..92fed3bf80e26f6bd4a6d2fc45f4ade6b103a881 100644 (file)
 vim-python-pep8-indent
 ======================
 
-This small script that goes directly into `~/.vim/indent/` modifies vim_’s
-indentation behavior to comply with PEP8_: ::
+.. image:: https://travis-ci.org/Vimjas/vim-python-pep8-indent.png?branch=master
+   :target: https://travis-ci.org/Vimjas/vim-python-pep8-indent
+
+This small script modifies Vim_’s indentation behavior to comply with PEP8_ and my aesthetic preferences.
+Most importantly::
 
    foobar(foo,
           bar)
 
-and ::
+and::
 
    foobar(
       foo,
       bar
    )
 
-It was *not* originally written by me. I have found the script in vim’s `script
-repo`_, however the indentation was off by one character in the first case.
 
-I fixed it with the help of `Steve Losh`_ and am putting it out here so you
-don’t have to patch the original. The original patch is still available here_.
+Installation
+------------
+
+
+Pathogen
+^^^^^^^^
+
+Follow the instructions on installing Pathogen_ and then:
+
+.. code-block:: shell-session
+
+   $ cd ~/.vim/bundle
+   $ git clone https://github.com/Vimjas/vim-python-pep8-indent.git
+
+
+Vundle
+^^^^^^
+
+Follow the instructions on installing Vundle_ and add the appropriate plugin line into your ``.vimrc``:
+
+.. code-block:: vim
+
+   Plugin 'Vimjas/vim-python-pep8-indent'
+
+
+NeoBundle
+^^^^^^^^^
+
+Follow the instructions on installing NeoBundle_ and add the appropriate NeoBundle line into your ``.vimrc``:
+
+.. code-block:: vim
+
+   NeoBundle 'Vimjas/vim-python-pep8-indent'
+
+
+Configuration
+-------------
+
+g:python_pep8_indent_multiline_string
+^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
+
+You can configure the initial indentation of multiline strings using ``g:python_pep8_indent_multiline_string`` (which can also be set per buffer).
+This defaults to ``0``, which means that multiline strings are not indented.
+``-1`` and positive values will be used as-is, where ``-1`` is a special value for Vim's ``indentexpr``, and will keep the existing indent (using Vim's ``autoindent`` setting).
+``-2`` is meant to be used for strings that are wrapped with ``textwrap.dedent`` etc.  It will add a level of indentation if the multiline string started in the previous line, without any content in it already::
+
+   testdir.makeconftest("""
+       _
+
+With content already, it will be aligned to the opening parenthesis::
+
+   testdir.makeconftest("""def pytest_addoption(parser):
+                        _
+
+Existing indentation (including ``0``) in multiline strings will be kept, so this setting only applies to the indentation of new/empty lines.
+
+
+Notes
+-----
+
+Please note that Kirill Klenov’s python-mode_ ships its own version of this bundle.
+Therefore, if you want to use this version specifically, you’ll have to disable python-mode’s using:
+
+.. code-block:: vim
+
+   let g:pymode_indent = 0
+
+
+License and Authorship
+----------------------
+
+This script is based on one from Vim’s official `script repo`_  that was *not* originally written by me.
+Unfortunately the indentation was off by one character in one case and the script hasn’t been updated since 2005.
+
+Even more unfortunately, I wasn’t able to reach any of the original authors/maintainers:
+**David Bustos** and **Eric Mc Sween**.
+
+So I fixed the annoyance with the help of `Steve Losh`_ and am putting it out here so you don’t have to patch the original yourself.
+The original patch is still available here_.
+
+Over the time a lot more improvements have been contributed_ by `generous people`_.
+
+I’d like to thank the original authors here for their work and release it hereby to the *Public Domain* (using the CC0_ licence) since I hope that would be in their spirit.
+If anyone with a say in this objects, please let me_ know immediately.
+Also, if someone is in contact with one of them, I would appreciate being introduced.
 
 While my Vimscript_ skills are still feeble, I intend to maintain it for now.
-So feel free to report bugs, I’ll try to address them as good as possible if
-they fit into the scope of this project.
+This mainly means that I’ll triage through bugs and pull requests but won’t be fixing much myself.
 
-Unfortunately, I wasn’t able to reach any of the original authors/maintainers:
-**David Bustos** and **Eric Mc Sween**. I’d like to thank them here for their
-work and release it hereby to the *Public Domain*. If anyone – who has a say in
-this – objects, please let me know.
 
-.. _vim: http://www.vim.org/
+.. _Vim: http://www.vim.org/
 .. _PEP8: http://www.python.org/dev/peps/pep-0008/
 .. _`script repo`: http://www.vim.org/scripts/script.php?script_id=974
 .. _`Steve Losh`: http://stevelosh.com/
 .. _here: https://gist.github.com/2965846
+.. _Neobundle: https://github.com/Shougo/neobundle.vim
+.. _Pathogen: https://github.com/tpope/vim-pathogen
+.. _python-mode: https://github.com/klen/python-mode
 .. _`Vimscript`: http://learnvimscriptthehardway.stevelosh.com/
+.. _vundle: https://github.com/gmarik/Vundle.vim
+.. _me: https://hynek.me/
+.. _CC0: http://creativecommons.org/publicdomain/zero/1.0/
+.. _contributed: https://github.com/hynek/vim-python-pep8-indent/blob/master/CONTRIBUTING.rst
+.. _`generous people`: https://github.com/hynek/vim-python-pep8-indent/graphs/contributors