feat: add auto pairs, rainbow, and indent guides

This commit is contained in:
Stevan Freeborn
2025-01-22 21:24:56 -06:00
parent ce7a820333
commit c0173b2956
4 changed files with 138 additions and 68 deletions
+10 -6
View File
@@ -7,6 +7,7 @@
"copilot.vim": { "branch": "release", "commit": "87038123804796ca7af20d1b71c3428d858a9124" }, "copilot.vim": { "branch": "release", "commit": "87038123804796ca7af20d1b71c3428d858a9124" },
"friendly-snippets": { "branch": "main", "commit": "efff286dd74c22f731cdec26a70b46e5b203c619" }, "friendly-snippets": { "branch": "main", "commit": "efff286dd74c22f731cdec26a70b46e5b203c619" },
"github-theme": { "branch": "main", "commit": "c106c9472154d6b2c74b74565616b877ae8ed31d" }, "github-theme": { "branch": "main", "commit": "c106c9472154d6b2c74b74565616b877ae8ed31d" },
"indent-blankline.nvim": { "branch": "master", "commit": "e10626f7fcd51ccd56d7ffc00883ba7e0aa28f78" },
"lazy.nvim": { "branch": "main", "commit": "d8f26efd456190241afd1b0f5235fe6fdba13d4a" }, "lazy.nvim": { "branch": "main", "commit": "d8f26efd456190241afd1b0f5235fe6fdba13d4a" },
"lualine.nvim": { "branch": "master", "commit": "2a5bae925481f999263d6f5ed8361baef8df4f83" }, "lualine.nvim": { "branch": "master", "commit": "2a5bae925481f999263d6f5ed8361baef8df4f83" },
"mason-lspconfig.nvim": { "branch": "main", "commit": "e942edf5c85b6a2ab74059ea566cac5b3e1514a4" }, "mason-lspconfig.nvim": { "branch": "main", "commit": "e942edf5c85b6a2ab74059ea566cac5b3e1514a4" },
@@ -19,19 +20,22 @@
"neotest-playwright": { "branch": "master", "commit": "6266945039dac27a354de33d2f2a66e75485d5e9" }, "neotest-playwright": { "branch": "master", "commit": "6266945039dac27a354de33d2f2a66e75485d5e9" },
"neotest-python": { "branch": "master", "commit": "a2861ab3c9a0bf75a56b11835c2bfc8270f5be7e" }, "neotest-python": { "branch": "master", "commit": "a2861ab3c9a0bf75a56b11835c2bfc8270f5be7e" },
"neotest-vitest": { "branch": "main", "commit": "3e338b77700853f725856c37ff5a3cf9295bffae" }, "neotest-vitest": { "branch": "main", "commit": "3e338b77700853f725856c37ff5a3cf9295bffae" },
"none-ls.nvim": { "branch": "main", "commit": "af318216b744f2fe2d5afa6febb01f455ae61d6c" }, "none-ls.nvim": { "branch": "main", "commit": "ed8f80849ef1ad31c2f74679fafdef7801091247" },
"nuget.nvim": { "branch": "main", "commit": "ce137d6503e96657d133b48946f8739c8600834b" }, "nuget.nvim": { "branch": "main", "commit": "ce137d6503e96657d133b48946f8739c8600834b" },
"nui.nvim": { "branch": "main", "commit": "53e907ffe5eedebdca1cd503b00aa8692068ca46" }, "nui.nvim": { "branch": "main", "commit": "53e907ffe5eedebdca1cd503b00aa8692068ca46" },
"nvim-autopairs": { "branch": "master", "commit": "3d02855468f94bf435db41b661b58ec4f48a06b7" },
"nvim-cmp": { "branch": "main", "commit": "8c82d0bd31299dbff7f8e780f5e06d2283de9678" }, "nvim-cmp": { "branch": "main", "commit": "8c82d0bd31299dbff7f8e780f5e06d2283de9678" },
"nvim-dap": { "branch": "master", "commit": "99807078c5089ed30e0547aa4b52c5867933f426" }, "nvim-dap": { "branch": "master", "commit": "99807078c5089ed30e0547aa4b52c5867933f426" },
"nvim-dap-ui": { "branch": "master", "commit": "727c032a8f63899baccb42a1c26f27687e62fc5e" }, "nvim-dap-ui": { "branch": "master", "commit": "0d5c37a43bc039c42a0a9bf801e53f77adf06a24" },
"nvim-lspconfig": { "branch": "master", "commit": "339ccc81e08793c3af9b83882a6ebd90c9cc0d3b" }, "nvim-lspconfig": { "branch": "master", "commit": "d1871c84b218931cc758dbbde1fec8e90c6d465c" },
"nvim-nio": { "branch": "master", "commit": "a428f309119086dc78dd4b19306d2d67be884eee" }, "nvim-nio": { "branch": "master", "commit": "21f5324bfac14e22ba26553caf69ec76ae8a7662" },
"nvim-treesitter": { "branch": "master", "commit": "5da195ac3dfafd08d8b10756d975f0e01e1d563a" }, "nvim-treesitter": { "branch": "master", "commit": "07bd1b53bf465e42d53253b48b7437892d6c45e8" },
"nvim-treesitter-context": { "branch": "master", "commit": "bece284c5322ddf6946fa4bdc383a2bc033269d7" },
"nvim-web-devicons": { "branch": "master", "commit": "aafa5c187a15701a7299a392b907ec15d9a7075f" }, "nvim-web-devicons": { "branch": "master", "commit": "aafa5c187a15701a7299a392b907ec15d9a7075f" },
"omnisharp-extended-lsp.nvim": { "branch": "main", "commit": "ec1a2431f8872f650a85ed71c24f0715df2e49c2" }, "omnisharp-extended-lsp.nvim": { "branch": "main", "commit": "ec1a2431f8872f650a85ed71c24f0715df2e49c2" },
"onedarkpro.nvim": { "branch": "main", "commit": "0feb5f55dd777352f2dddd7478dd13d050864ee3" }, "onedarkpro.nvim": { "branch": "main", "commit": "44775f8206ee43b692e7f3dc894ddc47996ee523" },
"plenary.nvim": { "branch": "master", "commit": "3707cdb1e43f5cea73afb6037e6494e7ce847a66" }, "plenary.nvim": { "branch": "master", "commit": "3707cdb1e43f5cea73afb6037e6494e7ce847a66" },
"rainbow-delimiters.nvim": { "branch": "master", "commit": "85b80abaa09cbbc039e3095b2f515b3cf8cadd11" },
"telescope-themes": { "branch": "main", "commit": "9b7c368b83b82b53c0a6e9e977f8329e5f1fe269" }, "telescope-themes": { "branch": "main", "commit": "9b7c368b83b82b53c0a6e9e977f8329e5f1fe269" },
"telescope-ui-select.nvim": { "branch": "master", "commit": "6e51d7da30bd139a6950adf2a47fda6df9fa06d2" }, "telescope-ui-select.nvim": { "branch": "master", "commit": "6e51d7da30bd139a6950adf2a47fda6df9fa06d2" },
"telescope.nvim": { "branch": "master", "commit": "a0bbec21143c7bc5f8bb02e0005fa0b982edc026" }, "telescope.nvim": { "branch": "master", "commit": "a0bbec21143c7bc5f8bb02e0005fa0b982edc026" },
+12 -2
View File
@@ -1,4 +1,11 @@
return { return {
{
"windwp/nvim-autopairs",
event = "InsertEnter",
config = function()
require("nvim-autopairs").setup()
end,
},
{ {
"hrsh7th/cmp-nvim-lsp", "hrsh7th/cmp-nvim-lsp",
}, },
@@ -15,6 +22,9 @@ return {
local luasnip = require("luasnip") local luasnip = require("luasnip")
local cmp = require("cmp") local cmp = require("cmp")
local cmp_autopairs = require("nvim-autopairs.completion.cmp")
cmp.event:on("confirm_done", cmp_autopairs.on_confirm_done())
require("luasnip.loaders.from_vscode").lazy_load() require("luasnip.loaders.from_vscode").lazy_load()
cmp.setup({ cmp.setup({
@@ -44,7 +54,7 @@ return {
else else
fallback() fallback()
end end
end, {}), end, { "i", "s" }),
["<S-Tab>"] = cmp.mapping(function(fallback) ["<S-Tab>"] = cmp.mapping(function(fallback)
if cmp.visible() then if cmp.visible() then
cmp.select_prev_item() cmp.select_prev_item()
@@ -53,7 +63,7 @@ return {
else else
fallback() fallback()
end end
end, {}), end, { "i", "s" }),
}), }),
sources = cmp.config.sources({ sources = cmp.config.sources({
{ name = "nvim_lsp" }, { name = "nvim_lsp" },
+27 -19
View File
@@ -20,24 +20,24 @@ return {
}, },
} }
for _, language in ipairs({ "typescript", "javascript" }) do for _, language in ipairs({ "typescript", "javascript" }) do
dap.configurations[language] = { dap.configurations[language] = {
{ {
type = "pwa-node", type = "pwa-node",
request = "launch", request = "launch",
name = "Launch file", name = "Launch file",
program = "${file}", program = "${file}",
cwd = "${workspaceFolder}", cwd = "${workspaceFolder}",
}, },
{ {
type = "pwa-node", type = "pwa-node",
request = "attach", request = "attach",
name = "Attach", name = "Attach",
processId = require('dap.utils').pick_process, processId = require("dap.utils").pick_process,
cwd = "${workspaceFolder}", cwd = "${workspaceFolder}",
} },
} }
end end
dap.configurations.javascript = { dap.configurations.javascript = {
{ {
@@ -80,6 +80,14 @@ return {
end end
vim.keymap.set("n", "<Leader>dt", dap.toggle_breakpoint, { desc = "Toggle breakpoint" }) vim.keymap.set("n", "<Leader>dt", dap.toggle_breakpoint, { desc = "Toggle breakpoint" })
vim.keymap.set("n", "<Leader>dc", dap.continue, { desc = "Continue" })
local continue = function()
if vim.fn.filereadable(".vscode/launch.json") then
require("dap.ext.vscode").load_launchjs()
end
dap.continue()
end
vim.keymap.set("n", "<Leader>dc", continue, { desc = "Continue" })
end, end,
} }
+89 -41
View File
@@ -1,44 +1,92 @@
return { return {
"nvim-treesitter/nvim-treesitter", {
build = ":TSUpdate", "nvim-treesitter/nvim-treesitter-context",
config = function() config = function()
local config = require("nvim-treesitter.configs") require("treesitter-context").setup()
end,
},
{
"hiphish/rainbow-delimiters.nvim",
config = function()
require("rainbow-delimiters.setup").setup()
end,
},
{
"lukas-reineke/indent-blankline.nvim",
main = "ibl",
config = function()
config.setup({ local highlight = {
auto_install = true, "RainbowRed",
ensure_installed = { "RainbowYellow",
"bash", "RainbowBlue",
"css", "RainbowOrange",
"html", "RainbowGreen",
"javascript", "RainbowViolet",
"json", "RainbowCyan",
"lua", }
"python",
"typescript", local hooks = require("ibl.hooks")
"tsx",
"vue", hooks.register(hooks.type.HIGHLIGHT_SETUP, function()
"yaml", vim.api.nvim_set_hl(0, "RainbowRed", { fg = "#E06C75" })
"c_sharp", vim.api.nvim_set_hl(0, "RainbowYellow", { fg = "#E5C07B" })
"rust", vim.api.nvim_set_hl(0, "RainbowBlue", { fg = "#61AFEF" })
"csv", vim.api.nvim_set_hl(0, "RainbowOrange", { fg = "#D19A66" })
"dockerfile", vim.api.nvim_set_hl(0, "RainbowGreen", { fg = "#98C379" })
"editorconfig", vim.api.nvim_set_hl(0, "RainbowViolet", { fg = "#C678DD" })
"json", vim.api.nvim_set_hl(0, "RainbowCyan", { fg = "#56B6C2" })
"jsdoc", end)
"jsonc",
"markdown", vim.g.rainbow_delimiters = { highlight = highlight }
"markdown_inline",
"nginx", require("ibl").setup({ scope = { highlight = highlight } })
"proto",
"sql", hooks.register(hooks.type.SCOPE_HIGHLIGHT, hooks.builtin.scope_highlight_from_extmark)
"toml", end,
"ssh_config", },
"xml", {
}, "nvim-treesitter/nvim-treesitter",
indent = { enabled = true }, build = ":TSUpdate",
highlight = { config = function()
enabled = true, local config = require("nvim-treesitter.configs")
},
}) config.setup({
end, auto_install = true,
ensure_installed = {
"bash",
"css",
"html",
"javascript",
"json",
"lua",
"python",
"typescript",
"tsx",
"vue",
"yaml",
"c_sharp",
"rust",
"csv",
"dockerfile",
"editorconfig",
"json",
"jsdoc",
"jsonc",
"markdown",
"markdown_inline",
"nginx",
"proto",
"sql",
"toml",
"ssh_config",
"xml",
},
indent = { enabled = true },
highlight = {
enabled = true,
},
})
end,
},
} }