The files prefixed with an underscore need to be in your $fpath somehow. There are several ways you can do that: 1) copy them to a directory that is already in your $fpath 2) create a directory such as ~/.fpath and add it to $fpath 3) add this directory to your $fpath To add a directory to your $fpath do something like this in your .zshrc fpath=(~/.fpath $fpath) Make sure the above line is before your call to compinit Also consider getting zsh 4.1.x which has a lot nicer completion formatting for one thing. (add it to /etc/shells and run chsh) "apt-get install zsh-beta" or be square :) I also like the following zstyles for more verbose completion info zstyle ':completion:*' verbose yes zstyle ':completion:*:descriptions' format '%B%d%b' zstyle ':completion:*:messages' format '%d' zstyle ':completion:*:warnings' format 'No matches for: %d' zstyle ':completion:*' group-name ''