Sim, isso pode ser feito. Eu originalmente recebi o seguinte de uma das listas de discussão do zsh, mas não me lembro quem postou:
zle -C complete-file complete-word _generic
zstyle ':completion:complete-file::::' completer _files
bindkey '^x^f' complete-file
Isso pode ser facilmente adaptado para usar uma função de conclusão diferente em vez de _files
.
A primeira linha define um novo widget de conclusão chamado complete-file
, que se comporta como o widget complete-word
embutido e usa a função _generic
para gerar a lista de conclusões.
A segunda linha, em seguida, configura-o para que, quando esse widget personalizado for usado, o completer usará apenas _files
para obter a lista de conclusões.
Em seguida, a terceira linha liga o novo widget a uma sequência de chaves.