Hi, I use git blame sometimes to blame against specific revisions, i.e. "git blame <branch> -- <file>" and it would be nice if blame could figure out how to complete the <branch> or revision reference.. I tried to take a stab at adding support for this, but I couldn't figure out which completion function to use... I want "git blame <TAB>" to complete files like normal, (as this is the most general use case), but to have "git blame xyz<TAB>" to complete revisions if there's any that match, (while still also completing files). Additionally, it should only complete a revision for the first argument, and go back to strict file names after. In an *ideal* world, it'd be nice if it could figure out say: git blame <branch> xyz<TAB> and complete xyz as a file found in branch, not actually checking local files but the ls-files of that branch instead. (i.e. it should be able to complete a file that was deleted in the current checkout but exists on that ref). any ideas on where to start with that? Thanks, Jake