On Sat, Aug 16, 2014 at 02:48:17PM +0300, Tanu Kaskinen wrote: > Dividing the options to multiple sets was misguided (I don't know what > the original motivation was). For example, with pacat the -s and > --server options were specified as one set. It meant that after the > user had written "pactl --server foo", further completions stopped to > work. The "server" option set didn't contain any other options, so > once Zsh detected that the "server" option set was in use, it thought > that no other options were valid. > > The special casing for "-s", "-n", "--server" and "--client-*" at the > end of _pactl_completion() was probably an attempt to deal with this > problem. Those special cases are unnecessary now that the option > specification given to _arguments is more correct. The motivation was to stop the completions of -s if --server was provided (or vice versa). I still don't know how to do this properly, so I guess it's better to just complete it instead to leave a broken hack there. ACK on this and on the rest of the patches.