From 032dff2024359b7c32837e177fd068a69a43363f Mon Sep 17 00:00:00 2001 From: Dennis Schoepf Date: Thu, 27 Nov 2025 17:15:18 +0100 Subject: [PATCH] adds fuzzel project helper --- modules/wm/fuzzel/scripts/fuzzel-projects.sh | 14 ++++++++++++++ modules/wm/niri/config/config.kdl | 1 + 2 files changed, 15 insertions(+) create mode 100755 modules/wm/fuzzel/scripts/fuzzel-projects.sh diff --git a/modules/wm/fuzzel/scripts/fuzzel-projects.sh b/modules/wm/fuzzel/scripts/fuzzel-projects.sh new file mode 100755 index 0000000..377a5ab --- /dev/null +++ b/modules/wm/fuzzel/scripts/fuzzel-projects.sh @@ -0,0 +1,14 @@ +#!/bin/sh + +projects=$(fd -d=1 -t=d . ~/dev) +projects_with_names=() + +for project in ${projects[*]}; do + projects_with_names+=("$(basename $project)\t$project") +done + +selected=$(printf "$projects_with_names" | fuzzel --dmenu --with-nth=1 --accept-nth=2 --prompt "Work on: ") + +if [ "$selected" != "" ]; then + ghostty --working-directory="$selected" +fi diff --git a/modules/wm/niri/config/config.kdl b/modules/wm/niri/config/config.kdl index 0c639cd..d19a757 100644 --- a/modules/wm/niri/config/config.kdl +++ b/modules/wm/niri/config/config.kdl @@ -303,6 +303,7 @@ binds { Mod+M hotkey-overlay-title="System Monitor" { spawn-sh "ghostty -e btop"; } Mod+N hotkey-overlay-title="File Manager" { spawn "nautilus"; } Mod+V hotkey-overlay-title="Clipboard" { spawn-sh "~/.config/fuzzel/bin/fuzzel-cliphist.sh"; } + Mod+W hotkey-overlay-title="Work on project" { spawn-sh "~/.config/fuzzel/bin/fuzzel-projects.sh"; } Mod+Alt+L hotkey-overlay-title="Lock the Screen: hyprlock" { spawn "hyprlock"; } // Use spawn-sh to run a shell command. Do this if you need pipes, multiple commands, etc.