local M = {} local utils = require "core.utils" M.blankline = { indentLine_enabled = 1, filetype_exclude = { "help", "terminal", "lazy", "lspinfo", "TelescopePrompt", "TelescopeResults", "mason", "nvdash", "nvcheatsheet", "", }, buftype_exclude = { "terminal" }, show_trailing_blankline_indent = false, show_first_indent_level = false, show_current_context = true, show_current_context_start = true, } M.luasnip = function() local options = { history = true, updateevents = "TextChanged,TextChangedI" } require("luasnip").config.set_config(options) require("luasnip.loaders.from_vscode").lazy_load { paths = vim.g.luasnippets_path or "" } require("luasnip.loaders.from_vscode").lazy_load() vim.api.nvim_create_autocmd("InsertLeave", { callback = function() if require("luasnip").session.current_nodes[vim.api.nvim_get_current_buf()] and not require("luasnip").session.jump_active then require("luasnip").unlink_current() end end, }) end M.gitsigns = { signs = { add = { hl = "DiffAdd", text = "│", numhl = "GitSignsAddNr" }, change = { hl = "DiffChange", text = "│", numhl = "GitSignsChangeNr" }, delete = { hl = "DiffDelete", text = "", numhl = "GitSignsDeleteNr" }, topdelete = { hl = "DiffDelete", text = "‾", numhl = "GitSignsDeleteNr" }, changedelete = { hl = "DiffChangeDelete", text = "~", numhl = "GitSignsChangeNr" }, untracked = { hl = "GitSignsAdd", text = "│", numhl = "GitSignsAddNr", linehl = "GitSignsAddLn" }, }, on_attach = function(bufnr) utils.load_mappings("gitsigns", { buffer = bufnr }) end, } return M