commit:     346a97f0c7fd72a29a8c6507adf6fa2e25676ca4
Author:     Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
AuthorDate: Mon May 27 18:50:17 2024 +0000
Commit:     Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
CommitDate: Mon May 27 18:50:17 2024 +0000
URL:        
https://gitweb.gentoo.org/proj/gentoo-bashcomp.git/commit/?id=346a97f0

add completion for perl-cleaner from app-admin/perl-cleaner

Based on code from Michal Privoznik <michal.privoznik <AT> gmail.com>

Closes: https://github.com/gentoo-perl/perl-cleaner/pull/10
Signed-off-by: Arthur Zamarin <arthurzam <AT> gentoo.org>

 completions/perl-cleaner | 41 +++++++++++++++++++++++++++++++++++++++++
 1 file changed, 41 insertions(+)

diff --git a/completions/perl-cleaner b/completions/perl-cleaner
new file mode 100644
index 0000000..a4cf9fd
--- /dev/null
+++ b/completions/perl-cleaner
@@ -0,0 +1,41 @@
+# Gentoo Linux Bash Shell Command Completion
+#
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License, v2 or later
+
+#
+# perl-cleaner completion (from app-admin/perl-cleaner)
+#
+
+_perl_cleaner() {
+    local i cur prev
+    _get_comp_words_by_ref cur prev
+
+    local OPTS=(
+        -h --help -V --version -p --pretend -v --verbose -q --quite
+        --modules --allmodules --libperl --all --reallyall
+        --dont-delete-leftovers -P --package-manager
+    )
+
+    for (( i=1; i < COMP_CWORD; i++ )); do
+        if [[ ${COMP_WORDS[i]} == -- ]]; then
+            local root_command=emerge
+            _command_offset ${i}
+            return
+        fi
+    done
+
+    case ${prev} in
+        -P|--package-manager)
+            COMPREPLY=($(compgen -W 'portage pkgcore paludis' -- "${cur}"))
+            return 0
+            ;;
+    esac
+
+    COMPREPLY=( $(compgen -W '${OPTS[*]}' -- "${cur}") )
+    return 0
+
+} &&
+complete -F _perl_cleaner perl-cleaner
+
+# vim: ft=sh:et:ts=4:sw=4:tw=80

Reply via email to