[Bash-completion-commits] [bash-completion] 02/02: ssh-keygen: New completion
Ville Skyttä
scop-guest at moszumanska.debian.org
Tue Jan 21 18:23:04 UTC 2014
This is an automated email from the git hooks/post-receive script.
scop-guest pushed a commit to branch master
in repository bash-completion.
commit 0b7d92cf2bb3eb04668c73b6d39726caca617bf9
Author: Ville Skyttä <ville.skytta at iki.fi>
Date: Tue Jan 21 20:22:50 2014 +0200
ssh-keygen: New completion
---
completions/Makefile.am | 1 +
completions/ssh-keygen | 48 +++++++++++++++++++++++++++++++++++++
test/completion/ssh-keygen.exp | 1 +
test/lib/completions/ssh-keygen.exp | 18 ++++++++++++++
4 files changed, 68 insertions(+)
diff --git a/completions/Makefile.am b/completions/Makefile.am
index 5abb627..be5bc26 100644
--- a/completions/Makefile.am
+++ b/completions/Makefile.am
@@ -320,6 +320,7 @@ bashcomp_DATA = 2to3 \
ssh \
ssh-add \
ssh-copy-id \
+ ssh-keygen \
sshfs \
sshmitm \
sshow \
diff --git a/completions/ssh-keygen b/completions/ssh-keygen
new file mode 100644
index 0000000..4cb3eab
--- /dev/null
+++ b/completions/ssh-keygen
@@ -0,0 +1,48 @@
+# ssh-keygen(1) completion -*- shell-script -*-
+
+_ssh_keygen()
+{
+ local cur prev words cword
+ _init_completion -n = || return
+
+ case $prev in
+ -a|-b|-C|-D|-I|-J|-j|-M|-N|-n|-r|-P|-S|-V|-W|-z)
+ return
+ ;;
+ -F|-R)
+ # TODO: trim this down to actual entries in known hosts files
+ _known_hosts_real "$cur"
+ return
+ ;;
+ -f|-G|-K|-s|-T)
+ _filedir
+ return
+ ;;
+ -m)
+ COMPREPLY=( $( compgen -W 'PEM PKCS8 RFC4716' -- "$cur" ) )
+ return
+ ;;
+ -O)
+ if [[ $cur != *=* ]]; then
+ COMPREPLY=( $( compgen -W 'clear force-command=
+ no-agent-forwarding no-port-forwarding no-pty no-user-rc
+ no-x11-forwarding permit-agent-forwarding
+ permit-port-forwarding permit-pty permit-user-rc
+ permit-x11-forwarding source-address=' -- "$cur" ) )
+ [[ $COMPREPLY == *= ]] && compopt -o nospace
+ fi
+ return
+ ;;
+ -t)
+ COMPREPLY=( $( compgen -W 'dsa ecdsa rsa rsa1' -- "$cur" ) )
+ return
+ ;;
+ esac
+
+ if [[ $cur == -* ]]; then
+ COMPREPLY=( $( compgen -W '$( _parse_help "$1" -? )' -- "$cur" ) )
+ fi
+} &&
+complete -F _ssh_keygen ssh-keygen
+
+# ex: ts=4 sw=4 et filetype=sh
diff --git a/test/completion/ssh-keygen.exp b/test/completion/ssh-keygen.exp
new file mode 100644
index 0000000..f074b5a
--- /dev/null
+++ b/test/completion/ssh-keygen.exp
@@ -0,0 +1 @@
+assert_source_completions ssh-keygen
diff --git a/test/lib/completions/ssh-keygen.exp b/test/lib/completions/ssh-keygen.exp
new file mode 100644
index 0000000..fea2529
--- /dev/null
+++ b/test/lib/completions/ssh-keygen.exp
@@ -0,0 +1,18 @@
+proc setup {} {
+ save_env
+}
+
+
+proc teardown {} {
+ assert_env_unmodified
+}
+
+
+setup
+
+
+assert_complete_any "ssh-keygen -"
+sync_after_int
+
+
+teardown
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/bash-completion/bash-completion.git
More information about the Bash-completion-commits
mailing list