From 20ed583e35cd30ad06c14a0ba833e71c4ca69b48 Mon Sep 17 00:00:00 2001 From: Luca Boccassi Date: Tue, 25 Apr 2023 15:30:00 +0100 Subject: [PATCH 1/2] coredumpctl: fix bash completion matching When multi-word matching string is quoted, __contains_word compares it as a whole to the passed option, so it doesn't work. --- shell-completion/bash/coredumpctl | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/shell-completion/bash/coredumpctl b/shell-completion/bash/coredumpctl index 5416e9e58a..3a02744541 100644 --- a/shell-completion/bash/coredumpctl +++ b/shell-completion/bash/coredumpctl @@ -47,16 +47,16 @@ _coredumpctl() { [DUMP]='dump debug' ) - if __contains_word "$prev" '--output -o'; then + if __contains_word "$prev" --output -o; then comps=$( compgen -A file -- "$cur" ) compopt -o filenames - elif __contains_word "$prev" '-D --directory'; then + elif __contains_word "$prev" -D --directory; then comps=$( compgen -A directory -- "$cur" ) compopt -o filenames elif __contains_word "$prev" '--debugger'; then comps=$( compgen -A command -- "$cur" ) compopt -o filenames - elif __contains_word "$prev" '--field -F'; then + elif __contains_word "$prev" --field -F; then comps=$( compgen -W '${__journal_fields[*]}' -- "$cur" ) elif __contains_word "$prev" '--json'; then comps=$( compgen -W 'pretty short off' -- "$cur" ) From 448ed94dd90b4b1caa9863a3594b14aac7f77cff Mon Sep 17 00:00:00 2001 From: Luca Boccassi Date: Tue, 25 Apr 2023 15:30:34 +0100 Subject: [PATCH 2/2] coredumpctl: add --file/--root/--image to bash completion --- shell-completion/bash/coredumpctl | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/shell-completion/bash/coredumpctl b/shell-completion/bash/coredumpctl index 3a02744541..b5719905f9 100644 --- a/shell-completion/bash/coredumpctl +++ b/shell-completion/bash/coredumpctl @@ -40,17 +40,17 @@ _coredumpctl() { local cur=${COMP_WORDS[COMP_CWORD]} prev=${COMP_WORDS[COMP_CWORD-1]} local OPTS='-h --help --version --no-pager --no-legend -o --output -F --field -1 -r --reverse -S --since -U --until -D --directory -q --quiet --debugger - -A --debugger-arguments --json -n --all' + -A --debugger-arguments --json -n --all --file --root --image' local -A VERBS=( [LIST]='list info' [DUMP]='dump debug' ) - if __contains_word "$prev" --output -o; then + if __contains_word "$prev" --output -o --file --image; then comps=$( compgen -A file -- "$cur" ) compopt -o filenames - elif __contains_word "$prev" -D --directory; then + elif __contains_word "$prev" -D --directory --root; then comps=$( compgen -A directory -- "$cur" ) compopt -o filenames elif __contains_word "$prev" '--debugger'; then