NYAGOSのプロンプトに色を付ける
わたしのコマンドプロンプト、ダサすぎ・・・!?
Windowsのコンソールをリッチにしたい
今までは、Cmder + msysgit で頑張っていたが、 なんかCmderアップデートしたら設定壊れちゃった(テヘペロ☆ミ)ので、新たに
を参考に環境構築した。
プロンプトに色を付ける
日本語マニュアル
nyagos/nyagos_ja.md at master · zetamatta/nyagos · GitHub
を読むと、
を使っているらしいので、このライブラリのReadme通りに設定してみると、色がつく。
例えば、自分の設定ファイルは、こうなっている。
set{ PROMPT="\x1b[42;30m[$P]\x1b[0m$_\x1b[43;30m$$\x1b[0m$s" }
\x1b[42;30m
で背景と文字色を指定[$P]
で[~/Documents/workspace]
を表示\x1b[0m
で色指定を元に戻す$_
で改行$$
で$
を表示
という感じ。
経緯
最初の記事の通りに設定すればだいたいうまくいくのだが、プロンプトに色を付ける方法がわからない。
MacとかLinuxとかなら、ANSIエスケープシーケンスなるものを利用すれば色がつくらしい。
Windowsのコマンドプロンプトでも、XPまでならちょっといじれば$E[31m
みたいにすれば色がつくようだ。
$E
がANSIエスケープシーケンスらしいのだが、Windows7では、ansiconとか、そういうアプリケーションを入れないと、色がつかないらしい。
Windows環境でRSpecなどの出力に色を付けるには - 萬由無事覚書
が、このansiconを入れてみると、Cmder(ConEmu)がエラーを吐く。(どんなエラーかメモるの忘れた)
改めて考えてみれば、Cmderに元々色がついてたんだからansicon相当の機能がすでに入っていると考えられる。
で、さんざん遠回りして、NYAGOS自身がANSIカラーを出力するライブラリを使っていることに気づいたということです。
うーんこの...