summaryrefslogtreecommitdiff
path: root/lua/lvim/core/project.lua
diff options
context:
space:
mode:
Diffstat (limited to 'lua/lvim/core/project.lua')
-rw-r--r--lua/lvim/core/project.lua88
1 files changed, 42 insertions, 46 deletions
diff --git a/lua/lvim/core/project.lua b/lua/lvim/core/project.lua
index 938ec6d9..e5d69085 100644
--- a/lua/lvim/core/project.lua
+++ b/lua/lvim/core/project.lua
@@ -1,53 +1,49 @@
local M = {}
function M.config()
- local config = {
- opts = {
- ---@usage set to true to disable setting the current-woriking directory
- --- Manual mode doesn't automatically change your root directory, so you have
- --- the option to manually do so using `:ProjectRoot` command.
- manual_mode = false,
-
- ---@usage Methods of detecting the root directory
- --- Allowed values: **"lsp"** uses the native neovim lsp
- --- **"pattern"** uses vim-rooter like glob pattern matching. Here
- --- order matters: if one is not detected, the other is used as fallback. You
- --- can also delete or rearangne the detection methods.
- -- detection_methods = { "lsp", "pattern" }, -- NOTE: lsp detection will get annoying with multiple langs in one project
- detection_methods = { "pattern" },
-
- -- All the patterns used to detect root dir, when **"pattern"** is in
- -- detection_methods
- patterns = { ".git", "_darcs", ".hg", ".bzr", ".svn", "Makefile", "package.json", "pom.xml" },
-
- -- Table of lsp clients to ignore by name
- -- eg: { "efm", ... }
- ignore_lsp = {},
-
- -- Don't calculate root dir on specific directories
- -- Ex: { "~/.cargo/*", ... }
- exclude_dirs = {},
-
- -- Show hidden files in telescope
- show_hidden = false,
-
- -- When set to false, you will get a message when project.nvim changes your
- -- directory.
- silent_chdir = true,
-
- -- What scope to change the directory, valid options are
- -- * global (default)
- -- * tab
- -- * win
- scope_chdir = "global",
-
- ---@usage path to store the project history for use in telescope
- datapath = get_cache_dir(),
- },
+ lvim.builtin.project.opts = {
+ ---@usage set to true to disable setting the current-woriking directory
+ --- Manual mode doesn't automatically change your root directory, so you have
+ --- the option to manually do so using `:ProjectRoot` command.
+ manual_mode = false,
+
+ ---@usage Methods of detecting the root directory
+ --- Allowed values: **"lsp"** uses the native neovim lsp
+ --- **"pattern"** uses vim-rooter like glob pattern matching. Here
+ --- order matters: if one is not detected, the other is used as fallback. You
+ --- can also delete or rearangne the detection methods.
+ -- detection_methods = { "lsp", "pattern" }, -- NOTE: lsp detection will get annoying with multiple langs in one project
+ detection_methods = { "pattern" },
+
+ -- All the patterns used to detect root dir, when **"pattern"** is in
+ -- detection_methods
+ patterns = { ".git", "_darcs", ".hg", ".bzr", ".svn", "Makefile", "package.json", "pom.xml" },
+
+ -- Table of lsp clients to ignore by name
+ -- eg: { "efm", ... }
+ ignore_lsp = {},
+
+ -- Don't calculate root dir on specific directories
+ -- Ex: { "~/.cargo/*", ... }
+ exclude_dirs = {},
+
+ -- Show hidden files in telescope
+ show_hidden = false,
+
+ -- When set to false, you will get a message when project.nvim changes your
+ -- directory.
+ silent_chdir = true,
+
+ -- What scope to change the directory, valid options are
+ -- * global (default)
+ -- * tab
+ -- * win
+ scope_chdir = "global",
+
+ ---@usage path to store the project history for use in telescope
+ datapath = get_cache_dir(),
}
- ---@cast config +LvimBuiltin
- require("lvim.core.builtins").extend_defaults(config)
- lvim.builtin.project = config
+ lvim.builtin.project = require("lvim.core.builtins").add_completion "project"
end
function M.setup()