devAlice
← Windows

Windows Terminal セットアップ — タブ・分割・WSL / PowerShell + Oh My Posh

Windows Terminal を macOS iTerm のように使いこなす。プロファイル / キーバインド / テーマを settings.json 1 ファイルに固める。

Windows 開発は Windows Terminal から始まる。WSL、PowerShell、コマンドプロンプトをタブと分割ペインで 1 ウィンドウにまとめ、設定全体を 1 つの JSON ファイル(settings.json)に固める。一度きちんとセットアップすれば、macOS iTerm + tmux とほぼ同等の作業環境が手に入る。ターミナルの本質は外見ではなく、設定をコードとして管理できることにあると考える — settings.json に全てを固めることで、マシンが変わっても同じ環境を即座に再現できるからだ。

このガイドは Windows 11 / Windows Terminal 1.21 以上を対象とする。Windows 初期セットアップWSL チューニング の後に行う日常ターミナルの仕上げステップだ。

TL;DR

  1. Microsoft Store から Windows Terminal をインストール(Win11 には組み込み済み)
  2. Ctrl+,(または ▼ → Settings)→ JSON 編集モード
  3. このガイドの settings.example.json をダウンロードして自分のマシン用に編集
  4. JetBrains Mono フォント + ダークテーマ + アクリル透過
  5. Oh My Posh で PowerShell プロンプトをドレスアップ

前提条件

  • Windows 11(10 でも動作;アクリル効果に一部差異あり)
  • WSL2 インストール済み — WSL チューニング
  • (オプション)PowerShell 7(winget install Microsoft.PowerShell

settings.json のダウンロード

devAlice 推奨ベースライン — 自分のマシンから GUID を貼り付けるだけで完成。

settings.json
# 1. ダウンロード
Invoke-WebRequest `
  -Uri https://devalice.jaceclub.com/assets/windows/windows-terminal-setup/settings.example.json `
  -OutFile settings.json
 
# 2. SHA-256 検証(Windows PowerShell)
Get-FileHash settings.json -Algorithm SHA256
# Expected (Hash): BBDEBB16B68F5BBD9041DBE4FEFEC8BA5F30B497325F2A11B922C1DAEDB8525F
# (lowercase: bbdebb16b68f5bbd9041dbe4fefec8ba5f30b497325f2a11b922c1daedb8525f)
 
# 3. 内容確認
notepad settings.json
 
# 4. 実際の場所にコピー(Windows Terminal Stable)
$dst = "$env:LOCALAPPDATA\Packages\Microsoft.WindowsTerminal_8wekyb3d8bbwe\LocalState\settings.json"
Copy-Item settings.json $dst -Force

⚠️ 4 つの guid フィールドを自分のマシンの値に置き換えること。Windows Terminal を一度開いて、メニューから自動生成された GUID を確認する。


1. Windows Terminal のインストール — 1 分

Win11 には組み込み済み。そうでない場合:

winget install Microsoft.WindowsTerminal

Win + T またはスタートメニュー → 「Terminal」で起動。

デフォルトショートカット(カスタマイズ前)

キーアクション
Ctrl+,Settings
Ctrl+Shift+T新しいタブ
Ctrl+Tab次のタブ
Ctrl+Shift+Wタブを閉じる
Alt+Shift++右に分割
Alt+Shift+-下に分割

2. settings.json を直接編集 — 5 分

GUI には限界がある。JSON で設定する。

Ctrl+,(Settings)→ 左下の ⚙ Open JSON file → settings.json がデフォルトエディターで開く。

パス:

%LOCALAPPDATA%\Packages\Microsoft.WindowsTerminal_8wekyb3d8bbwe\LocalState\settings.json

Windows Terminal Preview は同じパス構造で Microsoft.WindowsTerminalPreview_... 以下に別ファイルがある。

5 つの重要な設定

{
  "$schema": "https://aka.ms/terminal-profiles-schema",
 
  // デフォルトプロファイル(GUID)
  "defaultProfile": "{2c4de342-...}",  // 例:Ubuntu WSL
 
  // 選択時に自動コピー — iTerm スタイル
  "copyOnSelect": true,
  "copyFormatting": "none",  // プレーンテキストのみ(カラー / フォーマットなし)
 
  // テーマ
  "theme": "dark"
}

3. プロファイル — WSL + PowerShell 7 + 非表示 — 10 分

3.1 Ubuntu(WSL)プロファイル

{
  "guid": "{2c4de342-38b7-51cf-b940-2309a097f518}",  // 自分のマシンの値
  "name": "Ubuntu (WSL)",
  "source": "Windows.Terminal.Wsl",
  "commandline": "wsl.exe -d Ubuntu",
  "startingDirectory": "//wsl$/Ubuntu/home/%USERNAME%",
  "colorScheme": "One Half Dark",
  "icon": "ms-appx:///ProfileIcons/{9acb9455-ca41-5af7-950f-6bca1bc9722f}.png"
}

startingDirectory を WSL ホームに向けると、新しいタブが毎回 ~/ で開く。

3.2 PowerShell 7 プロファイル

{
  "guid": "{574e775e-4f2a-5b96-ac1e-a2962a402336}",  // 自分のマシンの値
  "name": "PowerShell 7",
  "commandline": "pwsh.exe -NoLogo",
  "startingDirectory": "%USERPROFILE%",
  "colorScheme": "Campbell Powershell",
  "icon": "ms-appx:///ProfileIcons/pwsh.png"
}

-NoLogo は PowerShell のウェルカムバナーを非表示にする。毎回見る必要はない。

3.3 使わないプロファイルを非表示にする

コマンドプロンプト、Azure Cloud Shell、Windows PowerShell(5.1)を使わない場合:

{
  "guid": "{61c54bbd-c2c6-5271-96e7-009a87ff44bf}",
  "name": "Windows PowerShell",
  "hidden": true
}

4. フォント + テーマ — 5 分

4.1 JetBrains Mono のインストール

winget install JetBrains.JetBrainsMono
# または:scoop bucket add nerd-fonts; scoop install JetBrainsMono-NF

インストール後、ログアウト / 再ログイン(フォントキャッシュの更新)。

4.2 フォントのデフォルト適用

"profiles": {
  "defaults": {
    "fontFace": "JetBrains Mono",
    "fontSize": 12,
    "fontWeight": "normal",
    "useAcrylic": true,
    "acrylicOpacity": 0.85,
    "cursorShape": "filledBox",
    "antialiasingMode": "cleartype",
    "padding": "10",
    "scrollbarState": "hidden",
    "snapOnInput": true,
    "historySize": 50000
  },
  // list...
}

defaults はすべてのプロファイルに適用される;プロファイルごとの上書きも可能。

4.3 追加テーマ(オプション)

schemes 配列にパレットを追加する。Windows Terminal Themes から JSON をコピーする。


5. キーバインド — Mac 標準に合わせる — 5 分

actions に追加。ダウンロード可能なアセットにはすでに含まれている:

"actions": [
  { "command": "find",                                       "keys": "ctrl+shift+f" },
  { "command": "paste",                                       "keys": "ctrl+shift+v" },
  { "command": "copy",                                        "keys": "ctrl+shift+c" },
  { "command": { "action": "splitPane", "split": "right" }, "keys": "alt+shift+plus" },
  { "command": { "action": "splitPane", "split": "down"  }, "keys": "alt+shift+minus" },
  { "command": "closePane",                                   "keys": "ctrl+shift+w" },
  { "command": { "action": "moveFocus", "direction": "left"  }, "keys": "alt+left" },
  { "command": { "action": "moveFocus", "direction": "right" }, "keys": "alt+right" },
  { "command": { "action": "newTab" },                       "keys": "ctrl+shift+t" },
  { "command": { "action": "nextTab" },                      "keys": "ctrl+tab" }
]

iTerm / Terminal.app からの移行者に自然なマッピング。


6. Oh My Posh — PowerShell プロンプトをドレスアップ — 10 分

PS C:\Users\u> は情報が少なすぎる。git ブランチ・終了コード・短縮パスを追加する。

6.1 インストール

winget install JanDeDobbeleer.OhMyPosh

新しいターミナルを開く。

6.2 PowerShell プロファイルに適用

notepad $PROFILE
# なければ:New-Item -Path $PROFILE -ItemType File -Force

内容:

oh-my-posh init pwsh --config "$env:POSH_THEMES_PATH\jandedobbeleer.omp.json" | Invoke-Expression

新しい PowerShell ウィンドウで即座に反映される。

6.3 テーマの変更

Get-PoshThemes              # すべてのテーマをプレビュー
oh-my-posh init pwsh --config "$env:POSH_THEMES_PATH\powerlevel10k_rainbow.omp.json" | Invoke-Expression

選んだテーマを $PROFILE に保存して永続化する。

6.4 WSL の bash / zsh に適用(オプション)

# WSL の bash / zsh 内
curl -s https://ohmyposh.dev/install.sh | bash -s
echo 'eval "$(oh-my-posh init bash --config ~/.poshthemes/jandedobbeleer.omp.json)"' >> ~/.bashrc

7. 日常パターン

7.1 クイック分割 + 別コマンド

Alt+Shift++ で右に分割 → 新しいペインで wsl -d Ubuntu を実行。左は PowerShell、右は WSL — Mac iTerm + tmux の感覚。

7.2 WSL 内の tmux

Windows Terminal はウィンドウ分割のみ — 本格的なセッション管理(デタッチ / アタッチ)は WSL 内の tmux で行う:

# WSL bash 内
sudo apt install tmux
tmux new -s dev          # 新しいセッション
# 作業後、Ctrl+B → D(デタッチ)
tmux attach -t dev       # 再アタッチ

Windows Terminal を閉じても tmux セッションは終了しない。

7.3 settings.json を Git で管理

$src = "$env:LOCALAPPDATA\Packages\Microsoft.WindowsTerminal_8wekyb3d8bbwe\LocalState\settings.json"
$dst = "$HOME\dotfiles\windows-terminal\settings.json"
mkdir "$HOME\dotfiles\windows-terminal" -ErrorAction SilentlyContinue
Copy-Item $src $dst -Force
cd "$HOME\dotfiles"
git add windows-terminal/settings.json
git commit -m "feat: windows terminal settings"

新しいマシンではコピーを逆方向に行えば即座に同期完了。


8. トラブルシューティング

フォントが適用されない

JetBrains Mono インストール後にフォントキャッシュの更新が必要。ログアウト / 再ログインまたは再起動する。

アクリル透過が出ない

Windows 11 ではバッテリーセーバーまたは透明効果が無効の場合、アクリルが無効になる。Settings → 個人設定 → 色 → 透明効果を有効にする。

WSL プロファイルの startingDirectory が無視される

//wsl$/...(スラッシュ 2 つで始める)必要がある。環境によっては \\wsl$\\... が動かないことがある。

PowerShell 7 プロンプトのグリフが崩れる

一部の Oh My Posh テーマは Nerd Font が必要。Nerd バリアントのフォントに切り替える:

winget install JetBrains.JetBrainsMono   # ベース
# Nerd Font バリアント:https://www.nerdfonts.com/ または scoop

次のステップ

参考リンク

更新履歴

  • 2026-05-12 — 初稿(devAlice M2 シード展開)