dots - my configuration files
log |
files |
refscommit 02dd0214bb2d99e7979277b9ecc3e96bfa00c91e
parent d759efd70b7520ad59ae518aa6ad6102b92a5f5e
author: rj1 <[email protected]>
date: Wed, 22 May 2024 18:05:43 -0600
nvim: we can use codeium.vim again - https://github.com/neovim/neovim/pull/27051 is in
Diffstat:
4 files changed, 29 insertions(+), 32 deletions(-)
diff --git a/.config/nvim/lua/rj1/ai.lua b/.config/nvim/lua/rj1/ai.lua
@@ -1,38 +1,32 @@
-- codeium
-- disabled by default
+vim.g.codeium_disable_bindings = true
vim.g.codeium_enabled = false
-require("codeium").setup()
-local function is_codeium_enabled()
- return vim.g.codeium_enabled
-end
+function Toggle_codeium()
+ vim.g.codeium_enabled = not vim.g.codeium_enabled
-local source = require("codeium.source")
-function source:is_available()
- local enabled = is_codeium_enabled()
- return enabled and self.server.is_healthy()
-end
+ if vim.g.codeium_enabled then
+ -- HACK: why do we have to do this?
+ vim.cmd(':Codeium EnableBuffer')
-vim.api.nvim_set_keymap('n', '<leader>ai', '', {
- callback = function()
- local new_enabled = not is_codeium_enabled()
- vim.g.codeium_enabled = new_enabled
- end,
- noremap = true
-})
+ -- set keybinds for ai completions
+ vim.keymap.set('i', '<right>', function () return vim.fn['codeium#Accept']() end, { expr = true, silent = true })
+ vim.keymap.set('i', '<up>', function() return vim.fn['codeium#CycleCompletions'](1) end, { expr = true, silent = true })
+ vim.keymap.set('i', '<down>', function() return vim.fn['codeium#CycleCompletions'](-1) end, { expr = true, silent = true })
+ else
+ -- HACK: why do we have to do this?
+ vim.cmd(':Codeium DisableBuffer')
-
-local function fetch_openai_key()
- local handle = io.popen("pass dev/openai.com/openai_key")
- if handle ~= nil then
- local key = string.gsub(handle:read("*a"), "\n", "")
- handle:close()
- return key
+ -- unset keybinds for ai completions
+ vim.keymap.del('i', '<right>')
+ vim.keymap.del('i', '<up>')
+ vim.keymap.del('i', '<down>')
end
end
-local function fetch_groq_key()
- local handle = io.popen("pass dev/groq.com/nvim_key")
+vim.api.nvim_set_keymap('n', '<leader>ai', ':lua Toggle_codeium()<cr>', { noremap = true, silent = true })
+
if handle ~= nil then
local key = string.gsub(handle:read("*a"), "\n", "")
handle:close()
diff --git a/.config/nvim/lua/rj1/lsp.lua b/.config/nvim/lua/rj1/lsp.lua
@@ -366,7 +366,6 @@ cmp.setup({
text = string.lower(text)
local source = ({
- codeium = "ai",
nvim_lsp = "lsp",
luasnip = "luasnip",
path = "path",
@@ -381,9 +380,6 @@ cmp.setup({
return vim_item
end,
},
- experimental = {
- ghost_text = { hlgroup = "Comment" },
- },
snippet = {
expand = function(args)
luasnip.lsp_expand(args.body)
@@ -416,7 +412,6 @@ cmp.setup({
end, { "i", "s" }),
}),
sources = {
- { name = "codeium" },
{ name = "luasnip" },
{ name = "nvim_lsp" },
{ name = "nvim_lsp_signature_help" },
diff --git a/.config/nvim/lua/rj1/lualine.lua b/.config/nvim/lua/rj1/lualine.lua
@@ -29,7 +29,15 @@ local navic = require("nvim-navic")
local function is_codeium_enabled()
if vim.g.codeium_enabled then
- return "on"
+ local status = vim.api.nvim_call_function("codeium#GetStatusString", {})
+
+ if status == " ON" then
+ status = "on"
+ elseif status == " * " then
+ status = "loading.."
+ end
+
+ return status
else
return "off"
end
diff --git a/.config/nvim/lua/rj1/plugins.lua b/.config/nvim/lua/rj1/plugins.lua
@@ -37,7 +37,7 @@ require("lazy").setup({
},
-- ai
- "Exafunction/codeium.nvim",
+ 'Exafunction/codeium.vim',
{ "Robitx/gp.nvim", branch = "copilot" },
-- syntax / editing