Syntax Coloring of Source Code
Trac supports language-specific syntax highlighting of source code in [wiki:WikiFormatting wiki formatted] text and the [wiki:TracBrowser repository browser].
To do this, Trac uses external libraries with support for a great number of programming languages.
Currently Trac supports syntax coloring using one or more of the following packages:
To activate syntax coloring, simply install either one (or more) of these packages. No additional configuration is required, however to modify the colors, have a look at trac/htdocs/css/code.css.
When in use, Trac will automatically prioritize SilverCity highlighting over Enscript if possible, (see note below).
If neither package is available, Trac will display the data as plain text.
'''Note:''' Enscript supports a greater number of languages, however SilverCity is generally faster since it is a library and isn't executed in an external process.
About SilverCity
SilverCity uses the lexer from [http://www.scintilla.org/ Scintilla]. Scintilla supports more languages than SilverCity implements. If you want to add a language to SilverCity supported by Scintilla, it's not very difficult. See [http://projects.edgewall.com/trac/wiki/SilverCityAddLanguage SilverCityAddLanguage] for some information how.
Syntax Coloring Support
|| || SilverCity || Enscript || || Ada || || X || || Asm || || X || || * ASP || X || X || || * C || X || X || || * C# || || X(2) || || * C++ || X || X || || * Java || || X || || Awk || || X || || CSS || X || || || Diff || || X || || Eiffel || || X || || Elisp || || X || || Fortran || || X || || Haskell || || X || || HTML || X || X || || IDL || || X || || Javascript || X || X || || m4 || || X || || Makefile || || X || || Matlab || || X || || Objective-C|| || X || || Pascal || || X || || * Perl || X || X || || * PHP || X || X || || PSP || X || || || Pyrex || || X || || * Python || X || X || || * Ruby || X || X (1) || || Scheme || || X || || Shell || || X || || SQL || X || X || || Troff || || X || || TCL || || X || || Tex || || X || || Verilog || || X || || VHDL || || X || || Visual Basic |||| X || || VRML || || X || || XML || X || ||
''(*) Supported as inline code blocks in [wiki:WikiFormatting Wiki text] using WikiProcessors.''
''(1) Ruby highlighting is not included in the Enscript distribution. Highlighting rules for Ruby can be obtained from: http://neugierig.org/software/ruby/
''(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
Extra Software
- GNU Enscript -- http://directory.fsf.org/GNU/enscript.html
- GNU Enscript for Windows -- http://gnuwin32.sourceforge.net/packages/enscript.htm
- SilverCity -- http://silvercity.sf.net/
See also: WikiProcessors, WikiFormatting, TracWiki, TracBrowser
Return to the FrontPage | Edit TracSyntaxColoring | Title List
