LoginSignup
11
11

More than 5 years have passed since last update.

Bash on Ubuntu on Windowsで256colorする

Last updated at Posted at 2016-08-20

2016/09/29 追記:
MinttyでBoUoWできるwslttywsl-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を再起動する以外の解決策は見つかっていません。

$TERMxterm-256colorにする

Terminatorは何故か$TERMxtermにしてしまう(バグらしい?)ので、この辺を参考に

[[ $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を指定して完成。

できあがったもの

terminator.png

ちゃんと256colorできています。最初にエラーダイアログが出るのは相変わらずですが。

vim.png

日本語の表示も問題なし。入力は相変わらずできないけど。

問題点

いろいろ試しましたが、結局裏でWARNINGを吐き続けているBoUoWのウィンドウは出しておかなければいけないっぽいのが悩みどころ。どうにかして表示させない方法は無いかしら。

何かもっと良いやり方があったら教えて下さい。

あと日本語入力できるやり方があったら教えて下さい。


  1. sshサーバーを立ててMinttyからログインする方法とかもありますし、今後公式に対応される可能性も高いです。 

11
11
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
11
11