diff options
author | Dave Reisner <dreisner@archlinux.org> | 2012-11-09 12:51:24 -0500 |
---|---|---|
committer | Dave Reisner <dreisner@archlinux.org> | 2012-11-09 14:12:36 -0500 |
commit | 253a87510b2e09ad2679824b7255dab0a6bb1a22 (patch) | |
tree | 0cb8f203263df8383e213abd7f31e23493d468af /shell-completion | |
parent | 584f587295d9ae3f5da383083885d81751e8c0dc (diff) |
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.
Diffstat (limited to 'shell-completion')
-rw-r--r-- | shell-completion/systemd-bash-completion.sh | 7 |
1 files changed, 5 insertions, 2 deletions
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 |