Sorry, this was an oversight on my part. When reducing the problem, I had worked with a minimal .zshrc, and removed even the lines autoload -U compinit compinit So now, at least, I get the completion to trigger. However, I still have the same problem: hitting alt-e for menu-complete works, and hitting alt-E for reverse-menu-complete works as well, but switching direction doesn't: zsh puts a space after the alternative on the command line, indicating that there is only one matching alternative. And I interpret that to mean that it takes whatever happens to be on the command line after the initial menu-complete, and tries to match that against the list it gets from the invocation of reverse-menu-complete. Naturally, only the alternative already on the command line matches. So I suppose the problem is to make zsh realize it is calling "the same" completer, only reversing the direction of the listing. Is this possible to do?