初期バージョン から バージョン 1 における更新: TracSyntaxColoring

差分発生行の前後
無視リスト:
更新日時:
2011/12/16 18:40:18 (13 年 前)
更新者:
trac
コメント:

--

凡例:

変更なし
追加
削除
変更
  • TracSyntaxColoring

    v1 v1  
     1= ソースコードのシンタックスカラーリング = #SyntaxColoringofSourceCode 
     2Trac は [wiki:WikiFormatting Wiki形式] のテキストと [wiki:TracBrowser リポジトリブラウザ] での、ソースコードの言語特有のシンタックスハイライトに対応しています。 
     3 
     4色付けを行うために、 Trac はとても多くのプログラミング言語に対応している外部のライブラリを使用しています。 
     5 
     6現在、 Trac は以下にあげる 1 つ以上のパッケージを使用して、シンタックスハイライトを実現しています: 
     7 
     8 * [http://www.codento.com/people/mtr/genscript/ GNU Enscript]  
     9 * [http://silvercity.sourceforge.net/ SilverCity] 
     10 * [http://pygments.pocoo.org/ Pygments] (0.10 では対応したプラグインが必要です。 [#AboutPygments 以下] を参照してください。) 
     11 
     12シンタックスハイライトを有効にするためには、ただこれらのパッケージをインストールするだけです。追加のコンフィグレーションは必要ありませんが、カラーリングを修正するためには、 `trac/htdocs/css/code.css` を参照してください。 
     13 
     14Trac がインストールされたライブラリを検出できない場合は、 Trac のロギングを使用してみてください。実際に Trac から !SilverCity 0.9.6 が壊れているように見えます。 0.9.7 か 0.9.5 を使用して下さい。 http://trac.edgewall.org/wiki/TracFaq#why-is-my-css-code-not-being-highlighted-even-though-i-have-silvercity-installed 
     15 
     16シンタックスハイライトを使用するとき、可能な限り Trac は自動的に Enscript よりも !SilverCity のハイライトを優先します (下の注を参照のこと)。 
     17 
     18どちらのパッケージも使用できないときは、 Trac はプレーンテキストでデータを表示します。 
     19 
     20'''Note:''' Enscript はとても多くのプログラミング言語に対応しますが、 !SilverCity はライブラリであり、外部プロセスで実行されないので、 Enscript よりも処理が速いです。 
     21 
     22=== !SilverCity について === #AboutSilverCity 
     23!SilverCity は [http://www.scintilla.org/ Scintilla] の構文解析エンジンを使用します。 Scintilla は !SilverCity が実装しているよりもより多くのプログラミング言語に対応しています。もし、 !SilverCity に Scintilla が対応しているプログラミング言語を追加したいならば、そんなに難しいことではありません。どのようにすればいいのかは、 [http://trac.edgewall.org/wiki/SilverCityAddLanguage SilverCityAddLanguage] を参照してください。 
     24 
     25=== Pygments について === #AboutPygments 
     26 
     27Trac 0.11 からは [http://pygments.org/ Pygments] が新しいデフォルトのハイライトライブラリになります。 Pygments は Python で実装され、非常に高速で、拡張しやすく、 [http://pygments.org/docs/ 良いドキュメント] があるハイライトライブラリです。 Enscript や Scintilla ほど多くの言語をサポートしませんが総合的な出力品質は、はるかに良いです。 
     28 
     29Pygments を Trac 0.11 で使用するためには、 Pygments 0.6 以上をインストールしなければなりません (また [mimeviewer] 配下にオプション pygments_default_style = colorful を追加してください)。 Trac 0.10 でも Pygments を使用したいのであれば、 trac hacks から [http://trac-hacks.org/wiki/TracPygmentsPlugin TracPygmentsPlugin] をインストールしなければなりません。なんらかのバグを発見した場合は  [http://dev.pocoo.org/projects/pygments/ Pygments の Trac] にチケットを登録してください。 
     30 
     31Pygments の構文解析エンジンが対応するリストは毎週のように更新されています。以下のリストが古い可能性は非常に高いです。 正確には [http://pygments.org/docs/lexers/ supported lexers] のページを参照してください。 
     32 
     33 
     34== 対応しているシンタックスハイライト == #SyntaxColoringSupport 
     35 
     36|| || !SilverCity || Enscript || Pygments || 
     37|| Ada      ||   || X || || 
     38|| Asm      ||   || X || || 
     39|| Apache Conf (htaccess)) || || || X || 
     40|| * ASP    || X || X || || 
     41|| * C      || X || X || X || 
     42|| * C#     ||   || X(2) || X || 
     43|| * C++    || X || X || X || 
     44|| * Java   || X(4)|| X || X || 
     45|| Awk      ||   || X || || 
     46|| Boo || || || X || 
     47|| CSS      || X ||   || X || 
     48|| Python Doctests || || || X || 
     49|| Diff     ||   || X || X || 
     50|| Eiffel   ||   || X || || 
     51|| Elisp    ||   || X || || 
     52|| Fortran  ||   || X(3) || || 
     53|| Haskell  ||   || X || X || 
     54|| Genshi || || || X || 
     55|| HTML     || X || X || X || 
     56|| IDL      ||   || X || || 
     57|| INI || || || X || 
     58|| Javascript || X || X || X || 
     59|| Lua || || || X || 
     60|| m4       ||   || X || || 
     61|| Makefile ||   || X || X || 
     62|| Mako || || || X || 
     63|| Matlab   ||   || X (5) || || 
     64|| Mygthy || || || X || 
     65|| Objective-C|| || X || || 
     66|| OCaml    ||   ||   || X || 
     67|| Pascal   ||   || X || X || 
     68|| * Perl   || X || X || X || 
     69|| * PHP    || X ||   || X || 
     70|| PSP      || X ||   || || 
     71|| Pyrex    ||   || X || || 
     72|| * Python || X || X || X || 
     73|| * Ruby   || X || X (1) || X || 
     74|| Scheme   ||   || X || X || 
     75|| Shell    ||   || X || X || 
     76|| Smarty || || || X || 
     77|| SQL      || X || X || X || 
     78|| Troff    ||   || X || X || 
     79|| TCL      ||   || X || || 
     80|| Tex      ||   || X || X || 
     81|| Verilog  || X(4) || X || || 
     82|| VHDL     ||   || X || || 
     83|| Visual Basic |||| X || X || 
     84|| VRML     ||   || X || || 
     85|| XML      || X ||  || X || 
     86 
     87''(*) [wiki:WikiFormatting WikiFormatting] の WikiProcessors でシンタックスハイライトが対応しています。'' 
     88 
     89''(1) Enscript では Ruby のハイライトは含まれていません。 Ruby のハイライトルールは [http://neugierig.org/software/ruby/] から入手することができます。'' 
     90 
     91''(2) C# のハイライトは Enscript の配布物には含まれていません。 C# 用のハイライトのルールは http://wiki.hasno.info/index.php/Csharp.st より入手可能です。 
     92 
     93''(3) Fortran: Enscript ではパッケージ化されている固定のソース形式のみをサポートしています。 Fortran 90x/2003 のハイライトルールは http://wiki.hasno.info/index.php/F90.st から入手することができます。 
     94 
     95''(4) 2006 年 11 月 23 日にリリースされた Silvercity 0.9.7 以来更新されていません。 
     96 
     97''(5) デフォルトで `.m` ファイルは Objective-C ファイルとして扱われます。 MATLAB ファイルとして `.m` ファイルを扱うには、 [wiki:TracIni#mimeviewer-section "trac.ini の [mimeviewer] セクション"]の "mime_map" に  "text/x-matlab:m" を追加してください。 
     98 
     99== その他のソフトウェア == #ExtraSoftware 
     100 * GNU Enscript -- http://directory.fsf.org/GNU/enscript.html 
     101 * GNU Enscript for Windows -- http://gnuwin32.sourceforge.net/packages/enscript.htm 
     102 * !SilverCity -- http://silvercity.sf.net/ 
     103 * Pygments -- http://pygments.org/ 
     104 
     105---- 
     106See also: WikiProcessors, WikiFormatting, TracWiki, TracBrowser 
     107