Window list bound to apostrophe in ratpoison mode.

This commit is contained in:
Storm Dragon 2022-11-25 02:35:58 -05:00
parent 7412503611
commit 96fa9c3f3a
3 changed files with 14 additions and 0 deletions

View File

@ -21,5 +21,7 @@ An uppercase I looks like a 1, 3 from i3, and 8 because the song [We Are 138](ht
- libnotify: For sending notifications - libnotify: For sending notifications
- notification-daemon: To handle notifications - notification-daemon: To handle notifications
- pamixer: for the mute-unmute script - pamixer: for the mute-unmute script
- jq: for getting window titles
- yad: For screen reader accessible dialogs
I38 will try to detect your browser, file manager, and web browser and present you with a list of options to bind to their launch keys. It will also create bindings for pidgin and mumble if they are installed. To use the bindings, press your ratpoison mode key which is set when you run the i38.sh script. next, press the binding for the application you want, w for web browser, e for text editor, f for file manager, m for mumble, etc. To learn all the bindings, find and read the mode ratpoison section of ~/.config/i3/config. I38 will try to detect your browser, file manager, and web browser and present you with a list of options to bind to their launch keys. It will also create bindings for pidgin and mumble if they are installed. To use the bindings, press your ratpoison mode key which is set when you run the i38.sh script. next, press the binding for the application you want, w for web browser, e for text editor, f for file manager, m for mumble, etc. To learn all the bindings, find and read the mode ratpoison section of ~/.config/i3/config.

2
i38.sh
View File

@ -353,6 +353,8 @@ fi)
$(if command -v transfersh &> /dev/null ; then $(if command -v transfersh &> /dev/null ; then
echo 'bindsym t exec bash -c '"'"'fileName="$(yad --title "I38 Upload File" --file)" && url="$(transfersh "${fileName}" | tee >(yad --title "I38 - Uploading ${fileName##*/} ..." --progress --pulsate --auto-close))" && echo "${url#*saved at: }" | tee >(yad --title "I38 - Upload URL" --show-cursor --show-uri --button yad-close --sticky --text-info) >(xclip -selection clipboard)'"', mode \"default\"" echo 'bindsym t exec bash -c '"'"'fileName="$(yad --title "I38 Upload File" --file)" && url="$(transfersh "${fileName}" | tee >(yad --title "I38 - Uploading ${fileName##*/} ..." --progress --pulsate --auto-close))" && echo "${url#*saved at: }" | tee >(yad --title "I38 - Upload URL" --show-cursor --show-uri --button yad-close --sticky --text-info) >(xclip -selection clipboard)'"', mode \"default\""
fi) fi)
# Get a list of windows in the current workspace
bindsym apostrophe exec --no-startup-id ${i3Path}/scripts/window_list.sh
# Restart orca # Restart orca
bindsym Shift+o exec $(command -v orca) --replace, mode "default" bindsym Shift+o exec $(command -v orca) --replace, mode "default"
# reload the configuration file # reload the configuration file

10
scripts/window_list.sh Executable file
View File

@ -0,0 +1,10 @@
#!/usr/bin/env bash
select_window() {
local window="$(yad --list --column "Select Window" "$@")"
echo "${window%|}"
}
i3-msg '[title="'$(i3-msg -t get_tree | jq -r "recurse(.nodes[]) | select(.window) | .name" | select_window)'"] focus'
exit 0