Um SIGINT interrompe a operação de conclusão atual e leva você de volta ao editor de linha. Então pressione Ctrl + C . O efeito pode não ser imediato: o intérprete só verifica os sinais em certos pontos durante a execução (embora sejam frequentes), e o sinal pode demorar um pouco se o processo zsh for bloqueado em uma chamada do sistema (por exemplo, se for esperando por um sistema de arquivos para responder).
Infelizmente, se você pressionar Ctrl + C na hora errada e não houver conclusão em andamento no momento em que o sinal for entregue, sua linha de comando atual será cancelado. Isso é difícil de corrigir sem ter duas chaves de interrupção diferentes, uma para conclusão e outra para o resto, e não tenho certeza se o zsh suporta isso.
Não é realmente possível avisá-lo se uma conclusão demorar muito. A velocidade de uma função de conclusão geralmente é impulsionada principalmente pela velocidade com que algumas informações podem ser lidas no sistema de arquivos; se esta informação está em cache ou não, quanto existe, e que tipo de sistema de arquivos é (por exemplo, ramdisk, disco rígido ou montagem NFS) tem muita influência.