summaryrefslogtreecommitdiff
path: root/completions/sshfs
diff options
context:
space:
mode:
authorDavid Paleino <dapal@debian.org>2011-02-06 21:26:41 +0100
committerDavid Paleino <dapal@debian.org>2011-02-06 21:26:41 +0100
commit9920a8faedf704420571d8072ccab27e9dac40ba (patch)
tree733edf3b07be06c130d04aaa1884213326722cad /completions/sshfs
parentf9748115fb4b2950fb4df7535fb723c4affde078 (diff)
downloadbash-completion-9920a8faedf704420571d8072ccab27e9dac40ba.tar.gz
Imported Upstream version 1.3upstream/1.3
Diffstat (limited to 'completions/sshfs')
-rw-r--r--completions/sshfs34
1 files changed, 34 insertions, 0 deletions
diff --git a/completions/sshfs b/completions/sshfs
new file mode 100644
index 00000000..d7945f88
--- /dev/null
+++ b/completions/sshfs
@@ -0,0 +1,34 @@
+# sshfs(1) completion
+
+have sshfs &&
+_sshfs()
+{
+ local cur userhost path
+
+ COMPREPLY=()
+ _get_comp_words_by_ref -n : cur
+
+ _expand || return 0
+
+ if [[ "$cur" == *:* ]] && type _scp_remote_files &>/dev/null ; then
+ _scp_remote_files -d
+ # unlike scp and rsync, sshfs works with 1 backslash instead of 3
+ COMPREPLY=( "${COMPREPLY[@]//\\\\\\/\\}" )
+ return 0
+ fi
+
+ [[ "$cur" == */* ]] || _known_hosts_real -c -a "$cur"
+
+ type _scp_local_files &>/dev/null && _scp_local_files -d
+
+ return 0
+} &&
+complete -F _sshfs -o nospace sshfs
+
+# Local variables:
+# mode: shell-script
+# sh-basic-offset: 4
+# sh-indent-comment: t
+# indent-tabs-mode: nil
+# End:
+# ex: ts=4 sw=4 et filetype=sh