Windowsにminttyを入れた話
主にgit操作をCUIでやりたいということで、新しく(半年前に)買ったWindows PCにminttyを入れます。
gitのGUI操作はなんか慣れないです。
会社のPCや自宅の旧PCではCygwinをインストールして、デフォルト端末として一緒に入ってくるminttyを使ってました。
Cygwinはサイズがでかいしインストールに時間がかかるので、今回はMinGWからインストールします。
MinGWをちょっと調べた
今までたまに耳にしてたMinGW、結局使わないまま生きてきたのでついでにざっくり調べました。
ここでは詳細説明しませんが、要はLinuxとかのターミナルをWindows環境で使おう的なアレです。
フォーク元のCygwinはPOSIX環境との互換性を重視していて、そのためにWindows機能が一部犠牲になったりしてるそうです。
対してMinGWは完全な互換まではせず最小限の環境の提供に制限しているためCygwinよりずっと軽量です。その分Cygwinで実行できたプログラムがMinGWでは実行できないとかあるみたいですが、あまり本格的なこともする予定は無いので問題無いでしょう。多分。
導入環境
- Surface Pro 3
- Windows 8.1 Pro 64bit
参考文献
以下をベースに参考にさせていただきました。
わざわざ記事書く必要が無いくらい同じことやってるだけです。
http://qiita.com/plan0213/items/34f4aae78f0c59b1e788
https://unilith.wordpress.com/tag/msys/
MinGWのインストール
MinGW - Minimalist GNU for Windows - Browse Files at SourceForge.net
ここ↑からインストーラをダウンロードします。
installer -> mingw-get-setup.exe です。最終更新は2013-10-04でした。
インストーラ起動したらデフォルトのまま手順通り進めます。インストール先もデフォルトのまま"C:\MinGW"です。
インストールが完了すると MinGW Installation Managerというウィンドウが起動します。
ここでリスト先頭の"mingw-developer-toolkit"をクリックメニューから「Mark for Installation"選択でチェックします。
これチェックするとリスト下側の"msys-base"もチェックされます。
メニューバー「Installation」から「Apply Changes」を選択してインストールします。
これでインストール完了。
環境変数に追加
以下の環境変数を追加or作成します。
minttyのインストール
C:\MinGW\msys\1.0\msys.bat を実行してMinGWのシェルを起動。
以下のコマンドを実行してminttyをインストール。
$ mingw-get update $ mingw-get install msys-mintty
完了後、C:\MinGW\msys\1.0\bin\mintty.exe が追加されます。
ショートカット作成
minttyを起動しやすくするためショートカット作成します。
が、そのまま起動するとシェルがshで起動します。
ログインシェルとして起動するため、ショートカットのプロパティからパス名の末尾に" -"(スペース+ハイフン)を追記します。
日本語化
このままでは日本語の入力やら表示やらできないので一通り設定します。
ロケール、文字コード設定
Windowsの文字コードはデフォルトでSJISなのでそれに合わせます。
CygwinだとUTF-8設定で表示できたはずだけどMinGWだとダメでした。なんか設定足りない気がしないでもないけどまあSJISにしておきます。
右クリックから「Options」で設定画面を表示。
「Text」にてLocaleを「ja_JP」、Character setを「SJIS」に設定します。
lsコマンド
lsコマンドの出力でファイル名の日本語部分が文字化けします。
lsコマンドのオプション"--show-control-chars"を追加で改善できます。が、毎回打つのは面倒なのでalias使ってデフォルトでオプション指定できるようにします。
~/.profileを作成して以下を追記。
alias ls='ls -F --color=auto --show-control-chars' alias ll='ls -l' alias la='ls -a'
ついでに-Fとか色指定とかも追加したり、llとかlaも登録しました。
日本語入力
シェル上で日本語出力ができないので設定値を変更します。
このへんの設定は/etc/inputrc.default で行っているため、~/.inputrcを作成して設定を上書きします。
# disable/enable 8bit input set meta-flag on set input-meta on set output-meta on set convert-meta off
output-metaをoff->on、convert-metaをon->offに変更しました。
※これは8bitの文字コードを通すための設定で、マルチバイト文字単位での編集ができないみたいです。
Backspaceで日本語削除すると1byteずつ削除になって文字化けしたり、使ってると何かと文字化けします。
使ってて割と使いづらいとかあれば何かしら対応したいと思います。
Vimの日本語化
シェルからファイル編集とかたまに使いたくなるので、一緒に変更しておきます。
~/.vimrcを作成して以下を記述します。
set enc=japan
カスタマイズ
設定画面から自分用に設定します。
Locks
Transparencyを「Med」に設定してウィンドウを透過。
Cursorを「Block」に変更。
Text
FontをMSゴシック, 10-pointに設定。
LocaleとCharacter setは先の日本語化で設定した通り。
こうなりました。
まとめ
基礎の基礎みたいな部分の環境構築ですが、ひとまずシェルを使えるようになりました。
取り急ぎ使いたいのはgitとかtigとかですが、他にもいろいろ便利なものがあったら入れてみたいと思います。
おしまい。