[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