プレゼンテーションを作ってて、綺麗にsyntax-highlightingさせたい!という需要は高いはず
Pygmentsを使う
Pygmentsという、syntax-highlightingを簡単に生成できるPython製のライブラリがあるのですが、それを使うと簡単に生成できる
Pygmentsのインストール
pip install pygments
or
easy_install pygments
pygmentizeを使ってハイライト
Pygmentsには、pygmentize
というCLIが付属しているので、それを使ってやると、shellから簡単に装飾できる。
Pygments — Documentation — Command Line Interface
Keynoteに貼り付けるためには、リッチテキストで書き出してやれば良い
pygmentize -f rtf my/beautiful/code.py | pbcopy
必要に応じて-l
オプションでLexerとして、言語を指定できる。通常は指定しなくても拡張子から自動判別してくれるっぽい。
対応言語はこちら
Keynoteに貼り付ける
上記のコマンドを実行すると、すでにクリップボードにハイライトされたソースコードが格納してあるので、あとはKeynoteにペーストするだけ。
美しい。
適宜、文字サイズや背景色を変更してください。
ちなみに
クリップボードにあるコピーしたスニペットをそのままハイライトさせたい場合は、pbpaste
から流し込んでやるだけで良くて、さらにお手軽です
pbpaste | pygmentize -f rtf -l python | pbcopy