layout | parent | title | nav_order | description |
---|---|---|---|---|
default |
References |
VS Code API |
1 |
VS Code API 는 Visual Studio Code 익스텐션에서 호출 할 수있는 자바스크립트 API 세트 입니다. 이 페이지에서는, 익스텐션 저자가 사용 할 수 있는 모든 VS Code API의 목록이 나열되어 있습니다.
아래의 목록은 VS Code 저장소의 vscode.d.ts
파일에서 컴파일 된 것입니다.
{$ Content $}
다음은 VS Code API에서 공통으로 쓰이는 패턴들의 일부입니다.
VS Code API는 프로미스를 사용한 비동기 작업을 나타냅니다. 익스텐션에서 any 타입의 프로미스는 ES6, WinJS, A+ 등과 같이 반환 될 수 있습니다.
특정 프로미스 라이브러리에 독립적인것은 API에서 Thenable
-type으로 표현 됩니다. Thenable
은 then한 메소드인 공통의 분모를 표기합니다.
대부분의 경우 프로미스 사용은 선택 사항이며 VS Code가 익스텐션을 호출하면 result type 과 result type 의 Thenable
을 처리 할 수 있습니다. 프로미스 사용이 선택적인 경우, API는 or
-type 을 반환하여 이를 나타냅니다.
provideNumber(): number | Thenable<number>
때때로 작업이 완료 되지 않아, 상태가 변하는 휘발성 상태에서 작업이 시작됩니다. 예를 들어, IntelliSense 시작을 계산한 다음, 사용자는 계속하여 입력하여 해당 작업의 결과를 쓸모 없게 만듭니다.
이같은 동작에 노출 된 API는 취소를 확인하거나 (isCancellationRequested
), 취소가 발생 했을때 (onCancellationRequested
) 알림을 받을 수 있는 CancellationToken
을 전달 받습니다. 취소 토큰은 일반적으로 함수 호출의 선택사항인 마지막 매개변수입니다.
VS Code API는 VS Code에서 얻은 리소스에 일회성 패턴을 사용합니다. 이는 이벤트 리스닝, 커맨드, UI와 상호작용 그리고 다양한 언어 기여에 사용 됩니다.
예를 들어, setStatusBarMessage(value: string)
함수는 dispose
를 호출 하면 메세지를 다시 제거하는 Disposable
을 반환 합니다.
VS Code API의 이벤트는 구독을 위해 리스너 함수로 호출하는 함수로 반환 됩니다. 구독 호출은 이벤트 리스너를 제거 하는 Disposable
을 반환합니다.
var listener = function(event) {
console.log("It happened", event);
};
// start listening
var subscription = fsWatcher.onDidDelete(listener);
// do more stuff
subscription.dispose(); // stop listening
이벤트의 이름은 on[Will|Did]VerbNoun?
패턴을 따릅니다. 이 이름은 이벤트가 일어날 것인지 (onWill) 혹은 이미 일어 났는지 (onDid), 어떤 일이 일어났는지 (verb), 그리고 컨텍스트가 명확하지 않은 이상 컨텍스트*(noun)*를 나타냅니다.
VS Code API의 예시로, window.onDidChangeActiveTextEditor
는 활성화된 텍스트 에디터가 (noun), 이미 (onDid) 변경되었을때 (verb) 발생 하는 이벤트 입니다.
VS Code API는 엄격한 null 검사를 지원하기 때문에, undefined
와 null
타입스크립트 유형을 사용합니다.