blob: bfe4f3ec62008d7985f8c7eac460f985cc3cfafc (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
" Configures ai-chat scratch window.
" - scratch_buffer_keep_open = 0
" - opens new ai-chat every time
" - scratch_buffer_keep_open = 1
" - opens last ai-chat buffer
" - keeps the buffer in the buffer list
function! vim_ai#MakeScratchWindow()
let l:keep_open = g:vim_ai_chat['ui']['scratch_buffer_keep_open']
if l:keep_open && bufexists("[AI chat]")
" reuse chat buffer
buffer \[AI chat\]
return
endif
setlocal buftype=nofile
setlocal noswapfile
setlocal ft=aichat
if l:keep_open
setlocal bufhidden=hide
else
setlocal bufhidden=wipe
endif
if bufexists("[AI chat]")
" spawn another window if chat already exist
let l:index = 2
while bufexists("[AI chat " . l:index . "]")
let l:index += 1
endwhile
execute "file [AI chat ". l:index . "]"
else
file [AI chat]
endif
endfunction
|