teclas sublime poner ocultar mayusculas linea indentación guardar duplicar convertir como comentarios combinaciones comandos cambios barra sublimetext2 indentation auto-indent

sublimetext2 - poner - ¿Cómo arreglar/convertir la sangría de espacio en texto sublime?



indentación sublime text (8)

Ejemplo: si tengo un documento con sangría de 2 espacios y quiero que tenga sangría de 4 espacios, ¿cómo lo convierto automáticamente usando el editor de texto sublime?


De hecho, encontré que es mejor para mi cordura tener las preferencias de usuario definidas así:

"translate_tabs_to_spaces": true, "tab_size": 2, "indent_to_bracket": true, "detect_indentation": false

La detect_indentation: false es especialmente importante, ya que obliga a Sublime a respetar estas configuraciones en cada archivo, a diferencia de las configuraciones View -> Indentation .

Si desea obtener un toque elegante, también puede definir un método abreviado de teclado para volver a sangrar automáticamente su código (YMMV) pegando lo siguiente en Sublime -> Preferences -> Key Binding - User Enlace de Sublime -> Preferences -> Key Binding - User :

[ { "keys": ["ctrl+i"], "command": "reindent" } ]

Y para visualizar el espacio en blanco:

"indent_guide_options": ["draw_active"], "trim_trailing_white_space_on_save": true, "ensure_newline_at_eof_on_save": true, "draw_white_space": "all", "rulers": [120],


En mi opinión, encontré una solución más simple que Magne:

En mac

"cmd+f" => " "(two spaces) => "alt+enter" => "arrow right" => " "(two more spaces) => set tab width to 4(this can be done before or after.

En Windows u otras plataformas, cambie cmd+f y alt+enter con lo que sea que find y select all teclas de acceso rápido.

Nota: este método es propenso a "errores" si tiene más de un espacio dentro de su código. Por lo tanto, es menos seguro que el método de Magne, pero es más rápido (al menos para mí).


Escribí un plugin para ello. Puede encontrarlo here o buscar "Reintegrado" en el control de paquetes. En su mayoría, hace lo mismo que Kyle Finley escribió, pero de manera conveniente con accesos directos para convertir entre 2 y 4 y viceversa.


Este es un buen truco en Sublime Text 2 o 3 para convertir el espacio de sangrado en un documento.

TL; DR:

Convertir de 2 espacios a 4 espacios:

Asegúrese de que el ancho de la pestaña esté establecido en 2. Convierta su sangría de 2 espacios en pestañas, cambie al ancho de la pestaña 4 y luego convierta la sangría de nuevo en espacios.

La descripción detallada:

Ir:

View -> Indentation

Debe leer:

  • Indent using spaces [x]
  • Tab width: 2

Seleccionar:

  • Convert Indentation to Tabs

Luego seleccione:

  • Tab width: 4
  • Convert Indentation to Spaces

Hecho.


Lo más fácil que hice fue

Cambié mi sangría a pestañas

y resolvió mi problema.

Puedes hacer lo mismo,

a los espacios

así como por su necesidad.

Mencionó la instantánea de la misma.


Si bien muchas de las sugerencias funcionan al convertir 2 -> 4 espacios. Me encontré con algunos problemas al convertir 4 -> 2.

Esto es lo que terminé usando:

Sublime Text 3/Packages/User/to-2.sublime-macro

[ { "args": null, "command": "select_all" }, { "args": { "set_translate_tabs": true }, "command": "unexpand_tabs" }, { "args": { "setting": "tab_size", "value": 1 }, "command": "set_setting" }, { "args": { "set_translate_tabs": true }, "command": "expand_tabs" }, { "args": { "setting": "tab_size", "value": 2 }, "command": "set_setting" } ]


Si encuentra que la búsqueda y el reemplazo son más rápidos de usar, podría usar un reemplazo de expresiones regulares como este:

Buscar (regex): (^|/G) {2} (En lugar de "{2}" <space>{2} puede escribir dos espacios. Se usa aquí para mayor claridad).

Reemplaza con 4 espacios, o lo que quieras, como /t .


Tienes que agregar este código a tus enlaces de teclas personalizados:

{ "keys": ["ctrl+f12"], "command": "set_setting", "args": {"setting": "tab_size", "value": 4} }

presionando ctrl + f12, reenviará su archivo a un tamaño de pestaña 4. Si desea un tamaño de pestaña diferente, simplemente cambie el número de "valor". El formato es un simple json.