nvim improvements

This commit is contained in:
jdonszelmann 2024-09-02 09:29:56 +02:00
parent a94e2ae578
commit e767060559
No known key found for this signature in database
GPG key ID: E0C1EA36407B2FF2
7 changed files with 181 additions and 42 deletions

View file

@ -19,7 +19,10 @@ vim.filetype.add({
require("onedark").setup {
style = "deep",
highlights = {
["@comment"] = {fg = '#77B767'}
["@lsp.type.comment"] = {fg = '#77B767'},
["@comment.documentation.rust"] = {fg = '#77B767'},
["@comment.documentation"] = {fg = '#77B767'},
["@comment"] = {fg = '#426639'}
}
}
require("onedark").load()
@ -68,10 +71,14 @@ local opts = { noremap = true, silent = true }
local builtin = require('telescope.builtin')
-- comment
vim.keymap.set("n", "<C-/>", ":lua require('Comment.api').toggle.linewise.current()<CR> j", opts)
vim.keymap.set("v", "<C-/>", ":lua require('Comment.api').toggle.linewise.current()<CR> j", opts)
vim.keymap.set("n", "<leader>c", ":lua require('Comment.api').toggle.linewise.current()<CR> j", { remap = true })
vim.keymap.set("v", "<leader>c", ":lua require('Comment.api').toggle.linewise.current()<CR> j", { remap = true })
-- indent and dedent using tab/shift-tab
vim.keymap.set("n", "<C-/>", ":lua require('Comment.api').toggle.linewise.current()<CR> j", { remap = true })
vim.keymap.set("v", "<C-/>", ":lua require('Comment.api').toggle.linewise.current()<CR> j", { remap = true })
-- indent and dedent using tab/shift-ta
vim.keymap.set("n", "<tab>", ">>_")
vim.keymap.set("n", "<s-tab>", "<<_")
vim.keymap.set("i", "<s-tab>", "<c-d>")
@ -85,7 +92,7 @@ vim.keymap.set('n', 'gt', builtin.lsp_type_definitions, {})
-- format on wq and x and replace X, W and Q with x, w and q
vim.cmd [[cabbrev wq execute "Format sync" <bar> wq]]
vim.cmd [[cabbrev x execute "Format sync" <bar> x]# ]]
vim.cmd [[cabbrev x execute "Format sync" <bar> x]]
vim.cmd [[cnoreabbrev W w]]
vim.cmd [[cnoreabbrev X execute "Format sync" <bar> x]]
vim.cmd [[cnoreabbrev Q q]]
@ -94,14 +101,21 @@ vim.cmd [[nnoremap ; :]]
local builtin = require('telescope.builtin')
vim.keymap.set('n', '<leader>s', "<cmd>vertical sb<cr>", {})
vim.keymap.set('n', '<leader>f', builtin.find_files, {})
vim.keymap.set('n', '<leader><leader>', builtin.live_grep, {})
vim.keymap.set('n', '<leader><leader>', builtin.find_files, {})
vim.keymap.set('n', '<leader>f', builtin.live_grep, {})
vim.keymap.set('n', '<leader>h', builtin.search_history, {})
vim.keymap.set('n', '<leader>d', "<cmd>Telescope diagnostics bufnr=0<cr>", {})
vim.keymap.set('n', '<leader>ad', builtin.diagnostics, {})
vim.keymap.set('n', '<leader>em', "<cmd>RustLsp expandMacro<cr>")
vim.keymap.set("n", "]d", vim.diagnostic.goto_next)
vim.keymap.set("n", "[d", vim.diagnostic.goto_prev)
vim.keymap.set("n", "<leader>x", require("telescope.builtin").resume, {
noremap = true,
silent = true,
desc = "Resume",
})
local gitsigns = require('gitsigns')
vim.keymap.set('n', '<leader>gr', gitsigns.reset_hunk)
vim.keymap.set('n', '<leader>gd', gitsigns.diffthis)
@ -221,3 +235,10 @@ vim.cmd([[
filetype plugin indent on
]])
-- multicursor
vim.g.VM_default_mappings = 1
vim.g.VM_reselect_first = 1
vim.g.VM_notify_previously_selected = 1
vim.g.VM_theme = "iceblue"

View file

@ -62,6 +62,7 @@ in
nixGrammars = true;
ensureInstalled = "all";
};
rainbow-delimiters.enable = true;
surround.enable = true;
cmp-nvim-lsp.enable = true;
lsp-format.enable = true;
@ -240,7 +241,6 @@ in
};
};
lsp = {
enable = true;
@ -260,6 +260,7 @@ in
};
};
};
clangd = {
enable = true;
filetypes = [ "c" "cpp" "objc" "objcpp" ];
@ -281,10 +282,10 @@ in
enable = true;
filetypes = [ "python" ];
};
taplo = {
enable = true;
filetypes = [ "toml" ];
};
# taplo = {
# enable = true;
# filetypes = [ "toml" ];
# };
bashls = {
enable = true;
@ -306,8 +307,8 @@ in
keymaps = {
lspBuf = {
"<leader>fmt" = "format";
"<leader>h" = "hover";
"<leader>;" = "format";
"gh" = "hover";
};
};
};
@ -338,6 +339,20 @@ in
enable = true;
diagnostics = "nvim_lsp";
};
none-ls = {
enable = true;
sources = {
formatting.nixpkgs_fmt.enable = true;
code_actions.statix.enable = true;
diagnostics = {
statix.enable = true;
deadnix.enable = true;
};
};
};
nix.enable = true;
};
extraPlugins = with pkgs.vimPlugins; [
onedark-nvim
@ -352,13 +367,14 @@ in
render-markdown
otter
vim-astro
nvim-web-devicons
nvim-web-devicons
vim-visual-multi
];
extraConfigLua = ''
require("render-markdown").setup {
latex_converter = '${pkgs.python312Packages.pylatexenc}/bin/latex2text',
}
require("render-markdown").setup {
latex_converter = '${pkgs.python312Packages.pylatexenc}/bin/latex2text',
}
'' + (builtins.readFile ./config.lua);
opts = {