Respuestas:
Aquí hay un buen truco en Sublime Text 2 o 3 para convertir su espacio de sangría en un documento.
TL; DR:
Conversión de 2 espacios a 4 espacios:
Asegúrese de que el ancho de la pestaña esté configurado 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 nuevamente en espacios.
La descripción detallada:
Ir:
View -> Indentation
Debería leer:
Indent using spaces [x]Tab width: 2Seleccione:
Convert Indentation to TabsLuego seleccione:
Tab width: 4Convert Indentation to SpacesHecho.
De hecho, descubrí que es mejor para mi cordura tener preferencias de usuario que se definan así:
"translate_tabs_to_spaces": true,
"tab_size": 2,
"indent_to_bracket": true,
"detect_indentation": false
Esto detect_indentation: falsees especialmente importante, ya que obliga a Sublime a respetar estas configuraciones en cada archivo, en lugar de las View -> Indentationconfiguraciones.
Si quieres ponerte elegante, también puedes definir un atajo de teclado para volver a sangrar automáticamente tu código (YMMV) pegando lo siguiente en 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 las ventanas u otras plataformas de cambio cmd+fy alt+entercon lo que sus findy select allteclas de acceso rápido son.
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í).
RubyFormat, simplemente puede establecer el tamaño de pestaña deseado y luego reformatear el código. En el caso de RubyFormatque sería cmd+shift+R.
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 la búsqueda y el reemplazo más rápido de usar, podría usar un reemplazo de expresiones regulares como este:
Find (regex): (^|\G) {2}(En lugar de "{2}" <space>{2} puedes escribir dos espacios. Lo usaste aquí para mayor claridad).
Reemplace con 4 espacios, o lo que quiera, como \t.
Debe agregar este código a sus asociaciones de teclas personalizadas:
{ "keys": ["ctrl+f12"], "command": "set_setting", "args": {"setting": "tab_size", "value": 4} }
presionando ctrl + f12, reinventará su archivo a un tamaño de pestaña de 4. si desea un tamaño de pestaña diferente, simplemente cambie el número de "valor". El formato es un simple json.
{ "keys": ["ctrl+f10"], "command": "set_setting", "args": {"setting": "translate_tabs_to_spaces", "value": 2} }, { "keys": ["ctrl+f11"], "command": "set_setting", "args": {"setting": "tab_size", "value": 2} }, { "keys": ["ctrl+f12"], "command": "set_setting", "args": {"setting": "tab_size", "value": 4} },
Lo más fácil que hice fue
cambié mi sangría a pestañas
Y resolvió mi problema.
Puedes hacer lo mismo,
a espacios
así como por su necesidad
Mencionó la instantánea de la misma.
Recientemente me enfrenté a un problema similar. Estaba usando el editor sublime. No es un problema con el código sino con el editor.
A continuación, el cambio en la configuración de preferencias funcionó para mí.
Menú Sublime Text -> Preferencias -> Configuración: Específico de sintaxis :
{
"tab_size": 4,
"translate_tabs_to_spaces": true
}