aboutsummaryrefslogtreecommitdiff
path: root/scripts/.scripts/config_files.sh
diff options
context:
space:
mode:
Diffstat (limited to 'scripts/.scripts/config_files.sh')
-rwxr-xr-xscripts/.scripts/config_files.sh18
1 files changed, 11 insertions, 7 deletions
diff --git a/scripts/.scripts/config_files.sh b/scripts/.scripts/config_files.sh
index 5051304..05bed33 100755
--- a/scripts/.scripts/config_files.sh
+++ b/scripts/.scripts/config_files.sh
@@ -1,6 +1,7 @@
#!/usr/bin/sh
-configs=("aliases:$HOME/dotfiles/aliases/.aliases/aliases"
+configs=(
+ "aliases:$HOME/dotfiles/aliases/.aliases/aliases"
"alacritty:$HOME/dotfiles/alacritty/.config/alacritty/alacritty.toml"
"awesome:$HOME/dotfiles/awesome/.config/awesome/rc.lua"
"kitty:$HOME/dotfiles/kitty/.config/kitty/kitty.conf"
@@ -19,11 +20,11 @@ configs=$(printf '%s\n' "${configs[@]}")
# Detect whether we're in a Wayland or X11 session
if [ "$XDG_SESSION_TYPE" = "wayland" ]; then
- # Wayland session - use wofi
- launcher="wofi --dmenu -i -l 10"
+ # Wayland session - use rofi with theme override
+ launcher=(rofi -dmenu -l 10 -theme-str "window { width: 45%; }")
elif [ "$XDG_SESSION_TYPE" = "x11" ]; then
# X11 session - use dmenu
- launcher="dmenu -i -l 10 -p 'open config file'"
+ launcher=(dmenu -i -l 10 -p 'open config file')
else
echo "Error: Could not detect display server (Wayland or X11)."
exit 1
@@ -31,9 +32,12 @@ fi
program_names=$(echo "$configs" | cut -d':' -f1)
-choice=$(echo "$program_names" | $launcher)
+choice=$(echo "$program_names" | "${launcher[@]}")
+
+# Exit silently if Escape was pressed or menu was closed
+[ -z "$choice" ] && exit 0
file=$(echo "$configs" | grep -w "$choice" | cut -d':' -f2)
-cwd=$(dirname $file)
-kitty -e nvim -c "cd $cwd" $file
+cwd=$(dirname "$file")
+kitty -e nvim -c "cd $cwd" "$file"