개발/Visual Studio Code

커맨드 팔레트 24부: VS Code Task를 공급자 그룹 없이 한 목록에서 찾기

반응형
VS CODE 초보자 시리즈 · 커맨드 팔레트 24부

VS Code Task를 공급자 그룹 없이 한 목록에서 찾기

task.quickOpen.showAll로 Tasks: Run Task의 공급자별 2단계 목록과 전체 Task 한 목록을 비교하고, 실행 결과와 되돌리기까지 확인합니다.

false에서는 공급자 폴더와 Show All Tasks...가 있는 2단계 경로를, true에서는 개별 Task를 한 목록에서 바로 찾는 경로를 확인합니다.

전체 Task 수집은 더 느릴 수 있으므로 필요한 Workspace에서만 사용하고, Terminal과 결과 파일을 확인한 뒤 기본값으로 되돌립니다.

1. 시작하기 전에

VS Code Task를 한 번 이상 실행해 본 초보자용 실습입니다. 설정 자체보다 기존 settings.json, tasks.json, package.json을 덮어쓰지 않는 것이 중요합니다.

준비할 것

  • 빈 연습 폴더 C:\Users\<USER>\Documents\vscode-task-show-all-lab — <USER>를 자신의 Windows 사용자 폴더명으로 바꾸고 File > Open Folder...로 엽니다.
  • Workspace 또는 폴더가 열린 VS Code — Explorer 최상단에 연습 폴더명이 보이는지 확인합니다.
  • Windows PowerShell 5.1 — Start 메뉴 또는 VS Code Terminal 프로필에서 확인합니다.

적용 환경 한국어 초보자 · Windows 11 · VS Code Stable 1.134.0 · Windows PowerShell 5.1

안전하게 시작하기 새 빈 폴더를 사용하고 같은 이름의 파일이 있으면 .bak 복사본을 먼저 만드십시오. package.json은 private: true로 두며 설치·외부 게시·npm publish는 실행하지 않습니다. 중단 조건: 백업을 만들 수 없거나 기존 JSON에 오류가 있으면 덮어쓰지 말고 중단합니다.

2. 알아둘 핵심 개념

공급자별 2단계 Quick Pick

Stable 1.134.0의 기본 경로입니다. 최근 Task, configured Task, npm 같은 공급자 폴더와 Show All Tasks...를 먼저 보여 주고, 공급자를 선택하면 해당 Task를 두 번째 목록에서 고릅니다.

task.quickOpen.showAll

VS Code 설정 Key이며 자료형은 Boolean, 기본값은 false입니다. true이면 더 느릴 수 있는 “show all” 경로가 모든 Task를 먼저 수집해 한 목록에 표시합니다. 이 글에서는 Workspace 범위만 바꿉니다.

Show All Tasks...와 설정 true

Show All Tasks...는 기본 경로에서 이번 한 번만 전체 목록으로 들어가는 항목입니다. 설정 true는 이후 Tasks: Run Task마다 전체 목록 경로를 바로 사용합니다.

npm.autoDetect

VS Code에 포함된 npm 확장의 Workspace 설정입니다. 자료형은 String, 값은 "on" 또는 "off", 기본값은 "on"입니다. 이 실습은 감지용 package.json만 만들고 npm Task를 실행하지 않습니다.

3. 순서대로 진행하기

각 단계의 정상 결과를 확인한 뒤 다음 단계로 이동합니다.

1. 빈 연습 폴더를 열고 보호 대상 확인하기

목적 기존 프로젝트 설정을 건드리지 않는 실습 공간을 확보합니다.

  1. 파일 탐색기에서 C:\Users\<USER>\Documents\vscode-task-show-all-lab를 만들고 VS Code의 File > Open Folder...로 엽니다.

입력 위치 파일 탐색기와 VS Code Explorer

C:\Users\<USER>\Documents\vscode-task-show-all-lab
# <USER>를 실제 Windows 사용자 폴더명으로 치환
정상 결과 Explorer 최상단에 vscode-task-show-all-lab가 표시됩니다.

확인 기존 소스, .vscode, package.json이 없는지 봅니다.

실패 신호 회사 프로젝트 파일 또는 기존 설정 파일이 보입니다.

주의 기존 프로젝트에서 예제를 통째로 붙여넣지 마십시오. 되돌리기: 창을 닫고 새 빈 폴더를 다시 연 뒤 1단계에 재합류합니다.

2. npm 공급자 감지용 package.json 만들기

목적 기본 2단계 목록에서 공급자 폴더와 그 안의 Task를 관찰합니다.

  1. Workspace 루트에 아래 package.json을 저장합니다.

입력 위치 Workspace 루트의 package.json

{
  "name": "vscode-task-show-all-lab",
  "private": true,
  "scripts": {
    "provider-demo": "echo NPM_PROVIDER_VISIBLE"
  }
}
정상 결과 JSON 오류가 없고 provider-demo 스크립트가 하나 있습니다.

확인 private이 Boolean true인지 확인합니다.

실패 신호 빨간 밑줄, End of file expected 또는 동일 이름 파일이 보입니다.

주의 이 파일은 Task 감지 전용이며 설치나 게시를 실행하지 않습니다. 되돌리기: 오류 원문을 보존하고 기존 파일이면 백업에서 복원한 뒤 2단계에 재합류합니다.

3. 검증용 configured Task 하나 만들기

목적 전체 목록에서 선택한 Task가 실제 실행됐음을 파일로 교차 확인합니다.

  1. .vscode\tasks.json을 만들고 아래 JSON을 저장합니다.

입력 위치 Workspace 루트의 .vscode\tasks.json

{
  "version": "2.0.0",
  "tasks": [
    {
      "label": "Workspace list verification",
      "type": "process",
      "command": "powershell.exe",
      "args": [
        "-NoProfile",
        "-Command",
        "Set-Content -LiteralPath '.jcos-task-show-all.txt' -Value 'SHOW_ALL_TASKS_OK' -Encoding utf8; Write-Output 'SHOW_ALL_TASKS_OK'"
      ],
      "problemMatcher": []
    }
  ]
}
정상 결과 빨간 밑줄 없이 configured Task가 1개 보입니다.

확인 tasks 배열의 객체 수와 label을 확인합니다.

실패 신호 Incorrect type, 괄호·쉼표 오류 또는 Task가 보이지 않습니다.

주의 기존 tasks.json이 있으면 덮어쓰지 마십시오. 되돌리기: 오류 원문을 보존하고 예제와 구조를 비교한 뒤 3단계에 재합류합니다.

4. 기본 2단계 동작 설정하고 관찰하기

목적 변경 전 false 동작을 기준선으로 확보합니다.

  1. .vscode\settings.json에 아래 JSON을 저장하고 Tasks: Run Task를 실행합니다. 첫 목록의 npm 공급자 폴더를 선택해 두 번째 목록의 npm: provider-demo를 확인한 뒤 뒤로 돌아옵니다.

입력 위치 Workspace Settings, Command Palette, Task Quick Pick

{
  "task.quickOpen.skip": false,
  "task.quickOpen.showAll": false,
  "npm.autoDetect": "on"
}
정상 결과 첫 목록에 configured Task, npm 공급자 폴더와 Show All Tasks...가 있고, npm을 선택하면 감지된 Task가 보입니다.

확인 공급자 폴더를 한 번 선택해야 그 공급자의 Task 목록으로 이동하는지 관찰합니다.

실패 신호 Task가 즉시 실행되거나 npm 공급자/스크립트가 보이지 않습니다.

주의 자동 설치로 복구하지 마십시오. 되돌리기: skip: false, npm.autoDetect: "on", 파일 위치를 확인하고 Developer: Reload Window 후 4단계에 재합류합니다. 원인이 불명확하면 UNKNOWN으로 중단합니다.

5. Show All Tasks...를 한 번 사용하기

목적 설정을 바꾸기 전에도 일회성 전체 목록으로 들어갈 수 있음을 확인합니다.

  1. 첫 목록으로 돌아와 Show All Tasks...를 선택합니다.

입력 위치 Task Quick Pick

Tasks: Run Task
Show All Tasks...
정상 결과 공급자 폴더가 아니라 개별 Task 항목들이 한 목록에 나타납니다.

확인 Workspace list verification과 npm: provider-demo를 검색할 수 있는지 확인합니다.

실패 신호 공급자 폴더 목록이 그대로이거나 목록이 계속 로딩됩니다.

주의 전체 Task 수집은 시간이 더 걸릴 수 있습니다. 되돌리기: 15초 이상 변화가 없으면 Esc로 취소하고 오류 원문을 보존한 뒤 4단계에 재합류합니다.

6. Workspace에서 항상 전체 목록 켜기

목적 Tasks: Run Task가 공급자 폴더 대신 전체 목록으로 바로 진입하게 합니다.

  1. .vscode\settings.json의 task.quickOpen.showAll만 Boolean true로 바꾸고 저장합니다.

입력 위치 Workspace 루트의 .vscode\settings.json

{
  "task.quickOpen.skip": false,
  "task.quickOpen.showAll": true,
  "npm.autoDetect": "on"
}
정상 결과 설정 Key에 빨간 밑줄이 없고 값이 따옴표 없는 true입니다.

확인 showAll은 Boolean, npm.autoDetect는 String인지 구분합니다.

실패 신호 "true", 1, 쉼표 오류 또는 Unknown Configuration 경고가 보입니다.

주의 User Settings가 아니라 연습 폴더의 Workspace Settings만 바꿉니다. 되돌리기: 정확한 Key와 자료형을 복원하고 저장한 뒤 6단계에 재합류합니다.

7. 한 목록에서 Task를 실행하고 결과 확인하기

목적 공급자 폴더를 열지 않고 Task를 찾은 뒤 실제 실행 결과까지 확인합니다.

  1. Ctrl+Shift+P → Tasks: Run Task를 실행하고 전체 목록에서 Workspace list verification을 선택합니다. 완료 후 Windows PowerShell Terminal에서 결과 파일을 읽습니다.

입력 위치 Command Palette, Task Quick Pick, Task Terminal, Workspace 루트

Get-Content -LiteralPath .\.jcos-task-show-all.txt
정상 결과 공급자 폴더를 선택하지 않아도 개별 Task가 보이고, Task Terminal과 파일 내용이 정확히 SHOW_ALL_TASKS_OK입니다.

확인 Terminal 출력과 Get-Content 결과를 비교합니다.

실패 신호 2단계 공급자 목록이 먼저 나오거나 Cannot find path가 출력됩니다.

주의 오류 원문을 먼저 보존합니다. 되돌리기: Settings 범위와 Get-Location을 확인하고 6단계에 재합류합니다.

8. 설정을 되돌리고 기준선으로 재합류하기

목적 전체 목록 수집이 느리거나 불필요할 때 기본 2단계 동작으로 복귀합니다.

  1. task.quickOpen.showAll을 false로 되돌리고 Tasks: Run Task를 다시 실행합니다.

입력 위치 Workspace Settings와 Task Quick Pick

{
  "task.quickOpen.skip": false,
  "task.quickOpen.showAll": false,
  "npm.autoDetect": "on"
}
정상 결과 공급자별 2단계 첫 목록과 Show All Tasks...가 다시 나타납니다.

확인 npm 공급자 폴더가 개별 npm Task를 대신해 첫 단계에 표시되는지 확인합니다.

실패 신호 false인데도 전체 Task가 바로 한 목록에 나타납니다.

주의 원래 파일이 있었다면 백업으로 복원해야 합니다. 되돌리기: Workspace·User 범위를 확인하고 Developer: Reload Window 후 4단계 기준선을 다시 검사합니다.

4. 완료 확인하기

입력 화면과 독립된 방법을 포함해 결과를 교차 확인합니다.

  • 설정 자료형 확인 — task.quickOpen.showAll은 Boolean, 기본값/되돌림 값은 false였습니다.
  • 기준선 관찰 — false에서 공급자 폴더와 Show All Tasks...가 있는 2단계 경로를 확인했습니다.
  • 목표 관찰 — true에서 공급자 폴더를 선택하지 않고 개별 Task가 한 목록에 나타났습니다.
  • 독립 검증 — Terminal과 .jcos-task-show-all.txt 내용이 SHOW_ALL_TASKS_OK였습니다.
  • Rollback 확인 — false로 되돌리자 공급자별 목록이 복원됐습니다.
완료 기준 true에서 개별 Task를 한 목록에서 찾아 실행하고 Terminal·결과 파일에서 SHOW_ALL_TASKS_OK를 확인했으며, false에서 2단계 목록이 복원됩니다.

5. 문제가 생겼다면

true인데도 공급자 폴더가 먼저 보인다

먼저 확인 Settings에서 @modified task.quickOpen.showAll을 검색해 Workspace와 User 범위, Boolean 자료형을 확인합니다.

복구 문자열이 아닌 Boolean true로 저장하고 Developer: Reload Window를 실행합니다.

재합류 7단계에서 Tasks: Run Task를 다시 실행합니다.

npm 공급자 또는 provider-demo가 보이지 않는다

먼저 확인 package.json이 Workspace 루트에 있는지, npm.autoDetect가 String "on"인지 봅니다.

복구 JSON 오류를 고치고 창을 다시 로드합니다. npm Task는 실행하지 않으며 임의 설치도 하지 않습니다. 원인은 UNKNOWN일 수 있습니다.

재합류 4단계에서 공급자 폴더를 다시 확인합니다.

전체 목록이 오래 로딩된다

먼저 확인 15초 이상 변화가 없는지, Task Output에 오류가 있는지 봅니다.

복구 Esc로 취소하고 오류 원문을 보존한 뒤 task.quickOpen.showAll을 false로 되돌립니다.

재합류 4단계의 공급자별 목록을 사용합니다.

결과 파일이 없다

먼저 확인 Task Terminal의 오류 원문과 Get-Location을 확인합니다.

복구 Workspace 루트가 아니라면 연습 폴더를 다시 열고 configured Task를 재실행합니다.

재합류 7단계로 돌아갑니다.

User 설정과 Workspace 설정이 충돌한다

먼저 확인 Settings의 범위 표시와 @modified 결과를 확인합니다.

복구 실습 중에는 Workspace 값을 관찰 기준으로 사용하고 종료 후 원래 값이나 백업으로 복원합니다.

재합류 6단계에서 값을 다시 저장합니다.

핵심 판단 원인을 확인하지 못하면 상태와 오류 원문을 보존하고 임의 변경 없이 중단합니다.

6. 핵심 정리와 공식 자료

  • task.quickOpen.showAll은 Boolean이며 기본값은 false입니다.
  • false는 공급자별 빠른 2단계 목록, true는 더 느릴 수 있는 전체 Task 한 목록을 사용합니다.
  • Show All Tasks...는 기본 경로에서도 한 번만 전체 목록으로 들어가는 선택지입니다.
  • Task 실행 성공은 Terminal 출력과 결과 파일로 교차 확인합니다.
  • Task가 많거나 공급자가 느리면 false로 되돌립니다.

공식 자료

아래 자료는 2026-08-23 Asia/Seoul에 확인했습니다. Stable 고정 commit 소스는 1.134.0 동작을 설명하며 이후 버전에서는 UI와 구현이 달라질 수 있습니다.

다음 편 예고 커맨드 팔레트 25부 — Task 실행 전에 편집 파일 저장 여부 정하기. task.saveBeforeRun의 String 값 always, never, prompt, 기본값 always, 저장되지 않은 편집기와 Task 실행 순서, 안전한 확인과 되돌리기를 다룹니다.
반응형
이 글이 유용했다면 링크를 공유해 보세요.