zsh: achèvement séparé pour les noms de command et les noms de files

Je ne veux pas compléter l'onglet de nom de file pour donner la priorité au début du nom de file. Par exemple, étant donné les noms de file red_blue.txt et blue_red.txt, je ne veux pas que l' onglet vim red donne la priorité à red_blue.txt

Cela peut être accompli en utilisant:

zstyle ':completion:*' matcher-list 'm:{a-zA-Z}={A-Za-z} l:|=* r:|=*' 

Toutefois, ce comportement s'appliquera également à l'achèvement de l'onglet des noms de command, que je ne veux pas. Par exemple, tapez nit tab à la search de la command "azote" correspondra également à des commands comme mkinitcpio, xinit, compinit et d'autres.

Pour les commands, j'aimerais que la complétion soit utilisée:

 zstyle ':completion:*' matcher-list 'm:{a-zA-Z}={A-Za-z}' 

Comment puis-je avoir zsh tab completion traiter les noms de command et les noms de files différemment?