I just switched from bash to using zsh 4.3.4 on Ubuntu Hardy. I'm developing with git and I find myself constantly fighting with the default git completions: filename completion tries to be smart by detecting what you've added or removed (using git-ls-files) but sometimes it gets things wrong---e.g., if you are in a sub-directory. It also doesn't know about my custom git aliases (e.g., git ci as an alias for commit).
zsh superusers, how should I improve this situation?
Here are some of my thoughts, though I don't know how to implement them as I'm new to zsh, so maybe you can help or offer your own:
- Disable git filename completion, leaving just branch/tag/command-name/command-option completion.
- Replace the "smart" filename completion with the regular zsh filename completion.
- Get a newer _git completion file, if it fixes these bugs, and override the system one.
Thanks!
sudo mv /usr/share/zsh/functions/Completion/Unix/_git /usr/share/zsh/functions/Completion/Unix/OFF_git