LoginSignup
11
7

More than 5 years have passed since last update.

bash標準出力をpygmentizeでシンタックスハイライトする

Posted at

動機

  • xmlが出力されるときにシンタックスハイライトしたい
  • Vimで読めというのは無しで
  • sedスクリプトを書けというのも無しで

Pygments、Pygmentsを使う

  • Python製のシンタックスハイライトライブラリ
  • 非常に多くの言語に対応している
  • 静的サイトジェネレータでシンタックスハイライトを実現するのに使われているのをよく見る
  • ターミナル用のシンタックスハイライトコマンドpygmentizeが含まれている

Pygmentsをインストール

  • anyenv、anyenvを使う
  • バージョンをいくつにしたらいいかわからなかったので、HomebrewのPythonパッケージのバージョンに合わせた
$ anyenv install pyenv
$ exec $SHELL -l # シェルを再起動してpyenvを有効化
$ pyenv install 2.7.9
$ pyenv global 2.7.9 # インストールしたバージョンを優先使用
$ pip install Pygments

$ type pygmentize
pygmentize is /Users/catfist/.anyenv/envs/pyenv/shims/pygmentize

パイプで渡してシンタックスハイライト

  • こんな感じで使える。
$ cat sample.xml | pygmentize
  • きれい
  • みやすい
  • らくちん
11
7
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
7