118 lines
3.2 KiB
Lua
118 lines
3.2 KiB
Lua
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(opts)
|
|
require("luasnip").config.set_config(opts)
|
|
|
|
-- vscode format
|
|
require("luasnip.loaders.from_vscode").lazy_load()
|
|
require("luasnip.loaders.from_vscode").lazy_load { paths = vim.g.vscode_snippets_path or "" }
|
|
|
|
-- 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 = {
|
|
-- signs = {
|
|
-- add = { text = "│" },
|
|
-- change = { text = "│" },
|
|
-- delete = { text = "" },
|
|
-- topdelete = { text = "‾" },
|
|
-- changedelete = { text = "~" },
|
|
-- untracked = { text = "│" },
|
|
-- },
|
|
-- on_attach = function(bufnr)
|
|
-- utils.load_mappings("gitsigns", { buffer = bufnr })
|
|
-- end,
|
|
-- }
|
|
|
|
M.gitsigns = {
|
|
signs = {
|
|
add = { text = '┃' },
|
|
change = { text = '┃' },
|
|
delete = { text = '_' },
|
|
topdelete = { text = '‾' },
|
|
changedelete = { text = '~' },
|
|
untracked = { text = '┆' },
|
|
},
|
|
signs_staged = {
|
|
add = { text = '┃' },
|
|
change = { text = '┃' },
|
|
delete = { text = '_' },
|
|
topdelete = { text = '‾' },
|
|
changedelete = { text = '~' },
|
|
untracked = { text = '┆' },
|
|
},
|
|
signs_staged_enable = true,
|
|
signcolumn = true, -- Toggle with `:Gitsigns toggle_signs`
|
|
numhl = false, -- Toggle with `:Gitsigns toggle_numhl`
|
|
linehl = false, -- Toggle with `:Gitsigns toggle_linehl`
|
|
word_diff = false, -- Toggle with `:Gitsigns toggle_word_diff`
|
|
watch_gitdir = {
|
|
follow_files = true
|
|
},
|
|
auto_attach = true,
|
|
attach_to_untracked = false,
|
|
current_line_blame = false, -- Toggle with `:Gitsigns toggle_current_line_blame`
|
|
current_line_blame_opts = {
|
|
virt_text = true,
|
|
virt_text_pos = 'eol', -- 'eol' | 'overlay' | 'right_align'
|
|
delay = 1000,
|
|
ignore_whitespace = false,
|
|
virt_text_priority = 100,
|
|
},
|
|
current_line_blame_formatter = '<author>, <author_time:%R> - <summary>',
|
|
sign_priority = 6,
|
|
update_debounce = 100,
|
|
status_formatter = nil, -- Use default
|
|
max_file_length = 40000, -- Disable if file is longer than this (in lines)
|
|
preview_config = {
|
|
-- Options passed to nvim_open_win
|
|
border = 'single',
|
|
style = 'minimal',
|
|
relative = 'cursor',
|
|
row = 0,
|
|
col = 1
|
|
},
|
|
}
|
|
|
|
|
|
return M
|