[pulseaudio-discuss] [PATCH 3/3] zsh-completion: Add --monitor-stream completion to pacat
poljar (Damir Jelić)
poljarinho at gmail.com
Tue Oct 29 19:13:51 CET 2013
On Tue, Oct 29, 2013 at 07:51:26PM +0200, Tanu Kaskinen wrote:
> On Thu, 2013-08-15 at 14:08 +0200, poljar (Damir Jelić) wrote:
> > ---
> > shell-completion/pulseaudio-zsh-completion.zsh | 2 ++
> > 1 file changed, 2 insertions(+)
> >
> > diff --git a/shell-completion/pulseaudio-zsh-completion.zsh b/shell-completion/pulseaudio-zsh-completion.zsh
> > index e872736..abc443a 100644
> > --- a/shell-completion/pulseaudio-zsh-completion.zsh
> > +++ b/shell-completion/pulseaudio-zsh-completion.zsh
> > @@ -36,6 +36,7 @@ _devices() {
> > cmd=('sinks' 'sources')
> > fi
> > ;;
> > + --monitor-stream=*) cmd=('sink-inputs');;
> > esac
> >
> > case $words[$((CURRENT - 1))] in
> > @@ -468,6 +469,7 @@ _pacat_completion() {
> > {-p,--playback}'[create a connection for playback]' \
> > {-s,--server=}'[name of server to connect to]:host:_hosts' \
> > {-d,--device=}'[name of sink/source to connect to]:device:_devices' \
> > + '--monitor-stream=[index of the sink input to record from]:device:_devices' \
>
> "device:_devices" probably isn't right?
>
Yes it is right.
The _devices() function returns a list of devices based on the calling
executable name (the $service variable holds this name) and on the argument.
You can see that the cmd variable is filled with only 'sink-inputs' and
this is then passed to pactl (the big for loop "for target in $cmd; do").
It is a little bit confusing and in retrospect many smaller functions
would have been better (like it was done for the bash completion) but it
does work. :P
Thanks, Damir.
More information about the pulseaudio-discuss
mailing list