mirror of
https://github.com/iofq/nvim.nix.git
synced 2026-03-24 02:40:50 -05:00
diffedit inline
This commit is contained in:
parent
23abd72cf8
commit
7000c3a405
6 changed files with 43 additions and 45 deletions
36
flake.lock
generated
36
flake.lock
generated
|
|
@ -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": 1771004667,
|
||||||
"narHash": "sha256-8POSGuNYdAR2peyzN92vWR87GqWf+Y6I1arOwNxwd6U=",
|
"narHash": "sha256-G7ksxOJJmQeTbsdAYddSFWUs9kyW/nIL4mv0F3FiXAI=",
|
||||||
"owner": "NicolasGB",
|
"owner": "NicolasGB",
|
||||||
"repo": "jj.nvim",
|
"repo": "jj.nvim",
|
||||||
"rev": "d13a5c9aec08318323f19fcdc1a1d2c469e00739",
|
"rev": "3d78c28f7e26d5c87f53e66e05a1393e6ca9fec2",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -219,11 +219,11 @@
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1768003501,
|
"lastModified": 1771200309,
|
||||||
"narHash": "sha256-pxxUR3VRDcDpMgF1qb9FnlHAEOGi24bk6pdB1QzL1II=",
|
"narHash": "sha256-2UQHZ8BsRSwtzl2R1OqtYR80SQF+HG3kJdTxfiDZR9s=",
|
||||||
"owner": "nix-community",
|
"owner": "nix-community",
|
||||||
"repo": "neovim-nightly-overlay",
|
"repo": "neovim-nightly-overlay",
|
||||||
"rev": "d31b28318affe5d58ef12e7f72a7adfa66930a7a",
|
"rev": "c3e52f66f877cddce4167041546524abb76c0a70",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -235,11 +235,11 @@
|
||||||
"neovim-src": {
|
"neovim-src": {
|
||||||
"flake": false,
|
"flake": false,
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1768000044,
|
"lastModified": 1771195863,
|
||||||
"narHash": "sha256-hcdQHR8l8oZDIl0vXKNtbrN+32dTs9EYvlqppoHgG2k=",
|
"narHash": "sha256-WB0xr61z2nHB3/u42xYilqDCA/x3tvVZ21/bx2pNmgc=",
|
||||||
"owner": "neovim",
|
"owner": "neovim",
|
||||||
"repo": "neovim",
|
"repo": "neovim",
|
||||||
"rev": "930817f1009d9d392103b5440e2503cb47fdacc0",
|
"rev": "7d8653575f2a1170f0c7651f271c45a15a185d5e",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
@ -293,11 +293,11 @@
|
||||||
},
|
},
|
||||||
"nixpkgs_2": {
|
"nixpkgs_2": {
|
||||||
"locked": {
|
"locked": {
|
||||||
"lastModified": 1768020509,
|
"lastModified": 1771210844,
|
||||||
"narHash": "sha256-V7El1ktdJ0/WWEr6wGBKFYu433vitrWvxmvPk79FsSc=",
|
"narHash": "sha256-ZucQ5EZ2AWIx0tsUEbM1pZWR2pm8q0SbIsbe3BSNjz0=",
|
||||||
"owner": "NixOS",
|
"owner": "NixOS",
|
||||||
"repo": "nixpkgs",
|
"repo": "nixpkgs",
|
||||||
"rev": "299d331f770cdf7c466a4faa08b3070a767d681d",
|
"rev": "56a06a9163181e6c7c0f9ec08fd4a6df2e5f76b4",
|
||||||
"type": "github"
|
"type": "github"
|
||||||
},
|
},
|
||||||
"original": {
|
"original": {
|
||||||
|
|
|
||||||
|
|
@ -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' })
|
||||||
|
|
|
||||||
|
|
@ -1,17 +1,21 @@
|
||||||
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')
|
vim.fn.jobstart('jj diffedit --tool diffview-new ' .. opts.args)
|
||||||
end
|
end
|
||||||
|
|
||||||
|
vim.api.nvim_create_user_command('Diffedit', M.diffedit, { nargs = '*' })
|
||||||
return M
|
return M
|
||||||
|
|
|
||||||
|
|
@ -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,
|
||||||
})
|
})
|
||||||
|
|
|
||||||
|
|
@ -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
|
||||||
|
|
|
||||||
|
|
@ -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 })
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue