diff --git a/init.lua b/init.lua index af5942f..48c257c 100644 --- a/init.lua +++ b/init.lua @@ -15,9 +15,6 @@ -- vim.treesitter.language.add('pandoc_markdown_inline', { path = "/usr/local/lib/libtree-sitter-pandoc-markdown-inline.so" }) -- vim.treesitter.language.register('pandoc_markdown', { 'quarto', 'rmarkdown' }) -vim.treesitter.language.register("markdown", 'quarto') -vim.treesitter.language.register("markdown", 'text') - require 'config.global' require 'config.lazy' require 'config.autocommands' diff --git a/lua/config/global.lua b/lua/config/global.lua index 146c711..eebdd71 100644 --- a/lua/config/global.lua +++ b/lua/config/global.lua @@ -85,8 +85,8 @@ vim.opt.statusline = '%{%g:currentmode[mode()]%} %{%reg_recording()%} %* %t | %y vim.opt.cmdheight = 1 -- split right and below by default -vim.opt.splitright = true vim.opt.splitbelow = true +vim.opt.splitright = true --tabline vim.opt.showtabline = 1 diff --git a/lua/plugins/completion.lua b/lua/plugins/completion.lua index 98b95b8..711f1e4 100644 --- a/lua/plugins/completion.lua +++ b/lua/plugins/completion.lua @@ -10,6 +10,10 @@ return { { -- new completion plugin 'saghen/blink.cmp', enabled = true, + -- version = 'v0.*', + dev = true, + -- OR build from source, requires nightly: https://rust-lang.github.io/rustup/concepts/channels.html#working-with-nightly-rust + -- build = 'cargo build --release', lazy = false, -- lazy loading handled internally -- optional: provides snippets for the snippet source dependencies = { @@ -27,13 +31,13 @@ return { }, { 'kdheepak/cmp-latex-symbols' }, }, - version = 'v0.*', - -- OR build from source, requires nightly: https://rust-lang.github.io/rustup/concepts/channels.html#working-with-nightly-rust - -- build = 'cargo build --release', ---@module 'blink.cmp' ---@type blink.cmp.Config opts = { - keymap = { preset = 'enter' }, + keymap = { + preset = 'enter', + [''] = { 'show_documentation', 'hide_documentation' }, + }, sources = { default = { "lazydev", "lsp", "path", "snippets", "buffer", "emoji" }, cmdline = { @@ -70,7 +74,7 @@ return { completion = { documentation = { auto_show = true, - auto_show_delay_ms = 500, + auto_show_delay_ms = 100, treesitter_highlighting = true, }, menu = { auto_show = function(ctx) return ctx.mode ~= 'cmdline' end }, @@ -104,6 +108,7 @@ return { { -- LLMs "olimorris/codecompanion.nvim", + version = "*", enabled = true, dependencies = { "nvim-lua/plenary.nvim", @@ -112,25 +117,29 @@ return { }, keys = { { 'ac', ':CodeCompanionChat Toggle', desc = '[a]i [c]hat' }, - { 'aa', ':CodeCompanionActions', desc = '[a]i [a]actions' }, + { 'aa', ':CodeCompanionActions', desc = '[a]i [a]actions' }, }, config = function() require("codecompanion").setup({ + display = { + diff = { + enabled = true, + }, + }, strategies = { chat = { + -- adapter = "ollama", adapter = "copilot", }, inline = { + -- adapter = "ollama", adapter = "copilot", }, agent = { + -- adapter = "ollama", adapter = "copilot", }, }, - diff = { - enabled = true, - close_chat_at = 40 - } }) end } diff --git a/lua/plugins/git.lua b/lua/plugins/git.lua index e211ce7..e34714e 100644 --- a/lua/plugins/git.lua +++ b/lua/plugins/git.lua @@ -23,13 +23,12 @@ return { { 'lewis6991/gitsigns.nvim', - enabled = false, - config = function() - require('gitsigns').setup {} - end, + enabled = true, + opts = {}, }, { 'akinsho/git-conflict.nvim', + version = '^2.1.0', init = function() require('git-conflict').setup { default_mappings = false, diff --git a/lua/plugins/lsp.lua b/lua/plugins/lsp.lua index 9d07dfe..e068696 100644 --- a/lua/plugins/lsp.lua +++ b/lua/plugins/lsp.lua @@ -1,9 +1,7 @@ return { - { - - -- for lsp features in code cells / embedded code + { -- for lsp features in code cells / embedded code 'jmbuhr/otter.nvim', dev = true, dependencies = { @@ -13,10 +11,11 @@ return { }, }, opts = { - verbose = { - no_code_found = false, + buffers = { + -- set_filetype = true, + -- write_to_disk = true } - }, + } }, { @@ -104,10 +103,10 @@ return { debounce_text_changes = 150, } - local capabilities = vim.lsp.protocol.make_client_capabilities() + -- local capabilities = vim.lsp.protocol.make_client_capabilities() -- capabilities = vim.tbl_deep_extend('force', capabilities, require('cmp_nvim_lsp').default_capabilities()) -- capabilities.textDocument.completion.completionItem.snippetSupport = true - capabilities = require('blink.cmp').get_lsp_capabilities(capabilities) + local capabilities = require('blink.cmp').get_lsp_capabilities({}, true) -- also needs: -- $home/.config/marksman/config.toml : @@ -136,15 +135,15 @@ return { flags = lsp_flags, } - lspconfig.html.setup { - capabilities = capabilities, - flags = lsp_flags, - } + -- lspconfig.html.setup { + -- capabilities = capabilities, + -- flags = lsp_flags, + -- } - lspconfig.emmet_language_server.setup { - capabilities = capabilities, - flags = lsp_flags, - } + -- lspconfig.emmet_language_server.setup { + -- capabilities = capabilities, + -- flags = lsp_flags, + -- } lspconfig.svelte.setup { capabilities = capabilities, @@ -275,6 +274,11 @@ return { flags = lsp_flags, } + -- lspconfig.ruff.setup { + -- capabilities = capabilities, + -- flags = lsp_flags, + -- } + -- lspconfig.ruff_lsp.setup { -- capabilities = capabilities, -- flags = lsp_flags, @@ -306,6 +310,7 @@ return { return util.root_pattern('.git', 'setup.py', 'setup.cfg', 'pyproject.toml', 'requirements.txt')(fname) or util.path.dirname(fname) end, } + end, }, } diff --git a/lua/plugins/quarto.lua b/lua/plugins/quarto.lua index d3d2124..e69c8fb 100644 --- a/lua/plugins/quarto.lua +++ b/lua/plugins/quarto.lua @@ -3,7 +3,6 @@ return { { -- requires plugins in lua/plugins/treesitter.lua and lua/plugins/lsp.lua -- for complete functionality (language features) 'quarto-dev/quarto-nvim', - ft = { 'quarto' }, dev = true, opts = { codeRunner = { diff --git a/lua/plugins/ui.lua b/lua/plugins/ui.lua index 1e55528..c276cfa 100644 --- a/lua/plugins/ui.lua +++ b/lua/plugins/ui.lua @@ -1,5 +1,27 @@ return { + ---@module "neominimap.config.meta" + { + "Isrothy/neominimap.nvim", + version = "v3.*.*", + enabled = true, + dependencies = { + 'lewis6991/gitsigns.nvim', + }, + -- Optional + init = function() + -- The following options are recommended when layout == "float" + vim.opt.wrap = false + vim.opt.sidescrolloff = 36 -- Set a large value + + --- Put your configuration here + ---@type Neominimap.UserConfig + vim.g.neominimap = { + auto_enable = true, + } + end, + }, + { -- nice quickfix list 'stevearc/quicker.nvim', event = "FileType qf", @@ -23,7 +45,7 @@ return { { 'jmbuhr/telescope-zotero.nvim', enabled = true, - dev = false, + dev = true, dependencies = { { 'kkharji/sqlite.lua' }, }, @@ -61,6 +83,12 @@ return { table.insert(vimgrep_arguments, '--glob') table.insert(vimgrep_arguments, '!_site/*') + table.insert(vimgrep_arguments, '--glob') + table.insert(vimgrep_arguments, '!_reference/*') + + table.insert(vimgrep_arguments, '--glob') + table.insert(vimgrep_arguments, '!_inv/*') + table.insert(vimgrep_arguments, '--glob') table.insert(vimgrep_arguments, '!*_files/libs/*') @@ -110,7 +138,7 @@ return { 'rg', '--files', '--hidden', - '--no-ignore', + -- '--no-ignore', '--glob', '!.git/*', '--glob', @@ -302,9 +330,6 @@ return { { -- or show symbols in the current file as breadcrumbs 'Bekaboo/dropbar.nvim', - enabled = function() - return vim.fn.has 'nvim-0.10' == 1 - end, dependencies = { 'nvim-telescope/telescope-fzf-native.nvim', },