Como fazer o Visual Studio não colocar em uma nova linha?


97

Se eu tiver um código como este

if(true){

e eu adiciono

}

é transformado em

if (true)
{
}

mas eu gostaria que ficasse no formato

if (true) {
}

Mesmo que eu copie um código ifassim, ele será transformado em uma versão mais longa.

PS: Eu entendo que usar a versão mais longa é um padrão C ++ e C #, mas eu venho de um padrão diferente e é mais fácil usar a versão mais curta.

Aposto que há alguma opção de formatador que pode ser desativada ou alterada.

Respostas:


143

Vá para Ferramentas -> Opções -> Editor de Texto -> C # -> Estilo de Código -> Formatação-> Novas Linhas

Aqui existem muitas opções. Remova a seleção de todas as opções aqui para nunca colocar o colchete aberto em uma nova linha.

EDITAR

A seção New Line Options for expressionsnão está relacionada ao posicionamento do código em conjunto com colchetes, portanto, aqueles que você não precisa tocar.


9
+1 obrigado. No entanto, quando eu os desligo e, em seguida, coloco deliberadamente a chave na nova linha, ele a move de volta para a mesma linha :( Existe uma maneira de impedir que ele se intrometa em coisas que não pedi para ele mexer?
— Engenheiro revertido

30
Que monstro habilitaria novas linhas por padrão?
— Abastecido por Café de

Estou usando a visualização do VS2019 e tive que fazer a alteração e, em seguida, sair completamente do Visual Studio e reabri-lo para que a alteração seja mantida. Se eu apenas alterasse e tentasse reformatar o documento, ele seria redefinido para as configurações anteriores.
— Bernard

Para o Visual Studio Code, vá em Arquivo -> Preferências -> Configurações e, em Extensões, escolha o idioma que deseja alterar as propriedades. Pesquise Clang_format_fallback Style(por exemplo: para C ++ C_Cpp: Clang_format_fallback Style) e altere o valor de Visual StudioparaGoogle
— Riccardo Bonesi

Obrigado! Este é um dos recursos mais indutores da raiva do Visual Studio for Unity.
— SacWebDeveloper

29

Tenha em mente que se você estiver usando o Resharper, o procedimento acima não ajudará, já que o Resharper substitui o comportamento nativo do VS. Se for esse o seu caso, vá para Resharper> Opções, Edição de código> C #> Estilo de formatação> Layout de colchetes, defina todas as opções de "Layout de colchetes" para "No final da linha (estilo K&R)".

Levei um tempo para descobrir isso, então espero que ajude alguém.


10

Para todos os usuários de Mac que estão por aí, resolvi assim:

Preferências -> Código-fonte -> Formatação do código -> código-fonte C # -> Formato C # -> Editar

Lá você pode alterá-lo na Categoria: Novas Linhas

exemplo de imagem


9

Dê uma olhada Tools -> OptionsentãoText Editor -> C# -> Formatting -> New Lines


8

Você pode alterar isso nas opções do Visual Studio. Vá para Ferramentas -> Opções -> Editor de Texto -> C # -> formatação -> novas linhas (ou algo semelhante, só tenho a versão alemã do Visual Studio). Você pode então alterar onde deseja colocar os colchetes na próxima linha e onde não deseja. Pessoalmente, removi todas as opções, mas se você quiser ter uma nova linha, por exemplo, em loops, existem muitas opções para personalizar isso.


0

Para C ++, a única maneira de evitar que o VC ++ coloque '{' em uma nova linha para namespaces é desmarcando a opção "Formatar bloco automaticamente quando eu digitar um}":

insira a descrição da imagem aqui


-1

Para fazer o mesmo com o CSS, você deve ir para: Tools > Options > Text Editor > CSS > Advanced > Formatting > Automatic Formatting > Off

Formatação automática CSS desativada

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.