Як змусити Visual Studio не ставити {на новий рядок?


97

Якщо у мене є такий код

if(true){

і я додаю

}

він трансформується в

if (true)
{
}

але я хотів би, щоб він залишався у форматі

if (true) {
}

Навіть якщо я скопіюю такий код if, він трансформується у довшу версію.

PS Я розумію, що використовувати довшу версію - це стандарт C ++ та C #, однак я походжу з іншого стандарту, і мені простіше використовувати коротшу версію.

Б'юсь об заклад, є якийсь варіант форматування, який можна вимкнути або змінити.

Відповіді:


142

Перейдіть до Інструменти -> Параметри -> Текстовий редактор -> C # -> Стиль коду -> Форматування-> Нові рядки

Тут є маса варіантів. Зніміть галочку з усіх параметрів тут, щоб ніколи не ставити відкриту дужку на новий рядок.

РЕДАГУВАТИ

Розділ New Line Options for expressionsне стосується розміщення коду у поєднанні з дужками, тому ті, до яких не потрібно торкатися.


9
+1 дякую. Однак, коли я їх вимикаю, а потім навмисно ставлю фігурну дужку на новий рядок, вона переміщує її назад до тієї ж лінії :( Чи є способи зупинити її втручання у речі, з якими я не просив це возитися?
— Inversed Engineer

30
Який монстр увімкнув би нові рядки за замовчуванням?
— Заправлено кавою

Я використовую попередній перегляд VS2019, і мені довелося внести зміни, а потім повністю вийти з Visual Studio і знову відкрити його, щоб зміни дотримувались. Якби я просто змінив його, а потім спробував переформатувати документ, він просто скинув би попередні налаштування.
— Бернард

Для коду Visual Studio перейдіть Файл -> Налаштування -> Налаштування та в розділі Розширення виберіть мову, для якої потрібно змінити властивості. Шукайте Clang_format_fallback Style(наприклад: для C ++ C_Cpp: Clang_format_fallback Style) і змініть значення з Visual StudioнаGoogle
— Ріккардо Бонесі

Дякую! Це одна з особливостей, що викликають лють Visual Studio для Unity.
— SacWebDeveloper

29

Майте на увазі, що якщо ви використовуєте Resharper, вищевказана процедура не допоможе, оскільки Resharper замінює власну поведінку VS. Якщо це ваш випадок, перейдіть до Resharper> Параметри, Редагування коду> C #> Стиль форматування> Розкладка фігурних дужок, встановіть для всіх верхніх опцій "Розкладка фігурних дужок" значення "В кінці рядка (стиль K&R)".

Мені знадобився якийсь час, щоб це зрозуміти, тому, сподіваюся, це комусь допоможе.


10

Для всіх користувачів Mac, я вирішив це так:

Налаштування -> Вихідний код -> Форматування коду -> Вихідний код C # -> Формат C # -> Редагувати

Там ви можете змінити його в розділі Категорія: Нові лінії

приклад зображення



8

Ви можете змінити це в параметрах Visual Studio. Зайдіть в Інструменти -> Параметри -> Текстовий редактор -> C # -> форматування -> нові рядки (або щось подібне, я маю лише німецьку версію Visual Studio). Потім ви можете змінити, де потрібно вставити дужки в наступний рядок, а де ні. Особисто я видалив усі параметри, але якщо ви хочете мати новий рядок, наприклад, у циклах, є багато варіантів, щоб налаштувати це.


0

Для C ++ єдиний спосіб, яким я можу уникнути VC ++, розміщуючи '{' у новому рядку для просторів імен, - знімаючи прапорець біля пункту "Автоматично форматувати блок, коли я ввожу a}":

введіть тут опис зображення


-1

Щоб зробити те саме для CSS, вам потрібно перейти до: Tools > Options > Text Editor > CSS > Advanced > Formatting > Automatic Formatting > Off

Автоматичне форматування CSS вимкнено

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.