update
This commit is contained in:
parent
209b0cc260
commit
5b127cca55
15
compdef/_sfs
Normal file
15
compdef/_sfs
Normal file
|
@ -0,0 +1,15 @@
|
||||||
|
#compdef sfs
|
||||||
|
|
||||||
|
if compset -P 1 '*:'; then
|
||||||
|
_remote_files -- ssh
|
||||||
|
elif compset -P 1 '*@'; then
|
||||||
|
_wanted hosts expl host _ssh_hosts -r: -S:
|
||||||
|
else
|
||||||
|
_alternative \
|
||||||
|
'hosts:remote host name:_ssh_hosts -r: -S:' \
|
||||||
|
'users:user:_ssh_users -qS@'
|
||||||
|
fi
|
||||||
|
|
||||||
|
_ssh_users () {
|
||||||
|
_combination -s '[:@]' my-accounts users-hosts users "$@"
|
||||||
|
}
|
66
compdef/_sshfs
Normal file
66
compdef/_sshfs
Normal file
|
@ -0,0 +1,66 @@
|
||||||
|
#compdef sshfs
|
||||||
|
|
||||||
|
local curcontext="$curcontext" state state_descr line
|
||||||
|
typeset -A opt_args
|
||||||
|
integer ret=1
|
||||||
|
|
||||||
|
# TODO: in the "user@host" argument, the "user@" part should be optional
|
||||||
|
_arguments -C -S : \
|
||||||
|
'(-)'{-h,--help}'[display help information]' \
|
||||||
|
'(-)'{-V,--version}'[display version information]' \
|
||||||
|
'-p[specify TCP port]:tcp port:_ports' \
|
||||||
|
'-C[enable compression]' \
|
||||||
|
'-F[specify ssh config file]:file:_files' \
|
||||||
|
'*-o[specify mount options]:options:->options' \
|
||||||
|
'(-f)-d[enable debug output]' \
|
||||||
|
'-f[foreground]' \
|
||||||
|
'-s[disable multithreaded operation]' \
|
||||||
|
':remote directory:_remote_files -/ -- ssh:' \
|
||||||
|
':mountpoint:_files -/' && ret=0
|
||||||
|
|
||||||
|
if [[ $state == options ]]; then
|
||||||
|
_values -s , "sshfs or fuse or mount options" \
|
||||||
|
debug reconnect delay_connect sshfs_sync no_readahead sync_readdir sshfs_debug \
|
||||||
|
'cache:cache setting:(yes no)' \
|
||||||
|
'cache_max_size:size [10000]' \
|
||||||
|
'cache_timeout:timeout (seconds) [20]' \
|
||||||
|
cache_{stat,dir,link}_timeout:'timeout (seconds)' \
|
||||||
|
'cache_clean_interval:interval [60]' \
|
||||||
|
'cache_min_clean_interval:interval [5]' \
|
||||||
|
'workaround:workaround:(none all rename delaysrv truncate nobuflimit)' \
|
||||||
|
'idmap:user/group mapping:(none user file)' \
|
||||||
|
uidfile:file:_files \
|
||||||
|
gidfile:file:_files \
|
||||||
|
'nomap:type:(ignore error)' \
|
||||||
|
'ssh_command:ssh command:_command_names' \
|
||||||
|
'ssh_protocol:version:(1 2)' \
|
||||||
|
sftp_server:path:_files \
|
||||||
|
directport:port:_ports \
|
||||||
|
slave disable_hardlink transform_symlinks follow_symlinks no_check_root password_stdin \
|
||||||
|
allow_other allow_root auto_unmount nonempty default_permissions \
|
||||||
|
fsname:filesystem\ name \
|
||||||
|
subtype:filesystem\ type \
|
||||||
|
large_read \
|
||||||
|
max_read:max\ size \
|
||||||
|
hard_remove use_ino readdir_ino direct_io kernel_cache auto_cache \
|
||||||
|
'umask:permissions' \
|
||||||
|
'uid:owner' 'gid:group' \
|
||||||
|
'entry_timeout:timeout (seconds) [1]' \
|
||||||
|
'negative_timeout:timeout (seconds) [0]' \
|
||||||
|
'attr_timeout:timeout (seconds) [1]' \
|
||||||
|
'ac_attr_timeout:timeout (seconds) [= attr_timeout]' \
|
||||||
|
noforget \
|
||||||
|
'remember:time (seconds)' \
|
||||||
|
nopath intr \
|
||||||
|
'intr_signal:signal [10]' \
|
||||||
|
modules:module \
|
||||||
|
max_write:size \
|
||||||
|
max_readahead:readahead \
|
||||||
|
max_background:number \
|
||||||
|
congestion_threshold:threshold \
|
||||||
|
async_read sync_read atomic_o_trunc big_writes no_remote_lock no_remote_flock \
|
||||||
|
no_remote_posix_lock splice_write splice_move splice_read \
|
||||||
|
from_code:charset to_code:charset subdir:_directories rellinks && ret=0
|
||||||
|
fi
|
||||||
|
|
||||||
|
return ret
|
|
@ -75,6 +75,18 @@ local function accept-or-recall-and-infer-history() {
|
||||||
fi
|
fi
|
||||||
}
|
}
|
||||||
zle -N accept-or-recall-and-infer-history
|
zle -N accept-or-recall-and-infer-history
|
||||||
|
|
||||||
|
|
||||||
bindkey "\e^M" accept-or-recall-and-infer-history
|
bindkey "\e^M" accept-or-recall-and-infer-history
|
||||||
|
|
||||||
|
if exists incstring; then
|
||||||
|
local function inc-last-command() {
|
||||||
|
if [[ -z $BUFFER ]]; then
|
||||||
|
BUFFER=$(incstring "$(history -n -1)");
|
||||||
|
else
|
||||||
|
BUFFER=$(incstring "$BUFFER");
|
||||||
|
fi
|
||||||
|
zle vi-end-of-line
|
||||||
|
}
|
||||||
|
zle -N inc-last-command
|
||||||
|
bindkey "^A" inc-last-command
|
||||||
|
fi
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue