aboutsummaryrefslogtreecommitdiff
path: root/config
diff options
context:
space:
mode:
authorRuben Beltran del Rio <jj@r.bdr.sh>2025-11-28 16:54:53 +0100
committerRuben Beltran del Rio <jj@r.bdr.sh>2025-12-02 10:18:52 +0100
commit2187a08bd3ec76dc4d9c008331493be699e6ab00 (patch)
treec56011d61eafdd4f273ff0f0c8b2e7d4ef45154c /config
parentca13f790e2ca8c6389334213dddef701c7626d1f (diff)
Use blink.cmp and jannotate in neovim
Diffstat (limited to 'config')
-rw-r--r--config/nvim/colors/tranquil-light.vim10
-rw-r--r--config/nvim/init.lua2
-rw-r--r--config/nvim/lazy-lock.json13
-rw-r--r--config/nvim/lua/lsp.lua32
-rw-r--r--config/nvim/lua/plugins.lua44
5 files changed, 59 insertions, 42 deletions
diff --git a/config/nvim/colors/tranquil-light.vim b/config/nvim/colors/tranquil-light.vim
index 4046a97..449ea74 100644
--- a/config/nvim/colors/tranquil-light.vim
+++ b/config/nvim/colors/tranquil-light.vim
@@ -156,5 +156,15 @@ hi DiagnosticInfo guifg=#FFFFFF guibg=#4F8FE6
hi DiagnosticHint guifg=#0F261F guibg=#FFB4F0
hi DiagnosticUnderlineError guifg=#0F261F guisp=#FA2B00 gui=undercurl,italic cterm=undercurl,italic
+" Documentation
+hi @comment.documentation guibg=#FAED8F
+
" FZF
hi @fzf.hlplus guifg=#FFFFFF
+
+" Jannotate
+hi JannotateChangeHighlight guifg=#FF5EC4 guibg=none gui=bold
+hi JannotateChange guifg=#90A6A2 guibg=none gui=none
+hi JannotateAuthor guifg=#23C17C guibg=none gui=none
+hi JannotateDate guifg=#FF5EC4 guibg=none gui=none
+hi JannotateCursorLine guibg=#DAE6E3
diff --git a/config/nvim/init.lua b/config/nvim/init.lua
index c5f5610..8c4f304 100644
--- a/config/nvim/init.lua
+++ b/config/nvim/init.lua
@@ -105,7 +105,7 @@ vim.g.vim_svelte_plugin_use_typescript = true
vim.keymap.set("n", "-", "<CMD>Oil<CR>", { desc = "Open parent directory" })
-- UndoTree
-vim.keymap.set('n', '<leader>U', vim.cmd.UndotreeToggle)
+vim.keymap.set('n', '<leader>u', vim.cmd.UndotreeToggle)
-- Plugins
require('plugins')
diff --git a/config/nvim/lazy-lock.json b/config/nvim/lazy-lock.json
index f67eb33..7d2145d 100644
--- a/config/nvim/lazy-lock.json
+++ b/config/nvim/lazy-lock.json
@@ -1,9 +1,7 @@
{
- "LargeFile": { "branch": "master", "commit": "3941a37b2b0288524300348a39521a46539bf9f6" },
- "coq.artifacts": { "branch": "artifacts", "commit": "ef5f21d638ccc456cfa5b8d0ab37093cefe48c8b" },
- "coq.thirdparty": { "branch": "3p", "commit": "2bd969a2bcd2624f9c260b1000957c7e665e308e" },
- "coq_nvim": { "branch": "coq", "commit": "a63d28a9aa59c20a503ce38608fb6bc7cb3842f4" },
- "fzf-lua": { "branch": "main", "commit": "3b4a5d13adeb33f387d744b6ed777bb5401cba94" },
+ "blink.cmp": { "branch": "main", "commit": "b19413d214068f316c78978b08264ed1c41830ec" },
+ "friendly-snippets": { "branch": "main", "commit": "572f5660cf05f8cd8834e096d7b4c921ba18e175" },
+ "fzf-lua": { "branch": "main", "commit": "ed140c90465a18f893bb2f5fcfbc23c661e583cd" },
"gemini.vim": { "branch": "master", "commit": "c9efb59c97b71c28d4678c79fd21fbdd3a69d196" },
"lazy.nvim": { "branch": "main", "commit": "85c7ff3711b730b4030d03144f6db6375044ae82" },
"lazydev.nvim": { "branch": "main", "commit": "5231c62aa83c2f8dc8e7ba957aa77098cda1257d" },
@@ -13,16 +11,15 @@
"nvim-dap": { "branch": "master", "commit": "5860c7c501eb428d3137ee22c522828d20cca0b3" },
"nvim-dap-ui": { "branch": "master", "commit": "cf91d5e2d07c72903d052f5207511bf7ecdb7122" },
"nvim-dap-vscode-js": { "branch": "main", "commit": "03bd29672d7fab5e515fc8469b7d07cc5994bbf6" },
- "nvim-lspconfig": { "branch": "master", "commit": "e0fae251f8459940331960106d4bd9457cec23de" },
+ "nvim-lspconfig": { "branch": "master", "commit": "effe4bf2e1afb881ea67291c648b68dd3dfc927a" },
"nvim-nio": { "branch": "master", "commit": "21f5324bfac14e22ba26553caf69ec76ae8a7662" },
"nvim-treesitter": { "branch": "master", "commit": "42fc28ba918343ebfd5565147a42a26580579482" },
"nvim-treesitter-endwise": { "branch": "master", "commit": "a61a9de7965324d4019fb1637b66bfacdcb01f51" },
- "oil.nvim": { "branch": "master", "commit": "7e1cd7703ff2924d7038476dcbc04b950203b902" },
+ "oil.nvim": { "branch": "master", "commit": "cbcb3f997f6f261c577b943ec94e4ef55108dd95" },
"oleoboard.nvim": { "branch": "main", "commit": "3652b39db3a8faca3fb767ace799479124bc79f3" },
"snes-syntax-vim": { "branch": "master", "commit": "a6a699c8905f7b6119bf91e44f960667d9f03d59" },
"tree-sitter-api-notation": { "branch": "main", "commit": "3113c6077d9ed1e662a891714ac00e1ee3bb7657" },
"undotree": { "branch": "master", "commit": "0f1c9816975b5d7f87d5003a19c53c6fd2ff6f7f" },
- "vim-fugitive": { "branch": "master", "commit": "61b51c09b7c9ce04e821f6cf76ea4f6f903e3cf4" },
"vim-indent-object": { "branch": "master", "commit": "8ab36d5ec2a3a60468437a95e142ce994df598c6" },
"vim-togglelist": { "branch": "master", "commit": "48f0d30292efdf20edc883e61b121e6123e03df7" },
"which-key.nvim": { "branch": "main", "commit": "3aab2147e74890957785941f0c1ad87d0a44c15a" }
diff --git a/config/nvim/lua/lsp.lua b/config/nvim/lua/lsp.lua
index 6c69119..3482564 100644
--- a/config/nvim/lua/lsp.lua
+++ b/config/nvim/lua/lsp.lua
@@ -1,34 +1,32 @@
-local coq = require('coq')
-
-vim.lsp.config('ts_ls', coq.lsp_ensure_capabilities({
+vim.lsp.config('ts_ls', {
cmd = { 'typescript-language-server', '--stdio' },
filetypes = { 'javascript', 'javascriptreact', 'typescript', 'typescriptreact' },
root_markers = { 'package.json', 'tsconfig.json', 'jsconfig.json' }
-}))
+})
vim.lsp.enable('ts_ls')
-vim.lsp.config('eslint', coq.lsp_ensure_capabilities({
+vim.lsp.config('eslint', {
cmd = { 'vscode-eslint-language-server', '--stdio' },
filetypes = { 'javascript', 'javascriptreact', 'typescript', 'typescriptreact' },
root_markers = { '.eslintrc', '.eslintrc.js', '.eslintrc.json', 'package.json' }
-}))
+})
vim.lsp.enable('eslint')
-vim.lsp.config('svelte', coq.lsp_ensure_capabilities({
+vim.lsp.config('svelte', {
cmd = { 'svelteserver', '--stdio' },
filetypes = { 'svelte' },
root_markers = { 'package.json', 'svelte.config.js' }
-}))
+})
vim.lsp.enable('svelte')
-vim.lsp.config('pyright', coq.lsp_ensure_capabilities({
+vim.lsp.config('pyright', {
cmd = { 'pyright-langserver', '--stdio' },
filetypes = { 'python' },
root_markers = { 'pyproject.toml', 'setup.py', 'requirements.txt' }
-}))
+})
vim.lsp.enable('pyright')
-vim.lsp.config('rust_analyzer', coq.lsp_ensure_capabilities({
+vim.lsp.config('rust_analyzer', {
cmd = { 'rust-analyzer' },
filetypes = { 'rust' },
root_markers = { 'Cargo.toml', 'rust-project.json' },
@@ -54,21 +52,21 @@ vim.lsp.config('rust_analyzer', coq.lsp_ensure_capabilities({
}
},
},
-}))
+})
vim.lsp.enable('rust_analyzer')
-vim.lsp.config('lua_ls', coq.lsp_ensure_capabilities({
+vim.lsp.config('lua_ls', {
cmd = { 'lua-language-server' },
filetypes = { 'lua' },
root_markers = { '.luarc.json', '.luarc.jsonc', '.luacheckrc', 'stylua.toml', 'selene.toml' },
-}))
+})
vim.lsp.enable('lua_ls')
-vim.lsp.config('gleam', coq.lsp_ensure_capabilities({
+vim.lsp.config('gleam', {
cmd = { 'gleam', 'lsp' },
filetypes = { 'gleam' },
root_markers = { 'gleam.toml' },
-}))
+})
vim.lsp.enable('gleam')
-- Enable inlay hints for Rust when LSP attaches
@@ -94,7 +92,7 @@ vim.api.nvim_create_autocmd('LspAttach', {
callback = function(ev)
-- Enable completion triggered by <c-x><c-o>
vim.bo[ev.buf].omnifunc = 'v:lua.vim.lsp.omnifunc'
-
+
-- Buffer local mappings
local opts = { buffer = ev.buf }
vim.keymap.set('n', 'gD', vim.lsp.buf.declaration, opts)
diff --git a/config/nvim/lua/plugins.lua b/config/nvim/lua/plugins.lua
index 9695d44..5876b51 100644
--- a/config/nvim/lua/plugins.lua
+++ b/config/nvim/lua/plugins.lua
@@ -88,16 +88,26 @@ require('lazy').setup({
{
'neovim/nvim-lspconfig',
lazy = false,
- dependencies = {
- { 'ms-jpq/coq_nvim', branch = 'coq' },
- { 'ms-jpq/coq.artifacts', branch = 'artifacts' },
- { 'ms-jpq/coq.thirdparty', branch = '3p' }
+ },
+ {
+ 'saghen/blink.cmp',
+ dependencies = { 'rafamadriz/friendly-snippets' },
+ version = '1.*',
+
+ ---@module 'blink.cmp'
+ ---@type blink.cmp.Config
+ opts = {
+ keymap = {
+ preset = 'enter',
+ ['<Tab>'] = { 'snippet_forward', 'select_next', 'fallback' },
+ ['<S-Tab>'] = { 'snippet_backward', 'select_prev', 'fallback' },
+ },
+ sources = {
+ default = { 'lsp', 'path', 'snippets', 'buffer' },
+ },
+ fuzzy = { implementation = "prefer_rust_with_warning" },
},
- init = function()
- vim.g.coq_settings = {
- auto_start = 'shut-up',
- }
- end,
+ opts_extend = { "sources.default" }
},
{
"folke/lazydev.nvim",
@@ -107,8 +117,6 @@ require('lazy').setup({
-- Tools
'mbbill/undotree',
- 'vim-scripts/LargeFile',
- 'tpope/vim-fugitive',
'milkypostman/vim-togglelist',
{
'folke/which-key.nvim',
@@ -119,13 +127,17 @@ require('lazy').setup({
end,
opts = {}
},
- { 'stevearc/oil.nvim', opts = {
- keymaps = {
- ['<C-p>'] = false,
- ['<C-S-p>'] = 'actions.preview'
+ {
+ 'stevearc/oil.nvim',
+ opts = {
+ keymaps = {
+ ['<C-p>'] = false,
+ ['<C-S-p>'] = 'actions.preview'
+ }
}
- } },
+ },
'https://git.sr.ht/~rbdr/nota.nvim',
'https://git.sr.ht/~rbdr/oleoboard.nvim',
+ 'https://git.sr.ht/~rbdr/jannotate.nvim',
})