diff options
Diffstat (limited to 'bin/menuscripts/mhelp')
-rwxr-xr-x | bin/menuscripts/mhelp | 32 |
1 files changed, 32 insertions, 0 deletions
diff --git a/bin/menuscripts/mhelp b/bin/menuscripts/mhelp new file mode 100755 index 0000000..a9027ef --- /dev/null +++ b/bin/menuscripts/mhelp @@ -0,0 +1,32 @@ +#!/usr/bin/env sh +OPTIONS="/tmp/dmh_options.txt" + +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 + +test -z "${program}" && exit 1 + +if $program --help > "$OPTIONS" +then + option="$(grep -E "^ *-[-a-Z]* " "$OPTIONS" | + tr -s ' ' | + sort | + uniq | + column -l 2 -t | + $menucmd | + awk '{print $1}')" + +test -z "$option" && exit 1 + +rm -f "$OPTIONS" +setsid $program $option |