From: Dave Reisner Date: Fri, 9 Nov 2012 17:51:24 +0000 (-0500) Subject: bash-completion: add 'gdb' verb for coredumpctl X-Git-Tag: v196~111 X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=commitdiff_plain;h=253a87510b2e09ad2679824b7255dab0a6bb1a22 bash-completion: add 'gdb' verb for coredumpctl This also fixes value completion for journal fields, as the completion for the RHS of the '=' was missing when it was borrowed from journalctl. --- diff --git a/shell-completion/systemd-bash-completion.sh b/shell-completion/systemd-bash-completion.sh index 5f829b36a..4c8161ff2 100644 --- a/shell-completion/systemd-bash-completion.sh +++ b/shell-completion/systemd-bash-completion.sh @@ -281,7 +281,7 @@ _loginctl () { complete -F _loginctl loginctl __journal_fields=(MESSAGE{,_ID} PRIORITY CODE_{FILE,LINE,FUNC} - ERRNO SYSLOG_{FACILITY,IDENTIFIER,PID} + ERRNO SYSLOG_{FACILITY,IDENTIFIER,PID} COREDUMP_EXE _{P,U,G}ID _COMM _EXE _CMDLINE _AUDIT_{SESSION,LOGINUID} _SYSTEMD_{CGROUP,SESSION,UNIT,OWNER_UID} @@ -349,7 +349,7 @@ _coredumpctl() { local -A VERBS=( [LIST]='list' - [DUMP]='dump' + [DUMP]='dump gdb' ) if __contains_word "$prev" '--output -o'; then @@ -368,6 +368,9 @@ _coredumpctl() { mapfile -t field_vals < <(systemd-coredumpctl -F "${prev%=}" 2>/dev/null) COMPREPLY=( $(compgen -W '${field_vals[*]}' -- "${cur#=}") ) return 0 + elif [[ $prev = '=' ]]; then + mapfile -t field_vals < <(systemd-coredumpctl -F "${COMP_WORDS[COMP_CWORD-2]}" 2>/dev/null) + comps=${field_vals[*]} else for ((i=0; i <= COMP_CWORD; i++)); do if __contains_word "${COMP_WORDS[i]}" ${VERBS[*]}; then