Alors, voici mes problèmes. Disons que j'ai un fichier Python et je tape une ligne très longue, comme le dernier ici:Comment est-ce que je peux fixer le comportement de Vim pour les longues lignes en Python?
class SomeClass(object):
def some_method(self):
some_variable = SomeOtherClass.some_other_method(some_parameter=some_value)
Lorsque je tape ce dans vim, cela se produit:
class SomeClass(object):
def some_method(self):
some_variable =
SomeOtherClass.some_other_method(some_parameter=some_value)
Ce n'est pas seulement mauvais style, il casse PEP8. Ce que je voudrais arriver est:
class SomeClass(object):
def some_method(self):
some_variable = SomeOtherClass.some_other_method(
some_parameter=some_value)
Ce qui est conforme à PEP8. (Aux fins de cette discussion, je suis seulement intéressé par le comportement de rupture de ligne, pas le comportement de retrait.)
Edit:breakat
fonctionne uniquement conjointement avec linebreak
pour régir la façon dont les lignes sont affichées. Il ne fonctionne pas (apparemment) en conjonction avec textwidth
pour déterminer où les coupures de lignes dures sont insérées. Donc, mon idée ci-dessous ne fonctionnera pas ...
Étonnamment, je n'ai rien trouvé là-bas indiquant d'autres partagent ce problème, ce qui me conduit à penser que je fais quelque chose de mal. Néanmoins, mon idée était d'ajouter le caractère (
au paramètre breakat
(avec [
et {
pendant que j'y étais).
J'ai essayé ceci; voici la sortie de :set breakat
:
breakat= ^[email protected]*-+;:,./?([{
Cependant, il est vain. Quoi que je fasse, Vim insiste pour rompre après le "=" ci-dessus. J'ai le même problème avec les noms de fonctions longues, où il va se casser juste après def
.
Voici le contenu complet de mon .vimrc: (. Je n'ai pas de plugins, etc. installé dans le but d'essayer de comprendre cela)
set nobackup
set nowritebackup
set noswapfile
set columns=80
set tabstop=4
set shiftwidth=4
set softtabstop=4
set autoindent
set smarttab
set smartindent
set textwidth=80
set wrap
set breakat=\ ^[email protected]*-+;:,./?\(\[\{
filetype indent on
filetype on
filetype plugin on
Quelqu'un at-il une idée Je peux demander à Vim d'obéir à mon réglage de breakat, ou à d'autres réflexions sur la meilleure façon de gérer ce comportement?
ajouté note à propos de pythonTidy à ma réponse. –