chiark / gitweb /
systemctl: add commands set-default and get-default
[elogind.git] / shell-completion / systemd-zsh-completion.zsh
index 73db3786d61f5680a9a9b6621e8573599d37a265..411646ea59f11d56e3f1522935b54ae74486683a 100644 (file)
@@ -294,11 +294,13 @@ _systemd_inhibit_command(){
 
 _systemd_analyze_command(){
     local -a _systemd_analyze_cmds
+    # Descriptions taken from systemd-analyze --help.
     _systemd_analyze_cmds=(
-        'time:Print the time taken to start'
-        'blame:prints a list of all running units, ordered by the time they took to initialize'
-        'plot:prints an SVG graphic detailing which system services have been started at what time'
-        'dot:Dump dependency graph for dot(1)'
+        'time:Print time spent in the kernel before reaching userspace'
+        'blame:Print list of running units ordered by time to init'
+        'critical-chain:Print a tree of the time critical chain of units'
+        'plot:Output SVG graphic showing service initialization'
+        'dot:Dump dependency graph (in dot(1) format)'
     )
 
     if (( CURRENT == 1 )); then
@@ -894,12 +896,13 @@ _systemd-coredumpctl_command(){
         _describe -t commands 'systemd-coredumpctl command' _systemd_coredumpctl_cmds
     else
         local curcontext="$curcontext"
-        local -a dumps
+        local -a _dumps
         cmd="${${_systemd_coredumpctl_cmds[(r)$words[1]:*]%%:*}}"
         if (( $#cmd  )); then
-            dumps=( "${(f)$(_call_program dumps "systemd-coredumpctl list 2>/dev/null")}" )
-            if [[ -n "$dumps" ]]; then
-                compadd "${dumps[@]}"
+                       # user can set zstyle ':completion:*:*:systemd-coredumpctl:*' sort no for coredumps to be ordered by date, otherwise they get ordered by pid
+                       _dumps=( "${(foa)$(systemd-coredumpctl list | awk 'BEGIN{OFS=":"} /^\s/ {sub(/[[ \t]+/, ""); print $5,$0}' 2>/dev/null)}" )
+            if [[ -n "$_dumps" ]]; then
+                _describe -t pids 'coredumps' _dumps
             else
                 _message "no coredumps"
             fi
@@ -969,7 +972,7 @@ _udevadm_monitor(){
         '--kernel[Print the kernel uevents.]' \
         '--udev[Print the udev event after the rule processing.]' \
         '--property[Also print the properties of the event.]' \
-        '--subsystem-match=[Filter events by subsystem[/devtype].]' \
+        '--subsystem-match=[Filter events by subsystem/\[devtype\].]' \
         '--tag-match=[Filter events by property.]' \
         '--help[Print help text.]'
 }