LoginSignup
19
21

More than 3 years have passed since last update.

Windows Terminal でも Cmder を使う方法

Last updated at Posted at 2020-05-21

Microsoft 製ターミナルの Windows Terminal、めでたく Ver 1.0 を迎えましたね。

Microsoft、「Windows Terminal 1.0」を発表 ~タブUIの新しいターミナルアプリ - 窓の杜

プレビュー版の時はあまり使っていなかったのですが、今回使ってみたところ中々使い勝手がよく、今まで愛用していた Cmder から移行することを決めました。

やっぱりコマンドプロンプトは使いづらい

私の場合、環境変数など諸々の事情もあり、コマンドプロンプトや PowerShell を使うことも少なくありません。
そんなとき、私はコマンドプロンプトの使い勝手を Bash に寄せた Cmder というターミナルを使っていました。

しかし、Windows Terminal では初期設定でコマンドプロンプト、PowerShell、WSL (Windows Subsystem for Linux) しか起動できません。

つまり、前述のような事情がある場合、Windows Terminal では素の状態のコマンドプロンプト (あるいは PowerShell) を使うことになってしまいます。
……辛いですよね?

Cmder を Windows Terminal 内で使おう!

Cmder は、複数のツール (Conemu, Clink...) を組み合わせて開発されたターミナルアプリです。
標準では Conemu というターミナルアプリ上で Cmder のシェルが動作しているので、このターミナルを Windows Terminal に差し替える形を取ることで、動作させることが出来ます。

こんな風に。
image.png

Windows Terminal に Cmder 利用のための設定をする

guid を発行

設定に使うための guid というユニークな ID を発行します。

PowerShell を管理者権限で起動し、以下のコマンドを実行します。
発行された guid は後の設定に利用するので控えておきましょう。

[guid]::NewGuid()

こちらを実行すると、下記のような結果が得られます。
下記の場合は 0ec43d47-f761-48f3-a99b-a8a73927f159 が guid ですね。

PS C:\Windows\System32> [guid]::NewGuid()

Guid
----
0ec43d47-f761-48f3-a99b-a8a73927f159

Windows Terminal に Cmder のシェルを追加

Windows Terminal の設定を開くと、 settings.json という設定ファイルが開かれます。
image.png

このファイル内の "profiles" -> "list" という要素が、各シェルの設定項目です。
(参考: Windows ターミナル プロファイルの設定 | Microsoft Docs )

この項目に Cmder 用の設定を書き加えていきましょう。

{
  .....

  "profiles": {
    "defaults": {
    },

    // "list" 配列に各シェル設定が羅列されている
    "list": [

      // Cmder 用の設定を追記する
      // --- 追記ここから ---
      {
        "guid": "{0ec43d47-f761-48f3-a99b-a8a73927f159}",
        "hidden": false,
        "name": "Cmder",
        "icon": "%USERPROFILE%\\Apps\\cmder_mini\\icons\\cmder.ico",
        "startingDirectory": "%USERPROFILE%",
        "commandline": "cmd.exe /k %USERPROFILE%\\Apps\\cmder_mini\\vendor\\init.bat"
      },
      // --- 追記ここまで ---

      {
        "guid": "{c6eaf9f4-32a7-5fdc-b5cf-066e8a4b1e40}",
        "hidden": false,
        "name": "Ubuntu-18.04",
        "source": "Windows.Terminal.Wsl"
      },

       .....
     ]
  }
}
キー 値の説明
guid 設定項目の guid
hidden 起動するシェルのリストに表示するか。通常は false
name シェル名
icon タブに表示するアイコン
startingDirectory 起動後のディレクトリ
commandline シェル起動コマンド
  • guid には、前述で発行した guid を登録
  • commandline で指定する /k オプションの引数には、Cmderインストールパス\\vendor\\init.bat を指定する
    • 設定例にあるように、環境変数を利用することも可能
  • icon の設定は任意だが、設定する場合は Cmderインストールパス\\icons\\cmder.ico を指定するとよい

以上を追記して保存することで、Cmder が選べるようになったかと思います。
image.png

最後に

Windows Terminal、これといって尖った機能があるわけではないのですが、スプリットビューなんかもあるし、シンプルでとても使いやすいので気に入っています。

WSL 上の Powerline なんかも綺麗に表示してくれますよ。
※以下ではフォントに HackGen の Nerd Fonts 対応版(まだ製作中のものですが…)、テーマには zsh の powerlevel10k テーマを使用
image.png

19
21
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
19
21