VSCode에서 "ctrl + s"를 누르면 터미널이 더 이상 응답하지 않지만 "ctrl + q"신호를 보낼 수 없으며 취소 할 수 없습니다.

3236 단어 TerminalVSCode

경위



VSCode 터미널에서 Linux 시스템으로 SSH하는 경우 터미널에 포커스를 둔 상태에서 ctrl+s를 누르면 터미널 출력이 잠깁니다 (상세).

일반적으로 ctrl+q를 입력하면이 출력 잠금 상태를 해제 할 수 있지만 ctrl+q는 VSCode의 기본 바로 가기로 할당되므로 해제 할 수 없습니다.

해결 방법


keybindings.json 에 다음과 같이 추기하는 것으로, ctrl+q 의 디폴트 단축키를 무효화할 수가 있다.
 // Place your key bindings in this file to override the defaults
 [
+    { "key": "ctrl+q", "command": "-workbench.action.quickOpenView" }
 ]

Command Palette에 다음과 같이 입력하여 JSON을 열고 위를 추가한다.


바로 가기를 비활성화한 상태에서 ctrl+q 를 누르면 터미널 출력의 잠금을 해제할 수 있습니다.

상세



기본적으로 할당된 키보드 샷 컷은 마찬가지로 JSON 파일을 열어 확인할 수 있다.


이번 설정이라면, 아래와 같이 기재되어 있는 것을 확인할 수 있다(일부 약어)
{
  { "key": "ctrl+q", "command": "workbench.action.quickOpenView" },
}

기본 설정은 다시 쓸 수 없습니다.
따라서 바로 가기 키 설정에서 머리에 -를 붙여 이번에는이 바로 가기를 무효화하고 있습니다.
 // Place your key bindings in this file to override the defaults
 [
+    { "key": "ctrl+q", "command": "-workbench.action.quickOpenView" }
 ]

여담



ctrl+s 입니다만, 다음과 같은 경위로 구현되고 있는 것 같습니다.

이 「Ctrl+S」에 의한 화면 출력의 정지입니다만, 기원은 「텔레프린터」에 있습니다. 한때 컴퓨터의 문자 출력은 "디스플레이에 표시"가 아니라 "프린터에 인쇄"되어있었습니다. 프린트를 일시적으로 정지하고 싶은 경우에 「Ctrl+S」로 정지해, 「Ctrl+Q」로 재개하고 있었던 것입니다. 그 후, 디스플레이로 바꾼 후에도, 지금의 단말만큼 스크롤 기능은 충실하지 않았기 때문에, 「Ctrl+S」로 출력을 멈추어 내용을 확인해, 「Ctrl+Q」를 눌러 출력을 재개 하는 형태로 사용되었습니다.

ぃtps://ぃぬxふぁん. 인후 / ぢ사 bぇ-ctrls

인용 원의 기사에서는 이것을 정지하는 방법에 대해 설명하고 있으므로, 원래 ctrl+s 를 눌러도 출력이 정지하지 않게, 설정을 변경하는 해결 방법 쪽이 바람직할지도 모릅니다.

참고


  • Remove a keyboard shortcut from VS Code
  • 좋은 웹페이지 즐겨찾기