僕が思う最強のWindowsコマンドプロンプト

MacLinuxでの作業が多いと、
Windowsコマンドプロンプトを使った時に貧弱すぎてテンションが下がることがあります。


今までは「Cygwin」を入れることが多かったのですが、
とにかくインストールがメンドくさいし、めちゃくちゃ時間がかかります。
ほったらかしにしても、途中でエラーのダイアログが出て止まってたりとかもよくあります。
そこでもっと短時間でできるLinuxライクなコマンドプロンプト環境を作ってみました。


全部で6つの作業を行います。多いw


1. Linuxコマンドを使えるようにする

Gow」というツールをインストールします。
インストールは全てデフォルトのままで進めていきます。
環境変数のPathへの追加も自動でしてくれます。
インストールが終了後、コマンドプロンプトを起動して以下のコマンドを起動すると、
追加されたコマンドが一覧で表示されます。


2. bashライクにカスタムする

clink」というツールをインストールします。
このツールをインストールすると以下の機能がコマンドプロンプト上で出来るようになります。

  • GNU readlineを実装し、bashと同じショートカットキーを利用可能
  • [Tab]キーによるパスおよびファイル名補完機能
  • [Ctrl] + [V]によるクリップボードからの貼り付け機能
  • 環境変数を利用した実行ファイルの利用
  • [Ctrl] + [_]キー or [Ctrl] + [X]キー→[Ctrl] + [U]キーによる「元に戻す」「やり直す」
  • セッション間の保持や検索機能、ヒストリー展開をサポート
  • スクリプト言語として「Lua」をサポート

このツールのおかげで[Ctrl] + [L]キーで画面クリアや、[Ctrl] + [R]キーで後方検索ができるようになります。
「clink」をインストールするとコマンドプロンプトの初期表示画面の文言が少し変わります。

bash起動時に設定を操作するinputrcと同様の事が、
clinkでは「clink_inputrc」というファイルを「%LOCALAPPDATA%\clink」ディレクトリに作成することで実現できます。
このファイルに「set editing-mode vi」や「set keymap vi」を記述すれば、
vi使いの人は幸せになれると思いますw


同じディレクトリにある「settings」というファイルで、キーバインドを変更することもできます。
[Ctrl] + [L]キーで画面クリアや、[Ctrl] + [R]キーで後方検索はここで設定しています。


3. Gitコマンドを使えるようにする

Git入れるだけです。
Git for Windows」から最新版をインストールします。

エクスプローラーのコンテキストメニューからGit Bashを起動できるように、
[Git Bash Here]のチェックを入れています。

PATH環境変数の設定画面では、
コマンドプロンプトからもGitを利用できるように、
2番目の「Run Git from the Windows Command Prompt」を選択しています。
3番目の「Run Git and include Unix tools from the Windows Command Prompt」にすると、
Windowsの既存コマンドに影響を与えるかもしれないので試してません。

改行コードの選択画面では、
作業時にWindowsスタイルの改行コード(CRLF)に変換し、コミット時にはUNIXスタイル(LF)に変換する。
1番目の「Check out Windows-style, commit Unix-style line endings」を選択しています。


4.「tail -f」を使えるようにする
やっぱり「tail」コマンド使うなら、「f」オプションでログファイルとか監視したいところです。
しかし、「Gow」に入っている「tail」コマンドの「f」オプションはバグってて動きません。
そこで正常に動く「Git」に入っている「tail」コマンドを使用します。


「[Gitのインストールディレクトリ]\bin」の中に「tail」コマンドがあります。
まだ環境変数にパスが通っていないので通します。
ここで注意しなければいけないのが、先ほどインストールした「Gow」よりも前にパスを通してください。

先に入れた「Gow」とかぶっているコマンドがありますが、挙動に問題はありません。


5. タブ機能の追加

ConEmu」というツールをインストールします。
バージョンは好きなものでOKです。

[Win] + [N] で新しいタブが開始でき、どのコンソールを開くか選択することができます。
また設定変更でどのコンソールを表示するか変更することができます。
候補はシステムにインストールしているものを検知して自動的に出してくれます。

タブの切り替えは「Win」+ [1 or 2 or 3]で切り替えることができます。
他にも色々設定をすることができます。

たとえばタブを右クリックして、メニューにある [Duplicate root...]で画面を開きなおすと、
カレントディレクトリをそのまま引き継いで、新しいタブで作業ができます。
タブ1でGitのコミットしながら、タブ2でlogを見ることなんかができます。


6. 「ファイル名を指定して実行」から起動できるようにする

「ConEmu」のショートカットのパスを環境変数の「Path」に追加します。
ファイル名は短い名前の方が起動しやすいです。
環境変数にパスを通せば、「Win」+「R」の「ファイル名を指定して実行」から起動できます。
僕はファイル名を「em」にして、「cmd」というディレクトリを作ってそこに保存してパスを通しました。

これでかなりLinuxライクで便利なコマンドプロンプトになったと思います。