Visual Studio Code (VSCode)에서 코드의 형식을 지정하는 방법


990

의 상응하는 무엇입니까 Ctrl+ K+ FCtrl+ K+ DVisual Studio에서 Windows에서 Visual Studio를 코드 편집기에서, 또는 "아름답게"코드를 포맷 하시나요?


47
필사적 으로 XML포맷 하려고하는 모든 사람들에게 (현재 사용할 수없는 것 같음) 확장을 설치하여이를 달성 할 수 있습니다. 작업을 올바르게 수행하기위한 XML 도구 를 찾았습니다 . 면책 조항 : 나는이 프로젝트와 관련이 없으며 저자가 아닙니다 ...
informatik01

VSCode는 VS (새로운 트렌드?)보다 메뉴 옵션이 훨씬 적지 만 HELP 메뉴 아래에 광범위한 정보와 자습서가 있으며이 질문에 대답했을 수 있습니다.
Roland

Visual Studio Code에서 유효한 조합을 시도한 후에도 서식 작업을 수행하는 데 어려움을 겪고있는 모든 사람들에게 적절한 프로그래밍 언어 유형을 선택하는 것을 잊지 마십시오. 스튜디오 옆의 Visual Studio 코드 창 오른쪽 하단에 있습니다. 일단 그렇게하면 즉시 사용할 수 있으며 코드를 포맷하기 위해 추가 플러그인이 필요하지 않습니다.
Mr.Hunt

답변:


3840

코드 형식은 Visual Studio Code에서 다음 바로 가기를 통해 사용할 수 있습니다.

  • Windows Shift+ Alt+에서F
  • Mac Shift+ Option+에서F
  • Linux Ctrl+ Shift+에서I

또는 편집기에서 Ctrl+ Shift+ P(또는 Mac의 경우 Command+ Shift+) 와 함께 제공되는 '명령 팔레트'를 통해 바로 가기와 다른 바로 가기를 P찾은 다음 형식 문서 를 검색 할 수 있습니다 .


28
또한 언어 코드가 정확해야합니다. 즉, 일반 텍스트를 선택하면 형식 코드를 사용할 수 없지만 JSON으로 전환하면 (예 :) 선택한 텍스트를 행복하게 형식화합니다. (어쨌든 텍스트 편집기가 기쁘다)
Stephen Price

4
@JoSmo : Ubuntu에서 파일> 환경 설정> 키보드 단축키를 열었습니다. { "key": "ctrl + shift + i", "command": "editor.action.format", "when": "editorTextFocus"} 항목이 있습니다. "ctrl + shift + i"명령이 저에게 효과적입니다.
Asheesh

18
또한 파일을 먼저 디스크에 저장해야합니다. JS를 포맷 할 수없는 HTML + Javascript 덩어리가 있었기 때문에 임시 창에 붙여 넣고 언어를 설정했지만 저장하기 전까지는 도움이되지 않았습니다.
Jonas

9
Mac에서 작동하지 않는다고 말하는 사람들의 경우 구성된 로케일 및 키보드 설정에 따라 악센트 문자에 대한 단축키와 OS X 텍스트 입력 시스템 사이의 충돌처럼 보입니다 .github.com / Microsoft / vscode / issues / 8914 # issuecomment-245947844
Chris Adams

8
VS 코드 최신 버전에서는 작동하지 않으며 10 승리하면 특정 확장 프로그램이 설치되어 있다고 가정합니까?
JayPex

479

코드 포맷 바로 가기 :

Windows의 Visual Studio 코드- Shift+ Alt+F

MacOS의 Visual Studio 코드- Shift+ Option+F

우분투의 Visual Studio 코드- Ctrl+ Shift+I

필요한 경우 환경 설정을 사용하여이 바로 가기를 사용자 정의 할 수도 있습니다.

파일을 저장하는 동안 코드 형식 :

Visual Studio Code를 사용하면 기본 설정을 사용자 지정할 수 있습니다.

저장하는 동안 컨텐츠를 자동으로 포맷하려면 Visual Studio Code의 작업 공간 설정에 아래 코드 스 니펫을 추가하십시오.

메뉴 파일환경 설정작업 공간 설정

{
    // Controls if the editor should automatically format the line after typing
    "beautify.onSave": true,

    "editor.formatOnSave": true,

    // You can auto format any files based on the file extensions type.
    "beautify.JSfiles": [
        "js",
        "json",
        "jsbeautifyrc",
        "jshintrc",
        "ts"
    ]
}

참고 : 이제 TypeScript 파일을 자동으로 포맷 할 수 있습니다. 내 업데이트를 확인하십시오.


또한이 또 다른 언어에 대해 작동합니다 아름답게 확장
equiman

3
CentOS에서는 왜 다른지 잘 모르겠지만Shift + Alt + I
a11smiles

2
beautify.onSave는 eslint 익스텐션이 설치된 경우 유효하지 않습니다
Ben Petersen

우분투 메이트 17.04 Shift + Alt + I에서도
피니 체니

2
@ClintEeastwood prettier.singleQuote: true는 vs 코드 설정에서 사용해보십시오 .
Enn

216

메뉴 파일환경 설정키보드 단축키 에서 키 바인딩을 추가 할 수 있습니다 .

{ "key": "cmd+k cmd+d", "command": "editor.action.formatDocument" }

또는 Visual Studio 는 다음과 같습니다.

{ "key": "ctrl+k ctrl+d", "command": "editor.action.formatDocument" }

23
Windows에서 교체 cmdctrl- 그냥 맹목적으로 복사 나처럼 붙여하지 않습니다!
Jens Ehrich

3
"editor.action.format"가 다시 작동합니다. 아무 것도 선택하지 않으면 전체 문서의 서식이 지정되고 그렇지 않은 경우 선택 영역의 서식이 지정됩니다.
빨간 승마 후드

198
  1. 파일을 마우스 오른쪽 버튼으로 클릭하십시오
  2. 메뉴에서 문서 형식을 선택하십시오 .
    • 윈도우 : Alt Shift F
    • 리눅스 : Alt Shift I
    • 맥 OS: F

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


18
리눅스에서 키보드 단축키는 Ctlr + Shift + I
Lucas

메뉴 상자 란 무엇입니까?
Peter Mortensen

메뉴가 보이는 상자를 @PeterMortensen합니다. 스크린 샷에서 "문서 형식", "잘라
내기

117

올바른 키 조합은 Shift+ Alt+ F입니다.


2
클립 보드에서 코드를 새 탭으로 복사하여 붙여 넣을 때 아무 일도 일어나지 않습니다. 솔루션 : 코드를 관련 파일 확장자 (예 : * .json) 가있는 파일로 저장하십시오 . 그런 다음 작동합니다. 그 이유는 미용사가 확장 프로그램의 언어를 알고 코드를 기반으로 자동 감지를 수행하지 않기 때문이라고 생각합니다.
뷰티

이 단축키는 MAC에 적용됩니다. Windows에서는 코드를 형식화합니다.
C. Damoc

63

페도라

  1. File-> Preferences->를 클릭하십시오 Keyboard shortcuts.
  2. 에서 Default Keyboard Shortcuts( Ctrl+ F)를 검색하십시오 editor.action.format.

내 읽기 "key": "ctrl+shift+i"

변경할 수도 있습니다. 방법에 대한 이 답변 을 참조하십시오 .


"환경 설정-> 키보드 단축키"에서 키 바인딩을 추가 할 수 있습니다.

{ "key": "cmd+k cmd+d", "command": "editor.action.format" }

또는 Visual Studio는 다음과 같습니다.

{ "key": "ctrl+k ctrl+d", "command": "editor.action.format" }


참고 : cmd키는 Mac 전용입니다. Windows 및 Fedora (Windows 키보드) 사용Ctrl


편집 :

비주얼 코드 버전에 따라 1.28.2이것이 내가 찾은 것입니다.

editor.action.format더 이상 존재하지 않습니다. 지금으로 대체되었습니다 editor.action.formatDocumenteditor.action.formatSelection.

editor.action.format검색 창에 입력 하여 기존 바로 가기를 봅니다.

키 조합을 변경하려면 다음 단계를 수행하십시오.

  1. 클릭 editor.action.formatDocument또는editor.action.formatSelection
  2. 펜 모양의 아이콘이 왼쪽에 나타납니다. 클릭하십시오.
  3. 팝업이 나타납니다. 원하는 키 조합을 누르고 Enter를 누르십시오.

이 명령을 사용하면 TypeScript 파일에서 작은 따옴표가 큰 따옴표가됩니다. 그것을 해결하는 방법?
DioBrando

새로운 설정 가비지 UI에서이 위치를 찾을 수 없습니다.
Oliver Dixon

63

Linux에서는 Ctrl+ Shift+ I입니다.

Windows에서는 Alt+ Shift+ F입니다. HTML / CSS / JavaScript 및 Visual Studio Code 1.18.0으로 테스트되었습니다.

다른 언어의 경우 특정 언어 패키지를 설치해야 할 수도 있습니다.


61

Visual Studio Code 1.6.1 은 " 포맷시 형식 지원" "을 하여 설치된 관련 포맷터 확장을 자동으로 선택하고 각 저장시 전체 문서를 포맷합니다.

설정하여 "포맷시 저장"활성화

"editor.formatOnSave": true

사용 가능한 단축키가 있습니다 (Visual Studio Code 1.7 이상).

전체 문서를 포맷 : Shift+ Alt+F

형식 선택 만 : Ctrl+ K, Ctrl+F



44

우분투에서는 Ctrl+ Shift+ I입니다.


7
언어에 따라 다릅니다. CTRL + SHIFT + I예를 들어 JavaScript에서는 작동하지만 PHP에서는 작동하지 않습니다.
Jamie Carl

32

텍스트를 마우스 오른쪽 버튼으로 클릭하고 "포맷 코드"를 선택하십시오.

Visual Studio Code는 js-beautify내부적으로 사용 하지만 사용하려는 스타일을 수정하는 기능이 없습니다. 확장 "beautify"를 사용하면 설정을 추가 할 수 있습니다.


1
물론, 나는 Windows를 사용하고 있으며 설명대로 작동합니다-VScode 버전 (업데이트하십시오!)과 파일 확장자에 따라 다를 수 있습니다. HTML로 테스트하십시오.
Gerfried


32

메뉴 파일환경 설정설정

"editor.formatOnType": true

세미콜론을 입력하면 형식이 지정됩니다.

또는을 사용할 수도 있습니다 "editor.formatOnSave": true.


이상하게도,이 설정의 동작이 shift+alt+f특정 상황 과 다를 수 있다는 것을 알았습니다 . 왜 그런지 모르겠다!
JzInqXc9Dg

이 기능을 사용하고 C #에서 함수를 만들면 모든 것을 완료하고 계속 진행할 수 있지만 "문서 서식"기능을 수행 할 때까지 함수가 형식화되지 않습니다. 함수를 입력 한 후 위의 설정이 포맷되지 않는 이유를 모르겠습니다.
Daniel Jackson


24

어떤 이유로 Alt+ Shift+ F는 Mac Visual Studio Code 1.3.1에서 작동하지 않았으며 실제로 "문서 포맷"명령이 전혀 작동하지 않았습니다. 그러나 Formatter 명령 은 매우 잘 작동했습니다.

Command+ Shift+ 를 사용 P하고 Formatter를 입력 하거나 메뉴 FilePreferencesKeyboard ShortcutsCommand+ K Command+ 에서 직접 단축키를 S만든 다음 Formatter 를 입력하십시오 하고 단축키를 추가 할 수 있습니다.

예를보십시오 :

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


23

Visual Studio에서 코드 형식화

Windows 8에서 포맷을 시도했습니다.

아래 스크린 샷을 따르십시오.

  1. 상단 메뉴 표시 줄에서보기를 클릭 한 다음 명령 팔레트를 클릭하십시오.

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

  2. 그런 다음 Format 형식이 필요한 곳에 텍스트 상자가 나타납니다.

    Shift+ Alt+F

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


1
때로는 붙여 넣기 xml을 새 파일로 복사하고 파일을 저장하지 않고 형식을 지정하려고합니다. 이러한 상황에 적합합니다!
user3885927

19

Visual Studio를 코드에서, Shift+ Alt+는 F무엇을하고있다 Ctrl+ K+는 DVisual Studio에서하고있다.


18

Mac OS X, DNVMDNXMono 를 설치할 때까지 C #의 형식 바로 가기가 작동하지 않았습니다. .

Mono를 설치하기 전에 자동 형식 바로 가기 ( Shift+ Alt+ F)가 .json파일에 대해서만 작동했습니다 .


C #을 포맷하려면 확장을 설치해야합니다. 일반적으로 omnisharp가 작동합니다. 그러나 omnisharp에는 버그가 있습니다. 버그가 수정 될 때까지 Leopotam.csharpfixformat 확장을 사용해야합니다. omnisharp를 대체합니다. C # FixFormat 확장을 설치 한 후 문서를 다시 형식화 할 수 있습니다.
Oncel Umut TURER

18

Mac에서는 Shift+ Alt+F 작동합니다.

메뉴에서 언제든지 키 바인딩을 확인할 수 있습니다.

메뉴 파일환경 설정키보드 단축키 및 키워드 '형식'으로 필터링하십시오.


14

Visual Studio Code의 기본 동작을 변경하려면 확장이 필요하지만 작업 영역 또는 사용자 수준의 기본 동작을 재정의 할 수 있습니다. 지원되는 대부분의 언어에서 작동합니다 (HTML, JavaScript 및 C #을 보장 할 수 있음).

작업 공간 수준

혜택

  • 확장이 필요하지 않습니다
  • 팀간 공유 가능

결과

  • .vscode/settings.json 프로젝트 루트 폴더에 생성됩니다

어떻게?

  1. 메뉴 파일환경 설정작업 공간 설정으로 이동하십시오.

  2. "editor.formatOnType": truesettings.json에 추가하고 저장하십시오 (.vscode / settings.json 파일을 작성하여 작업하는 프로젝트의 기본 동작을 무시 함).

    어떻게 보이는지

사용자 환경 수준

혜택

  • 확장이 필요하지 않습니다
  • 그들 모두를 지배하는 개인 개발 환경 tweeking (설정 :))

결과

  • 사용자 settings.json가 수정되었습니다 (아래 운영 체제 별 위치 참조).

어떻게?

  1. 메뉴 파일환경 설정사용자 설정으로 이동하십시오.

  2. 추가의 값 변경 "editor.formatOnType": false에를 "editor.formatOnType": true사용자 settings.json에

Visual Studio Code 사용자의 settings.json위치는 다음과 같습니다.

플랫폼에 따라 설정 파일 위치, 사용자 설정 파일은 다음 위치에 있습니다.

  • 윈도우 : %APPDATA%\Code\User\settings.json
  • 맥: $HOME/Library/Application Support/Code/User/settings.json
  • Linux : $HOME/.config/Code/User/settings.json작업 공간 설정 파일은 프로젝트의 .vscode 폴더에 있습니다.

자세한 내용은 여기를 참조 하십시오 .


9

기본적으로이 키는 HTML, CSS 및 JavaScript 문서에서 작동하지 않았습니다.

검색 후 133,796 설치로 인기있는 플러그인 JS-CSS-HTML Formatter발견했습니다. .

설치 후 창을 다시로드하고 Ctrl+ Shift+를 누르면 F작동했습니다!


네, 별 5 개 중 2 개 만요? 진심이야?
kmoser

이 답변은 원래 2017 년에 작성되었으며 VS 코드 기능은 플러그인 또는 기타 해킹을 통해 거의 기능적이었습니다. 그 당시 다른 솔루션은 저에게 도움이되지 않았으므로 실제로 그 당시에는 효과가 없었지만 직접 발견하지 못했습니다. 얼마나 많은 별이 있는지 걱정했습니다 :-) 이제 2020 및 서식 지원은 환상적으로 환상적입니다.
mumair

VS Code는 아직 CSS 형식을 지원하지 않는다고 생각합니다. 나는 설치된 명 Prettier의 플러그인 ( prettier.io 자바 스크립트, 타이프 라이터, 흐름, JSX, JSON, CSS, SCSS, 적은, HTML, 뷰, 각도, GraphQL, 마크 다운, YAML을 처리합니다). 560 만 개의 설치 및 4 개의 별.
kmoser

나는 당신이 더 예쁘다는 것을 알게되어 기쁘다 : P 포맷팅 지원이 있지만 더 예쁘지는 않다 .prettierrc. 나는 언젠가 더 예쁘게 vs 코드로 병합 될까봐 두려운 다 :)
mumair

8

텍스트를 선택하고 선택을 마우스 오른쪽 단추로 클릭 한 다음 "명령 팔레트"옵션을 선택하십시오.

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

새로운 창이 열립니다. "형식"을 검색하고 요구 사항에 따라 형식이있는 옵션을 선택하십시오.




7

서식을 지정할 JavaScript 파일을 사용자 정의하려는 경우 특성 의 모든 확장자를 사용할 수 있습니다 JSfiles. HTML에도 동일하게 적용됩니다.

{
    "beautify.onSave": true,
    "beautify.JSfiles": ["js", "json", "jsbeautifyrc", "jshintrc", "ts"],
    "beautify.HTMLfiles": ["htm", "html"]
}

그러면 TypeScript를 저장할 때 아름답게 설정하고 HTML 옵션에 XML로 추가 할 수 있습니다.


1
이것을 어디에 두어야합니까? 그것은 또한
아름답다

당신은 수있는 이 코드를 삽입 할 위치를 언급했다.
gromit190

6

서식 문서의 스타일을 사용자 정의하려면 Beautify 확장 을 사용해야합니다 .

이 스크린 샷을 참조하십시오 :

img


6

적절한 플러그인을 먼저 설치해야합니다 (예 : XML, C # 등).

관련 플러그인을 설치하고 파일을 적절한 확장자로 저장해야 포맷 할 수 있습니다.


Beautify는 사용할 포맷터를 모르는 경우 cshtml 스타일을 지정할 수 있는지 묻습니다.
Cees Timmerman

6

Visual Studio Code (Ubuntu)에서 사용하는 가장 간단한 방법은 다음과 같습니다.

마우스로 서식을 지정할 텍스트를 선택하십시오.

마우스 오른쪽 버튼을 클릭하고 "형식 선택"을 선택하십시오 .


5

이건 아니야. 이것을 사용하십시오 :

메뉴 파일환경 설정작업 공간 설정 , "editor.formatOnType" : true


3
이거 아니야? 다른 답변을 말씀하십니까? 그렇다면 어느 것입니까?
피터 Mortensen


2

Linux의 Visual Studio 코드 :

Ctrl+ [들여 쓰기되지 않은 코드 블록

Ctrl+ ]대량 들여 쓰기

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