web-dev-qa-db-ja.com

HTMLでソースコードを強調表示する方法は?

WebサイトでC/C++/Java/C#などのソースコードを強調したい。

これどうやってするの?

ソースコードを強調するのはCPUを集中的に使用する仕事ですか?

25
Niyaz

これは、サーバー側またはクライアント側のいずれかで実行できます。それほどプロセッサを集中的に使用するわけではありませんが、クライアント側で(Javascriptを使用して)実行すると、顕著な遅延が発生します。ほとんどのクライアント側ソリューションは、GoogleCodeの構文強調表示エンジンを中心に展開しています。これは最も人気のあるもののようです: SyntaxHighlighter

サーバー側のソリューションは、特に新しい言語を定義し、それらを強調表示する方法(使用する色など)を構成する方法において、より柔軟になる傾向があります。私はGeSHiを使用しています。これは、Wordpress用の適度に優れたプラグインを備えたPHPソリューションです。Java用に構築されたライブラリもいくつかあり、VIM(通常はPerlモジュールをCPANからインストールする必要があります)。

要するに:あなたにはかなりの数の選択肢があります、あなたの基準は何ですか?要件を知らずに確実な推奨を行うことは困難です。

27
Daniel Spiewak

Pastebin.comGeSHi ( "Generic Syntax Highlighter")を使用します

Pastebinはトラフィックが多いので、変換の結果をキャッシュします。これにより、負荷が確実に軽減されます。

11
Paul Dixon

個人的には、オフラインツールが好きです。提供されたページごとに、またはさらに悪いことに、各ブラウザー(JSライブラリの場合)でコード(特に大きなもの)を何度も解析する意味がわかりません。これらのライブラリはしばしば遅れます(フォーマットされる前に生のソースが表示されることがよくあります)。

この仕事をするためのツールはたくさんありますが、いくつかは上で指摘しました。慎重に設定した色の選択を尊重するため、お気に入りのエディター(SciTE)のエクスポート機能を使用します... :-)そして、XML、PDF、RTF and LaTeXも。

6
PhiLho

google-code-prettify を使用します。設定が最も簡単で、すべてのCスタイル言語でうまく機能します。

5

Pygment は、HTML、RTF、ANSI(ターミナルスタイル)、またはLaTeXコードを生成するのに適したPythonライブラリです。 幅広い言語)をサポートします (C、C++、Lua、Erlang、...)そしてあなたはあなた自身の出力フォーマッターを書くことさえできます。

5
Stacker

jEdit を使用する場合は、 Code2HTML プラグインを使用することをお勧めします。

1
Javier

SyntaxHighligher on my blog を使用します。

0
Brad Wilson

次のようなツールで実行するだけです: http://www.gnu.org/software/src-highlite/

0
DJ Capelis

PHPを使用している場合は、 GeSHi を使用してさまざまな言語を強調表示できます。私は以前にそれを使用しました、そしてそれはかなりうまくいきます。簡単なグーグルで、 wordpress および drupal のGeSHiプラグインも見つかります。

一度にメガバイト単位で表示するつもりがない限り、強調表示をCPUに集中させることは考えません。それでも、CPUの負荷は最小限に抑えられ、主な問題はすべての転送速度になります。

0
Mark Embling