-- init.lua -- Minimal bootstrap: leader keys → options → lazy.nvim → plugins -- All configuration lives in lua/config/ and lua/plugins/ -- Leader keys must be set before lazy loads any plugin vim.g.mapleader = ' ' vim.g.maplocalleader = ' ' vim.g.have_nerd_font = false -- Core config (options, keymaps, autocommands) require 'config.options' require 'config.keymaps' require 'config.autocmds' -- Bootstrap lazy.nvim local lazypath = vim.fn.stdpath 'data' .. '/lazy/lazy.nvim' if not (vim.uv or vim.loop).fs_stat(lazypath) then local out = vim.fn.system { 'git', 'clone', '--filter=blob:none', '--branch=stable', 'https://github.com/folke/lazy.nvim.git', lazypath, } if vim.v.shell_error ~= 0 then error('Error cloning lazy.nvim:\n' .. out) end end vim.opt.rtp:prepend(lazypath) -- Load all plugin specs from lua/plugins/*.lua and lua/plugins/extras/*.lua require('lazy').setup({ { import = 'plugins' }, }, { ui = { icons = vim.g.have_nerd_font and {} or { cmd = '⌘', config = '🛠', event = '📅', ft = '📂', init = '⚙', keys = '🗝', plugin = '🔌', runtime = '💻', require = '🌙', source = '📄', start = '🚀', task = '📌', lazy = '💤 ', }, }, }) -- vim: ts=2 sts=2 sw=2 et