Skip to content

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Quick Note

A floating scratch pad for Omarchy Quattro. One configurable file, autosaved. The note is stamped with the app you came from, a corner peek comes back when you return to that app, and a second shortcut can swallow the clipboard without opening the overlay.

Install

omarchy plugin add https://github.com/vitally/omarchy-quick-note.git --enable

For a local checkout:

mkdir -p ~/.config/omarchy/plugins/vt.quicknote
cp -a /path/to/vt.quicknote/. ~/.config/omarchy/plugins/vt.quicknote/
omarchy-shell shell rescanPlugins
omarchy plugin enable vt.quicknote

A plugin cannot ship a Hyprland bind. Add your own in ~/.config/hypr/bindings.lua:

o.bind("SUPER + N", "Quick Note", "omarchy-shell -q shell toggle vt.quicknote")
o.bind("SUPER + ALT + N", "Capture to Quick Note", "omarchy-shell -q shell call vt.quicknote capture ''")

Check omarchy menu keybindings --print before picking a chord. If it is already bound, hl.unbind(...) first. SUPER + SHIFT + N is Omarchy's Editor binding.

Usage

  • The toggle bind opens the same file every time. If that app already has a section, the caret goes to a new line at the end of it. A heading is added only the first time you jot from that app.
  • Typing autosaves 400ms after you pause, and again when the pad is dismissed.
  • Escape, Super+W (Omarchy close-window), Super+Q, or Ctrl+W closes it. The overlay is a layer-shell surface, so Hyprland's close-window bind does not see it — those keys are handled inside the pad.
  • A click outside the card also dismisses it.
  • The capture bind appends the current clipboard as text. It does not open the overlay and does not print the clipboard anywhere else.
  • When peek is on, a small card appears in the chosen corner if the focused app already has a stamp in the file. Click it to reopen that section.
  • The bottom of the pad has the file path, stamp mode, and peek corner. Changes write to ~/.config/omarchy/shell.json.

Configure

Settings are inline on the plugins[] entry in ~/.config/omarchy/shell.json:

{
  "id": "vt.quicknote",
  "path": "~/Notes/scratch.md",
  "stamp": "app",
  "peek": true,
  "peekCorner": "bottom-right"
}
Setting Type Default Description
path string ~/.local/share/vt.quicknote/note.md The one file the pad edits. ~ and $HOME expand. Relative paths are under $HOME.
stamp string app app writes the desktop app name. title also writes the window title (document and tab names). off writes no header.
peek boolean true Show the return peek. Set false or "off" to hide it.
peekCorner string bottom-right bottom-right, bottom-left, top-right, or top-left. Aliases: br, bl, tr, tl.

The pad uses the current Omarchy theme's popup fill and Hyprland's active window border (the orange col.active_border in this theme), plus the menu scrim behind the overlay. Changing theme restyles it with the rest of the shell.

omarchy plugin enable creates { "id": "vt.quicknote" } if needed. The pad's footer writes these fields for you; you can still edit them by hand.

A default file created by the plugin is 0600 in a 0700 directory. A path you pointed at an existing notes vault is not chmod'd.

How it works

The overlay stays loaded so peek and capture work without a cold start. It reads the focused monitor's active workspace only when you open the pad, capture, or to decide whether the peek should show. An empty workspace (for example the other monitor with no windows) is treated as no app: no heading, caret at the end of the file.

Each app gets one section. Opening or capturing from Ghostty again continues that block instead of appending another ## heading. Title mode still starts a new section when the window title changes.

App identity is the window's appId / initialClass. The stamp label is the desktop entry name, never a window title, unless you set stamp to title. Peek matching uses labels already in the file. There is no side database of focus, titles, or clipboard.

Stamps look like:

## Firefox

the thought

With stamp set to title:

## Firefox · Pull Request #4821

Older ## 2026-08-19 14:32 Firefox headings are still recognized.

The same file can be your Obsidian daily note or any other editor.

Remove

omarchy plugin remove vt.quicknote

The note file is left in place. Delete it yourself if you want it gone.

Tests

node test/model.test.js

Dependencies and safety

The plugin requires Omarchy Quattro and runs as QML inside the existing omarchy-shell process. It imports the shell's qs.Commons and qs.Ui components, plus Quickshell's Hyprland, Wayland, and FileView bindings.

Clipboard capture is a one-shot wl-paste --type text on the capture bind. There is no clipboard watcher, network call, background service, installer, remote build, shell hook, or elevated operation.

The note editor is TextEdit.PlainText. Peek labels and excerpts use Text.PlainText, so crafted markup in a note or desktop name cannot be auto-detected as rich text or trigger a remote image fetch from omarchy-shell.

Like all Omarchy plugins, it runs unsandboxed with the user's permissions; review the source before enabling it.

About

Omarchy Quattro overlay: a context-linked scratch pad that autosaves one file

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages