Documentation
User Manual
Everything you need to know about writing with Org-notes — from basic editing to spreadsheet formulas and LaTeX math.
Getting Started
Org-notes works with .org files — plain text files using
Org-mode syntax. Open any .org
file to start editing, or create a new one from the app.
The interface has two panes: an editor on the left and a live preview on the right. Changes in the editor are reflected instantly in the preview at 120 fps.
File header
Start your file with optional metadata:
#+TITLE: My Document
#+AUTHOR: Your Name
#+DATE: <2026-06-15 Sun>
Autosave
Your work is saved automatically — every 300 keystrokes and after 30 seconds of inactivity. A backup copy is also maintained for crash recovery.
Editor Basics
The editor supports Emacs-style navigation alongside standard macOS shortcuts. Text is stored in a rope data structure for fast editing of large documents.
Inline formatting
| Syntax | Result |
|---|---|
*bold* | bold |
/italic/ | italic |
_underline_ | underline |
+strikethrough+ | |
~code~ | code |
=verbatim= | verbatim |
Checkboxes
- [ ] Unchecked item
- [X] Checked item
- [-] Partial item
Toggle a checkbox by placing the cursor on it and pressing C-c C-c.
Headings & Structure
Headings start with one or more asterisks. The number of asterisks sets the level:
* Level 1
** Level 2
*** Level 3
Folding
Press Tab on a heading to cycle its visibility: folded → children → subtree. Press Shift-Tab globally to cycle the entire document: Overview → Contents → Show All.
Structural editing
| Action | Shortcut |
|---|---|
| Insert heading at same level | Alt-Enter |
| Promote heading (decrease level) | Alt-Left |
| Demote heading (increase level) | Alt-Right |
| Move subtree up | Alt-Up |
| Move subtree down | Alt-Down |
| Promote subtree | Shift-Alt-Left |
| Demote subtree | Shift-Alt-Right |
TODO keywords
Press C-c C-t to cycle a heading through TODO states:
(none) → TODO → DONE → (none).
** TODO Write the report
** DONE Ship version 1.0
Tables
Org-notes includes a full-featured table editor. Tables are plain text, but behave like a spreadsheet — with auto-alignment, navigation, sorting, and formulas.
Creating a table
Type a pipe character | followed by your column headers and press Tab:
| Name | Age | City |
Pressing Tab auto-aligns the table and moves to the next cell. Pressing Enter moves to the next row in the same column.
Horizontal rules
Type |- and press Tab to insert a horizontal separator:
| Name | Age | City |
|---------+-----+-------------|
| Alice | 30 | New York |
| Bob | 25 | Los Angeles |
| Charlie | 35 | Chicago |
Navigation
| Action | Shortcut |
|---|---|
| Next cell (align & advance) | Tab |
| Previous cell | Shift-Tab |
| Next row (same column) | Enter |
| Beginning of field | Alt-A |
| End of field | Alt-E |
Column & row operations
| Action | Shortcut |
|---|---|
| Move column left | Alt-Left |
| Move column right | Alt-Right |
| Insert column | Shift-Alt-Right |
| Delete column | Shift-Alt-Left |
| Move row up | Alt-Up |
| Move row down | Alt-Down |
| Insert row above | Shift-Alt-Up |
| Delete row | Shift-Alt-Down |
| Insert horizontal rule | C-c - |
| Sort table | C-c ^ |
| Transpose table | C-c C-x C-t |
Column alignment
Add an alignment row using <l>, <c>,
or <r> to control left, center, or right alignment in the preview:
| Left | Center | Right |
| <l> | <c> | <r> |
|----------+----------+----------|
| aligned | aligned | aligned |
Table Formulas
Tables can compute values with the #+TBLFM: directive placed
immediately below the table. Formulas reference cells by column
($N) or by exact position (@row$col).
Basic syntax
| Item | Price | Qty | Total |
|--------+-------+-----+-------|
| Apple | 1.50 | 3 | |
| Banana | 0.75 | 2 | |
#+TBLFM: $4=$2*$3
This fills column 4 with Price × Qty for every data row.
Press C-c * to recalculate the current row, or
C-u C-c * to recalculate the entire table.
Cell references
| Reference | Meaning |
|---|---|
$2 | Column 2 (applies to all data rows) |
@3$2 | Specific cell: row 3, column 2 |
@>$4 | Last row, column 4 |
@I | First horizontal rule |
@II | Second horizontal rule |
@I..@II | Range: rows between first and second rule |
$1..$3 | Range: columns 1 through 3 (current row) |
Multiple formulas
Separate multiple formulas on the same #+TBLFM: line with :::
| a | b | sum | product |
|---+---+-----+---------|
| 2 | 3 | | |
| 4 | 5 | | |
#+TBLFM: $3=$1+$2::$4=$1*$2
Aggregate functions
These functions operate on ranges of cells:
| Function | Description |
|---|---|
vsum(range) | Sum of values in range |
vmean(range) | Arithmetic mean |
vmin(range) | Minimum value |
vmax(range) | Maximum value |
vcount(range) | Count of values |
vprod(range) | Product of values |
vmedian(range) | Median value |
Example: Sum column
| Item | Amount |
|--------+--------|
| Rent | 1200 |
| Food | 400 |
| Travel | 150 |
|--------+--------|
| Total | |
#+TBLFM: @>$2=vsum(@I..@II)
Math functions
| Function | Description |
|---|---|
sqrt(x) | Square root |
abs(x) | Absolute value |
ceil(x), floor(x) | Round up / down |
round(x) | Round to nearest integer |
sin(x), cos(x), tan(x) | Trigonometric (radians) |
exp(x) | e^x |
log(x), ln(x) | Log base 10 / natural log |
pow(x,y) or x^y | Power |
if(cond, a, b) | Conditional: a if true, b if false |
Format specifiers
Append ;format to a formula to control output formatting:
| a | b | ratio |
|---+---+-------|
| 1 | 3 | |
#+TBLFM: $3=$1/$2;%.2f
This formats the result as a decimal with 2 places (e.g., 0.33).
Recalculation
| Action | Shortcut |
|---|---|
| Recalculate current row | C-c * |
| Recalculate entire table | C-u C-c * |
| Auto-recalculate on Tab/Enter | Automatic |
LaTeX & Math
Org-notes renders LaTeX math expressions in real time. Formulas are converted to SVG using Mitex/Typst and displayed inline or as display blocks in both the editor and preview pane.
Inline math
Wrap expressions in single dollar signs or \(...\) delimiters:
The equation $E = mc^2$ describes mass-energy equivalence.
The Greek letters \(\alpha + \beta = \gamma\) are common in physics.
In the editor, inline math is highlighted with a purple background and dimmed delimiters. In the preview, it renders as a crisp SVG image.
Display math (block)
Use double dollar signs or \[...\] for centered, block-level equations:
$$\int_0^\infty e^{-x^2}\, dx = \frac{\sqrt{\pi}}{2}$$
\[\sum_{n=1}^{\infty} \frac{1}{n^2} = \frac{\pi^2}{6}\]
LaTeX environments
Standard LaTeX environments are fully supported:
\begin{equation}
\nabla \times \mathbf{E} = -\frac{\partial \mathbf{B}}{\partial t}
\end{equation}
\begin{align}
a &= b + c \\
d &= e + f
\end{align}
Subscripts & superscripts
Outside of math mode, Org-notes can display sub/superscripts as Unicode characters (configurable in settings):
H_{2}O renders as H₂O
x^{2} renders as x²
e^{i\pi} renders as eⁱᵖⁱ
Greek letters & entities
Org-notes renders Org entities as their Unicode equivalents:
\alpha → α \beta → β \gamma → γ
\pi → π \infty → ∞ \sum → ∑
\rightarrow → → \leq → ≤ \geq → ≥
How rendering works
LaTeX expressions are rendered to SVG via Mitex (a Typst-based converter).
Results are cached by content hash in a temporary directory, so repeated
expressions render instantly. If the primary renderer is unavailable, a
fallback pipeline using pdflatex → PDF → MuPDF is used.
Footnotes
Org-notes supports the full Org footnote system:
This sentence has a footnote[fn:1] and a named one[fn:details].
[fn:1] This is a numbered footnote.
[fn:details] This is a named footnote with more information.
Inline footnotes
This has an inline footnote[fn::The definition is right here].
Footnote commands
| Action | Shortcut |
|---|---|
| Jump to footnote definition/reference | C-c C-c |
| New footnote | C-c C-x f |
| Renumber footnotes | C-c C-x d |
In the preview, footnotes appear as superscript numbers with back-references.
Links
Org-notes supports multiple link types:
** URL links
[[https://orgmode.org][Org Mode Homepage]]
[[https://orgmode.org]]
** File links
[[./other-file.org][Open another file]]
[[~/Documents/notes.org]]
** Internal links (to headings)
[[*My Heading][Jump to heading]]
[[#custom-id][Jump to ID]]
Link commands
| Action | Shortcut |
|---|---|
| Open link at cursor | C-c C-o |
| Insert/edit link | C-c C-l |
| Go back (mark ring) | C-c & |
Radio targets
Define a radio target with <<<target>>> and every occurrence
of "target" in the document becomes a clickable link to that location.
Code Blocks
Source blocks provide syntax highlighting for 50+ languages:
#+begin_src python
def fibonacci(n):
a, b = 0, 1
for _ in range(n):
yield a
a, b = b, a + b
#+end_src
Other block types
| Block | Syntax | Purpose |
|---|---|---|
| Quote | #+begin_quote...#+end_quote | Block quotation |
| Example | #+begin_example...#+end_example | Preformatted text |
| Verse | #+begin_verse...#+end_verse | Poetry (preserves line breaks) |
| Center | #+begin_center...#+end_center | Centered text |
Fixed-width lines
: This line starts with a colon and space.
: It renders as preformatted monospace text.
Keybinding Reference
Org-notes uses Emacs-style key notation. C- means Ctrl, Alt- means Option/Alt. Many operations are context-sensitive — the same key behaves differently inside a table vs. on a heading.
Navigation
| Action | Shortcut |
|---|---|
| Forward char | C-f |
| Backward char | C-b |
| Next line | C-n |
| Previous line | C-p |
| Beginning of line | C-a |
| End of line | C-e |
| Forward word | Alt-f |
| Backward word | Alt-b |
| Page down | C-v |
| Page up | Alt-v |
Editing
| Action | Shortcut |
|---|---|
| Kill to end of line | C-k |
| Yank (paste kill ring) | C-y |
| Undo | C-/ or Cmd-z |
| Redo | C-? or Cmd-Shift-z |
| Set mark | C-Space |
| Universal argument (repeat) | C-u N |
Org structure
| Action | Shortcut |
|---|---|
| Fold/unfold heading | Tab |
| Global cycling | Shift-Tab |
| New heading | Alt-Enter |
| Promote/Demote | Alt-Left / Alt-Right |
| Move subtree | Alt-Up / Alt-Down |
| Cycle TODO | C-c C-t |
| Set tags | C-c C-q |
| Set property | C-c C-x p |
| Insert timestamp | C-c . |
| Insert deadline | C-c C-d |
| Insert scheduled | C-c C-s |
Tables (inside table context)
| Action | Shortcut |
|---|---|
| Align & next cell | Tab |
| Align & next row | Enter |
| Move column left/right | Alt-Left / Alt-Right |
| Move row up/down | Alt-Up / Alt-Down |
| Insert/delete column | Shift-Alt-Right / Shift-Alt-Left |
| Insert/delete row | Shift-Alt-Up / Shift-Alt-Down |
| Insert hline | C-c - |
| Sort column | C-c ^ |
| Recalculate row | C-c * |
| Recalculate table | C-u C-c * |
| Transpose | C-c C-x C-t |
Links & footnotes
| Action | Shortcut |
|---|---|
| Open link | C-c C-o |
| Insert link | C-c C-l |
| Go back | C-c & |
| New footnote | C-c C-x f |
View
| Action | Shortcut |
|---|---|
| Toggle preview | C-c C-x C-v |
| Column view | C-c C-x C-c |
| Sparse tree (search) | C-c / |