[arch-projects] [INITSCRIPTS][PATCH 6/6] Add rc.d bash completion
Seblu
seblu at seblu.net
Wed May 18 15:03:00 EDT 2011
just a remember about bash rc.d script. But i have a zsh one pending too.
On Thu, May 5, 2011 at 3:04 AM, Sebastien Luttringer <seblu at seblu.net> wrote:
> Signed-off-by: Sebastien Luttringer <seblu at seblu.net>
> ---
> Makefile | 3 ++-
> bash-completion | 18 ++++++++++++++++++
> 2 files changed, 20 insertions(+), 1 deletions(-)
> create mode 100644 bash-completion
>
> diff --git a/Makefile b/Makefile
> index 6923840..69f008a 100644
> --- a/Makefile
> +++ b/Makefile
> @@ -1,5 +1,5 @@
> VER := $(shell git describe)
> -DIRS := /etc/rc.d /etc/conf.d /etc/rc.d/functions.d /etc/cron.hourly /sbin
> +DIRS := /etc/rc.d /etc/conf.d /etc/rc.d/functions.d /etc/cron.hourly /sbin /etc/bash_completion.d
>
> minilogd: minilogd.o
>
> @@ -13,6 +13,7 @@ install: minilogd installdirs
> install -m755 -t $(DESTDIR)/etc/cron.hourly adjtime
> install -m755 -t $(DESTDIR)/etc/rc.d functions hwclock network netfs
> install -m755 -t $(DESTDIR)/sbin minilogd rc.d
> + install -m644 -T bash-completion $(DESTDIR)/etc/bash_completion.d/rc.d
>
> clean:
> rm -f minilogd minilogd.o
> diff --git a/bash-completion b/bash-completion
> new file mode 100644
> index 0000000..3b0f464
> --- /dev/null
> +++ b/bash-completion
> @@ -0,0 +1,18 @@
> +# rc.d bash completion by Seblu <seblu at seblu.net>
> +
> +_rc.d ()
> +{
> + local action="help list start stop reload restart"
> + local cur="${COMP_WORDS[COMP_CWORD]}"
> + local caction="${COMP_WORDS[1]}"
> + if ((${COMP_CWORD} == 1)); then
> + COMPREPLY=($(compgen -W "${action}" -- "$cur"))
> + elif [[ "$caction" == "help" || "$caction" == "list" ]]; then
> + COMPREPLY=()
> + elif ((${COMP_CWORD} > 1)); then
> + COMPREPLY=($( compgen -W "$(find /etc/rc.d -maxdepth 1 -type f -executable -printf '%f\n')" -- "$cur" ))
> + fi
> +}
> +complete -F _rc.d rc.d
> +
> +# vim: set ts=2 sw=2 ft=sh noet:
> --
> Sebastien "Seblu" Luttringer
>
>
--
Sébastien Luttringer
www.seblu.net
More information about the arch-projects
mailing list