about summary refs log tree commit diff
path: root/Completion/Linux/Command/_sshfs
blob: e6d13701780eff8cf99ab3d5d05eee805f85358e (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
#compdef sshfs

local context state state_descr line
typeset -A opt_args
local curcontext="$curcontext"
integer ret=1

_arguments -C \
  '-V[version]' \
  '-p:tcp port:' \
  '-C[compression]' \
  '-o:options:->options' \
  '-d[debug]' \
  '-f[foreground]' \
  '-s[disable multithreaded operation]' \
  '-r[mount read-only]' \
  '-h[help]' \
  ':remote directory:_user_at_host -S:' \
  ':mountpoint:_files -/' && ret=0

if [[ $state == options ]]; then
  _values -s , "sshfs or fuse or mount options" \
    reconnect sshfs_sync no_readahead sshfs_debug \
    'cache=:cache setting:(yes no)' \
    cache_timeout=:seconds: \
    cache_stat_timeout=:seconds: \
    cache_dir_timeout=:seconds: \
    cache_link_timeout=:seconds: \
    'ssh_command=:ssh command:_command_names' \
    directport=:port: \
    'SSHOPT=:ssh option:' \
    default_permissions allow_other allow_root kernel_cache large_read direct_io \
    max_read=:size: \
    hard_remove debug \
    fs_name=:name: \
    use_ino readdir_ino && ret=0
fi

return ret