ファイルの構文強調表示を表示するにはどうすればよいですか?


42

catソースファイルで使用されたときに構文の強調表示されたコード行を出力するバリアントはありますか?

アイデア:多分vi[m]または別のエディターに、上記のファイルの構文強調表示されたコンテンツをダンプしてstdoutすぐに終了するように依頼できますか?

回答:


48

ファイルを渡すと、ファイル名からタイプを検出し、適切に強調表示しようとします。pygmentize-f terminal


それは彼らのロゴのスタートレック:ディープスペースナインフォントですか?それが素晴らしいなら。
アン

2
python-pygmentsDebianでパッケージとして入手可能。
-enzotib

6
alias pcat="pygmentize -f terminal256 -O style=native -g"は素晴らしい解決策であることがわかった
ミカエルÖhman12年

1
で利用可能pip install pygments
クレイグ

1
実際にはそうでなければなりませんcat code.extension | pygmentize -f terminal -l extension
フィアットヤフ

13

ソース・ハイライトパッケージはANSIエスケープシーケンスとハイライトesc.outlang出力言語定義、同梱されています。

便利なラッパーsrc-hilite-lesspipe.shもパッケージに含まれているため、ターミナルで強調表示された出力を表示するだけsrc-hilite-lesspipe.sh source.fileです。

実際src-hilite-lesspipe.shの主な理由は、source-highlightwith の使用の自動化を支援することですless。設定するだけです:

export LESSOPEN="| /path/to/src-hilite-lesspipe.sh %s"
export LESS=' -R '

その後、いずれもless source.file強調表示されたソースコードを表示します。(未知の言語のコードは変更されずに通過します。また、リダイレクトされたコンテンツの場合、強調表示もスキップされless < source.fileます。


いいね、この答えを書くのに時間を割いてくれてありがとう
パオロ


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.