From 1d1cb2687fc7d60411eb9c91404f1714349a202e Mon Sep 17 00:00:00 2001 From: Michał Górny Date: Sun, 31 Aug 2014 20:53:13 +0200 Subject: Move completions into subdirectories. completions/ for files going to completionsdir, compat/ for those going into compatdir. --- compat/gentoo-style-init | 27 +++++++++++++++++++++++++++ 1 file changed, 27 insertions(+) create mode 100644 compat/gentoo-style-init (limited to 'compat/gentoo-style-init') diff --git a/compat/gentoo-style-init b/compat/gentoo-style-init new file mode 100644 index 0000000..e800c8c --- /dev/null +++ b/compat/gentoo-style-init @@ -0,0 +1,27 @@ +# Gentoo init.d completion +# +# $Id$ +# +# Copyright 1999-2009 Gentoo Foundation +# Distributed under the terms of the GNU General Public License, v2 or later + +_gentoo_style_init() +{ + local script="${COMP_WORDS[0]}" + local cur="${COMP_WORDS[$COMP_CWORD]}" + + if [[ ( -f "${script}" || -h "${script}" ) && -r "${script}" ]] \ + && [[ "${script}" != *.sh ]] \ + && [[ "$(head -n 1 "${script}")" = "#!/sbin/runscript" ]] + then + [[ $COMP_CWORD -gt 1 ]] && return 1 + COMPREPLY=($(opts="start stop status restart pause zap ineed needsme iuse usesme broken"; \ + eval "$(grep '^opts=' "${script}")"; echo "${opts}")) + [[ -n "$COMPREPLY" ]] || COMPREPLY=(start stop restart zap) + COMPREPLY=($(compgen -W "${COMPREPLY[*]}" -- "${cur}")) + else + COMPREPLY=($(compgen -o default -- "${cur}")) + fi + return 0 +} +complete -F _gentoo_style_init @GENTOO_PORTAGE_EPREFIX@/etc/init.d/* -- cgit v1.2.3-65-gdbad