36cb57ecce
* tree-wide: Format files ugh why do people don't push formatted stuff * mappings|init: Move init mappings to a function, only call when required | Show err message for init because mappings.lua is called from multiple places, so there should't be any code that executes without calling a specific function show error message when something fails in init.lua makes no sense to not rearrange plugin functions alphabetically, but keep misc at top * feat: Do not depend on user config | Fix merging of configs because it is a user config, so our config shoudn't break even we if dont have it use our own table merge function move loading config to a function use a global variable to store the config, so no need to call the table function everytime * Add NvChadUpdate command and shortcut for it map leader+uu to it summary of what it does: first ask the user for confirmation and tell that the updater is gonna run git reset --hard in config repo and chadrc will be restored take backup of chadrc in a lua string and locally in a file with chadrc.bak.(random numbers) git reset on config dir and git pull whether success or error, restore the chadrc file if restore fails, then print backup file path for more deep understanding, read the comments in utils.lua * NvChadUpdater: Make update repo and url configurable | Improvr logging
150 lines
3.4 KiB
Lua
150 lines
3.4 KiB
Lua
-- IMPORTANT NOTE : This is default config, so dont change anything here. (check chadrc.lua instead)
|
|
|
|
local M = {}
|
|
|
|
M.ui = {
|
|
theme = "onedark",
|
|
-- for theme toggle
|
|
fav_themes = {
|
|
"onedark",
|
|
"gruvchad",
|
|
},
|
|
theme_toggler = false,
|
|
hidden_statusline = {
|
|
-- these are filetypes, not pattern matched
|
|
"NvimTree",
|
|
"terminal",
|
|
},
|
|
statusline_style = "default", -- round , slant , block
|
|
}
|
|
|
|
M.options = {
|
|
permanent_undo = true,
|
|
ruler = false,
|
|
hidden = true,
|
|
ignorecase = true,
|
|
mouse = "a",
|
|
cmdheight = 1,
|
|
updatetime = 250,
|
|
timeoutlen = 400,
|
|
clipboard = "unnamedplus",
|
|
number = true,
|
|
relativenumber = false,
|
|
numberwidth = 2,
|
|
expandtab = true,
|
|
shiftwidth = 2,
|
|
smartindent = true,
|
|
mapleader = " ",
|
|
autosave = false,
|
|
enable_insertNav = true, -- navigation in insertmode
|
|
-- used for updater
|
|
update_url = "https://github.com/NvChad/NvChad",
|
|
update_branch = "main",
|
|
}
|
|
|
|
-- enable and disable plugins (false for disable)
|
|
M.plugin_status = {
|
|
-- UI
|
|
nvim_bufferline = true,
|
|
galaxyline = true,
|
|
nvim_colorizer = true,
|
|
dashboard_nvim = true,
|
|
blankline = true,
|
|
truezen_nvim = true,
|
|
better_esc = true,
|
|
-- lsp stuff
|
|
lspkind = true,
|
|
lspsignature = true,
|
|
-- git stuff
|
|
gitsigns = true,
|
|
vim_fugitive = true,
|
|
-- misc
|
|
neoformat = true,
|
|
vim_matchup = true,
|
|
autosave_nvim = true,
|
|
nvim_comment = true,
|
|
neoscroll_nvim = true,
|
|
telescope_media = true,
|
|
cheatsheet = true,
|
|
}
|
|
|
|
-- make sure you dont use same keys twice
|
|
M.mappings = {
|
|
-- plugin specific
|
|
truezen = {
|
|
ataraxisMode = "<leader>zz",
|
|
minimalisticmode = "<leader>zm",
|
|
focusmode = "<leader>zf",
|
|
},
|
|
comment_nvim = {
|
|
comment_toggle = "<leader>/",
|
|
},
|
|
nvimtree = {
|
|
treetoggle = "<C-n>", -- file manager
|
|
},
|
|
neoformat = {
|
|
format = "<leader>fm",
|
|
},
|
|
dashboard = {
|
|
open = "<leader>db",
|
|
newfile = "<leader>fn",
|
|
bookmarks = "<leader>bm",
|
|
sessionload = "<leader>l",
|
|
sessionsave = "<leader>s",
|
|
},
|
|
telescope = {
|
|
live_grep = "<leader>fw",
|
|
git_status = "<leader>gt",
|
|
git_commits = "<leader>cm",
|
|
find_files = "<leader>ff",
|
|
buffers = "<leader>fb",
|
|
help_tags = "<leader>fh",
|
|
oldfiles = "<leader>fo",
|
|
themes = "<leader>th",
|
|
},
|
|
telescope_media = {
|
|
media_files = "<leader>fp",
|
|
},
|
|
chadsheet = {
|
|
default_keys = "<leader>dk",
|
|
user_keys = "<leader>uk",
|
|
},
|
|
bufferline = {
|
|
new_buffer = "<S-t>",
|
|
newtab = "<C-t>b",
|
|
cycleNext = "<TAB>", -- next buffer
|
|
cyclePrev = "<S-Tab>", -- previous buffer
|
|
},
|
|
fugitive = {
|
|
Git = "<leader>gs",
|
|
diffget_2 = "<leader>gh",
|
|
diffget_3 = "<leader>gl",
|
|
git_blame = "<leader>gb",
|
|
},
|
|
toggleterm = {
|
|
toggle_window = "<leader>w",
|
|
toggle_vert = "<leader>v",
|
|
toggle_hori = "<leader>h",
|
|
hide_term = "JK",
|
|
},
|
|
-- navigation in insert mode
|
|
insert_nav = {
|
|
forward = "<C-l>",
|
|
backward = "<C-h>",
|
|
top_of_line = "<C-a>",
|
|
end_of_line = "<C-e>",
|
|
prev_line = "<C-j>",
|
|
next_line = "<C-k>",
|
|
},
|
|
-- non plugin
|
|
misc = {
|
|
esc_Termmode = "jk", -- get out of terminal mode
|
|
close_buffer = "<S-x>", -- close current focused buffer
|
|
copywhole_file = "<C-a>",
|
|
toggle_linenr = "<leader>n", -- show or hide line number
|
|
theme_toggle = "<leader>x",
|
|
update_nvchad = "<leader>uu",
|
|
},
|
|
}
|
|
|
|
return M
|