main
1-- LazyVim configuration
2-- Bootstrap lazy.nvim
3local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim"
4if not (vim.uv or vim.loop).fs_stat(lazypath) then
5 local lazyrepo = "https://github.com/folke/lazy.nvim.git"
6 local out = vim.fn.system({ "git", "clone", "--filter=blob:none", "--branch=stable", lazyrepo, lazypath })
7 if vim.v.shell_error ~= 0 then
8 vim.api.nvim_echo({
9 { "Failed to clone lazy.nvim:\n", "ErrorMsg" },
10 { out, "WarningMsg" },
11 { "\nPress any key to exit..." },
12 }, true, {})
13 vim.fn.getchar()
14 os.exit(1)
15 end
16end
17vim.opt.rtp:prepend(lazypath)
18
19-- Make sure to setup `mapleader` and `maplocalleader` before
20-- loading lazy.nvim so that mappings are correct.
21vim.g.mapleader = " "
22vim.g.maplocalleader = ","
23
24-- Setup lazy.nvim
25require("lazy").setup({
26 spec = {
27 -- Import LazyVim and its plugins
28 { "LazyVim/LazyVim", import = "lazyvim.plugins" },
29 -- Import extras
30 { import = "lazyvim.plugins.extras.lang.go" },
31 { import = "lazyvim.plugins.extras.lang.python" },
32 { import = "lazyvim.plugins.extras.lang.nix" },
33 { import = "lazyvim.plugins.extras.lang.json" },
34 { import = "lazyvim.plugins.extras.lang.yaml" },
35 { import = "lazyvim.plugins.extras.lang.toml" },
36 { import = "lazyvim.plugins.extras.lang.markdown" },
37 { import = "lazyvim.plugins.extras.editor.mini-files" },
38 { import = "lazyvim.plugins.extras.coding.mini-surround" },
39 -- Import custom plugins
40 { import = "plugins" },
41 },
42 defaults = {
43 lazy = false,
44 version = false,
45 },
46 install = { colorscheme = { "tokyonight", "habamax" } },
47 checker = {
48 enabled = true,
49 notify = false,
50 },
51 performance = {
52 rtp = {
53 disabled_plugins = {
54 "gzip",
55 "tarPlugin",
56 "tohtml",
57 "tutor",
58 "zipPlugin",
59 },
60 },
61 },
62})