Files
dotfiles/nvim/dot-config/nvim/init.lua
2025-05-26 19:07:43 +02:00

58 lines
1.2 KiB
Lua

-- Basic vim config stuff
require("keymaps")
require("options")
require("autocmds")
-- Install lazy package manager
local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
if not vim.loop.fs_stat(lazypath) then
vim.fn.system({
"git",
"clone",
"--filter=blob:none",
"https://github.com/folke/lazy.nvim.git",
"--branch=stable", -- latest stable release
lazypath,
})
end
vim.opt.rtp:prepend(lazypath)
require("lazy").setup({
{ import = "themes" },
{ import = "plugins" },
}, {
install = {
colorscheme = {
"gruvbox",
},
},
rocks = {
enabled = false,
},
ui = {
border = require("symbols.window").border,
backdrop = 100,
},
})
local lsp = require("tools.lsp")
for _, tool in pairs(lsp) do
if type(tool) == "table" then
local name = tool[1]
-- Apply additional config if specified
local config = tool[2]
if config ~= nil then
vim.lsp.config(name, config)
end
-- System LSP are not managed by mason and need to be enabled manually
if
(type(tool.system) == "boolean" and tool.system and vim.fn.executable(name) > 0)
or (type(tool.system) == "string" and vim.fn.executable(tool.system) > 0)
then
vim.lsp.enable(name)
end
end
end