diff options
author | LostNeophyte <[email protected]> | 2023-01-10 21:18:17 +0100 |
---|---|---|
committer | GitHub <[email protected]> | 2023-01-10 21:18:17 +0100 |
commit | ccb80e41ee929505c97e682749c74f8db4609d61 (patch) | |
tree | 7fa9c9e025ce17e9c41563940b1f39fa3357d67c /lua/lvim/bootstrap.lua | |
parent | fc6873809934917b470bff1b072171879899a36b (diff) |
refactor: migrate to lazy.nvim (#3647)
* refactor: convert plugins spec to lazy
* refactor(lazy): remove impatient
* fix(telescope): no more errors if theme is nil
* refactor(lazy): use lazy in plugin_loader
* refactor(lazy): pin plugins with packer's snapshot
* fix: add plugins to rtp before config:init
* fix: fs_stat nil check
* feat: lazy cache
* feat(lazy): reloading
* refactor(lazy): plugin-loader functions
* feat(lazy): cache reset
* refactor: set runtimepath manually
* fix: runtimepath
* refactor(rtp)
* refactor(lazy): packer -> lazy in various places
* fix(lazy): disable tree-sitter ensure installed
* refactor(lazy): restore order to bootstrap
* refactor(lazy): remove unused impatient profiler
* small fixes
* `lvim.plugins` deprecation handling
* fix: deprecation of `requires` in plugin specs
* feat: core plugins pinning
* refactor(lazy): plugin loader tests
* refactor(lazy): use lazy in scripts
* refactor(lazy): which-key keybinds
* chore: format
* fix: installer
* fix: first time setup
* feat: changes required for packaging
commit 951ac2b7c01b5200b973660c967852d1706cce28
Author: LostNeophyte <[email protected]>
Date: Wed Dec 28 13:49:44 2022 +0100
fix: clean folder before copying plugins
commit 64e9afa44b8e528ba527e0510d0d8c2d2237a095
Author: LostNeophyte <[email protected]>
Date: Wed Dec 28 13:35:41 2022 +0100
feat: copy core plugins on first run
commit 2d8e72090c7624f68c09a9aa6582223373a810c1
Author: LostNeophyte <[email protected]>
Date: Wed Dec 28 13:11:22 2022 +0100
feat(utils): fs_copy
commit 85c1f025a6ba13183e85141f75f60e2eefc77bb5
Author: LostNeophyte <[email protected]>
Date: Wed Dec 28 13:04:38 2022 +0100
fix: copy correct example config
* fix: packer specs deprecation handling
* fix: plugin specs deprecation
* feat: pin lazy's version
* fix: remove plugins form rtp before loading lazy
* fix: plugin-loader test
* feat(lazy): add keymappings for profile, log, and debug (#3665)
* feat(lazy): Add keymappings for profile, log, and debug
* feat(lazy): Add keymap for cleaning
* chore: format
* pref: lazy load many plugins
Co-authored-by: Uzair Aftab <[email protected]>
* fix: bootstrap correct version of lazy
* fix: also use CmdLineEnter event for cmp
* fix: don't use lazy's modules before it's set up
* perf: (hack) enable lazy's cache before loading lazy
* fix: plugins.lua
* fix: plugins bump script
* chore: remove debug print
* feat: add rounded border for `:Lazy`
* fix: bufferline flashing
* fix: don't close lazy on startup
* fix: load breadcrumbs on startup
* fix: don't lazy load bufferline
* chore: bump lazy's version
* fix: remove site from rtp (fixes treesitter issues)
* revert default config copying changes
* fix(bootstrap): actually remove plugins dir on windows
* chore: bump lazy's version
* chore: bump lazy's version
Co-authored-by: kylo252 <[email protected]>
Co-authored-by: Uzair Aftab <[email protected]>
Co-authored-by: Uzair Aftab <[email protected]>
Co-authored-by: opalmay <[email protected]>
Diffstat (limited to 'lua/lvim/bootstrap.lua')
-rw-r--r-- | lua/lvim/bootstrap.lua | 27 |
1 files changed, 11 insertions, 16 deletions
diff --git a/lua/lvim/bootstrap.lua b/lua/lvim/bootstrap.lua index 5385e8a8..a2a97cea 100644 --- a/lua/lvim/bootstrap.lua +++ b/lua/lvim/bootstrap.lua @@ -3,6 +3,7 @@ local M = {} if vim.fn.has "nvim-0.8" ~= 1 then vim.notify("Please upgrade your Neovim base installation. Lunarvim requires v0.8+", vim.log.levels.WARN) vim.wait(5000, function() + ---@diagnostic disable-next-line: redundant-return-value return false end) vim.cmd "cquit" @@ -23,7 +24,7 @@ _G.require_safe = require("lvim.utils.modules").require_safe _G.reload = require("lvim.utils.modules").reload ---Get the full path to `$LUNARVIM_RUNTIME_DIR` ----@return string +---@return string|nil function _G.get_runtime_dir() local lvim_runtime_dir = os.getenv "LUNARVIM_RUNTIME_DIR" if not lvim_runtime_dir then @@ -34,7 +35,7 @@ function _G.get_runtime_dir() end ---Get the full path to `$LUNARVIM_CONFIG_DIR` ----@return string +---@return string|nil function _G.get_config_dir() local lvim_config_dir = os.getenv "LUNARVIM_CONFIG_DIR" if not lvim_config_dir then @@ -44,7 +45,7 @@ function _G.get_config_dir() end ---Get the full path to `$LUNARVIM_CACHE_DIR` ----@return string +---@return string|nil function _G.get_cache_dir() local lvim_cache_dir = os.getenv "LUNARVIM_CACHE_DIR" if not lvim_cache_dir then @@ -60,11 +61,11 @@ function M:init(base_dir) self.config_dir = get_config_dir() self.cache_dir = get_cache_dir() self.pack_dir = join_paths(self.runtime_dir, "site", "pack") - self.packer_install_dir = join_paths(self.runtime_dir, "site", "pack", "packer", "start", "packer.nvim") - self.packer_cache_path = join_paths(self.config_dir, "plugin", "packer_compiled.lua") + self.lazy_install_dir = join_paths(self.pack_dir, "lazy", "opt", "lazy.nvim") ---@meta overridden to use LUNARVIM_CACHE_DIR instead, since a lot of plugins call this function internally ---NOTE: changes to "data" are currently unstable, see #2507 + ---@diagnostic disable-next-line: duplicate-set-field vim.fn.stdpath = function(what) if what == "cache" then return _G.get_cache_dir() @@ -79,10 +80,9 @@ function M:init(base_dir) end if os.getenv "LUNARVIM_RUNTIME_DIR" then - -- vim.opt.rtp:append(os.getenv "LUNARVIM_RUNTIME_DIR" .. path_sep .. "lvim") vim.opt.rtp:remove(join_paths(vim.call("stdpath", "data"), "site")) vim.opt.rtp:remove(join_paths(vim.call("stdpath", "data"), "site", "after")) - vim.opt.rtp:prepend(join_paths(self.runtime_dir, "site")) + -- vim.opt.rtp:prepend(join_paths(self.runtime_dir, "site")) vim.opt.rtp:append(join_paths(self.runtime_dir, "lvim", "after")) vim.opt.rtp:append(join_paths(self.runtime_dir, "site", "after")) @@ -90,22 +90,17 @@ function M:init(base_dir) vim.opt.rtp:remove(join_paths(vim.call("stdpath", "config"), "after")) vim.opt.rtp:prepend(self.config_dir) vim.opt.rtp:append(join_paths(self.config_dir, "after")) - -- TODO: we need something like this: vim.opt.packpath = vim.opt.rtp - - vim.cmd [[let &packpath = &runtimepath]] - end - if not vim.env.LVIM_TEST_ENV then - require "lvim.impatient" + vim.opt.packpath = vim.opt.rtp:get() end - require("lvim.config"):init() - require("lvim.plugin-loader").init { package_root = self.pack_dir, - install_path = self.packer_install_dir, + install_path = self.lazy_install_dir, } + require("lvim.config"):init() + require("lvim.core.mason").bootstrap() return self |