aboutsummaryrefslogtreecommitdiffhomepage
path: root/share
diff options
context:
space:
mode:
authorGravatar Fabian Homborg <FHomborg@gmail.com>2015-07-16 15:38:22 +0200
committerGravatar ridiculousfish <corydoras@ridiculousfish.com>2015-07-19 17:52:25 -0700
commitff4b1104a2c15b53ef9322cd0d3ca7dab8989c19 (patch)
treee952a18ce2c199ba05debe39b6f9bd7d93e7d101 /share
parenta550695cba025cbfc57885fbd528713ee79358ef (diff)
Add sysctl completion
See fish-shell/fish-shell#1375
Diffstat (limited to 'share')
-rw-r--r--share/completions/sysctl.fish28
1 files changed, 28 insertions, 0 deletions
diff --git a/share/completions/sysctl.fish b/share/completions/sysctl.fish
new file mode 100644
index 00000000..2684ca9e
--- /dev/null
+++ b/share/completions/sysctl.fish
@@ -0,0 +1,28 @@
+# Print sysctl keys and values, separated by a tab
+function __fish_sysctl_values
+ sysctl -a ^/dev/null | tr " = " "\t"
+end
+
+complete -c sysctl -a '(__fish_sysctl_values)' -f
+
+complete -c sysctl -s w --description 'parameter to use.'
+complete -c sysctl -s n -l values --description 'Only print values'
+complete -c sysctl -s e -l ignore --description 'Ignore errors about unknown keys'
+complete -c sysctl -s N -l names --description 'Only print names'
+complete -c sysctl -s q -l quiet --description 'Be quiet when setting values'
+complete -c sysctl -l write --description 'Write value'
+complete -c sysctl -o 'p[FILE]' -l 'load[' --description 'Load in sysctl settings from the file specified or /etc/sysctl'
+complete -c sysctl -s a -l all --description 'Display all values currently available'
+complete -c sysctl -l deprecated --description 'Include deprecated parameters too'
+complete -c sysctl -s b -l binary --description 'Print value without new line'
+complete -c sysctl -l system --description 'Load settings from all system configuration files'
+complete -c sysctl -s r -l pattern --description 'Only apply settings that match pattern'
+# Don't include these as they don't do anything
+# complete -c sysctl -s A --description 'Alias of -a'
+# complete -c sysctl -s d --description 'Alias of -h'
+# complete -c sysctl -s f --description 'Alias of -p'
+# complete -c sysctl -s X --description 'Alias of -a'
+# complete -c sysctl -s o --description 'Does nothing, exists for BSD compatibility'
+# complete -c sysctl -s x --description 'Does nothing, exists for BSD compatibility'
+complete -c sysctl -s h -l help --description 'Display help text and exit.'
+complete -c sysctl -s V -l version --description 'Display version information and exit.'