colorize is a lisp library for syntax highlighting supporting the following languages:
- Common Lisp,
:common-lisp
- Emacs Lisp,
:elisp
- Scheme,
:scheme
- Clojure,
:clojure
alpha - C,
:c
- C++,
:c++
- Java,
:java
- Python,
:python
- Erlang,
:erlang
- Haskell,
:haskell
- Objective-C,
:objective-c
- Diff,
:diff
- Webkit,
:webkit
You are strongly encouraged to use this library via Quicklisp. Simply start your lisp and run: (ql:quickload 'colorize)
.
The API has three main entry points:
- COLORIZE-FILE which takes a language keyword and input file and writes the result to an html file in the same directory. An alternate path for the output file may be provided as a third argument.
- COLORIZE-FILE-TO-STREAM takes a keyword indicating the language, the path of a file to color, and a stream to write the result to. By default, it writes a complete self-contained page but if the :wrap keyword is given nil it only writes the colorized code snippet.
- HTML-COLORIZATION takes a keyword indicating the language and a string of code and returns the colorized html.
In addition, the COLORING-TYPES function takes no arguments and returns a list of the supported coloring types as keywords. Finally, the variable COLORING-CSS returns suggested css code for highlighting the produced html.
That's all for now. And remember, patches welcome!