Repository navigation
Releases
Releases · omacom/plain
Plain 0.3.3
Plain 0.3.2
Improvements
- The find bar is tidier: the match count sits at the end of the find field, so nothing shifts as you type, and both fields share a width (#12, #16)
- Shift + Enter in the replace field replaces and steps back to the previous match, and Ctrl + Enter replaces all (#12, #15)
- The unsaved-changes panel answers to a bare C, D or S, without Alt. Alt + letter still works (#10)
- Shortcuts read with spaces, as in Ctrl + Shift + S (#11)
- A redrawn icon in Omarchy's app icon style. On Omarchy it now follows the theme's colors (#17)
Fixes
Plain 0.3.1
Translated
- Plain now speaks the language picked under Setup > Language, in all 49 of Omarchy's languages: the find bar, the banners about the file, the unsaved-changes question, Go to line and the shortcut overlay.
- The unsaved-changes buttons keep Alt+C, Alt+D and Alt+S in every language, and underline the letter where the translated word has it.
- New strings are translated automatically as they're added.
Right-to-left languages show translated text in a layout that isn't mirrored yet.
Plain 0.3.0
Safer files
- Save As no longer writes over a file Plain refused to open. A binary or huge file that was put aside can't be truncated by Ctrl+Shift+S, Enter.
- A file that turns into one Plain won't open while it's open (a FIFO swapped in, or a file grown past 1 MB) is handled the way opening it would be, instead of freezing the window or being read whole.
- A read-only file unlocks as soon as you make it writable in a terminal, without reopening it.
Editing
- Saving an untitled file from the unsaved-changes question now goes on to close the window or open the other file.
- A comment or string that closes on a line too long to color no longer leaves the rest of the file colored as if still inside it.
- With a language picked, the find bar's count falls back to English counted by English rules ("21 matches", not "21 match"), and a first language pick that creates
~/.config/omarchyis followed right away.
Everywhere
plain --helpandplain --versionanswer on a TTY or over SSH, without a display.- Plain builds with CMake, and every pull request runs the tests.
Plain 0.2.0
Faster
- Typing in a long file no longer lags: a keystroke at the end of a 10,000-line config takes 2 ms instead of 160. Files now load through Qt Quick's TextEdit, which draws only the visible lines of a long text.
- Opening is about twice as fast: a 10,000-line config in 0.27 s instead of 0.5, a 2,000-line one in 60 ms.
- Lines over 2,000 characters stay uncolored, so a minified file's single line opens in 12 ms and types at 10 ms a key instead of half a second.
- Files over 1 MB are put aside before reading them, and saving other files in the same folder no longer makes Plain reread the open one.
Safer saving
- Overwrite in place now checks the file on disk first, like Save, so it never writes over changes made elsewhere since you opened it.
- A save stops when the file can't be read back to check it hasn't changed.
- Reload keeps your text when the file on disk has become unreadable, isn't text, or is gone, instead of emptying the editor.
- A file ending in a cut-off UTF-8 sequence is refused instead of being opened without those bytes, which saving would have dropped.
- Replacing a file asks first when it would change the file's group, and a failed restore of special permission bits is reported.
- A new file in a folder you can't write opens locked, like a read-only file.
Editing
- The find bar is at the top, its match count follows your edits, and Ctrl+G 1 2 Enter typed quickly lands every key in Go to line.
- Tab over a selection within one line replaces it with the indentation.
- Dismissing the save dialog while closing or opening another file cancels that, and saving an untitled file before opening another goes on to open it.
- The shortcut overlay and Go to line follow the desktop's text size.
Verified by Codex.
Plain 0.1.0
The first release of Plain, Omarchy's text editor for config files: the editor you don't have to learn. Ctrl+S saves, Ctrl+Z undoes, Ctrl+F finds, and the window closes like any other.
Editing
- Conventional keys throughout: save, open, undo and redo, find and replace, go to line (Ctrl+G), comment and uncomment (Ctrl+/), indent and outdent (Tab, Shift+Tab), word wrap (Alt+Z) and text size (Ctrl+Plus, Ctrl+Minus). F1 or the ? in the footer lists them all.
- Enter keeps the line's indentation, and tabs or spaces are detected from the file.
- Syntax colors for Lua (Hyprland's config), hyprlang, INI and other
key = valuefiles, TOML, JSON, YAML, shell and CSS, from a small built-in highlighter that opens a 10,000-line file in under a second.
Careful with files
- Saves atomically and follows symlinks, so linked configs stay linked.
- Keeps line endings, a byte-order mark and the final newline as they were. Opening and saving without edits gives back the same bytes.
- Never saves over a version you haven't seen: it checks the file right before every save, and asks when something else changed or deleted it.
- Asks before writing in place when replacing the file would lose hard links, ownership, special permission bits or extended attributes.
- Opens only valid UTF-8 text. Files that belong to root open read-only, with a lock in the footer and the
sudoeditcommand to edit them.
Fits the desktop
- Follows the Omarchy theme, font and text size live, with dialogs in the theme's colors and Hyprland's corner rounding.
- Works as
$EDITOR,$VISUALand$SUDO_EDITOR: it runs in the foreground and exits when its window closes.