터미널을 하루에 몇 번 여는지 세어보면 대개 수십 번입니다. 그런데 기본 상태의 Windows Terminal은 프롬프트에 전체 경로만 길게 찍혀 있고, 지금 어느 git 브랜치에 있는지는 알려주지 않습니다. 그래서 브랜치를 확인하려고 git status를 한 번 더 치고, 어제 쓴 긴 명령이 기억나지 않아 히스토리를 위로 스무 번 넘깁니다. 한 번에 5초씩만 잡아도 하루 서른 번이면 2분 30초, 한 달이면 한 시간이 넘습니다. 이 글에서는 윈도우 터미널 커스터마이징으로 그 시간을 줄이는 설정을 순서대로 정리합니다. 보기 좋게 만드는 것보다, 화면에 필요한 정보가 미리 떠 있게 만드는 쪽에 무게를 뒀습니다.
설정 파일부터 찾아둔다
Windows 11에는 Windows Terminal이 기본으로 들어 있고, Windows 10이라면 Microsoft Store에서 설치할 수 있습니다. 설정은 두 가지 방법으로 건드립니다. Ctrl+,를 누르면 GUI 설정 창이 열리고, Ctrl+Shift+,를 누르면 같은 내용을 담은 settings.json이 바로 열립니다.
GUI로 눌러가며 바꿀 수도 있지만, 결국 JSON을 직접 여는 편이 빠릅니다. 여러 프로필에 같은 설정을 한 번에 먹이는 defaults 블록은 GUI에 노출되지 않고, 설정을 다른 PC로 옮길 때도 파일 하나만 복사하면 끝나기 때문입니다.
# 설정 파일이 실제로 어디 있는지 확인
explorer "$env:LOCALAPPDATA\Packages\Microsoft.WindowsTerminal_8wekyb3d8bbwe\LocalState"
# 스토어가 아니라 winget/exe로 설치했다면 이쪽
explorer "$env:LOCALAPPDATA\Microsoft\Windows Terminal"
폰트와 색부터 바꾼다
가장 체감이 큰 두 가지입니다. 기본 폰트인 Cascadia Mono는 무난하지만, 프롬프트에 아이콘을 띄우려면 글리프가 추가된 폰트가 필요합니다. Windows Terminal에는 Cascadia Code / Cascadia Mono가 기본 포함돼 있고, 아이콘까지 쓰려면 Nerd Fonts 버전(Cascadia Code NF)이나 D2Coding Nerd Font처럼 글리프가 들어간 폰트를 따로 설치하면 됩니다.
색 구성표는 내장된 것만으로도 충분합니다. One Half Dark, Solarized Dark, Tango Dark, Vintage 등이 이미 들어 있어서 이름만 적으면 적용됩니다. 아래는 모든 프로필에 공통으로 먹이는 defaults 예시입니다.
{
"profiles": {
"defaults": {
"font": {
"face": "Cascadia Code NF",
"size": 11
},
"colorScheme": "One Half Dark",
"useAcrylic": true,
"opacity": 85,
"padding": "12, 12, 12, 12",
"scrollbarState": "hidden"
},
"list": [
{
"name": "PowerShell",
"commandline": "pwsh.exe -NoLogo",
"startingDirectory": "D:\\projects",
"tabTitle": "pwsh"
}
]
}
}
useAcrylic과 opacity는 배경을 반투명하게 만듭니다. 뒤에 있는 브라우저 문서를 흘깃 보면서 명령을 칠 때 편합니다. 참고로 opacity는 0~100 정수를 쓰는 비교적 최근 방식이고, 오래된 버전에서는 acrylicOpacity에 0~1 소수를 넣었습니다. 값을 넣었는데 아무 변화가 없다면 터미널 버전을 먼저 확인하세요.
프롬프트에 정보를 띄운다
여기서부터가 실제로 시간을 아껴주는 부분입니다. Oh My Posh는 프롬프트를 바꿔서 현재 git 브랜치, 커밋되지 않은 변경 개수, 직전 명령의 실패 여부, 파이썬 가상환경 이름 같은 것을 항상 한 줄에 보여줍니다.
winget install JanDeDobbeleer.OhMyPosh -s winget
# 위 명령이 끝나면 터미널을 새로 열어야 PATH가 잡힌다
Install-Module -Name Terminal-Icons -Repository PSGallery -Scope CurrentUser
설치가 끝나면 PowerShell 프로필에 초기화 코드를 넣습니다. 프로필은 터미널을 열 때마다 실행되는 스크립트이고, 경로는 $PROFILE 변수에 들어 있습니다. 파일이 없으면 New-Item -Path $PROFILE -Type File -Force로 만든 뒤 notepad $PROFILE로 엽니다.
# Oh My Posh: 프롬프트에 경로 축약 + git 브랜치/변경 상태 표시
oh-my-posh init pwsh --config "$env:POSH_THEMES_PATH\jandedobbeleer.omp.json" | Invoke-Expression
# 아이콘으로 파일 종류 구분 (Nerd Font 필요)
Import-Module Terminal-Icons
# 예전에 친 명령을 회색으로 미리 보여주고, 위/아래로 목록에서 고른다
Set-PSReadLineOption -PredictionSource History
Set-PSReadLineOption -PredictionViewStyle ListView
Set-PSReadLineKeyHandler -Key UpArrow -Function HistorySearchBackward
Set-PSReadLineKeyHandler -Key DownArrow -Function HistorySearchForward
# 자주 쓰는 것만 별칭으로
function gs { git status --short }
function gl { git log --oneline -15 }
PredictionSource History는 실제로 쓰다 보면 가장 손이 덜 가게 만드는 설정입니다. 몇 글자만 치면 예전에 실행한 긴 명령이 회색으로 따라붙고, 오른쪽 방향키 한 번이면 그대로 채워집니다.
창 분할과 단축키
탭을 여러 개 띄우는 대신 한 화면을 쪼개면 서버 로그와 명령 입력을 동시에 볼 수 있습니다. 별도 설정 없이 바로 되는 것들입니다.
| 단축키 | 동작 |
|---|---|
| Alt + Shift + + | 세로로 창 분할 |
| Alt + Shift + – | 가로로 창 분할 |
| Alt + 방향키 | 분할된 창 사이 포커스 이동 |
| Alt + Shift + 방향키 | 분할된 창 크기 조절 |
| Ctrl + Shift + T | 새 탭 |
| Ctrl + Shift + W | 현재 창/탭 닫기 |
| Ctrl + Shift + P | 명령 팔레트 열기 |
| Win + ` | 퀘이크 모드(화면 위에서 내려오는 터미널) 토글 |
단축키가 기억나지 않을 때는 Ctrl+Shift+P로 명령 팔레트를 열고 한글이나 영어로 검색하면 됩니다. VS Code와 같은 방식이라 따로 외울 게 없습니다.
자주 쓰는 프로필 설정
프로필 단위로 걸어두면 매번 손이 가던 동작을 없앨 수 있는 항목들입니다.
startingDirectory— 터미널을 열자마자 작업 폴더에 있게 합니다.cd한 줄이 사라집니다.elevate: true— 그 프로필은 항상 관리자 권한으로 실행됩니다. 서비스 재시작처럼 매번 권한이 필요한 작업용 프로필에 유용합니다.tabTitle— 탭 이름을 고정합니다. 명령이 바뀔 때마다 제목이 흔들리는 걸 막습니다.commandline에-NoLogo— PowerShell 시작 시 뜨는 저작권 안내 문구를 없앱니다.defaultProfile— 새 탭을 열 때 기본으로 뜰 프로필의 GUID를 지정합니다. Windows PowerShell 5.1 대신 PowerShell 7(pwsh)을 기본으로 두면 편합니다.
주의할 점
- 폰트 이름이 틀리면 조용히 무시됩니다. 에러가 뜨지 않고 기본 폰트로 되돌아가기 때문에 “설정이 안 먹는다”고 착각하기 쉽습니다. 설치된 폰트 이름은 설정 GUI의 글꼴 목록에서 정확히 확인하세요.
- 아이콘이 네모(두부)로 보이면 폰트 문제입니다. Oh My Posh 테마와 Terminal-Icons는 Nerd Font 글리프를 씁니다. 일반 Cascadia Mono로는 렌더링되지 않습니다.
- 프로필 파일은 호스트마다 다릅니다. Windows PowerShell 5.1과 PowerShell 7은
$PROFILE경로가 서로 다르고, VS Code 통합 터미널은 또 별도 프로필을 읽습니다. 한쪽만 고쳐놓고 다른 쪽에서 적용이 안 된다고 헤매는 경우가 많습니다. - 프로필이 무거워지면 새 탭이 느려집니다. 모듈을 이것저것 넣다 보면 탭 하나 여는 데 1초 넘게 걸리기도 합니다. 아래 명령으로 실제 소요 시간을 재보고, 0.5초를 넘으면 쓰지 않는 모듈부터 빼세요.
- 설정 파일은 백업해 두세요.
settings.json과$PROFILE두 파일만 깃 저장소에 넣어두면 PC를 바꿔도 몇 분 만에 같은 환경을 복원할 수 있습니다.
Measure-Command { . $PROFILE }
마무리
한 번에 다 바꾸려 하면 오히려 어디서 문제가 생겼는지 못 찾습니다. 오늘은 폰트와 색 구성표만 바꿔보세요. 이 두 가지는 settings.json에서 두 줄이면 끝나고, 마음에 안 들면 지우기만 하면 됩니다. 그다음 며칠 써보고 프롬프트에 git 정보가 아쉬워질 때 Oh My Posh를 얹는 순서가 안전합니다.
다음 글에서는 엑셀 함수와 수식을 AI로 자동 생성하는 방법을 다룹니다. VLOOKUP 중첩이나 배열 수식처럼 매번 검색하게 되는 것들을 문장으로 설명해서 바로 받아 쓰는 요령입니다.