rj1
log | files | refs
commit 04bc9b95cf1610d49569d79e2123dab13a3c61b4
parent 78fb523a5cf61a6bb8adec722cd25bbbfe1687f0
author: rj1 <[email protected]>
date:   Sun, 19 May 2024 20:47:17 -0600

nvim: ai updates

Diffstat:
A.config/nvim/lazy-lock.json | 61+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
M.config/nvim/lua/rj1/ai.lua | 35+++++++++++++++++++----------------
M.config/nvim/lua/rj1/lsp.lua | 2++
M.config/nvim/lua/rj1/lualine.lua | 22+++++++++++++++-------
M.config/nvim/lua/rj1/plugins.lua | 20++------------------
5 files changed, 99 insertions(+), 41 deletions(-)

diff --git a/.config/nvim/lazy-lock.json b/.config/nvim/lazy-lock.json @@ -0,0 +1,60 @@ +{ + "LuaSnip": { "branch": "master", "commit": "78296bfabf756dbb6c7134aa219e75564dddf40f" }, + "ccc.nvim": { "branch": "main", "commit": "f388f1981d222967c741fe9927edf9ba5fa3bcbe" }, + "cmp-buffer": { "branch": "main", "commit": "3022dbc9166796b644a841a02de8dd1cc1d311fa" }, + "cmp-cmdline": { "branch": "main", "commit": "d250c63aa13ead745e3a40f61fdd3470efde3923" }, + "cmp-nvim-lsp": { "branch": "main", "commit": "5af77f54de1b16c34b23cba810150689a3a90312" }, + "cmp-nvim-lsp-signature-help": { "branch": "main", "commit": "3d8912ebeb56e5ae08ef0906e3a54de1c66b92f1" }, + "cmp-path": { "branch": "main", "commit": "91ff86cd9c29299a64f968ebb45846c485725f23" }, + "cmp-tmux": { "branch": "main", "commit": "95b1b921802e6f60627b3e76afb9380fddd87f9a" }, + "cmp_luasnip": { "branch": "master", "commit": "05a9ab28b53f71d1aece421ef32fee2cb857a843" }, + "codeium.nvim": { "branch": "main", "commit": "d3b88eb3aa1de6da33d325c196b8a41da2bcc825" }, + "eyeliner.nvim": { "branch": "main", "commit": "c540d58bf52aa979d4cca639c60387ae0c0ccf88" }, + "formatter.nvim": { "branch": "master", "commit": "ad246d34ce7a32f752071ed81b09b94e6b127fad" }, + "friendly-snippets": { "branch": "main", "commit": "dd2fd1281d4b22e7b4a5bfafa3e142d958e251f2" }, + "gitsigns.nvim": { "branch": "main", "commit": "805610a9393fa231f2c2b49cb521bfa413fadb3d" }, + "gp.nvim": { "branch": "copilot", "commit": "c130cf2cdd51b01790e5b38b8cf545d4c33405ab" }, + "guess-indent.nvim": { "branch": "main", "commit": "b8ae749fce17aa4c267eec80a6984130b94f80b2" }, + "kommentary": { "branch": "main", "commit": "d5a111a3bc4109a8f913a5863c9092b3b3801482" }, + "lazy.nvim": { "branch": "main", "commit": "05240b41548c4245a04d34ee54f789e824129991" }, + "lualine.nvim": { "branch": "master", "commit": "0a5a66803c7407767b799067986b4dc3036e1983" }, + "markdown-preview.nvim": { "branch": "master", "commit": "a923f5fc5ba36a3b17e289dc35dc17f66d0548ee" }, + "mason-lspconfig.nvim": { "branch": "main", "commit": "9ae570e206360e47d30b4c35a4550c165f4ea7b7" }, + "mason.nvim": { "branch": "main", "commit": "49ff59aded1047a773670651cfa40e76e63c6377" }, + "neoscroll.nvim": { "branch": "master", "commit": "e78657719485c5663b88e5d96ffcfb6a2fe3eec0" }, + "nvim-autopairs": { "branch": "master", "commit": "b0b79e42a28f09719a7da9534c3731fa37319d9b" }, + "nvim-cmp": { "branch": "main", "commit": "24122371810089d390847d8ba66325c1f1aa64c0" }, + "nvim-cokeline": { "branch": "main", "commit": "32929480b1753a5c2a99435e891da9be1e61e0b9" }, + "nvim-lspconfig": { "branch": "master", "commit": "cee94b22adc96582d9136f85fb3b076feda8825c" }, + "nvim-navic": { "branch": "master", "commit": "8649f694d3e76ee10c19255dece6411c29206a54" }, + "nvim-surround": { "branch": "main", "commit": "6d0dc3dbb557bcc6a024969da461df4ba803fc48" }, + "nvim-tree.lua": { "branch": "master", "commit": "2bc725a3ebc23f0172fb0ab4d1134b81bcc13812" }, + "nvim-treesitter": { "branch": "master", "commit": "8012b55eee65eba1d1ee4df0a186d30e72dcbe65" }, + "nvim-ts-autotag": { "branch": "main", "commit": "531f48334c422222aebc888fd36e7d109cb354cd" }, + "nvim-ts-context-commentstring": { "branch": "main", "commit": "0bdccb9c67a42a5e2d99384dc9bfa29b1451528f" }, + "nvim-web-devicons": { "branch": "master", "commit": "e37bb1feee9e7320c76050a55443fa843b4b6f83" }, + "onedarkpro.nvim": { "branch": "main", "commit": "5cf25dd6db58c6eb1cec47ad333e2b76051f8562" }, + "plenary.nvim": { "branch": "master", "commit": "08e301982b9a057110ede7a735dd1b5285eb341f" }, + "possession.nvim": { "branch": "master", "commit": "36a4957f74d72324292348278922127c52e14bce" }, + "python-type-stubs": { "branch": "main", "commit": "cd8f8654c3e46a7f771afd044dd8eb48811696c1" }, + "registers.nvim": { "branch": "main", "commit": "22bb98f93a423252fffeb3531f7bc12a3e07b63f" }, + "telescope-fzf-native.nvim": { "branch": "main", "commit": "9ef21b2e6bb6ebeaf349a0781745549bbb870d27" }, + "telescope.nvim": { "branch": "master", "commit": "52f500110bcf9190b44b4d8640162adc86772ec4" }, + "todo-comments.nvim": { "branch": "main", "commit": "a7e39ae9e74f2c8c6dc4eea6d40c3971ae84752d" }, + "trouble.nvim": { "branch": "main", "commit": "b9cf677f20bb2faa2dacfa870b084e568dca9572" }, + "undotree": { "branch": "master", "commit": "56c684a805fe948936cda0d1b19505b84ad7e065" }, + "vim-blade": { "branch": "master", "commit": "9534101808cc320eef003129a40cab04b026a20c" }, + "vim-dadbod": { "branch": "master", "commit": "37523ffe0849b51db07fa7f48430c2aca5420a0e" }, + "vim-dadbod-completion": { "branch": "master", "commit": "5d5ad196fcde223509d7dabbade0148f7884c5e3" }, + "vim-dadbod-ui": { "branch": "master", "commit": "ac28346e964c1b814b19942903c379d57aea82f3" }, + "vim-dbml": { "branch": "master", "commit": "c684576d80542c52f888309b715c49bc69a02ed3" }, + "vim-easy-align": { "branch": "master", "commit": "9815a55dbcd817784458df7a18acacc6f82b1241" }, + "vim-eunuch": { "branch": "master", "commit": "8fb3904be27b6b60d086f87c2570085902414069" }, + "vim-fugitive": { "branch": "master", "commit": "19ca61c78c86a2ce6a425aee9b1c6664e5149ea6" }, + "vim-matchtag": { "branch": "master", "commit": "54357c00979e07d86aa12b383ddd1d6a7fbda2c2" }, + "vim-python-pep8-indent": { "branch": "master", "commit": "60ba5e11a61618c0344e2db190210145083c91f8" }, + "vim-rhubarb": { "branch": "master", "commit": "ee69335de176d9325267b0fd2597a22901d927b1" }, + "vimux": { "branch": "master", "commit": "f7c41607d9246ec4b6cc28587cce84d75d106e3e" }, + "which-key.nvim": { "branch": "main", "commit": "4433e5ec9a507e5097571ed55c02ea9658fb268a" }, + "yadm.nvim": { "branch": "master", "commit": "1e34448b3efd1f9c19faae8277ea0bc8af0a7cd5" } +} +\ No newline at end of file diff --git a/.config/nvim/lua/rj1/ai.lua b/.config/nvim/lua/rj1/ai.lua @@ -1,22 +1,25 @@ -- codeium --- vim.g.codeium_enabled = false --- vim.g.codeium_disable_bindings = 1 +-- disabled by default +vim.g.codeium_enabled = false +require("codeium").setup() ---[[ function Codeium_status() - local status = vim.fn["codeium#GetStatusString"]() - status = string.gsub(status, "^%s+", "") - status = string.lower(status) - return status -end ]] +local function is_codeium_enabled() + return vim.g.codeium_enabled +end --- use <leader>ai to toggle codeium ---[[ vim.keymap.set("n", "<leader>ai", function() - if Codeium_status() == "on" then - vim.g.codeium_enabled = false - else - vim.g.codeium_enabled = true - end -end, { noremap = true }) ]] +local source = require("codeium.source") +function source:is_available() + local enabled = is_codeium_enabled() + return enabled and self.server.is_healthy() +end + +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 +}) local function fetch_openai_key() diff --git a/.config/nvim/lua/rj1/lsp.lua b/.config/nvim/lua/rj1/lsp.lua @@ -366,6 +366,7 @@ cmp.setup({ text = string.lower(text) local source = ({ + codeium = "ai", nvim_lsp = "lsp", luasnip = "luasnip", path = "path", @@ -410,6 +411,7 @@ 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 @@ -27,6 +27,14 @@ end local navic = require("nvim-navic") +local function is_codeium_enabled() + if vim.g.codeium_enabled then + return "on" + else + return "off" + end +end + -- lualine require("lualine").setup({ options = { @@ -82,21 +90,21 @@ require("lualine").setup({ end, }, { - "navic", - color_correction = nil, - navic_opts = nil - } - --[[ { - Codeium_status, + is_codeium_enabled, icon = "󰧑 ai:", color = function() - if Codeium_status() == "on" then + if vim.g.codeium_enabled then return { fg = colors.green } else return { fg = colors.red } end end, + }, + --[[ { + "navic", + color_correction = nil, + navic_opts = nil }, ]] }, lualine_b = { diff --git a/.config/nvim/lua/rj1/plugins.lua b/.config/nvim/lua/rj1/plugins.lua @@ -30,30 +30,14 @@ require("lazy").setup({ -- db "tpope/vim-dadbod", "kristijanhusak/vim-dadbod-ui", - { "kristijanhusak/vim-dadbod-completion", + { "kristijanhusak/vim-dadbod-completion", init = function() vim.g.db_ui_use_nerd_fonts = 1 end, }, -- ai - { - "Exafunction/codeium.vim", - config = function() - vim.keymap.set("i", "<Right>", function() - return vim.fn["codeium#Accept"]() - end, { expr = true }) - vim.keymap.set("i", "<a-]>", function() - return vim.fn["codeium#CycleCompletions"](1) - end, { expr = true }) - vim.keymap.set("i", "<a-[>", function() - return vim.fn["codeium#CycleCompletions"](-1) - end, { expr = true }) - vim.keymap.set("i", "<a-x>", function() - return vim.fn["codeium#Clear"]() - end, { expr = true }) - end, - }, + "Exafunction/codeium.nvim", { "Robitx/gp.nvim", branch = "copilot" }, -- syntax / editing