2012-09-12 13 views
10

me gusta mantener mis líneas por debajo de 80 columnas, así que a menudo quieren refactorizar una línea que tiene este aspecto:guión Alinear con paréntesis después salto de línea en Sublime Text

object.function(a_long_argument, another_long_argument, and_a_third) 

a esto:

object.function(a_long_argument, 
       another_long_argument, 
       and_a_third) 

Pero cuando presiono Enter después de la primera "," en Sublime, solo linebreaks e indenta el cursor unos espacios. Quiero que se alinee con la paránthesis o [] o {} en la que estoy, como Emacs lo hace tan bellamente.

¿Existe una opción para esto? ¿Hay un complemento para esto? ¿Tengo que escribir el mío?

He intentado buscarlo, pero no he encontrado nada.

EDIT:

Aún mejor sería un atajo o plugin o algo para seleccionar un par de filas, o toda la memoria intermedia, y dejar que se trate de auto-salto de línea a buenos puntos. Refactor comentarios también. Si tiene que ser específico del idioma, lo quiero principalmente para Python y C++.

+0

Me gustaría saber esto también. Considere preguntarle a Jon (el desarrollador de ST2) directamente sobre el [Sublime Forum] (http://www.sublimetext.com/forum/) si no obtiene una respuesta aquí. – AGS

+0

Gracias @AGS, lo haré si nadie responde en 24 horas más o menos. Pensé que dado que Stackoverflow tiene una etiqueta para texto sublime, estaría acechando aquí. – Gurgeh

+0

Para formatear archivos completos de Python de acuerdo con PEP-8, puede utilizar PyTidy https://github.com/witsch/SublimePythonTidy –

Respuesta

14

El indent_to_bracket de Sublime ajustará el cursor por ti. Sólo tiene que añadir la siguiente línea a su archivo, ya sea User/Preferences.sublime-settings o User/Python.sublime-settings:

"indent_to_bracket": true 

Desafortunadamente este momento sólo parece funcionar con paréntesis, llaves y corchetes todavía envolver a la línea de guión anterior.

Cuestiones relacionadas