]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
zsh-completion: Escape results for `journalctl --unit` 2433/head
authorDouglas Christman <DouglasChristman@gmail.com>
Mon, 25 Jan 2016 23:10:31 +0000 (18:10 -0500)
committerDouglas Christman <DouglasChristman@gmail.com>
Mon, 25 Jan 2016 23:10:31 +0000 (18:10 -0500)
Escape colons and backslashes in unit names.
This gives correct completions for units with names like
    systemd-backlight@backlight:acpi_video0.service
and
    systemd-fsck@dev-disk-by\x2duuid-...

shell-completion/zsh/_journalctl

index b50f0cafc98f66f943a97f76e34efc2bff6d5455..2bee23b6d3aa33c1c61f507e04acfaec442079cc 100644 (file)
@@ -34,7 +34,10 @@ _journal_none() {
 _journal_fields() {
     local -a _fields cmd
     cmd=("journalctl" "-F ${@[-1]}" "2>/dev/null" )
-    _fields=( ${(f)"$(_call_program fields $cmd[@])"} )
+    _fields=$(_call_program fields $cmd[@])
+    _fields=${_fields//'\'/'\\'}
+    _fields=${_fields//':'/'\:'}
+    _fields=( ${(f)_fields} )
     typeset -U _fields
     _describe 'possible values' _fields
 }