Как вы автоматически форматируете код в Visual Studio?

821

Я знаю, что Visual Studio может автоматически форматировать, чтобы мои методы и циклы имели отступ, но я не могу найти настройки.

user719550
источник
17
Из верхнего меню: Правка -> Дополнительно -> Формат документа
zipzit
6
что насчет 2019 года?
l --''''''--------- '' '' '' '' '' ''
1
то же самое в vs2019
финн
Вы имеете в виду "как вы форматируете блок кода парой нажатий клавиш"? Похоже, именно на это ссылаются популярные ответы (а не «как вы автоматически форматируете» ... при вводе / вставке / и т.д.).
КевинВиктор
Для Visual Studio 2017. Используя комбинацию клавиш Ctrl + Alt + Enter
Файруз Сулейман

Ответы:

1317

Чтобы отформатировать выделение: Ctrl+ K, Ctrl+F

Чтобы отформатировать документ: Ctrl+ K, Ctrl+D

Смотрите заранее определенные сочетания клавиш . (Эти двое есть Edit.FormatSelectionи Edit.FormatDocument.)

Примечание для OSX

На OSX используйте CMD ⌘ключ не Ctrl:

  • Чтобы отформатировать выделение: CMD ⌘+ K, CMD ⌘+F
  • Для формирования ducument: CMD ⌘+ K, CMD ⌘+D
Богдан Вербенец
источник
17
против 2010, кажется, Ctrl + K, Ctrl + D
Саравут Positwinyu
29
Его Ctr + K, Ctrl + D в Visual Studio 2013 для форматирования документа.
Крис
5
В VS2010, если у вас есть Format document is not available...сообщение об ошибке, прочитайте: stackoverflow.com/q/8812741/1016891
tom_mai78101
4
Это точно для VS2013
Джеймс Вежба
9
Я не знаю, почему Microsoft продолжает менять их. Для дальнейшего использования его можно найти в меню «Правка» -> «Дополнительно» -> «Формат документа». Кто знает, возможно, они собираются переименовать это меню на следующей итерации.
Джереми
154

Для Visual Studio 2010/2013/2015/2017

  • Формат документа ( Ctrl+K, Ctrl+D), введите Ctrl+K, Ctrl+Dа затем, как это последовательность
  • Выбор формата ( Ctrl+K, Ctrl+F)

Панель инструментов Правка -> Дополнительно (если вы не видите Advanced , выберите файл кода в обозревателе решений и попробуйте снова)

Ваши ярлыки могут отображаться иначе, чем мои, так как я настроен на кодирование на C #, но навигация по панели инструментов приведет вас к вашим.

Если это не работает, поищите ошибки в своем коде, например пропущенные скобки, которые мешают работе автоматического форматирования

ono2012
источник
11
Если вы обнаружите, что он не работает, проверьте скобки {}, (), когда он не работает для меня, потому что где-то в файле есть открытые скобки.
ono2012
40

Следуйте инструкциям ниже:

  • Перейти к Tools
  • Перейти к Options
  • Перейти к Text Editor options
  • Нажмите на язык по вашему выбору. Я использовал C#в качестве примера.

Смотрите изображение ниже:

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

Пит
источник
24
И как только я это сделал? Я не вижу каких-либо из этих настроек для обработки автоматического отступа?
MrJalapeno
21
@MrJalapeno Я абсолютно не знаю, на какой вопрос я отвечал здесь 6 лет назад, но 34 человека сочли его полезным. Извините за путаницу. Возможно, я неверно истолковал вопрос, и в этом случае мой ответ применим, поскольку в моем ответе есть параметры, связанные с форматированием. Оглядываясь назад, можно с уверенностью сказать, что ОП искал ctrl + k, ctrl + d.
Пит
(стиль кода) Форматирование> "автоформатирование при вставке"
tomsmithweb
37

Я установил расширение под названием «Формат документа при сохранении», которое форматирует весь документ каждый раз, когда вы сохраняете его. Чтобы установить его в VS15 или 17, на Сервисе просто нажмите «Расширения и обновления ...»:

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

А затем просто перейдите в «Онлайн» на левой панели и найдите «Формат документа при сохранении». введите описание изображения здесь

Я надеюсь, что это помогает!.

VMM
источник
Кроме того, вы можете установить его визуальным место студии рынка marketplace.visualstudio.com/...
VMM
28

Несмотря на то, что вопрос немного устарел, кому-то это может пригодиться.

Вы можете определить новые привязки клавиш, перейдя в Tools -> options -> Environment -> keyboard

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

Сами
источник
Спасибо. Для меня Ctrl E + D в схеме VS2005 :)
nawfal
20
  1. Перейдите в Инструменты -> Расширения и обновления и введите «производительность» в поиске: 1
  2. Установите «Инструменты для повышения производительности 2015»
  3. Перезагрузите VS.
  4. Перейдите в Инструменты -> Параметры -> Инструменты управления производительностью -> Команды питания и установите флажок «Форматировать документ при сохранении»: 2
Слава Латунь
источник
Было бы хорошо, если бы он работал во время набора текста, как с VB.NET:
tmighty
необходимо привыкнуть к форматированию каждого нового документа, который вы редактируете, и внесению изменений, прежде чем вы фактически измените файл, иначе коммиты могут выглядеть довольно шумно
smurtagh
Установил расширение для visual studio 2019, не вижу powerCommands после HTML Copy.
Амир Дора
Это работает для меня, Microsoft Visual Studio Community 2019 Версия 16.5.2
Слава Латун
15

На маке: Shift+ Option+F

На убунту: Ctrl+ Shift+I

Джексон смит
источник
10

При отображении панели инструментов редактирования исходного кода HTML также есть кнопка «Форматировать весь документ».

Starwfanatic
источник
Это действительно странное место для этого. Я искал повсюду для этого.
rory.ap
1
У меня VS13, на этой панели инструментов нет кнопки «Формат документа».
Эмкор
1
При использовании Microsoft Visual Studio Community 2015 версии 14.0.23107.0 D14REL на упомянутой панели инструментов есть кнопка «Форматировать весь документ».
Ян Карпентер
9

Решение, приведенное в принятом ответе, не относится к Microsoft Visual Studio 2012 .

В случае VS2012 ярлыки:

  • Для выделенного блока кода: Ctrl+ K, Ctrl+F
  • Для форматирования всего документа: Ctrl+ K, Ctrl+D
Geowil
источник
На самом деле это не так. И CTRL + K, F, и CTRL + E, F делают одно и то же. Если вы перейдете в РЕДАКТИРОВАТЬ -> Дополнительно, вы увидите сочетания клавиш CTRL + E, D и CTRL + E, F. Также комментирование может быть сделано либо с помощью CTRL + K, C или CTRL + E, C. - Использование VS2012 Premium со всеми последними установленными обновлениями.
Alan006
1
@ Alan006 Интересно. Моя установка VS2012 Pro говорит, что Ctrl + e, f / Ctrl + e, d не являются командами.
Geowil
5
Я думаю, что это может быть связано с тем, какие параметры среды / разработки вы выбираете изначально при первом запуске. Они оба работают для меня, хотя, поэтому я не буду жаловаться: D
Alan006
@ Alan006 - это право, среда по умолчанию для VS2010 и выше использует раскладку клавиатуры для «Visual Basic» (выберите Сервис -> Параметры -> Клавиатура ). «Visual C # 2005» имеет несколько иные привязки клавиатуры.
Брайан Уэй
8

Я использовал эти комбинации. Я автоматизировал этот процесс при сохранении документа. Вы можете попробовать мое расширение Format Document при сохранении

mynkow
источник
7

В VS 2017 и 2019

Формат документа есть CTRL E + D.

Но ... если вы хотите добавить кнопку «Формат документа» на панель инструментов, сделайте это.
Щелкните правой кнопкой мыши на панели инструментов.
Выберите «Настроить ...».
Выберите вкладку «Команды».
Выберите переключатель «Панель инструментов».
Выберите «Текстовый редактор» в выпадающем меню рядом с переключателем (или на любой панели инструментов, на которой вы хотите, чтобы кнопка была нажата)

Сейчас же...

Нажмите на Add Commandкнопку.
Категории: Редактировать
Команды: Формат документа
НажмитеOK

Крис Катиньяни
источник
6

В разделе « Инструменты» -> «Параметры» -> «Текстовый редактор» перейдите в раздел « Форматирование» -> «Общие » на любом языке, который вы хотите отформатировать, и найдете « Общий» . Проверьте все три флажка форматирования.

В разделе Инструменты -> Параметры -> Текстовый редактор , затем перейдите в раздел TABS на любом языке, который вы хотите отформатировать, вы найдете отступы . Выберите Smart, и он активирует автоматическое форматирование всякий раз, когда вы используете один из закрывающих элементов; )} в этом блоке.

Нет необходимости нажатия клавиш.

Эрик
источник
1
Это не улучшает "уже испорченный" код, пока VB.NET делает это.
tmighty
5

Вы можете добавить кнопки на панель инструментов, щелкнув маленькую стрелку выпадающего меню справа от последней кнопки панели инструментов, выберите «Добавить или удалить кнопки», а затем нажмите кнопки, которые хотите добавить к ним. Выбранные вами кнопки появятся на вашей панели инструментов ...

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

Затем вы просто выбираете текст и нажимаете кнопки «Увеличить отступ» или «Уменьшить отступ». Я проверял это только в Visual Studio 2013.

Ewan
источник
5

Щелкните правой кнопкой мыши:

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

Работает в VS 2015, возможно, более ранней версии.

RayLoveless
источник
5

В первоначальном вопросе говорилось: «Я не могу найти настройки».

Простой ответ: посмотрите на верхнее меню, затем

Правка -> Дополнительно -> Формат документа

Вы также увидите текущие назначенные нажатия клавиш для этой функции. Ничего особенного, чтобы запомнить. Это действительно помогает, если вы используете несколько сред разработки в разных операционных системах.

zipzit
источник
5

Выберите данные и щелкните правой кнопкой мыши, и вы найдете эту опцию. ФОРМАТ ДОКУМЕНТОВ И ВЫБОР ФОРМАТОВ

увидеть это изображение

Аджит Мурья
источник
Эта тема о Visual Studio. Ваш комментарий рассказывает о Visual Studio Code
С. тен
4

В более новых версиях ярлык для форматирования всего документа: Shift+ Alt+F

Лукас Берналте
источник
2

Просто для дальнейшего ответа Starwfanatic и Ewan выше. Вы можете настроить свою среду IDE для добавления любой кнопки на любую панель инструментов, чтобы можно было добавить кнопку «Формат» (как на панели инструментов «Редактирование исходного кода HTML») на любую другую панель инструментов (например, «Редактирование текста» со всеми другими элементами редактирования, такими как увеличение / уменьшение отступа).

Нажмите стрелку справа от панели инструментов> Добавить или удалить кнопки> Настроить ...> вкладка Команды> Кнопка Добавить команду ....

Формат документа и формат выбор оба под редактированием группы.

(Проверено в VS2010 и VS2013)

разнесены
источник
1

С расширением Continuous Formatting (коммерческим, разработанным мной) код форматируется действительно автоматически при вводе.

Сергей Власов
источник
Это замечательно и должно быть включено в VS по умолчанию, но цена слишком высока. За 19 € я бы сказал "Отлично!"
tmighty
1

У меня есть Mac, и я нажал « Код»> «Настройки»> «Настройки»> «Рабочая область»> «Форматирование», а затем выбрал « Формат при сохранении» .

Теперь каждый раз, когда я нажимаю cmd+, sон автоматически форматирует файл.

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

Supertramp
источник
2
Хотя у меня нет Mac (и, следовательно, возможно, Visual Studio на Mac выглядит как VS Code ??), ваш ответ / снимок экрана относится к VS Code, а не к Visual Studio, о которой спрашивает OP.
Грегг Л
1

Расширение Visual Studio - CodeMaid довольно хорошо.

Джеймс
источник
Расширение не найдено
Сушан
codemaid.net плохо?
Джеймс
1
С этим расширением вы можете даже щелкнуть правой кнопкой мыши по папке и очистить весь код во всех файлах в ней, что очень удобно.
xinthose
0

Вырезание / вставка раздела - еще один быстрый способ (и его легко запомнить).

Дэвид Андерсон
источник
2
...? это ничего не форматирует для меня. на самом деле, причина, по которой я это искал, состояла в том, чтобы отформатировать ПОСЛЕ вырезания и вставки ..
tenwest
Это не форматирует ваш код с настройками по умолчанию. Может быть, у вас есть некоторые настройки / плагин, который делает работу после вставки. До ноября 2018 года (v 1.30.2) путь SHIFT + ALT + F
Пабло
0

Если вы можете себе это позволить (или если вы имеете право на 30-дневную бесплатную пробную версию) Jetbrains ReSharper может переформатировать весь каталог проекта.

Просто установите -> щелкните правой кнопкой мыши каталог -> выберите код очистки из контекстного меню.

dcmorse
источник
0
#include "stdafx.h"
#include <stdio.h>


int main(){
    char filename[15];

    printf("Enter file name:");
    scanf("%s", filename);
    Automat(filename);
    freq(filename);
}

int Automat(char filename[]){

    FILE*fp;
    char c;
    int state = 1;
    int duma = 0;
    fp = fopen(filename, "r");
    if (fp == NULL){
        printf("Error");
        system("pause");
    }
    while (!feof(fp)){
        c = fgetc(fp);

        switch (state){
        case 1:
            if (c == '\t' || c == '\n' || c == ' '){
                state = 3;
                break;
            }
        case 2:
            if (c >='A'|| c<='Z'){
                break;
            }

        case 3: duma++;
            state = 1;
            break;
        }
    }
    printf("Broq e : %d\n", duma);
    return 1;
}
int freq(char filename[]){

    FILE*fp;
    char c;
    int state = 1, sequence = 0;
    fp = fopen(filename, "r");
    if (fp == NULL){
        printf("Error");
        system("pause");
    }



    while (!feof(fp)){
        c = fgetc(fp);
        switch (state){
        case 1:
            if (c >= 'A' && c <= 'Z'){
                state = 2;
                break;
            }

        case 2:
            if (c == '\t' || c == '\n'||c == ' '){
                sequence++;
                state = 1;
                break;

            }
        }

    }
    printf("Sequence is : %d\n", sequence);
}
Ивайло
источник
1
@ Робсон Для чего-то подобного, вероятно, лучше просто предложить предлагаемое изменение. Вы можете просто выделить весь код и нажать Ctrl-K, и он автоматически сделает отступ.
EJoshuaS - Восстановить Монику
0

Вы также можете попробовать щелкнуть правой кнопкой мыши меню, чтобы отформатировать выбор документа кодирования. Посмотрите на скриншот ниже

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

Суреш К
источник
0

Выберите текст, который вы хотите автоматически сделать отступ.

Нажмите «Выбор формата» в меню «Правка», «Дополнительно» или нажмите сочетание клавиш CTRL + K, CTRL + F. Выбор формата применяет правила интеллектуального отступа для языка, на котором вы программируете, к выделенному тексту.

Шаг (1): - CTRL + A

Шаг (2): - CTRL + K

Шаг (3): - CTRL + F

Кешав Гера
источник
0

Вы также можете использовать это расширение.

Softmixt
источник
-1

В Visual Studio 2015 и 2017 для кода C #. 1) Прокрутите до конца файла. 2) Удалите последнюю "фигурную скобку"} 3) Дождитесь, пока в строке над ней появится сообщение об ошибке 4) Замените "фигурную скобку"} окончательно. :)

podzach
источник