Orch term
Search features…Ctrl K

Core features · Code editor

Code editor

Edit files opened from the Explorer right away. Auto-reload on external changes, open/save in every encoding down to EUC-KR and UTF-16, EOL (CRLF) preservation, and GitLens-style blame.

Opening files

Double-click a file in the left Explorer to open it as a new editor tab in the active pane. For non-text binaries (PNG, exe, etc.), instead of the editor an "Open with the default app" fallback panel appears. On the right of the bottom status bar, the detected encoding · EOL label is shown only for editor tabs.

Code editor — about-dialog.ts (TypeScript syntax highlighting), the top tabs and the status-bar encoding/EOL
Top-right icons toggle outline·preview·blame. UTF-8 · LF on the right of the status bar = encoding/EOL.

Auto-reload on external changes

When an open file is modified externally (another tool, git pull, an AI CLI, etc.), the editor re-reads it from disk. With no unsaved edits it quietly swaps in the new content; with unsaved edits it first asks whether to overwrite. You can also re-read manually anytime with the button in the status bar.

Encoding — open any file

Open Korean legacy (EUC-KR/CP949), Japanese (Shift-JIS), Chinese (GBK·Big5), Western European (Windows-1252), and UTF-16 (LE/BE) files. The moment you open one, the encoding is auto-detected and shown as a label in the status bar.

If misdetection makes text look garbled, click the encoding label in the status bar. The top group, "Reopen with encoding", re-decodes the disk bytes with a different encoding (it doesn't write the file — lossless) to fix the misdetection, while the bottom group, "Convert encoding and save", changes the document to that encoding and saves.

Encoding menu — reinterpret vs convertEUC-KR
Reopen with encoding (reinterpret)
Convert encoding and save
Top group = reinterpret (doesn't touch the disk) · bottom group = convert and save. The divider separates the two.

When saving to a legacy encoding, if there's a character absent from that encoding (e.g., an emoji), rather than quietly corrupting it the editor blocks the save and brings up a choice modal. If everything maps, it saves as-is without asking.

Save — data-loss guard
Blocked before any corruption. Choosing "Save as UTF-8" also switches the tab's save encoding to UTF-8, so later saves are lossless.
Pressing Reopen when there are unsaved edits discards them, so it asks first.

EOL · line-ending preservation

It detects the line-ending style (CRLF/LF/CR) on open and preserves the original EOL on save. Clicking the EOL segment in the status bar brings up a conversion menu: Windows (CRLF)·Unix (LF)·Macintosh (CR).

Markdown preview

Opening a .md file adds a 👁 toggle at the top right. The reading view does more than plain rendering:

Heavy features like Mermaid and math load only when the document actually uses that syntax, so opening an ordinary document is just as fast. The memo preview in Notes uses the same renderer.

GitLens-style blame

Turn on blame with Ctrl+Shift+B (or the editor's top-right button), and the gutter gains a per-line author · relative time. Lines that continue the same commit are shown only on the group's first line, and lines changed in the working tree appear as Uncommitted. Clicking a gutter line links to the commit details in the source control panel, and hovering shows the commit hash, author, time, and subject as a tooltip.

GitLens-style blame gutter — per-line author (Zendy Kim) and relative time (22 days ago·11 days ago·16 days ago) in the editor's left gutter, with lines continuing the same commit shown only on the group's first line
Author · relative time shown only on the group's first line (continuing lines are blank). Uncommitted = working-tree changes not yet committed.

Keyboard shortcuts

KeyAction
Ctrl+Shift+BToggle Git Blame
Ctrl+FFind in a single file
Ctrl+SSave (keep original encoding)
PaletteReopen with encoding / convert and save