=====================
Use Pygments in Java
=====================
Thanks to `Jython `_ it is possible to use Pygments in
Java.
This page is a simple tutorial to get an idea of how this works. You can
then look at the `Jython documentation `_ for more
advanced uses.
Since version 1.5, Pygments is deployed on `Maven Central
`_ as a JAR, as is Jython
which makes it a lot easier to create a Java project.
Here is an example of a `Maven `_ ``pom.xml`` file for a
project running Pygments:
.. sourcecode:: xml
4.0.0
example
example
1.0-SNAPSHOT
org.python
jython-standalone
2.5.3
org.pygments
pygments
1.5
runtime
The following Java example:
.. sourcecode:: java
PythonInterpreter interpreter = new PythonInterpreter();
// Set a variable with the content you want to work with
interpreter.set("code", code);
// Simple use Pygments as you would in Python
interpreter.exec("from pygments import highlight\n"
+ "from pygments.lexers import PythonLexer\n"
+ "from pygments.formatters import HtmlFormatter\n"
+ "\nresult = highlight(code, PythonLexer(), HtmlFormatter())");
// Get the result that has been set in a variable
System.out.println(interpreter.get("result", String.class));
will print something like:
.. sourcecode:: html