diff options
Diffstat (limited to 'lwc')
-rwxr-xr-x | lwc | 39 |
1 files changed, 36 insertions, 3 deletions
@@ -1,22 +1,55 @@ #!/bin/sh + +#{{{ printhelp +printhelp () { + printf "lwc: librewolf menu interface.\n" + printf " -u URL ) pass URL to browser\n" + printf " -d ARGS ) pass ARGS to menu command\n" + printf " -w ) use Wayland menu command (tofi)\n" + printf " -x ) use X11 menu command (dmenu)\n" + exit +} +#}}} + +#{{{ getopts +while getopts "hwxd:u:" o; do case "${o}" in + d) DMENU_ARGS="$OPTARG" ;; + u) URL="$OPTARG" ;; + w) DMENU="tofi" ;; + x) DMENU="dmenu" ;; + *) printhelp ;; +esac done +#}}} + +#{{{ Native Profiles if [ -f ~/.librewolf/profiles.ini ]; then NATIVE_PROFILES=`grep 'Path=' ~/.librewolf/profiles.ini | cut -d'.' -f2` else unset NATIVE_PROFILES fi +#}}} + +#{{{ Flatpak Profiles if [ -f ~/.var/app/io.gitlab.librewolf-community/.librewolf/profiles.ini ]; then FLATPAK_PROFILES=`grep 'Path=' ~/.var/app/io.gitlab.librewolf-community/.librewolf/profiles.ini | cut -d'.' -f2 | sed 's/$/ F/g'` else unset FLATPAK_PROFILES fi +#}}} + +#{{{ Add Profiles if [ -n "$NATIVE_PROFILES" -a -n "$FLATPAK_PROFILES" ]; then INT="\n" fi PROFILES="$NATIVE_PROFILES$INT$FLATPAK_PROFILES" -CHOSEN=`printf "$PROFILES" | dmenu -l 15` +#}}} + +#{{{ Choose Profiles +CHOSEN=`printf "$PROFILES" | $DMENU $DMENU_ARGS` [ -z "$CHOSEN" ] && exit 2 if `echo "$CHOSEN" | grep -qE ' F$'`; then - exec flatpak run io.gitlab.librewolf-community -P `echo "$CHOSEN" | sed 's/ F$//'` "$@" + exec flatpak run io.gitlab.librewolf-community -P `echo "$CHOSEN" | sed 's/ F$//'` $URL else - exec librewolf -P "$CHOSEN" "$@" + exec librewolf -P "$CHOSEN" $URL fi +#}}} |