From 3bc5782103b0e84d6a1f96244d03bc48c6123fff Mon Sep 17 00:00:00 2001 From: Ingo Meyer Date: Wed, 30 Mar 2022 14:09:08 +0200 Subject: [PATCH] Complete remotes in interactive commands This commit enables tab completion for remotes in interactive commands. --- plugin/vim-gh-line.vim | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/plugin/vim-gh-line.vim b/plugin/vim-gh-line.vim index 8201d2f..b6c395b 100644 --- a/plugin/vim-gh-line.vim +++ b/plugin/vim-gh-line.vim @@ -188,13 +188,23 @@ func! s:gh_repo() range call system(l:finalCmd) endfun +func! s:complete_remotes(A, L, P) + return join(s:remote_list, "\n") +endfunc + func! s:find_git_remote(remote_list) let l:remote = "" if len(a:remote_list) > 1 + let s:remote_list = a:remote_list call inputsave() - let l:remote = input('Please select one remote(' . join(a:remote_list, ',') . '): ') + let l:remote = input( + \ 'Please select one remote (' . join(a:remote_list, ',') . '): ', + \ '', + \ 'custom,' . expand('') . 'complete_remotes' + \ ) call inputrestore() + unlet s:remote_list if index(a:remote_list, l:remote) < 0 echom " <- seems it is not a valid remote name"