Project Name | Stars | Downloads | Repos Using This | Packages Using This | Most Recent Commit | Total Releases | Latest Release | Open Issues | License | Language |
---|---|---|---|---|---|---|---|---|---|---|
Shiki | 5,411 | 29 | 87 | 7 hours ago | 44 | August 13, 2022 | 34 | mit | TypeScript | |
A beautiful Syntax Highlighter. | ||||||||||
Minted | 1,582 | 6 months ago | 68 | TeX | ||||||
minted is a LaTeX package that provides syntax highlighting using the Pygments library. Highlighted source code can be customized using fancyvrb. | ||||||||||
Franklin.jl | 841 | 19 days ago | 165 | mit | Julia | |||||
(yet another) static site generator. Simple, customisable, fast, maths with KaTeX, code evaluation, optional pre-rendering, in Julia. | ||||||||||
Python Latex Highlighting | 216 | 4 years ago | 8 | bsd-3-clause | TeX | |||||
LaTeX style for Python highlighting | ||||||||||
Highlight | 180 | 5 years ago | 3 | gpl-3.0 | C++ | |||||
Source code to formatted text converter | ||||||||||
Idea Latex | 139 | 6 years ago | 17 | mit | Java | |||||
LaTeX plugin for IntelliJ IDEA | ||||||||||
Magic Latex Buffer | 134 | 2 years ago | 15 | Emacs Lisp | ||||||
Magical syntax highlighting for LaTeX-mode buffers | ||||||||||
Jinjahtml Vscode | 95 | 4 months ago | 19 | mit | JavaScript | |||||
Syntax highlighting for jinja(2) html templates in vscode | ||||||||||
Solidity Latex Highlighting | 85 | 6 months ago | 5 | mit | TeX | |||||
Include nice-looking Solidity examples into LaTeX files | ||||||||||
Language Latex | 80 | 3 years ago | 38 | other | CoffeeScript | |||||
Syntax highlighting for LaTeX for Atom. |
Currently, I am writing my bachelor thesis with Kotlin and need to document some code in LaTeX. The lstpackage does not support kotlin syntax highlighting by default, so I decided to create a language template for it.
Check out this example of the default style or download the whole document.
Feel free to add more keywords or new styles!
First of all you have to copy the language definition into your latex document:
\usepackage[dvipsnames]{xcolor}
\usepackage{listings}
\lstdefinelanguage{Kotlin}{
comment=[l]{//},
commentstyle={\color{gray}\ttfamily},
emph={filter, first, firstOrNull, forEach, lazy, map, mapNotNull, println},
emphstyle={\color{OrangeRed}},
identifierstyle=\color{black},
keywords={!in, !is, abstract, actual, annotation, as, as?, break, by, catch, class, companion, const, constructor, continue, crossinline, data, delegate, do, dynamic, else, enum, expect, external, false, field, file, final, finally, for, fun, get, if, import, in, infix, init, inline, inner, interface, internal, is, lateinit, noinline, null, object, open, operator, out, override, package, param, private, property, protected, public, receiveris, reified, return, [email protected], sealed, set, setparam, super, suspend, tailrec, this, throw, true, try, typealias, typeof, val, var, vararg, when, where, while},
keywordstyle={\color{NavyBlue}\bfseries},
morecomment=[s]{/*}{*/},
morestring=[b]",
morestring=[s]{"""*}{*"""},
ndkeywords={@Deprecated, @JvmField, @JvmName, @JvmOverloads, @JvmStatic, @JvmSynthetic, Array, Byte, Double, Float, Int, Integer, Iterable, Long, Runnable, Short, String, Any, Unit, Nothing},
ndkeywordstyle={\color{BurntOrange}\bfseries},
sensitive=true,
stringstyle={\color{ForestGreen}\ttfamily},
}
Then you have to set the language of your listing to Kotlin
:
\begin{lstlisting}[caption={Simple code listing.}, label={lst:example1}, language=Kotlin]
// this is a simple code listing:
println("hello kotlin from latex")
\end{lstlisting}
And finally your listing should look like this:
(The border is not part of the language definition. Check out the example.tex for this style.)
Feel free to add new or missing keywords and style enhancements. Just create a pull request. The github actions command automatically builds the example PDF and PNG and uploads it to the Example release.
Thanks to @ppizarror, @ice1000, @etwasanderes2