I'd like to typeset some Julia code, syntax highlighting and all, with the listings
package. For information, the Julia language is a strong contender for MATLAB, and is free and open-source.
However, listings
doesn't come with a language definition for Julia. I've found a Colorer specification for the language here. How can I adapt it in order to properly highlight Julia code with the listings
package?
For illustration purposes, here is an MWE with some a Julia code sample (adapted from http://julialang.org) embedded in an lstlisting
environment:
\documentclass{article}
\usepackage[T1]{fontenc}
\usepackage{beramono}
\usepackage{listings}
\lstset{basicstyle=\ttfamily}
\begin{document}
\begin{lstlisting}
#= This is a code sample for the Julia language
(adapted from http://julialang.org) =#
function mandel(z)
c = z
maxiter = 80
for n = 1:maxiter
if abs(z) > 2
return n-1
end
z = z^2 + c
end
return maxiter
end
function helloworld()
println("Hello, World!") # Bye bye, MATLAB!
end
function randmatstat(t)
n = 5
v = zeros(t)
w = zeros(t)
for i = 1:t
a = randn(n,n)
b = randn(n,n)
c = randn(n,n)
d = randn(n,n)
P = [a b c d]
Q = [a b; c d]
v[i] = trace((P.'*P)^4)
w[i] = trace((Q.'*Q)^4)
end
std(v)/mean(v), std(w)/mean(w)
end
\end{lstlisting}
\end{document}
Best Answer
You'll find a
listings
language definition for the Julia language in the code below.