dotfiles/config/nvim/lua/fschauen/init.lua

91 lines
1.9 KiB
Lua

local M = {}
P = function(v)
print(vim.inspect(v))
return v
end
R = function(module)
require('plenary.reload').reload_module(module)
return require(module)
end
local bootstrap_lazy = function(path)
if not vim.loop.fs_stat(path) then
vim.fn.system {
'git',
'clone',
'--filter=blob:none',
'--branch=stable',
'https://github.com/folke/lazy.nvim.git',
path,
}
end
vim.opt.rtp:prepend(path)
return vim.F.npcall(require, 'lazy')
end
local setup_plugins = function()
local lazy = bootstrap_lazy(vim.fn.stdpath('data') .. '/lazy/lazy.nvim')
if not lazy then
vim.notify('Lazy not installed and failed to bootstrap!', vim.log.levels.WARN)
return
end
lazy.setup {
spec = 'fschauen.plugins',
-- defaults = {
-- lazy = true,
-- },
dev = {
path = '~/Projects/nvim-plugins',
fallback = true,
},
ui = {
border = 'rounded',
title = ' Lazy ',
},
performance = {
rtp = {
disabled_plugins = {
'gzip',
'matchit',
'matchparen',
'netrwPlugin',
'tarPlugin',
'tohtml',
'tutor',
'zipPlugin',
},
},
},
}
end
M.setup = function()
require('fschauen.options').setup()
require('fschauen.keymap').setup()
require('fschauen.diagnostic').setup()
require('fschauen.autocmd').setup()
vim.filetype.add {
pattern = {
['${HOME}/.ssh/config.d/.*'] = 'sshconfig',
['.*/ssh/config'] = 'sshconfig',
['.*/git/config'] = 'gitconfig',
['.*config/zsh/.*'] = 'zsh',
}
}
setup_plugins()
local colorscheme = 'gruvbox'
vim.cmd('silent! colorscheme ' .. colorscheme)
if vim.v.errmsg ~= '' then
vim.notify(('Colorscheme %s not found!'):format(colorscheme), vim.log.levels.WARN)
end
end
return M