Auto Math

approved

by Vladislav Sorokin

Auto-expands LaTeX snippets. External rules with live reload, Custom Rules Editor, and default math pack.

โ˜… 2 starsโ†“ 97 downloadsUpdated 1mo agoMIT
View on GitHub

๐Ÿ“ Auto Math for Obsidian

โœ๏ธ Write equations at the speed of thought โ€” automatic LaTeX snippet expansion for Obsidian.

Auto Math automatically expands LaTeX-style math snippets while you type in Obsidian.
It's like a mini LaTeX auto-completion engine โ€” lightweight, fast, and entirely local.


โœจ Features

  • ๐Ÿ”น Instant snippet expansion โ€“ type \frac, \sqrt, \sum, etc., and get ready-to-edit templates.

  • ๐Ÿ”น Smart Limits โ€“ optional contextโ€‘aware behaviour for โˆซ (disabled by default):

    • $โ€ฆ$ โ†’ compact form (\int_{}^{})
    • $$โ€ฆ$$ โ†’ display form with limits (\int\limits_{}^{})
  • ๐Ÿ”น Multiline templates โ€“ environments like \align expand across multiple lines with proper formatting.

  • ๐Ÿ”น Custom rule file โ€“ all expansions are stored in .obsidian/plugins/auto-math/rules.json (user-editable).

  • ๐Ÿ”น Live reload โ€“ changes in the rules file are applied immediately, no restart required.

  • ๐Ÿ”น Built-in math pack โ€“ includes 38 essential LaTeX commands.

  • ๐Ÿ”น Custom Rules Editor โ€“ edit triggers and expansions directly inside Obsidian settings.

  • ๐Ÿ”น Toggle anytime โ€“ quickly enable or disable with the ribbon icon or command palette.


๐Ÿ†š How Auto Math Differs from Other Plugins

There are several LaTeX-related plugins available for Obsidian. Here's how Auto Math compares:

FeatureAuto MathLatex SuiteQuick LaTeXCompletr
ApproachInstant trigger expansionSnippets + shortcutsAuto-completion menuGeneral autocomplete
TriggersStandard LaTeX commandsCustom shortcutsMixedVarious
Learning curveMinimalSteeperModerateModerate
ConfigurationSimple JSON fileComplex configSettings UIMultiple sources
FocusMath snippets onlyFull LaTeX workflowLaTeX shortcutsAll text types
Popup menusNoneOptionalYesYes

Why choose Auto Math?

  1. No new shortcuts to learn โ€” Triggers are standard LaTeX commands (\frac, \sqrt, \int). If you know LaTeX, you already know how to use Auto Math. Perfect for beginners learning LaTeX.

  2. Simplicity โ€” Does one thing well: expand triggers instantly. No menus, no popups, no complex configuration.

  3. Predictability โ€” Every trigger expands exactly the same way, every time. No magic, no surprises.

  4. Flexibility โ€” All rules are stored in a simple JSON file. Edit it directly or use the built-in settings editor.

  5. Lightweight โ€” Zero dependencies, minimal footprint, works entirely offline.

Best for: Users who want fast, predictable LaTeX snippet expansion without learning new shortcuts or dealing with complex configuration.

For detailed documentation, tutorials, and examples, visit the Auto Math Wiki.


๐Ÿงฎ Default Rule Pack

Auto Math v0.2.5 comes preloaded with 38 essential triggers:

Basic Commands

TriggerExpands to
\frac\frac{}{}
\dfrac\dfrac{}{}
\tfrac\tfrac{}{}
\cfrac\cfrac{}{}
\binom\binom{}{}
\dbinom\dbinom{}{}
\tbinom\tbinom{}{}
\text\text{}
\sqrt\sqrt{}
\root\sqrt[]{}
\pow{}^{}
\abs\left|{}\right|
\norm`\left\
\vec\vec{}
\hat\hat{}
\bar\bar{}
\overline\overline{}
\underline\underline{}
^^^{}
___{}

Sums, Integrals & Limits

TriggerExpands to
\sum\sum_{}^{}
\int\int_{}^{}
\lim_\lim_{}
\limsup\limsup_{}
\liminf\liminf_{}
\max\max_{}
\min\min_{}
\inf_\inf_{}
\sup\sup_{}

Logarithms

TriggerExpands to
\log\log_{}

LaTeX Environments

TriggerExpands toUse case
\align\begin{align}...\end{align}Aligned equations (with numbering)
\aligned\begin{aligned}...\end{aligned}Aligned equations (no numbering)
\gather\begin{gather}...\end{gather}Centred equations
\cases\begin{cases}...\end{cases}Piecewise functions
\array\begin{array}{}...\end{array}Custom arrays
\matrix\begin{matrix}...\end{matrix}Matrix (no brackets)
\pmatrix\begin{pmatrix}...\end{pmatrix}Matrix with ( )
\bmatrix\begin{bmatrix}...\end{bmatrix}Matrix with [ ]
\split\begin{split}...\end{split}Split equations

โš™๏ธ Installation

Manual

  1. Download the latest release from the Releases page.

  2. Extract the folder auto-math into your vault under:

    .obsidian/plugins/auto-math/
    
  3. Enable Auto Math in Settings โ†’ Community Plugins โ†’ Installed plugins.

  4. That's it โ€” start typing \frac, \sqrt, \sum and watch them expand automatically!


๐Ÿงฐ Configuration

Open Settings โ†’ Auto Math to customise:

  • Enabled โ€“ toggle Auto Math on/off.

  • Rules file path โ€“ defaults to .obsidian/plugins/auto-math/rules.json.

  • Smart Limits โ€“ contextโ€‘aware expansions for โˆซ (disabled by default, enable in settings if needed).

  • Reload / Create / Open โ€“ reload or open your external rules file.

  • Debug logs โ€“ show extra information in the developer console.

  • Custom Rules Editor โ€“ view, add, delete, filter, sort, and edit your rules interactively.

  • Save rules to file โ€“ writes changes to the JSON file immediately.

  • Reset to default math pack โ€“ restores the built-in default rule set.


๐Ÿ“ Multiline Maths Mode

Auto Math now supports Smart Limits in multiline $$...$$ blocks.

Example:

$$
\int x dx  โ† expands to \int\limits_{}^{}
$$

The plugin automatically scans neighbouring lines (up to 50 by default) to detect display maths context.

Technical note: The scan depth can be adjusted by modifying maxScanLines in the plugin settings file (default: 50 lines). This is stored in .obsidian/plugins/auto-math/data.json.


LaTeX Environments

Auto Math includes snippets for common LaTeX environments. These automatically expand into multiline blocks with proper formatting.

Example Usage

Input:

$$
\align
$$

Expands to:

$$
\begin{align}
| โ† cursor here
\end{align}
$$

Then you can write your equations with \\ for line breaks:

$$
\begin{align}
x + y &= 5 \\
x &= 5 - y
\end{align}
$$

Result: $$ \begin{align} x + y &= 5 \ x &= 5 - y \end{align} $$


๐Ÿ’ก Customisation Example

If you'd like to add your own expansions, open auto-math.rules.json and add entries like:

[
  { "trigger": "\\ceil", "expand": "\\left\\lceil{}\\right\\rceil" },
  { "trigger": "\\floor", "expand": "\\left\\lfloor{}\\right\\rfloor" },
  { "trigger": "\\bmatrix", "expand": "\\begin{bmatrix}\n & \\\\\n\\end{bmatrix}" }
]

Then click Reload rules now โ€” your new triggers will be active instantly.


๐Ÿชถ Notes

  • The plugin works fully offline and doesn't require any external dependencies.

  • Uses plain JSON and Obsidian's own vault API.

  • Safe to edit while running โ€” changes are detected automatically.


Documentation

For more details, tips, and extended explanations, check the project Wiki: https://github.com/loglux/auto-math-for-obsidian/wiki


๐Ÿง‘โ€๐Ÿ’ป Credits

Released under the MIT licence.

For plugin developers

Search results and similarity scores are powered by semantic analysis of your plugin's README. If your plugin isn't appearing for searches you'd expect, try updating your README to clearly describe your plugin's purpose, features, and use cases.