Así que aquí están mis problemas. Digamos que tengo un archivo Python y estoy escribiendo una línea muy larga, como la última vez aquí:¿Cómo puedo arreglar el comportamiento de línea de Vim para líneas largas en Python?
class SomeClass(object):
def some_method(self):
some_variable = SomeOtherClass.some_other_method(some_parameter=some_value)
Cuando escribo esto en Vim, esto sucede:
class SomeClass(object):
def some_method(self):
some_variable =
SomeOtherClass.some_other_method(some_parameter=some_value)
Eso no es sólo mal estilo, rompe PEP8. Lo que me gustaría que suceda es:
class SomeClass(object):
def some_method(self):
some_variable = SomeOtherClass.some_other_method(
some_parameter=some_value)
que está en consonancia con PEP8. (Para los propósitos de esta discusión, sólo estoy interesado en el comportamiento de la línea de ruptura, no el comportamiento sangría.)
Editar:breakat
sólo funciona en conjunción con linebreak
para gobernar cómo se muestran las líneas. No funciona (aparentemente) junto con textwidth
para determinar dónde se insertan los saltos de línea. Entonces mi idea a continuación no funcionará ...
Sorprendentemente, no he encontrado nada por ahí que indique que otros comparten este problema, lo que me lleva a pensar que estoy haciendo algo mal. Sin embargo, mi idea era agregar el carácter (
a la configuración breakat
(junto con [
y {
mientras estaba en ello).
He intentado esto; Aquí está la salida de :set breakat
:
breakat= ^[email protected]*-+;:,./?([{
Sin embargo, es en vano. No importa lo que haga, Vim insiste en romper después del "=" de arriba. También tengo el mismo problema con los nombres largos de funciones, donde se romperá justo después de def
.
Éstos son el contenido completo de mi .vimrc: (. Yo no tienen plugins, etc. instalado con el fin de tratar de resolver esto)
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
¿Alguien tiene alguna idea de cómo Puedo hacer que Vim obedezca mi configuración de golpes, o cualquier otro pensamiento sobre la mejor manera de lidiar con este comportamiento?
agregó una nota sobre pythonTidy a mi respuesta. –