91 lines
2.9 KiB
Lua
91 lines
2.9 KiB
Lua
local M = {}
|
|
|
|
M.autopairs = function()
|
|
local options = {
|
|
fast_wrap = {},
|
|
disable_filetype = { "TelescopePrompt", "vim" },
|
|
}
|
|
|
|
require("nvim-autopairs").setup(options)
|
|
|
|
local cmp_autopairs = require "nvim-autopairs.completion.cmp"
|
|
require("cmp").event:on("confirm_done", cmp_autopairs.on_confirm_done())
|
|
end
|
|
|
|
M.luasnip = function()
|
|
local options = {
|
|
history = true,
|
|
updateevents = "TextChanged,TextChangedI",
|
|
}
|
|
|
|
require("luasnip").config.set_config(options)
|
|
-- vscode format
|
|
require("luasnip.loaders.from_vscode").lazy_load()
|
|
require("luasnip.loaders.from_vscode").lazy_load { paths = vim.g.vscode_snippets_path or "" }
|
|
require('luasnip.loaders.from_vscode').lazy_load({ paths = "~/.config/nvim/snippets/" })
|
|
|
|
-- snipmate format
|
|
require("luasnip.loaders.from_snipmate").load()
|
|
require("luasnip.loaders.from_snipmate").lazy_load { paths = vim.g.snipmate_snippets_path or "" }
|
|
|
|
-- lua format
|
|
require("luasnip.loaders.from_lua").load()
|
|
require("luasnip.loaders.from_lua").lazy_load { paths = vim.g.lua_snippets_path or "" }
|
|
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 = function()
|
|
local options = {
|
|
signs = {
|
|
add = { hl = "GitSignsAdd", text = "▎", numhl = "GitSignsAddNr", linehl = "GitSignsAddLn" },
|
|
change = { hl = "GitSignsChange", text = "▎", numhl = "GitSignsChangeNr", linehl = "GitSignsChangeLn" },
|
|
delete = { hl = "GitSignsDelete", text = "", numhl = "GitSignsDeleteNr", linehl = "GitSignsDeleteLn" },
|
|
topdelete = { hl = "GitSignsDelete", text = "‾", numhl = "GitSignsDeleteNr", linehl = "GitSignsDeleteLn" },
|
|
changedelete = { hl = "GitSignsChange", text = "▎", numhl = "GitSignsChangeNr", linehl = "GitSignsChangeLn" },
|
|
},
|
|
}
|
|
require("gitsigns").setup(options)
|
|
end
|
|
|
|
M.blankline = function()
|
|
local options = {
|
|
indentLine_enabled = 1,
|
|
char = "▏",
|
|
filetype_exclude = {
|
|
"help",
|
|
"terminal",
|
|
"alpha",
|
|
"lazy",
|
|
"lspinfo",
|
|
"TelescopePrompt",
|
|
"TelescopeResults",
|
|
"nvchad_cheatsheet",
|
|
"lsp-installer",
|
|
"",
|
|
},
|
|
buftype_exclude = { "terminal" },
|
|
show_trailing_blankline_indent = false,
|
|
show_first_indent_level = false,
|
|
}
|
|
|
|
require("indent_blankline").setup(options)
|
|
end
|
|
|
|
M.colorizer = function()
|
|
require("colorizer").setup()
|
|
-- execute colorizer as soon as possible
|
|
vim.defer_fn(function()
|
|
require("colorizer").attach_to_buffer(0)
|
|
end, 0)
|
|
end
|
|
|
|
return M
|