다음을 통해 공유


Windows 터미널 사용자 지정 작업 및 키 바인딩

터미널과 상호 작용하는 방법을 제어할 수 있는 사용자 지정 작업은 Windows 터미널 내에서 만들 수 있습니다. 이러한 작업은 명령 팔레트에 자동으로 추가됩니다.

작업 형식

작업은 다음과 같은 형식으로 구성할 수 있습니다.

인수 없는 명령

{ "command": "commandName", "id": "User.MyCommand" }

예를 들어 이 기본 설정은 Alt+F4 바로 가기 키를 사용하여 터미널 창을 닫습니다.

{ "command": "closeWindow", "id": "User.MyCloseWindow" }

인수 있는 명령

{ "command": { "action": "commandName", "argument": "value" }, "id": "User.MyCommand" }

예를 들어 이 기본 설정은 바로 가기 키 Ctrl+Shift+1 을 사용하여 드롭다운 메뉴에 먼저 나열된 프로필을 기반으로 터미널에서 새 탭을 엽니다(일반적으로 PowerShell 프로필이 열립니다).

{ "command": { "action": "newTab", "index": 0 }, "id": "User.MyNewTabAction" }

명령줄 인수가 있는 명령

{ "command": { "action": "wt", "commandline": "value" }, "keys": "modifiers+key" }

예를 들어 이 기본 설정은 Ctrl+Shift+O 바로 가기 키를 사용하여 명령 프롬프트 및 Ubuntu에 대한 추가 창이 있는 새 PowerShell 탭을 여는 데 사용합니다wt.

{
  "command": 
  {
    "action": "wt",
    "commandline": "new-tab pwsh.exe ; split-pane -p \"Command Prompt\" -d C:\\ ; split-pane -p \"Ubuntu\" -H"
  },
  "keys": "ctrl+shift+o"
}

동작 속성

작업은 배열에 actions 저장되며 다음 속성을 사용하여 생성할 수 있습니다.

명령

연결된 키를 누를 때 실행되는 명령입니다.

속성 이름: command

필요 여부: 필수

허용하는 값: 문자열

작업

특정 명령에 추가 기능을 추가합니다.

속성 이름: action

필요 여부: 선택

허용하는 값: 문자열

이름

명령 팔레트에 표시되는 이름을 설정합니다. 이름이 제공되지 않으면 터미널에서 자동으로 이름을 생성하려고 시도합니다.

속성 이름: name

필요 여부: 선택

허용하는 값: 문자열

Icon

명령 팔레트 내에 표시되는 아이콘을 설정합니다.

속성 이름: icon

필요 여부: 선택

허용하는 값: 파일 위치(문자열 또는 이모지)

ID

그러면 이 작업의 ID가 설정됩니다. 이 작업이 제공되지 않으면 터미널에서 이 작업에 대한 ID를 생성합니다. ID는 키 바인딩을 만들 때 이 작업을 참조하는 데 사용됩니다.

속성 이름: id

필요 여부: 선택

수락: 문자열


키 바인딩

고유한 ID를 사용하여 작업을 참조하여 키 바인딩을 할당할 수 있습니다. 예를 들어 위에서 정의한 작업에 Alt+F4, Ctrl+Shift+1Ctrl+Shift+o를 할당하는 가능한 keybindings 배열은 다음과 같습니다. 동일한 작업에 대해 여러 키 바인딩 항목을 만들 수 있습니다.

"keybindings": [
  { "keys": "alt+f4", "id": "User.MyCloseWindow" },
  { "keys": "ctrl+shift+1", "id": "User.MyNewTabAction" },
  { "keys": "ctrl+shift+o", "id": "User.MyCoolSetup"}
]

키 바인딩 속성

키 바인딩은 배열에 keybindings 저장되며 다음 속성을 사용하여 생성됩니다.

구성

명령을 호출하는 데 사용되는 키 조합을 정의합니다. 키에는 하나의 키가 있는 한정자를 개수에 제한 없이 사용할 수 있습니다. 허용되는 한정자 및 키는 아래에 나열되어 있습니다.

작업에 키가 없으면 명령 팔레트에 키보드를 사용하여 호출할 수는 없습니다.

속성 이름: keys

필요 여부: 필수

허용하는 값: 문자열 또는 배열[문자열]

ID

이 키 바인딩을 누를 때 호출할 작업의 ID입니다.

속성 이름: id

필요 여부: 필수

허용하는 값: 문자열


허용되는 한정자

ctrl+, shift+, alt+win+

참고 항목

Windows 키는 한정자로 지원되지만 시스템은 대부분의 Win+<키> 바인딩을 예약합니다. OS에서 해당 키 바인딩을 예약한 경우 터미널은 해당 바인딩을 받지 않습니다.

보조 키

Type 구성
함수 및 영숫자 키 f1-f24, , a-z0-9
기호 `, plus, -, =, [, ], \, ;, ',./
화살표 키 down, left, right, up, pagedown, pageup, pgdnpgup, endhome
동작 키 tab, enter, esc, escape, space, backspace, deleteinsert, appmenu
숫자 키패드 키 numpad_0-numpad_9, numpad0-numpad9, numpad_add, numpad_plus, numpad_decimal, numpad_period, numpad_dividenumpad_minus, numpad_subtractnumpad_multiply
브라우저 키 browser_back, browser_forward, browser_refresh, browser_stop, browser_search, browser_favoritesbrowser_home

참고: = 동일한 plus 항목입니다. 후자를 numpad_plus로 혼동하면 안 됩니다.


애플리케이션 수준 명령

Quit

열려 있는 모든 터미널 창을 닫습니다. 모든 창을 닫을 것인지 확인하는 확인 대화 상자가 현재 창에 표시됩니다.

명령 이름: quit

기본 ID:

{ "command": "quit", "id": "Terminal.Quit" }

창 닫기

현재 창과 창 안의 모든 탭을 닫습니다. confirmCloseAllTabstrue로 설정하면 모든 탭을 닫을 것인지 확인하는 확인 대화 상자가 표시됩니다. 이 설정에 대한 자세한 내용은 모양 페이지에서 확인할 수 있습니다.

명령 이름: closeWindow

기본 ID:

{ "command": "closeWindow", "id": "Terminal.CloseWindow" }

기본 바인딩:

{ "keys": "alt+f4", "id": "Terminal.CloseWindow" }

Windows 터미널 모든 탭 닫기 확인

찾기

검색 대화 상자를 엽니다. 검색에 대한 자세한 내용은 검색 페이지에서 찾을 수 있습니다.

명령 이름: find

기본 ID:

{ "command": "find", "id": "Terminal.FindText" }

기본 바인딩:

{ "keys": "ctrl+shift+f", "id": "Terminal.FindText" }

다음/이전 검색 일치 항목 찾기

이를 통해 검색 일치 항목을 탐색할 수 있습니다.

명령 이름: findMatch

기본 ID:

{ "command": { "action": "findMatch", "direction": "next" }, "id": "Terminal.FindNextMatch" },
{ "command": { "action": "findMatch", "direction": "prev" }, "id": "Terminal.FindPrevMatch" }

매개 변수

속성 필요성 수락 설명
direction 필수 "next", "prev" 검색 결과를 탐색하는 방향입니다.

드롭다운 열기

드롭다운 메뉴를 엽니다.

명령 이름: openNewTabDropdown

기본 ID:

{ "command": "openNewTabDropdown", "id": "Terminal.OpenNewTabDropdown" }

기본 바인딩:

{ "keys": "ctrl+shift+space", "id": "Terminal.OpenNewTabDropdown" }

설정 파일 열기

target 필드에 따라 설정 UI, 사용자 지정 설정 파일(settings.json) 또는 기본 설정 파일(defaults.json)을 엽니다. target 필드가 없으면 사용자 지정 설정 파일이 열립니다.

명령 이름: openSettings

기본 ID:

{ "command": { "action": "openSettings", "target": "settingsUI" }, "id": "Terminal.OpenSettingsUI" },
{ "command": { "action": "openSettings", "target": "settingsFile" }, "id": "Terminal.OpenSettingsFile" },
{ "command": { "action": "openSettings", "target": "defaultsFile" }, "keys": "Terminal.OpenDefaultSettingsFile" }

기본 바인딩:

{ "keys": "ctrl+,", "id": "Terminal.OpenSettingsUI" },
{ "keys": "ctrl+shift+,", "id": "Terminal.OpenSettingsFile" },
{ "keys": "ctrl+alt+,", "id": "Terminal.OpenDefaultSettingsFile" }

매개 변수

속성 필요성 수락 설명
target 선택 사항 "settingsFile", "defaultsFile", "settingsUI""allFiles" 열려는 설정 파일입니다.

시스템 메뉴 열기

창의 왼쪽 위 모서리에 있는 시스템 메뉴를 엽니다.

명령 이름: openSystemMenu

기본 ID:

{ "command": "openSystemMenu", "id": "Terminal.OpenSystemMenu" }

기본 바인딩:

{ "keys": "alt+space", "id": "Terminal.OpenSystemMenu" }

전체 화면 설정/해제

전체 화면과 기본 창 크기 간에 전환할 수 있습니다.

명령 이름: toggleFullscreen

기본 ID

{ "command": "toggleFullscreen", "id": "Terminal.ToggleFullscreen" }

기본 바인딩:

{ "keys": "alt+enter", "id": "Terminal.ToggleFullscreen" },
{ "keys": "f11", "id": "Terminal.ToggleFullscreen" }

포커스 모드 설정/해제

이를 통해 탭과 제목 표시줄을 숨기는 "포커스 모드"로 들어갈 수 있습니다.

명령 이름: toggleFocusMode

기본 ID:

{ "command": "toggleFocusMode", "id": "Terminal.ToggleFocusMode" }

항상 위 모드 설정/해제

이를 통해 창의 "항상 위" 상태를 설정/해제할 수 있습니다. "항상 위" 모드에 있으면 창이 맨 위에 위치하지 않는 다른 모든 창 위에 표시됩니다.

명령 이름: toggleAlwaysOnTop

기본 ID:

{ "command": "toggleAlwaysOnTop", "id": "Terminal.ToggleAlwaysOnTop" }

입력 보내기

임의의 텍스트 입력을 셸에 보냅니다. 예를 들어 "text\n" 입력은 셸에서 "텍스트" 뒤에 줄 바꿈 문자를 씁니다.

ANSI 이스케이프 시퀀스를 사용할 수 있지만 \x1b와 같은 이스케이프 코드는 \u001b로 작성해야 합니다. 예를 들어 "\u001b[A"는 위쪽 화살표 단추를 누른 것처럼 작동합니다.

명령 이름: sendInput

기본 바인딩:

이 명령은 현재 기본 설정에 바인딩되어 있지 않습니다.

{ "command": { "action": "sendInput", "input": "\u001b[A" } }

매개 변수

속성 필요성 수락 설명
input 필수 문자열 셸에 제공할 텍스트 입력입니다.


탭 관리 명령

탭 닫기

지정된 인덱스에서 탭을 닫습니다. 인덱스가 제공되지 않으면 포커스가 있는 탭의 인덱스를 사용합니다.

명령 이름: closeTab

매개 변수

속성 필요성 수락 설명
index 선택 사항 정수 닫을 탭의 위치입니다.

다른 모든 탭 닫기

인덱스에 있는 탭을 제외한 모든 탭을 닫습니다. 인덱스가 제공되지 않으면 포커스가 있는 탭의 인덱스를 사용합니다.

명령 이름: closeOtherTabs

기본 ID:

{ "command": "closeOtherTabs", "id": "Terminal.CloseOtherTabs" }

매개 변수

속성 필요성 수락 설명
index 선택 사항 정수 열린 상태로 유지할 탭의 위치입니다.

인덱스 뒤의 탭 닫기

인덱스의 탭 뒤에 있는 탭을 닫습니다. 인덱스가 제공되지 않으면 포커스가 있는 탭의 인덱스를 사용합니다.

명령 이름: closeTabsAfter

기본 ID:

{ "command": "closeTabsAfter", "id": "Terminal.CloseTabsAfter" }

매개 변수

속성 필요성 수락 설명
index 선택 사항 정수 열린 상태로 유지할 마지막 탭의 위치입니다.

탭 복제

현재 탭의 프로필과 디렉터리가 복사하여 엽니다. 수정/추가된 ENV 변수는 포함되지 않습니다.

명령 이름: duplicateTab

기본 ID:

{ "command": "duplicateTab", "id": "Terminal.DuplicateTab" }

기본 바인딩:

{ "keys": "ctrl+shift+d", "id": "Terminal.DuplicateTab" }

새 탭

새 탭을 만듭니다. 인수가 없으면 새 탭에서 기본 프로필을 엽니다. 인덱스를 지정하지 않으면 기본 프로필의 해당 설정이 사용됩니다. 인덱스가 프로필에 매핑되지 않으면 키가 터미널에 직접 전달됩니다(또는 작업을 호출하는 데 키가 사용되지 않은 경우 무시됨).

명령 이름: newTab

기본 ID:

{ "command": "newTab", "id": "Terminal.OpenNewTab" },
{ "command": { "action": "newTab", "index": 0 }, "id": "Terminal.OpenNewTabProfile0" },
{ "command": { "action": "newTab", "index": 1 }, "id": "Terminal.OpenNewTabProfile1" },
{ "command": { "action": "newTab", "index": 2 }, "id": "Terminal.OpenNewTabProfile2" },
{ "command": { "action": "newTab", "index": 3 }, "id": "Terminal.OpenNewTabProfile3" },
{ "command": { "action": "newTab", "index": 4 }, "id": "Terminal.OpenNewTabProfile4" },
{ "command": { "action": "newTab", "index": 5 }, "id": "Terminal.OpenNewTabProfile5" },
{ "command": { "action": "newTab", "index": 6 }, "id": "Terminal.OpenNewTabProfile6" },
{ "command": { "action": "newTab", "index": 7 }, "id": "Terminal.OpenNewTabProfile7" },
{ "command": { "action": "newTab", "index": 8 }, "id": "Terminal.OpenNewTabProfile8" }

기본 바인딩:

{ "keys": "ctrl+shift+t", "id": "Terminal.OpenNewTab" },
{ "keys": "ctrl+shift+1", "id": "Terminal.OpenNewTabProfile0" },
{ "keys": "ctrl+shift+2", "id": "Terminal.OpenNewTabProfile1" },
{ "keys": "ctrl+shift+3", "id": "Terminal.OpenNewTabProfile2" },
{ "keys": "ctrl+shift+4", "id": "Terminal.OpenNewTabProfile3" },
{ "keys": "ctrl+shift+5", "id": "Terminal.OpenNewTabProfile4" },
{ "keys": "ctrl+shift+6", "id": "Terminal.OpenNewTabProfile5" },
{ "keys": "ctrl+shift+7", "id": "Terminal.OpenNewTabProfile6" },
{ "keys": "ctrl+shift+8", "id": "Terminal.OpenNewTabProfile7" },
{ "keys": "ctrl+shift+9", "id": "Terminal.OpenNewTabProfile8" }

매개 변수

속성 필요성 수락 설명
commandline 선택 사항 실행 파일 이름(문자열) 탭 내에서 실행되는 실행 파일입니다.
startingDirectory 선택 사항 폴더 위치(문자열) 탭이 열리는 디렉터리입니다.
elevate 선택 사항 true, , falsenull 프로필의 elevate 속성을 재정의합니다. 생략하면 이 작업은 프로필의 elevate 설정에 따라 작동합니다. true 또는 false로 설정하면 이 작업은 프로필이 각각 "elevate": true 또는 "elevate": false로 설정된 것처럼 작동합니다.
tabTitle 선택 사항 문자열 새 탭의 제목입니다.
index 선택 사항 정수 드롭다운 내 위치에 따라 열리는 프로필입니다(0부터 시작).
profile 선택 사항 프로필의 이름 또는 GUID(문자열) GUID 또는 이름에 따라 열리는 프로필입니다.
colorScheme 선택 사항 색 구성표의 이름(문자열) colorScheme 프로필 세트 대신 사용할 구성표입니다.
suppressApplicationTitle 선택 사항 true, false false로 설정하면 애플리케이션에서 제목 변경 메시지를 보내 탭 제목을 변경할 수 있습니다. true로 설정하면 이러한 메시지가 표시되지 않습니다. 제공하지 않으면 프로필 설정에서 동작이 상속됩니다. 새 탭 제목을 입력하고 해당 제목이 유지되도록 하려면 true로 설정해야 합니다.

다음 탭 열기

현재 탭의 오른쪽에 있는 탭을 엽니다.

명령 이름: nextTab

기본 ID:

{ "command": "nextTab", "id": "Terminal.NextTab" }

기본 바인딩:

{ "keys": "ctrl+tab", "id": "Terminal.NextTab" }

매개 변수

속성 필요성 수락 설명
tabSwitcherMode 선택 사항 "mru", , "inOrder""disabled" "tabSwitcherMode"를 사용하여 다음 탭으로 이동합니다. 모드가 제공되지 않으면 전역적으로 정의된 모드를 사용합니다.

이전 탭 열기

현재 탭의 왼쪽에 있는 탭을 엽니다.

명령 이름: prevTab

기본 ID:

{ "command": "prevTab", "id": "Terminal.PrevTab" }

기본 바인딩:

{ "keys": "ctrl+shift+tab", "id": "Terminal.PrevTab" }

매개 변수

속성 필요성 수락 설명
tabSwitcherMode 선택 사항 "mru", , "inOrder""disabled" "tabSwitcherMode"를 사용하여 이전 탭으로 이동합니다. 모드가 제공되지 않으면 전역적으로 정의된 모드를 사용합니다.

탭 검색 상자를 엽니다.

명령 이름: tabSearch

기본 바인딩:

이 명령은 현재 기본 설정에 바인딩되어 있지 않습니다.

{"command": "tabSearch"}

Windows 터미널 검색

특정 탭 열기

인덱스에 따라 특정 탭을 엽니다.

명령 이름: switchToTab

기본 ID:

{ "command": { "action": "switchToTab", "index": 0 }, "id": "Terminal.SwitchToTab0" },
{ "command": { "action": "switchToTab", "index": 1 }, "id": "Terminal.SwitchToTab1" },
{ "command": { "action": "switchToTab", "index": 2 }, "id": "Terminal.SwitchToTab2" },
{ "command": { "action": "switchToTab", "index": 3 }, "id": "Terminal.SwitchToTab3" },
{ "command": { "action": "switchToTab", "index": 4 }, "id": "Terminal.SwitchToTab4" },
{ "command": { "action": "switchToTab", "index": 5 }, "id": "Terminal.SwitchToTab5" },
{ "command": { "action": "switchToTab", "index": 6 }, "id": "Terminal.SwitchToTab6" },
{ "command": { "action": "switchToTab", "index": 7 }, "id": "Terminal.SwitchToTab7" }

기본 바인딩:

{ "keys": "ctrl+alt+1", "id": "Terminal.SwitchToTab0" },
{ "keys": "ctrl+alt+2", "id": "Terminal.SwitchToTab1" },
{ "keys": "ctrl+alt+3", "id": "Terminal.SwitchToTab2" },
{ "keys": "ctrl+alt+4", "id": "Terminal.SwitchToTab3" },
{ "keys": "ctrl+alt+5", "id": "Terminal.SwitchToTab4" },
{ "keys": "ctrl+alt+6", "id": "Terminal.SwitchToTab5" },
{ "keys": "ctrl+alt+7", "id": "Terminal.SwitchToTab6" },
{ "keys": "ctrl+alt+8", "id": "Terminal.SwitchToTab7" }

매개 변수

속성 필요성 수락 설명
index 필수 정수 탭 표시줄 내 위치에 따라 열리는 탭입니다(0부터 시작).

탭 이름 바꾸기

이 명령은 탭의 이름을 특정 문자열로 바꾸는 데 사용할 수 있습니다.

명령 이름: renameTab

기본 바인딩:

이 명령은 현재 기본 설정에 바인딩되어 있지 않습니다.

// Rename a tab to "Foo"
{ "command": { "action": "renameTab", "title": "Foo" } }

// Reset the tab's name
{ "command": { "action": "renameTab", "title": null } }

매개 변수

속성 필요성 수락 설명
title 선택 사항 문자열 이 탭에 사용할 새 제목입니다. 생략하는 경우 이 명령은 탭 제목을 원래 값으로 되돌립니다.

탭 이름 바꾸기 텍스트 상자 열기

이 명령은 탭 제목을 현재 탭의 제목을 편집할 수 있는 텍스트 필드로 변경합니다. 텍스트 필드를 지우면 탭 제목이 현재 셸 인스턴스의 기본값으로 다시 설정됩니다.

명령 이름: openTabRenamer

기본 ID:

{ "command": "openTabRenamer", "id": "Terminal.OpenTabRenamer" }

탭 색 변경

이 명령은 탭의 색을 특정 값으로 변경하는 데 사용할 수 있습니다.

명령 이름: setTabColor

기본 바인딩:

이 명령은 현재 기본 설정에 바인딩되어 있지 않습니다.

// Change the tab's color to a bright magenta
{ "command": { "action": "setTabColor", "color": "#ff00ff" } }

// Reset the tab's color
{ "command": { "action": "setTabColor", "color": null } }

매개 변수

속성 필요성 수락 설명
color 선택 사항 16진수 형식의 문자열: "#rgb" 또는 "#rrggbb" 이 탭에 사용할 새 색입니다. 생략하는 경우 이 명령은 탭의 색을 원래 값으로 되돌립니다.

탭 색 선택 열기

이 명령은 활성 탭의 색 선택을 여는 데 사용할 수 있습니다. 런타임에 색 선택을 사용하여 탭의 색을 설정할 수 있습니다.

명령 이름: openTabColorPicker

기본 ID:

{ "command": "openTabColorPicker", "id": "Terminal.OpenTabColorPicker" }

탭 이동

이 명령은 왼쪽에서 오른쪽 UI에서 "왼쪽" 및 "오른쪽"에 해당하는 탭을 "뒤로" 및 "앞으로" 이동합니다.

명령 이름: moveTab

기본 ID:

// Move tab backward (left in LTR)
{ "command": { "action": "moveTab", "direction": "backward" }, "id": "Terminal.MoveTabBackward" }

// Move tab forward (right in LTR)
{ "command": { "action": "moveTab", "direction": "forward" }, "id": "Terminal.MoveTabForward" }

매개 변수

속성 필요성 수락 설명
direction 필수 "backward", "forward" 탭이 이동하는 방향입니다.
window 선택 사항 창 ID 아래 참조

window 는 선택 사항이며 명령줄에 대한 인수와 --window-id 동일한 형식을 wt.exe 따릅니다. 생략하면 현재 창 내에서 탭이 이동합니다. 제공된 경우 창의 정수 ID 또는 창 이름이 될 수 있습니다. 또한 다음과 같은 예약된 값을 허용합니다.

  • "new" 또는 -1: 항상 새 창에서 이 명령을 실행합니다.
  • "last" 또는 0: 항상 가장 최근에 사용한 창에서 이 명령을 실행합니다.

지정된 window ID를 가진 창이 없으면 해당 ID/이름을 사용하여 새 창이 만들어집니다.

브로드캐스트 입력

이 명령은 창에 대해 "브로드캐스트 모드"를 전환합니다. 브로드캐스트 모드를 사용하도록 설정하면 창으로 전송된 모든 입력이 동일한 탭의 모든 창으로 전송됩니다. 이 기능은 동일한 입력을 한 번에 여러 창으로 보내는 데 유용합니다.

모든 작업과 마찬가지로 명령 팔레트에서 "모든 창으로 브로드캐스트 입력 설정/해제"를 검색하여 "브로드캐스트 모드"를 호출할 수도 있습니다.

명령 이름: toggleBroadcastInput

기본 ID:

{ "command": "toggleBroadcastInput", "id": "Terminal.ToggleBroadcastInput" }

브로드캐스트 입력

상황에 맞는 메뉴 열기

이 명령은 활성 창에 대한 "마우스 오른쪽 단추 클릭" 상황에 맞는 메뉴를 엽니다. 이 메뉴에는 창 관리, 복사 및 붙여넣기 등, 상황에 맞는 작업이 있습니다. 이 작업을 위해 experimental.rightClickContextMenu 설정을 사용하도록 지정할 필요는 없습니다.

명령 이름: showContextMenu

기본 ID:

{ "command": "showContextMenu", "id": "Terminal.ShowContextMenu" }

정보 대화 상자 열기

이 명령은 터미널에 대한 정보 대화 상자를 엽니다. 이 대화 상자에는 버전 번호, 라이선스 등을 포함하여 터미널에 대한 정보가 포함됩니다.

명령 이름: openAbout

기본 ID:

{ "command": "openAbout", "id": "Terminal.OpenAboutDialog" }

Important

이 기능은 Windows 터미널 미리 보기에서만 사용할 수 있습니다.

웹 검색

선택한 텍스트를 검색하여 브라우저 창을 열려고 합니다. 선택한 텍스트가 없으면 아무 작업도 수행하지 않습니다. queryUrl 매개 변수를 제공하지 않으면 searchWebDefaultQueryUrl 설정이 대신 사용됩니다. queryUrl 매개 변수를 제공하면 문자열의 %s가 선택한 텍스트로 대체됩니다.

명령 이름: searchWeb

기본 ID:

{ "command": { "action": "searchWeb" }, "id": "Terminal.SearchWeb" },

매개 변수

속성 필요성 수락 설명
queryUrl 필수 문자열 검색에 사용할 URL입니다. 이 문자열의 %s는 선택한 텍스트로 대체됩니다. 생략하면 기본적으로 searchWebDefaultQueryUrl 설정이 사용됩니다.

Important

이 기능은 Windows 터미널 미리 보기에서만 사용할 수 있습니다.



창 관리 명령

새 창

새 창을 만듭니다. 인수가 없으면 windowingBehavior의 설정에 관계없이 새 창에서 기본 프로필을 엽니다. 동작을 지정하지 않으면 기본 프로필의 해당 설정이 사용됩니다.

명령 이름: newWindow

기본 ID:

{ "command": "newWindow", "id": "Terminal.OpenNewWindow" },

기본 바인딩:

{ "keys": "ctrl+shift+n", "id": "Terminal.OpenNewWindow" },

매개 변수

속성 필요성 수락 설명
commandline 선택 사항 실행 파일 이름(문자열) 탭 내에서 실행되는 실행 파일입니다.
startingDirectory 선택 사항 폴더 위치(문자열) 창이 열리는 디렉터리입니다.
tabTitle 선택 사항 문자열 창 탭의 제목입니다.
index 선택 사항 정수 드롭다운 내 위치에 따라 열리는 프로필입니다(0부터 시작).
profile 선택 사항 프로필의 이름 또는 GUID(문자열) GUID 또는 이름에 따라 열리는 프로필입니다.
suppressApplicationTitle 선택 사항 true, false false로 설정하면 애플리케이션에서 제목 변경 메시지를 보내 탭 제목을 변경할 수 있습니다. 이러한 메시지를 표시하지 않습니다 true . 제공하지 않으면 프로필 설정에서 동작이 상속됩니다.

창 이름 바꾸기

이 명령은 창의 이름을 특정 문자열로 바꾸는 데 사용할 수 있습니다.

명령 이름: renameWindow

기본 바인딩:

이 명령은 현재 기본 설정에 바인딩되어 있지 않습니다.

// Rename a window to "Foo"
{ "command": { "action": "renameWindow", "name": "Foo" } }

// Reset the window's name
{ "command": { "action": "renameWindow", "name": null } }

매개 변수

속성 필요성 수락 설명
name 선택 사항 문자열 이 창에 사용할 새 이름입니다. 생략하는 경우 이 명령은 창 이름을 원래 값으로 되돌립니다.

창 이름 바꾸기 대화 상자 열기

이 명령 변경은 현재 창의 이름을 편집할 수 있는 팝업 창을 표시합니다. 텍스트 필드를 지우면 창 이름이 다시 설정됩니다.

명령 이름: openWindowRenamer

기본 ID:

{ "command": "openWindowRenamer", "id": "Terminal.OpenWindowRenamer" }

단일 창 식별

창의 이름과 인덱스를 표시하는 오버레이를 포커스가 있는 창에 표시합니다.

명령 이름: identifyWindow

기본 ID:

{"command": "identifyWindow", "id": "Terminal.IdentifyWindow" },

여러 창 식별

각 창의 이름과 인덱스를 표시하는 오버레이를 모든 창에 표시합니다.

명령 이름: identifyWindows

기본 바인딩:

이 명령은 현재 기본 설정에 바인딩되어 있지 않습니다.

{ "command": "identifyWindows" },


창 관리 명령

창 분할

활성 창의 크기를 반으로 나누고 나머지 반을 엽니다. 인수가 없으면 새 창에서 기본 프로필을 엽니다. 동작을 지정하지 않으면 기본 프로필의 해당 설정이 사용됩니다.

명령 이름: splitPane

기본 ID:

{ "command": { "action": "splitPane", "splitMode": "duplicate", "split": "auto" }, "id": "Terminal.DuplicatePaneAuto" },
{ "command": { "action": "splitPane", "split": "up" }, "id": "Terminal.SplitPaneUp" },
{ "command": { "action": "splitPane", "split": "down" }, "id": "Terminal.SplitPaneDown" },
{ "command": { "action": "splitPane", "split": "left" }, "id": "Terminal.SplitPaneLeft" },
{ "command": { "action": "splitPane", "split": "right" }, "id": "Terminal.SplitPaneRight" },
{ "command": { "action": "splitPane", "splitMode": "duplicate", "split": "down" }, "id": "Terminal.DuplicatePaneDown" },
{ "command": { "action": "splitPane", "splitMode": "duplicate", "split": "right" }, "id": "Terminal.DuplicatePaneRight" }

기본 바인딩:

{ "keys": "alt+shift+d", "id": "Terminal.DuplicatePaneAuto" },
{ "keys": "alt+shift+-", "id": "Terminal.DuplicatePaneDown" },
{ "keys": "alt+shift+plus", "id": "Terminal.DuplicatePaneRight" }

매개 변수

속성 필요성 수락 설명
split 필수 "vertical", "horizontal", "auto", "up", "right", "down""left" 창이 분할되는 방식입니다. "auto"는 노출 영역이 가장 많은 방향으로 분할합니다.
commandline 선택 사항 실행 파일 이름(문자열) 창 내에서 실행되는 실행 파일입니다.
startingDirectory 선택 사항 폴더 위치(문자열) 창이 열리는 디렉터리입니다.
elevate 선택 사항 true, , falsenull 프로필의 elevate 속성을 재정의합니다. 생략하면 이 작업은 프로필의 elevate 설정에 따라 작동합니다. true 또는 false로 설정하면 이 작업은 프로필이 각각 "elevate": true 또는 "elevate": false로 설정된 것처럼 작동합니다.
tabTitle 선택 사항 문자열 포커스가 새 창에 있을 때의 탭 제목입니다.
index 선택 사항 정수 드롭다운 내 위치에 따라 열리는 프로필입니다(0부터 시작).
profile 선택 사항 프로필의 이름 또는 GUID(문자열) GUID 또는 이름에 따라 열리는 프로필입니다.
colorScheme 선택 사항 색 구성표의 이름(문자열) colorScheme 프로필 세트 대신 사용할 구성표입니다.
suppressApplicationTitle 선택 사항 true, false false로 설정하면 애플리케이션에서 제목 변경 메시지를 보내 탭 제목을 변경할 수 있습니다. true로 설정하면 이러한 메시지가 표시되지 않습니다. 제공하지 않으면 프로필 설정에서 동작이 상속됩니다.
splitMode 선택 사항 "duplicate" 창을 분할하는 방식을 제어합니다. 포커스가 있는 창의 프로필을 새 창으로 복제하는 "duplicate"만 허용합니다.
size 선택 사항 Float 새 창의 크기를 현재 창 크기의 분수로 지정합니다. 1.0는 "현재 창 전체"이고, 0.0는 "부모 창 없음"입니다. 기본값은 0.5입니다.

창 닫기

활성 창을 닫습니다. 분할 창이 없으면 현재 탭을 닫습니다. 탭이 하나만 열려 있으면 창을 닫습니다.

명령 이름: closePane

기본 ID:

{ "command": "closePane", "id": "Terminal.ClosePane" }

기본 바인딩:

{ "keys": "ctrl+shift+w", "id": "Terminal.ClosePane" }

창 포커스 이동

방향에 따라 포커스를 다른 창으로 변경합니다. direction"previous"로 설정하면 포커스가 가장 최근에 사용한 창으로 이동합니다.

명령 이름: moveFocus

기본 ID:

{ "command": { "action": "moveFocus", "direction": "down" }, "id": "Terminal.MoveFocusDown" },
{ "command": { "action": "moveFocus", "direction": "left" }, "id": "Terminal.MoveFocusLeft" },
{ "command": { "action": "moveFocus", "direction": "right" }, "id": "Terminal.MoveFocusRight" },
{ "command": { "action": "moveFocus", "direction": "up" }, "id": "Terminal.MoveFocusUp" },
{ "command": { "action": "moveFocus", "direction": "previous" }, "id": "Terminal.MoveFocusPrevious" }

기본 바인딩:

{ "keys": "alt+down", "id": "Terminal.MoveFocusDown" },
{ "keys": "alt+left", "id": "Terminal.MoveFocusLeft" },
{ "keys": "alt+right", "id": "Terminal.MoveFocusRight" },
{ "keys": "alt+up", "id": "Terminal.MoveFocusUp" },
{ "keys": "ctrl+alt+left", "id": "Terminal.MoveFocusPrevious" }

매개 변수

속성 필요성 수락 설명
direction 필수 "left", "right", "up", "down", "previous", "previousInOrder", "nextInOrder""first", "parent""child" 포커스가 이동하는 방향입니다.

허용되는 direction

  • up, down, left 또는 right는 지정된 방향으로 포커스를 이동합니다.
  • first는 트리의 첫 번째 리프 창으로 포커스를 이동합니다.
  • previous는 포커스를 현재 창 앞에 있는 가장 최근에 사용한 창으로 이동합니다.
  • nextInOrder, previousInOrder는 포커스를 생성 순서대로 다음 또는 이전 창으로 이동합니다.
  • parent는 포커스를 이동하여 현재 창의 부모 창을 선택합니다. 이렇게 하면 사용자가 한 번에 여러 창을 선택할 수 있습니다.
  • child는 포커스를 이 창의 첫 번째 자식 창으로 이동합니다.

창 이동

현재 활성 창을 창의 다른 탭으로 이동합니다.

명령 이름: movePane

기본 ID:

{ "command": { "action": "movePane", "index": 0 }, "id": "Terminal.MovePaneToTab0" },
{ "command": { "action": "movePane", "index": 1 }, "id": "Terminal.MovePaneToTab1" },
{ "command": { "action": "movePane", "index": 2 }, "id": "Terminal.MovePaneToTab2" },
{ "command": { "action": "movePane", "index": 3 }, "id": "Terminal.MovePaneToTab3" },
{ "command": { "action": "movePane", "index": 4 }, "id": "Terminal.MovePaneToTab4" },
{ "command": { "action": "movePane", "index": 5 }, "id": "Terminal.MovePaneToTab5" },
{ "command": { "action": "movePane", "index": 6 }, "id": "Terminal.MovePaneToTab6" },
{ "command": { "action": "movePane", "index": 7 }, "id": "Terminal.MovePaneToTab7" },
{ "command": { "action": "movePane", "index": 8 }, "id": "Terminal.MovePaneToTab8" }

매개 변수

속성 필요성 수락 설명
index 필수 번호 이동할 탭의 0부터 인덱싱된 인덱스

창 바꾸기

탭의 두 창 위치를 바꿉니다. 이 명령은 direction 매개 변수로 지정된 활성 창 및 대상 창에 작동합니다.

명령 이름: swapPane

기본 ID:

{ "command": { "action": "swapPane", "direction": "down" }, "id": "Terminal.SwapPaneDown" },
{ "command": { "action": "swapPane", "direction": "left" }, "id": "Terminal.SwapPaneLeft" },
{ "command": { "action": "swapPane", "direction": "right" }, "id": "Terminal.SwapPaneRight" },
{ "command": { "action": "swapPane", "direction": "up" }, "id": "Terminal.SwapPaneUp" },
{ "command": { "action": "swapPane", "direction": "previous"}, "id": "Terminal.SwapPanePrevious" },
{ "command": { "action": "swapPane", "direction": "previousInOrder"}, "id": "Terminal.SwapPanePreviousInOrder" },
{ "command": { "action": "swapPane", "direction": "nextInOrder"}, "id": "Terminal.SwapPaneNextInOrder" },
{ "command": { "action": "swapPane", "direction": "first" }, "id": "Terminal.SwapPaneFirst" }

매개 변수

속성 필요성 수락 설명
direction 필수 "left", "right", "up", "down", "previous", "previousInOrder", "nextInOrder""first", "parent""child" 포커스가 이동하는 방향입니다.

허용되는 direction 값(moveFocus 명령과 동일한 값)

  • up, down, left 또는 right: 활성 분할 창을 지정된 방향의 분할 창으로 바꿉니다.
  • first: 활성 분할 창을 트리의 첫 번째 리프 창으로 바꿉니다.
  • previous: 활성 분할 창을 현재 분할 창 앞에 있는 가장 최근에 사용한 분할 창으로 바꿉니다.
  • nextInOrder, previousInOrder: 활성 분할 창을 생성 순서대로 다음 또는 이전 분할 창으로 바꿉니다.
  • parent: 아무 작업도 하지 않습니다.
  • child: 아무 작업도 하지 않습니다.

창 확대/축소

창의 전체 내용을 채울 수 있도록 포커스가 있는 창을 확장합니다.

명령 이름: togglePaneZoom

기본 ID:

{ "command": "togglePaneZoom", "id": "Terminal.TogglePaneZoom" }

Windows 터미널 창 확대/축소 전환

창 크기 조정

활성 창의 크기를 변경합니다.

명령 이름: resizePane

기본 ID:

{ "command": { "action": "resizePane", "direction": "down" }, "id": "Terminal.ResizePaneDown" },
{ "command": { "action": "resizePane", "direction": "left" }, "id": "Terminal.ResizePaneLeft" },
{ "command": { "action": "resizePane", "direction": "right" }, "id": "Terminal.ResizePaneRight" },
{ "command": { "action": "resizePane", "direction": "up" }, "id": "Terminal.ResizePaneUp" }

기본 바인딩:

{ "keys": "alt+shift+down", "id": "Terminal.ResizePaneDown" },
{ "keys": "alt+shift+left", "id": "Terminal.ResizePaneLeft" },
{ "keys": "alt+shift+right", "id": "Terminal.ResizePaneRight" },
{ "keys": "alt+shift+up", "id": "Terminal.ResizePaneUp" }

매개 변수

속성 필요성 수락 설명
direction 필수 "left", "right", "up""down" 창의 크기가 조정되는 방향입니다.

창을 읽기 전용으로 표시

창을 읽기 전용으로 표시할 수 있습니다. 그러면 입력이 텍스트 버퍼로 이동하지 않도록 방지할 수 있습니다. 읽기 전용 창을 닫거나 텍스트를 이 창에 입력하려고 하면 터미널에 팝업 경고가 대신 표시됩니다.

명령 이름: toggleReadOnlyMode

기본 ID:

{ "command": "toggleReadOnlyMode", "id": "Terminal.ToggleReadOnlyMode" }

창에서 읽기 전용 모드를 사용하도록 설정할 수 있습니다. 이 명령은 토글과 비슷하게 작동하지만 다시 트리거되는 경우 상태를 전환하지 않습니다.

명령 이름: enableReadOnlyMode

기본 ID:

{ "command": "enableReadOnlyMode", "id": "Terminal.EnableReadOnlyMode" }

창에서 읽기 전용 모드를 사용하지 않도록 설정할 수 있습니다. 이 명령은 토글과 비슷하게 작동하지만 다시 트리거되는 경우 상태를 전환하지 않습니다.

명령 이름: disableReadOnlyMode

기본 ID:

{ "command": "disableReadOnlyMode", "id": "Terminal.DisableReadOnlyMode" }

창 다시 시작

이 명령은 활성 창에서 commandline을 수동으로 다시 시작합니다. 이 명령는 창을 닫지 않고 연결을 다시 시작하려고 하는 ssh와 같은 시나리오에 특히 유용합니다.

현재 실행 중인 경우 창에서 프로세스가 종료됩니다.

명령 이름: restartConnection

기본 ID:

{ "command": "restartConnection", "id": "Terminal.RestartConnection" }


클립보드 통합 명령

복사

선택한 터미널 콘텐츠를 클립보드에 복사합니다. 선택 항목이 없으면 키 코드(key chord)를 터미널에 직접 보냅니다.

명령 이름: copy

기본 ID:

{ "command": { "action": "copy", "singleLine": false }, "id": "Terminal.CopyToClipboard" }

기본 바인딩:

{ "keys": "ctrl+c", "id": "Terminal.CopyToClipboard" },
{ "keys": "ctrl+shift+c", "id": "Terminal.CopyToClipboard" },
{ "keys": "ctrl+insert", "id": "Terminal.CopyToClipboard" },
{ "keys": "enter", "id": "Terminal.CopyToClipboard" }

매개 변수

속성 필요성 수락 설명
singleLine 선택 사항 true, false true로 설정하면 복사된 콘텐츠가 한 줄로 복사됩니다. false로 설정하면 선택한 텍스트에서 줄바꿈이 유지됩니다.
copyFormatting 선택 사항 true, false, "all", "none", "html""rtf" true인 경우 선택한 텍스트의 색 및 글꼴 서식도 클립보드에 복사됩니다. false인 경우 일반 텍스트만 클립보드에 복사됩니다. 복사할 서식을 지정할 수도 있습니다. null인 경우 전역 "copyFormatting" 동작이 상속됩니다.

붙여넣기

복사한 콘텐츠를 클립보드에 삽입합니다.

명령 이름: paste

기본 ID:

{ "command": "paste", "id": "Terminal.PasteFromClipboard" }

기본 바인딩:

{ "keys": "ctrl+v", "id": "Terminal.PasteFromClipboard" },
{ "keys": "ctrl+shift+v", "id": "Terminal.PasteFromClipboard" },
{ "keys": "shift+insert", "id": "Terminal.PasteFromClipboard" }

단어까지 선택 영역 확장

선택 영역이 있는 경우 부분적으로 선택된 단어를 완전히 포함하도록 선택 영역이 확장됩니다.

명령 이름: expandSelectionToWord

기본 ID:

{ "command": "expandSelectionToWord", "id": "Terminal.ExpandSelectionToWord" }

모두 선택

텍스트 버퍼의 모든 내용이 선택됩니다.

명령 이름: selectAll

기본 ID:

{ "command": "selectAll", "id": "Terminal.SelectAll" }

기본 바인딩:

{ "keys": "ctrl+shift+a", "id": "Terminal.SelectAll" }

표시 모드

표시 모드를 전환합니다. 표시 모드는 키보드를 사용하여 터미널의 커서 위치에서 선택 영역을 만들 수 있는 모드입니다.

명령 이름: markMode

기본 ID:

{ "command": "markMode", "id": "Terminal.ToggleMarkMode" }

기본 바인딩:

{ "keys": "ctrl+shift+m", "id": "Terminal.ToggleMarkMode" }

선택 표식 전환

키보드를 사용하여 선택 영역을 수정할 때 선택 영역의 한쪽 끝을 이동합니다. 이 작업을 사용하여 다른 선택 표식으로 전환할 수 있습니다.

명령 이름: switchSelectionEndpoint

기본 ID:

{ "command": "switchSelectionEndpoint", "id": "Terminal.SwitchSelectionEndpoint" },

블록 선택 전환

기존 선택 영역을 블록 선택 영역으로 지정합니다. 즉, 선택한 영역이 각 줄의 시작과 끝으로 래핑되는 것이 아니라 사각형입니다.

명령 이름: toggleBlockSelection

기본 ID:

{ "command": "toggleBlockSelection", "id": "Terminal.ToggleBlockSelection" },


스크롤백 명령

위로 스크롤

"rowsToScroll"에 정의된 행 수만큼 화면을 위로 스크롤합니다. "rowsToScroll"을 제공하지 않는 경우 시스템 기본값에 정의된 양만큼 위로 스크롤합니다. 이는 마우스 스크롤과 동일한 양입니다.

명령 이름: scrollUp

기본 ID:

{ "command": "scrollUp", "id": "Terminal.ScrollUp" }

기본 바인딩:

{ "keys": "ctrl+shift+up", "id": "Terminal.ScrollUp" }

매개 변수

속성 필요성 수락 설명
rowsToScroll 선택 사항 정수 스크롤할 행 수입니다.

아래로 스크롤

"rowsToScroll"에 정의된 행 수만큼 화면을 아래로 스크롤합니다. "rowsToScroll"을 제공하지 않는 경우 시스템 기본값에 정의된 양만큼 아래로 스크롤합니다. 이는 마우스 스크롤과 동일한 양입니다.

명령 이름: scrollDown

기본 ID:

{ "command": "scrollDown", "id": "Terminal.ScrollDown" }

기본 바인딩:

{ "keys": "ctrl+shift+down", "id": "Terminal.ScrollDown" }

매개 변수

속성 필요성 수락 설명
rowsToScroll 선택 사항 정수 스크롤할 행 수입니다.

전체 페이지를 위로 스크롤

화면을 페이지(창 높이) 단위로 위로 스크롤합니다.

명령 이름: scrollUpPage

기본 ID:

{ "command": "scrollUpPage", "id": "Terminal.ScrollUpPage" }

기본 바인딩:

{ "keys": "ctrl+shift+pgup", "id": "Terminal.ScrollUpPage" }

전체 페이지를 아래로 스크롤

화면을 페이지(창 높이) 단위로 아래로 스크롤합니다.

명령 이름: scrollDownPage

기본 ID:

{ "command": "scrollDownPage", "id": "Terminal.ScrollDownPage" }

기본 바인딩:

{ "keys": "ctrl+shift+pgdn", "id": "Terminal.ScrollDownPage" }

가장 이른 기록으로 스크롤

화면을 입력 버퍼의 맨 위로 스크롤합니다.

명령 이름: scrollToTop

기본 ID:

{ "command": "scrollToTop", "id": "Terminal.ScrollToTop" }

기본 바인딩:

{ "keys": "ctrl+shift+home", "id": "Terminal.ScrollToTop" }

최신 기록으로 스크롤

화면을 입력 버퍼의 맨 아래로 스크롤합니다.

명령 이름: scrollToBottom

기본 ID:

{ "command": "scrollToBottom", "id": "Terminal.ScrollToBottom" }

기본 바인딩:

{ "keys": "ctrl+shift+end", "id": "Terminal.ScrollToBottom" }

버퍼 지우기

이 작업은 터미널 버퍼를 수동으로 지우는 데 사용할 수 있습니다. 이는 명령줄 셸 프롬프트에 있지 않고 Clear-Host/cls/clear를 쉽게 실행할 수 없는 시나리오에 유용합니다.

명령 이름: clearBuffer

기본 ID:

{ "command": { "action": "clearBuffer", "clear": "all" }, "id": "Terminal.ClearBuffer" }

매개 변수

속성 필요성 수락 설명
clear 선택 사항 "screen", , "scrollback""all" 화면에서 지울 부분입니다.
  • "screen": 터미널 뷰포트 콘텐츠를 지웁니다. 스크롤백은 그대로 둡니다. 커서 행을 뷰포트의 맨 위로 이동합니다(수정되지 않음).
  • "scrollback": 스크롤백을 지웁니다. 뷰포트는 그대로 둡니다.
  • "all"(기본값): 스크롤백 및 표시되는 뷰포트를 지웁니다. 커서 행을 뷰포트의 맨 위로 이동합니다.

___

시각적 조정 명령

글꼴 크기 조정

지정된 포인트만큼 텍스트 크기를 변경합니다.

명령 이름: adjustFontSize

기본 ID:

{ "command": { "action": "adjustFontSize", "delta": 1 }, "id": "Terminal.IncreaseFontSize" },
{ "command": { "action": "adjustFontSize", "delta": -1 }, "id": "Terminal.DecreaseFontSize" }

기본 바인딩:

{ "keys": "ctrl+plus", "id": "Terminal.IncreaseFontSize" },
{ "keys": "ctrl+minus", "id": "Terminal.DecreaseFontSize" },
{ "keys": "ctrl+numpad_plus", "id": "Terminal.IncreaseFontSize" },
{ "keys": "ctrl+numpad_minus", "id": "Terminal.DecreaseFontSize" }

매개 변수

속성 필요성 수락 설명
delta 필수 정수 명령을 호출할 때마다 변경되는 크기의 양입니다.

글꼴 크기 초기화

텍스트 크기를 기본값으로 초기화합니다.

명령 이름: resetFontSize

기본 ID:

{ "command": "resetFontSize", "id": "Terminal.ResetFontSize" }

기본 바인딩:

{ "keys": "ctrl+0", "id": "Terminal.ResetFontSize" },
{ "keys": "ctrl+numpad_0", "id": "Terminal.ResetFontSize" }

불투명도 조정

창의 불투명도를 변경합니다. relative가 true로 설정되면 현재 불투명도를 기준으로 불투명도를 조정합니다. 그렇지 않으면 불투명도를 지정된 opacity로 직접 설정합니다.

명령 이름: adjustOpacity

기본 바인딩:

{ "command": { "action": "adjustOpacity", "relative": false, "opacity": 0 } },
{ "command": { "action": "adjustOpacity", "relative": false, "opacity": 25 } },
{ "command": { "action": "adjustOpacity", "relative": false, "opacity": 50 } },
{ "command": { "action": "adjustOpacity", "relative": false, "opacity": 75 } },
{ "command": { "action": "adjustOpacity", "relative": false, "opacity": 100 } }

매개 변수

속성 필요성 수락 설명
opacity 선택 사항 정수 relative 값에 따라 터미널이 불투명해지는 정도 또는 불투명도를 변경해야 하는 정도입니다.
relative 선택 사항 Boolean true이면 지정된 opacity 매개 변수로 현재 불투명도를 조정합니다. false이면 불투명도를 정확히 해당 값으로 설정합니다.

픽셀 셰이더 효과 설정/해제

터미널에서 사용하도록 설정된 모든 픽셀 셰이더 효과를 설정/해제합니다. 사용자가 experimental.pixelShaderPath를 사용하여 유효한 셰이더를 지정한 경우 이 작업은 해당 셰이더를 설정/해제합니다. experimental.retroTerminalEffect 프로필 설정에서 사용하도록 설정된 "레트로 터미널 효과"도 설정/해제합니다.

명령 이름: toggleShaderEffects

기본 ID:

{ "command": "toggleShaderEffects", "id": "Terminal.ToggleShaderEffects" }

주의

toggleRetroEffect 작업은 버전 1.6 이상에서 더 이상 사용할 수 없습니다. 대신 toggleShaderEffects를 사용하는 것이 좋습니다.

색 구성표 설정

활성 색 구성표를 변경합니다.

명령 이름: setColorScheme

매개 변수

속성 필요성 수락 설명
colorScheme 필수 문자열 적용할 색 구성표의 name입니다.

선언 예제:

{ "command": { "action": "setColorScheme", "colorScheme": "Campbell" }, "id": "User.SetSchemeToCampbell" }

스크롤 표시 추가

텍스트 버퍼에 스크롤 표시를 추가합니다. 선택 영역이 있는 경우 선택 영역에 표시가 배치되고, 그렇지 않으면 커서 행에 배치됩니다.

명령 이름: addMark

매개 변수

속성 필요성 수락 설명
color 선택 사항 16진수 형식의 문자열: "#rgb" 또는 "#rrggbb" 표시의 색입니다.

선언 예제:

{ "command": { "action": "addMark", "color": "#ff00ff" }, "id": "User.AddMark" }

Important

이 작업은 v1.21에서 안정되었습니다. 해당 버전 이전에는 Windows 터미널 미리 보기에서만 사용할 수 있었습니다.

스크롤하여 표시

지정된 방향으로 스크롤 표시로 스크롤합니다. 자세한 내용은 스크롤 표시셸 통합을 참조하세요.

명령 이름: scrollToMark

매개 변수

속성 필요성 수락 설명
direction 필수 "first", "previous", "next""last" 스크롤할 방향입니다.

선언 예제:

{ "command": { "action": "scrollToMark", "direction": "previous" }, "id": "User.ScrollToMark" }

Important

이 작업은 v1.21에서 안정되었습니다. 해당 버전 이전에는 Windows 터미널 미리 보기에서만 사용할 수 있었습니다.

표시 지우기

선택 영역이 있거나 커서 위치에 있는 경우 현재 위치에서 스크롤 표시를 지웁니다. 이 기능은 실험적 기능이며 앞으로도 계속 사용할 수 있다는 보장이 없습니다.

명령 이름: clearMark

선언 예제:

{ "command": { "action": "clearMark" }, "id": "User.ClearMark" }

Important

이 작업은 v1.21에서 안정되었습니다. 해당 버전 이전에는 Windows 터미널 미리 보기에서만 사용할 수 있었습니다.

모든 표시 지우기

텍스트 버퍼의 모든 스크롤 표시를 지웁니다. 이 기능은 실험적 기능이며 앞으로도 계속 사용할 수 있다는 보장이 없습니다.

명령 이름: clearAllMarks

선언 예제:

{ "command": { "action": "clearAllMarks" }, "id": "User.ClearAllMarks" }

Important

이 작업은 v1.21에서 안정되었습니다. 해당 버전 이전에는 Windows 터미널 미리 보기에서만 사용할 수 있었습니다.


___

제안

제안 메뉴 열기

사용자가 제안 메뉴를 열 수 있습니다. 제안 메뉴의 항목은 source 속성으로 제어됩니다. 제안 메뉴는 명령 팔레트와 매우 유사하게 동작합니다. 텍스트 상자에 입력하면 결과가 필터링되어 텍스트와 일치하는 항목만 표시됩니다. enter 키를 누르면 선택한 항목이 실행됩니다. esc 키를 누르면 메뉴가 닫힙니다.

제안 UI

명령 이름: showSuggestions

매개 변수

속성 필요성 수락 설명
source 필수 개수 제한 없이 "recentCommands", "tasks" 또는 "all" 이 메뉴를 채우는 데 사용할 제안 원본입니다. 각각에 대한 설명은 아래를 참조하세요.
useCommandline 선택 사항 Boolean 셸 통합을 사용하도록 설정했으며 true인 경우 제안 메뉴는 현재 명령줄의 내용으로 미리 채워집니다. 기본값은 true입니다.

제안 원본

지원되는 제안 원본은 다음과 같습니다.

  • "recentCommands": 가장 최근에 사용한 명령으로 제안 메뉴를 채웁니다. 셸 통합을 통해 구동되므로 셸 통합을 지원하도록 셸을 구성한 경우에만 사용할 수 있습니다. 자세한 내용은 셸 통합을 참조하세요.
  • "tasks": 제안 메뉴를 설정의 모든 sendInput 작업으로 채웁니다.
  • "all": 모든 제안 원본을 사용합니다.

이러한 값은 문자열 매개 변수 값으로 단독으로 사용하거나 배열로 결합할 수 있습니다. 예시:

{ "command": { "action": "showSuggestions", "source": ["recentCommands", "tasks"] } },
{ "command": { "action": "showSuggestions", "source": "all" } },
{ "command": { "action": "showSuggestions", "source": "recentCommands" } },

위의 예제에서 처음 두 명령은 최근 명령과 작업을 모두 사용하여 제안 메뉴를 엽니다. 세 번째 명령은 최근 명령만 사용하여 제안 메뉴를 엽니다.

Important

이 기능은 Windows 터미널 미리 보기에서만 사용할 수 있습니다.


___

버퍼 내보내기

버퍼 내보내기

이를 통해 사용자가 버퍼의 텍스트를 파일로 내보낼 수 있습니다. 파일이 없으면 자동으로 만들어집니다. 파일이 이미 있는 경우 해당 콘텐츠가 터미널 버퍼 텍스트로 바뀝니다.

명령 이름: exportBuffer

기본 ID:

{ "command": { "action": "exportBuffer" }, "id": "Terminal.ExportBuffer" }

매개 변수

속성 필요성 수락 설명
path 선택 사항 문자열 제공되면 터미널에서 버퍼 콘텐츠를 지정된 파일로 내보냅니다. 그렇지 않으면 터미널에서 내보낼 파일을 선택하기 위해 파일 선택기를 엽니다.

___

전역 명령

전역 소환

이는 터미널 창의 컨텍스트에서만 작동하는 것이 아니라 OS에서 전역적으로 작동하는 특수 작업입니다. 이 작업을 누르면 터미널 창이 소환됩니다. 소환되는 창, 창이 소환되는 위치 및 소환할 때 창이 작동 하는 방식은 이 작업에 대한 속성으로 제어됩니다.

참고

  • 터미널에서 globalSummon 작업에 바인딩된 모든 키는 터미널이 실행되는 동안 다른 애플리케이션에서 작동하지 않으며, 포커스가 항상 터미널 창에 있습니다.

  • 실행되는 다른 애플리케이션이 이미 RegisterHotKey API를 사용하여 지정된 keys에 등록된 경우 터미널에서 해당 키 입력을 수신 대기할 수 없습니다.

  • 터미널의 관리자 권한 인스턴스와 비관리자 권한 인스턴스 모두는 동일한 키에 대해 등록할 수 없습니다. 터미널의 미리 보기 및 안정 버전 모두에 동일하게 적용됩니다. 첫 번째로 시작하는 버전이 항상 우선합니다.

  • 이러한 키 입력은 터미널 인스턴스가 이미 실행 중인 경우에만 작동합니다. 로그인 시 터미널을 자동으로 시작하려면 startOnUserLogin을 참조하세요.

명령 이름: globalSummon

기본 바인딩:

이 명령은 현재 기본 설정에 바인딩되어 있지 않습니다.

{ "command": { "action": "globalSummon" } }

매개 변수

속성 필요성 수락 설명
desktop 선택 사항 any, , toCurrentonCurrent 터미널이 가상 데스크톱과 상호 작용하는 방식을 제어합니다.
  • "any": 창을 이미 있는 데스크톱에 그대로 둡니다. 창이 활성화됨에 따라 해당 데스크톱으로 전환됩니다.
  • "toCurrent"(기본값): 창을 현재 가상 데스크톱으로 이동합니다.
  • "onCurrent": 창이 현재 가상 데스크톱에 이미 있는 경우에만 해당 창을 소환합니다.
monitor 선택 사항 any, , toCurrenttoMouse 창이 소환되는 모니터를 제어합니다.
  • "any": 현재 있는 모니터에 관계없이 가장 최근에 사용한 창을 소환합니다.
  • "toCurrent": 가장 최근에 사용한 창을 현재 전경 창이 있는 모니터에 소환합니다.
  • "toMouse"(기본값): 가장 최근에 사용한 창을 마우스 커서가 있는 모니터에 소환합니다.
name 선택 사항 문자열 생략하는 경우(기본값) monitordesktop을 사용하여 소환하는 데 적절한 가장 최근에 사용한 창을 찾습니다. 제공하는 경우 이름 또는 ID가 지정된 name 값과 일치하는 창을 소환합니다. 이러한 창이 없으면 해당 이름을 사용하여 새 창을 만듭니다.
dropdownDuration 선택 사항 정수 기본값은 0입니다. 양수와 함께 제공하는 경우 dropdownDuration 밀리초 동안 지속되는 애니메이션을 사용하여 화면 위쪽에서 창을 "슬라이드"합니다. 200이 이 설정에 적합한 값입니다.
toggleVisibility 선택 사항 true, false 기본값은 true입니다. true인 경우 이 작업에 할당된 키를 누르면 현재 전경 창인 창이 닫힙니다(최소화). false인 경우 할당된 키를 누르면 창이 전경으로만 표시됩니다.

제공되거나 desktopname 제공된 monitor 경우 name 다음과 같은 방식으로 동작합니다.

  • desktop
    • "any": 지정된 창이 이미 있는 데스크톱으로 이동합니다.
    • "toCurrent": 창이 다른 가상 데스크톱에 있는 경우 현재 활성 창으로 이동합니다.
    • "onCurrent": 창이 다른 가상 데스크톱에 있는 경우 현재 활성 창으로 이동합니다.
  • monitor
    • "any": 창을 이미 있는 모니터에 그대로 둡니다.
    • "toCurrent": 창이 다른 모니터에 있는 경우 현재 전경 창이 있는 모니터로 이동합니다.
    • "toMouse": 창이 다른 모니터에 있는 경우 마우스 커서가 있는 모니터로 이동합니다.

desktopmonitor 속성은 다음과 같은 방법으로 조합할 수 있습니다.

조합 "desktop": "any" "desktop": "toCurrent" "desktop": "onCurrent" 포함되지 않음
"monitor": "any" 창이 있는 데스크톱으로 이동(위치는 그대로 둠) 창을 이 데스크톱으로 이동(위치는 그대로 둠) 창이 이 데스크톱에 없는 경우:
  • 기본 위치에 새 창 만들기
다른 경우:
  • 이 데스크톱에 있는 창 활성화(이동하지 않음)
MRU 창 소환
"monitor": "toCurrent" 창이 있는 데스크톱으로 이동, 전경 창이 있는 모니터로 이동 창을 이 데스크톱으로 이동, 전경 창이 있는 모니터로 이동 창이 이 데스크톱에 없는 경우:
  • 새 창 만들기
다른 경우:
  • 이 데스크톱에 있는 창 활성화, 전경 창이 있는 모니터로 이동
MRU 창을 전경 창이 있는 모니터에 소환
"monitor": "toMouse" 창이 있는 데스크톱으로 이동, 마우스가 있는 모니터로 이동 창을 이 데스크톱으로 이동, 마우스가 있는 모니터로 이동 창이 이 데스크톱에 없는 경우:
  • 새 창 만들기
다른 경우:
  • 이 데스크톱에 있는 창 활성화, 마우스가 있는 모니터로 이동
MRU 창을 마우스가 있는 모니터에 소환
포함되지 않음 그대로 유지 현재 데스크톱으로 이동 현재 데스크톱에서만 해당 없음

예제


// Summon the most recently used (MRU) window, to the current virtual desktop,
// to the monitor the mouse cursor is on, without an animation. If the window is
// already in the foreground, then minimize it.
{ "command": { "action": "globalSummon" }, "id": "User.MyGlobalSummon" },

// Summon the MRU window, by going to the virtual desktop the window is
// currently on. Move the window to the monitor the mouse is on.
{ "command": { "action": "globalSummon", "desktop": "any" }, "id": "User.MyGlobalSummonAnyDesktop" },

// Summon the MRU window to the current desktop, leaving the position of the window untouched.
{ "command": { "action": "globalSummon", "monitor": "any" }, "id": "User.MyGlobalSummonAnyMonitor" },

// Summon the MRU window, by going to the virtual desktop the window is
// currently on, leaving the position of the window untouched.
{ "command": { "action": "globalSummon", "desktop": "any", "monitor": "any" }, "id": "User.MyGlobalSummonAnywhere" },

// Summon the MRU window with a dropdown duration of 200ms.
{ "command": { "action": "globalSummon", "dropdownDuration": 200 }, "id": "User.MyGlobalSummonDrop" },

// Summon the MRU window. If the window is already in the foreground, do nothing.
{ "command": { "action": "globalSummon", "toggleVisibility": false }, "id": "User.MyGlobalSummonIfNotVisible" },

// Summon the window named "_quake". If no window with that name exists, then create a new window.
{ "command": { "action": "globalSummon", "name": "_quake" }, "id": "User.MyGlobalSummonQuake" }

quake 모드 창 열기

이 작업은 globalSummon 작업의 특별한 변형입니다. 특히 quake 창을 소환합니다. 이는 다음 globalSummon 작업에 대한 축약형입니다.

{
"id": "User.MySummonQuake",
"command": {
"action": "globalSummon",
"name": "_quake",
"dropdownDuration": 200,
"toggleVisibility": true,
"monitor": "toMouse",
"desktop": "toCurrent"
}
}

quakeMode 작업의 동작을 변경하려면 원하는 설정을 사용하여 새 globalSummon 항목을 actions에 만드는 것이 좋습니다.

명령 이름: quakeMode

기본 ID:

{ "command": "quakeMode", "id": "Terminal.QuakeMode" }

Windows Terminal quake 모드



여러 작업 실행

이 작업을 통해 사용자는 여러 순차적 작업을 하나의 명령에 바인딩할 수 있습니다. 이러한 작업은 ID를 지원하지 않습니다.

명령 이름: multipleActions

매개 변수

속성 필요성 수락 설명
actions 필수 작업 배열 실행할 action의 목록입니다.

예시

{ "name": "Create My Layout", "command": {
    "action": "multipleActions",
    "actions": [
        // Create a new tab with 3 panes
        { "action": "newTab", "tabTitle": "Work", "colorScheme": "One Half Dark" },
        { "action": "splitPane", "split": "vertical", "profile": "Windows PowerShell", "tabTitle": "Work", "colorScheme": "Campbell Powershell", },
        { "action": "splitPane", "split": "horizontal", "profile": "Windows PowerShell", "tabTitle": "Work", "colorScheme": "Campbell Powershell", },

        // Create a second tab
        { "action": "newTab", "tabTitle": "Misc"},

        // Go back to the first tab and zoom the first pane
        { "action": "prevTab", "tabSwitcherMode": "disabled" },
        { "action": "moveFocus", "direction": "first"},
        "togglePaneZoom"
        ]
}}


키 바인딩 해제(키 바인딩 사용 안 함)

명령에서 키 바인딩을 사용하지 않도록 설정하거나 연결된 키를 "바인딩 해제"할 수 있습니다. 이 작업은 기본 터미널 애플리케이션(예: VIM)을 사용하는 경우 필요할 수 있습니다. 바인딩되지 않은 키는 기본 터미널에 전달됩니다.

명령 이름: unbound

바인딩 해제 사용 예제:

예를 들어 Alt+Shift+-" 및 Alt+Shift+=" 바로 가기 키를 바인딩 해제하려면 settings.json 파일섹션에 actions 이러한 명령을 포함합니다.

{
    "keybindings": [
        { "id": "unbound", "keys": "alt+shift+-" },
        { "id": "unbound", "keys": "alt+shift+=" }
    ]
}

null 사용 예제:

"id"null로 설정하여 기본적으로 작업에 바인딩된 키 입력을 바인딩 해제할 수도 있습니다. 이렇게 하면 기본 작업을 수행하는 대신 키 입력을 명령줄 애플리케이션 설정과 연결할 수도 있습니다.

{
   "id" : null, "keys" : ["ctrl+v"]
}

사용 사례 시나리오:

Windows 터미널 바로 가기 키 바인딩 을 사용합니다.Ctrl+V를 붙여넣기 명령으로 사용합니다. WSL 명령줄을 사용하는 경우 Vim과 같은 Linux 애플리케이션을 사용하여 파일을 편집할 수 있습니다. 그러나 Vim은 Ctrl+V 키 바인딩을 사용하여 차단 시각적 모드를 사용합니다. 키 바인딩이 Windows 터미널 바인딩이 아닌 Vim 명령줄 앱과 연결되도록 settings.json 파일에서 unbound 설정을 조정하는 경우를 제외하고는 이 키 바인딩이 차단되며 Windows 터미널 붙여넣기 명령이 우선 적용됩니다.