diff --git a/prompt b/prompt index ca16b5d..c653860 100755 --- a/prompt +++ b/prompt @@ -2,16 +2,16 @@ launch() { app=$(printf "Notes -Files -Editor -Terminal -Multiplexer -LBRY -Chat -Music -Browser -Email -Processes" | + Files + Editor + Terminal + Multiplexer + LBRY + Chat + Music + Browser + Email + Processes" | tr '\t' | dmenu -i -p "Launcher") case $app in @@ -31,15 +31,17 @@ esac action() { action=$(printf "Play Music -Pause Music -Toggle Music -Select VPN -Disable VPN -Enable VPN -VPN Status -Rebind Keys -Disable Bar -Enable Bar" | + Pause Music + Toggle Music + Command + Command to clipboard + Select VPN + Disable VPN + Enable VPN + VPN Status + Rebind Keys + Disable Bar + Enable Bar" | tr -d '\t' | dmenu -i -p "Actions") case $action in @@ -49,6 +51,8 @@ case $action in 'Rebind Keys') setup-xbindkeys;; 'Disable Bar') tmux set -g status off;; 'Enable Bar') tmux set -g status on;; + 'Command') cmd;; + 'Command to clipboard') cmd_clip;; esac } @@ -100,10 +104,22 @@ rawurlencode() { esac } +cmd() { + sh -c "$(printf '' | dmenu -i -p 'cmd')" +} + +cmd_clip() { + value=$(cmd) + show_value="$(expr substr "$value" 1 200)\n..." + notify-send -u low -t 2000 "Items cliped" "$show_value" + printf "%s" "$value" | xclip -selection clipboard +} + case $1 in launch) launch;; action) action;; cmd) action;; + cmd_clip) cmd_clip;; ddg) ddg;; *) printf "Invalid argument";; esac