やってみる

アウトプットすべく己を導くためのブログ。その試行錯誤すらたれ流す。

シンタックス・ハイライター一覧(highlight, source-highlight, Pygments, highlight.js)

 ソースコードファイルから装飾したHTMLを作成してシンタックス・ハイライトするツール等。

一覧

シンタックス・ハイライタ パッケージ管理 コマンド名 出力形式
highlight apt highlight HTML
source-highlight apt source-highlight ANSIエスケープシーケンス
Pygments pip pygmentize HTML
highlight.js npm HTML

どれを使う?

 highlight。静的HTML生成やターミナル等で使う。HTML内のJSで動的に変化させたいならhighlight.js。

  • highlightは高速で拡張性も高い。githubから最新の設定ファイルを取得できる(source-highlightは不可)
  • source-highlightは専用シェルスクリプトによりlessコマンドをハイライトできる(highlightでもできると思うが未確認)
  • Pygmentsは遅いし名前もわかりにくい
  • highlight.jsはJavaScriptで利用するときに使う

 ところでhighlightANSIエスケープシーケンスに対応しているっぽいのだが。highlight -O ansiまたはhighlight -O xterm256。source-highlightいる? highlightとhighlight.jsさえあればいい気がする。

highlight

source-highlight

Pygments

highlight.js