On Saturday 11 of April 2009 12:15:26 Frank Blendinger wrote: > Hi. > > On Sat 2009-04-11 09:09, Andrey Borzenkov <arvidjaar@xxxxxxxxx> > > proclaimed: > > On Saturday 11 of April 2009 06:03:19 Frank Blendinger wrote: > > > Hi, > > > > > > I am trying to build a small completion for etherwake, which > > > gives me some MAC addresses together with their hostnames as > > > descriptions. I came up with something like this: > > > > > > _etherwake() { > > > typeset -a etherwake_desc; > > > > > > etherwake_desc=("00:0c:6e:74:16:77:host1";"00:1b:63:31:4a:6b:host > > >2"); _describe etherwake etherwake_desc; > > > } > > > compdef _etherwake etherwake > > > > > > This does not work, however, as the first `:' of each string in > > > the etherwake_desc array is used to separate the completion from > > > the description. I tried escaping the `:' characters of the MAC > > > addresses with `\', which did not help. Neither did putting ' or > > > \" around the MAC addresses. > > > > > > How can I do it right? > > > > etherwake_desc=('00\:0c\:6e\:74\:16\:77:host1' > > '00\:1b\:63\:31\:4a\:6b:host2') > > Thanks for your suggestion, but that does not work either. It does here so you must be doing something differently. {pts/3}% _etherwake() { typeset -a etherwake_desc; etherwake_desc=('00\:0c\:6e\:74\:16\:77:host1' '00\:1b\:63\:31\:4a\:6b:host2'); _describe etherwake etherwake_desc; } {pts/3}% compdef _etherwake etherwake {pts/3}% etherwake 00:0c:6e:74:16:77 Completing etherwake 00:0c:6e:74:16:77 -- host1 00:1b:63:31:4a:6b -- host2 > It will > complete the leading ``00:'' part, but then it stops. You have to "setopt menucomplete" to make it display lists immediately. Default it to insert longest common prefix and wait for you to disambiguate. > Pressing <Tab> > again after that won't bring up the completion menu, as zsh does for > my other completions, even if I manually enter a `0' or `1' to > distinguish the both available arguments. Enter where? Anyway, this is completely different problem. Now *completion* is correct but *display* not :) Could you show you options and styles (setopt; zstyle -L)?
Attachment:
signature.asc
Description: This is a digitally signed message part.