zsh funções de conclusão sem arquivo de sublinhado separado?

2

Estou tentando aprender a escrever funções de conclusão e, inicialmente, quero evitar a proliferação de arquivos separados para personalizações separadas (já tenho o suficiente e não quero mais).

Existe uma maneira de escrever diretamente toda a lógica de personalização no arquivo .zshrc ?

BTW aqui está um exemplo que eu quero jogar, mas novamente ele usa um arquivo separado chamado _hello .

#compdef hello

_arguments "1: :(World)"
    
por Sridhar-Sarnobat 12.11.2015 / 01:19

1 resposta

2

compdef é um comando por si só, para que você possa atingir facilmente seu objetivo com

compdef '_arguments "1: :(World)"' hello

Aqui estou usando o primeiro formulário de compdef :

compdef [ -ane ] function name ... [ -{p|P} pattern ... [ -N name ...]]

onde function pode ser a função para chamar ou, alternativamente, "uma string contendo quase qualquer código shell".

A documentação completa de compdef é complexa demais para ser citada aqui. A documentação oficial é aqui , mas você realmente precisa ler o capítulo inteiro no sistema de conclusão para compreendê-lo completamente.

    
por 12.11.2015 / 04:51

Tags