Quel est le moyen recommandé d'utiliser Vim pliage de code Python
Je suis intéressé par l'activation du code de pliage dans Vim pour le code Python. J'ai remarqué plusieurs façons de le faire.
Quelqu'un aurait-il un moyen privilégié pour faire le code Python de pliage dans Vim? I. e,
- Avez-vous un particulier Vim plugin que vous utilisez et aimez?
- Utilisez-vous le manuel de pliage ou pensez-vous de placer des marqueurs dans les commentaires?
- Tout autres moyens recommandés pour faire le code de pliage pour Python dans Vim?
Vous devez vous connecter pour publier un commentaire.
Personnellement, je ne peux pas me convaincre de la litière de mon code avec les marqueurs. J'ai pris l'habitude d' (et efficace) à l'aide de tiret de pliage. Avec ma cartographie de la barre d'espace (voir ci-dessous) pour ouvrir/fermer les plis et le zR et zM commandes, je suis à la maison. Parfait pour Python!
set foldnestmax=2
, de cette façon, les méthodes de classes sont repliés, mais les déclarations ne sont pas.- Je utiliser cette fichier de syntaxe de Python. Il définit la méthode de pliage à la syntaxe et les plis de toutes les classes et fonctions, mais rien d'autre.
Encore un autre plugin pour le pliage de code Python. Plutôt simple, la manipulation docstrings, et sur le GitHub:
SimpylFold
Profitez-en!
if
,for
etwhile
blocs, n'est-ce pas?Python est bien adapté pour le pliage sur tiret, peu pour l'écriture de mon propre code que j'ai utiliser des marqueurs comme ils peuvent craquement d'un document en bas de la façon dont vous le souhaitez et peut servir comme une sorte de table des matières. J'ai cela dans mon vimrc pour basculer entre les deux quand je regarde quelqu'un elses code.
Je pense que le retrait de pliage est très bien pour python. Je suis en train de faire une rameuse repo git pour vim-config python/django IDE idées. Fourche de suite!!!
http://github.com/skyl/vim-config-python-ide
J'aime vraiment le
python_ifold
plugin.Essayer ce plugin:
http://vim.sourceforge.net/scripts/script.php?script_id=515
La source Python est livré avec un vim syntaxe de plugin avec un custom fichiers vimrc. De vérifier la python FAQ sur vim
Pour moi l'idéal de pliage est à la fois juste le
class
etdef
blocs, tiret pliage est trop pour mon goût. Je pense qu'une solution élégante consiste à utiliser la syntaxe de ce système un mentionné par Tomas. Cependant, celle-ci est destinée à remplacer la syntaxe d'origine du fichier et il peut mettre fin à être plus âgés que l'original (c'est à dire que le script ne parle pas de Python 3 de la syntaxe).Ma solution est de les placer dans le
~/.vim/syntax
dossier un fichier nommépython.vim
avec juste les lignes importantes (prises à partir du script ci-dessus):Alors il suffit d'activer le pliage avec
:set foldmethod=syntax
.class
es etdef
s s'ils sont au début d'une ligne. Depuis j'ai du mal à lire l'expression, je suis en difficulté en essayant de le tordre afin de correspondre à^def
et^class
. C'est curieux, bien que depuis\s*
doit faire face bien avec ce..