]> git.ipfire.org Git - thirdparty/util-linux.git/commitdiff
zramctl: add bash completion script
authorSami Kerola <kerolasa@iki.fi>
Sun, 3 Aug 2014 14:10:50 +0000 (15:10 +0100)
committerKarel Zak <kzak@redhat.com>
Mon, 11 Aug 2014 12:40:14 +0000 (14:40 +0200)
Signed-off-by: Sami Kerola <kerolasa@iki.fi>
bash-completion/Makemodule.am
bash-completion/zramctl [new file with mode: 0644]

index 8d6431ba47a9352298819c12f1987de11ae622d5..eafbedf6bbc4c2991e48477dec078a616b85fcc3 100644 (file)
@@ -252,6 +252,9 @@ endif
 if BUILD_SETARCH
 dist_bashcompletion_DATA += bash-completion/setarch
 endif
+if BUILD_ZRAMCTL
+dist_bashcompletion_DATA += bash-completion/zramctl
+endif
 
 if BUILD_MESG
 dist_bashcompletion_DATA += bash-completion/mesg
diff --git a/bash-completion/zramctl b/bash-completion/zramctl
new file mode 100644 (file)
index 0000000..90ed608
--- /dev/null
@@ -0,0 +1,51 @@
+_zramctl_module()
+{
+       local cur prev OPTS
+       COMPREPLY=()
+       cur="${COMP_WORDS[COMP_CWORD]}"
+       prev="${COMP_WORDS[COMP_CWORD-1]}"
+       case $prev in
+               '-a'|'--algorithm')
+                       COMPREPLY=( $(compgen -W "lzo lz4" -- $cur) )
+                       return 0
+                       ;;
+               '-o'|'--output')
+                       # FIXME: how to append to a string with compgen?
+                       local OUTPUT
+                       OUTPUT="NAME DISKSIZE DATA COMPR ALGORITHM STREAMS ZERO-PAGES TOTAL MOUNTPOINT"
+                       compopt -o nospace
+                       COMPREPLY=( $(compgen -W "$OUTPUT" -S ',' -- $cur) )
+                       return 0
+                       ;;
+               '-s'|'--size')
+                       COMPREPLY=( $(compgen -W "size" -- $cur) )
+                       return 0
+                       ;;
+               '-t'|'--streams')
+                       COMPREPLY=( $(compgen -W "number" -- $cur) )
+                       return 0
+                       ;;
+       esac
+       case $cur in
+               -*)
+                       OPTS="  --algorithm
+                               --bytes
+                               --find
+                               --noheadings
+                               --output
+                               --raw
+                               --reset
+                               --size
+                               --streams
+                               --help
+                               --version"
+                       COMPREPLY=( $(compgen -W "${OPTS[*]}" -- $cur) )
+                       return 0
+                       ;;
+       esac
+       local IFS=$'\n'
+       compopt -o filenames
+       COMPREPLY=( $(compgen -f -- ${cur:-"/dev/zram"}) )
+       return 0
+}
+complete -F _zramctl_module zramctl