#compdef vi vim gvim gim joe nano elvis emacs xemacs mg ed ex em
# vim:ft=zsh:fdm=marker

# yeah, well this overwrites completions, that come with zsh.
# I don't care, I don't specify options when I run vim anyway.
# Plus, I get the same completion for every editor I might run.

local expl
local -a ignores

ignores=(
    # latex generated files
    .aux .bbl .dvi .latexmain .lof .log .lot .pdf .ps .toc
    # compiled binary files
    .la .lo .o .so
    # backup files
    "~"
)

_description files expl 'editor files'
_files "${expl[@]}" -g "*~*(#i)(${(j,|,)ignores})"