diff --git a/.config/nvim/init.lua b/.config/nvim/init.lua index 865ca51..5c7f4ef 100644 --- a/.config/nvim/init.lua +++ b/.config/nvim/init.lua @@ -1,3 +1,3 @@ -require("config.options") -require("config.keymaps") -require("config.lazy") +require("vim_options") +require("keys") +require("plugin") diff --git a/.config/nvim/lazy-lock.json b/.config/nvim/lazy-lock.json index bc6165d..2ec59b6 100644 --- a/.config/nvim/lazy-lock.json +++ b/.config/nvim/lazy-lock.json @@ -1,6 +1,13 @@ { - "lazy.nvim": { "branch": "main", "commit": "85c7ff3711b730b4030d03144f6db6375044ae82" }, + "diffview.nvim": { "branch": "main", "commit": "4516612fe98ff56ae0415a259ff6361a89419b0a" }, + "gitsigns.nvim": { "branch": "main", "commit": "eb60cc7b94c46005237fd34170d76f3a089a90aa" }, + "lazy.nvim": { "branch": "main", "commit": "306a05526ada86a7b30af95c5cc81ffba93fef97" }, + "neogit": { "branch": "master", "commit": "6fc2fa890bd2031ed999c074daab0fb4feff20a5" }, "nord.nvim": { "branch": "main", "commit": "87394d4fc35c901bbe38326a78d31ab1ead826b6" }, "nvim-treesitter": { "branch": "master", "commit": "cf12346a3414fa1b06af75c79faebe7f76df080a" }, - "render-markdown.nvim": { "branch": "main", "commit": "f422cb5c6855f150e2ddcfaf44e7157b98b34f6a" } + "oil.nvim": { "branch": "master", "commit": "b73018b75affd13fa38e2fc94ef753b465f770d7" }, + "plenary.nvim": { "branch": "master", "commit": "74b06c6c75e4eeb3108ec01852001636d85a932b" }, + "render-markdown.nvim": { "branch": "main", "commit": "f422cb5c6855f150e2ddcfaf44e7157b98b34f6a" }, + "snacks.nvim": { "branch": "main", "commit": "882c996cf28183f4d63640de0b4c02ec886d01f2" }, + "which-key.nvim": { "branch": "main", "commit": "3aab2147e74890957785941f0c1ad87d0a44c15a" } } diff --git a/.config/nvim/lua/config/keymaps.lua b/.config/nvim/lua/keys.lua similarity index 81% rename from .config/nvim/lua/config/keymaps.lua rename to .config/nvim/lua/keys.lua index 0bd51a3..486b5da 100644 --- a/.config/nvim/lua/config/keymaps.lua +++ b/.config/nvim/lua/keys.lua @@ -6,5 +6,3 @@ map("n", "", "k", { desc = "Move focus up" }) map("n", "", "l", { desc = "Move focus right" }) map("n", "", "nohlsearch", { desc = "Clear search highlight" }) - -map("n", "e", "Lexplore", { desc = "Toggle file explorer" }) diff --git a/.config/nvim/lua/config/lazy.lua b/.config/nvim/lua/plugin.lua similarity index 100% rename from .config/nvim/lua/config/lazy.lua rename to .config/nvim/lua/plugin.lua diff --git a/.config/nvim/lua/plugins/git.lua b/.config/nvim/lua/plugins/git.lua new file mode 100644 index 0000000..94d7889 --- /dev/null +++ b/.config/nvim/lua/plugins/git.lua @@ -0,0 +1,36 @@ +return { + { + "NeogitOrg/neogit", + dependencies = { + "nvim-lua/plenary.nvim", + "sindrets/diffview.nvim", + }, + keys = { + { + "g", + function() + require("gitsigns").toggle_current_line_blame(true) + require("neogit").open() + end, + desc = "Open git (Neogit)", + }, + }, + config = function() + require("neogit").setup() + vim.api.nvim_create_autocmd("BufUnload", { + callback = function(args) + if vim.bo[args.buf].filetype == "NeogitStatus" then + require("gitsigns").toggle_current_line_blame(false) + end + end, + }) + end, + }, + { + "lewis6991/gitsigns.nvim", + event = "BufWinEnter", + opts = { + current_line_blame = false, + }, + }, +} diff --git a/.config/nvim/lua/plugins/navigation.lua b/.config/nvim/lua/plugins/navigation.lua new file mode 100644 index 0000000..efa86f9 --- /dev/null +++ b/.config/nvim/lua/plugins/navigation.lua @@ -0,0 +1,27 @@ +return { + { + "stevearc/oil.nvim", + lazy = false, + opts = { + view_options = { show_hidden = true }, + }, + keys = { + { "e", "Oil", desc = "Open file browser" }, + }, + }, + { + "folke/snacks.nvim", + priority = 1000, + lazy = false, + opts = { + picker = { enabled = true }, + notifier = { enabled = true }, + input = { enabled = true }, + }, + keys = { + { "f", function() require("snacks").picker.files() end, desc = "Find files" }, + { "s", function() require("snacks").picker.grep() end, desc = "Search text" }, + { "b", function() require("snacks").picker.buffers() end, desc = "Switch buffer" }, + }, + }, +} diff --git a/.config/nvim/lua/plugins/nord.lua b/.config/nvim/lua/plugins/nord.lua deleted file mode 100644 index 5abee4a..0000000 --- a/.config/nvim/lua/plugins/nord.lua +++ /dev/null @@ -1,12 +0,0 @@ -return { - "gbprod/nord.nvim", - lazy = false, - priority = 1000, - opts = { - transparent = true, - }, - config = function(_, opts) - require("nord").setup(opts) - vim.cmd.colorscheme("nord") - end, -} diff --git a/.config/nvim/lua/plugins/render-markdown.lua b/.config/nvim/lua/plugins/render-markdown.lua deleted file mode 100644 index ed7c747..0000000 --- a/.config/nvim/lua/plugins/render-markdown.lua +++ /dev/null @@ -1,6 +0,0 @@ -return { - "MeanderingProgrammer/render-markdown.nvim", - ft = { "markdown" }, - dependencies = { "nvim-treesitter/nvim-treesitter" }, - opts = {}, -} diff --git a/.config/nvim/lua/plugins/treesitter.lua b/.config/nvim/lua/plugins/treesitter.lua deleted file mode 100644 index 749e09d..0000000 --- a/.config/nvim/lua/plugins/treesitter.lua +++ /dev/null @@ -1,30 +0,0 @@ -return { - "nvim-treesitter/nvim-treesitter", - branch = "master", - build = ":TSUpdate", - opts = { - ensure_installed = { - "markdown", - "markdown_inline", - "lua", - "bash", - "fish", - "rust", - "javascript", - "typescript", - "java", - "kotlin", - "c", - "cpp", - "html", - "css", - "python", - }, - auto_install = false, - highlight = { enable = true }, - indent = { enable = true }, - }, - config = function(_, opts) - require("nvim-treesitter.configs").setup(opts) - end, -} diff --git a/.config/nvim/lua/plugins/ui.lua b/.config/nvim/lua/plugins/ui.lua new file mode 100644 index 0000000..5127f0a --- /dev/null +++ b/.config/nvim/lua/plugins/ui.lua @@ -0,0 +1,55 @@ +return { + { + "gbprod/nord.nvim", + lazy = false, + priority = 1000, + opts = { + transparent = true, + }, + config = function(_, opts) + require("nord").setup(opts) + vim.cmd.colorscheme("nord") + end, + }, + { + "MeanderingProgrammer/render-markdown.nvim", + ft = { "markdown" }, + dependencies = { "nvim-treesitter/nvim-treesitter" }, + opts = {}, + }, + { + "folke/which-key.nvim", + lazy = false, + config = true, + }, + { + "nvim-treesitter/nvim-treesitter", + branch = "master", + build = ":TSUpdate", + opts = { + ensure_installed = { + "markdown", + "markdown_inline", + "lua", + "bash", + "fish", + "rust", + "javascript", + "typescript", + "java", + "kotlin", + "c", + "cpp", + "html", + "css", + "python", + }, + auto_install = false, + highlight = { enable = true }, + indent = { enable = true }, + }, + config = function(_, opts) + require("nvim-treesitter.configs").setup(opts) + end, + }, +} diff --git a/.config/nvim/lua/config/options.lua b/.config/nvim/lua/vim_options.lua similarity index 90% rename from .config/nvim/lua/config/options.lua rename to .config/nvim/lua/vim_options.lua index 09b75e7..f8ee951 100644 --- a/.config/nvim/lua/config/options.lua +++ b/.config/nvim/lua/vim_options.lua @@ -27,6 +27,3 @@ opt.wrap = false opt.scrolloff = 8 opt.cursorline = true - -vim.g.netrw_banner = 0 -vim.g.netrw_liststyle = 3