Zsh Mailing List Archive
Messages sorted by:
Reverse Date,
Date,
Thread,
Author
The group-order and tag-order styles
- X-seq: zsh-workers 14899
- From: "Bart Schaefer" <schaefer@xxxxxxxxxxxxxxxxxxxxxxx>
- To: zsh-workers@xxxxxxxxxx
- Subject: The group-order and tag-order styles
- Date: Wed, 13 Jun 2001 11:45:38 +0000
- Mailing-list: contact zsh-workers-help@xxxxxxxxxx; run by ezmlm
Given the following always in effect:
zstyle ':completion:*' format 'Completing %d'
zstyle ':completion:*' group-name ''
Fiddling with ssh completion (see zsh-users thread) I now have this:
zstyle ':completion:*:ssh:*' tag-order 'hosts:-domain hosts:-ipaddr *'
zstyle ':completion:*:ssh:*' group-order \
hosts:-domain:domains users 'hosts:-ipaddr:IP addresses' \*
zstyle ':completion:*:ssh:*:hosts-domain' ignored-patterns '<->.<->.<->.<->'
zstyle ':completion:*:ssh:*:hosts-ipaddr' ignored-patterns '^<->.<->.<->.<->'
zstyle -e ':completion:*:ssh:*' hosts 'reply=(
${=${${(f)"$(cat {/etc/ssh_,~/.ssh/known_}hosts(|2)(N) \
/dev/null)"}%%[# ]*}//,/ }
${=${(f)"$(cat /etc/hosts(|)(N) <<(ypcat hosts 2>/dev/null))"}%%\#*}
)'
With just the last of these styles, completion after `ssh' lists two groups:
hosts first, then users. What I want to see is three groups: hosts by
domain name, then users, then hosts by IP address. Adding the other styles
successfully splits the result into three groups, but the users are always
listed first. Also, the explanation strings (`domains' and `IP addresses')
from the group-order style are never shown in the listing.
What am I missing?
--
Bart Schaefer Brass Lantern Enterprises
http://www.well.com/user/barts http://www.brasslantern.com
Zsh: http://www.zsh.org | PHPerl Project: http://phperl.sourceforge.net
Messages sorted by:
Reverse Date,
Date,
Thread,
Author