add an option for lsp_semantic_tokens hl groups | fix (#1907)

also tiden up some stuff
This commit is contained in:
siduck 2023-04-10 06:04:37 +05:30
parent b5cf9fde0e
commit f873d3cc50
3 changed files with 27 additions and 22 deletions

View file

@ -50,11 +50,13 @@ M.gen_chadrc_template = function()
local path = vim.fn.stdpath "config" .. "/lua/custom/" local path = vim.fn.stdpath "config" .. "/lua/custom/"
local input = vim.fn.input "Do you want to install example custom config? (y/N) : " local input = vim.fn.input "Do you want to install example custom config? (y/N) : "
-- clone example_config repo
if input == "y" then if input == "y" then
M.echo "cloning example custom config repo ..." M.echo "cloning example custom config repo ..."
vim.fn.system { "git", "clone", "--depth", "1", "https://github.com/NvChad/example_config", path } vim.fn.system { "git", "clone", "--depth", "1", "https://github.com/NvChad/example_config", path }
vim.fn.delete(path .. ".git", "rf") vim.fn.delete(path .. ".git", "rf")
else else
-- use very minimal chadrc
vim.fn.mkdir(path, "p") vim.fn.mkdir(path, "p")
local file = io.open(path .. "chadrc.lua", "w") local file = io.open(path .. "chadrc.lua", "w")

View file

@ -18,6 +18,7 @@ M.ui = {
theme_toggle = { "onedark", "one_light" }, theme_toggle = { "onedark", "one_light" },
theme = "onedark", -- default theme theme = "onedark", -- default theme
transparency = false, transparency = false,
lsp_semantic_tokens = false, -- needs nvim v0.9, just adds highlight groups for lsp semantic tokens
-- cmp themeing -- cmp themeing
cmp = { cmp = {

View file

@ -52,37 +52,39 @@ M.remove_disabled_keys = function(chadrc_mappings, default_mappings)
end end
M.load_mappings = function(section, mapping_opt) M.load_mappings = function(section, mapping_opt)
local function set_section_map(section_values) vim.schedule(function()
if section_values.plugin then local function set_section_map(section_values)
return if section_values.plugin then
end return
end
section_values.plugin = nil section_values.plugin = nil
for mode, mode_values in pairs(section_values) do for mode, mode_values in pairs(section_values) do
local default_opts = merge_tb("force", { mode = mode }, mapping_opt or {}) local default_opts = merge_tb("force", { mode = mode }, mapping_opt or {})
for keybind, mapping_info in pairs(mode_values) do for keybind, mapping_info in pairs(mode_values) do
-- merge default + user opts -- merge default + user opts
local opts = merge_tb("force", default_opts, mapping_info.opts or {}) local opts = merge_tb("force", default_opts, mapping_info.opts or {})
mapping_info.opts, opts.mode = nil, nil mapping_info.opts, opts.mode = nil, nil
opts.desc = mapping_info[2] opts.desc = mapping_info[2]
vim.keymap.set(mode, keybind, mapping_info[1], opts) vim.keymap.set(mode, keybind, mapping_info[1], opts)
end
end end
end end
end
local mappings = require("core.utils").load_config().mappings local mappings = require("core.utils").load_config().mappings
if type(section) == "string" then if type(section) == "string" then
mappings[section]["plugin"] = nil mappings[section]["plugin"] = nil
mappings = { mappings[section] } mappings = { mappings[section] }
end end
for _, sect in pairs(mappings) do for _, sect in pairs(mappings) do
set_section_map(sect) set_section_map(sect)
end end
end)
end end
M.lazy_load = function(plugin) M.lazy_load = function(plugin)