LaTeX Editor

LaTeX documents (.tex, .latex, .ltx) open in a dedicated editor with three tabs. Use the mode toggle in the toolbar to switch tabs; each one edits the same underlying file.

TabWhat it showsNeeds a TeX engine?
EditA live WYSIWYG view where headings, paragraphs, lists, abstract, keywords, and math (typeset by KaTeX) look like the finished document. Type prose directly and click any equation to edit it visually.No. Nothing needs to be installed.
SourceThe raw .tex in the code editor, with a math-symbol palette for inserting snippets at the cursor.No
PDFThe compiled document. CrispyVibe runs LaTeX on your Mac and shows two-column layouts, author blocks, floats, tables, citations, and bibliography.Yes. A local TeX engine is required.

Starting tab

When you open a .tex file, CrispyVibe chooses a starting tab and remembers your choice per document:

  • With a TeX engine detected, the file opens in PDF.
  • Without a TeX engine, the file opens in Edit (KaTeX), which needs no installation.

Local and offline compilation

The PDF tab uses your local TeX toolchain (pdflatex -synctex=1) and does not require an account, cloud service, or internet connection. CrispyVibe runs LaTeX and BibTeX over multiple passes so cross-references and citations resolve instead of showing ?? / [?]. A timeout bounds long or runaway compiles, and continued typing cancels the current compile.

Installing a TeX engine (for the PDF tab)

CrispyVibe doesn’t bundle a TeX engine. It uses the engine installed on your Mac.

Recommended: BasicTeX (~100 MB) — a minimal TeX Live distribution:

brew install --cask basictex

Full distribution: MacTeX (multi-GB) — the complete TeX Live with every package preinstalled:

brew install --cask mactex

Both install into /Library/TeX/texbin, which CrispyVibe probes automatically along with the standard TeX Live and Homebrew binary locations. After installing, open the PDF tab and click Recheck; you do not need to restart the app. CrispyVibe was validated against TeX Live 2026 / pdfTeX 1.40.29 and supports recent TeX Live releases.

Extra packages, no admin password

BasicTeX is intentionally minimal. If a compile fails with File '…sty' not found, install the missing package per-user, without sudo:

tlmgr init-usertree
tlmgr --usermode install <package>      # e.g. enumitem titlesec IEEEtran

This installs into your personal tree at ~/Library/texmf. MacTeX users rarely need this because it includes the full package set.

Writing in the Edit tab

Click into a paragraph and type. Press Return for a new paragraph. The toolbar applies bold, italic, code, headings, and bullet/numbered lists to your selection and writes them back as the matching LaTeX commands (\textbf{…}, \section{…}, \begin{itemize}…). The abstract and keywords are editable too.

Tables, figures, TikZ pictures, the reference list, and custom environments appear as rendered, read-only blocks and remain unchanged. Edit them in Source or the PDF tab. Edit saves your changes as LaTeX while keeping the preamble, packages, and content it doesn’t render intact. That content is hidden from the rendered view.

Edit an equation visually

Click any equation (inline or displayed) in Edit. A popup opens with a live preview, a grid of symbol and template buttons (fractions, roots, sums, integrals, Greek letters, matrices), and the raw TeX in a text box. Click Done or click away to commit; Cancel or Esc to discard. An equation with a syntax error shows as red text. Click it to fix the error; CrispyVibe continues rendering the rest of the document.

Edit in the PDF tab

Double-click any text in the rendered document. CrispyVibe uses SyncTeX to map that spot to the exact source, then opens a small inline editor where you clicked. The editor is prefilled with that source block and labeled with the lines you’re editing. The matching region on the page is highlighted. Make your change and press Save (or ⌘↩); the document is rewritten and the page recompiles. Press Esc or Cancel to discard.

The page also recompiles automatically a moment after you stop typing. Re-renders preserve your current page and scroll position.

Comment on the PDF

Select text in the PDF tab and a Comment button appears above the selection. Comments added on the PDF live in the same store as comments added in the Source or Edit views, so they show up consistently across tabs. See File Comments.

Non-destructive errors

If an edit doesn’t compile, CrispyVibe keeps showing your last good PDF and displays a dismissible banner: “Compilation failed — showing the last successful render.” Switch to Source to fix the error, and the page recompiles. Only when there’s no previous PDF to fall back to does CrispyVibe show the full error log.

Math in Markdown

CrispyVibe also renders math in Markdown files: write symbolic inline math such as $E = mc^2$, or a $$displayed$$ block, and it typesets via KaTeX in the Markdown rich view. For inline math that starts with a number, write \\(2 + 3 = 5\\) in Markdown source. CrispyVibe saves each equation back in the delimiter form you wrote. Ordinary currency such as $8M or $16,655.00 stays plain, editable text. See Markdown Editor.

Line numbers

TabLine numbers
SourceShown with the default Source Editors setting, like any code file
EditShown only with All Text Views. Each top-level block (paragraph, heading, list, and so on) shows the .tex line it starts on
PDFNever shown

Change the setting in App Settings > Appearance > Line Numbers > Show line numbers. In the Edit tab, a long block gets a single label, labels refresh as you edit, and they follow light/dark appearance and text size. They are display-only and do not change the saved .tex file.

Text size

In the Edit tab, Cmd++ or Cmd+=, Cmd+-, and Cmd+0 (or the matching View menu commands) resize prose, equations, the equation popup, and comment controls in place. Changing text size does not recompile the document. The Source tab follows the same global text size as other code files. The PDF tab keeps its own page zoom.

Keyboard shortcuts

ActionShortcut
Commit the equation popup / on-page edit⌘↩ (or Save / click away)
Cancel the equation popup / on-page editEsc
New paragraph (Edit tab)↩
Open the on-page editor (PDF tab)Double-click the text

Standard editor shortcuts (undo/redo, find/replace, selection) work as usual in the Source tab.

Known limitations

  • The PDF tab needs a local TeX engine (BasicTeX or MacTeX), which CrispyVibe doesn’t bundle. Edit and Source work without it.

💡 Tip: Without a TeX engine, the PDF tab shows the brew install --cask basictex command with a Copy button and a Recheck button. After installing, click Recheck to load the PDF without restarting the app.

  • The Edit tab renders math and common structure. Use the PDF tab to check document-class layout (two-column, exact float placement, custom classes).
  • The PDF tab runs a LaTeX engine on your machine. Only compile .tex files you trust.
  • The editor is single-user and offline, without collaboration or cloud rendering.
  • LaTeX documents currently do not have a command-line interface.