Skip to content

Repository files navigation

Lookout

CI Release License: MIT

Survey wide content instead of scrolling sideways.

Lookout is an Obsidian plugin for reading wide Mermaid diagrams and wide tables. Instead of squinting through a note's narrow horizontal scrollbar, pan and zoom a diagram, fit it to the frame, or throw either a diagram or a table up full-screen.

The controls follow a quiet drafting / survey-instrument visual language: they borrow Obsidian's own theme surfaces, with a single survey-cyan accent reserved for focus and the active zoom gauge.

Features

Mermaid diagrams

Each rendered Mermaid diagram gets an unobtrusive instrument toolbar (it fades in on hover):

  • Pan — drag, or scroll with the mouse wheel (Shift maps a vertical wheel to horizontal). At an edge with nowhere to go, scrolling releases back to the page.
  • ZoomCtrl / Cmd + wheel zooms toward the cursor, or use the + / buttons.
  • Gauge — a monospace readout shows the current zoom; click it to snap back to 100 %, top-left.
  • Fit to frame — scales the whole diagram to the frame.
  • Full screen — opens the diagram in a focused full-screen canvas with the same controls.

The inline frame hugs the diagram's natural (100 %) height, so a fully visible diagram has no dead space; tall diagrams are capped at 70 % of the window height and pan.

Tables

Wide tables keep their normal horizontal scroll but gain a single full-screen button (no zoom) pinned to the visible top-right corner. Full screen shows the table in a maximized scroll area where its full width fits far better than in the note's narrow reading column.

If a cell carries a footnote, its definition is read from the note's own source through Obsidian's metadata cache and listed under the table, so it appears in full screen no matter where the table sits in the note. The marker jumps to its definition and the "↩︎" back-reference jumps back, without leaving the full-screen view.

This works in Reading view, for both inline (^[note]) and reference-style ([^id]) footnotes. Live Preview is not supported, because it parses each block on its own: a reference-style marker is not rendered there at all (the note itself shows it as plain text, so there is nothing for Lookout to attach to), and an inline one is numbered within its block rather than within the note, which is not enough to tell which definition it belongs to. Showing a different footnote's text under the right marker would be worse than showing none, so the marker is left visible but plainly inert. The same happens to a footnote that is referenced but never defined, or a table in a surface with no backing file — in every case the marker is exposed to assistive tech as a disabled link carrying the reason.

Tables are enhanced in both Reading view and Live Preview; the table you are actively editing is left untouched.

Keyboard & commands

When a diagram frame is focused (or in full screen):

Key Action
+ / = Zoom in
/ _ Zoom out
0 Reset to 100 %, top-left
Arrow keys Pan
F Open full screen (inline only)
Esc Close full screen

A command, “Open the active note's first Mermaid diagram full screen”, is available from the command palette and can be bound to a hotkey.

Installation

Lookout works on both desktop and mobile (Obsidian 1.6.6+).

Manual

  1. Download main.js, manifest.json, and styles.css from the latest release.
  2. Create a folder lookout under your vault's .obsidian/plugins/ directory and place the three files inside it.
  3. Reload Obsidian and enable Lookout under Settings → Community plugins.

BRAT (beta)

Add Post-Math/Lookout as a beta plugin with the BRAT plugin to track pre-release builds.

Support

Found a bug or have an idea? Please use the issue tracker. For security reports, see SECURITY.md.

Contributing & development

Contributions are welcome! Start with CONTRIBUTING.md for the workflow and our Code of Conduct, and see docs/DEVELOPMENT.md for the local setup, the checks to run, and an architecture overview. In short: Lookout is written in TypeScript (src/main.ts) and bundled to main.js with esbuildnpm ci, then npm run dev to watch-build while you edit.

License

MIT © Post-Math

About

Obsidian plugin — survey wide Mermaid diagrams and tables: pan/zoom, fit-to-frame, and full-screen.

Topics

Resources

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Releases

Packages

Used by

Contributors

Languages