summaryrefslogtreecommitdiff
path: root/home-manager
diff options
context:
space:
mode:
authortriethyl <triethylammonium@pm.me>2026-03-19 20:57:04 -0400
committertriethyl <triethylammonium@pm.me>2026-03-19 20:57:04 -0400
commit3f8ad7c7a37a5cd4006b8df6ecdbefc35c910427 (patch)
tree312ac8ea7453394b843b9b8e8a6093470bf404b6 /home-manager
parentdf2a109f1a59e9e5cb6e136477286af5c0e2e376 (diff)
home-manager: fixed clipboard picker (I put too much effort into this)
Diffstat (limited to 'home-manager')
-rw-r--r--home-manager/features/gui/desktops/niri/parts/selectors.nix13
1 files changed, 8 insertions, 5 deletions
diff --git a/home-manager/features/gui/desktops/niri/parts/selectors.nix b/home-manager/features/gui/desktops/niri/parts/selectors.nix
index 8c24ad6..54c763a 100644
--- a/home-manager/features/gui/desktops/niri/parts/selectors.nix
+++ b/home-manager/features/gui/desktops/niri/parts/selectors.nix
@@ -144,13 +144,16 @@ in {
''
)
- # Clipboard Selector
+ # Scuffed Clipboard Selector
(
writers.writeNuBin "clipboard-selector" ''
- ${lib.getExe pkgs.cliphist} list
- | cut -f 2-
- | ${lib.getExe pkgs.fuzzel} --dmenu --placeholder "Clipboard"
- | ${pkgs.wl-clipboard}/bin/wl-copy
+ let raw_list = ${lib.getExe pkgs.cliphist} list
+ let processed_list = $raw_list | split row "\n"
+ let list = $processed_list | split column "\t"
+ let choice_list = $list | each {return ($in.column1 + " " + $in.column0) }
+ let user_choice = $choice_list | to text | ${lib.getExe pkgs.fuzzel} -d --placeholder "Clipboard"
+ let choice_index = $choice_list | enumerate | where item == $user_choice | get index | get 0
+ $processed_list | get $choice_index | ${lib.getExe pkgs.cliphist} decode | ${pkgs.wl-clipboard}/bin/wl-copy
''
)
];