Compare commits

...

4 commits

Author SHA1 Message Date
github-actions[bot]
bd21447db6 chore: update flake.lock
Flake lock file updates:

• Updated input 'jj-nvim':
    'github:NicolasGB/jj.nvim/3d78c28f7e26d5c87f53e66e05a1393e6ca9fec2?narHash=sha256-G7ksxOJJmQeTbsdAYddSFWUs9kyW/nIL4mv0F3FiXAI%3D' (2026-02-13)
  → 'github:NicolasGB/jj.nvim/bbba4051c862473637e98277f284d12b050588ca?narHash=sha256-nokftWcAmmHX6UcH6O79xkLwbUpq1W8N9lf1e%2BNyGqE%3D' (2026-02-24)
• Updated input 'neovim-nightly-overlay':
    'github:nix-community/neovim-nightly-overlay/c3e52f66f877cddce4167041546524abb76c0a70?narHash=sha256-2UQHZ8BsRSwtzl2R1OqtYR80SQF%2BHG3kJdTxfiDZR9s%3D' (2026-02-16)
  → 'github:nix-community/neovim-nightly-overlay/744c005b53bd588a82b3662f82c791eecf4710ad?narHash=sha256-aWy20stlI6cl%2BUM1Ds8j4NSEfWTCp/VWW%2BSqQy%2BDOM8%3D' (2026-03-01)
• Updated input 'neovim-nightly-overlay/neovim-src':
    'github:neovim/neovim/7d8653575f2a1170f0c7651f271c45a15a185d5e?narHash=sha256-WB0xr61z2nHB3/u42xYilqDCA/x3tvVZ21/bx2pNmgc%3D' (2026-02-15)
  → 'github:neovim/neovim/8a79e3398a347248f067abe0c09097416fbf9cae?narHash=sha256-Bp%2BpAkfjSdUWV/giJFT9Gbp0wecQ%2BH4Kbh4%2BXfyOj5s%3D' (2026-02-28)
• Updated input 'nixpkgs':
    'github:NixOS/nixpkgs/56a06a9163181e6c7c0f9ec08fd4a6df2e5f76b4?narHash=sha256-ZucQ5EZ2AWIx0tsUEbM1pZWR2pm8q0SbIsbe3BSNjz0%3D' (2026-02-16)
  → 'github:NixOS/nixpkgs/96b187c6984f705ef930fa6d575f7e7f5dafddff?narHash=sha256-QYgww8vJTSl9SWxYP9ivFDP0WEwy1LsWieiJaaa2OXA%3D' (2026-03-01)
2026-03-01 10:23:51 +00:00
e5a176d5b7 improve blink.cmp perf in large directories
Some checks failed
build / build (nvim-min) (push) Failing after 3h0m1s
2026-02-23 22:51:32 -06:00
e9d4373ddc update difftool name
Some checks failed
build / build (nvim-min) (push) Failing after 36m59s
2026-02-15 23:36:13 -06:00
7000c3a405 diffedit inline 2026-02-15 23:12:26 -06:00
6 changed files with 52 additions and 46 deletions

36
flake.lock generated
View file

@ -6,11 +6,11 @@
"nixpkgs": "nixpkgs" "nixpkgs": "nixpkgs"
}, },
"locked": { "locked": {
"lastModified": 1765140120, "lastModified": 1771048667,
"narHash": "sha256-lLY34wnbyzi21zE8i+VM0AoEt67r4aPn/EoaZ8o4NgU=", "narHash": "sha256-o1UvUGjq3kiiyv/jrVxIEsl3y3wFnBvgSJpyjXTOsMw=",
"owner": "iofq", "owner": "iofq",
"repo": "dart.nvim", "repo": "dart.nvim",
"rev": "205f809fbb27d56aff22756a97b5ba6f0c7243c3", "rev": "af7256291c8f692647004b9a9fc0e92b6084a691",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -61,11 +61,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1767609335, "lastModified": 1769996383,
"narHash": "sha256-feveD98mQpptwrAEggBQKJTYbvwwglSbOv53uCfH9PY=", "narHash": "sha256-AnYjnFWgS49RlqX7LrC4uA+sCCDBj0Ry/WOJ5XWAsa0=",
"owner": "hercules-ci", "owner": "hercules-ci",
"repo": "flake-parts", "repo": "flake-parts",
"rev": "250481aafeb741edfe23d29195671c19b36b6dca", "rev": "57928607ea566b5db3ad13af0e57e921e6b12381",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -181,11 +181,11 @@
"jj-nvim": { "jj-nvim": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1768169857, "lastModified": 1771953539,
"narHash": "sha256-8POSGuNYdAR2peyzN92vWR87GqWf+Y6I1arOwNxwd6U=", "narHash": "sha256-nokftWcAmmHX6UcH6O79xkLwbUpq1W8N9lf1e+NyGqE=",
"owner": "NicolasGB", "owner": "NicolasGB",
"repo": "jj.nvim", "repo": "jj.nvim",
"rev": "d13a5c9aec08318323f19fcdc1a1d2c469e00739", "rev": "bbba4051c862473637e98277f284d12b050588ca",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -219,11 +219,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1768003501, "lastModified": 1772323514,
"narHash": "sha256-pxxUR3VRDcDpMgF1qb9FnlHAEOGi24bk6pdB1QzL1II=", "narHash": "sha256-aWy20stlI6cl+UM1Ds8j4NSEfWTCp/VWW+SqQy+DOM8=",
"owner": "nix-community", "owner": "nix-community",
"repo": "neovim-nightly-overlay", "repo": "neovim-nightly-overlay",
"rev": "d31b28318affe5d58ef12e7f72a7adfa66930a7a", "rev": "744c005b53bd588a82b3662f82c791eecf4710ad",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -235,11 +235,11 @@
"neovim-src": { "neovim-src": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1768000044, "lastModified": 1772319592,
"narHash": "sha256-hcdQHR8l8oZDIl0vXKNtbrN+32dTs9EYvlqppoHgG2k=", "narHash": "sha256-Bp+pAkfjSdUWV/giJFT9Gbp0wecQ+H4Kbh4+XfyOj5s=",
"owner": "neovim", "owner": "neovim",
"repo": "neovim", "repo": "neovim",
"rev": "930817f1009d9d392103b5440e2503cb47fdacc0", "rev": "8a79e3398a347248f067abe0c09097416fbf9cae",
"type": "github" "type": "github"
}, },
"original": { "original": {
@ -293,11 +293,11 @@
}, },
"nixpkgs_2": { "nixpkgs_2": {
"locked": { "locked": {
"lastModified": 1768020509, "lastModified": 1772360274,
"narHash": "sha256-V7El1ktdJ0/WWEr6wGBKFYu433vitrWvxmvPk79FsSc=", "narHash": "sha256-QYgww8vJTSl9SWxYP9ivFDP0WEwy1LsWieiJaaa2OXA=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "299d331f770cdf7c466a4faa08b3070a767d681d", "rev": "96b187c6984f705ef930fa6d575f7e7f5dafddff",
"type": "github" "type": "github"
}, },
"original": { "original": {

View file

@ -1,5 +1,4 @@
-- Made with 'mini.colors' module of https://github.com/echasnovski/mini.nvim -- Made with 'mini.colors' module of https://github.com/echasnovski/mini.nvim
if vim.g.colors_name ~= nil then if vim.g.colors_name ~= nil then
vim.cmd('highlight clear') vim.cmd('highlight clear')
end end
@ -188,10 +187,10 @@ hi(0, 'DiagnosticVirtualTextInfo', { bg = '#1f353c', fg = '#5a93aa' })
hi(0, 'DiagnosticVirtualTextOk', { bg = '#24383a', fg = '#7aa4a1' }) hi(0, 'DiagnosticVirtualTextOk', { bg = '#24383a', fg = '#7aa4a1' })
hi(0, 'DiagnosticVirtualTextWarn', { bg = '#383835', fg = '#fda47f' }) hi(0, 'DiagnosticVirtualTextWarn', { bg = '#383835', fg = '#fda47f' })
hi(0, 'DiagnosticWarn', { fg = '#fda47f' }) hi(0, 'DiagnosticWarn', { fg = '#fda47f' })
hi(0, 'DiffAdd', { bg = '#24383a', fg = '#7aa4a1' }) hi(0, 'DiffAdd', { bg = '#002800' })
hi(0, 'DiffChange', { bg = '#31474b', fg = '#73daca' }) hi(0, 'DiffChange', { bg = '#284b55' })
hi(0, 'DiffDelete', { bg = '#31474b', fg = '#e85c51' }) hi(0, 'DiffDelete', { bg = '#300000' })
hi(0, 'DiffText', { bg = '#466066' }) hi(0, 'DiffText', { bg = '#366066' })
hi(0, 'Directory', { fg = '#73a3b7' }) hi(0, 'Directory', { fg = '#73a3b7' })
hi(0, 'EndOfBuffer', { fg = '#152528' }) hi(0, 'EndOfBuffer', { fg = '#152528' })
hi(0, 'Error', { fg = '#e85c51' }) hi(0, 'Error', { fg = '#e85c51' })
@ -244,8 +243,6 @@ hi(0, 'MiniClueTitle', { link = 'FloatTitle' })
hi(0, 'MiniCompletionActiveParameter', { underline = true }) hi(0, 'MiniCompletionActiveParameter', { underline = true })
hi(0, 'MiniCursorword', { link = 'LspReferenceText' }) hi(0, 'MiniCursorword', { link = 'LspReferenceText' })
hi(0, 'MiniCursorwordCurrent', { link = 'LspReferenceText' }) hi(0, 'MiniCursorwordCurrent', { link = 'LspReferenceText' })
hi(0, 'MiniDepsChangeAdded', { link = 'diffAdded' })
hi(0, 'MiniDepsChangeRemoved', { link = 'diffRemoved' })
hi(0, 'MiniDepsHint', { link = 'DiagnosticHint' }) hi(0, 'MiniDepsHint', { link = 'DiagnosticHint' })
hi(0, 'MiniDepsInfo', { link = 'DiagnosticInfo' }) hi(0, 'MiniDepsInfo', { link = 'DiagnosticInfo' })
hi(0, 'MiniDepsMsgBreaking', { link = 'DiagnosticWarn' }) hi(0, 'MiniDepsMsgBreaking', { link = 'DiagnosticWarn' })
@ -254,13 +251,13 @@ hi(0, 'MiniDepsTitle', { link = 'Title' })
hi(0, 'MiniDepsTitleError', { bg = '#e85c51', fg = '#0f1c1e' }) hi(0, 'MiniDepsTitleError', { bg = '#e85c51', fg = '#0f1c1e' })
hi(0, 'MiniDepsTitleSame', { link = 'DiffText' }) hi(0, 'MiniDepsTitleSame', { link = 'DiffText' })
hi(0, 'MiniDepsTitleUpdate', { bg = '#7aa4a1', fg = '#0f1c1e' }) hi(0, 'MiniDepsTitleUpdate', { bg = '#7aa4a1', fg = '#0f1c1e' })
hi(0, 'MiniDiffOverAdd', { link = 'diffAdded' }) hi(0, 'MiniDiffOverAdd', { link = 'DiffAdd' })
hi(0, 'MiniDiffOverChange', { link = 'diffChanged' }) hi(0, 'MiniDiffOverChange', { link = 'DiffChange' })
hi(0, 'MiniDiffOverChangeBuf', { link = 'diffChanged' }) hi(0, 'MiniDiffOverChangeBuf', { link = 'DiffChange' })
hi(0, 'MiniDiffOverContext', { link = 'diffAdded' }) hi(0, 'MiniDiffOverContext', { link = 'DiffAdd' })
hi(0, 'MiniDiffOverDelete', { link = 'diffRemoved' }) hi(0, 'MiniDiffOverDelete', { link = 'DiffDelete' })
hi(0, 'MiniDiffSignAdd', { fg = 'green', bold = true }) hi(0, 'MiniDiffSignAdd', { fg = 'green', bold = true })
hi(0, 'MiniDiffSignChange', { fg = 'green', bold = true }) hi(0, 'MiniDiffSignChange', { fg = '#284b55', bold = true })
hi(0, 'MiniDiffSignDelete', { fg = 'red', bold = true }) hi(0, 'MiniDiffSignDelete', { fg = 'red', bold = true })
hi(0, 'MiniFilesBorder', { link = 'FloatBorder' }) hi(0, 'MiniFilesBorder', { link = 'FloatBorder' })
hi(0, 'MiniFilesBorderModified', { link = 'DiagnosticFloatingWarn' }) hi(0, 'MiniFilesBorderModified', { link = 'DiagnosticFloatingWarn' })

View file

@ -1,17 +1,22 @@
local M = {} local M = {}
M.is_jj_diffedit_open = function() M.is_jj_diffedit_open = function()
local qf = vim.fn.getqflist() local entry = vim.fn.getqflist[1]
local entry = qf[1]
if not entry or not entry.user_data or not entry.user_data.diff then if not entry or not entry.user_data or not entry.user_data.diff then
for _, buf in ipairs(vim.api.nvim_list_bufs()) do -- close all /tmp buffers
if vim.fn.fnamemodify(vim.api.nvim_buf_get_name(buf), ':p'):match('/tmp/jj%-diff.*') then
vim.api.nvim_buf_delete(buf, { force = true })
end
end
return 0 return 0
else else
return 1 return 1
end end
end end
M.diffedit = function() M.diffedit = function(opts)
vim.fn.jobstart('jj diffedit --tool diffview-new') opts = opts or { args = '' }
vim.fn.jobstart('jj diffedit --tool difftool ' .. opts.args)
end end
vim.api.nvim_create_user_command('Diffedit', M.diffedit, { nargs = '*' })
return M return M

View file

@ -151,15 +151,8 @@ cmd('LspAttach', {
vim.keymap.set('n', 'gre', vim.diagnostic.setloclist, { buffer = ev.buf }) vim.keymap.set('n', 'gre', vim.diagnostic.setloclist, { buffer = ev.buf })
vim.keymap.set('n', 'grE', vim.diagnostic.setqflist, { buffer = ev.buf }) vim.keymap.set('n', 'grE', vim.diagnostic.setqflist, { buffer = ev.buf })
-- Auto-refresh code lenses
if client:supports_method('textDocument/codeLens') or client.server_capabilities.codeLensProvider then if client:supports_method('textDocument/codeLens') or client.server_capabilities.codeLensProvider then
vim.lsp.codelens.refresh { bufnr = ev.buf } vim.lsp.codelens.enable(true, { bufnr = ev.buf })
cmd({ 'InsertLeave', 'TextChanged' }, {
callback = function()
vim.lsp.codelens.refresh { bufnr = ev.buf }
end,
buffer = ev.buf,
})
end end
end, end,
}) })

View file

@ -43,6 +43,7 @@ vim.lsp.enable {
'lua_ls', 'lua_ls',
'basedpyright', 'basedpyright',
'csharp_ls', 'csharp_ls',
'ts_ls',
} }
local map = vim.keymap.set local map = vim.keymap.set

View file

@ -59,6 +59,9 @@ map('n', '<leader>fq', Snacks.picker.qflist)
vim.schedule(function() vim.schedule(function()
require('nvim-treesitter').setup() require('nvim-treesitter').setup()
require('nvim-treesitter-textobjects').setup() require('nvim-treesitter-textobjects').setup()
require('treesitter-context').setup {
max_lines = 2,
}
vim.keymap.set('n', '[c', function() vim.keymap.set('n', '[c', function()
require('treesitter-context').go_to_context(vim.v.count1) require('treesitter-context').go_to_context(vim.v.count1)
end, { silent = true }) end, { silent = true })
@ -129,12 +132,19 @@ vim.schedule(function()
default = { 'lsp', 'path', 'snippets', 'ripgrep', 'buffer' }, default = { 'lsp', 'path', 'snippets', 'ripgrep', 'buffer' },
providers = { providers = {
lsp = { fallbacks = {} }, -- include buffer even when LSP is active lsp = { fallbacks = {} }, -- include buffer even when LSP is active
path = { opts = { get_cwd = vim.fn.getcwd } }, -- use nvim pwd instead of current file pwd path = { async = true, opts = { get_cwd = vim.fn.getcwd } }, -- use nvim pwd instead of current file pwd
ripgrep = { ripgrep = {
enabled = false,
module = 'blink-ripgrep', module = 'blink-ripgrep',
name = 'rg', name = 'rg',
score_offset = -10, score_offset = -10,
async = true, async = true,
opts = {
project_root_marker = { '.git', '.jj' },
backend = {
use = 'gitgrep-or-ripgrep',
},
},
}, },
}, },
}, },