Fish autocomplete seemed like magic when I first started using it. I does things like autocomplete file paths on the android side of adb sync commands, autocomplete on docker container hashes..
zstyle ':completion:::(vim|nvim)::files' ignored-patterns '*.(aux|dvi|log|thm|idx|pdf|rel|out|tuo|tui|tuc|tmp|mpo|mpb|mpd|1|keep|pgf|fls|gz|fdb_latexmk)'
(yes, tex generates so many temp files!) I couldn't figure out how to do something similar in fish