179 lines
4.6 KiB
Lua
179 lines
4.6 KiB
Lua
vim.g.delimitMate_expand_space=1
|
|
vim.g.delimitMate_expand_cr = 1
|
|
|
|
vim.g.tagbar_left=1
|
|
vim.g.tagbar_autoclose=1
|
|
vim.g.tagbar_autofocus=1
|
|
|
|
vim.g.windowswap_map_keys=0
|
|
|
|
local cmp = require('cmp')
|
|
local lspkind = require('lspkind')
|
|
|
|
cmp.setup({
|
|
snippet = {
|
|
expand = function(args)
|
|
vim.fn["vsnip#anonymous"](args.body) -- For `vsnip` users.
|
|
end,
|
|
},
|
|
|
|
window = {
|
|
completion = cmp.config.window.bordered(),
|
|
documentation = cmp.config.window.bordered(),
|
|
},
|
|
|
|
mapping = cmp.mapping.preset.insert({
|
|
['<C-b>'] = cmp.mapping.scroll_docs(-4),
|
|
['<C-f>'] = cmp.mapping.scroll_docs(4),
|
|
['<C-Space>'] = cmp.mapping.complete(),
|
|
['<C-e>'] = cmp.mapping.abort(),
|
|
['<CR>'] = cmp.mapping.confirm({ select = true }), -- Accept currently selected item. Set `select` to `false` to only confirm explicitly selected items.
|
|
}),
|
|
|
|
sources = cmp.config.sources({
|
|
{ name = 'nvim_lsp' },
|
|
{ name = 'vsnip' },
|
|
{ name = 'path' },
|
|
{ name = 'cmp_yanky' },
|
|
{ name = 'git' },
|
|
-- }, {
|
|
{ name = 'buffer', keyword_length = 2 },
|
|
}),
|
|
|
|
formatting = {
|
|
format = lspkind.cmp_format({
|
|
mode = "symbol_text",
|
|
menu = ({
|
|
buffer = "[buf]",
|
|
nvim_lsp = "[lsp]",
|
|
vsnip = "[snip]",
|
|
nvim_lua = "[lua]",
|
|
latex_symbols = "[tex]",
|
|
path = "[path]",
|
|
cmp_yanky = "[yank]",
|
|
})
|
|
}),
|
|
},
|
|
})
|
|
|
|
-- -- Set configuration for specific filetype.
|
|
-- cmp.setup.filetype('gitcommit', {
|
|
-- sources = cmp.config.sources({
|
|
-- { name = 'git' }, -- You can specify the `git` source if [you were installed it](https://github.com/petertriho/cmp-git).
|
|
-- }, {
|
|
-- { name = 'buffer' },
|
|
-- })
|
|
-- })
|
|
|
|
cmp.setup.cmdline({ '/', '?' }, {
|
|
mapping = cmp.mapping.preset.cmdline(),
|
|
sources = {
|
|
{ name = 'buffer' }
|
|
}
|
|
})
|
|
|
|
cmp.setup.cmdline(':', {
|
|
mapping = cmp.mapping.preset.cmdline(),
|
|
sources = cmp.config.sources({
|
|
{ name = 'path' }
|
|
}, {
|
|
{ name = 'cmdline' }
|
|
}),
|
|
matching = { disallow_symbol_nonprefix_matching = false }
|
|
})
|
|
|
|
local capabilities = require('cmp_nvim_lsp').default_capabilities()
|
|
local lspconfig = require("lspconfig")
|
|
lspconfig.gopls.setup({ capabilities = capabilities })
|
|
lspconfig.svelte.setup({ capabilities = capabilities })
|
|
lspconfig.pyright.setup({ capabilities = capabilities })
|
|
lspconfig.omnisharp.setup({ capabilities = capabilities })
|
|
lspconfig.clangd.setup({ capabilities = capabilities })
|
|
lspconfig.dockerls.setup({ capabilities = capabilities })
|
|
lspconfig.docker_compose_language_service.setup({ capabilities = capabilities })
|
|
lspconfig.flow.setup({ capabilities = capabilities })
|
|
lspconfig.marksman.setup({ capabilities = capabilities })
|
|
lspconfig.als.setup({ capabilities = capabilities })
|
|
lspconfig.sqls.setup({ capabilities = capabilities })
|
|
lspconfig.yamlls.setup({ capabilities = capabilities })
|
|
lspconfig.nil_ls.setup({ capabilities = capabilities })
|
|
|
|
require("yanky").setup({
|
|
ring = {
|
|
history_length = 100,
|
|
storage = "shada",
|
|
sync_with_numbered_registers = true,
|
|
cancel_event = "update",
|
|
},
|
|
system_clipboard = {
|
|
sync_with_ring = true,
|
|
},
|
|
preserve_cursor_position = {
|
|
enabled = true,
|
|
},
|
|
})
|
|
|
|
require("telescope").load_extension("yank_history")
|
|
|
|
require'nvim-treesitter.configs'.setup {
|
|
-- ensure_installed = { "lua", "vim", "help" },
|
|
sync_install = false,
|
|
auto_install = false,
|
|
|
|
|
|
highlight = {
|
|
enable = true,
|
|
|
|
disable = function(lang, buf)
|
|
local max_filesize = 100 * 1024 -- 100 KB
|
|
local ok, stats = pcall(vim.loop.fs_stat, vim.api.nvim_buf_get_name(buf))
|
|
if ok and stats and stats.size > max_filesize then
|
|
return true
|
|
end
|
|
end,
|
|
|
|
additional_vim_regex_highlighting = false,
|
|
},
|
|
}
|
|
|
|
require('lualine').setup({
|
|
options = {
|
|
icons_enabled = true,
|
|
theme = 'Tomorrow',
|
|
component_separators = { left = '', right = ''},
|
|
section_separators = { left = '', right = ''},
|
|
disabled_filetypes = {
|
|
statusline = {},
|
|
winbar = {},
|
|
},
|
|
ignore_focus = {},
|
|
always_divide_middle = true,
|
|
globalstatus = false,
|
|
refresh = {
|
|
statusline = 1000,
|
|
tabline = 1000,
|
|
winbar = 1000,
|
|
}
|
|
},
|
|
sections = {
|
|
lualine_a = {'mode'},
|
|
lualine_b = {'branch', 'diff', 'diagnostics'},
|
|
lualine_c = {'filename'},
|
|
lualine_x = {'encoding', 'fileformat', 'filetype'},
|
|
lualine_y = {'progress'},
|
|
lualine_z = {'location'}
|
|
},
|
|
inactive_sections = {
|
|
lualine_a = {},
|
|
lualine_b = {},
|
|
lualine_c = {'filename'},
|
|
lualine_x = {'location'},
|
|
lualine_y = {},
|
|
lualine_z = {}
|
|
},
|
|
tabline = {},
|
|
winbar = {},
|
|
inactive_winbar = {},
|
|
extensions = {}
|
|
})
|