diff options
| author | srdusr <trevorgray@srdusr.com> | 2025-09-24 02:55:49 +0200 |
|---|---|---|
| committer | srdusr <trevorgray@srdusr.com> | 2025-09-24 02:55:49 +0200 |
| commit | 3cf613ec7c90ab4933728b0f19e49b0c955c17bb (patch) | |
| tree | 765e58766936b5228ad473ad77dfbf4353f173e9 /common/nvim/lua/plugins/indent-blankline.lua | |
| parent | ef51a60993197ed3bbd1003522f98f0a898d34c6 (diff) | |
| parent | 966d12ac730c83da90d60ab24eae539b2ea69441 (diff) | |
| download | dotfiles-3cf613ec7c90ab4933728b0f19e49b0c955c17bb.tar.gz dotfiles-3cf613ec7c90ab4933728b0f19e49b0c955c17bb.zip | |
Add 'common/nvim/' from commit '966d12ac730c83da90d60ab24eae539b2ea69441'
git-subtree-dir: common/nvim
git-subtree-mainline: ef51a60993197ed3bbd1003522f98f0a898d34c6
git-subtree-split: 966d12ac730c83da90d60ab24eae539b2ea69441
Diffstat (limited to 'common/nvim/lua/plugins/indent-blankline.lua')
| -rwxr-xr-x | common/nvim/lua/plugins/indent-blankline.lua | 73 |
1 files changed, 73 insertions, 0 deletions
diff --git a/common/nvim/lua/plugins/indent-blankline.lua b/common/nvim/lua/plugins/indent-blankline.lua new file mode 100755 index 0000000..cbbcf27 --- /dev/null +++ b/common/nvim/lua/plugins/indent-blankline.lua @@ -0,0 +1,73 @@ +local M = {} + +--- Setup and configure indent-blankline.nvim +-- This function initializes and configures the indent guides +-- @return boolean True if setup was successful, false otherwise +function M.setup() + local ok, ibl = pcall(require, 'ibl') + if not ok then + return false + end + + local highlight = { + "RainbowRed", + "RainbowYellow", + "RainbowBlue", + "RainbowOrange", + "RainbowGreen", + "RainbowViolet", + "RainbowCyan", + } + + local hooks = require("ibl.hooks") + -- create the highlight groups in the highlight setup hook, so they are reset + -- every time the colorscheme changes + hooks.register(hooks.type.HIGHLIGHT_SETUP, function() + vim.api.nvim_set_hl(0, "RainbowRed", { fg = "#E06C75" }) + vim.api.nvim_set_hl(0, "RainbowYellow", { fg = "#E5C07B" }) + vim.api.nvim_set_hl(0, "RainbowBlue", { fg = "#61AFEF" }) + vim.api.nvim_set_hl(0, "RainbowOrange", { fg = "#D19A66" }) + vim.api.nvim_set_hl(0, "RainbowGreen", { fg = "#98C379" }) + vim.api.nvim_set_hl(0, "RainbowViolet", { fg = "#C678DD" }) + vim.api.nvim_set_hl(0, "RainbowCyan", { fg = "#56B6C2" }) + end) + + ibl.setup({ + indent = { highlight = highlight }, + exclude = { + filetypes = { + "", -- for all buffers without a file type + "NvimTree", + "Trouble", + "TelescopePrompt", + "TelescopeResults", + "mason", + "help", + "dashboard", + "packer", + "neogitstatus", + "Trouble", + "text", + "terminal", + "lazy", + }, + buftypes = { + "terminal", + "nofile", + "quickfix", + "prompt", + }, + }, + }) + + -- Toggle indent blankline with <leader>ti + vim.keymap.set('n', '<leader>ti', '<cmd>IBLToggle<CR>', { + noremap = true, + silent = true, + desc = 'Toggle indent guides' + }) + + return true +end + +return M |
