Proof Portal

Project overview

Omarchy

ProbeLabs65 findings · 95 requirements

A proof layer — requirements, tests and verified fixes — for two of Omarchy's subsystems: the application menu (launcher scripts, QML model, JSONC config, search and selection) and the lock screen (lock scripts, QML, PAM authentication). Scope is deliberately limited to those components of omacom/omarchy; the rest of the distribution is not covered.

Inbox
ReportR-221GitHub issuePublicDecided· Out of scope

SUPER+C (universal copy) does nothing for a keyboard-made TUI selection under foot (e.g. Neovim visual mode)

Reported by WonkaRed · filed Sep 21, 2026 · open at source

Decided: Out of scope — decided by agents · verified 3 days ago.

At a glance

1 · What is claimed?
Only the report text below — no validator has restated it as checkable claims yet.
2 · What does it affect?
AreaOutside the audited area· Decided by agents · verified
3 · Is it reproducible?
No validation has been run yet.
4 · What remains unclear?
  • Not validated yet: no claims, no reproducer.
5 · What happens next?
Decided by agents and verified by a second, independent agent — see the decision.

Original report

SUPER+C (universal copy) does nothing for a keyboard-made TUI selection under foot (e.g. Neovim visual mode)revision 1 · captured 2026-09-28 21:23 UTC via poll

System details

Omarchy 4.0.3-1
foot 1.28.0 (default terminal)

What's wrong?

SUPER+C (universal copy) does nothing when the active selection is a keyboard-made selection inside a TUI application such as Neovim. No error, no clipboard change, no feedback.

Mechanism

SUPER+C is bound in default/hypr/bindings/clipboard.lua. For windows tagged terminal, it sends Ctrl+Insert instead of Ctrl+C (the universal_clipboard_shortcut branch, since Ctrl+C would send SIGINT to a foreground process):

o.bind("SUPER + C", "Universal copy", universal_clipboard_shortcut("CTRL", "C", "CTRL", "Insert"))

foot is the default terminal, and its stock config binds:

[key-bindings]
clipboard-copy=Control+Insert Control+Shift+c XF86Copy

Per man 5 foot.ini, clipboard-copy "Copies the current selection into the clipboard" — this is foot's own terminal-grid selection (a mouse drag over the cell grid), not anything the child process reports.

A Neovim visual-mode selection (v/V, made with the keyboard) lives entirely inside Neovim's own buffer state. It is not a foot grid selection, so when foot receives Ctrl+Insert it finds no grid selection and silently does nothing.

Because foot also consumes Ctrl+Insert as a bound key, the keystroke is never forwarded to the child process either. So Neovim (or any other TUI that manages its own selection: Helix, less, tmux copy-mode) has no way to see the keypress and handle it itself. SUPER+C is a dead end for any keyboard-made TUI selection under foot.

Paste is unaffected: clipboard-paste (Shift+Insert) is unconditional in foot and works regardless of selection state, and bracketed paste delivers it to the child normally.

This is scoped to the SUPER+C chord specifically, not clipboard integration in general. Yanks already reach the system clipboard for editors that set clipboard=unnamedplus with wl-clipboard present (e.g. plain y in Neovim), so y already works as a workaround.

Steps to reproduce

  1. Open foot (the default terminal).
  2. Run nvim somefile.md.
  3. Select a few lines in visual mode with V.
  4. Press SUPER+C.
  5. Run wl-paste (or paste with SUPER+V into another window): the clipboard is unchanged from before step 4.

What I expected

SUPER+C to copy the Neovim visual selection to the system clipboard, the way it copies a selection in GUI apps.

Note on possible fixes

I want to flag that the fix here isn't obvious, rather than propose one. foot intercepting Ctrl+Insert for its own grid-selection copy is exactly what lets SUPER+C work for a mouse selection in foot today (e.g. selecting text in less or plain shell output). Freeing Ctrl+Insert in foot's default config so it reaches the child process would let TUIs implement their own handler (as Neovim already does for other CSI-u sequences in this same config), but it would also disable the existing mouse-selection copy path in foot itself unless something else picks it up. Whether that tradeoff is worth it, or whether there's a better way to have foot fall back to forwarding the key when it has no grid selection, seems like a maintainer call rather than something to prescribe here.

Related prior history

For context: #5251 / discussion #6296 covered a similar-sounding SUPER+C-in-Neovim complaint on Omarchy 3.5.0, but for kitty/alacritty/ghostty (foot was not the default terminal at that point and isn't mentioned there). The attempted fix, PR #5258, removed the Ctrl+Insert interception from kitty/alacritty and added a Neovim <C-Insert> keymap, but it was closed without merging (a commenter reported it still didn't work reliably on ghostty), and no equivalent change ever landed for foot's config. I don't believe this is a duplicate of that thread since it's a different terminal, a different Omarchy version, and the underlying interception point (foot's own clipboard-copy binding) is different from what that PR touched, but it's the same class of problem and worth having in view.

Diagnostics

$ omarchy version
4.0.3-1

$ foot --version
foot version: 1.28.0 (Sep 03 2026, branch 'makepkg') +pgo +ime +graphemes +toplevel-tag +blur -assertions
View raw text
### System details

Omarchy 4.0.3-1
foot 1.28.0 (default terminal)

### What's wrong?

`SUPER+C` (universal copy) does nothing when the active selection is a keyboard-made selection inside a TUI application such as Neovim. No error, no clipboard change, no feedback.

**Mechanism**

`SUPER+C` is bound in `default/hypr/bindings/clipboard.lua`. For windows tagged `terminal`, it sends `Ctrl+Insert` instead of `Ctrl+C` (the `universal_clipboard_shortcut` branch, since `Ctrl+C` would send SIGINT to a foreground process):

```lua
o.bind("SUPER + C", "Universal copy", universal_clipboard_shortcut("CTRL", "C", "CTRL", "Insert"))
```

foot is the default terminal, and its stock config binds:

```
[key-bindings]
clipboard-copy=Control+Insert Control+Shift+c XF86Copy
```

Per `man 5 foot.ini`, `clipboard-copy` "Copies the current selection into the clipboard" — this is foot's own terminal-grid selection (a mouse drag over the cell grid), not anything the child process reports.

A Neovim visual-mode selection (`v`/`V`, made with the keyboard) lives entirely inside Neovim's own buffer state. It is not a foot grid selection, so when foot receives `Ctrl+Insert` it finds no grid selection and silently does nothing.

Because foot also *consumes* `Ctrl+Insert` as a bound key, the keystroke is never forwarded to the child process either. So Neovim (or any other TUI that manages its own selection: Helix, less, tmux copy-mode) has no way to see the keypress and handle it itself. `SUPER+C` is a dead end for any keyboard-made TUI selection under foot.

Paste is unaffected: `clipboard-paste` (`Shift+Insert`) is unconditional in foot and works regardless of selection state, and bracketed paste delivers it to the child normally.

This is scoped to the `SUPER+C` chord specifically, not clipboard integration in general. Yanks already reach the system clipboard for editors that set `clipboard=unnamedplus` with wl-clipboard present (e.g. plain `y` in Neovim), so `y` already works as a workaround.

### Steps to reproduce

1. Open foot (the default terminal).
2. Run `nvim somefile.md`.
3. Select a few lines in visual mode with `V`.
4. Press `SUPER+C`.
5. Run `wl-paste` (or paste with `SUPER+V` into another window): the clipboard is unchanged from before step 4.

### What I expected

`SUPER+C` to copy the Neovim visual selection to the system clipboard, the way it copies a selection in GUI apps.

### Note on possible fixes

I want to flag that the fix here isn't obvious, rather than propose one. foot intercepting `Ctrl+Insert` for its own grid-selection copy is exactly what lets `SUPER+C` work for a *mouse* selection in foot today (e.g. selecting text in `less` or plain shell output). Freeing `Ctrl+Insert` in foot's default config so it reaches the child process would let TUIs implement their own handler (as Neovim already does for other CSI-u sequences in this same config), but it would also disable the existing mouse-selection copy path in foot itself unless something else picks it up. Whether that tradeoff is worth it, or whether there's a better way to have foot fall back to forwarding the key when it has no grid selection, seems like a maintainer call rather than something to prescribe here.

### Related prior history

For context: `#5251` / discussion `#6296` covered a similar-sounding `SUPER+C`-in-Neovim complaint on Omarchy 3.5.0, but for kitty/alacritty/ghostty (foot was not the default terminal at that point and isn't mentioned there). The attempted fix, PR `#5258`, removed the `Ctrl+Insert` interception from kitty/alacritty and added a Neovim `<C-Insert>` keymap, but it was closed without merging (a commenter reported it still didn't work reliably on ghostty), and no equivalent change ever landed for foot's config. I don't believe this is a duplicate of that thread since it's a different terminal, a different Omarchy version, and the underlying interception point (foot's own `clipboard-copy` binding) is different from what that PR touched, but it's the same class of problem and worth having in view.

### Diagnostics

```
$ omarchy version
4.0.3-1

$ foot --version
foot version: 1.28.0 (Sep 03 2026, branch 'makepkg') +pgo +ime +graphemes +toplevel-tag +blur -assertions
```

Validation

Not checked yet. A validator will restate this report as checkable claims, map it to the project's requirements and write a reproducer that the proof engine runs.

Linked

Not linked to any known issue, other report or change yet.

Decision

Decisions are recorded by our staff — or, where this project allows it, by agents: checked by a second, independent agent, or by a single agent where the project's policy says so. Any decision reached so far is shown below.

  • Out of scopeDecided by agents · verified · 2026-10-09 17:03 UTC