zsh-completion: journalctl query by binary and device

implement 1883552c3d from bash completion in zsh-completion
This commit is contained in:
Daniel Wallace 2013-03-05 14:32:09 -05:00 committed by Lennart Poettering
parent ebe5d6d0d0
commit 646614a407

View file

@ -94,6 +94,7 @@ _ctls()
'--verify[Verify journal file consistency]' \ '--verify[Verify journal file consistency]' \
'--list-catalog[List messages in catalog]' \ '--list-catalog[List messages in catalog]' \
'--update-catalog[Update binary catalog database]' \ '--update-catalog[Update binary catalog database]' \
'*::default: _journal_none'
;; ;;
localectl) localectl)
_arguments \ _arguments \
@ -608,6 +609,7 @@ _list_fields() {
_{P,U,G}ID _COMM _EXE _CMDLINE _{P,U,G}ID _COMM _EXE _CMDLINE
_AUDIT_{SESSION,LOGINUID} _AUDIT_{SESSION,LOGINUID}
_SYSTEMD_{CGROUP,SESSION,UNIT,OWNER_UID} _SYSTEMD_{CGROUP,SESSION,UNIT,OWNER_UID}
_SYSTEMD_USER_UNIT
_SELINUX_CONTEXT _SOURCE_REALTIME_TIMESTAMP _SELINUX_CONTEXT _SOURCE_REALTIME_TIMESTAMP
_{BOOT,MACHINE}_ID _HOSTNAME _TRANSPORT _{BOOT,MACHINE}_ID _HOSTNAME _TRANSPORT
_KERNEL_{DEVICE,SUBSYSTEM} _KERNEL_{DEVICE,SUBSYSTEM}
@ -616,6 +618,15 @@ _list_fields() {
_describe 'possible fields' journal_fields _describe 'possible fields' journal_fields
} }
_journal_none() {
local -a _commands _files
_commands=( ${(f)"$(_call_program commands "$service" -F _EXE 2>/dev/null)"} )
_alternative : \
'files:/dev files:_files -W /dev -P /dev/' \
"commands:commands:($_commands[@])" \
'fields:fields:_list_fields'
}
_journal_fields() { _journal_fields() {
local -a _fields cmd local -a _fields cmd
cmd=("journalctl" "-F ${@[-1]}" "2>/dev/null" ) cmd=("journalctl" "-F ${@[-1]}" "2>/dev/null" )