mirror of
git://git.proxmox.com/git/pve-common.git
synced 2025-01-08 01:17:37 +03:00
Fix 1891: Add zsh command completion generator
This adds the function needed to generate the zsh autocompletion scripts. Using the bash completion code path, this generates the list of possible completions and adds them to the zsh completion by compadd. For the autocompletion scripts to be loaded automatically, the following two lines have to be placed in the .zshrc: autoload -U compinit compinit Signed-off-by: Christian Ebner <c.ebner@proxmox.com>
This commit is contained in:
parent
3b3ae60e09
commit
ad2cc59995
@ -490,6 +490,30 @@ complete -o default -C '$exename bashcomplete' $exename
|
||||
__EOD__
|
||||
}
|
||||
|
||||
sub generate_zsh_completions {
|
||||
my ($class) = @_;
|
||||
|
||||
# generate zsh completion config
|
||||
|
||||
$exename = &$get_exe_name($class);
|
||||
|
||||
print <<__EOD__;
|
||||
#compdef _$exename $exename
|
||||
|
||||
function _$exename() {
|
||||
local cwords line point cmd curr prev
|
||||
cwords=\${#words[@]}
|
||||
line=\$words
|
||||
point=\${#line}
|
||||
cmd=\${words[1]}
|
||||
curr=\${words[cwords]}
|
||||
prev=\${words[cwords-1]}
|
||||
compadd \$(COMP_CWORD="\$cwords" COMP_LINE="\$line" COMP_POINT="\$point" \\
|
||||
$exename bashcomplete "\$cmd" "\$curr" "\$prev")
|
||||
}
|
||||
__EOD__
|
||||
}
|
||||
|
||||
sub generate_asciidoc_synopsys {
|
||||
my ($class) = @_;
|
||||
$class->generate_asciidoc_synopsis();
|
||||
|
Loading…
Reference in New Issue
Block a user