2
0
mirror of https://github.com/mhinz/neovim-remote synced 2024-11-11 13:10:34 +00:00
neovim-remote/contrib/completion.bash
2022-05-04 17:42:20 +02:00

58 lines
1.2 KiB
Bash

#!/usr/bin/env bash
# bash command completion for neovim remote.
# Source that file in your bashrc to use it.
_nvr_opts_completions()
{
local cur prev opts
cur=${COMP_WORDS[COMP_CWORD]}
prev=${COMP_WORDS[COMP_CWORD-1]}
opts=(
-h
-cc
-c
-d
-l
-o
-O
-p
-q
-s
-t
--nostart
--version
--serverlist
--servername
--remote
--remote-wait
--remote-silent
--remote-wait-silent
--remote-tab
--remote-tab-wait
--remote-tab-silent
--remote-tab-wait-silent
--remote-send
--remote-expr
)
case "${prev}" in
--servername)
srvlist=$(nvr --serverlist)
COMPREPLY=( $(compgen -W "${srvlist}" -- "$cur") )
return 0
;;
-[oOpq])
# These options require at least one argument.
COMPREPLY=( $(compgen -A file -- "$cur") )
return 0
;;
esac
if [[ "$cur" =~ ^- ]]; then
COMPREPLY=( $(compgen -W "${opts[*]}" -- "$cur") )
else
COMPREPLY=( $(compgen -A file -- "$cur") )
fi
return 0
}
complete -o default -F _nvr_opts_completions nvr