Git status is baked in as a selectable pre-built prompt template.

I never tried selecting a completion in either zsh or fish, so I can't speak to that.

So I understand, is this how it works: you hit tab, completions show up, and then you use arrow keys to highlight and then space? return? to confirm one?

//