feat(keybinds): capture region/screen to file
All checks were successful
Check / eval (push) Successful in 2m54s
All checks were successful
Check / eval (push) Successful in 2m54s
Add SHIFT+Print (region → file) and CTRL+Print (screen → file) next to the existing bare Print (region → clipboard). Each saves a timestamped PNG under ~/Pictures/Screenshots and toasts the path — the same grim/slurp plumbing and directory the Capture menu's "→ file" rows already use. Single-source keybinds.nix, so the SUPER+? cheatsheet lists both new rows. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -263,13 +263,6 @@ mime defaults (item 8's `xdg.mimeApps` surface) so audio/video files open
|
|||||||
in them. (mpv already the video default per HARDWARE-QUEUE — confirm and
|
in them. (mpv already the video default per HARDWARE-QUEUE — confirm and
|
||||||
extend to audio; pick the audio player.)
|
extend to audio; pick the audio player.)
|
||||||
|
|
||||||
### 38. Capture-to-file keybinds
|
|
||||||
(Raised by Bernardo, 2026-07-07 — item 8.) Add binds for "capture region
|
|
||||||
→ file" and "capture screen → file" (distinct from the existing
|
|
||||||
clipboard/recording capture flows), landing PNGs in ~/Pictures. Add to
|
|
||||||
`keybinds.nix` (single source → Hyprland + the SUPER+? cheatsheet) and
|
|
||||||
the Capture menu; reuse the existing grim/slurp plumbing.
|
|
||||||
|
|
||||||
### 41. Floating-window audit
|
### 41. Floating-window audit
|
||||||
(Raised by Bernardo, 2026-07-07 — item 11.) Decide which windows should
|
(Raised by Bernardo, 2026-07-07 — item 11.) Decide which windows should
|
||||||
open floating by default (config dialogs, pavucontrol, file-chooser
|
open floating by default (config dialogs, pavucontrol, file-chooser
|
||||||
|
|||||||
@@ -236,6 +236,11 @@ QA machine), the **T14s** (webcam case).
|
|||||||
unchanged (the bar still reserves its space). Accepted trade-off
|
unchanged (the bar still reserves its space). Accepted trade-off
|
||||||
of `layer: bottom`: a floating window dragged over the top strip
|
of `layer: bottom`: a floating window dragged over the top strip
|
||||||
can now overlap the bar — confirm that's the only regression.
|
can now overlap the bar — confirm that's the only regression.
|
||||||
|
- [ ] **Capture-to-file keybinds** (iteration #59, item 38) — after
|
||||||
|
`home-update` + relogin: SHIFT+Print prompts a region select then
|
||||||
|
saves a PNG under ~/Pictures/Screenshots (toast shows the path);
|
||||||
|
CTRL+Print saves the whole screen the same way; bare Print still
|
||||||
|
copies a region to the clipboard. Both new rows appear in SUPER+?.
|
||||||
- [ ] **rofi menu polish** (iteration #58, item 39 + #56/#57 34/40) —
|
- [ ] **rofi menu polish** (iteration #58, item 39 + #56/#57 34/40) —
|
||||||
after `home-update`: (a) menu › System › Power profile shows a
|
after `home-update`: (a) menu › System › Power profile shows a
|
||||||
colored icon per profile (performance/balanced/power-saver), not
|
colored icon per profile (performance/balanced/power-saver), not
|
||||||
|
|||||||
@@ -17,6 +17,19 @@ Template:
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
|
## 2026-07-07 — Capture-to-file keybinds (iteration #59, item 38)
|
||||||
|
- **Task:** BACKLOG item 38 — direct keybinds for region→file and
|
||||||
|
screen→file (the Capture *menu* already had both "→ file" rows).
|
||||||
|
- **Fix:** `modules/home/keybinds.nix` — added `SHIFT+Print` (region→file)
|
||||||
|
and `CTRL+Print` (screen→file) alongside the existing bare `Print`
|
||||||
|
(region→clipboard). Each saves a timestamped PNG under
|
||||||
|
~/Pictures/Screenshots and toasts the path — same grim/slurp plumbing +
|
||||||
|
dir the menu's "→ file" rows use. Single-source, so the SUPER+?
|
||||||
|
cheatsheet (rofi.nix reads the same list) gets both rows automatically.
|
||||||
|
- **Verified:** V0 green. `nix eval` of the rendered binds confirms
|
||||||
|
`$HOME`/`$f`/`$(...)` pass through literally to the shell (no Nix
|
||||||
|
interpolation). Actual key-firing + file landing is a V3 check (queued).
|
||||||
|
|
||||||
## 2026-07-07 — rofi search mis-ranks + power-profile icons (iteration #58, items 31 & 39)
|
## 2026-07-07 — rofi search mis-ranks + power-profile icons (iteration #58, items 31 & 39)
|
||||||
- **#31 (rofi search broken):** Bernardo ran the live A/B — `-sorting-method
|
- **#31 (rofi search broken):** Bernardo ran the live A/B — `-sorting-method
|
||||||
normal` and `-matching normal` both fixed "steam"→Steam; `-no-sort` did
|
normal` and `-matching normal` both fixed "steam"→Steam; `-no-sort` did
|
||||||
|
|||||||
@@ -59,8 +59,13 @@
|
|||||||
{ mods = "$mod"; key = "K"; action = "movefocus, u"; desc = "Focus up"; }
|
{ mods = "$mod"; key = "K"; action = "movefocus, u"; desc = "Focus up"; }
|
||||||
{ mods = "$mod"; key = "J"; action = "movefocus, d"; desc = "Focus down"; }
|
{ mods = "$mod"; key = "J"; action = "movefocus, d"; desc = "Focus down"; }
|
||||||
|
|
||||||
# Screenshot region to clipboard (the menu's Capture module has more).
|
# Screenshots (the menu's Capture module has the rest: OCR, recording).
|
||||||
|
# Bare Print → region to clipboard; the two → file binds save a
|
||||||
|
# timestamped PNG under ~/Pictures/Screenshots and toast the path, the
|
||||||
|
# same plumbing the Capture menu's "→ file" rows use.
|
||||||
{ mods = ""; key = "Print"; action = "exec, grim -g \"$(slurp)\" - | wl-copy"; desc = "Screenshot region → clipboard"; }
|
{ mods = ""; key = "Print"; action = "exec, grim -g \"$(slurp)\" - | wl-copy"; desc = "Screenshot region → clipboard"; }
|
||||||
|
{ mods = "SHIFT"; key = "Print"; action = "exec, f=$HOME/Pictures/Screenshots/$(date +%Y%m%d-%H%M%S).png; mkdir -p $HOME/Pictures/Screenshots && grim -g \"$(slurp)\" \"$f\" && notify-send \"Screenshot saved\" \"$f\""; desc = "Screenshot region → file"; }
|
||||||
|
{ mods = "CTRL"; key = "Print"; action = "exec, f=$HOME/Pictures/Screenshots/$(date +%Y%m%d-%H%M%S).png; mkdir -p $HOME/Pictures/Screenshots && grim \"$f\" && notify-send \"Screenshot saved\" \"$f\""; desc = "Screenshot screen → file"; }
|
||||||
];
|
];
|
||||||
|
|
||||||
# Rendered only when the session has >1 layout (a comma in
|
# Rendered only when the session has >1 layout (a comma in
|
||||||
|
|||||||
Reference in New Issue
Block a user