diff --git a/nvim/init.lua b/nvim/init.lua index cd9cf11..b1d133d 100644 --- a/nvim/init.lua +++ b/nvim/init.lua @@ -24,7 +24,10 @@ vim.g.maplocalleader = "\\" -- Setup lazy.nvim -- load plugins require("lazy").setup({ - spec = { import = "plugins" }, + spec = { + { import = "plugins" }, + { import = "filetypes" }, + }, }, lazy_defaults, { checker = { enabled = true }, }) diff --git a/nvim/lazy-lock.json b/nvim/lazy-lock.json index 492bb30..78c01e9 100644 --- a/nvim/lazy-lock.json +++ b/nvim/lazy-lock.json @@ -28,6 +28,7 @@ "nvim-colorizer.lua": { "branch": "master", "commit": "517df88cf2afb36652830df2c655df2da416a0ae" }, "nvim-lspconfig": { "branch": "master", "commit": "463b16bd6a347a129367a7fd00ebcdd9442d9a96" }, "nvim-origami": { "branch": "main", "commit": "359cb2f5d28cc54a18a3a7fa40292a21f6c9e1a8" }, + "nvim-regexplainer": { "branch": "main", "commit": "2ec38892e7ce36f0c58b478f3570936fa5bd11f1" }, "nvim-spectre": { "branch": "master", "commit": "72f56f7585903cd7bf92c665351aa585e150af0f" }, "nvim-spider": { "branch": "main", "commit": "d4bdc45eac425e77108f068bd0706ff3ac20be7f" }, "nvim-treesitter": { "branch": "master", "commit": "42fc28ba918343ebfd5565147a42a26580579482" }, diff --git a/nvim/lua/filetypes/elixir.lua b/nvim/lua/filetypes/elixir.lua new file mode 100644 index 0000000..291fded --- /dev/null +++ b/nvim/lua/filetypes/elixir.lua @@ -0,0 +1,31 @@ +return { + "elixir-tools/elixir-tools.nvim", + version = "*", + event = { "BufReadPre", "BufNewFile" }, + config = function() + local elixir = require("elixir") + local elixirls = require("elixir.elixirls") + + elixir.setup { + nextls = { enable = true }, + elixirls = { + enable = true, + settings = elixirls.settings { + dialyzerEnabled = true, + enableTestLenses = true, + }, + on_attach = function(client, bufnr) + vim.keymap.set("n", "fp", ":ElixirFromPipe", { buffer = true, noremap = true }) + vim.keymap.set("n", "tp", ":ElixirToPipe", { buffer = true, noremap = true }) + vim.keymap.set("v", "em", ":ElixirExpandMacro", { buffer = true, noremap = true }) + end, + }, + projectionist = { + enable = true + } + } + end, + dependencies = { + "nvim-lua/plenary.nvim", + }, +} diff --git a/nvim/lua/filetypes/markdown.lua b/nvim/lua/filetypes/markdown.lua new file mode 100644 index 0000000..61ff2f8 --- /dev/null +++ b/nvim/lua/filetypes/markdown.lua @@ -0,0 +1,7 @@ +return { + 'MeanderingProgrammer/render-markdown.nvim', + dependencies = { 'nvim-treesitter/nvim-treesitter', 'nvim-tree/nvim-web-devicons' }, -- if you prefer nvim-web-devicons + ---@module 'render-markdown' + ---@type render.md.UserConfig + opts = {}, +} diff --git a/nvim/lua/filetypes/regex.lua b/nvim/lua/filetypes/regex.lua new file mode 100644 index 0000000..1703373 --- /dev/null +++ b/nvim/lua/filetypes/regex.lua @@ -0,0 +1,20 @@ +return { + 'bennypowers/nvim-regexplainer', + config = function() + require 'regexplainer'.setup({ + mappings = { + toggle = 'gR', + }, + popup = { + border = { + padding = { 1, 2 }, + style = 'solid', + } + } + }) + end, + requires = { + 'nvim-treesitter/nvim-treesitter', + 'MunifTanjim/nui.nvim', + } +} diff --git a/nvim/lua/plugins/filetypes.lua b/nvim/lua/plugins/filetypes.lua deleted file mode 100644 index 21c3a44..0000000 --- a/nvim/lua/plugins/filetypes.lua +++ /dev/null @@ -1,40 +0,0 @@ -return { - { - 'MeanderingProgrammer/render-markdown.nvim', - dependencies = { 'nvim-treesitter/nvim-treesitter', 'nvim-tree/nvim-web-devicons' }, -- if you prefer nvim-web-devicons - ---@module 'render-markdown' - ---@type render.md.UserConfig - opts = {}, - }, - { - "elixir-tools/elixir-tools.nvim", - version = "*", - event = { "BufReadPre", "BufNewFile" }, - config = function() - local elixir = require("elixir") - local elixirls = require("elixir.elixirls") - - elixir.setup { - nextls = { enable = true }, - elixirls = { - enable = true, - settings = elixirls.settings { - dialyzerEnabled = true, - enableTestLenses = true, - }, - on_attach = function(client, bufnr) - vim.keymap.set("n", "fp", ":ElixirFromPipe", { buffer = true, noremap = true }) - vim.keymap.set("n", "tp", ":ElixirToPipe", { buffer = true, noremap = true }) - vim.keymap.set("v", "em", ":ElixirExpandMacro", { buffer = true, noremap = true }) - end, - }, - projectionist = { - enable = true - } - } - end, - dependencies = { - "nvim-lua/plenary.nvim", - }, - } -}