completion simple

Marc Chantreux khatar at phear.org
Thu Nov 11 10:38:41 CET 2010


hello,

N'ayant jamais eu le courage de m'attaquer serieusement au man zsh
relatif a la completion, je travaille avec les qq recettes de cuisine
bien pratiques choppés a droite ou a gauche.

par exemple, j'ai

compdef _man superman
compdef 'compadd ~/.mutt/dratfs/*(:r:t)' mms
compdef 'compadd /home/services/qemu/*(:r:t)' vm_boot
compdef 'compadd /etc/apache2/mods-available/*(:r:t)' a2enmod
compdef 'compadd /etc/apache2/mods-enabled/*(:r:t)' a2dismod
compdef 'compadd /etc/apache2/sites-available/*(:r:t)' a2ensite
compdef 'compadd /etc/apache2/sites-enabled/*(:r:t)' a2dissite
compdef 'compadd ~/local/etc/zsh/rc/*(:t)' edit_zsh_rc

ok ... maintenant, soit la fonction remote_screen_sessions qui m'affiche
la liste des sessions screen d'une machine distante (j'ai sué pour
trouver le nom ...).

remote_screen_sessions () {
    ssh $1 screen -ls |
	perl -nE '
	    /^\s+\d+\.(?<screenname>\S+)\s+\(/
		and say $+{screenname}
	'
}

j'aimerais pouvoir faire

compdef 'compadd `remote_screen_sessions www.google.com`' www.google.com

ca ne marche pas ... meme quand j'ai mon agent qui tourne et que ma clef
est authorized sur www.google.com. 

une idée? 

marc .oO IDLE BREAK P0WN3D Oo. 


More information about the Shell mailing list