2012-04-04 23 views
49

Primero déjeme decir que vengo de un fondo de Microsoft y Visual Studio es mi pan de cada día. Tiene un comando (keybind es arbitrario) que formatea automáticamente cualquier sintaxis de código. El mismo comando funciona en HTML, CSS, Javascript, C#, etc.Sublime Text 2 Code Formatting

He intentado complementos para ST2 y hasta ahora he encontrado que la mayoría no funcionan en una caja de Windows y, si lo hacen, es para una muy propósito específico como solo Javascript.

que han intentado (y abrió Problemas en su caso):

https://github.com/victorporof/Sublime-HTMLPrettify

https://github.com/jdc0589/JsFormat (éste realmente funciona)

https://github.com/welovewordpress/SublimeHtmlTidy

¿Alguno usuarios de Windows de ST2 encontrado nada que funcione formatear CSS/HTML/Javascript, preferiblemente en una sola toma?

Editar: Dado que esta cuestión está recibiendo una gran cantidad de puntos de vista con ninguna actividad, voy a decir que yo am todavía en busca de un plugin que se puede dar formato a diversos tipos de scripts en el mismo comando.

de octubre de 2013 Todavía no han encontrado nada que cubre JS + CSS + HTML y sin embargo he asentado en JsFormat, con mucho, el más eficaz y libre con la menor cantidad de configuración para apenas JavaScript fallo.

Respuesta

8

No puedo hablar por el segundo o tercero, pero si instala primer nodo, Sublime-HTMLPrettify funciona bastante bien. Debes configurar tu propio atajo de teclado una vez que esté instalado. Una cosa que noté en Windows, es posible que necesites editar tu ruta para Node en la variable% PATH% si ya es larga (creo que el límite es 1024 para la variable% PATH%, y se ignora todo lo demás).

Hay un error de Windows, pero en los problemas existe una solución. Tendrá que editar el archivo HTMLPrettify.py - https://github.com/victorporof/Sublime-HTMLPrettify/issues/12

+0

Estuve realmente involucrado en la discusión en uno de esos asuntos abiertos (que aún está abierto). Verificará la posible solución que vinculó y te llamaré – Terry

+1

Encontrar algo para PHP de una vez es realmente difícil y molesto. la herramienta es genial, pero un formateador simple es difícil de encontrar. Thes php_beautifier para Sublime es agotador. El problema principal en todos los formateadores es que debes usar una o dos cosas antes de usarlos. –

+0

@ JuniorMayhé ¿Encontraste algo para PHP? Estoy realmente interesado en CTRL + SHIF + F de Aptana, que formatea CUALQUIER COSA (digamos HTML, JS, PHP, Ruby y Python !!!) – Leonel

101

Una opción similar en Sublime Text es la construida en Edit->Line->Reindent. Usted puede poner este código en Preferences -> Key Bindings User:

{ "keys": ["alt+shift+f"], "command": "reindent"} 

utilizo alt +cambio + f porque soy un usuario Netbeans.

Para dar formato a su código, seleccione todos pulsando ctrl +un y "la combinación de teclas". Disculpa me por mi mal inglés.


O si no desea seleccionar todas antes de formatear, agregar un argumento al comando:

{ "keys": ["alt+shift+f"], "command": "reindent", "args": {"single_line": false} } 

(según comentario de @Supr abajo)

+5

+1 para la solución integrada en la aplicación. – Esteban

+25

Si le resulta molesto seleccionar todo (tipo de interrupciones en el flujo de edición), puede agregar un argumento al comando en su lugar: '{" teclas ": [" alt + shift + f "]," comando ":" reindent "," args ": {" single_line ": false}}' ([fuente] (http://nicksantan.com/blog/2012/12/adding-auto-format-code-indenting-to-sublime-text -2 /)) – Supr

+1

@terry esta debería ser la respuesta aceptada. –

13

Sublime CodeFormatter ha formateo soporte para PHP, JavaScript/JSON/JSONP, HTML, CSS, Python. Aunque no he usado CodeFormatter por mucho tiempo, me han impresionado sus capacidades de "embellecimiento" de JS, HTML y CSS. No he intentado usarlo con PHP (no hago ningún desarrollo de PHP) o Python (con el que no tengo experiencia) pero ambos idiomas tienen muchas opciones en el archivo .sublime-settings.

Una nota, sin embargo, la configuración no es muy fácil de encontrar. En Windows deberá dirigirse a su %AppData%\Roaming\Sublime Text #\Packages\CodeFormatter\CodeFormatter.sublime-settings. Como no tengo un Mac no estoy seguro de que el archivo de configuración se ejecuta en OS X.

En cuanto a una tecla de acceso directo, que añade esta clave de unión a mi archivo "Key Bindings - User":

{ 
    "keys": ["ctrl+k", "ctrl+d"], 
    "command": "code_formatter" 
} 

utilizo Ctrl +K,Ctrl + D porque eso es lo que utiliza Visual Studio para el formato. Puedes cambiarlo, por supuesto, solo recuerda que lo que elijas puede entrar en conflicto con el atajo de teclado de otra característica.

Actualización:

Parece como si los desarrolladores de Sublime Text CodeFormatter han hecho más fácil para acceder al archivo de .sublime-settings. Si instala CodeFormatter con el complemento de control de paquetes, puede acceder a la configuración a través del Preferences -> Package Settings -> CodeFormatter -> Settings - Default y anular esas configuraciones utilizando el elemento de menú Preferences -> Package Settings -> CodeFormatter -> Settings - User.

+1

excepto que CodeFormatter está roto y algunos bloques de texto seguirán agregando sangrías adicionales cada vez que lo ejecute. Lo que lo hace inutilizable. –

0

Quizás esta respuesta no sea exactamente lo que está buscando, pero fomentará cualquier idioma con el mismo atajo de teclado. La solución es language specific keyboard shortcuts.

Para cada idioma que desee formatear, debe encontrar y descargar un complemento para eso, por ejemplo, un formateador html y un formateador C#. Y luego asigna el comando para cada complemento a la misma clave, pero con un contexto diferente (ver el enlace).

Saludos

Cuestiones relacionadas