2020년 2월 (버전 1.43)
업데이트 1.43.1: 이 업데이트는 다음 이슈들을 해결합니다.
업데이트 1.43.2: 이 업데이트는 다음 이슈들을 해결합니다.
다운로드: Windows: x64 | Mac: Intel | Linux: deb rpm tarball snap
Visual Studio Code의 2020년 2월 릴리스에 오신 것을 환영합니다. 이번 버전에는 여러분이 좋아하실 만한 여러 업데이트가 포함되어 있습니다. 주요 내용은 다음과 같습니다.
- 검색 에디터 - 전체 크기 에디터에서 전역 검색 결과를 검색하고 저장합니다.
- 드래그 가능한 새시 모서리 - 새시 모서리를 드래그하여 에디터 레이아웃을 쉽게 변경합니다.
- Linux 화면 판독기 지원 - VS Code가 이제 Orca 화면 판독기를 지원합니다.
- 미니맵 크기 옵션 - 미니맵 세로 레이아웃을 맞추거나 채우는 새로운 옵션입니다.
- 열 선택 모드 - 열 모드 토글을 사용하여 텍스트 블록을 빠르게 선택할 수 있습니다.
- 선택 영역에 공백 표시 - 선택된 텍스트에서만 공백 문자를 렌더링합니다.
- 템플릿 문자열로 변환 - 연결을 JavaScript/TypeScript 템플릿 문자열로 변환합니다.
- JS/TS 호출 계층 구조 보기 - 함수의 모든 호출 또는 함수에서 발생한 호출을 검토하고 호출자의 호출자로 드릴다운합니다.
- 원격 개발 - Windows 및 macOS SSH 호스트 지원, SSH 연결 공유.
- 설정 동기화 미리 보기 - 설정 동기화를 통해 여러 컴퓨터에서 설정을 공유할 수 있습니다.
이 릴리스 노트를 온라인으로 읽으려면 code.visualstudio.com의 업데이트로 이동하십시오.
Insider: 새로운 기능을 가능한 한 빨리 사용해 보고 싶으신가요? 야간 빌드인 Insider를 다운로드하여 최신 업데이트를 즉시 사용해 볼 수 있습니다. 최신 Visual Studio Code 뉴스, 업데이트 및 콘텐츠를 보려면 Twitter에서 @code를 팔로우하세요!
워크벤치
검색 에디터
Insiders에서 몇 번의 반복을 거쳐 안정화된 후, 이제 검색 에디터를 제공합니다. 이를 통해 작업 영역 검색 결과를 전체 크기 에디터에서 구문 강조 표시 및 주변 컨텍스트 라인과 함께 볼 수 있습니다. 이는 오랫동안 많은 요청을 받은 기능입니다.
'SearchEditor'라는 단어를 검색한 결과이며, 컨텍스트를 위해 일치하는 내용 앞뒤로 두 줄의 텍스트가 표시됩니다.
테마: A Touch of Lilac, 글꼴: Hasklig
검색 에디터에서는 **정의로 이동** 액션을 사용하여 결과로 이동할 수 있습니다. 예를 들어 F12를 누르면 현재 에디터 그룹에서 소스 위치를 열 수 있으며, ⌘K F12 (Windows, Linux Ctrl+K F12)를 누르면 옆 에디터에서 해당 위치를 열 수 있습니다. 또한, 더블 클릭으로 소스 위치를 열 수 있으며, 이는 search.searchEditor.doubleClickBehaviour 설정을 통해 구성할 수 있습니다.

새로운 검색 에디터를 열려면 **검색 에디터: 새 검색 에디터 열기** 명령을 사용하거나, 검색 보기 상단의 **새 검색 에디터 열기** 버튼을 사용하십시오. 또는 검색 보기에서 기존 결과를 **에디터에서 열기** 링크를 클릭하거나 **검색 에디터: 에디터에서 결과 열기** 명령을 사용하여 검색 에디터로 복사할 수 있습니다.
참고: 실험적인 검색 에디터: 변경 사항 적용 확장을 사용하여 검색 에디터에서 만든 편집을 소스 파일에 다시 동기화할 수 있습니다.

드래그 가능한 새시 모서리
두 개의 직교하는 새시가 교차하는 부분을 잡고 드래그하여 동시에 크기를 조절할 수 있다는 사실을 알고 계셨나요? 이는 이미 에디터 새시에 적용되었으며, 이제 에디터와 보기 사이의 가장자리에서도 작동합니다.

테마: GitHub Sharp, 글꼴: Fira Code
macOS 빌드 검인
macOS용 Visual Studio Code가 이제 Apple의 검인을 받으므로 더 이상 다음 대화 상자가 나타나지 않을 것입니다.

자세한 내용은 조사 이슈 및 Apple 개발자 문서를 참조하십시오.
진행률 알림
오래 실행되는 작업을 나타내는 알림이 이번 릴리스부터 약간 다르게 동작합니다.
- 작업이 취소되거나 취소되지 않았다는 잘못된 인상을 줄 수 있는 일반적인 **닫기** 버튼이 더 이상 제공되지 않습니다. 알림을 숨기려면 여전히 Esc 키를 누를 수 있습니다.
- 알림이 숨겨져 있는 동안 작업이 계속 진행되는 경우, 알림은 상태 표시줄에서 작업의 진행률을 나타냅니다.
이전 변경 사항은 알림을 닫은 후에도 백그라운드에서 (예: 오래 실행되는 저장 작업) 작업이 계속 실행되고 있음을 알 수 있도록 도와줍니다.
아래는 **취소** 버튼을 선택할 때까지 작업이 계속 실행되는 모습입니다.

테마: Dracula Official, 글꼴: Fira Code
제목 없는 에디터
새로운 설정 workbench.editor.untitled.labelFormat을 사용하면 제목 없는 에디터가 파일 내용을 제목으로 사용할지 여부를 제어할 수 있습니다. 가능한 값은 content 또는 name입니다. 제목 없는 에디터가 **Untitled-1**과 같은 짧은 제목을 가졌던 이전 동작을 위해서는 'workbench.editor.untitled.labelFormat': 'name'으로 구성하십시오.
제목 없는 에디터에 텍스트를 붙여넣을 때, VS Code는 이제 첫 번째 줄의 텍스트에서 언어 모드를 자동으로 감지하려고 시도합니다. 예를 들어, XML을 붙여넣으면 첫 번째 줄에 일반적인 XML 헤더 <?xml version="1.0" encoding="UTF-8"?>가 포함되어 있으면 붙여넣기 시 자동으로 XML 모드가 설정됩니다.
애플리케이션 링크를 통한 작업 영역 열기
VS Code는 프로토콜 링크 (예: vscode://file/<file-path>)를 통해 파일을 여는 것을 지원합니다. 이번 마일스톤에서는 폴더 또는 작업 영역을 여는 것을 포함하도록 지원을 확장했습니다.
폴더 또는 작업 영역의 구문은 파일과 동일합니다.
vscode://file/<path>
vscode-insiders://file/<path>
환영 보기
환영 보기(Welcome views)는 워크벤치에 새로 추가된 기능으로, 표시할 의미 있는 콘텐츠가 없을 때 사용자가 콘텐츠를 생성하거나 VS Code를 구성할 수 있는 시작 경험을 제공합니다. 일부 보기는 이미 이 인프라를 채택했습니다. 예를 들어 파일 탐색기는 시작을 위해 폴더를 열거나 Git 저장소를 복제하도록 제안합니다.

테마: GitHub Sharp
소스 제어 환영 보기
새로운 환영 보기 인프라 덕분에, 소스 제어 보기는 이제 비어 보일 수 있었던 특정 상황에서 더 나은 경험을 제공합니다. 예를 들어, 설치가 감지되지 않았을 때 사용자에게 폴더를 열거나 저장소를 복제하거나 Git을 설치하도록 안내할 수 있습니다.

테마: GitHub Sharp
편집기
미니맵 크기
미니맵이 수직 공간을 사용하는 방식을 제어하는 새로운 설정 editor.minimap.size가 있습니다.
proportional(기본값)로 설정하면,editor.minimap.scale에 따라 각 줄이 미니맵에서 특정 양의 수직 공간을 차지합니다. 예를 들어, 고해상도 모니터에서 기본값인1의 스케일로 설정하면 각 줄은 미니맵에서 4px을 차지합니다. 따라서 100줄짜리 파일의 경우 미니맵에 렌더링되는 줄의 높이는 400px이고, 1000줄짜리 파일의 경우 4000px입니다. 즉, 큰 파일의 경우 현재 파일이 스크롤될 때 미니맵도 스크롤됩니다.fit으로 설정하면, 미니맵의 높이는 에디터 높이보다 커지지 않도록 제한됩니다. 따라서 파일에 줄이 많으면 샘플링되어 미니맵에 렌더링되는 부분집합만 표시되므로 미니맵 스크롤이 필요하지 않습니다.fill로 설정하면, 미니맵의 높이는 항상 에디터 높이와 같습니다. 큰 파일의 경우에도 줄을 샘플링하여 달성되지만, 작은 파일의 경우 각 줄에 더 많은 수직 공간을 할당하여 (줄을 늘려서) 달성됩니다.
여기에서는 크기를 proportional에서 fit으로 변경한 후, 작은 파일에서는 fit에서 fill로 변경했습니다.

미니맵 배경 및 슬라이더 색상
미니맵과 슬라이더를 사용자 정의하기 위한 새로운 색상이 추가되었습니다. 새로운 색상 중 하나는 minimap.background이며, 투명하도록 색상이 정의되면 (즉, #RRGGBBAA 알파 채널을 낮추면) 미니맵이 투명하게 렌더링됩니다.

{
"workbench.colorCustomizations": {
"minimap.background": "#00000055"
}
}
열 선택 모드
선택 > **열 선택 모드** 메뉴 항목을 통해 액세스할 수 있는 새로운 전역 토글이 있습니다. 이 모드로 들어가면 상태 표시줄에 표시되며, 마우스 제스처와 화살표 키가 열 선택을 생성합니다.

상태 표시줄에서도 열 선택 모드를 비활성화할 수 있습니다.
선택 영역에 공백 렌더링
editor.renderWhitespace 설정의 기본값이 none에서 selection으로 변경되었습니다. 이제 기본적으로 공백 문자가 강조 표시된 텍스트에 렌더링됩니다.
여기서는 탭 및 공백 문자가 선택된 영역에 표시됩니다.

Peek에서의 정의 링크
이제 **정의로 이동** 마우스 제스처의 동작을 더 세밀하게 제어할 수 있습니다. 기본적으로 마우스를 통한 **정의로 이동**은 별도의 에디터를 열지만, 새로운 설정 editor.definitionLinkOpensInPeek을 true로 설정하면 제스처가 Peek 보기에서 열립니다.

접힌 줄에서 아무 곳이나 펼치기
에디터: 줄 끝 이후 클릭 시 펼치기 (editor.unfoldOnClickAfterEndOfLine)라는 새 설정은 접힌 줄 뒤의 빈 공간 (... 뒤)을 클릭할 때 발생하는 동작을 제어합니다. true로 설정하면, 줄 끝의 텍스트 뒤 어느 곳을 클릭해도 타원(...)을 정확히 선택할 필요가 없습니다. 이 옵션은 기본적으로 꺼져 있습니다.

여러 파일에 걸친 텍스트 편집 사항 되돌리기
여러 파일에 영향을 미치는 이름 바꾸기 또는 코드 액션 되돌리기 시, VS Code는 이제 모든 영향을 받은 파일에서 변경 사항을 되돌릴 수 있도록 허용합니다.
여러 파일에 걸친 편집을 되돌릴 때 프롬프트가 표시됩니다.

참고: 파일 이름 바꾸기와 같은 파일 작업은 아직 지원되지 않습니다. 예를 들어, Java에서 클래스 이름을 바꾸는 경우 (파일 이름도 함께 변경됨) 여러 파일에 걸친 되돌리기는 아직 지원되지 않습니다.
다른 색상의 여러 눈금자
기존 editor.rulers 설정이 사용자 정의 색상을 가진 눈금자를 정의할 수 있도록 확장되었습니다. 다음 스크린샷에서는 80열에 자홍색 눈금자가, 90열에 빨간색 눈금자가 표시됩니다.

{
"editor.rulers": [
{ "column": 80, "color": "#ff00ff" },
{ "column": 90, "color": "#ff0000" }
]
}
에디터 상하단 여백
editor.padding.top 및 editor.padding.bottom을 사용하여 에디터의 상단 또는 하단에 공백(픽셀 수)을 예약할 수 있습니다.
상단 여백 50픽셀이 적용된 에디터 모습입니다.

{
"editor.padding.top": 50
}
주요 스크롤 축
최신 터치패드를 사용하여 세로로 스크롤하려고 할 때, 파일이 가로로도 스크롤되는 경우가 많습니다. 이제 editor.scrollPredominantAxis (기본값은 true)라는 새 설정이 "대각선" 스크롤을 차단합니다. 이 설정은 스크롤 제스처를 가장 큰 절대 스크롤 델타를 기준으로 수직 또는 수평으로 강제하며, 대각선은 허용하지 않습니다.
Linux의 Shift+Insert
1.42 버전에서 Shift+Insert는 선택 클립보드에서 붙여넣도록 변경되었습니다. 많은 사용자가 이것이 기존 습관과 충돌한다고 피드백을 주었기 때문에, 원래대로 Shift+Insert가 일반 클립보드에서 붙여넣도록 되돌렸습니다.
접근성
Linux 화면 판독기 지원
커뮤니티의 도움으로 Linux에서 Orca 화면 판독기와 함께 VS Code를 사용할 수 있도록 노력해 왔습니다. Orca와 Chromium은 화면 판독기 지원에 대해 여전히 적극적으로 작업 중이므로, 이를 완전히 작동시키기 위해 몇 가지 필요한 사항이 있습니다.
- 마스터에서 최신 버전의 Orca를 사용하고 있는지 확인하십시오. 지침은 이슈 #91063에서 확인할 수 있습니다.
- VS Code에서
"editor.accessibilitySupport": "on"설정을 사용하고 있는지 확인하십시오. 설정을 사용하거나 **접근성 도움말 표시** 명령을 실행하고 Ctrl+E를 눌러 화면 판독기 최적화 모드를 켤 수 있습니다.
이 설정을 활성화한 후 VS Code는 Orca 화면 판독기와 함께 작동해야 합니다.
언어
TypeScript 3.8.3
VS Code는 이제 TypeScript 3.8.3을 번들로 제공합니다. 이 주요 업데이트는 ECMAScript private 필드, 최상위 await 표현식, 그리고 export * as ns 구문을 포함한 새로운 언어 기능을 제공하며, 수많은 도구 기능 및 개선 사항이 포함되어 있습니다. 또한 여러 중요한 버그를 수정했습니다.
TypeScript 3.8에 대한 자세한 내용은 TypeScript 블로그에서 확인할 수 있습니다.
템플릿 문자열로 변환 리팩터링
JavaScript 및 TypeScript의 새로운 **템플릿 문자열로 변환** 리팩터링을 사용하여 문자열 연결을 템플릿 문자열로 빠르게 변환할 수 있습니다.

JavaScript 및 TypeScript용 호출 계층 구조 지원
TypeScript 3.8은 JavaScript 및 TypeScript에 호출 계층 구조 지원을 제공합니다.

http(s) @link JSDoc 인라인 태그 지원
IntelliSense는 이제 http 및 https 링크에 대한 JS Doc @link 인라인 태그를 렌더링합니다. 아래 예시 이미지에서 lightbulb menu에 대한 @link이 호버에 렌더링되는 것을 확인하십시오.

URL에 대한 @link은 JavaScript 및 TypeScript 모두에 대해 작동하며, 호버, 제안 세부 정보 및 시그니처 도움말에서 클릭 가능한 링크로 렌더링됩니다.
TypeScript 의미 체계 강조 표시
이제 TypeScript 및 JavaScript에 대해 의미 체계 강조 표시가 기본적으로 활성화됩니다. 의미 체계 강조 표시는 TypeScript 언어 서버에서 제공하며 TextMate 문법 기반의 구문 강조 표시 위에 적용됩니다. 기본 구문 (TextMate) 하이라이터는 많은 토큰을 변수로 분류하며, 이제 이러한 토큰은 네임스페이스, 클래스, 매개변수 등으로 해석됩니다.
의미 체계 강조 표시는 다음 설정을 통해 제어됩니다.
"editor.semanticHighlighting.enabled": true
JSON 스키마
스키마에 파일 이름을 연결할 때 이제 제외 패턴도 사용할 수 있습니다. 제외 패턴은 '!'로 시작합니다. 일치하려면 하나 이상의 패턴이 일치해야 하며, 마지막으로 일치하는 패턴은 제외 패턴이 아니어야 합니다.
"json.schemas": [
{
"fileMatch": [
"/receipts/*.json",
"!/receipts/*.excluded.json"
],
"url": "./receipts.schema.json"
}
]
디버깅
UI에서 "실행" 강조 표시
사용자 연구 결과, 신규 사용자들이 VS Code에서 프로그램을 실행하는 방법을 찾는 데 어려움을 겪는 것으로 나타났습니다. 한 가지 이유는 기존 "디버깅" 기능이 프로그램을 "실행"하는 것과 관련이 없다고 생각하기 때문입니다. 이러한 이유로 "실행" 기능을 UI에서 더 눈에 띄게 만들었습니다.
- 기본 메뉴 **디버그**가 **실행** 메뉴로 변경되었습니다.
- **실행 및 디버그** 보기가 **실행** 보기로 변경되었으며, 해당 활동 표시줄 아이콘에는 작은 "벌레" 장식이 있는 큰 "재생" 아이콘이 표시됩니다.

디버그 콘솔 그룹화
VS Code 디버그 콘솔이 이제 **출력 그룹화**를 지원합니다. 디버그 확장은 디버그 콘솔 출력을 공통 상위 항목 아래에 그룹화해야 하는 시기를 나타낼 수 있습니다. 현재는 Mock Debug 확장이 출력 그룹화를 구현하지만, 곧 다른 디버그 확장 (특히 JavaScript 디버거)도 따를 것입니다.

디버그 콘솔 기록 제안 비활성화
이제 새로운 debug.console.historySuggestions 설정을 통해 디버그 콘솔에서 기록 제안을 비활성화할 수 있습니다. 기본적으로 기록 제안은 활성화되어 있습니다.
통합 터미널
Unicode 11 지원
터미널에서 문자의 너비가 이제 Unicode 11 너비를 기본값으로 사용합니다. 대부분의 사용자에게 이것은 이모지가 넓은 문자로 올바르게 표시된다는 것을 의미합니다.

더 나은 Alt+Click 탐색 프롬프트 지원
터미널에는 셀을 Alt+Click하면 커서가 해당 셀로 이동하는 기능이 있습니다. 이전에는 프롬프트 내에서 줄 바꿈이 된 경우에도 한 줄에서만 작동했습니다. 이제 줄 바꿈된 전체 줄에서 작동하도록 개선되었습니다.
테마: Sapphire
참고: 이 기능은 아직 Windows에서 제대로 작동하지 않을 수 있지만, ConPTY의 최근 변경 사항으로 인해 향후 개선될 것입니다.
작업
작업 빠른 선택 업데이트
**작업 실행** 명령이 실행될 때 표시되는 작업 빠른 선택 기능이 업데이트되어, 아직 실행 중인 작업 제공자를 보여줍니다. 해당 제공자의 작업이 필요하지 않은 경우, **감지 중지** 버튼을 누르면 지금까지 감지된 작업을 즉시 표시하여 느린 작업 제공자를 기다릴 필요가 없습니다.
테마: One Dark Pro, 글꼴: Fira Code
작업 인스턴스 제한
작업의 "runOptions"에 허용되는 작업 인스턴스 수를 지정하는 "instanceLimit"가 포함되었습니다. 기본 "instanceLimit"는 1입니다.
promptString 비밀번호 입력
"promptString" 사용자 입력 유형은 "password": true를 가질 수 있으며, 이 경우 드롭다운 입력 상자에 입력된 내용이 비밀번호처럼 가려집니다.
미리 보기 기능
미리보기 기능은 릴리스 준비가 되지 않았지만 사용할 만큼 기능적입니다. 개발 중인 동안 초기 피드백을 환영합니다.
설정 동기화
지난 몇 달 동안 여러 컴퓨터에서 VS Code 설정, 확장 및 키 바인딩을 동기화하는 기능을 지원하기 위해 노력했습니다 (인기 있는 기능 요청 #2743). 이번 마일스톤에서는 다음 1.44.0 Insider 릴리스부터 이 기능을 미리 볼 수 있게 되었음을 기쁘게 발표합니다. 이제 모든 VS Code 설치에 걸쳐 여러 컴퓨터에서 환경 설정을 동기화할 수 있습니다. 또한 새 컴퓨터에서 최소한의 노력으로 개인 환경 설정을 사용하여 VS Code를 부트스트랩할 수 있습니다.
다음 비디오는 새 컴퓨터에 확장 프로그램과 설정을 로컬로 적용하는 과정을 보여줍니다.

현재 설정, 키 바인딩, 확장 및 표시 언어가 동기화되지만 더 많은 기능을 추가할 계획입니다. 제안된 설정 동기화 기능 목록을 검토할 수 있습니다.
머신 설정 (machine 또는 machine-overridable 범위 포함)은 기본적으로 동기화되지 않습니다. 설정 편집기 또는 sync.ignoredSettings 설정을 사용하여 이 목록에 설정을 추가하거나 제거할 수도 있습니다.
테마: GitHub Sharp
키 바인딩은 기본적으로 플랫폼별로 동기화됩니다. 키 바인딩이 플랫폼 독립적인 경우, sync.keybindingsPerPlatform 설정을 비활성화하여 플랫폼 간에 동기화할 수 있습니다.
모든 내장 및 설치된 확장은 전역 활성화 상태와 함께 동기화됩니다. 확장 보기에서 또는 sync.ignoredExtensions 설정을 사용하여 확장의 동기화를 건너뛸 수 있습니다.
테마: GitHub Sharp
설정 동기화는 동기화 중에 설정 및 키 바인딩의 충돌을 감지할 수 있습니다. 충돌은 수신(원격) 변경 사항을 왼쪽에, 로컬 변경 사항을 오른쪽에 표시하는 차이점 편집기를 사용하여 표시됩니다. 오른쪽 편집기에서 편집하고 편집기에 제공된 작업을 사용하여 변경 사항을 병합하여 충돌을 해결할 수 있습니다.
여기서는 원격 colorTheme 설정 값이 **원격 수락** 액션을 사용하여 선택되었습니다.
테마: GitHub Sharp, GitHub Sharp Dark
설정 동기화 활동은 **로그 (동기화)** 출력 보기에서 모니터링할 수 있습니다. 모든 로컬 환경 설정은 동기화 중에 변경될 때마다 디스크에 30일 동안 백업됩니다. **동기화: 로컬 백업 폴더 열기** 명령을 사용하여 백업 위치로 이동하고 이전 환경 설정을 검색할 수 있습니다.
테마: GitHub Sharp
언제든지 현재 VS Code 인스턴스 또는 모든 VS Code 설치에서 동기화를 비활성화할 수 있습니다. 모든 동기화를 비활성화하도록 선택하면 클라우드에서 데이터가 제거됩니다.

참고: 설정 동기화는 Microsoft 계정을 사용하여 VS Code 환경 설정을 동기화를 위해 저장하므로 이 기능을 사용하려면 계정이 필요합니다. 자세한 내용은 설정 동기화 문서를 참조하십시오.
타임라인 보기
이번 반복에서는 새로운 타임라인 보기 개발에 계속해서 진전을 보였습니다. 이 기능은 이제 Insiders 에디션에서 기본적으로 활성화되며, Stable 에디션에서는 다음 설정을 통해 활성화할 수 있습니다.
"timeline.showView": true
아래는 타임라인 보기에서 파일의 Git 커밋 기록을 표시하는 모습입니다.

테마: Dark Amethyst
이제 페이지 매김 지원 (위의 **더 로드** 액션 사용)을 추가했으며, 오른쪽에 상대 시간 표시를 추가했습니다. 확장 프로그램은 타임라인 보기 및 개별 타임라인 항목에도 메뉴 항목을 추가할 수 있습니다. 위의 스크린샷에서는 내장 Git 확장이 **커밋 ID 복사** 및 **커밋 메시지 복사** 명령을 제공합니다.
새 JavaScript 디버거
이번 달에는 새로운 JavaScript 디버거 개발에 계속해서 진전을 보였습니다. 이 디버거는 Insiders에 기본적으로 설치되며, VS Code Stable의 Marketplace에서 설치할 수 있습니다. debug.javascript.usePreview 설정을 활성화하여 기존 launch 구성으로 사용을 시작할 수 있습니다. 이번 달에 추가된 새로운 기능은 다음과 같습니다.
자동 코드 서식 지정 (Pretty printing)

테마: Earthsong, 글꼴: Fira Code
디버거는 이제 파일을 자동으로 서식 지정할 수 있습니다. 이는 특히 난독화된 소스를 다룰 때 유용합니다. 난독화된 파일에 단계별로 들어가거나 파일을 열 때 프롬프트가 표시되며, **디버그: 디버깅을 위한 자동 코드 서식 지정** 명령을 통해 수동으로도 트리거할 수 있습니다.
프롬프트 제안을 **다시 묻지 않음**을 선택하거나 debug.javascript.suggestPrettyPrinting 설정을 false로 변경하여 끌 수 있습니다.
Microsoft Edge 및 WebView2 지원
이제 새로운 Microsoft Edge 브라우저를 실행하는 것을 지원합니다. 디버그 유형을 chrome 또는 pwa-chrome에서 pwa-msedge로 변경하여 사용해 볼 수 있습니다. chrome과 동일한 모든 구성 설정을 지원합니다.
이와 함께 데스크톱 Windows 애플리케이션에서 WebView2 컨트롤을 지원합니다. 설정 방법을 알아보려면 webview 데모를 확인하십시오.

원격 디버깅
이제 새로운 디버거를 사용하여 GitHub Codespaces 또는 원격 SSH와 같은 원격 작업 영역의 브라우저 소스 코드를 디버깅할 수 있습니다. 이를 설정하려면 웹 서버를 포트 포워딩하거나 (간단한 정적 웹 서버 사용), 포워딩된 포트를 가리키는 chrome 또는 pwa-msedge launch 구성을 생성하십시오.
예를 들어,
{
"version": "0.2.0",
"configurations": [
{
"type": "pwa-msedge",
"request": "launch",
"name": "Debug my App",
"url": "https://:5000" // <- debug an app forwarded on port 5000
}
]
}
디버깅 세션을 시작하면 컴퓨터에 브라우저가 열리고 VS Code에서 평소처럼 디버깅할 수 있습니다.
더 많은 보기를 이동 가능하게 함
지난 릴리스에서 VS Code는 패널로 보기를 재배치하는 기능을 일부 제공했습니다. 이번 릴리스에서는 이 기능을 훨씬 더 많은 보기에 대해 확장했습니다. 이제 디버그/실행 보기 또는 새 타임라인 보기와 같은 보기를 이동할 수 있습니다. 또한 사이드바의 다른 보기 안으로 보기를 이동할 수도 있습니다. 예를 들어, **열린 편집기** 보기를 소스 제어 보기로 이동하고 싶을 수 있습니다. 이 모든 작업을 보기들을 드래그하여 활동 표시줄 또는 패널의 원하는 위치에 놓으면 됩니다.
아래 애니메이션은 **열린 편집기** 보기를 다른 보기로 이동한 다음 패널로 이동하는 과정을 보여줍니다.

테마: Horizon Bright, 글꼴: Cascadia Code
또한 키보드로 보기 이동을 더 쉽게 만드는 새로운 명령인 **보기: 초점 보기 이동** (workbench.action.moveFocusedView)을 도입했습니다.
이것은 미리보기 기능이므로, 수정할 수 없는 상태에 빠지면 모든 보기를 원래 위치로 재설정하는 명령이 있습니다: **보기: 보기 위치 재설정** (workbench.action.resetViewLocations).
확장 프로그램 기여
원격 개발
컨테이너, 원격 머신 또는 Linux용 Windows 하위 시스템(WSL)을 전체 기능 개발 환경으로 사용할 수 있는 원격 개발 확장에 대한 작업이 계속 진행 중입니다.
1.43의 주요 기능은 다음과 같습니다.
- 애플리케이션 링크를 통한 원격 작업 영역 열기.
- 원격 - SSH: Windows 및 macOS SSH 호스트 지원.
- 원격 - SSH: 연결 공유가 기본적으로 활성화됨.
- WSL: 최근 WSL 2에서 Docker 사용 블로그 게시물을 확인하십시오.
새로운 확장 기능 기능 및 버그 수정에 대해서는 원격 개발 릴리스 노트에서 확인할 수 있습니다.
Vetur
Vue.js를 위한 Vetur 확장에 이제 템플릿 보간에 대한 더 나은 자동 완성이 포함되었습니다. 변경 로그는 0.24.0 릴리스에서 찾을 수 있습니다.
확장 프로그램 작성
디버거 확장 API
디버그 환영 보기
환영 보기 콘텐츠 API 섹션에서 설명한 대로, debug 보기가 이제 환영 보기 콘텐츠 기여에 대해 개방되었습니다. 이러한 추가 기능은 초보 사용자가 프로그램을 실행하거나 디버깅하는 것을 단순화하는 특정 기능으로 안내하는 데 사용될 수 있습니다.
보기가 너무 많은 환영 보기 콘텐츠 기여로 인해 복잡해지는 것을 방지하기 위해, 각 기여는 활성 언어에 대해서만 활성화되도록 권장합니다. 이를 용이하게 하기 위해, 마지막 활성 편집기 언어 (디버거가 사용된)로 설정되는 새로운 컨텍스트 키 debugStartLanguage를 도입했습니다.
예를 들어, 디버거가 Python을 대상으로 하는 경우 debugStartLanguage == "python"일 때만 환영 보기 콘텐츠를 기여해야 합니다. 디버거가 여러 언어를 대상으로 하는 경우 OR 연산자 (||)를 사용하여 여러 조건을 결합할 수 있습니다.
새로운 디버그 호버 API
오늘날 VS Code의 디버그 호버는 마우스 아래의 표현식을 찾기 위해 정규식 기반의 휴리스틱을 사용하며, VS Code 디버거는 이 표현식을 평가하고 결과를 호버에 표시합니다. 정규식이 구성 불가능하기 때문에 모든 언어가 올바르게 처리되거나 (또는 가능한 정도까지) 처리되지 않습니다. 이슈 #84044, #89603, 및 #89332는 일반적인 문제를 설명합니다.
이번 마일스톤에서는 디버그 호버의 동작을 제어하기 위한 새로운 확장 API를 도입했습니다.
언어에 대해 EvaluatableExpressionProvider를 등록하여 VS Code 디버거가 활성 디버그 세션에 대해 평가할 마우스 아래 표현식을 제공할 수 있습니다.
다음은 getWordRangeAtPosition API를 기반으로 한 (간단한) 구현을 보여주는 Mock debug 샘플의 간단한 예입니다.
vscode.languages.registerEvaluatableExpressionProvider('markdown', {
provideEvaluatableExpression(
document: vscode.TextDocument,
position: vscode.Position
): vscode.ProviderResult<vscode.EvaluatableExpression> {
const wordRange = document.getWordRangeAtPosition(position);
if (wordRange) {
return new vscode.EvaluatableExpression(wordRange);
}
return undefined; // nothing evaluatable found under mouse
}
});
더 이상 공백을 이스케이프하지 않음
VS Code 디버거 UI는 더 이상 디버그 확장 프로그램 또는 디버그 어댑터에서 받은 공백을 이스케이프하거나 따옴표로 묶지 않습니다. 예를 들어, DAP Variables 또는 DAP Output 이벤트로 수신된 모든 문자열은 수정 없이 UI에 그대로 표시됩니다.
이는 이제 공백을 VS Code로 보내기 전에 이스케이프해야 하는지 여부를 결정하는 것은 디버그 확장 프로그램 또는 디버그 어댑터의 책임이라는 것을 의미합니다. 더 자세한 내용은 issue #73845에서 확인할 수 있습니다.
CodeAction.disabled
CodeAction.disabled 속성을 사용하면 확장 프로그램이 특정 CodeAction이 사용자의 현재 선택에 대해 불가능한 이유를 VS Code에 알릴 수 있습니다. 이는 특히 리팩토링에 유용합니다.
다음은 Code Action 샘플 확장 프로그램에서 .disabled를 사용하는 예입니다.
import * as vscode from 'vscode';
export class Emojizer implements vscode.CodeActionProvider {
public provideCodeActions(
document: vscode.TextDocument,
range: vscode.Range
): vscode.CodeAction[] | undefined {
const action = new vscode.CodeAction(
`Convert to ${emoji}`,
vscode.CodeActionKind.Refactor.append('emojize')
);
if (!this.isAtStartOfSmiley(document, range)) {
// Tell the user why our action is not available
action.disabled = { reason: 'Selection is not currently on a :)' };
return [action];
}
action.edit = new vscode.WorkspaceEdit();
action.edit.replace(
document.uri,
new vscode.Range(range.start, range.start.translate(0, 2)),
'😀'
);
return action;
}
}
사용자가 키 바인딩을 통해 비활성화된 Code Action을 적용하려고 하면 VS Code는 사용자에게 .disabled 오류 메시지를 표시합니다.

또한 검색 가능성을 높이기 위해 비활성화된 Code Actions는 **리팩토링** 및 **소스 작업** 컨텍스트 메뉴에서 흐리게 표시됩니다.

참고: 비활성화된 작업은 최상위 전구 메뉴에 표시되지 않습니다.
Terminal.exitStatus
확장 프로그램은 이제 터미널이 종료되었는지 여부와 종료된 경우 어떤 종료 코드가 사용되었는지 (있는 경우) 확인할 수 있습니다.
window.onDidCloseTerminal(t => {
if (t.exitStatus && t.exitStatus.code) {
vscode.window.showInformationMessage(`Exit code: ${t.exitStatus.code}`);
}
});
진단 오류에 링크 추가
제안된 진단 링크 API를 안정 버전으로 승격했습니다.
class Diagnostic {
...
/**
* A code or identifier for this diagnostic.
* Should be used for later processing, e.g. when providing [code actions](#_CodeActionContext).
*/
code?: string | number | {
/**
* A code or identifier for this diagnostic.
* Should be used for later processing, e.g. when providing [code actions](#_CodeActionContext).
*/
value: string | number;
/**
* A target URI to open with more information about the diagnostic error.
*/
target: Uri;
};
}
Workspace Edit Metadata
WorkspaceEditEntryMetadata API를 완료했습니다. 이를 통해 확장 프로그램 작성자는 워크스페이스 편집의 변경 사항을 분류할 수 있으며, 특히 변경 사항이 적용되기 전에 검토가 필요한 경우에 그렇습니다.
디버그 어댑터 프로토콜
출력 이벤트에서 그룹화 지원
관련 메시지를 그룹화하여 출력 로그를 정리하기 위해 output 이벤트에 선택적 group 속성이 추가되었습니다. group의 가능한 값은 그룹을 확장 또는 축소하여 열기 위한 start 및 startCollapsed, 그룹을 닫기 위한 end입니다.
참고: 이 릴리스부터 VS Code는 이 DAP 향상 기능을 지원합니다.
완료 항목을 통한 커서 배치 허용
완료 항목에 선택적 selectionStart 및 selectionLength 속성이 추가되었습니다. 이 속성을 사용하면 완료 텍스트가 삽입된 후 클라이언트의 현재 선택 (또는 캐럿 위치)을 제어할 수 있습니다.
참고: VS Code는 아직 이 DAP 향상 기능을 지원하지 않습니다. 다음 릴리스에서 계획 중입니다.
제안: 진행률 이벤트
디버그 어댑터 프로토콜에 **진행률 이벤트**를 추가하는 제안에 대해 일부 진전을 이루었습니다. 관심이 있다면 이 DAP 기능 요청에서 토론에 참여할 수 있습니다.
언어 서버 프로토콜
언어 서버 프로토콜 버전 3.16에 대한 작업이 시작되었습니다.
새 버전에는 다음 항목에 대한 제안된 지원이 포함됩니다.
- 완료 항목에 대한 삽입/대체 편집.
- 진단에 대한 구조적 코드 (예: 링크 지원).
- 심볼 정보 및 문서 심볼에 대한 태그 지원.
제안된 확장 API
모든 마일스톤에는 새로운 제안 API가 포함되며 확장 작성자는 이를 사용해 볼 수 있습니다. 언제나처럼 여러분의 피드백을 기다립니다. 제안 API를 사용해 보려면 다음을 수행하세요.
- 제안된 API는 자주 변경되므로 Insiders를 사용해야 합니다.
- 확장의
package.json파일에 이 줄이 있어야 합니다:"enableProposedApi": true. vscode.proposed.d.ts파일의 최신 버전을 프로젝트 소스 위치로 복사합니다.
제안 API를 사용하는 확장은 게시할 수 없습니다. 다음 릴리스에서 호환성이 깨지는 변경이 있을 수 있으며 기존 확장을 손상시키고 싶지 않습니다.
사용자 지정 편집기 API
이번 반복에서 사용자 지정 편집기 API 제안에 대한 작업을 계속했습니다. 주요 변경 사항은 다음과 같습니다.
- API 메서드를 더 짧고 일관되게 이름 변경.
CustomTextEditorProvider를 도입하여 텍스트 파일에 대한 사용자 지정 편집기 생성을 단순화했습니다. 이 사용자 지정 편집기는 VS Code의 일반TextDocument를 데이터 모델로 사용하므로save,backup및 기타 작업을 직접 구현할 필요가 없습니다. 또한 리소스에 대한 사용자 지정 편집기와 동일한 리소스에 대한 텍스트 편집기 간의 실시간 동기화를 쉽게 할 수 있습니다.- 바이너리
CustomEditor가 작동하는 모델을 저장하기 위한CustomDocument도입. 리소스당CustomDocument가 하나씩 있지만, 사용자는 해당 리소스에 대해 여러 사용자 지정 편집기를 열 수 있습니다.
계속해서 사용자 지정 편집기 API 제안을 테스트하고 피드백을 공유해 주세요. API의 세부 사항은 여전히 변경될 수 있지만, 현재 제안이 곧 최종 확정될 것으로 기대하는 바를 반영한다고 생각합니다.
CodeActionProviderMetadata.documentation
Code Actions에 대한 문서를 확장 프로그램이 기여하는 방식을 표준화하는 이전 제안을 수정했습니다. 업데이트된 제안에서는 이제 CodeActionProviderMetadata 유형의 documentation 속성을 사용하여 문서가 제공됩니다.
예를 들어, 기본 JavaScript 및 TypeScript 확장 프로그램이 문서를 기여하는 방법은 다음과 같습니다.
class TypeScriptRefactorProvider implements vscode.CodeActionProvider {
public static readonly metadata: vscode.CodeActionProviderMetadata = {
providedCodeActionKinds: [ vscode.CodeActionKind.Refactor ],
documentation: [
{
kind: vscode.CodeActionKind.Refactor,
// This command opens a webpage when executed
command: {
command: LearnMoreAboutRefactoringsCommand.id,
title: localize('refactor.documentation.title', "Learn more about JS/TS refactorings")
}
}
]
};
...
}
사용자가 리팩토링을 요청할 때마다 문서가 주요 Code Action 목록 뒤에 렌더링됩니다.

Issue #86788에서 제안의 상태를 추적합니다.
Welcome View Content API
일부 보기에서는 이제 확장 프로그램에서 기여하는 Welcome 콘텐츠를 지원합니다. 자세한 내용은 원본 이슈를 참조하세요.
이 API를 채택한 보기는 다음과 같습니다.
explorer- 파일 탐색기scm- 소스 제어debug- 실행/디버그
예를 들어, Git 확장 프로그램이 explorer Welcome 보기에서 리포지토리를 복제하기 위해 Welcome 보기 콘텐츠를 기여하는 방법은 다음과 같습니다.

테마: GitHub Sharp
OpenDialogOptions 및 SaveDialogOptions 제목
OpenDialogOptions 및 SaveDialogOptions 모두 제안된 title 속성을 가지고 있습니다. title이 표시되는지 여부는 플랫폼에 따라 다르지만, 플랫폼에서 title을 표시하는 경우 저장 또는 열기 대화 상자 위에 표시됩니다. 예를 들어, 기본 명령 **Workspaces: Save Workspace As...**는 제목을 **Save Workspace**로 설정합니다.
엔지니어링
Electron 7.0 업데이트
이번 마일스톤에서는 Electron 7을 VS Code에 번들로 묶는 탐색을 완료했습니다. 이는 주요 Electron 릴리스이며 Chromium 78.0.3904.130 및 Node.js 12.8.1과 함께 제공됩니다.
HDR 디스플레이의 경우
고동적 범위(HDR) 디스플레이를 사용하는 Windows 사용자의 경우 VS Code가 흐리고 사용할 수 없게 되는 문제(issue #88491)를 추적하고 있습니다. 이는 78.0.3904.130의 모든 Chromium 기반 애플리케이션에서 발생하는 문제이며 Electron 9로 업그레이드할 때 해결될 예정입니다. Chromium 78에 수정 사항을 백포트할 수 없는 기술적인 이유가 있습니다. VS Code는 Electron 9로 업그레이드될 때 이 수정 사항을 받게 됩니다.
그동안 이 문제에 대한 임시 해결 방법이 있습니다.
- 명령 팔레트 (⇧⌘P (Windows, Linux Ctrl+Shift+P))를 엽니다.
- Preferences: Configure Runtime Arguments 명령을 실행합니다.
- 이 명령은
argv.json파일을 열어 런타임 인수를 구성합니다. 이미 기본 인수가 있을 수 있습니다. "disable-color-correct-rendering": true를"disable-color-correct-rendering": false로 편집합니다.- VS Code를 다시 시작합니다.
참고: 문제가 발생하지 않는 한 이 설정을 편집하지 마세요!
Chromium의 기본 색상 보정을 sRGB로 재정의하고 대신 macOS에서 디스플레이 색 공간을 사용하도록 기본 런타임 인수를 추가했습니다. 이렇게 하면 issue #84154와 같은 문제가 방지되지만 HDR 디스플레이에서는 작동하지 않습니다.
"strict": true
VS Code를 처음 출시했을 때 TypeScript는 아직 새롭고 빠르게 진화하는 언어였으며 오늘날 당연하게 생각하는 일부 유용한 타입 안전 검사, 예를 들어 strict null checking이 누락되었습니다. 지난 몇 년 동안 TypeScript 팀은 TypeScript 컴파일러를 더 "strict"하게 만드는 다양한 옵션을 도입했습니다. 이러한 strict 옵션은 일반적인 프로그래밍 실수를 많이 잡아내고 전체 클래스의 오류를 제거할 수 있습니다. strict 모드의 이점은 잘 문서화되어 있으며 우리는 오랫동안 VS Code 코드베이스에 strict 모드를 활성화하고 싶었습니다. 그러나 이는 약 50만 라인의 소스 코드에 수천 개의 오류를 수정해야 했기 때문에 거의 불가능한 작업처럼 보였습니다.
그럼에도 불구하고 strict 모드의 가치는 매우 높았기 때문에 시간이 좀 걸리더라도 이를 달성하기 위해 노력할 가치가 있다고 판단했습니다. 따라서 지난 2년 동안 점진적으로 코드베이스를 strict 모드 규정에 맞게 업데이트해 왔습니다. 이 모든 작업을 점진적으로 개발 분기에서 직접 수행하여 strict 모드 관련 수정 사항이 코드베이스를 모든 사람에게 조금 더 안전하게 만들었습니다. strict null checks를 활성화하는 것이 아마도 가장 복잡한 부분이었으며, 이를 어떻게 달성했는지 블로그 게시물에 문서화했습니다.
이번 반복에서는 마지막 strict 모드 옵션인 strictFunctionTypes를 성공적으로 활성화했습니다. 이를 완료함으로써 상당히 평범한 커밋으로 전체 코드베이스에 strict 모드를 활성화했습니다!
strict 모드 활성화는 코어 VS Code 팀 전체와 많은 커뮤니티 멤버가 기여한 긴 여정이었습니다. 그러나 이 작업을 점진적으로 수행함으로써 첫날부터 이 모든 노력의 이점을 누릴 수 있었습니다. 앞으로 strict 모드는 코딩 모범 사례를 장려하고, 리팩토링을 더 안전하게 만들고, 궁극적으로 더 빠르게 배포하고 버그를 줄이는 데 도움이 될 것입니다!
CI 빌드 성능 개선
VS Code는 지속적 통합 빌드에 Azure Pipelines를 사용하며 최근 빌드 성능을 상당히 개선했습니다. 자세한 내용은 Improving CI Build Times 블로그 게시물에서 확인할 수 있습니다.
브라우저에서 테스트 실행
이번 마일스톤에서는 Playwright 라이브러리를 활용하여 모든 테스트(단위, 통합, 연기)를 브라우저에서 실행할 수 있게 되어 Chrome, Firefox, Safari와 같은 브라우저에 대한 커버리지가 향상되었습니다. 테스트 실행 방법은 VS Code Tests README를 참조하세요.
주요 수정 사항
- 61491: SCM: 뷰렛이 "리포지토리 없음" 메시지를 개선해야 함
- 74782: 조사: macOS notarization
- 82828: explorer에서 항상 중앙으로 이동시키지 않고 autoReveal가 파일을 하이라이트함
- 8641: macOS: 마우스 버튼 4 및 5로 기록 탐색 허용
- 87767: VSCode 재시작 디버깅이 더 이상 작동하지 않음
- 88038: 자동으로 실행되는 디버거 명령으로 쉘 기록 오염 방지
- 89230: 편집기가 포커스될 때 "Group"이 읽힘
- 89699: 뒤로/앞으로 이동: 선택 유지
- 89989: 웹: 새 창에서 파일 열기 허용
- 90075: Explorer: 잘못된 심볼릭 링크 지원
- 90240: Zen 모드를 해제한 후 줄 번호가 보이지 않음
- 90876: 목록 항목에 'listitem' 역할이 있어야 함
- 91166: 문제 패널이 열려 있을 때 알림이 너무 장황함.
- 91238: 통합 터미널에서 코드 수행 안 됨
감사합니다
마지막으로, VS Code를 더욱 발전시키는 데 도움을 준 다음 분들께 진심으로 감사드립니다.
이슈 추적에 대한 기여
- John Murray (@gjsjohnmurray)
- Andrii Dieiev (@IllusionMH)
- Alexander (@usernamehw)
- ArturoDent (@ArturoDent)
- Gama11 (@Gama11)
vscode 기여
- @alpalla: Fixes #32264 - 동일한 작업의 N개 인스턴스 허용 PR #89872
- Baibhav Vatsa (@BaibhaVatsa): tsconfig.base.json에서 중복 플래그 제거 PR #91050
- Bailey Herbert (@baileyherbert)
- @bepvte: "Contributions"를 "Feature Contributions"로 이름 변경 PR #89842
- @bolinfest
- Brett Cannon (@brettcannon): 명령 문서의 복수형 수정 PR #89959
- Dor Mesica (@dormesica): 활성 파일 실행 시 터미널에서 따옴표로 래핑되지 않는 문제 수정 PR #90847
- Evan Krause (@evangrayk): 편집기 외 웹뷰에서 undo/redo 깨진 문제 수정 PR #89961
- Ian MacFarlane (@eyeino): 새 git 브랜치 생성 시 언어 명확화 PR #90160
- John Murray (@gjsjohnmurray)
- lipgloss (@gloss-water): 테마: 미니맵 투명도에 대한 workbench 구성 옵션 추가 PR #58324
- Michael Gubik (@gubikmic): 주요 축만 스크롤 (스크롤 드리프트 방지) PR #70047
- Gustavo Cassel (@GustavoASC)
- @Helloimbob: csh 스크립트를 shellscript로 자동 감지 PR #90960
- Jean Pierre (@jeanp413)
- Jonas Littorin (@jlittorin): "promptString" 유형의 입력 변수에 password 속성 추가. PR #90482
- John Blackbourn (@johnbillion): .envrc 파일을 Shell 스크립트로 처리 PR #90825
- Josh Goldberg (@JoshuaKGoldberg): Docs 오타: insertSpaces에서 ` 누락 PR #90374
- @LadyCailin: 강조 표시된 줄이 범위 시작/끝인 경우 들여쓰기 오른쪽으로 이동 PR #77762
- Maik Riechert (@letmaik): Docs: package.json 필드 이름 "extensionDependency" 수정 PR #90103
- Gordey (@lgordey): Settings UI: 동기화 설정에 구분 기호 추가 PR #91461
- Alex SK (@lxsk): #21849 수정: Minimap: 전체 문서 표시 PR #74425
- Dan (@mallardduck): 다른 색상의 여러 눈금자 지원 추가 PR #88453
- Rasmus (@neonsea): 디버거 명령으로 쉘 기록 오염 방지 PR #88041
- @nrayburn-tech
- Przemek Adamczewski (@padamczewski): fix: 다중 커서 라인 n번 복사 (#_40646) PR #52645
- Peter Shinners (@PeterShinners):
task.autoDetect설명에 대한 문법 수정 PR #90117 - PM Extra (@PMExtra): JsonValidation의 작은 버그 수정 PR #91237
- Ron Buckton (@rbuckton): TS 호출 계층 구조에서 파일 표시 개선을 위한 오타 수정 (1자리 차이) PR #89822
- Robert Rossmann (@robertrossmann): diff 편집기의 스크롤 가능한 뷰포트를 다른 스크롤바와 동일하게 스타일 지정 PR #89660
- Oğuzhan Eroğlu (@rohanrhu): end 키 상태 동작 기억 추가 PR #88664
- Michael Scovetta (@scovetta): #90555 수정 (resetLocal()이 아무 작업도 하지 않음) PR #90556
- Sergio Schvezov (@sergiusens): Snap 수정 PR #91182
- Matthew Spencer (@sirmspencer): 사이드 바를 닫는 새 액션 추가 PR #90404
- Konstantin Solomatov (@solomatov): 확장 프로그램 의사 터미널에서 링크 처리 수정 PR #88458
- 태재영 (@TroyTae): front-matter 끝에 대해 세 개의 점 지원 PR #90122
- Victor Gomes (@vhpgomes): smartSelect 수정 PR #90736
- Waldemar Kornewald (@wkornewald): 상단에 더 가깝게 표시 (본문 중앙, 시그니처 아님) PR #80727
- @zhengjiaqi: 편집기 액션 실행 지원 매개변수 PR #87677
- Jiayue. Zhang (@zjysdhr): #88294 수정 commitData를 commit 인터페이스에 추가 PR #89005
vscode-eslint 기여
- Yosuke Ota (@ota-meshi): 새 eslint 제안 API 지원 추가 PR #814
- Krasimir Nedelchev (@kaykayehnn): 오타 수정 PR #900
language-server-protocol 기여
- Lars Hvam (@larshp) 사양 3.15, 오타 수정 PR #912
- Maxim Reznik (@reznikmm):
- specification-3-15.md 마크다운 서식 수정 PR #913
- 3.15에서 추가 foldingRangeProvider 정의 삭제 PR #914
- 3.15에서 추가 ExecuteCommandOptions 정의 삭제 PR #915
- 3.15 마크다운에서 ts를 typescript로 대체 PR #916
- 중복된 TextDocumentRegistrationOptions 삭제 PR #917
- 3.15에 선택 범위 관련 기능 추가 PR #918
- 3.15에 workspaceFolders/configuration/window 추가 PR #930
- Christian Tietze (@DivineDominion) 오타 수정 PR #921
- Kun Ren (@renkun-ken) 오타 수정 PR #922
vscode-js-debug 기여
- SantoJambit (@SantoJambit): codelens에 대한 루트 수준 스크립트 속성만 가져오기 PR #351
vscode-languageserver-node에 기여
- @Razzeee 오타 수정 PR #574
- Remy Suen (@rcjsuen): 의미론적 토큰 파일 이름 오타 수정 PR #583
vscode-css-languageservice에 대한 기여
- Jorge del Casar (@jorgecasar): SCSS에서 @apply 규칙 파싱 지원 추가 PR #194
- Denis Malinochkin (@mrmlnc): SCSS/Less 믹스인에 제안 참여자 사용 기능 PR #201
- Will Bender (@Ragnoroct): 규칙 세트 뒤의 scss 자동 완성 수정 PR #188
vscode-vsce 기여
- Robert Holt (@rjmholt): 패키지 단계에서 이슈 링크 확장을 중지하기 위해 --noGitHubIssueLinking 추가 PR #424
localization 기여
800명 이상의 Cloud + AI Localization 커뮤니티 회원이 Microsoft Localization Community Platform(MLCP)을 사용하고 있으며, Visual Studio Code에 170명 정도의 활성 기여자가 있습니다. 새로운 번역 제공, 번역 투표, 프로세스 개선 제안 등 여러분의 기여에 감사드립니다.
다음은 기여자의 스냅샷입니다. 프로젝트에 대한 자세한 내용과 기여자 이름 목록을 보려면 프로젝트 사이트(https://aka.ms/vscodeloc)를 방문하십시오.
- 중국어 (간체, 중국) Yizhi Gu, Tingting Yi, Charles Dong, Justin Liu, 项 斌, ick, paul cheung, CHEN Shihuan, 普鲁文, 张锐, Zhiqiang Li, Joel Yang.
- 중국어 (번체, 대만) Yi-Jyun Pan, 林 高民.
- 덴마크어 (덴마크) Lasse Stilvang.
- 네덜란드어 (네덜란드) Koen Williame.
- 영어 (영국) Martin Littlecott, Henry Dearn, carlos baltazar.
- 핀란드어 (핀란드) Feetu Nyrhinen.
- 프랑스어 (프랑스) Thierry DEMAN-BARCELÒ, Antoine Griffard, Rodolphe NOEL, Younes ZOBAIRI.
- 독일어 (독일) Philip Kneifeld, Raphael Höser, nick rauch.
- 힌디어 (인도) KRISHNA TANDON, Alish Vagadiya.
- 헝가리어 (헝가리) Levente Borbély.
- 인도네시아어 (인도네시아) Eriawan Kusumawardhono, Riwut Libinuko.
- 이탈리아어 (이탈리아) Luigi Bruno.
- 일본어 (일본) TENMYO Masakazu, Koichi Makino.
- 한국어 (한국) 강 성원, Hongju, 정 관우.
- 라트비아어 (라트비아) Andris Vilde, Atis Straujums.
- 폴란드어 (폴란드) Makabeus Orban, Mariusz Wachowski.
- 포르투갈어 (브라질) Marcondes Alexandre, Arthur Lima, Marcelo Fernandes, Roberto Fonseca, Yuri Dantas, Luiz Gustavo Nunes, Thiago Takehana.
- 포르투갈어 (포르투갈) Diogo Barros.
- 루마니아어 (루마니아) LaServici.
- 러시아어 (러시아) Andrey Veselov, Vadim Svitkin, Дмитрий Кирьянов.
- 스페인어 (스페인, 국제 정렬) Ricardo Estrada Rdez, Alvaro Enrique Ruano.
- 타밀어 (인도) Vijay Rajasekar, Selvakumarasamy G, Pandidurai R.
- 튀르키예어 (튀르키예) Mehmet Yönügül.
- 베트남어 (베트남) Hiếu Nguyễn, Van-Tien Hoang, Vương.