Top Description Constructors Methods
org.jabref.latexconv

public final Class LatexConv

extends Object
Class Inheritance
Imports
java.io.IOException, java.text.Normalizer, org.jabref.latexconv.internal.HtmlEmitter, .SnuggleSupport, .TokenWalker, .UnicodeEmitter, .UnicodeToLatexConverter, uk.ac.ed.ph.snuggletex.SnuggleInput, .SnuggleSession

Converts LaTeX markup to Unicode plain text or minimal HTML, and Unicode text back to LaTeX.

All conversions are total: they never throw on malformed input and never return null. When input cannot be converted, the NFC-normalized input is returned unchanged.

Constructor Summary

AccessConstructor and Description
private

Method Summary

Modifier and TypeMethod and Description
private static String
convert(String latex, TokenWalker walker)

private static String
escapeBareComments(String latex)

Bibliography fields never carry intentional LaTeX comments, but real-world titles do contain bare % ("History%20Textbook"), which would swallow the rest of the line as a comment.

public static String
toHtml(String latex)

Converts LaTeX markup to a minimal HTML fragment using ConversionOptions#defaults().

public static String
toHtml(String latex, ConversionOptions options)

Converts LaTeX markup to a minimal HTML fragment: \emph{a} → <em>a</em>, x\textsubscript{i} → x<sub>i</sub>, text &<>-escaped.

public static String
toLatex(String unicodeText)

Encodes Unicode plain text as LaTeX: Montaña → accent-command form, π → $\pi$, runs of Unicode super-/subscript characters → one merged \textsuperscript{...}/\textsubscript{...}.

public static String
toUnicode(String latex)

Converts LaTeX markup to Unicode plain text using ConversionOptions#defaults().

public static String
toUnicode(String latex, ConversionOptions options)

Converts LaTeX markup to Unicode plain text: Monta\~{n}a → Montaña, $\pi$ → π, 1\textsuperscript{st} → 1ˢᵗ.

Inherited from java.lang.Object:
cloneequalsfinalizegetClasshashCodenotifynotifyAlltoStringwaitwaitwait

Constructor Detail

LatexConvback to summary
private LatexConv()

Method Detail

convertback to summary
private static String convert(String latex, TokenWalker walker)
escapeBareCommentsback to summary
private static String escapeBareComments(String latex)

Bibliography fields never carry intentional LaTeX comments, but real-world titles do contain bare % ("History%20Textbook"), which would swallow the rest of the line as a comment. Escape it so it reads as a literal percent sign; \% stays untouched.

toHtmlback to summary
public static String toHtml(String latex)

Converts LaTeX markup to a minimal HTML fragment using ConversionOptions#defaults().

toHtmlback to summary
public static String toHtml(String latex, ConversionOptions options)

Converts LaTeX markup to a minimal HTML fragment: \emph{a} → <em>a</em>, x\textsubscript{i} → x<sub>i</sub>, text &<>-escaped. The fragment renders directly in html-to-node. Under ConversionOptions.MathMode#PASSTHROUGH, math spans stay verbatim and unescaped for a downstream math renderer.

toLatexback to summary
public static String toLatex(String unicodeText)

Encodes Unicode plain text as LaTeX: Montaña → accent-command form, π → $\pi$, runs of Unicode super-/subscript characters → one merged \textsuperscript{...}/\textsubscript{...}. Characters without a mapping stay as-is.

toUnicodeback to summary
public static String toUnicode(String latex)

Converts LaTeX markup to Unicode plain text using ConversionOptions#defaults().

toUnicodeback to summary
public static String toUnicode(String latex, ConversionOptions options)

Converts LaTeX markup to Unicode plain text: Monta\~{n}a → Montaña, $\pi$ → π, 1\textsuperscript{st} → 1ˢᵗ.