The hardware and bandwidth for this mirror is donated by dogado GmbH, the Webhosting and Full Service-Cloud Provider. Check out our Wordpress Tutorial.
If you wish to report a bug, or if you are interested in having us mirror your free-software or open-source project, please feel free to contact us at mirror[@]dogado.de.

latexSymb

Transform complex LaTex mathematical expressions into readable, composable R code. Instead of wrestling with backslashes and braces, express your mathematics naturally using familiar R syntax.

✨ Why latexSymb?

Before (Raw LaTex) 😓

\frac{d}{dt} \left \langle V,W \right \rangle = \left \langle \frac{DV}{dt}, W \right \rangle + \left \langle V, \frac{DW}{dt} \right \rangle

After (latexSymb) 🎉

vf1 <- lsymb("V")
vf2 <- lsymb("W")
inner <- function(x, y) ang(lsymb(x, ",", y))
cov.der <- function(x) lsymb("D", x) / "dt"
ddt <- function(x) lsymb("d", x) / "dt"

ddt(inner(vf1, vf2)) *eq* inner(cov.der(vf1), vf2) + inner(vf1, cov.der(vf2))

🚀 Key Features

1. Natural Mathematical Syntax

# Division automatically becomes \frac
x / y               # → \frac{x}{y}

# Powers become superscripts
x^2                 # → x^{2}

# Subscripts with under()
x |> under(i)       # → x_{i}

2. Automatic Delimiter Sizing

No more \left and \right headaches!

pths(x / y)         # Parentheses with auto-sizing
ang(x, y)           # Angle brackets ⟨x,y⟩
sqbr(x + y)         # Square brackets [x+y]
br(condition)       # Braces {condition}

3. Composable Mathematical Functions

Build complex expressions from simple, reusable parts:

# Define semantic functions
exp_val <- function(x) lsymb("\\mathbb{E}") * sqbr(x)
sq <- function(x) pths(x)^2
abs <- function(x) lsymb("\\abs{", x, "}")

# Compose naturally
exp_val(sq(abs(x) - y))     # → 𝔼[(|x| - y)²]

4. Multi-line Equations Made Simple

proof_steps <- list(
  ruler * dist(x, y) * leq * dist(x, z) + dist(z, y) * endl,
  ruler * thus * dist(x, y) - dist(x, z) * leq * dist(z, y)
) |>
  lenv("align*", rows = _)

5. Common Symbols Pre-loaded

data(common)
attach(common)
# Instantly use: alpha, beta, mu, sigma, eq, leq, sum, int, infty...

📦 Installation

Released version from CRAN:

install.packages("latexSymb")

Development version from GitHub:

# install.packages("devtools")
devtools::install_github("nicoesve/latexSymb")

🎓 Quick Example: Central Limit Theorem

library(latexSymb)
data(common)
attach(common)

# Define components
sample_mean <- lsymb("\\bar{x}")
sqrt <- function(x) lsymb("\\sqrt{", x, "}")
conv_distr <- lsymb("\\overset{d}{\\rightarrow}")

# Express the theorem
clt <- sqrt(n) * (pths(sample_mean - mu) / si) * conv_distr * lsymb("N(0,1)")

📚 Learn More

🎯 Perfect For

Stop fighting with LaTex syntax. Start expressing your mathematics naturally with latexSymb!

These binaries (installable software) and packages are in development.
They may not be fully stable and should be used with caution. We make no claims about them.
Health stats visible at Monitor.