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})