8 | | * [http://www.codento.com/people/mtr/genscript/ GNU Enscript] |
9 | | * [http://silvercity.sourceforge.net/ SilverCity] |
10 | | * [http://pygments.pocoo.org/ Pygments] (but needs a plugin for 0.10, see [#AboutPygments below]) |
| 12 | * '''[http://pygments.org/ Pygments]''', the preferred system, as it covers a wide range of programming languages and other structured texts and is actively supported. |
| 13 | * [http://www.codento.com/people/mtr/genscript/ GNU Enscript], commonly available on Unix, and has an [http://gnuwin32.sourceforge.net/packages/enscript.htm unsupported version] on Windows; use is deprecated. |
| 14 | * [http://silvercity.sourceforge.net/ SilverCity], legacy system, some versions can be problematic; use is deprecated. |
31 | | It's very likely that the list below is outdated because the list of supported pygments lexers is growing weekly. Just have a look at the page of [http://pygments.org/docs/lexers/ supported lexers] on the pygments webpage. |
| 34 | Similarly, a document with the mimetype `text/x-trac-wiki` is rendered using the Trac wiki formatter, unless the `trac.mimeview.api.WikiTextRenderer` component is disabled. |
| 35 | |
| 36 | HTML documents are directly rendered only if the `render_unsafe_html` settings are enabled in your TracIni file. Those settings are present in multiple sections, as there are different security concerns depending where the document comes from. If you want to ensure that an HTML document gets syntax highlighted and not rendered, use the `text/xml` mimetype. |
| 37 | |
| 38 | If a mimetype property such as `svn:mime-type` is set to `text/plain`, there is no coloring even if the file is of a known type, like `java`. |
| 39 | |
| 40 | === List of Languages Supported, by Highlighter #language-supported |
| 41 | |
| 42 | This list is only indicative. |
| 43 | |
| 44 | || ||= !SilverCity =||= Enscript =||= Pygments =|| |
| 45 | || Ada || || ✓ || || |
| 46 | || Asm || || ✓ || || |
| 47 | || Apache Conf || || || ✓ || |
| 48 | || ASP || ✓ || ✓ || || |
| 49 | || C || ✓ || ✓ || ✓ || |
| 50 | || C# || || ✓ ^[#a1 (1)]^ || ✓ || |
| 51 | || C++ || ✓ || ✓ || ✓ || |
| 52 | || CMake || ? || ? || ✓ || |
| 53 | || Java || ✓ ^[#a2 (2)]^ || ✓ || ✓ || |
| 54 | || Awk || || ✓ || || |
| 55 | || Boo || || || ✓ || |
| 56 | || CSS || ✓ || || ✓ || |
| 57 | || Python Doctests || || || ✓ || |
| 58 | || Diff || || ✓ || ✓ || |
| 59 | || Eiffel || || ✓ || || |
| 60 | || Elisp || || ✓ || || |
| 61 | || Fortran || || ✓ ^[#a1 (1)]^ || ✓ || |
| 62 | || Haskell || || ✓ || ✓ || |
| 63 | || Genshi || || || ✓ || |
| 64 | || HTML || ✓ || ✓ || ✓ || |
| 65 | || IDL || || ✓ || || |
| 66 | || INI || || || ✓ || |
| 67 | || Javascript || ✓ || ✓ || ✓ || |
| 68 | || Lua || || || ✓ || |
| 69 | || m4 || || ✓ || || |
| 70 | || Makefile || || ✓ || ✓ || |
| 71 | || Mako || || || ✓ || |
| 72 | || Matlab ^[#a3 (3)]^ || || ✓ || ✓ || |
| 73 | || Mygthy || || || ✓ || |
| 74 | || Objective-C || || ✓ || ✓ || |
| 75 | || OCaml || || || ✓ || |
| 76 | || Pascal || || ✓ || ✓ || |
| 77 | || Perl || ✓ || ✓ || ✓ || |
| 78 | || PHP || ✓ || || ✓ || |
| 79 | || PSP || ✓ || || || |
| 80 | || Pyrex || || ✓ || || |
| 81 | || Python || ✓ || ✓ || ✓ || |
| 82 | || Ruby || ✓ || ✓ ^[#a1 (1)]^ || ✓ || |
| 83 | || Scheme || || ✓ || ✓ || |
| 84 | || Shell || || ✓ || ✓ || |
| 85 | || Smarty || || || ✓ || |
| 86 | || SQL || ✓ || ✓ || ✓ || |
| 87 | || Troff || || ✓ || ✓ || |
| 88 | || TCL || || ✓ || || |
| 89 | || Tex || || ✓ || ✓ || |
| 90 | || Verilog || ✓ ^[#a2 (2)]^ || ✓ || || |
| 91 | || VHDL || || ✓ || || |
| 92 | || Visual Basic || || ✓ || ✓ || |
| 93 | || VRML || || ✓ || || |
| 94 | || XML || ✓ || || ✓ || |
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 || |
| 102 | ''[=#a2 (2)] since Silvercity 0.9.7 released on 2006-11-23. |
87 | | ''(*) Supported as inline code blocks in [wiki:WikiFormatting Wiki text] using WikiProcessors.'' |
88 | | |
89 | | ''(1) Ruby highlighting is not included in the Enscript distribution. Highlighting rules for Ruby can be obtained from: http://neugierig.org/software/ruby/ |
90 | | |
91 | | ''(2) C# highlighting is not included in the Enscript distribution. Highlighting rules for C# can be obtained from: http://wiki.hasno.info/index.php/Csharp.st |
92 | | |
93 | | ''(3) Fortran: as packaged, Enscript only supports the fixed source form. Highlighting rules for Fortran 90x/2003 can be obtained from: http://wiki.hasno.info/index.php/F90.st |
94 | | |
95 | | ''(4) since Silvercity 0.9.7 released on 2006-11-23 |
96 | | |
97 | | ''(5) By default `.m` files are considered Objective-C files. In order to treat `.m` files as MATLAB files, add "text/x-matlab:m" to the "mime_map" setting in the [wiki:TracIni#mimeviewer-section "[mimeviewer] section of trac.ini"]. |
98 | | |
99 | | == Extra Software == |
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 | ''[=#a3 (3)] By default `.m` files are considered Objective-C files. In order to treat `.m` files as MATLAB files, add "text/matlab:m" to the "mime_map" setting in the [wiki:TracIni#mimeviewer-section "[mimeviewer] section of trac.ini"]. |