Як змусити 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.