cat の出力をシンタックスハイライトさせる
という方法がないかなとぐぐってみたところ stackoverflow 先生が教えてくれました。
unix - Syntax highlighting/colorizing cat - Stack Overflow
I'd recommend pygmentize from the python package python-pygments. You may want to define the following handy alias (unless you use ccat from the ccrypt package).
これはよさそうなので使ってみます。
Pygments 2.0.2 : Python Package Index
ダウンロードファイルが .whl となっている。
よくわからないのでぐぐってみたところ、egg に変わるパッケージとのことです。
Python: Wheel でパッケージを配布する | CUBE SUGAR STORAGE
手順にしたがってインストールしてみます。
なお、今回は Pygments-2.0.2-py2-none-any.whl を mac (yosemite) にインストールします。
$ sudo pip install wheel $ pip install ~/Downloads/Pygments-2.0.2-py2-none-any.whl $ pip list Pygments (2.0.2)
無事インストールできたようです。
と、思ったら普通に pip でインストールできるのか・・・公式の左側に書いてあるのを見落としていました。
$ sudo pip install Pygments
また、トップページ下部にある Try it out ! で試すことができます。
対応言語が多くてすごい!!!
で、使い方はいたって簡単で引数にファイルを与えるだけです。
$ pygmentize ファイル名
ドキュメントによるとフォーマットを指定したり色々とオプションがあるようです。
ついでに .bashrc で alias を書いてみます。
alias cat='pygmentize'
cat に色がつきました!!!!
ただし、csv を表示させようとするとエラーが出ます。
stackoverflow 先生にあるように -g をつけてみると色はつきませんが、エラーもでなくなりました。
alias cat='pygmentize -g'
一応 cat ではなく pcat とかそんな名前で alias を組み直して使うことにしようかなと思います。
追記
すごい!!!!!
PygmentsでSyntax Highlightされたcatとlessを手に入れる ::ハブろぐ
見慣れた感じのハイライトになりました。
alias c='pygmentize -O style=monokai -f console256 -g'