diff options
| author | Martin Bielik <martin.bielik@instea.sk> | 2024-12-10 00:04:00 +0100 |
|---|---|---|
| committer | Martin Bielik <martin.bielik@instea.sk> | 2024-12-10 00:04:00 +0100 |
| commit | 3122b848ee4b32986a5dda739c3ea73b4e696304 (patch) | |
| tree | d770c834b4b187f6dbfba66eeb26cfabd39d8323 /autoload/vim_ai.vim | |
| parent | 9d43ef6c4966705376af2cd16fb012d020ce673d (diff) | |
| download | vim-ai-3122b848ee4b32986a5dda739c3ea73b4e696304.tar.gz | |
allow passing single line range
Diffstat (limited to 'autoload/vim_ai.vim')
| -rw-r--r-- | autoload/vim_ai.vim | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/autoload/vim_ai.vim b/autoload/vim_ai.vim index 3effe73..14342a0 100644 --- a/autoload/vim_ai.vim +++ b/autoload/vim_ai.vim @@ -115,10 +115,10 @@ function! s:set_nopaste(config) endif endfunction -function! s:GetSelectionOrRange(is_selection, ...) +function! s:GetSelectionOrRange(is_selection, is_range, ...) if a:is_selection return s:GetVisualSelection() - elseif a:1 != a:2 + elseif a:is_range return trim(join(getline(a:1, a:2), "\n")) else return "" @@ -155,7 +155,7 @@ function! vim_ai#AIRun(uses_range, config, ...) range abort let l:instruction = a:0 > 0 ? a:1 : "" " l:is_selection used in Python script let l:is_selection = a:uses_range && a:firstline == line("'<") && a:lastline == line("'>") - let l:selection = s:GetSelectionOrRange(l:is_selection, a:firstline, a:lastline) + let l:selection = s:GetSelectionOrRange(l:is_selection, a:uses_range, a:firstline, a:lastline) let l:prompt = s:MakePrompt(l:selection, l:instruction, l:config) let s:last_command = "complete" @@ -189,7 +189,7 @@ function! vim_ai#AIEditRun(uses_range, config, ...) range abort let l:instruction = a:0 > 0 ? a:1 : "" " l:is_selection used in Python script let l:is_selection = a:uses_range && a:firstline == line("'<") && a:lastline == line("'>") - let l:selection = s:GetSelectionOrRange(l:is_selection, a:firstline, a:lastline) + let l:selection = s:GetSelectionOrRange(l:is_selection, a:uses_range, a:firstline, a:lastline) let l:prompt = s:MakePrompt(l:selection, l:instruction, l:config) let s:last_command = "edit" @@ -252,7 +252,7 @@ function! vim_ai#AIChatRun(uses_range, config, ...) range abort let l:instruction = "" " l:is_selection used in Python script let l:is_selection = a:uses_range && a:firstline == line("'<") && a:lastline == line("'>") - let l:selection = s:GetSelectionOrRange(l:is_selection, a:firstline, a:lastline) + let l:selection = s:GetSelectionOrRange(l:is_selection, a:uses_range, a:firstline, a:lastline) try call s:set_paste(l:config) |