¿Cómo hacer que Visual Studio no se ponga {en una nueva línea?


96

Si tengo un código como este

if(true){

y agrego

}

se transforma en

if (true)
{
}

pero me gustaría que se mantuviera en formato

if (true) {
}

Incluso si copio código que tiene algo ifasí, se transforma en la versión más larga.

PD: Entiendo que es un estándar C ++ y C # para usar la versión más larga, sin embargo, vengo de un estándar diferente, y es más fácil para mí usar la versión más corta.

Apuesto a que hay alguna opción de formateador que se puede desactivar o cambiar.

Respuestas:


141

Vaya a Herramientas -> Opciones -> Editor de texto -> C # -> Estilo de código -> Formato-> Nuevas líneas

Aquí hay muchas opciones. Quite la marca de todas las opciones aquí para nunca poner el corchete abierto en una nueva línea.

EDITAR

La sección New Line Options for expressionsno se relaciona con la ubicación del código junto con los corchetes, por lo que no es necesario tocarlos.


9
+1 gracias. Sin embargo, cuando los apago, y luego coloco deliberadamente la abrazadera en la nueva línea, la mueve de regreso a la misma línea :( ¿Hay alguna manera de evitar que se entrometa en cosas con las que no le pedí que jugara?
Ingeniero Invertido

28
¿Qué monstruo habilitaría nuevas líneas por defecto?
Fueled By Coffee

Estoy usando la vista previa de VS2019, y tuve que hacer el cambio y luego salir de Visual Studio por completo y volver a abrirlo para que el cambio se mantuviera. Si lo cambiaba y luego intentaba reformatear el documento, simplemente se restablecería a la configuración anterior.
Bernard

Para Visual Studio Code, vaya a Archivo -> Preferencias -> Configuración y en Extensiones elija el idioma en el que desea cambiar las propiedades. Busque Clang_format_fallback Style(por ejemplo: para C ++ C_Cpp: Clang_format_fallback Style) y cambie el valor de Visual StudioaGoogle
Riccardo Bonesi

¡Gracias! Esta es una de las características más rabiosas de Visual Studio para Unity.
SacWebDeveloper

28

Tenga en cuenta que si está utilizando Resharper, el procedimiento anterior no ayudará, ya que Resharper anula el comportamiento VS nativo. Si ese es su caso, vaya a Resharper> Opciones, Edición de código> C #> Estilo de formato> Diseño de llaves, configure todas las opciones superiores de "Diseño de llaves" en "Al final de la línea (estilo K&R)".

Me tomó un tiempo darme cuenta de esto, así que espero que ayude a alguien.


10

Para todos los usuarios de Mac, así es como lo resolví:

Preferencias -> Código fuente -> Formato de código -> Código fuente C # -> Formato C # -> Editar

Allí puede cambiarlo en la Categoría: Nuevas líneas

ejemplo de imagen


9

Echa un vistazo Tools -> OptionsentoncesText Editor -> C# -> Formatting -> New Lines


8

Puedes cambiar eso en las opciones de tu Visual Studio. Vaya a Herramientas -> Opciones -> Editor de texto -> C # -> formato -> nuevas líneas (o algo similar, solo tengo la versión alemana de Visual Studio). A continuación, puede cambiar dónde desea colocar los corchetes en la siguiente línea y dónde no. Personalmente, eliminé todas las opciones, pero si desea tener una nueva línea, por ejemplo, en bucles, hay muchas opciones para personalizar esto.


0

Para C ++, la única forma en que puedo evitar que VC ++ ponga '{' en una nueva línea para los espacios de nombres es desmarcando la opción "Formatear automáticamente el bloque cuando escribo un}":

ingrese la descripción de la imagen aquí


-1

Para hacer lo mismo con CSS tienes que ir a: Tools > Options > Text Editor > CSS > Advanced > Formatting > Automatic Formatting > Off

Formato automático CSS desactivado

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.