Visual Studio에서 코드를 자동으로 포맷하는 방법은 무엇입니까?


818

Visual Studio에서 자동 서식을 지정하여 메서드와 루프를 올바르게 들여 쓰기 할 수 있지만 설정을 찾을 수 없습니다.


17
최상위 메뉴에서 : 편집-> 고급-> 문서 형식
zipzit

6
2019 년은 어떻습니까?
l --''''''--------- '' '' '' '' '' '' '

1
vs2019에서 동일
Finn

"몇 번의 키 입력으로 코드 블록의 형식을 어떻게 지정합니까?" 그것은 (당신이 타이핑 / 붙여 넣기 등을 할 때 "자동 서식을 어떻게 지정합니까?"대신) 인기있는 답변이 말하는 것 같습니다.
KevinVictor

Visual Studio 2017의 경우 사용 단축키 Ctrl + Alt + 입력
페어 츠 술라이

답변:


1314

선택 형식을 지정하려면 : Ctrl+ K, Ctrl+F

문서를 형식화하려면 : Ctrl+ K,Ctrl +D

사전 정의 된 키보드 단축키를 참조하십시오 . (이 둘은Edit.FormatSelectionEdit.FormatDocument.)

OSX 참고 사항

OSX에서는 CMD ⌘키를 사용 하지 마십시오 Ctrl.

  • 선택의 형식을 지정하려면 CMD ⌘+ K,CMD ⌘+F
  • 듀크먼트를 포맷하려면 : CMD ⌘+ K, CMD ⌘+D

17
2010 대 CTRL +의 K, Ctrl + D 것 같다
Sarawut Positwinyu을

29
Visual Studio 2013의 Ctr + K, Ctrl + D는 문서를 형식화합니다.
Kris

5
당신이있는 경우에 VS2010에서 Format document is not available...오류 메시지를 참조하시기 바랍니다 : stackoverflow.com/q/8812741/1016891을
tom_mai78101

4
VS2013
James

9
왜 Microsoft가 계속 변경하는지 모르겠습니다. 나중에 참조 할 수 있도록 편집-> 고급-> 문서 형식에서 찾을 수 있습니다. 다음 반복에서 해당 메뉴의 이름을 바꿀 것입니다.
Jeremy

153

Visual Studio 2010/2013/2015/2017의 경우

  • 형식 문서 ( Ctrl+K, Ctrl+D) 그래서 입력 Ctrl+KTHEN, 그리고Ctrl+D 그 순서대로
  • 형식 선택 ( Ctrl+K, Ctrl+F)

도구 모음 편집 -> 고급 (당신이 볼 수없는 경우 고급을 , 솔루션 탐색기에서 코드 파일을 선택하고 다시 시도)

C # 코딩을 설정하면 바로 가기가 다르게 표시 될 수 있지만 툴바를 통해 탐색하면 바로 가기가 표시됩니다.

작동하지 않는 경우 자동 형식이 작동하지 않도록 괄호가없는 것처럼 코드에서 오류를 찾으십시오.


11
작동하지 않는 것을 발견하면 괄호 {}, ()를 확인하십시오. 작동하지 않는 경우 파일 어딘가에 괄호가 있기 때문입니다.
ono2012

40

아래 단계를 따르십시오.

  • 이동 Tools
  • 이동 Options
  • 로 이동 Text Editor options
  • 원하는 언어를 클릭하십시오. 나는 C#예로서 사용 했다.

아래 이미지를 참조하십시오 :

여기에 이미지 설명을 입력하십시오


24
그리고 내가 이것을 한 후에? 자동 들여 쓰기를 처리하는 설정이 보이지 않습니까?
MrJalapeno

21
@MrJalapeno 나는 6 년 전에 내가 어떤 질문에 대답했는지 전혀 알지 못했지만 34 명이 유용하다고 생각했습니다. 혼란을 드려 죄송합니다. 내 대답에 서식 관련 옵션이 있기 때문에 내 대답이 적용되는 질문을 잘못 해석했을 수 있습니다. 뒤늦게 보면 OP가 ctrl + k, ctrl + d를 찾고 있다고 말하는 것이 안전합니다.
Pete

(코드 스타일) 서식> "붙여 넣기시 자동 형식"
tomsmithweb

37

저장할 때마다 전체 문서를 형식화하는 "문서 형식 저장"이라는 확장자를 설치했습니다. VS15 또는 17에 설치하려면 도구에서 "확장 및 업데이트 ..."를 클릭하십시오.

여기에 이미지 설명을 입력하십시오

그런 다음 왼쪽 패널에서 "온라인"으로 이동하여 "저장시 문서 포맷"을 검색하십시오. 여기에 이미지 설명을 입력하십시오

도움이 되길 바랍니다!.


또한 Visual Studio 마켓 플레이스 marketplace.visualstudio.com/…으로 설치 가능
VMM

28

질문이 조금 오래되었지만 누군가가 유용하다고 생각할 수도 있습니다.

로 이동하여 새 키 바인딩을 정의 할 수 있습니다 Tools -> options -> Environment -> keyboard

여기에 이미지 설명을 입력하십시오


감사. 나를 위해 VS2005 방식의 Ctrl E + D :)
nawfal

20
  1. 도구-> 확장 및 업데이트로 이동하여 검색에 "생산성"을 입력하십시오. 1
  2. '생산력 전동 공구 2015'설치
  3. VS를 다시 시작하십시오.
  4. 도구-> 옵션-> 생산성 전원 도구-> 전원 명령으로 이동하여 "저장시 문서 형식화"를 확인하십시오. 2

VB.NET에서와 같이 입력하는 동안 작동하면 좋을 것입니다.
tmighty

당신이 실제로 꽤 시끄러운 그렇지 않으면 커밋이 볼 수있는 파일을 변경하기 전에 변경 내용을 모든 새 문서 당신에게 편집 포맷과 커밋에 익숙해있다
smurtagh

Visual Studio 2019 용 확장을 설치했는데 HTML 복사 후 powerCommands가 표시되지 않습니다.
Amir Dora

그것은 나를 위해 작동합니다, Microsoft Visual Studio Community 2019 버전 16.5.2
Slava Latun


10

HTML 소스 편집 도구 모음을 표시하면 "전체 문서 포맷"단추도 있습니다


정말 이상한 곳입니다. 나는 이것을 위해 온통 히 찾고있다.
rory.ap

1
VS13이 있는데 해당 도구 모음에 "문서 서식"단추가 없습니다.
emcor

1
Microsoft Visual Studio Community 2015 버전 14.0.23107.0 D14REL을 사용하면 언급 된 도구 모음에 "전체 문서 형식"단추가 있습니다.
Ian Carpenter

9

허용 된 답변으로 제공된 솔루션은 Microsoft Visual Studio 2012 에는 적용되지 않습니다 .

VS2012의 경우 바로 가기는 다음과 같습니다.

  • 강조 표시된 코드 블록 : Ctrl+ K, Ctrl+F
  • 문서 전체 형식 : Ctrl+ K, Ctrl+D

실제로 그것은 틀리지 않습니다. 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는 명령이 아닙니다.
지오 빌

5
처음 시작할 때 선택한 환경 / 개발 설정과 관련이 있다고 생각합니다. 그들은 둘 다 나를 위해 일하므로, 나는 불평하지 않을 것입니다 : D
Alan006

@ Alan006이 맞습니다. VS2010 이상의 기본 환경은 "Visual Basic"의 키보드 레이아웃을 사용합니다 ( 도구-> 옵션-> 키보드 확인 ). "Visual C # 2005"에는 키보드 바인딩이 약간 다릅니다.
Bryan Way


7

VS 2017 및 2019

형식 문서는 CTRL E + D입니다.

그러나 ... 문서 서식 단추를 도구 모음추가하려면 이 작업을 수행하십시오.
툴바를 마우스 오른쪽 버튼으로 클릭하십시오.
"사용자 정의"를
선택하십시오. "명령"탭을 선택하십시오.
"도구 모음"라디오 버튼을 선택하십시오.
라디오 버튼 옆의 풀다운 메뉴에서 "텍스트 편집기"를 선택하십시오.

지금...

Add Command버튼을 클릭하십시오 .
카테고리 : 편집
명령 : 문서 형식
클릭OK


6

아래의에서 도구 -> 옵션 -> 텍스트 편집기 , 다음에 갈 서식 -> 일반 당신의 서식을 원하는대로 언어의 부분은 발견 할 것이다 일반 . 세 가지 형식 확인란을 모두 선택하십시오.

에서 도구 -> 옵션 -> 텍스트 편집기 , 다음에가는 당신은 발견 할 것이다 당신의 서식을 원하는대로 언어의 섹션 들여 쓰기를 . 스마트 선택 하면 닫는 요소 중 하나를 사용할 때마다 자동 서식이 활성화됩니다. )} 해당 블록 내에서.

키 입력이 필요 없습니다.


1
"이미 엉망이 된"코드는 개선되지 않지만 VB.NET은이를 수행합니다.
tmighty

5

마지막 툴바 버튼의 오른쪽에있는 작은 드롭 다운 화살표를 클릭하여 "버튼 추가 또는 제거"를 선택한 다음 틱을 추가하려는 버튼을 클릭하여 툴바에 버튼을 추가 할 수 있습니다. 선택한 버튼이 툴바에 나타납니다 ...

여기에 이미지 설명을 입력하십시오

그런 다음 텍스트를 선택하고 들여 쓰기 늘리기 또는 들여 쓰기 줄이기 단추를 클릭하십시오. Visual Studio 2013에서만 테스트했습니다.



5

원래 질문에 "설정을 찾을 수 없습니다"라고했습니다.

간단한 대답은 다음과 같습니다. 최상위 메뉴를 본 다음

편집-> 고급-> 문서 형식

해당 기능에 대해 현재 할당 된 키 스트로크가 표시됩니다. 암기 할 특별한 것이 없습니다. 다른 운영 체제에서 여러 개발자 환경을 사용하는 경우 실제로 도움이됩니다.


5

데이터를 선택하고 마우스 오른쪽 버튼을 클릭하면이 옵션이 나타납니다. 형식 문서 및 형식 선택

이 이미지를보십시오


이 스레드는 Visual Studio에 관한 것입니다. 비주얼 스튜디오 코드에 대한 의견 회담
S. 열 Brinke


2

위의 StarwfanaticEwan 의 답변 을 더 늘리기 위해 . 당신은 추가 할 IDE를 사용자 정의 할 수 있는 버튼을 어떤 도구 모음 - 당신이 (증가 / 감소 들여 쓰기와 같은 다른 모든 편집 컨트롤에 텍스트 편집과 같은) 다른 도구 모음으로합니다 (HTML 원본 편집 도구 모음이로) 서식 단추를 추가 할 수 있도록.

도구 모음 오른쪽에있는 화살표> 단추 추가 또는 제거> 사용자 정의 ...> 명령 탭> 명령 추가 ... 단추를 클릭하십시오.

문서 형식선택 형식 은 모두 편집 그룹에 있습니다.

(VS2010 및 VS2013에서 테스트)



1

으로 연속 서식 (나에 의해 개발 된 상업) 확장, 코드가 정말 입력하면 자동으로 포맷됩니다.


훌륭하고 기본적으로 VS에 포함되어야하지만 가격이 너무 높습니다. 19 € 동안 나는 "좋아!"라고 말했을 것입니다.
tmighty

1

Mac이 있는데 코드> 환경 설정> 설정> 작업 공간> 포맷 을 클릭 한 다음 저장시 포맷 을 선택했습니다 .

이제 내가 누를 때마다 cmd+ s파일 형식이 자동으로 지정됩니다.

여기에 이미지 설명을 입력하십시오


2
Mac은 없지만 Mac의 Visual Studio는 VS Code ??처럼 보이지만 답변 / 스크린 샷은 Visual Studio가 아닌 VS Code에 대한 것입니다. 이것은 OP가 요구하는 것입니다.
Gregg L

1

Visual Studio Extension- CodeMaid 는 꽤 좋습니다.


확장 프로그램을 찾을 수 없음
Sushan

codemaid.net이 호쾌합니까?
제임스

1
이 확장을 사용하면 폴더를 마우스 오른쪽 버튼으로 클릭하고 모든 파일의 모든 코드를 정리할 수있어 매우 편리합니다.
xinthose

0

섹션 잘라 내기 / 붙여 넣기는 또 다른 빠른 방법이며 기억하기 쉽습니다.


2
...? 그것은 나를 위해 아무것도 포맷하지 않습니다. 사실, 내가 찾은 이유는 잘라서 붙여 넣기 후에 형식을 지정하는 것이 었습니다.
tenwest

그것은 defatult 설정으로 코드를 포맷하지 않습니다. 붙여 넣은 후에 작업을 수행하는 설정 / 플러그인이있을 수 있습니다. Novermber 2018 (v 1.30.2)까지는 SHIFT + ALT + F
Pablo

0

여유가 있거나 (30 일 무료 평가판 자격이있는 경우) Jetbrains ReSharper 는 전체 프로젝트 디렉토리를 다시 포맷 할 수 있습니다.

설치-> 디렉토리를 마우스 오른쪽 버튼으로 클릭하고 컨텍스트 메뉴에서 정리 코드를 선택하십시오.


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
@Robson 이런 식으로 제안 된 수정 사항을 제출하는 것이 좋습니다. 모든 코드를 강조 표시하고 Ctrl-K를 누르면 자동으로 들여 쓰기됩니다.
EJoshuaS-복원 Monica Monica

0

오른쪽 메뉴 클릭 옵션을 사용하여 선택한 코딩 문서의 형식을 지정할 수도 있습니다. 아래 스크린 샷을보십시오

여기에 이미지 설명을 입력하십시오


0

자동으로 들여 쓰기하려는 텍스트를 선택하십시오.

편집, 고급에서 형식 선택을 클릭하거나 Ctrl + K, Ctrl + F를 누릅니다. 형식 선택은 프로그래밍중인 언어의 스마트 들여 쓰기 규칙을 선택한 텍스트에 적용합니다.

단계 (1) :-CTRL + A

단계 (2) :-CTRL + K

단계 (3) :-CTRL + F



-1

C # 코드 용 Visual Studio 2015 및 2017 1) 파일 끝으로 스크롤합니다. 2) 마지막 "Curly Bracket"제거} 3) 위의 줄에 오류가 표시 될 때까지 기다립니다. 4) "Curly Bracket"} fini를 교체하십시오. :)

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.