diff options
Diffstat (limited to 'bin')
| -rwxr-xr-x | bin/menuscripts/mapimg | 13 | ||||
| -rwxr-xr-x | bin/menuscripts/mcurs | 25 | ||||
| -rwxr-xr-x | bin/menuscripts/mdsktp | 21 | ||||
| -rwxr-xr-x | bin/menuscripts/memoji | 21 | ||||
| -rwxr-xr-x | bin/menuscripts/mhelp | 23 | ||||
| -rwxr-xr-x | bin/menuscripts/mmpcvol | 20 | ||||
| -rwxr-xr-x | bin/menuscripts/mpass | 32 | ||||
| -rwxr-xr-x | bin/menuscripts/mpassgen | 45 | ||||
| -rwxr-xr-x | bin/menuscripts/mplay | 20 | ||||
| -rwxr-xr-x | bin/menuscripts/mvid | 2 | 
10 files changed, 63 insertions, 159 deletions
diff --git a/bin/menuscripts/mapimg b/bin/menuscripts/mapimg index 151b8d0..a959d46 100755 --- a/bin/menuscripts/mapimg +++ b/bin/menuscripts/mapimg @@ -1,17 +1,8 @@  #!/bin/sh -if [ -z "$MENUCMD" ] -then -	menucmd="fzf" -elif [ "$MENUCMD" = "tofi" ] -then -	menucmd='tofi --width 700 --height 300 --prompt-text Appimage:' -else -	menucmd="dmenu -x -l 10 -g 1 -p Appimage:" -fi -  dest="$XDG_DATA_HOME"/appimages  appimage="$(find "$dest" -type f -printf "%f\n" |  	sed 's/\.[Aa]pp[Ii]mage$//g' | -	$menucmd)" +	commander -x -l -p "Appimage:")" +[ "$appimage" ] || exit 1  setsid "$dest/${appimage:-NOSEL}"* diff --git a/bin/menuscripts/mcurs b/bin/menuscripts/mcurs index 32f5525..4349e0b 100755 --- a/bin/menuscripts/mcurs +++ b/bin/menuscripts/mcurs @@ -1,22 +1,11 @@  #!/bin/sh -if [ "$MENUCMD" = "tofi" ] -then -	menucmd="tofi --width 30% --height 20% --padding-left 2% --matching-algorithm normal" -elif [ "$MENUCMD" = "dmenu" ] -then -	menucmd="dmenu -l 10 -g 1 -x -i"  -else -	menucmd="fzf" -fi -  # requirements -which $MENUCMD firefox > /dev/null || -	exit 1 +which "$BROWSER" > /dev/null || exit 1 + +choice="$(find "${1:-$HOME/docs/school}" | +	grep -i "cursus/index.html" 2> /dev/null | +	sed "s;$HOME;~;" | commander -x -d -c)" +[ "$choice" ] && exit 1 -choice="$(find ${1:-$HOME/docs/school} | -	grep "Cursus/index.html" 2> /dev/null | -	sed "s;$HOME;~;" | -	$menucmd)" -test -z "$choice" && exit 1 -firefox "$choice" +$BROWSER "$choice" diff --git a/bin/menuscripts/mdsktp b/bin/menuscripts/mdsktp index a48aca6..f07fb7b 100755 --- a/bin/menuscripts/mdsktp +++ b/bin/menuscripts/mdsktp @@ -1,21 +1,8 @@  #!/bin/sh  # Searches through .desktop files and prompt to launch them via dmenu -if [ "$MENUCMD" = "tofi" ] -then -	menucmd="tofi" -elif [ "$MENUCMD" = "dmenu" ] -then -	menucmd="dmenu -g 1 -i"  -else -	menucmd="fzf" -fi -choice="$(find ~/.local/share/applications \ -    -maxdepth 1 \ -    -type f \ -    -not -iname "wine-extension*" -a -iname "*.desktop" \ -    -printf "%f\n" | -	cut -d. -f1 | -	$menucmd)" -test -z "$choice" && exit 1 +choice="$(find ~/.local/share/applications -maxdepth 1 -type f -not -iname "wine-extension*" | +	awk '/\/[^.\/]+\.desktop/ {print $(NF-1)}' | +	commander -s -d -x -c)" +[ "$choice" ] || exit 1  gtk-launch "$choice"  diff --git a/bin/menuscripts/memoji b/bin/menuscripts/memoji index d051ad8..9c45950 100755 --- a/bin/menuscripts/memoji +++ b/bin/menuscripts/memoji @@ -7,36 +7,27 @@  if [ "$WAYLAND_DISPLAY" ]  then -	copycmd="wl-copy" +	alias copycmd="wl-copy"  else -	copycmd="xclip -sel c" -fi -if [ "$MENUCMD" = "tofi" ] -then -	menucmd="tofi --width 30% --height 30% --matching-algorithm normal --prompt-text Emoji:" -elif [ "$MENUCMD" = "dmenu" ] -then -	menucmd="dmenu -l 20 -g 1 -x -i -p Emoji:"  -else -	menucmd="fzf --prompt Emoji:" +	alias copycmd="xclip -sel c"  fi  set -e  case "$1" in  	"list")  		data=$(sed '0,/^__DATA__$/d' "$0") -		echo -n "$data" +		printf "%s" "$data"  		;;  	"copy")  		input=$(tee | cut -f 1 -d ' ') -		if [ ! -z "$input" ] +		if [ "$input" ]  		then  			notify-send "dmemoji" "$input <b>copied!</b>" -			echo -n "$input" | $copycmd +			printf "%s" "$input" | copycmd  		fi  		;;  	"") -		sh $0 list | $menucmd | sh $0 copy +		sh "$0" list | commander -p "Emoji:" -l -x | sh "$0" copy  		;;  esac diff --git a/bin/menuscripts/mhelp b/bin/menuscripts/mhelp index 5963a88..339d6bf 100755 --- a/bin/menuscripts/mhelp +++ b/bin/menuscripts/mhelp @@ -1,29 +1,18 @@  #!/usr/bin/env sh -if [ "$MENUCMD" = "tofi" ] -then -	program="$(tofi-run --prompt-text "program: ")" -	menucmd="tofi --width 50% --height 30% --matching-algorithm normal --prompt-text $program:" -elif [ "$MENUCMD" = "dmenu" ] -then -	program="$(dmenu_path | dmenu -l 4 -g 5 -p "program:")"  -	menucmd="dmenu -l 20 -g 1 -x -i -p $program:"  -else -	program="$(dmenu_path | fzf)" -	menucmd="fzf" -fi +program="$(commander -r -c -d)" -test -z "$program" && exit 1 +[ "$program" ] || exit 1 -option="$($program --help | +option="$("$program" --help |  	# Parse options  	grep "^ *-[-a-zA-Z0-9]* " |  	tr -s ' ' |  	sort | uniq |  	column -l 2 -t | -	$menucmd | +	commander -l -x -c -d |  	awk '{print $1}')" -test -z "$option" && exit 1 +[ "$option" ] || exit 1 -setsid $program $option +setsid "$program" "$option" diff --git a/bin/menuscripts/mmpcvol b/bin/menuscripts/mmpcvol index 0f36e18..239dec3 100755 --- a/bin/menuscripts/mmpcvol +++ b/bin/menuscripts/mmpcvol @@ -1,23 +1,13 @@  #!/bin/sh -if [ "$MENUCMD" = "tofi" ] -then -	menucmd="tofi --width 5% --height 10% --prompt-text"  -elif [ "$MENUCMD" = "dmenu" ] -then -	menucmd="dmenu -g 2 -l 1 -p" -else -	menucmd="fzf --prompt" -fi -  while true  do   	volume="$(mpc volume | awk '{print $2}' | cut -f1 -d'%')" -	choice="$(echo "plus\nmin" | -		$menucmd "$volume" | +	choice="$(printf "plus\nmin\n" | +		commander -d -c -p "$volume" |  		sed 's/plus/+/;s/min/-/')" -	test -z "$choice" && break -	nb="$($menucmd "$volume$choice" < /dev/null)" -	test -z "$nb" && break +	[ "$choice" ] || break +	nb="$(commander -c -p "$volume$choice" -i)" +	[ "$nb" ] || break  	mpc volume "$choice$nb"  done diff --git a/bin/menuscripts/mpass b/bin/menuscripts/mpass index 4ecd4bc..8d5f4eb 100755 --- a/bin/menuscripts/mpass +++ b/bin/menuscripts/mpass @@ -1,25 +1,27 @@  #!/usr/bin/env sh  store="${PASSWORD_STORE_DIR:-$HOME/.password-store}" -lscmd="ls --group-directories-first" -if [ "$MENUCMD" = "tofi" ] -then -	menucmd="tofi --prompt pass:" -elif [ "$MENUCMD" = "dmenu" ] -then -	menucmd="dmenu -l 4 -g 2 -i -p pass:"  -else -	menucmd="fzf --prompt pass:" -fi + +# list passwords, group directories first +list_pswds() +{ +	find "$1" \ +		-maxdepth 1 -mindepth 1 \ +		-not -name '.*' -type d -printf "%y\t%f\n" -o \ +		-not -name '.*' -not -type d -printf "%y\t%f\n" | +		sort -k1 -k2 | +		cut -f 2 | sed 's/\.gpg$//' +} +  while [ -d "$store/$file" ]  do -	choice="$($lscmd "$store/$file" | sed 's/\.gpg$//'| $menucmd)" -	[ "$choice" ] || break -	file="$file/$choice" +	choice="$(list_pswds "$store/$file" | commander -c -d)" +	[ "$choice" ] || exit 1 +	[ -z "$file" ] && file="$choice" || file="$file/$choice"  done -test -z "$file" && exit 1 +[ "$file" ] || exit 1  pass show -c "$file" || exit 1 -notify-send -t 1000 "mpass" "copied <b>$choice</b>" +notify-send -t 1000 "mpass" "copied <b>$file</b>"  [ "$WAYLAND_DISPLAY" ] && cliphist list >/dev/null && # on wayland and cliphist is running  	cliphist list | head -n 1 | cliphist delete diff --git a/bin/menuscripts/mpassgen b/bin/menuscripts/mpassgen index 8384542..51b9bc4 100755 --- a/bin/menuscripts/mpassgen +++ b/bin/menuscripts/mpassgen @@ -1,46 +1,21 @@  #!/usr/bin/env sh -input () -{ -	# menu prompt for output -	if [ "$MENUCMD" = "tofi" ] -	then -		inp="$(tofi --prompt-text "$1 " </dev/null)" -	elif [ "$MENUCMD" = "dmenu" ] -	then -		inp="$(dmenu -p "$1" < /dev/null)" -	else -		echo -n "$1" >&2 -		read inp -	fi -	echo $inp -} -# menu select long -if [ "$MENUCMD" = "tofi" ] -then -	menucmd="tofi --prompt login:" -elif [ "$MENUCMD" = "dmenu" ] -then -	menucmd="dmenu -l 10 -g 1 -x -i -p login:"  -else -	menucmd="fzf" -fi +input () { commander -c -i -p "$1"; } -choice="$(echo "multiline\nsingle" | $MENUCMD)" -test -z "${choice}" && exit 1 +choice="$(printf "multiline\nsingle\n" | commander -c -d)" +[ "$choice" ] || exit 1  password="$(input "name:")" -test -z "${password}" && exit 1 +[ "$password" ] || exit 1 -if [ "${choice}" = "multiline" ] +if [ "$choice" = "multiline" ]  then -	login="$(ls -1 ${PASSWORD_STORE_DIR:=$HOME/.password-store}/e-mails | -		sed 's/\.gpg$//' |  -		$menucmd)" -    test -z "${login}" && exit 1 +	login="$(find "${PASSWORD_STORE_DIR:=$HOME/.password-store}"/e-mails -type f -maxdepth 1 -iname "*.gpg" -printf "%f\n" | +		sed 's/\.gpg$//' | commander -c -d -p 'login:')" +    [ "$login" ] || exit 1      url="$(input "url:")" -    test -z "${url}" && exit 1 -    echo "${password}\nlogin: ${login}\nurl: ${url}" | +    [ "$url" ] || exit 1 +    printf "%s\nlogin: %s\nurl: %s\n" "${password}" "${login}" "${url}" |  		pass insert -mf "${password}"      pass generate -ci "${password}"  else diff --git a/bin/menuscripts/mplay b/bin/menuscripts/mplay index 08fcc46..e4fca54 100755 --- a/bin/menuscripts/mplay +++ b/bin/menuscripts/mplay @@ -1,16 +1,6 @@  #!/bin/sh -# menu select long -if [ "$MENUCMD" = "tofi" ] -then -	menucmd="tofi --width 50% --height 30% --matching-algorithm normal" -elif [ "$MENUCMD" = "dmenu" ] -then -	menucmd="dmenu -l 10 -g 1 -x -i"  -else -	menucmd="fzf" -fi -choice="$(mpc listall | $menucmd)" -test -z "$choice" && -	exit 1 -mpc insert "$choice" && -	mpc next +choice="$(mpc listall | commander -c -l -d -x)" +[ "$choice" ] || exit 1 +mpc insert "$choice" || exit 1 +mpc next 2> /dev/null +mpc play 2> /dev/null diff --git a/bin/menuscripts/mvid b/bin/menuscripts/mvid index 09ebab8..85187cb 100755 --- a/bin/menuscripts/mvid +++ b/bin/menuscripts/mvid @@ -8,7 +8,7 @@ choice="$(find -L $dirs 2> /dev/null |  	grep '^.\+\.\(webm\|mp4\|mpeg\|mkv\)$' |  	sort | tee "$tmp" |  	sed "s#^$HOME#\~#;s#\([^/]\)[^/]*/#\1/#g" | -	commander -n -x)" +	commander -d -n -x)"  file="$(sed -n "${choice}p" "$tmp")"  [ -r "$file" ] || exit 1  | 
