diff --git a/share/completions/mosh.fish b/share/completions/mosh.fish new file mode 100644 index 000000000..064c7023b --- /dev/null +++ b/share/completions/mosh.fish @@ -0,0 +1,26 @@ + +complete -x -c mosh -d Hostname -a " + +(__fish_print_hostnames) + +( + #Prepend any username specified in the completion to the hostname + echo (commandline -ct)|sed -ne 's/\(.*@\).*/\1/p' +)(__fish_print_hostnames) +" + +complete -x -c mosh -d User -a " +(__fish_print_users)@ +" +complete -c mosh --description "Command to run" -x -a '(__fish_complete_subcommand --fcs-skip=2)' + +complete -c mosh -l client --description 'Path to client helper on local machine (default: "mosh-client")' +complete -c mosh -l server --description 'Command to run server helper on remote machine (default: "mosh-server")' +complete -c mosh -l ssh --description 'SSH command to run when setting up session (example: "ssh -p 2222") (default: "ssh")' +complete -c mosh -f -l predict --description 'Controls use of speculative local echo' -a 'adaptive always never experimental' +complete -c mosh -s a --description 'Synonym for --predict=always' +complete -c mosh -s n --description 'Synonym for --predict=never' +complete -c mosh -s p -l port --description 'Use a particular server-side UDP port or port range' + +# Since mosh runs subcommands, it can accept any switches +complete -c mosh -u