public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Arthur Zamarin" <arthurzam@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] proj/gentoo-bashcomp:master commit in: completions/
Date: Wed, 15 May 2024 19:25:41 +0000 (UTC)	[thread overview]
Message-ID: <1715800253.114d592416f604caf28cfc53ce6dfb1aa1c00b72.arthurzam@gentoo> (raw)

commit:     114d592416f604caf28cfc53ce6dfb1aa1c00b72
Author:     Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
AuthorDate: Sat May 11 16:01:44 2024 +0000
Commit:     Arthur Zamarin <arthurzam <AT> gentoo <DOT> org>
CommitDate: Wed May 15 19:10:53 2024 +0000
URL:        https://gitweb.gentoo.org/proj/gentoo-bashcomp.git/commit/?id=114d5924

add completion for q from app-portage/portage-utils

Signed-off-by: Arthur Zamarin <arthurzam <AT> gentoo.org>

 completions/q | 52 ++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 file changed, 52 insertions(+)

diff --git a/completions/q b/completions/q
new file mode 100644
index 0000000..1522235
--- /dev/null
+++ b/completions/q
@@ -0,0 +1,52 @@
+# Gentoo Linux Bash Shell Command Completion
+#
+# Copyright 2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License, v2 or later
+
+#
+# q completion (from app-portage/portage-utils)
+#
+
+_q() {
+    local cur=${COMP_WORDS[COMP_CWORD]} prev=${COMP_WORDS[COMP_CWORD-1]}
+
+    local -A OPTS=(
+        [STANDALONE]='-i --install -o --overlays -e --envvar -m --mask -v --verbose
+            -q --quiet -C --nocolor --color -h --help -V --version'
+        [APPLETS]='qatom qcheck qdepends qfile qgrep qkeyword qlist qlop
+            qmanifest qmerge qmerge qpkg qsearch qsize qtbz2 qtegrity quse
+            qwhich qxpak'
+        [ARG]='--root'
+    )
+
+    local i
+    for (( i=1; i < COMP_CWORD; i++ )); do
+        if [[ ${COMP_WORDS[i]} != -* ]]; then
+            if [[ " ${OPTS[APPLETS]} " =~ " ${COMP_WORDS[i]} " ]]; then
+                local root_command=${COMP_WORDS[i]}
+                _command_offset ${i}
+            else
+                COMPREPLY=()
+            fi
+            return
+        fi
+
+        [[ ${i} -lt ${COMP_CWORD} && " ${OPTS[ARG]} " =~ " ${COMP_WORDS[i]} " ]] && ((i++))
+    done
+
+    case ${prev} in
+        --root)
+            _filedir -d
+            return
+            ;;
+    esac
+
+    if [[ ${cur} = -* ]]; then
+        COMPREPLY=( $(compgen -W '${OPTS[STANDALONE]} ${OPTS[ARG]}' -- "${cur}") )
+    else
+        COMPREPLY=( $(compgen -W "${OPTS[APPLETS]}" -- "${cur}") )
+    fi
+} &&
+complete -F _q q
+
+# vim: ft=sh:et:ts=4:sw=4:tw=80


             reply	other threads:[~2024-05-15 19:25 UTC|newest]

Thread overview: 34+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-05-15 19:25 Arthur Zamarin [this message]
  -- strict thread matches above, loose matches on Subject: below --
2024-06-25 16:31 [gentoo-commits] proj/gentoo-bashcomp:master commit in: completions/ Arthur Zamarin
2024-06-07 10:20 Arthur Zamarin
2024-06-07 10:20 Arthur Zamarin
2024-05-27 18:50 Arthur Zamarin
2024-05-22  5:08 Arthur Zamarin
2024-05-22  4:53 Arthur Zamarin
2024-05-21 19:25 Arthur Zamarin
2024-05-21 19:18 Arthur Zamarin
2024-05-21 18:34 Arthur Zamarin
2024-05-21 17:50 Arthur Zamarin
2024-05-15 20:09 Arthur Zamarin
2024-05-15 19:25 Arthur Zamarin
2024-05-15 19:25 Arthur Zamarin
2024-05-15 19:25 Arthur Zamarin
2024-05-15 19:25 Arthur Zamarin
2024-05-15 19:25 Arthur Zamarin
2024-05-15 19:25 Arthur Zamarin
2024-05-15 19:25 Arthur Zamarin
2024-05-11  3:12 Sam James
2024-05-11  3:12 Sam James
2024-02-25 20:14 Sam James
2024-02-21  7:34 Sam James
2024-02-21  7:34 Sam James
2024-02-21  7:34 Sam James
2024-02-21  7:23 Sam James
2023-03-13 21:27 Sam James
2023-01-14 16:38 Sam James
2018-06-23 22:23 Patrice Clement
2018-03-02 18:35 William Hubbs
2018-03-02 18:06 Michał Górny
2018-03-02 18:06 Michał Górny
2018-03-02 18:06 Michał Górny
2014-08-31 21:19 ` Michał Górny

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1715800253.114d592416f604caf28cfc53ce6dfb1aa1c00b72.arthurzam@gentoo \
    --to=arthurzam@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox