add bash completion for ncmpcpp
This commit is contained in:
committed by
Andrzej Rybczak
parent
e6a359ae76
commit
2b6e24131d
34
doc/ncmpcpp-completion.bash
Normal file
34
doc/ncmpcpp-completion.bash
Normal file
@@ -0,0 +1,34 @@
|
||||
# Installation:
|
||||
# - If you have system bash completion, place this in /etc/bash_completion.d or
|
||||
# source it from $HOME/.bash_completion
|
||||
# - If you don't have system bash completion, source this from your .bashrc
|
||||
|
||||
_ncmpcpp ()
|
||||
{
|
||||
local cur prev cmds opts
|
||||
|
||||
cur="$2"
|
||||
prev="$3"
|
||||
cmds=`ncmpcpp --help 2>&1 | awk '/^ [a-z]+ /{print $1}'`;
|
||||
opts="`ncmpcpp --help 2>&1 | awk '/^ -.+,/{print $1 "\n" $2}' | sed -e 's/,//;$a--now-playing'`"
|
||||
|
||||
case "$prev" in
|
||||
ncmpcpp)
|
||||
COMPREPLY=($(compgen -W '$opts $cmds' -- "$cur"))
|
||||
;;
|
||||
--port|-p|--host|-h)
|
||||
COMPREPLY=()
|
||||
;;
|
||||
--help|-?|--version|-v|--now-playing)
|
||||
return
|
||||
;;
|
||||
next|pause|play|prev|stop|toggle|volume)
|
||||
opts="`echo $opts | sed -e 's/--port//;s/--host//;s/-p//;s/-h//'`"
|
||||
COMPREPLY=($(compgen -W '$opts' -- "$cur"))
|
||||
;;
|
||||
*)
|
||||
COMPREPLY=($(compgen -W '$opts $cmds' -- "$cur"))
|
||||
;;
|
||||
esac
|
||||
}
|
||||
complete -F _ncmpcpp ncmpcpp
|
||||
Reference in New Issue
Block a user