chore: update inputs
This commit is contained in:
parent
9e2c4205d9
commit
6bcccc1ff9
7 changed files with 334 additions and 342 deletions
|
|
@ -42,7 +42,6 @@ in
|
|||
nixpkgs-fmt
|
||||
nodePackages.bash-language-server
|
||||
python3Packages.python-lsp-server
|
||||
python3Packages.ruff-lsp
|
||||
shellcheck
|
||||
shfmt
|
||||
stable.yamlfix
|
||||
|
|
|
|||
|
|
@ -1,15 +1,13 @@
|
|||
require("gitsigns").setup()
|
||||
require("which-key").register({
|
||||
["[h"] = { "<cmd>Gitsigns prev_hunk<cr>", "Previous hunk" },
|
||||
["]h"] = { "<cmd>Gitsigns next_hunk<cr>", "Next hunk" },
|
||||
["<leader>g"] = {
|
||||
s = { "<cmd>Gitsigns stage_hunk<cr>", "Stage hunk", mode = { "n", "v" } },
|
||||
r = { "<cmd>Gitsigns reset_hunk<cr>", "Reset hunk", mode = { "n", "v" } },
|
||||
S = { "<cmd>Gitsigns stage_buffer<cr>", "Stage buffer" },
|
||||
R = { "<cmd>Gitsigns reset_buffer<cr>", "Reset buffer" },
|
||||
u = { "<cmd>Gitsigns undo_stage_hunk<cr>", "Undo stage hunk" },
|
||||
p = { "<cmd>Gitsigns preview_hunk_inline<cr>", "Preview hunk (inline)" },
|
||||
P = { "<cmd>Gitsigns preview_hunk<cr>", "Preview hunk (float)" },
|
||||
},
|
||||
["ih"] = { ":<C-U>Gitsigns select_hunk<cr>", "gitsigns hunk", mode = { "o", "x" } },
|
||||
require("which-key").add({
|
||||
{ "<leader>gP", "<cmd>Gitsigns preview_hunk<cr>", desc = "Preview hunk (float)" },
|
||||
{ "<leader>gR", "<cmd>Gitsigns reset_buffer<cr>", desc = "Reset buffer" },
|
||||
{ "<leader>gS", "<cmd>Gitsigns stage_buffer<cr>", desc = "Stage buffer" },
|
||||
{ "<leader>gp", "<cmd>Gitsigns preview_hunk_inline<cr>", desc = "Preview hunk (inline)" },
|
||||
{ "<leader>gu", "<cmd>Gitsigns undo_stage_hunk<cr>", desc = "Undo stage hunk" },
|
||||
{ "[h", "<cmd>Gitsigns prev_hunk<cr>", desc = "Previous hunk" },
|
||||
{ "]h", "<cmd>Gitsigns next_hunk<cr>", desc = "Next hunk" },
|
||||
{ "<leader>gr", "<cmd>Gitsigns reset_hunk<cr>", desc = "Reset hunk", mode = { "n", "v" } },
|
||||
{ "<leader>gs", "<cmd>Gitsigns stage_hunk<cr>", desc = "Stage hunk", mode = { "n", "v" } },
|
||||
{ "ih", ":<C-U>Gitsigns select_hunk<cr>", desc = "gitsigns hunk", mode = { "o", "x" } },
|
||||
})
|
||||
|
|
|
|||
|
|
@ -21,76 +21,80 @@ capabilities.didChangeWatchedFiles = {
|
|||
|
||||
local lspconfig = require("lspconfig")
|
||||
local on_attach_def = function(client, bufnr)
|
||||
require("which-key").register({
|
||||
K = {
|
||||
vim.lsp.buf.hover,
|
||||
"Hover",
|
||||
require("which-key").add({
|
||||
{ "<leader>c", buffer = bufnr, group = "code" },
|
||||
{
|
||||
"<leader>cr",
|
||||
function()
|
||||
return ":IncRename " .. vim.fn.expand("<cword>")
|
||||
end,
|
||||
buffer = bufnr,
|
||||
desc = "Rename",
|
||||
expr = true,
|
||||
replace_keycodes = false,
|
||||
},
|
||||
["<leader>"] = {
|
||||
c = {
|
||||
name = "code",
|
||||
c = { require("actions-preview").code_actions, "Code action", mode = { "v", "n" } },
|
||||
r = {
|
||||
function()
|
||||
return ":IncRename " .. vim.fn.expand("<cword>")
|
||||
end,
|
||||
"Rename",
|
||||
expr = true,
|
||||
},
|
||||
f = {
|
||||
function()
|
||||
vim.lsp.buf.format({ async = true })
|
||||
end,
|
||||
"Format (lsp)",
|
||||
mode = { "n", "v" },
|
||||
},
|
||||
},
|
||||
t = {
|
||||
l = {
|
||||
function()
|
||||
lsp_lines.toggle()
|
||||
if vim.diagnostic.is_disabled() then
|
||||
vim.diagnostic.enable()
|
||||
else
|
||||
vim.diagnostic.disable()
|
||||
end
|
||||
end,
|
||||
"LSP lines",
|
||||
},
|
||||
i = {
|
||||
function()
|
||||
vim.lsp.inlay_hint.enable(not vim.lsp.inlay_hint.is_enabled())
|
||||
end,
|
||||
"LSP inlay hints",
|
||||
},
|
||||
},
|
||||
{
|
||||
"<leader>ti",
|
||||
function()
|
||||
vim.lsp.inlay_hint.enable(not vim.lsp.inlay_hint.is_enabled())
|
||||
end,
|
||||
buffer = bufnr,
|
||||
desc = "LSP inlay hints",
|
||||
},
|
||||
g = {
|
||||
d = {
|
||||
function()
|
||||
require("telescope.builtin").lsp_definitions({ reuse_win = true })
|
||||
end,
|
||||
"Goto definition",
|
||||
},
|
||||
t = {
|
||||
function()
|
||||
require("telescope.builtin").lsp_type_definitions({ reuse_win = true })
|
||||
end,
|
||||
"Goto type definition",
|
||||
},
|
||||
r = { "<cmd>Telescope lsp_references<cr>", "Goto references" },
|
||||
D = { vim.lsp.buf.declaration, "Goto declaration" },
|
||||
I = { "<cmd>Telescope lsp_implementations<cr>", "Goto implementation" },
|
||||
K = { vim.lsp.buf.signature_help, "Signature help" },
|
||||
{
|
||||
"<leader>tl",
|
||||
function()
|
||||
lsp_lines.toggle()
|
||||
if vim.diagnostic.is_disabled() then
|
||||
vim.diagnostic.enable()
|
||||
else
|
||||
vim.diagnostic.disable()
|
||||
end
|
||||
end,
|
||||
buffer = bufnr,
|
||||
desc = "LSP lines",
|
||||
},
|
||||
["["] = {
|
||||
d = { vim.diagnostic.goto_prev, "Previous diagnostic" },
|
||||
{ "K", vim.lsp.buf.hover, buffer = bufnr, desc = "Hover" },
|
||||
{ "[d", vim.diagnostic.goto_prev, buffer = bufnr, desc = "Previous diagnostic" },
|
||||
{ "]d", vim.diagnostic.goto_next, buffer = bufnr, desc = "Next diagnostic" },
|
||||
{ "gD", vim.lsp.buf.declaration, buffer = bufnr, desc = "Goto declaration" },
|
||||
{ "gI", "<cmd>Telescope lsp_implementations<cr>", buffer = bufnr, desc = "Goto implementation" },
|
||||
{ "gK", vim.lsp.buf.signature_help, buffer = bufnr, desc = "Signature help" },
|
||||
{
|
||||
"gd",
|
||||
function()
|
||||
require("telescope.builtin").lsp_definitions({ reuse_win = true })
|
||||
end,
|
||||
buffer = bufnr,
|
||||
desc = "Goto definition",
|
||||
},
|
||||
["]"] = {
|
||||
d = { vim.diagnostic.goto_next, "Next diagnostic" },
|
||||
},
|
||||
}, { buffer = bufnr, silent = true })
|
||||
{ "gr", "<cmd>Telescope lsp_references<cr>", buffer = bufnr, desc = "Goto references" },
|
||||
{
|
||||
"gt",
|
||||
|
||||
function()
|
||||
require("telescope.builtin").lsp_type_definitions({ reuse_win = true })
|
||||
end,
|
||||
buffer = bufnr,
|
||||
desc = "Goto type definition",
|
||||
},
|
||||
{
|
||||
"<leader>cc",
|
||||
require("actions-preview").code_actions,
|
||||
buffer = bufnr,
|
||||
desc = "Code action",
|
||||
mode = { "n", "v" },
|
||||
},
|
||||
{
|
||||
"<leader>cf",
|
||||
function()
|
||||
vim.lsp.buf.format({ async = true })
|
||||
end,
|
||||
buffer = bufnr,
|
||||
desc = "Format (lsp)",
|
||||
mode = { "n", "v" },
|
||||
},
|
||||
})
|
||||
if client.server_capabilities.inlayHintProvider then
|
||||
local slow_lsp_servers = {
|
||||
"rust_analyzer",
|
||||
|
|
@ -125,7 +129,7 @@ local servers = {
|
|||
"gopls",
|
||||
"nil_ls",
|
||||
"pylsp",
|
||||
"ruff_lsp",
|
||||
"ruff",
|
||||
"templ",
|
||||
"typst_lsp",
|
||||
}
|
||||
|
|
|
|||
|
|
@ -2,60 +2,50 @@ vim.o.timeout = true
|
|||
vim.o.timeoutlen = 500
|
||||
|
||||
-- Delete
|
||||
require("which-key").register({
|
||||
d = {
|
||||
name = "delete",
|
||||
b = { "<cmd>bd<cr>", "Delete buffer" },
|
||||
w = { "<C-w>c", "Delete window" },
|
||||
},
|
||||
}, { prefix = "<leader>" })
|
||||
require("which-key").add({
|
||||
{ "<leader>d", group = "delete" },
|
||||
{ "<leader>db", "<cmd>bd<cr>", desc = "Delete buffer" },
|
||||
{ "<leader>dw", "<C-w>c", desc = "Delete window" },
|
||||
})
|
||||
|
||||
-- buffer
|
||||
require("which-key").register({
|
||||
["["] = {
|
||||
b = { "<cmd>bprevious<cr>", "Previous buffer" },
|
||||
},
|
||||
["]"] = {
|
||||
b = { "<cmd>bnext<cr>", "Next buffer" },
|
||||
},
|
||||
require("which-key").add({
|
||||
{ "[b", "<cmd>bprevious<cr>", desc = "Previous buffer" },
|
||||
{ "]b", "<cmd>bnext<cr>", desc = "Next buffer" },
|
||||
})
|
||||
|
||||
-- window
|
||||
require("which-key").register({
|
||||
w = {
|
||||
name = "window",
|
||||
["|"] = { "<C-w>v", "Split window horizontally" },
|
||||
["-"] = { "<C-w>s", "Split window vertically" },
|
||||
w = { "<C-w>w", "Switch window" },
|
||||
},
|
||||
}, { prefix = "<leader>" })
|
||||
require("which-key").add({
|
||||
{ "<leader>w", group = "window" },
|
||||
{ "<leader>w-", "<C-w>s", desc = "Split window vertically" },
|
||||
{ "<leader>ww", "<C-w>w", desc = "Switch window" },
|
||||
{ "<leader>w|", "<C-w>v", desc = "Split window horizontally" },
|
||||
})
|
||||
|
||||
-- better descriptions for navigation
|
||||
require("which-key").register({
|
||||
["<leader>"] = {
|
||||
f = { name = "file/find" },
|
||||
g = { name = "git" },
|
||||
c = { name = "code" },
|
||||
s = { name = "search" },
|
||||
t = { name = "toggle" },
|
||||
},
|
||||
["["] = { name = "prev" },
|
||||
["]"] = { name = "next" },
|
||||
g = { name = "goto" },
|
||||
require("which-key").add({
|
||||
{ "<leader>c", group = "code" },
|
||||
{ "<leader>f", group = "file/find" },
|
||||
{ "<leader>g", group = "git" },
|
||||
{ "<leader>s", group = "search" },
|
||||
{ "<leader>t", group = "toggle" },
|
||||
{ "[", group = "prev" },
|
||||
{ "]", group = "next" },
|
||||
{ "g", group = "goto" },
|
||||
})
|
||||
|
||||
-- Clear search with <esc>
|
||||
require("which-key").register({
|
||||
["<esc>"] = { "<cmd>noh<cr><esc>", "Escape and clear hlsearch", mode = { "n", "i" } },
|
||||
require("which-key").add({
|
||||
{ "<esc>", "<cmd>noh<cr><esc>", desc = "Escape and clear hlsearch", mode = { "i", "n" } },
|
||||
})
|
||||
|
||||
-- better indenting
|
||||
require("which-key").register({
|
||||
["<"] = { "<gv", "Shift left" },
|
||||
[">"] = { ">gv", "Shift right" },
|
||||
}, { mode = "v" })
|
||||
require("which-key").add({
|
||||
{ "<", "<gv", desc = "Shift left", mode = "v" },
|
||||
{ ">", ">gv", desc = "Shift right", mode = "v" },
|
||||
})
|
||||
|
||||
-- better yank in visual mode
|
||||
require("which-key").register({
|
||||
y = { "ygv<esc>", "Yank" },
|
||||
}, { mode = "v" })
|
||||
require("which-key").add({
|
||||
{ "y", "ygv<esc>", desc = "Yank", mode = "v" },
|
||||
})
|
||||
|
|
|
|||
|
|
@ -1,16 +1,17 @@
|
|||
{ pkgs, ... }:
|
||||
{ pkgs, inputs, lib, ... }:
|
||||
|
||||
{
|
||||
config.home-manager.users.moritz.programs.neovim.lazy.plugins = [
|
||||
(
|
||||
let
|
||||
nvim-treesitter = pkgs.vimPlugins.nvim-treesitter;
|
||||
parserDir = pkgs.symlinkJoin {
|
||||
name = "tresitter-grammars-all";
|
||||
paths = pkgs.vimPlugins.nvim-treesitter.withAllGrammars.dependencies;
|
||||
paths = nvim-treesitter.withAllGrammars.dependencies;
|
||||
};
|
||||
in
|
||||
{
|
||||
plugin = pkgs.vimPlugins.nvim-treesitter;
|
||||
plugin = nvim-treesitter;
|
||||
event = [ "BufReadPost" "BufNewFile" ];
|
||||
opts = {
|
||||
sync_install = false;
|
||||
|
|
@ -51,12 +52,10 @@
|
|||
};
|
||||
};
|
||||
conf =
|
||||
''
|
||||
local final_opts = vim.tbl_deep_extend("keep", opts, { parser_install_dir = "${parserDir}" })
|
||||
require('nvim-treesitter.configs').setup(final_opts)
|
||||
'';
|
||||
init = ''
|
||||
vim.opt.runtimepath:prepend("${parserDir}")
|
||||
/* lua */ ''
|
||||
vim.opt.runtimepath:append("${parserDir}")
|
||||
local final_opts = vim.tbl_deep_extend("keep", opts, { parser_install_dir = "${parserDir}" })
|
||||
require('nvim-treesitter.configs').setup(final_opts)
|
||||
'';
|
||||
priority = 100;
|
||||
dependencies = [
|
||||
|
|
|
|||
|
|
@ -32,7 +32,7 @@ in
|
|||
dependencies = [{ plugin = pkgs.vimPlugins.which-key-nvim; }];
|
||||
}
|
||||
{
|
||||
plugin = pkgs.vimPlugins.pkgs.vimUtils.buildVimPlugin {
|
||||
plugin = pkgs.vimUtils.buildVimPlugin {
|
||||
pname = "hawtkeys-nvim";
|
||||
version = lib.my.mkVersionInput inputs.hawtkeys-nvim;
|
||||
src = inputs.hawtkeys-nvim;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue