回答:
StackOverflowはPrettifyライブラリを使用します。
最近、レインボーというものを開発しました。
主な設計目標は、コアライブラリを非常に小さくして、開発者が簡単に拡張できるようにすることでした。
http://rainbowco.deを参照してください。
rdf:type
が要素として使用され、いつ属性であるかを識別できる)。
SyntaxHighlighterはGitHubプロジェクトとして利用できます。
jQuery Syntax Highlighterは、GoogleのPrettifyをベースにした新しいものです-本当に本当に本当に人気のあるプレーンなJavaScriptシンタックスハイライターです。
それはのようなものをサポートcode
し、pre
同様にクラス名を使用することができ、ブロックをlanguage-javascript
我々はハイライトと同様に、ワードラップにそれをしたい示すために。他の多くのように未加工のビューを開かなくても、コードを通常どおり選択してコピーして貼り付けることができます。HTML5データ属性を使用するdata-sh
か、初期化時にオプションを指定することにより、さらにカスタマイズできます。定期的に更新される非常に安定した選択肢。
Lea Verou氏によるPrismについてはどうでしょう。
6月(2012)の彼女のブログ投稿発表から:
- 小さいです。コアは、わずか1.5KBに縮小およびgzipされています。
- それは信じられないほど拡張可能です。新しい言語を追加するのは簡単です(これは、最近のすべての構文強調表示機能で提供されています)だけでなく、既存の言語を拡張することもできます。
- 特定の場合にパフォーマンスを向上させるために、Webワーカーによる並列処理をサポートしています。
- Prism固有のマークアップを使用する必要はありません。Prism固有のクラス名でさえ使用する必要はありません。とにかく使用する必要がある標準のマークアップのみを使用してください。したがって、しばらく試してみて、気に入らなければ削除して、跡を残さないようにすることができます。
jQueryを使用している場合は、Chilliがあります。
http://code.google.com/p/jquery-chili-js/
あなたがしなければならないすべてはjquery-chili.jsとrecipes.jsを含み、そしてハイライトを行うことです
$("code").chili();
言語自体を理解する必要があります。
jQuery.Syntaxは、非常に高速で軽量な構文ハイライターです。構文ソースファイルの動的読み込みがあり、CSSまたはモードラインを使用して問題なく統合されます。
これは、ギャップを埋めるために特別に開発されました。つまり、高速でクリーンなクライアント側構文パーサーです。
ブラウザ内エディタで構文の強調表示を探している場合は、CodeMirrorを試してください。
私は議論の余地はありませんが、CMSまたはブログプラットフォームを使用している場合は、バックエンドの蛍光ペンを使用する方が明白な理由で優れていることを言及する価値があると思いました— Geshi(http://qbnz.com/highlighter/)興味がある場合。実際、バックエンドテクノロジーを介してHTMLコンテンツを解析するようにサーバーを設定することもできます。そのため、JS蛍光ペンはまったく必要ありません。(それらが追加する唯一の機能は、[swfを使用して]印刷/コピーする機能です。)
Web Resources Depotのこの記事には、コードを強調表示するための多くのオプションがリストされています。その一部はJavaScriptを使用しています。2009年5月4日に公開されました。