32 lines
879 B
Bash
Executable File
32 lines
879 B
Bash
Executable File
#!/bin/bash
|
|
|
|
# Define your list of commands
|
|
commands=(
|
|
"Disable:bsp-layout remove"
|
|
"Tile:bsp-layout set tiled"
|
|
"Tall:bsp-layout set tall"
|
|
"Grid:bsp-layout set grid"
|
|
"Even:bsp-layout set even"
|
|
"Random paper:nitrogen --random --set-scaled ~/Pictures/Wallpapers"
|
|
)
|
|
|
|
# Create a formatted list for Rofi
|
|
formatted_commands=()
|
|
for cmd in "${commands[@]}"; do
|
|
IFS=":" read -r name command <<< "$cmd"
|
|
formatted_commands+=("$name")
|
|
done
|
|
|
|
# Use Rofi to display the list and get the selected command
|
|
selected_command=$(printf '%s\n' "${formatted_commands[@]}" | rofi -dmenu -p "Tiling settings" -theme ".config/rofi/launchers/type-1/style-3.rasi")
|
|
|
|
# Execute the selected command
|
|
for cmd in "${commands[@]}"; do
|
|
IFS=":" read -r name command <<< "$cmd"
|
|
if [[ "$name" == "$selected_command" ]]; then
|
|
eval "$command" &
|
|
break
|
|
fi
|
|
done
|
|
|