diff options
| author | Martin Bielik <mx.bielik@gmail.com> | 2023-03-25 15:36:40 +0100 |
|---|---|---|
| committer | Martin Bielik <mx.bielik@gmail.com> | 2023-03-25 15:36:40 +0100 |
| commit | 5e8a27664ce42cb0a04aa9a095fb70edc5098dc2 (patch) | |
| tree | f2ff4d68c2671e29c641bd49e8b1b282110fbc64 | |
| parent | 232419deba9643800658d92607bd32c6648c5db9 (diff) | |
| download | vim-ai-5e8a27664ce42cb0a04aa9a095fb70edc5098dc2.tar.gz | |
complete on current line if applicable
| -rw-r--r-- | plugin/vim-ai.vim | 10 |
1 files 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 |