Lightweight desktop app for fast LaTeX composition on Windows and macOS. Built with Electron on top of the LaTeX Suite Core CodeMirror 6 Extension, which is a fork of the popular Obsidian LaTeX Suite.
The experience is essentially the same as below (from Obsidian LaTeX Suite's demo), except that $$ is unneeded:
- Fast LaTeX composition with live preview.
- Lightweight and portable, no installation required (although an installer is also provided if you prefer).
- Launchable via a global hotkey (default: Ctrl+.) for quick access from any application.
Three launch modes:
- Insert: directly insert the formula into the active application at the cursor position.
- Selection Replace: Ctrl+C the current selection as the formula context, then insert the composed formula back to replace the selection.
- Auto Selection Replace: Ctrl+A, Ctrl+C to select all and copy as the formula context, then insert the composed formula back to replace the selection.
Download the latest build from the releases page. On Windows, use either the installer or the portable executable. On macOS, use the DMG or ZIP build and allow Accessibility access when macOS prompts for it.
Once the app is running, right-click the system tray icon and select "Settings..." to open the settings window. From there you can set up the global hotkey and launch mode. You can also change the launch mode on the fly by right-clicking the system tray icon and selecting the desired mode from the "Mode" submenu.
The app supports custom snippets defined in the user-snippets.js file located in the app data directory. You can find the snippet file by right-clicking the system tray icon and select "Settings...", then click the corresponding path link under the "Snippet files" section. The snippet file is an array of rules, where each rule has a trigger, a replacement, and options. The trigger is the string that will be replaced by the replacement when the rule is applied. The options can be used to specify conditions for when the rule should be applied, such as only applying the rule when appending text.
{trigger: "op", replacement: "\\operatorname{$0}$1", options: "tA"},For detailed documentation on the snippet format and options, see the documentation from Obsidian LaTeX Suite.
Requires Node.js 20+ and Corepack. Basically, clone the repository, install dependencies, and build the app with NPM:
git clone
cd latex-suite-app
corepack pnpm install
npm run buildThen, on Windows, run npm run package:desktop:dir to generate the unpacked app in artifacts/desktop/win-unpacked. On macOS, run npm run dist:desktop:mac to generate the DMG and ZIP builds in artifacts/desktop.
npm run version:check: check if the version inpackage.jsonis consistent with the version insrc/bridge/package.json.npm run version:bump -- <version>: bump the version inpackage.jsonandsrc/bridge/package.json.npm run test: run the tests.npm run build: build the app.npm run package:desktop:dir: generate the unpacked desktop app.npm run publish:bridge: publish the bridge.npm run dist:desktop:win: generate the Windows installer and portable build.npm run dist:desktop:mac: generate the macOS DMG and ZIP builds.
- Windows unpacked app:
artifacts/desktop/win-unpacked - Windows installer:
artifacts/desktop/LaTeX Suite Setup <version>.exe - Windows portable build:
artifacts/desktop/LaTeX Suite <version>.exe - Windows bridge payload:
artifacts/win-bridge/win-x64/win-bridge.exe - macOS DMG:
artifacts/desktop/LaTeX Suite-<version>-mac-<arch>.dmg - macOS ZIP:
artifacts/desktop/LaTeX Suite-<version>-mac-<arch>.zip - macOS bridge payload:
artifacts/mac-bridge/darwin-universal/mac-bridge
This project is based on the work of Obsidian LaTeX Suite, which is developed by artisticat1 and contributors, licensed under the MIT License.
The app icon is designed based on the work of Guy vandegrift under CC0 1.0.
