2016/09/29 追記:
MinttyでBoUoWできるwslttyやwsl-terminalのが最高に便利です
2016/09/24 追記:
公式が対応してくれるようなのでもう要らないと思います
Bash on Ubuntu on Windowsで遊んでいるけど、Linuxで遊ぶのになして未だに16色しかないコマンドプロンプトを使わにゃならんのじゃという気持ちに包まれたので、BoUoWで256colorする方法を模索しました。日本語もちゃんと表示できないし。
Windowsのシェルを通している限り16色からは抜け出せないと思ったので、X serverが使えるならもうX serverを立ててLinuxのターミナルエミュレータを使う以外無いんじゃないか1と思い立った結果。
VcXsrvのインストール
Windowsで動くX serverです。いくつか試しましたがこれが一番シンプルで安定感ありました。
- MobaXterm: Xサーバーを立ち上げるのに常にフォアグラウンドで起動させていないといけない(通知領域とかに格納できない)
- Xming: ウィンドウのリサイズが謎の挙動をする(ウィンドウを広げるためにドラッグして離すとウィンドウがみょーんと縮む)
僕の誤解が含まれている可能性が多分にありますが、VcXsrvなら誤解する要素も無く起動できたのでおすすめしておきます。
インストールはお好きな方法でどうぞ。僕はChocolateyを使いました。
Terminatorのインストール
ターミナルエミュレータ。いくつか試しましたが、一番すんなりと良い感じに動いたのがこちらでした。タブやウィンドウ分割も使えるし、GUIで設定とかもできるし。
2016/08/26追記: lxterminalの方がもっと良い感じに動きました。依存ライブラリも少ないのでこちらの方が良いと思います。また、xtermの設定に慣れてるならそれが一番依存が少なくて良いと思います。
BoUoW側で
sudo apt install terminator
ためしに起動
Windows側では普通にVcXsrvを起動。タスクトレイのアイコンにポインタを乗せるとマシン名:0.0
で動いているのが確認できると思うので、BoUoWを起動し、
$ export DISPLAY=localhost:0.0
$ terminator
を叩くとD-BUSがネーヨと怒られつつTerminatorが起動すると思います。エラーダイアログや裏でWARNINGを吐き続けているBoUoWの黙らせ方はわかりません。いろいろ試行錯誤した結果なので、もしまだ何か足りない物があったらごめんちょ。
かなり不安定で、しばしば固まってBoUoWの再起動すらできない状態に陥ることがあります。そうなったら今のところPCを再起動する以外の解決策は見つかっていません。
$TERM
をxterm-256color
にする
Terminatorは何故か$TERM
をxterm
にしてしまう(バグらしい?)ので、この辺を参考に
[[ $COLORTERM = gnome-terminal ]] && TERM=xterm-256color
を~/.bashrc
のいい感じの場所に書いておきます。
日本語フォントのインストール
各自お好みがあると思いますが僕はRictyを使っています。
普通にttfファイルを~/.local/share/fonts/
以下に置いてfc-cache
すればOKでした。
Material for Terminatorのインストール
別に必要は無いですが、個人的にPaperColorテーマが好きなのでインストールしました。
READMEに書いてあるとおりにconfig
を~/.config/terminator/config
にコピーするだけ。
Terminatorの設定
Terminatorのウィンドウを右クリックして「設定」からProfilesの設定でMaterial-darkのフォント等を指定し、もう一度右クリックからの「プロファイル」からMaterial-darkを指定して完成。
できあがったもの
ちゃんと256colorできています。最初にエラーダイアログが出るのは相変わらずですが。
日本語の表示も問題なし。入力は相変わらずできないけど。
問題点
いろいろ試しましたが、結局裏でWARNINGを吐き続けているBoUoWのウィンドウは出しておかなければいけないっぽいのが悩みどころ。どうにかして表示させない方法は無いかしら。
何かもっと良いやり方があったら教えて下さい。
あと日本語入力できるやり方があったら教えて下さい。
-
sshサーバーを立ててMinttyからログインする方法とかもありますし、今後公式に対応される可能性も高いです。 ↩