Editora

IDE power at text-editor speed

A keyboard-driven editor where every action is a command, a keystroke or a fuzzy M-x search away. Pick your keymap (Emacs, VS Code, Sublime, IntelliJ, CUA) or bind your own. Fast, cross-platform, and quiet: no accounts, no telemetry.

The command palette, live. Every action is searchable and rebindable.

See it in action

The actual editor: syntax highlighting, a live preview, git gutters, LSP completion, and a status bar that stays out of your way.

The Editora editor: a Java file with syntax highlighting, a line-number gutter with bookmarks, a minimap, and a status bar
Stand-in A short screen capture will play here. This is the real editor (Primer Dark).

Why Editora

A keyboard-first editor for people who'd rather keep their hands on the keys. Free, open source, and the same on macOS, Windows, and Linux.

Keyboard-first

Every action is a command you can bind or fuzzy-search. Five keymaps — Emacs, VS Code, Sublime, IntelliJ, CUA — fully rebindable, with macros, multiple cursors, and a prefix argument.

A full IDE, no bloat

LSP for 21 languages, step debugging, git & GitHub, run & test — in one fast native app that stays responsive on huge files. No accounts, no telemetry, no subscriptions.

Previews everything

Markdown, Mermaid, CSV grids, diagrams, PDFs, and 20+ more file types render live, side by side with the source — no external browser.

One editor, four ways to run it

Editora scales with the task instead of asking you to pick a tool. The same app goes from a blank page for writing to a full IDE — and back — without reopening anything.

1

Zen

Focus

Just the text. Every bar, the gutter, the minimap — gone. The language server is still running behind it.

  • Nothing but your file
C-c z
2

Expert

Focus

Window chrome disappears, the editor stays whole: line numbers, minimap, status bar, current-line highlight.

  • Line numbers
  • Minimap
  • Status bar
C-c C-e
3

Simple UI

Plain

A plain text editor. Familiar toolbar and tabs, no gutter, and the heavy machinery switched off entirely.

  • Toolbar + tabs
  • No LSP, git, or debug
view.toggleSimpleMode
4

Full IDE

Everything

The lot: language servers for 21 languages, step debugging, git and GitHub, build tools, live previews.

  • Tool windows
  • Gutter + minimap
  • All features
Default

Zen and Expert only hide the interface — everything keeps running underneath. Simple UI is the one that actually switches the heavy features off. All four are a keystroke or a palette command away, and Editora can launch straight into any of them (--zen, --expert, --simple).

Download Editora Free and open source, for macOS, Windows, and Linux. See how it compares.

Uses the tools you already have

Editora doesn't bundle its own copy of your toolchain. It shells out to the CLIs already on your machine, so you get your versions and your config — and a feature stays invisible until its tool is found.

  • git Version control, blame, diffs
  • gh Pull requests, issues, CI runs
  • ripgrep Faster Find in Files
  • 21 language servers Completion, diagnostics
  • Debug adapters Java, Python, JavaScript
  • mmdc Mermaid diagrams
  • dot / plantuml Graphviz and PlantUML
  • typst Typst documents
  • mvn / gradle / npm Builds, tests, tasks
Your versions, your config The git you already configured, the language server your project pins, the build wrapper the repo ships. No second copy drifting out of date.
Nothing you can't use is in the way Every integration self-gates: it stays hidden until its tool is detected, so the interface only ever shows what actually works on your machine.
A smaller, honest app No vendored toolchains inflating the download or quietly going stale, and nothing extra to trust — the tools are the ones you already installed.

Doctor

Because the tools live outside the app, Editora ships a health screen that shows exactly what it found. Every integration is listed with its version and resolved path, warnings for anything half-configured (a gh that isn't signed in, a JDK too old to run a file), and a red row for what's missing.

Missing tools that Editora knows how to fetch get an Install… button right there, and the whole screen re-checks live — no restart, no hunting through settings.

Run it from the palette: view.doctor · More about Doctor

Editora's Doctor screen listing external tools with found, warning, and missing status
Stand-in Replaced automatically by a real capture.

From the blog & news

All news · All posts

What's new

A few of the most recent changes. See everything that's shipped.

  • Three Java commands : (palette) — Organize Imports sorts and prunes a file's imports directly, without going through the code-action menu; Copy Fully Qualified Name puts…
  • Project-wide problems : the Problems window gained an Open files / Whole project selector, and a new Build Project command (palette) recompiles the Java project and fills…
  • Stack-trace frames into libraries : clicking a Java stack-trace line in the Run, Test or Build console now asks the language server to resolve it, so a frame inside a dependency or the…
  • Fewer stray test gutters : the ▶ beside a JUnit class is now confirmed against the project's real test source folders, so a class in src/main/java that happens to…
  • Re-indent as you type : with a language server running, typing ;, } or Enter re-indents the current line to the server's own convention.…
  • Java code generation : with the Java language server running, the code-action menu (Ctrl-., or the editor right-click menu) now offers Generate toString(),…
  • Go to Implementation, Type Definition and Declaration : three navigation commands beside Go to Definition. Go to Implementation jumps from an interface or abstract member to the concrete overrides (a lone…
  • Language-server folding and selection : where a language server is running, code folding now comes from the server's own understanding of the file instead of brace/indent scanning: an…

Show more →

Features

Workspace & files

Projects

VS Code single-folder workspaces: a root folder plus its own saved session (open files, layout, folds), shown as a filterable file tree.

Bookmarks & notes

Line bookmarks (gutter markers, cross-file jump, per-project), plus Personal Notes attached to a word/line/range, stored outside the file, surviving renames, with Markdown bodies.

Find in files

Project-wide search and replace with a results panel, plus AceJump to leap the caret to any visible spot by typing a label.

File templates Beta

New File From Template: single- or multi-file scaffolds with interactive placeholders (author, date, file name, …).

Read-only / View mode

Toggle a buffer read-only to browse without editing; pager-style Space/Backspace paging and a Word-style View Mode banner.

Remote files (SFTP) Beta

Browse, edit, search, and save files on a remote host over SSH/SFTP. The project tree, search, bookmarks, and notes all work over the wire.

Local file history

IntelliJ-style snapshots of your files over time, on save, auto-save, and before an external reload, so you can diff or restore an earlier version with no Git required.

TODO highlighting

Configurable regex patterns (TODO, FIXME, and your own) are highlighted in the editor and collected in a TODO tool window, with scrollbar and minimap stripes.

Server log viewer

Open a .log file for severity highlighting, a tail -f Follow toggle, open-at-the-tail for huge logs, and live level + regex filtering.

CSV & TSV support

Rainbow per-column coloring, a field readout, and an editable CSV Grid with sort/filter and export to Excel/ODF, plus align/shrink and Markdown-table interop.

Works with your stack

Syntax highlighting for dozens of languages, and full language-server intelligence — completion, go-to-definition, diagnostics — for 21 of them. Plus live previews for the formats you actually read.

Language servers 21

  • Jv Java
  • JS JavaScript
  • TS TypeScript
  • Py Python
  • Go Go
  • Rs Rust
  • C C
  • C+ C++
  • C# C#
  • Rb Ruby
  • PHP PHP
  • Kt Kotlin
  • Lua Lua
  • <> HTML
  • CSS CSS
  • {} JSON
  • YML YAML
  • XML XML
  • TML TOML
  • SQL SQL
  • sh Shell
  • Dk Dockerfile
  • Tf Terraform

…plus TextMate syntax highlighting for many more.

Live previews 15+

  • Markdown
  • Mermaid
  • CSV grid
  • PDF
  • SVG
  • Graphviz DOT
  • PlantUML
  • Typst
  • JSON / YAML / TOML tree
  • XML tree
  • OpenAPI
  • GitHub Actions
  • Markwhen
  • Images
  • Hex

Your keymap, your keys

Bring the muscle memory you already have. Pick a keymap and every shortcut follows, or rebind any command to whatever you like.

Action Emacs CUA Sublime Text VS Code IntelliJ IDEA
Command palette M-x C-S-p C-S-p C-S-p C-S-a
Save C-xC-s C-s C-s C-s C-s
Go to file C-xC-f C-p C-p C-S-n
Find in file C-s C-f C-f C-f C-f
Find in files C-S-f C-S-f C-S-f C-S-f C-S-f
Replace C-h C-h C-h C-r
Toggle comment M-; C-/ C-/ C-/ C-/
Duplicate line C-S-d C-S-d M-S-down C-d
Move line up M-up M-up M-up M-S-up
Undo C-/ C-z C-z C-z C-z
Go to definition M-. f12 f12 C-b
Go to line M-gg C-g C-g C-g C-g

Windows/Linux chords shown — macOS substitutes . Every binding is editable in Settings, and a blank cell just means that keymap leaves the action to the palette.

Make it yours

Ships with 25+ editor themes (and you can add your own). Try a few right here — the whole site recolors with the editor.

Built for speed

Performance is a first-class goal: the UI thread stays free and work happens incrementally, off-thread, and only on what's visible.

Off the UI thread Tokenizing, parsing, and search run in the background, so the editor never blocks while you type.
Large files stay smooth 5 MB+ skips highlighting and the minimap; 50 MB+ opens read-only with a capped load so a multi-GB log can't exhaust memory.
Incremental everything Edits re-tokenize only from the changed line; overlays and the gutter redraw just the visible lines, coalesced to one pass per frame.
Bounded memory Capped undo history and capped loads keep memory predictable, even on huge files.
Editora 0.9.9
1.49s
VS Code 1.125.0
1.49s
IntelliJ IDEA 2026.2.0.1
5.60s
Time from launch to the editor window showing your file. Median of five timed runs per editor (a discarded warm-up first), all on one Apple M5 running macOS 26.4.1, each opening the same 710-line Markdown file with no project or workspace loaded. Every editor was fully quit between runs and launched the same way. The clock stops when the editor window showing the file appears, not when a splash screen does: IntelliJ puts a splash up around 1.8s and reaches the file at 4.3s, so timing the first window would have understated it by about three seconds. These are relaunches on a warm page cache rather than a first boot, and none of them measure background work that continues after the file is on screen. Full method and a project-folder comparison.

Download

Native installers and self-contained runnable jars for every platform are attached to each release.

macOS DMG installer (x64 / arm64)
Windows MSI installer (x64)
Linux DEB installer (x64 / arm64)

Native installer (bundles a Java runtime, nothing else to install), or a self-contained java -jar on JDK 25.

Installers are currently unsigned. On macOS, right-click the app and choose Open the first time.

Build & run from source

Requires JDK 25+. A Maven wrapper is bundled, so no local Maven install is needed.

terminal
# Clone
git clone https://github.com/adriandeleon/Editora.git
cd Editora

# Run the app
./mvnw javafx:run

# Build a native installer (DMG / MSI / DEB)
./mvnw -Pdist package

# Build a self-contained runnable jar
./mvnw -Pfatjar package
java -jar target/Editora-0.9.10.jar

Built in the open with the help of AI coding tools — every change lands as a reviewed, tested commit on GitHub.