function __fish_seen_ebuild_arg -d "Test if an ebuild-argument has been given in the current commandline"
	commandline -opc | string match -q '*.ebuild'
end

## Opts
complete -c ebuild -l debug             -d "Run bash with the -x option"
complete -c ebuild -l color             -d "Enable color" \
	-xa "y n"
complete -c ebuild -l force             -d "Force regeneration of digests"
complete -c ebuild -l ignore-default-opts -d "Ignore EBUILD_DEFAULT_OPTS"
complete -c ebuild -l skip-manifest	-d "Skip all manifest checks"

## Subcommands
complete -c ebuild -n '__fish_seen_ebuild_arg' -xa 'help'        -d "Show help"
complete -c ebuild -n '__fish_seen_ebuild_arg' -xa 'setup'       -d "Run setup and system checks"
complete -c ebuild -n '__fish_seen_ebuild_arg' -xa 'clean'       -d "Clean build dir"
complete -c ebuild -n '__fish_seen_ebuild_arg' -xa 'fetch'       -d "Fetches all files from SRC_URI"
#complete -c ebuild -n '__fish_seen_ebuild_arg' -xa 'digest'      -d "Deprecared: see manifest"
complete -c ebuild -n '__fish_seen_ebuild_arg' -xa 'manifest'    -d "Update pkg manifest"
complete -c ebuild -n '__fish_seen_ebuild_arg' -xa 'unpack'      -d "Extracts sources"
complete -c ebuild -n '__fish_seen_ebuild_arg' -xa 'prepare'     -d "Run src_prepare()"
complete -c ebuild -n '__fish_seen_ebuild_arg' -xa 'configure'   -d "Run src_configure()"
complete -c ebuild -n '__fish_seen_ebuild_arg' -xa 'compile'     -d "Run src_compile()"
complete -c ebuild -n '__fish_seen_ebuild_arg' -xa 'test'        -d "Run tests"
complete -c ebuild -n '__fish_seen_ebuild_arg' -xa 'preinst'     -d "Run pkg_preinst()"
complete -c ebuild -n '__fish_seen_ebuild_arg' -xa 'install'     -d "Run src_install()"
complete -c ebuild -n '__fish_seen_ebuild_arg' -xa 'postinst'    -d "Run pkg_postinst()"
complete -c ebuild -n '__fish_seen_ebuild_arg' -xa 'qmerge'      -d "Install files to live filesystem"
complete -c ebuild -n '__fish_seen_ebuild_arg' -xa 'merge'       -d "Run fetch, unpack, compile, install and qmerge"
complete -c ebuild -n '__fish_seen_ebuild_arg' -xa 'unmerge'     -d "Uninstall files from live filesystem"
complete -c ebuild -n '__fish_seen_ebuild_arg' -xa 'prerm'       -d "Run pkg_prerm()"
complete -c ebuild -n '__fish_seen_ebuild_arg' -xa 'postrm'      -d "Run pkg_postrm()"
complete -c ebuild -n '__fish_seen_ebuild_arg' -xa 'config'      -d "Run post-install configuration"
complete -c ebuild -n '__fish_seen_ebuild_arg' -xa 'package'     -d "Create a binpkg in PKGDIR"
complete -c ebuild -n '__fish_seen_ebuild_arg' -xa 'rpm'         -d "Builds a RedHat RPM pkg"
