Compare commits

...

14 Commits

Author SHA1 Message Date
Akulij
4d59d38f43 add floaterm with git commit keybinding 2025-04-29 19:44:49 +03:00
Akulij
fb85e52c23 add gitsigns keymaps to manipulate hunks 2025-04-29 19:23:55 +03:00
Akulij
ed863d0813 add gitsigns plugin 2025-04-29 19:17:56 +03:00
Akulij
411b7a7349 delete gitgutter from plugins 2025-04-29 19:17:29 +03:00
Akulij
84e680840b add more keymaps for picker 2025-04-29 19:16:54 +03:00
Akulij
83df96085a create git.lua plugins 2025-04-29 19:00:52 +03:00
Akulij
073e9053b8 replace side panel explorer with floating, since it follows better my workflow 2025-04-29 14:41:18 +03:00
Akulij
4497050644 add keymap for code action 2025-04-29 14:37:19 +03:00
Akulij
60f4d27379 add rust-analyzer lsp configuration to use clippy 2025-04-28 18:28:03 +03:00
Akulij
b11c849101 replace auto pairs plugin with another
reason: this one is more comfortable to use in my usecase, for example:
1. doesn't give errors when enering snacks.explorer search field
2. places close bracket if it is not the next character (previous didn't
   place, even if its on next line)
2025-04-28 17:37:27 +03:00
Akulij
1133586171 prettify UI: add explorer and tab bar 2025-04-28 13:54:17 +03:00
Akulij
f9d2f77b13 show diagnostics on hover 2025-04-28 11:50:19 +03:00
Akulij
d6806288c5 enable more lsp servers support 2025-04-28 11:49:50 +03:00
Akulij
defd8c6f9c add auto-pairs plugin 2025-04-28 11:49:27 +03:00
5 changed files with 115 additions and 4 deletions

View File

@ -3,19 +3,21 @@
"LuaSnip": { "branch": "master", "commit": "c9b9a22904c97d0eb69ccb9bab76037838326817" }, "LuaSnip": { "branch": "master", "commit": "c9b9a22904c97d0eb69ccb9bab76037838326817" },
"avante.nvim": { "branch": "main", "commit": "4749e4ea1aff653a9e6f6e542d390e3c7560d161" }, "avante.nvim": { "branch": "main", "commit": "4749e4ea1aff653a9e6f6e542d390e3c7560d161" },
"ayu-vim": { "branch": "master", "commit": "01faacb4cb76e8cf72ad9858c581d80876260ab3" }, "ayu-vim": { "branch": "master", "commit": "01faacb4cb76e8cf72ad9858c581d80876260ab3" },
"barbar.nvim": { "branch": "master", "commit": "53b5a2f34b68875898f0531032fbf090e3952ad7" },
"calendar-vim": { "branch": "master", "commit": "2083a41e2d310f9bbbbf644517f30e901f1fb04d" }, "calendar-vim": { "branch": "master", "commit": "2083a41e2d310f9bbbbf644517f30e901f1fb04d" },
"cmp-buffer": { "branch": "main", "commit": "3022dbc9166796b644a841a02de8dd1cc1d311fa" }, "cmp-buffer": { "branch": "main", "commit": "3022dbc9166796b644a841a02de8dd1cc1d311fa" },
"cmp-cmdline": { "branch": "main", "commit": "d250c63aa13ead745e3a40f61fdd3470efde3923" }, "cmp-cmdline": { "branch": "main", "commit": "d250c63aa13ead745e3a40f61fdd3470efde3923" },
"cmp-nvim-lsp": { "branch": "main", "commit": "99290b3ec1322070bcfb9e846450a46f6efa50f0" }, "cmp-nvim-lsp": { "branch": "main", "commit": "99290b3ec1322070bcfb9e846450a46f6efa50f0" },
"cmp-path": { "branch": "main", "commit": "91ff86cd9c29299a64f968ebb45846c485725f23" }, "cmp-path": { "branch": "main", "commit": "91ff86cd9c29299a64f968ebb45846c485725f23" },
"cmp_luasnip": { "branch": "master", "commit": "98d9cb5c2c38532bd9bdb481067b20fea8f32e90" }, "cmp_luasnip": { "branch": "master", "commit": "98d9cb5c2c38532bd9bdb481067b20fea8f32e90" },
"coc.nvim": { "branch": "release", "commit": "da20bea23b6226e5859a06137b841c6853599f22" },
"comfortable-motion.vim": { "branch": "master", "commit": "e20aeafb07c6184727b29f7674530150f7ab2036" }, "comfortable-motion.vim": { "branch": "master", "commit": "e20aeafb07c6184727b29f7674530150f7ab2036" },
"copilot.lua": { "branch": "master", "commit": "d296017e588215df3f7b5796d1172f0d690fa13c" }, "copilot.lua": { "branch": "master", "commit": "d296017e588215df3f7b5796d1172f0d690fa13c" },
"diffview.nvim": { "branch": "main", "commit": "4516612fe98ff56ae0415a259ff6361a89419b0a" },
"dressing.nvim": { "branch": "master", "commit": "2d7c2db2507fa3c4956142ee607431ddb2828639" }, "dressing.nvim": { "branch": "master", "commit": "2d7c2db2507fa3c4956142ee607431ddb2828639" },
"emmet-vim": { "branch": "master", "commit": "6c511a8d7d2863066f32e25543e2bb99d505172c" }, "emmet-vim": { "branch": "master", "commit": "6c511a8d7d2863066f32e25543e2bb99d505172c" },
"fidget.nvim": { "branch": "main", "commit": "d9ba6b7bfe29b3119a610892af67602641da778e" }, "fidget.nvim": { "branch": "main", "commit": "d9ba6b7bfe29b3119a610892af67602641da778e" },
"fzf-lua": { "branch": "main", "commit": "ac6a34ea39831ec71c14f72075facf377ea9a00d" }, "fzf-lua": { "branch": "main", "commit": "ac6a34ea39831ec71c14f72075facf377ea9a00d" },
"gitsigns.nvim": { "branch": "main", "commit": "9cd665f46ab7af2e49d140d328b8e72ea1cf511b" },
"gruvbox": { "branch": "master", "commit": "f1ecde848f0cdba877acb0c740320568252cc482" }, "gruvbox": { "branch": "master", "commit": "f1ecde848f0cdba877acb0c740320568252cc482" },
"img-clip.nvim": { "branch": "main", "commit": "24c13df08e3fe66624bed5350a2a780f77f1f65b" }, "img-clip.nvim": { "branch": "main", "commit": "24c13df08e3fe66624bed5350a2a780f77f1f65b" },
"lazy.nvim": { "branch": "main", "commit": "6c3bda4aca61a13a9c63f1c1d1b16b9d3be90d7a" }, "lazy.nvim": { "branch": "main", "commit": "6c3bda4aca61a13a9c63f1c1d1b16b9d3be90d7a" },
@ -24,9 +26,11 @@
"mason.nvim": { "branch": "main", "commit": "fc98833b6da5de5a9c5b1446ac541577059555be" }, "mason.nvim": { "branch": "main", "commit": "fc98833b6da5de5a9c5b1446ac541577059555be" },
"material.vim": { "branch": "main", "commit": "cecac931e8bd9e3d2cbb7c1e24ddb98887176f68" }, "material.vim": { "branch": "main", "commit": "cecac931e8bd9e3d2cbb7c1e24ddb98887176f68" },
"mini.pick": { "branch": "main", "commit": "ef479fcfb94b8f5fdbec46d697c18ca113547f3d" }, "mini.pick": { "branch": "main", "commit": "ef479fcfb94b8f5fdbec46d697c18ca113547f3d" },
"neogit": { "branch": "master", "commit": "9bb1e73c534f767607e0a888f3de4c942825c501" },
"neotest": { "branch": "master", "commit": "dddbe8fe358b05b2b7e54fe4faab50563171a76d" }, "neotest": { "branch": "master", "commit": "dddbe8fe358b05b2b7e54fe4faab50563171a76d" },
"nerdtree": { "branch": "master", "commit": "9b465acb2745beb988eff3c1e4aa75f349738230" }, "nerdtree": { "branch": "master", "commit": "9b465acb2745beb988eff3c1e4aa75f349738230" },
"nui.nvim": { "branch": "main", "commit": "8d3bce9764e627b62b07424e0df77f680d47ffdb" }, "nui.nvim": { "branch": "main", "commit": "8d3bce9764e627b62b07424e0df77f680d47ffdb" },
"nvim-autopairs": { "branch": "master", "commit": "4d74e75913832866aa7de35e4202463ddf6efd1b" },
"nvim-cmp": { "branch": "main", "commit": "1e1900b0769324a9675ef85b38f99cca29e203b3" }, "nvim-cmp": { "branch": "main", "commit": "1e1900b0769324a9675ef85b38f99cca29e203b3" },
"nvim-lspconfig": { "branch": "master", "commit": "fb733ac734249ccf293e5c8018981d4d8f59fa8f" }, "nvim-lspconfig": { "branch": "master", "commit": "fb733ac734249ccf293e5c8018981d4d8f59fa8f" },
"nvim-luadev": { "branch": "master", "commit": "3ba0c02c378503739f1fdb95cff3ea2aad48db3e" }, "nvim-luadev": { "branch": "master", "commit": "3ba0c02c378503739f1fdb95cff3ea2aad48db3e" },
@ -37,6 +41,7 @@
"plenary.nvim": { "branch": "master", "commit": "857c5ac632080dba10aae49dba902ce3abf91b35" }, "plenary.nvim": { "branch": "master", "commit": "857c5ac632080dba10aae49dba902ce3abf91b35" },
"pycodestyle.nvim": { "branch": "master", "commit": "203ff9ffdc832dd125efa94dacf7ce898bbce100" }, "pycodestyle.nvim": { "branch": "master", "commit": "203ff9ffdc832dd125efa94dacf7ce898bbce100" },
"render-markdown.nvim": { "branch": "main", "commit": "d6aaa19913415c653fa38aead4d9867628394510" }, "render-markdown.nvim": { "branch": "main", "commit": "d6aaa19913415c653fa38aead4d9867628394510" },
"snacks.nvim": { "branch": "main", "commit": "bc0630e43be5699bb94dadc302c0d21615421d93" },
"tagbar": { "branch": "master", "commit": "8de7694c0aeda253073098bbc9fb890b2902ddb8" }, "tagbar": { "branch": "master", "commit": "8de7694c0aeda253073098bbc9fb890b2902ddb8" },
"telescope.nvim": { "branch": "master", "commit": "a4ed82509cecc56df1c7138920a1aeaf246c0ac5" }, "telescope.nvim": { "branch": "master", "commit": "a4ed82509cecc56df1c7138920a1aeaf246c0ac5" },
"unite.vim": { "branch": "master", "commit": "0ccb3f7988d61a9a86525374be97360bd20db6bc" }, "unite.vim": { "branch": "master", "commit": "0ccb3f7988d61a9a86525374be97360bd20db6bc" },

26
lua/plugins/git.lua Normal file
View File

@ -0,0 +1,26 @@
return {
{
"NeogitOrg/neogit",
dependencies = {
"nvim-lua/plenary.nvim", -- required
"sindrets/diffview.nvim", -- optional - Diff integration
-- Only one of these is needed.
"nvim-telescope/telescope.nvim", -- optional
"ibhagwan/fzf-lua", -- optional
"echasnovski/mini.pick", -- optional
},
},
{
"lewis6991/gitsigns.nvim",
init = function ()
local gitsigns = require("gitsigns")
gitsigns.setup()
vim.keymap.set('n', '<leader>ph', gitsigns.preview_hunk, { noremap = true, silent = true })
vim.keymap.set('n', '<leader>sh', gitsigns.stage_hunk, { noremap = true, silent = true })
vim.keymap.set('n', '<leader>uh', gitsigns.undo_stage_hunk, { noremap = true, silent = true })
end,
}
}

View File

@ -78,14 +78,17 @@ return {
"powerman/vim-plugin-AnsiEsc", "powerman/vim-plugin-AnsiEsc",
"preservim/tagbar", "preservim/tagbar",
"liuchengxu/vim-which-key", "liuchengxu/vim-which-key",
-- "jiangmiao/auto-pairs", {
'windwp/nvim-autopairs',
event = "InsertEnter",
config = true
},
"HerringtonDarkholme/yats.vim", "HerringtonDarkholme/yats.vim",
"posva/vim-vue", "posva/vim-vue",
"tpope/vim-fugitive", "tpope/vim-fugitive",
"dylanaraps/wal.vim", "dylanaraps/wal.vim",
"xuhdev/vim-latex-live-preview", "xuhdev/vim-latex-live-preview",
"lervag/vimtex", "lervag/vimtex",
"airblade/vim-gitgutter",
"mattn/emmet-vim", "mattn/emmet-vim",
"nvie/vim-flake8", "nvie/vim-flake8",
"https://gitlab.com/HiPhish/pycodestyle.nvim", "https://gitlab.com/HiPhish/pycodestyle.nvim",

View File

@ -1,12 +1,14 @@
local lsp_servers = { local lsp_servers = {
"lua_ls", "lua_ls",
-- "nil_ls", -- nix "nil_ls", -- nix
"rust_analyzer", "rust_analyzer",
"gopls", "gopls",
"pyright", "pyright",
"bashls", "bashls",
"ts_ls", "ts_ls",
"marksman", "marksman",
"taplo",
"yamlls",
} }
return { return {
@ -73,6 +75,19 @@ end
filetypes = {"python"}, filetypes = {"python"},
}) })
lspconfig["rust_analyzer"].setup({
capabilities = capabilities,
filetypes = {"rust"},
settings = {
['rust-analyzer'] = {
checkOnSave = true,
check = {
command = "clippy",
},
},
},
})
-- luasnip setup -- luasnip setup
local luasnip = require 'luasnip' local luasnip = require 'luasnip'
@ -120,6 +135,11 @@ cmp.setup {
}, },
} }
vim.keymap.set('n', "gd", vim.lsp.buf.definition, { silent = true }) vim.keymap.set('n', "gd", vim.lsp.buf.definition, { silent = true })
vim.keymap.set('n', "ca", vim.lsp.buf.code_action, { silent = true })
-- Show line diagnostics automatically in hover window
vim.o.updatetime = 250
vim.cmd [[autocmd CursorHold,CursorHoldI * lua vim.diagnostic.open_float(nil, {focus=false})]]

57
lua/plugins/ui.lua Normal file
View File

@ -0,0 +1,57 @@
return {
{
"folke/snacks.nvim",
priority = 1000,
lazy = false,
---@type snacks.Config
opts = {
-- your configuration comes here
-- or leave it empty to use the default settings
-- refer to the configuration section below
explorer = {
enabled = true,
replace_netrw = true,
},
picker = {
enabled = true,
},
matcher = {
cwd_bonus = true,
ignorecase = true, -- use ignorecase
filename_bonus = true, -- give bonus for matching file names (last part of the path)
frecency = true, -- frecency bonus
history_bonus = true,
},
},
init = function ()
local snacks = require('snacks')
vim.keymap.set('n', '<leader>e', function ()
snacks.picker.explorer()
end, { noremap = true, silent = true })
vim.keymap.set('n', '<leader>f', snacks.picker.files, { noremap = true, silent = true })
vim.keymap.set('n', '<leader>g', snacks.picker.grep, { noremap = true, silent = true })
end
},
{
'romgrk/barbar.nvim',
dependencies = {
'lewis6991/gitsigns.nvim', -- OPTIONAL: for git status
'nvim-tree/nvim-web-devicons', -- OPTIONAL: for file icons
},
init = function() vim.g.barbar_auto_setup = false end,
opts = {
animation = true,
sidebar_filetypes = {
['snacks_picker_list'] = true
}
},
version = '^1.0.0', -- optional: only update when a new 1.x version is released
},
{
"voldikss/vim-floaterm",
init = function ()
vim.g.floaterm_giteditor = false
vim.keymap.set('n', '<leader>cw', '<cmd>:FloatermNew git commit<cr>', { noremap = true, silent = true })
end
}
}