From 5e8a27664ce42cb0a04aa9a095fb70edc5098dc2 Mon Sep 17 00:00:00 2001 From: Martin Bielik Date: Sat, 25 Mar 2023 15:36:40 +0100 Subject: complete on current line if applicable --- plugin/vim-ai.vim | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/plugin/vim-ai.vim b/plugin/vim-ai.vim index 7570f69..2befe89 100644 --- a/plugin/vim-ai.vim +++ b/plugin/vim-ai.vim @@ -55,11 +55,17 @@ function! MakePrompt(is_selection, lines, instruction) endfunction function! AIRun(is_selection, ...) range - let prompt = MakePrompt(a:is_selection, getline(a:firstline, a:lastline), a:0 ? a:1 : "") + let lines = getline(a:firstline, a:lastline) + let prompt = MakePrompt(a:is_selection, lines, a:0 ? a:1 : "") let options_default = g:vim_ai_complete_default['options'] let options = g:vim_ai_complete['options'] + let cursor_on_empty_line = trim(join(lines, "\n")) == "" set paste - execute "normal! " . a:lastline . "Go" + if cursor_on_empty_line + execute "normal! " . a:lastline . "GA" + else + execute "normal! " . a:lastline . "Go" + endif execute "py3file " . s:complete_py execute "normal! " . a:lastline . "G" set nopaste -- cgit v1.2.3