From 2bccdb4eec185e063cd6bdc7641e6d49ea48eafe Mon Sep 17 00:00:00 2001 From: bekaboo Date: Wed, 18 Dec 2024 02:02:04 -0500 Subject: [PATCH] Add ability to exclude files from context --- autoload/codeium.vim | 2 +- doc/codeium.txt | 14 ++++++++++++++ plugin/codeium.vim | 6 ++++++ 3 files changed, 21 insertions(+), 1 deletion(-) diff --git a/autoload/codeium.vim b/autoload/codeium.vim index 61789f38..3331f759 100644 --- a/autoload/codeium.vim +++ b/autoload/codeium.vim @@ -364,7 +364,7 @@ function! codeium#Complete(...) abort let current_bufnr = bufnr('%') let loaded_buffers = getbufinfo({'bufloaded':1}) for buf in loaded_buffers - if buf.bufnr != current_bufnr && getbufvar(buf.bufnr, '&filetype') !=# '' + if buf.bufnr != current_bufnr && getbufvar(buf.bufnr, '&filetype') !=# '' && ! getbufvar(buf.bufnr, 'codeium_excluded') call add(other_documents, codeium#doc#GetDocument(buf.bufnr, 1, 1)) endif endfor diff --git a/doc/codeium.txt b/doc/codeium.txt index 5c33c70d..05dd08f2 100644 --- a/doc/codeium.txt +++ b/doc/codeium.txt @@ -29,6 +29,10 @@ COMMANDS *:Codeium* :Codeium EnableBuffer Re-enable Codeium completions in the current buffer after running :Codeium DisableBuffer + *:Codeium_ExcludeBuffer* +:Codeium ExcludeBuffer Exclude current buffer from codeium completion + contexts + *:Codeium_Toggle* :Codeium Toggle Enable Codeium completions if they are disabled. Disable Codeium completions if they are enabled. Does @@ -153,6 +157,16 @@ b:codeium_virtual_text_priority let b:codeium_virtual_text_priority = 1000 < + *b:codeium_excluded* +b:codeium_excluded + Buffer-local flag that controls whether the buffer is + excluded from codeium's context. If not set, buffer + is included as context as default. Set it to `v:true` + to exclude the buffer from context. +> + let b:codeium_excluded = v:true +< + MAPS *codeium-maps* *codeium-i_* diff --git a/plugin/codeium.vim b/plugin/codeium.vim index 36f1bd07..869ea17e 100644 --- a/plugin/codeium.vim +++ b/plugin/codeium.vim @@ -96,6 +96,12 @@ endfunction command! CodeiumToggle :silent! call CodeiumToggle() +function! CodeiumExclude() " Exclude current buffer from Codeium context + let b:codeium_excluded = v:false +endfun + +command! CodeiumExclude :silent! call CodeiumExclude() + function! CodeiumManual() " Disable the automatic triggering of completions let g:codeium_manual = v:true endfun