昔,別のところに書いた記事を改めて書き直します. Windowsで使うターミナルエミュレータの話.

mintty0

 

こんなの.これはsshでLinuxサーバにつなげている時の画面. 少なくともcmdよりはよい.


参考

今回の記事は以下のページを参考にさせていただきました.

[Windowsで最高のターミナルを構築する方法] http://tanakh.jp/posts/2011-11-15-windows-terminal.html

[Windows に MinGW と mintty を入れてシェル環境改善] http://zarari.hatenablog.com/entry/2013/08/22/235819

ただし,参考にしたページと自環境ではインストールしたMinGWの場所やパスの指定するべき先などに少し差異があった. MinGWのバージョンの違いか,自環境がWindows 8.1だからか? 自分の作業内容をもとに書いていきたい.

 


 

ターミナルエミュレータ

普段からCentOS,Mac OS,Windowsを使っているのですが, 前の2つはともかくWindowsの例の黒い画面は使いづらい.

PowerShellでもlsとかgrepとコマンドが使えるのは分かっているものの,でもそれだけって感じ. まぁCygwinとか入れる手もあるけどCygwin重たいし億劫です.

PuTTYとかもあるけど,あれはどっちかっていうとSSHクライアントって感じ.

使い勝手のいい,ついでに言うとカッコいいターミナルエミュレータないかなぁと思って探していたら, minttyなるものを見つけました. このminttyをWindows 8.1に対してインストールとセットアップを行うところまで書きます.


 

MinGW

[MinGW] http://ja.wikipedia.org/wiki/MinGW

MinGW(MinGW Project)っていうのは,Cygwinからフォークした WindowsのためのUNIXライクなツールであるということらしい.

Cygwinほど多くの機能を提供はしないものの,それ自身で簡潔な環境でありサイズも小さいと. いい感じです.

MinGWのシェル環境であるMSYSと,Cygwinのターミナルエミュレータであるminttyをインストールして, お手軽なターミナルを準備することにします.


MinGW / MSYSのインストール

[MinGW - Minimalist GNU for Windows] http://sourceforge.net/projects/mingw/files/

上記の”Download mingw-get-setup.exe” からインストーラをダウンロードします. 2014/10/30現在,最新のファイルは2013/10/4付けでした.

ダウンロードしたファイルを立ち上げ,”Install” - “Continue” をクリック. パッケージのダウンロードが始まるのでしばらく待ちます. 終わったら”Continue”.

するとこのような画面が出てくると思います. mingw

インストールするパッケージを問われていますが,今回はMinGWの中のMSYSが目的なので 一番上の”mingw-developer-toolkit” のチェックボックスを右クリック, “Mark for Installation”をクリック. すると,一番下の”msys-base” も自動的にチェックがつくはずです.これでオッケー

タブの”Installation” - “Apply Changes” から出てくるウィンドウで”Apply” を選択. するとインストールが始まります. 数分程度の時間がかかるので次の環境変数の作業でもして過ごすとよい


 

環境変数

いざminttyを入れる前に,環境変数に手を加える必要があります.

・ システム環境変数 PATHに”C:\MinGW\msys\1.0\bin;” を追加 ・ ユーザー環境変数 HOMEに”C:\Users[ユーザ名]” を追加 …HOMEで指した先がminttyのホームディレクトリになる. …HOMEという環境変数がなければ,作る.

環境変数を変更したら,Windowsを再起動します.


minttyのインストール

minttyを入れるために,MinGWを起動します. 場所は特に指定していなければ,”C:\MinGW\msys\1.0\msys.bat”.

これを立ち上げると,無骨な黒い画面が立ち上がります. 以下を入力.

$ mingw-get update
$ mingw-get install msys-mintty

環境変数が正しく設定できていると,うまくインストールしてくれるかと思われます. これでminttyのインストールは完了.

$ mintty

でminttyを立ち上げます. mintty

このminnty,実体は"C:\MinGW\msys\1.0\bin\mintty.exe" にあります. しかし,これを立ち上げると mintty2

このようにshでログインしてしまい勝手が悪いので,なんとかします. mintty.exeのショートカットを作成し,プロパティにてリンク先をこのように mintty3

末尾に" -" (スペースハイフン)を付け加えます.

するとこのショートカットから起動したminttyでは,ユーザでログインした状態となります. 僕はこのショートカットをタスクバーに常駐させています.

ここまできてやっとminttyが使えるようになります.

ここまでやったので,後々使いそうなコマンドを今のうちに入れておくといいかもしれません

$ mingw-get update
$ mingw-get install msys-coreutils msys-man
$ mingw-get install  msys-zip msys-unzip msys-tar msys-gzip
$ mingw-get install wget
$ minge-get install msys-openssh msys-openssl

 

インストール後

minttyの体裁をよくします. ツールバーを右クリックすると出てくる”Options”.

mintty5

ジャギジャギのフォントをまともなものにして(Inconsolataを使っています), ついでに透過処理なんかを入れてみたりしている.

やりたいことは一通りやったわけですが,ちょっと問題があります. mintty6

文字化けしている部分は,日本語の部分. これに対応するためには,まず”.profile” ファイルをホームディレクトリに作成します. エクスプローラから作ろうとすると怒られるので,minttyから

$ touch .profile

とやるのがよいかと.

.profileに以下を記述します. これもminttyにvimなどのエディタを入れればそのままできる.

alias ls=‘ls –color=auto –show-control-chars’
alias ll=‘ls -l’
alias l=‘ls -CF’

こうして無事にmintty上で日本語が表示できるようになります. ただ,まだInconsolataのようなClear Typeで美しいフォントに対して, 日本語がジャッギジャギのかっこ悪いフォントになっているままです.

これには,英字フォントと日本語フォントのリンクが必要になるわけですが, 長くなってきたのでこれは別の記事に引き継ぐことにします.