Split up configs into seperate packages
This commit is contained in:
98
base/bin/rofi_run
Executable file
98
base/bin/rofi_run
Executable file
@ -0,0 +1,98 @@
|
||||
#!/usr/bin/env bash
|
||||
|
||||
NAME=$(basename "$0")
|
||||
VER="0.4"
|
||||
|
||||
usage()
|
||||
{
|
||||
cat <<- EOF
|
||||
|
||||
USAGE: $NAME [OPTIONS]
|
||||
|
||||
OPTIONS:
|
||||
|
||||
-h,--help Display this message
|
||||
|
||||
-v,--version Display script version
|
||||
|
||||
-w,--window Switch between open windows
|
||||
|
||||
-r,--run Program launcher & run dialog
|
||||
|
||||
-q,--qalculate Persistant calculator dialog (requires libqalculate)
|
||||
|
||||
-c,--clipboard Select previous clipboard entries (requires greenclip)
|
||||
|
||||
-b,--browser Browser search by keyword (requires surfraw)
|
||||
|
||||
-l,--logout Session logout dialog
|
||||
|
||||
|
||||
Without any options the run dialog will be opened.
|
||||
|
||||
EOF
|
||||
}
|
||||
|
||||
for arg in "$@"; do
|
||||
case $arg in
|
||||
-h|--help)
|
||||
usage
|
||||
exit 0
|
||||
;;
|
||||
-v|--version)
|
||||
echo -e "$NAME -- Version $VER"
|
||||
exit 0
|
||||
;;
|
||||
-r|--run)
|
||||
rofi -modi run,drun -show drun -line-padding 4 \
|
||||
-columns 2 -padding 50 -hide-scrollbar \
|
||||
-show-icons -drun-icon-theme "ArchLabs-Light"
|
||||
;;
|
||||
-w|--window)
|
||||
rofi -modi window -show window -hide-scrollbar -padding 50 -line-padding 4
|
||||
;;
|
||||
-q|--qalculate)
|
||||
hash qalc &>/dev/null || { echo "Requires 'libqalculate' installed"; exit 1; }
|
||||
rofi -modi "calc:qalc +u8 -nocurrencies" -padding 50 \
|
||||
-show "calc:qalc +u8 -nocurrencies" -line-padding 4 \
|
||||
-hide-scrollbar
|
||||
;;
|
||||
-c|--clipboard)
|
||||
hash greenclip &>/dev/null || { echo "Requires 'greenclip' installed"; exit 1; }
|
||||
rofi -modi "clipboard:greenclip print" -padding 50 \
|
||||
-line-padding 4 -show "clipboard:greenclip print" \
|
||||
-hide-scrollbar
|
||||
;;
|
||||
-b|--browser)
|
||||
hash surfraw &>/dev/null || { echo "Requires 'surfraw' installed"; exit 1; }
|
||||
|
||||
surfraw -browser="$BROWSER" "$(sr -elvi | awk -F'-' '{print $1}' |
|
||||
sed '/:/d' | awk '{$1=$1};1' |
|
||||
rofi -hide-scrollbar -kb-row-select 'Tab' \
|
||||
-kb-row-tab 'Control+space' -dmenu \
|
||||
-mesg 'Tab for Autocomplete' -i -p 'Web Search' \
|
||||
-padding 50 -line-padding 4)"
|
||||
;;
|
||||
-l|--logout)
|
||||
ANS="$(rofi -sep "|" -dmenu -i -p 'System' -width 20 \
|
||||
-hide-scrollbar -line-padding 4 -padding 20 \
|
||||
-lines 4 <<< " Lock| Logout| Reboot| Shutdown")"
|
||||
|
||||
case "$ANS" in
|
||||
*Lock) i3lock-fancy ;;
|
||||
*Logout) session-logout || pkill -15 -t tty"$XDG_VTNR" Xorg ;;
|
||||
*Reboot) systemctl reboot ;;
|
||||
*Shutdown) systemctl -i poweroff
|
||||
esac
|
||||
;;
|
||||
*)
|
||||
echo
|
||||
echo "Option does not exist: $arg"
|
||||
echo
|
||||
exit 2
|
||||
esac
|
||||
done
|
||||
|
||||
(( $# == 0 )) && "$0" -r
|
||||
|
||||
exit 0
|
Reference in New Issue
Block a user