chore: stylua formatting update (#261)
* addded stylua config file * chore: formatted with stylua
This commit is contained in:
		
							parent
							
								
									4abf43aa99
								
							
						
					
					
						commit
						86903ab982
					
				
					 36 changed files with 1955 additions and 1987 deletions
				
			
		
							
								
								
									
										6
									
								
								.stylua.toml
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										6
									
								
								.stylua.toml
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,6 @@ | |||
| column_width = 120 | ||||
| line_endings = "Unix" | ||||
| indent_type = "Spaces" | ||||
| indent_width = 3 | ||||
| quote_style = "AutoPreferDouble" | ||||
| no_call_parentheses = true | ||||
							
								
								
									
										6
									
								
								init.lua
									
										
									
									
									
								
							
							
						
						
									
										6
									
								
								init.lua
									
										
									
									
									
								
							|  | @ -1,8 +1,8 @@ | |||
| local chad_modules = { | ||||
|     "options", | ||||
|     "mappings" | ||||
|    "options", | ||||
|    "mappings", | ||||
| } | ||||
| 
 | ||||
| for i = 1, #chad_modules, 1 do | ||||
|     pcall(require, chad_modules[i]) | ||||
|    pcall(require, chad_modules[i]) | ||||
| end | ||||
|  |  | |||
							
								
								
									
										246
									
								
								lua/chadrc.lua
									
										
									
									
									
								
							
							
						
						
									
										246
									
								
								lua/chadrc.lua
									
										
									
									
									
								
							|  | @ -1,127 +1,127 @@ | |||
| local M = { | ||||
|     ui = { | ||||
|         theme = "onedark", | ||||
|         fav_themes = {"onedark", "gruvchad"}, -- for theme toggle | ||||
|         theme_toggler = false, | ||||
|         hidden_statusline = { | ||||
|             -- these are filetypes, not pattern matched | ||||
|             "NvimTree", | ||||
|             "toggleterm" | ||||
|         } | ||||
|     }, | ||||
|     options = { | ||||
|         permanent_undo = true, | ||||
|         ruler = false, | ||||
|         hidden = true, | ||||
|         ignorecase = true, | ||||
|         mouse = "a", | ||||
|         cmdheight = 1, | ||||
|         updatetime = 250, | ||||
|         timeoutlen = 400, | ||||
|         clipboard = "unnamedplus", | ||||
|         number = true, | ||||
|         numberwidth = 2, | ||||
|         expandtab = true, | ||||
|         shiftwidth = 2, | ||||
|         smartindent = true, | ||||
|         mapleader = " ", | ||||
|         autosave = false, | ||||
|         enable_insertNav = true -- navigation in insertmode | ||||
|     }, | ||||
|     -- enable and disable plugins (true for disable) | ||||
|     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 | ||||
|     }, | ||||
|     -- make sure you dont use same keys twice | ||||
|     mappings = { | ||||
|         truezen = { | ||||
|             ataraxisMode = "<leader>zz", | ||||
|             minimalisticmode = "<leader>zm", | ||||
|             focusmode = "<leader>zf" | ||||
|         }, | ||||
|         comment_nvim = { | ||||
|             comment_toggle = "<leader>/" | ||||
|         }, | ||||
|         nvimtree = { | ||||
|             treetoggle = "<C-n>" | ||||
|         }, | ||||
|         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" | ||||
|         }, | ||||
|         bufferline = { | ||||
|             new_buffer = "<S-t>", | ||||
|             newtab = "<C-t>b", | ||||
|             close = "<S-x>", | ||||
|             cycleNext = "<TAB>", | ||||
|             cyclePrev = "<S-Tab>" | ||||
|         }, | ||||
|         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" | ||||
|         }, | ||||
|         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>" | ||||
|         }, | ||||
|         misc = { | ||||
|             esc_Termmode = "jk", | ||||
|             copywhole_file = "<C-a>", | ||||
|             toggle_linenr = "<leader>n", | ||||
|             theme_toggle = "<leader>x" | ||||
|         } | ||||
|     } | ||||
|    ui = { | ||||
|       theme = "onedark", | ||||
|       fav_themes = { "onedark", "gruvchad" }, -- for theme toggle | ||||
|       theme_toggler = false, | ||||
|       hidden_statusline = { | ||||
|          -- these are filetypes, not pattern matched | ||||
|          "NvimTree", | ||||
|          "toggleterm", | ||||
|       }, | ||||
|    }, | ||||
|    options = { | ||||
|       permanent_undo = true, | ||||
|       ruler = false, | ||||
|       hidden = true, | ||||
|       ignorecase = true, | ||||
|       mouse = "a", | ||||
|       cmdheight = 1, | ||||
|       updatetime = 250, | ||||
|       timeoutlen = 400, | ||||
|       clipboard = "unnamedplus", | ||||
|       number = true, | ||||
|       numberwidth = 2, | ||||
|       expandtab = true, | ||||
|       shiftwidth = 2, | ||||
|       smartindent = true, | ||||
|       mapleader = " ", | ||||
|       autosave = false, | ||||
|       enable_insertNav = true, -- navigation in insertmode | ||||
|    }, | ||||
|    -- enable and disable plugins (true for disable) | ||||
|    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, | ||||
|    }, | ||||
|    -- make sure you dont use same keys twice | ||||
|    mappings = { | ||||
|       truezen = { | ||||
|          ataraxisMode = "<leader>zz", | ||||
|          minimalisticmode = "<leader>zm", | ||||
|          focusmode = "<leader>zf", | ||||
|       }, | ||||
|       comment_nvim = { | ||||
|          comment_toggle = "<leader>/", | ||||
|       }, | ||||
|       nvimtree = { | ||||
|          treetoggle = "<C-n>", | ||||
|       }, | ||||
|       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", | ||||
|       }, | ||||
|       bufferline = { | ||||
|          new_buffer = "<S-t>", | ||||
|          newtab = "<C-t>b", | ||||
|          close = "<S-x>", | ||||
|          cycleNext = "<TAB>", | ||||
|          cyclePrev = "<S-Tab>", | ||||
|       }, | ||||
|       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", | ||||
|       }, | ||||
|       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>", | ||||
|       }, | ||||
|       misc = { | ||||
|          esc_Termmode = "jk", | ||||
|          copywhole_file = "<C-a>", | ||||
|          toggle_linenr = "<leader>n", | ||||
|          theme_toggle = "<leader>x", | ||||
|       }, | ||||
|    }, | ||||
| } | ||||
| 
 | ||||
| return M | ||||
|  |  | |||
|  | @ -25,15 +25,15 @@ local purple = colors.purple | |||
| -- for guifg , bg | ||||
| 
 | ||||
| local function fg(group, color) | ||||
|     cmd("hi " .. group .. " guifg=" .. color) | ||||
|    cmd("hi " .. group .. " guifg=" .. color) | ||||
| end | ||||
| 
 | ||||
| local function bg(group, color) | ||||
|     cmd("hi " .. group .. " guibg=" .. color) | ||||
|    cmd("hi " .. group .. " guibg=" .. color) | ||||
| end | ||||
| 
 | ||||
| local function fg_bg(group, fgcol, bgcol) | ||||
|     cmd("hi " .. group .. " guifg=" .. fgcol .. " guibg=" .. bgcol) | ||||
|    cmd("hi " .. group .. " guifg=" .. fgcol .. " guibg=" .. bgcol) | ||||
| end | ||||
| 
 | ||||
| -- blankline | ||||
|  |  | |||
							
								
								
									
										144
									
								
								lua/mappings.lua
									
										
									
									
									
								
							
							
						
						
									
										144
									
								
								lua/mappings.lua
									
										
									
									
									
								
							|  | @ -5,11 +5,11 @@ local M = {} | |||
| local cmd = vim.cmd | ||||
| 
 | ||||
| local function map(mode, lhs, rhs, opts) | ||||
|     local options = {noremap = true, silent = true} | ||||
|     if opts then | ||||
|         options = vim.tbl_extend("force", options, opts) | ||||
|     end | ||||
|     vim.api.nvim_set_keymap(mode, lhs, rhs, options) | ||||
|    local options = { noremap = true, silent = true } | ||||
|    if opts then | ||||
|       options = vim.tbl_extend("force", options, opts) | ||||
|    end | ||||
|    vim.api.nvim_set_keymap(mode, lhs, rhs, options) | ||||
| end | ||||
| 
 | ||||
| local opt = {} | ||||
|  | @ -30,10 +30,10 @@ map("v", "p", '"_dP', opt) | |||
| -- Allow moving the cursor through wrapped lines with j, k, <Up> and <Down> | ||||
| -- http://www.reddit.com/r/vim/comments/2k4cbr/problem_with_gj_and_gk/ | ||||
| -- empty mode is same as using :map | ||||
| map("", "j", 'v:count ? "j" : "gj"', {expr = true}) | ||||
| map("", "k", 'v:count ? "k" : "gk"', {expr = true}) | ||||
| map("", "<Down>", 'v:count ? "j" : "gj"', {expr = true}) | ||||
| map("", "<Up>", 'v:count ? "k" : "gk"', {expr = true}) | ||||
| map("", "j", 'v:count ? "j" : "gj"', { expr = true }) | ||||
| map("", "k", 'v:count ? "k" : "gk"', { expr = true }) | ||||
| map("", "<Down>", 'v:count ? "j" : "gj"', { expr = true }) | ||||
| map("", "<Up>", 'v:count ? "k" : "gk"', { expr = true }) | ||||
| 
 | ||||
| -- copy whole file content | ||||
| map("n", miscMap.copywhole_file, ":%y+<CR>", opt) | ||||
|  | @ -46,125 +46,125 @@ map("n", miscMap.toggle_linenr, ":set nu!<CR>", opt) | |||
| map("t", miscMap.esc_Termmode, "<C-\\><C-n>", opt) | ||||
| 
 | ||||
| M.toggleterm = function() | ||||
|     local m = user_map.toggleterm | ||||
|    local m = user_map.toggleterm | ||||
| 
 | ||||
|     -- Open terminals | ||||
|     map("n", m.toggle_window, ":lua termW:toggle() <CR>", opt) | ||||
|     map("n", m.toggle_vert, ":lua termV:toggle() <CR>", opt) | ||||
|     map("n", m.toggle_hori, ":lua termH:toggle() <CR>", opt) | ||||
|    -- Open terminals | ||||
|    map("n", m.toggle_window, ":lua termW:toggle() <CR>", opt) | ||||
|    map("n", m.toggle_vert, ":lua termV:toggle() <CR>", opt) | ||||
|    map("n", m.toggle_hori, ":lua termH:toggle() <CR>", opt) | ||||
| 
 | ||||
|     -- toggle(HIDE) a term from within terminal edit mode | ||||
|     map("t", m.hide_term, "<C-\\><C-n> :ToggleTerm <CR>", opt) | ||||
|     map("t", m.hide_term, "<C-\\><C-n> :ToggleTerm <CR>", opt) | ||||
|     map("t", m.hide_term, "<C-\\><C-n> :ToggleTerm <CR>", opt) | ||||
|    -- toggle(HIDE) a term from within terminal edit mode | ||||
|    map("t", m.hide_term, "<C-\\><C-n> :ToggleTerm <CR>", opt) | ||||
|    map("t", m.hide_term, "<C-\\><C-n> :ToggleTerm <CR>", opt) | ||||
|    map("t", m.hide_term, "<C-\\><C-n> :ToggleTerm <CR>", opt) | ||||
| end | ||||
| 
 | ||||
| M.truezen = function() | ||||
|     local m = user_map.truezen | ||||
|    local m = user_map.truezen | ||||
| 
 | ||||
|     map("n", m.ataraxisMode, ":TZAtaraxis<CR>", opt) | ||||
|     map("n", m.minimalisticmode, ":TZMinimalist<CR>", opt) | ||||
|     map("n", m.focusmode, ":TZFocus<CR>", opt) | ||||
|    map("n", m.ataraxisMode, ":TZAtaraxis<CR>", opt) | ||||
|    map("n", m.minimalisticmode, ":TZMinimalist<CR>", opt) | ||||
|    map("n", m.focusmode, ":TZFocus<CR>", opt) | ||||
| end | ||||
| 
 | ||||
| map("n", "<C-s>", ":w <CR>", opt) | ||||
| 
 | ||||
| M.comment_nvim = function() | ||||
|     local m = user_map.comment_nvim.comment_toggle | ||||
|     map("n", m, ":CommentToggle<CR>", opt) | ||||
|     map("v", m, ":CommentToggle<CR>", opt) | ||||
|    local m = user_map.comment_nvim.comment_toggle | ||||
|    map("n", m, ":CommentToggle<CR>", opt) | ||||
|    map("v", m, ":CommentToggle<CR>", opt) | ||||
| end | ||||
| 
 | ||||
| M.nvimtree = function() | ||||
|     local m = user_map.nvimtree.treetoggle | ||||
|    local m = user_map.nvimtree.treetoggle | ||||
| 
 | ||||
|     map("n", m, ":NvimTreeToggle<CR>", opt) | ||||
|    map("n", m, ":NvimTreeToggle<CR>", opt) | ||||
| end | ||||
| 
 | ||||
| M.neoformat = function() | ||||
|     local m = user_map.neoformat.format | ||||
|     map("n", m, ":Neoformat<CR>", opt) | ||||
|    local m = user_map.neoformat.format | ||||
|    map("n", m, ":Neoformat<CR>", opt) | ||||
| end | ||||
| 
 | ||||
| M.dashboard = function() | ||||
|     local m = user_map.dashboard | ||||
|    local m = user_map.dashboard | ||||
| 
 | ||||
|     map("n", m.open, ":Dashboard<CR>", opt) | ||||
|     map("n", m.newfile, ":DashboardNewFile<CR>", opt) | ||||
|     map("n", m.bookmarks, ":DashboardJumpMarks<CR>", opt) | ||||
|     map("n", m.sessionload, ":SessionLoad<CR>", opt) | ||||
|     map("n", m.sessionsave, ":SessionSave<CR>", opt) | ||||
|    map("n", m.open, ":Dashboard<CR>", opt) | ||||
|    map("n", m.newfile, ":DashboardNewFile<CR>", opt) | ||||
|    map("n", m.bookmarks, ":DashboardJumpMarks<CR>", opt) | ||||
|    map("n", m.sessionload, ":SessionLoad<CR>", opt) | ||||
|    map("n", m.sessionsave, ":SessionSave<CR>", opt) | ||||
| end | ||||
| 
 | ||||
| M.telescope = function() | ||||
|     local m = user_map.telescope | ||||
|    local m = user_map.telescope | ||||
| 
 | ||||
|     map("n", m.live_grep, ":Telescope live_grep<CR>", opt) | ||||
|     map("n", m.git_status, ":Telescope git_status <CR>", opt) | ||||
|     map("n", m.git_commits, ":Telescope git_commits <CR>", opt) | ||||
|     map("n", m.find_files, ":Telescope find_files <CR>", opt) | ||||
|     map("n", m.buffers, ":Telescope buffers<CR>", opt) | ||||
|     map("n", m.help_tags, ":Telescope help_tags<CR>", opt) | ||||
|     map("n", m.oldfiles, ":Telescope oldfiles<CR>", opt) | ||||
|     map("n", m.themes, ":Telescope themes<CR>", opt) | ||||
|    map("n", m.live_grep, ":Telescope live_grep<CR>", opt) | ||||
|    map("n", m.git_status, ":Telescope git_status <CR>", opt) | ||||
|    map("n", m.git_commits, ":Telescope git_commits <CR>", opt) | ||||
|    map("n", m.find_files, ":Telescope find_files <CR>", opt) | ||||
|    map("n", m.buffers, ":Telescope buffers<CR>", opt) | ||||
|    map("n", m.help_tags, ":Telescope help_tags<CR>", opt) | ||||
|    map("n", m.oldfiles, ":Telescope oldfiles<CR>", opt) | ||||
|    map("n", m.themes, ":Telescope themes<CR>", opt) | ||||
| end | ||||
| 
 | ||||
| M.telescope_media = function() | ||||
|     local m = user_map.telescope_media | ||||
|     map("n", m.media_files, ":Telescope media_files <CR>", opt) | ||||
|    local m = user_map.telescope_media | ||||
|    map("n", m.media_files, ":Telescope media_files <CR>", opt) | ||||
| end | ||||
| 
 | ||||
| M.bufferline = function() | ||||
|     local m = user_map.bufferline | ||||
|    local m = user_map.bufferline | ||||
| 
 | ||||
|     map("n", m.new_buffer, ":enew<CR>", opt) -- new buffer | ||||
|     map("n", m.newtab, ":tabnew<CR>", opt) -- new tab | ||||
|     map("n", m.close, ":bd!<CR>", opt) -- close  buffer | ||||
|    map("n", m.new_buffer, ":enew<CR>", opt) -- new buffer | ||||
|    map("n", m.newtab, ":tabnew<CR>", opt) -- new tab | ||||
|    map("n", m.close, ":bd!<CR>", opt) -- close  buffer | ||||
| 
 | ||||
|     -- move between tabs | ||||
|    -- move between tabs | ||||
| 
 | ||||
|     map("n", m.cycleNext, ":BufferLineCycleNext<CR>", opt) | ||||
|     map("n", m.cyclePrev, ":BufferLineCyclePrev<CR>", opt) | ||||
|    map("n", m.cycleNext, ":BufferLineCycleNext<CR>", opt) | ||||
|    map("n", m.cyclePrev, ":BufferLineCyclePrev<CR>", opt) | ||||
| end | ||||
| 
 | ||||
| -- use ESC to turn off search highlighting | ||||
| map("n", "<Esc>", ":noh<CR>", opt) | ||||
| 
 | ||||
| -- Packer commands till because we are not loading it at startup | ||||
| cmd("silent! command PackerCompile lua require 'pluginList' require('packer').compile()") | ||||
| cmd("silent! command PackerInstall lua require 'pluginList' require('packer').install()") | ||||
| cmd("silent! command PackerStatus lua require 'pluginList' require('packer').status()") | ||||
| cmd("silent! command PackerSync lua require 'pluginList' require('packer').sync()") | ||||
| cmd("silent! command PackerUpdate lua require 'pluginList' require('packer').update()") | ||||
| cmd "silent! command PackerCompile lua require 'pluginList' require('packer').compile()" | ||||
| cmd "silent! command PackerInstall lua require 'pluginList' require('packer').install()" | ||||
| cmd "silent! command PackerStatus lua require 'pluginList' require('packer').status()" | ||||
| cmd "silent! command PackerSync lua require 'pluginList' require('packer').sync()" | ||||
| cmd "silent! command PackerUpdate lua require 'pluginList' require('packer').update()" | ||||
| 
 | ||||
| M.fugitive = function() | ||||
|     local m = user_map.fugitive | ||||
|    local m = user_map.fugitive | ||||
| 
 | ||||
|     map("n", m.Git, ":Git<CR>", opt) | ||||
|     map("n", m.diffget_2, ":diffget //2<CR>", opt) | ||||
|     map("n", m.diffget_3, ":diffget //3<CR>", opt) | ||||
|     map("n", m.git_blame, ":Git blame<CR>", opt) | ||||
|    map("n", m.Git, ":Git<CR>", opt) | ||||
|    map("n", m.diffget_2, ":diffget //2<CR>", opt) | ||||
|    map("n", m.diffget_3, ":diffget //3<CR>", opt) | ||||
|    map("n", m.git_blame, ":Git blame<CR>", opt) | ||||
| end | ||||
| 
 | ||||
| -- navigation within insert mode | ||||
| local check_insertNav = require("chadrc").options.enable_insertNav | ||||
| 
 | ||||
| if check_insertNav == true then | ||||
|     local m = user_map.insert_nav | ||||
|    local m = user_map.insert_nav | ||||
| 
 | ||||
|     map("i", m.forward, "<Right>", opt) | ||||
|     map("i", m.backward, "<Left>", opt) | ||||
|     map("i", m.top_of_line, "<ESC>^i", opt) | ||||
|     map("i", m.end_of_line, "<End>", opt) | ||||
|     map("i", m.next_line, "<Up>", opt) | ||||
|     map("i", m.prev_line, "<Down>", opt) | ||||
|    map("i", m.forward, "<Right>", opt) | ||||
|    map("i", m.backward, "<Left>", opt) | ||||
|    map("i", m.top_of_line, "<ESC>^i", opt) | ||||
|    map("i", m.end_of_line, "<End>", opt) | ||||
|    map("i", m.next_line, "<Up>", opt) | ||||
|    map("i", m.prev_line, "<Down>", opt) | ||||
| end | ||||
| 
 | ||||
| local theme_toggler = require("chadrc").ui.theme_toggler | ||||
| 
 | ||||
| if theme_toggler == true then | ||||
|     local m = user_map.misc.theme_toggle | ||||
|    local m = user_map.misc.theme_toggle | ||||
| 
 | ||||
|     map("n", m, ":lua require('utils').toggle_theme(require('chadrc').ui.fav_themes)<CR>", opt) | ||||
|    map("n", m, ":lua require('utils').toggle_theme(require('chadrc').ui.fav_themes)<CR>", opt) | ||||
| end | ||||
| return M | ||||
|  |  | |||
|  | @ -2,7 +2,7 @@ local options = require("chadrc").options | |||
| local opt = vim.opt | ||||
| local g = vim.g | ||||
| 
 | ||||
| opt.completeopt = {"menuone", "noselect"} | ||||
| opt.completeopt = { "menuone", "noselect" } | ||||
| opt.undofile = options.permanent_undo | ||||
| opt.ruler = options.ruler | ||||
| opt.hidden = options.hidden | ||||
|  | @ -19,10 +19,10 @@ opt.timeoutlen = options.timeoutlen | |||
| opt.clipboard = options.clipboard | ||||
| 
 | ||||
| -- disable nvim intro | ||||
| opt.shortmess:append("sI") | ||||
| opt.shortmess:append "sI" | ||||
| 
 | ||||
| -- disable tilde on end of buffer: https://github.com/  neovim/neovim/pull/8546#issuecomment-643643758 | ||||
| opt.fillchars = {eob = " "} | ||||
| opt.fillchars = { eob = " " } | ||||
| 
 | ||||
| -- Numbers | ||||
| opt.number = options.number | ||||
|  | @ -36,35 +36,35 @@ opt.smartindent = options.smartindent | |||
| 
 | ||||
| -- go to previous/next line with h,l,left arrow and right arrow | ||||
| -- when cursor reaches end/beginning of line | ||||
| opt.whichwrap:append("<>hl") | ||||
| opt.whichwrap:append "<>hl" | ||||
| 
 | ||||
| g.mapleader = options.mapleader | ||||
| g.auto_save = options.autosave | ||||
| 
 | ||||
| -- disable builtin vim plugins | ||||
| local disabled_built_ins = { | ||||
|     "netrw", | ||||
|     "netrwPlugin", | ||||
|     "netrwSettings", | ||||
|     "netrwFileHandlers", | ||||
|     "gzip", | ||||
|     "zip", | ||||
|     "zipPlugin", | ||||
|     "tar", | ||||
|     "tarPlugin", | ||||
|     "getscript", | ||||
|     "getscriptPlugin", | ||||
|     "vimball", | ||||
|     "vimballPlugin", | ||||
|     "2html_plugin", | ||||
|     "logipat", | ||||
|     "rrhelper", | ||||
|     "spellfile_plugin", | ||||
|     "matchit" | ||||
|    "netrw", | ||||
|    "netrwPlugin", | ||||
|    "netrwSettings", | ||||
|    "netrwFileHandlers", | ||||
|    "gzip", | ||||
|    "zip", | ||||
|    "zipPlugin", | ||||
|    "tar", | ||||
|    "tarPlugin", | ||||
|    "getscript", | ||||
|    "getscriptPlugin", | ||||
|    "vimball", | ||||
|    "vimballPlugin", | ||||
|    "2html_plugin", | ||||
|    "logipat", | ||||
|    "rrhelper", | ||||
|    "spellfile_plugin", | ||||
|    "matchit", | ||||
| } | ||||
| 
 | ||||
| for _, plugin in pairs(disabled_built_ins) do | ||||
|     g["loaded_" .. plugin] = 1 | ||||
|    g["loaded_" .. plugin] = 1 | ||||
| end | ||||
| 
 | ||||
| -- Don't show status line on certain windows | ||||
|  |  | |||
|  | @ -1,47 +1,45 @@ | |||
| local cmd = vim.cmd | ||||
| 
 | ||||
| cmd("packadd packer.nvim") | ||||
| cmd "packadd packer.nvim" | ||||
| 
 | ||||
| local present, packer = pcall(require, "packer") | ||||
| 
 | ||||
| if not present then | ||||
|     local packer_path = vim.fn.stdpath("data") .. "/site/pack/packer/opt/packer.nvim" | ||||
|    local packer_path = vim.fn.stdpath "data" .. "/site/pack/packer/opt/packer.nvim" | ||||
| 
 | ||||
|     print("Cloning packer..") | ||||
|     -- remove the dir before cloning | ||||
|     vim.fn.delete(packer_path, "rf") | ||||
|     vim.fn.system( | ||||
|         { | ||||
|             "git", | ||||
|             "clone", | ||||
|             "https://github.com/wbthomason/packer.nvim", | ||||
|             "--depth", | ||||
|             "20", | ||||
|             packer_path | ||||
|         } | ||||
|     ) | ||||
|    print "Cloning packer.." | ||||
|    -- remove the dir before cloning | ||||
|    vim.fn.delete(packer_path, "rf") | ||||
|    vim.fn.system { | ||||
|       "git", | ||||
|       "clone", | ||||
|       "https://github.com/wbthomason/packer.nvim", | ||||
|       "--depth", | ||||
|       "20", | ||||
|       packer_path, | ||||
|    } | ||||
| 
 | ||||
|     cmd("packadd packer.nvim") | ||||
|     present, packer = pcall(require, "packer") | ||||
|    cmd "packadd packer.nvim" | ||||
|    present, packer = pcall(require, "packer") | ||||
| 
 | ||||
|     if present then | ||||
|         print("Packer cloned successfully.") | ||||
|     else | ||||
|         error("Couldn't clone packer !\nPacker path: " .. packer_path) | ||||
|     end | ||||
|    if present then | ||||
|       print "Packer cloned successfully." | ||||
|    else | ||||
|       error("Couldn't clone packer !\nPacker path: " .. packer_path) | ||||
|    end | ||||
| end | ||||
| 
 | ||||
| return packer.init { | ||||
|     display = { | ||||
|         open_fn = function() | ||||
|             return require("packer.util").float {border = "single"} | ||||
|         end, | ||||
|         prompt_border = "single" | ||||
|     }, | ||||
|     git = { | ||||
|         clone_timeout = 600 -- Timeout, in seconds, for git clones | ||||
|     }, | ||||
|     auto_clean = true, | ||||
|     compile_on_sync = true | ||||
|     --    auto_reload_compiled = true | ||||
|    display = { | ||||
|       open_fn = function() | ||||
|          return require("packer.util").float { border = "single" } | ||||
|       end, | ||||
|       prompt_border = "single", | ||||
|    }, | ||||
|    git = { | ||||
|       clone_timeout = 600, -- Timeout, in seconds, for git clones | ||||
|    }, | ||||
|    auto_clean = true, | ||||
|    compile_on_sync = true, | ||||
|    --    auto_reload_compiled = true | ||||
| } | ||||
|  |  | |||
|  | @ -4,315 +4,313 @@ local present, _ = pcall(require, "packerInit") | |||
| local packer | ||||
| 
 | ||||
| if present then | ||||
|     packer = require "packer" | ||||
|    packer = require "packer" | ||||
| else | ||||
|     return false | ||||
|    return false | ||||
| end | ||||
| 
 | ||||
| local use = packer.use | ||||
| 
 | ||||
| return packer.startup( | ||||
|     function() | ||||
|         use { | ||||
|             "wbthomason/packer.nvim", | ||||
|             event = "VimEnter" | ||||
|         } | ||||
| return packer.startup(function() | ||||
|    use { | ||||
|       "wbthomason/packer.nvim", | ||||
|       event = "VimEnter", | ||||
|    } | ||||
| 
 | ||||
|         use { | ||||
|             "jdhao/better-escape.vim", | ||||
|             disable = not plugin_status.better_esc, | ||||
|             event = "InsertEnter", | ||||
|             config = function() | ||||
|                 require "plugins.others".escape() | ||||
|             end | ||||
|         } | ||||
|    use { | ||||
|       "jdhao/better-escape.vim", | ||||
|       disable = not plugin_status.better_esc, | ||||
|       event = "InsertEnter", | ||||
|       config = function() | ||||
|          require("plugins.others").escape() | ||||
|       end, | ||||
|    } | ||||
| 
 | ||||
|         use { | ||||
|             "akinsho/nvim-bufferline.lua", | ||||
|             disable = not plugin_status.nvim_bufferline, | ||||
|             after = "nvim-base16.lua", | ||||
|    use { | ||||
|       "akinsho/nvim-bufferline.lua", | ||||
|       disable = not plugin_status.nvim_bufferline, | ||||
|       after = "nvim-base16.lua", | ||||
|       config = function() | ||||
|          require "plugins.bufferline" | ||||
|       end, | ||||
|       setup = function() | ||||
|          require("mappings").bufferline() | ||||
|       end, | ||||
|    } | ||||
| 
 | ||||
|    use { | ||||
|       "glepnir/galaxyline.nvim", | ||||
|       disable = not plugin_status.galaxyline, | ||||
|       after = "nvim-base16.lua", | ||||
|       config = function() | ||||
|          require "plugins.statusline" | ||||
|       end, | ||||
|    } | ||||
| 
 | ||||
|    -- color related stuff | ||||
|    use { | ||||
|       "NvChad/nvim-base16.lua", | ||||
|       after = "packer.nvim", | ||||
|       config = function() | ||||
|          require "theme" | ||||
|       end, | ||||
|    } | ||||
| 
 | ||||
|    use { | ||||
|       "norcalli/nvim-colorizer.lua", | ||||
|       disable = not plugin_status.nvim_colorizer, | ||||
|       event = "BufRead", | ||||
|       config = function() | ||||
|          require("plugins.others").colorizer() | ||||
|       end, | ||||
|    } | ||||
| 
 | ||||
|    -- lsp stuff | ||||
|    use { | ||||
|       "nvim-treesitter/nvim-treesitter", | ||||
|       event = "BufRead", | ||||
|       config = function() | ||||
|          require "plugins.treesitter" | ||||
|       end, | ||||
|    } | ||||
| 
 | ||||
|    use { | ||||
|       "kabouzeid/nvim-lspinstall", | ||||
|       event = "BufRead", | ||||
|    } | ||||
| 
 | ||||
|    use { | ||||
|       "neovim/nvim-lspconfig", | ||||
|       after = "nvim-lspinstall", | ||||
|       config = function() | ||||
|          require "plugins.lspconfig" | ||||
|       end, | ||||
|    } | ||||
| 
 | ||||
|    use { | ||||
|       "onsails/lspkind-nvim", | ||||
|       disable = not plugin_status.lspkind, | ||||
|       event = "BufEnter", | ||||
|       config = function() | ||||
|          require("plugins.others").lspkind() | ||||
|       end, | ||||
|    } | ||||
| 
 | ||||
|    use { | ||||
|       "ray-x/lsp_signature.nvim", | ||||
|       disable = not plugin_status.lspsignature, | ||||
|       after = "nvim-lspconfig", | ||||
|       config = function() | ||||
|          require("plugins.others").signature() | ||||
|       end, | ||||
|    } | ||||
| 
 | ||||
|    -- load compe in insert mode only | ||||
|    use { | ||||
|       "hrsh7th/nvim-compe", | ||||
|       event = "InsertEnter", | ||||
|       config = function() | ||||
|          require "plugins.compe" | ||||
|       end, | ||||
|       wants = "LuaSnip", | ||||
|       requires = { | ||||
|          { | ||||
|             "L3MON4D3/LuaSnip", | ||||
|             wants = "friendly-snippets", | ||||
|             event = "InsertCharPre", | ||||
|             config = function() | ||||
|                 require "plugins.bufferline" | ||||
|                require "plugins.luasnip" | ||||
|             end, | ||||
|          }, | ||||
|          { | ||||
|             "rafamadriz/friendly-snippets", | ||||
|             event = "InsertCharPre", | ||||
|          }, | ||||
|       }, | ||||
|    } | ||||
| 
 | ||||
|    use { | ||||
|       "sbdchd/neoformat", | ||||
|       disable = not plugin_status.neoformat, | ||||
|       cmd = "Neoformat", | ||||
|       setup = function() | ||||
|          require("mappings").neoformat() | ||||
|       end, | ||||
|    } | ||||
| 
 | ||||
|    -- file managing , picker etc | ||||
|    use { | ||||
|       "kyazdani42/nvim-tree.lua", | ||||
|       cmd = "NvimTreeToggle", | ||||
|       config = function() | ||||
|          require "plugins.nvimtree" | ||||
|       end, | ||||
|       setup = function() | ||||
|          require("mappings").nvimtree() | ||||
|       end, | ||||
|    } | ||||
| 
 | ||||
|    use { | ||||
|       "kyazdani42/nvim-web-devicons", | ||||
|       after = "nvim-base16.lua", | ||||
|       config = function() | ||||
|          require "plugins.icons" | ||||
|       end, | ||||
|    } | ||||
| 
 | ||||
|    use { | ||||
|       "nvim-lua/plenary.nvim", | ||||
|       event = "BufRead", | ||||
|    } | ||||
|    use { | ||||
|       "nvim-lua/popup.nvim", | ||||
|       after = "plenary.nvim", | ||||
|    } | ||||
| 
 | ||||
|    use { | ||||
|       "nvim-telescope/telescope.nvim", | ||||
|       cmd = "Telescope", | ||||
|       requires = { | ||||
|          { | ||||
|             "nvim-telescope/telescope-fzf-native.nvim", | ||||
|             run = "make", | ||||
|          }, | ||||
|          { | ||||
|             "nvim-telescope/telescope-media-files.nvim", | ||||
|             disable = not plugin_status.telescope_media, | ||||
|             setup = function() | ||||
|                 require "mappings".bufferline() | ||||
|             end | ||||
|         } | ||||
| 
 | ||||
|         use { | ||||
|             "glepnir/galaxyline.nvim", | ||||
|             disable = not plugin_status.galaxyline, | ||||
|             after = "nvim-base16.lua", | ||||
|             config = function() | ||||
|                 require "plugins.statusline" | ||||
|             end | ||||
|         } | ||||
| 
 | ||||
|         -- color related stuff | ||||
|         use { | ||||
|             "NvChad/nvim-base16.lua", | ||||
|             after = "packer.nvim", | ||||
|             config = function() | ||||
|                 require "theme" | ||||
|             end | ||||
|         } | ||||
| 
 | ||||
|         use { | ||||
|             "norcalli/nvim-colorizer.lua", | ||||
|             disable = not plugin_status.nvim_colorizer, | ||||
|             event = "BufRead", | ||||
|             config = function() | ||||
|                 require("plugins.others").colorizer() | ||||
|             end | ||||
|         } | ||||
| 
 | ||||
|         -- lsp stuff | ||||
|         use { | ||||
|             "nvim-treesitter/nvim-treesitter", | ||||
|             event = "BufRead", | ||||
|             config = function() | ||||
|                 require "plugins.treesitter" | ||||
|             end | ||||
|         } | ||||
| 
 | ||||
|         use { | ||||
|             "kabouzeid/nvim-lspinstall", | ||||
|             event = "BufRead" | ||||
|         } | ||||
| 
 | ||||
|         use { | ||||
|             "neovim/nvim-lspconfig", | ||||
|             after = "nvim-lspinstall", | ||||
|             config = function() | ||||
|                 require "plugins.lspconfig" | ||||
|             end | ||||
|         } | ||||
| 
 | ||||
|         use { | ||||
|             "onsails/lspkind-nvim", | ||||
|             disable = not plugin_status.lspkind, | ||||
|             event = "BufEnter", | ||||
|             config = function() | ||||
|                 require("plugins.others").lspkind() | ||||
|             end | ||||
|         } | ||||
| 
 | ||||
|         use { | ||||
|             "ray-x/lsp_signature.nvim", | ||||
|             disable = not plugin_status.lspsignature, | ||||
|             after = "nvim-lspconfig", | ||||
|             config = function() | ||||
|                 require("plugins.others").signature() | ||||
|             end | ||||
|         } | ||||
| 
 | ||||
|         -- load compe in insert mode only | ||||
|         use { | ||||
|             "hrsh7th/nvim-compe", | ||||
|             event = "InsertEnter", | ||||
|             config = function() | ||||
|                 require "plugins.compe" | ||||
|                require("mappings").telescope_media() | ||||
|             end, | ||||
|             wants = "LuaSnip", | ||||
|             requires = { | ||||
|                 { | ||||
|                     "L3MON4D3/LuaSnip", | ||||
|                     wants = "friendly-snippets", | ||||
|                     event = "InsertCharPre", | ||||
|                     config = function() | ||||
|                         require "plugins.luasnip" | ||||
|                     end | ||||
|                 }, | ||||
|                 { | ||||
|                     "rafamadriz/friendly-snippets", | ||||
|                     event = "InsertCharPre" | ||||
|                 } | ||||
|             } | ||||
|         } | ||||
|          }, | ||||
|       }, | ||||
|       config = function() | ||||
|          require "plugins.telescope" | ||||
|       end, | ||||
|       setup = function() | ||||
|          require("mappings").telescope() | ||||
|       end, | ||||
|    } | ||||
| 
 | ||||
|         use { | ||||
|             "sbdchd/neoformat", | ||||
|             disable = not plugin_status.neoformat, | ||||
|             cmd = "Neoformat", | ||||
|             setup = function() | ||||
|                 require "mappings".neoformat() | ||||
|             end | ||||
|         } | ||||
|    -- git stuff | ||||
|    use { | ||||
|       "lewis6991/gitsigns.nvim", | ||||
|       disable = not plugin_status.gitsigns, | ||||
|       after = "plenary.nvim", | ||||
|       config = function() | ||||
|          require "plugins.gitsigns" | ||||
|       end, | ||||
|    } | ||||
| 
 | ||||
|         -- file managing , picker etc | ||||
|         use { | ||||
|             "kyazdani42/nvim-tree.lua", | ||||
|             cmd = "NvimTreeToggle", | ||||
|             config = function() | ||||
|                 require "plugins.nvimtree" | ||||
|             end, | ||||
|             setup = function() | ||||
|                 require "mappings".nvimtree() | ||||
|             end | ||||
|         } | ||||
|    -- misc plugins | ||||
|    use { | ||||
|       "akinsho/nvim-toggleterm.lua", | ||||
|       event = "BufWinEnter", | ||||
|       config = function() | ||||
|          require "plugins.toggleterm" | ||||
|       end, | ||||
|       setup = function() | ||||
|          require("mappings").toggleterm() | ||||
|       end, | ||||
|    } | ||||
|    use { | ||||
|       "windwp/nvim-autopairs", | ||||
|       after = "nvim-compe", | ||||
|       config = function() | ||||
|          require "plugins.autopairs" | ||||
|       end, | ||||
|    } | ||||
| 
 | ||||
|         use { | ||||
|             "kyazdani42/nvim-web-devicons", | ||||
|             after = "nvim-base16.lua", | ||||
|             config = function() | ||||
|                 require "plugins.icons" | ||||
|             end | ||||
|         } | ||||
|    use { | ||||
|       "andymass/vim-matchup", | ||||
|       disable = not plugin_status.vim_matchup, | ||||
|       event = "CursorMoved", | ||||
|    } | ||||
| 
 | ||||
|         use { | ||||
|             "nvim-lua/plenary.nvim", | ||||
|             event = "BufRead" | ||||
|         } | ||||
|         use { | ||||
|             "nvim-lua/popup.nvim", | ||||
|             after = "plenary.nvim" | ||||
|         } | ||||
|    use { | ||||
|       "terrortylor/nvim-comment", | ||||
|       disable = not plugin_status.nvim_comment, | ||||
|       cmd = "CommentToggle", | ||||
|       config = function() | ||||
|          require("plugins.others").comment() | ||||
|       end, | ||||
|       setup = function() | ||||
|          require("mappings").comment_nvim() | ||||
|       end, | ||||
|    } | ||||
| 
 | ||||
|         use { | ||||
|             "nvim-telescope/telescope.nvim", | ||||
|             cmd = "Telescope", | ||||
|             requires = { | ||||
|                 { | ||||
|                     "nvim-telescope/telescope-fzf-native.nvim", | ||||
|                     run = "make" | ||||
|                 }, | ||||
|                 { | ||||
|                     "nvim-telescope/telescope-media-files.nvim", | ||||
|                     disable = not plugin_status.telescope_media, | ||||
|                     setup = function() | ||||
|                         require "mappings".telescope_media() | ||||
|                     end | ||||
|                 } | ||||
|             }, | ||||
|             config = function() | ||||
|                 require "plugins.telescope" | ||||
|             end, | ||||
|             setup = function() | ||||
|                 require "mappings".telescope() | ||||
|             end | ||||
|         } | ||||
|    use { | ||||
|       "glepnir/dashboard-nvim", | ||||
|       disable = not plugin_status.dashboard_nvim, | ||||
|       cmd = { | ||||
|          "Dashboard", | ||||
|          "DashboardNewFile", | ||||
|          "DashboardJumpMarks", | ||||
|          "SessionLoad", | ||||
|          "SessionSave", | ||||
|       }, | ||||
|       setup = function() | ||||
|          require "plugins.dashboard" | ||||
|          require("mappings").dashboard() | ||||
|       end, | ||||
|    } | ||||
| 
 | ||||
|         -- git stuff | ||||
|         use { | ||||
|             "lewis6991/gitsigns.nvim", | ||||
|             disable = not plugin_status.gitsigns, | ||||
|             after = "plenary.nvim", | ||||
|             config = function() | ||||
|                 require "plugins.gitsigns" | ||||
|             end | ||||
|         } | ||||
|    -- load autosave only if its globally enabled | ||||
|    use { | ||||
|       disable = not plugin_status.autosave_nvim, | ||||
|       "Pocco81/AutoSave.nvim", | ||||
|       config = function() | ||||
|          require "plugins.autosave" | ||||
|       end, | ||||
|       cond = function() | ||||
|          return vim.g.auto_save == true | ||||
|       end, | ||||
|    } | ||||
| 
 | ||||
|         -- misc plugins | ||||
|         use { | ||||
|             "akinsho/nvim-toggleterm.lua", | ||||
|             event = "BufWinEnter", | ||||
|             config = function() | ||||
|                 require "plugins.toggleterm" | ||||
|             end, | ||||
|             setup = function() | ||||
|                 require "mappings".toggleterm() | ||||
|             end | ||||
|         } | ||||
|         use { | ||||
|             "windwp/nvim-autopairs", | ||||
|             after = "nvim-compe", | ||||
|             config = function() | ||||
|                 require "plugins.autopairs" | ||||
|             end | ||||
|         } | ||||
|    -- smooth scroll | ||||
|    use { | ||||
|       "karb94/neoscroll.nvim", | ||||
|       disable = not plugin_status.neoscroll_nvim, | ||||
|       event = "WinScrolled", | ||||
|       config = function() | ||||
|          require("plugins.others").neoscroll() | ||||
|       end, | ||||
|    } | ||||
| 
 | ||||
|         use { | ||||
|             "andymass/vim-matchup", | ||||
|             disable = not plugin_status.vim_matchup, | ||||
|             event = "CursorMoved" | ||||
|         } | ||||
|    use { | ||||
|       "Pocco81/TrueZen.nvim", | ||||
|       disable = not plugin_status.truezen_nvim, | ||||
|       cmd = { | ||||
|          "TZAtaraxis", | ||||
|          "TZMinimalist", | ||||
|          "TZFocus", | ||||
|       }, | ||||
|       config = function() | ||||
|          require "plugins.zenmode" | ||||
|       end, | ||||
|       setup = function() | ||||
|          require("mappings").truezen() | ||||
|       end, | ||||
|    } | ||||
| 
 | ||||
|         use { | ||||
|             "terrortylor/nvim-comment", | ||||
|             disable = not plugin_status.nvim_comment, | ||||
|             cmd = "CommentToggle", | ||||
|             config = function() | ||||
|                 require("plugins.others").comment() | ||||
|             end, | ||||
|             setup = function() | ||||
|                 require "mappings".comment_nvim() | ||||
|             end | ||||
|         } | ||||
|    --   use "alvan/vim-closetag" -- for html autoclosing tag | ||||
| 
 | ||||
|         use { | ||||
|             "glepnir/dashboard-nvim", | ||||
|             disable = not plugin_status.dashboard_nvim, | ||||
|             cmd = { | ||||
|                 "Dashboard", | ||||
|                 "DashboardNewFile", | ||||
|                 "DashboardJumpMarks", | ||||
|                 "SessionLoad", | ||||
|                 "SessionSave" | ||||
|             }, | ||||
|             setup = function() | ||||
|                 require "plugins.dashboard" | ||||
|                 require "mappings".dashboard() | ||||
|             end | ||||
|         } | ||||
|    use { | ||||
|       "lukas-reineke/indent-blankline.nvim", | ||||
|       disable = not plugin_status.blankline, | ||||
|       event = "BufRead", | ||||
|       setup = function() | ||||
|          require("plugins.others").blankline() | ||||
|       end, | ||||
|    } | ||||
| 
 | ||||
|         -- load autosave only if its globally enabled | ||||
|         use { | ||||
|             disable = not plugin_status.autosave_nvim, | ||||
|             "Pocco81/AutoSave.nvim", | ||||
|             config = function() | ||||
|                 require "plugins.autosave" | ||||
|             end, | ||||
|             cond = function() | ||||
|                 return vim.g.auto_save == true | ||||
|             end | ||||
|         } | ||||
| 
 | ||||
|         -- smooth scroll | ||||
|         use { | ||||
|             "karb94/neoscroll.nvim", | ||||
|             disable = not plugin_status.neoscroll_nvim, | ||||
|             event = "WinScrolled", | ||||
|             config = function() | ||||
|                 require("plugins.others").neoscroll() | ||||
|             end | ||||
|         } | ||||
| 
 | ||||
|         use { | ||||
|             "Pocco81/TrueZen.nvim", | ||||
|             disable = not plugin_status.truezen_nvim, | ||||
|             cmd = { | ||||
|                 "TZAtaraxis", | ||||
|                 "TZMinimalist", | ||||
|                 "TZFocus" | ||||
|             }, | ||||
|             config = function() | ||||
|                 require "plugins.zenmode" | ||||
|             end, | ||||
|             setup = function() | ||||
|                 require "mappings".truezen() | ||||
|             end | ||||
|         } | ||||
| 
 | ||||
|         --   use "alvan/vim-closetag" -- for html autoclosing tag | ||||
| 
 | ||||
|         use { | ||||
|             "lukas-reineke/indent-blankline.nvim", | ||||
|             disable = not plugin_status.blankline, | ||||
|             event = "BufRead", | ||||
|             setup = function() | ||||
|                 require("plugins.others").blankline() | ||||
|             end | ||||
|         } | ||||
| 
 | ||||
|         use { | ||||
|             "tpope/vim-fugitive", | ||||
|             disable = not plugin_status.vim_fugitive, | ||||
|             cmd = { | ||||
|                 "Git" | ||||
|             }, | ||||
|             setup = function() | ||||
|                 require "mappings".fugitive() | ||||
|             end | ||||
|         } | ||||
|     end | ||||
| ) | ||||
|    use { | ||||
|       "tpope/vim-fugitive", | ||||
|       disable = not plugin_status.vim_fugitive, | ||||
|       cmd = { | ||||
|          "Git", | ||||
|       }, | ||||
|       setup = function() | ||||
|          require("mappings").fugitive() | ||||
|       end, | ||||
|    } | ||||
| end) | ||||
|  |  | |||
|  | @ -2,13 +2,11 @@ local present1, autopairs = pcall(require, "nvim-autopairs") | |||
| local present2, autopairs_completion = pcall(require, "nvim-autopairs.completion.compe") | ||||
| 
 | ||||
| if not (present1 or present2) then | ||||
|     return | ||||
|    return | ||||
| end | ||||
| 
 | ||||
| autopairs.setup() | ||||
| autopairs_completion.setup( | ||||
|     { | ||||
|         map_cr = true, | ||||
|         map_complete = true -- insert () func completion | ||||
|     } | ||||
| ) | ||||
| autopairs_completion.setup { | ||||
|    map_cr = true, | ||||
|    map_complete = true, -- insert () func completion | ||||
| } | ||||
|  |  | |||
|  | @ -1,21 +1,19 @@ | |||
| -- autosave.nvim plugin disabled by default | ||||
| local present, autosave = pcall(require, "autosave") | ||||
| if not present then | ||||
|     return | ||||
|    return | ||||
| end | ||||
| 
 | ||||
| autosave.setup( | ||||
|     { | ||||
|         enabled = vim.g.auto_save, -- takes boolean value from init.lua | ||||
|         execution_message = "autosaved at : " .. vim.fn.strftime("%H:%M:%S"), | ||||
|         events = {"InsertLeave", "TextChanged"}, | ||||
|         conditions = { | ||||
|             exists = true, | ||||
|             filetype_is_not = {}, | ||||
|             modifiable = true | ||||
|         }, | ||||
|         write_all_buffers = false, | ||||
|         on_off_commands = true, | ||||
|         clean_command_line_interval = 2500 | ||||
|     } | ||||
| ) | ||||
| autosave.setup { | ||||
|    enabled = vim.g.auto_save, -- takes boolean value from init.lua | ||||
|    execution_message = "autosaved at : " .. vim.fn.strftime "%H:%M:%S", | ||||
|    events = { "InsertLeave", "TextChanged" }, | ||||
|    conditions = { | ||||
|       exists = true, | ||||
|       filetype_is_not = {}, | ||||
|       modifiable = true, | ||||
|    }, | ||||
|    write_all_buffers = false, | ||||
|    on_off_commands = true, | ||||
|    clean_command_line_interval = 2500, | ||||
| } | ||||
|  |  | |||
|  | @ -3,103 +3,103 @@ local colors = require(global_theme) | |||
| 
 | ||||
| local present, bufferline = pcall(require, "bufferline") | ||||
| if not present then | ||||
|     return | ||||
|    return | ||||
| end | ||||
| 
 | ||||
| bufferline.setup { | ||||
|     options = { | ||||
|         offsets = {{filetype = "NvimTree", text = "", padding = 1}}, | ||||
|         buffer_close_icon = "", | ||||
|         modified_icon = "", | ||||
|         close_icon = "", | ||||
|         left_trunc_marker = "", | ||||
|         right_trunc_marker = "", | ||||
|         max_name_length = 14, | ||||
|         max_prefix_length = 13, | ||||
|         tab_size = 20, | ||||
|         show_tab_indicators = true, | ||||
|         enforce_regular_tabs = false, | ||||
|         view = "multiwindow", | ||||
|         show_buffer_close_icons = true, | ||||
|         separator_style = "thin", | ||||
|         mappings = true, | ||||
|         always_show_bufferline = true | ||||
|     }, | ||||
|     highlights = { | ||||
|         fill = { | ||||
|             guifg = colors.grey_fg, | ||||
|             guibg = colors.black2 | ||||
|         }, | ||||
|         background = { | ||||
|             guifg = colors.grey_fg, | ||||
|             guibg = colors.black2 | ||||
|         }, | ||||
|         -- buffers | ||||
|         buffer_visible = { | ||||
|             guifg = colors.light_grey, | ||||
|             guibg = colors.black2 | ||||
|         }, | ||||
|         buffer_selected = { | ||||
|             guifg = colors.white, | ||||
|             guibg = colors.black, | ||||
|             gui = "bold" | ||||
|         }, | ||||
|         -- tabs | ||||
|         tab = { | ||||
|             guifg = colors.light_grey, | ||||
|             guibg = colors.one_bg3 | ||||
|         }, | ||||
|         tab_selected = { | ||||
|             guifg = colors.black2, | ||||
|             guibg = colors.nord_blue | ||||
|         }, | ||||
|         tab_close = { | ||||
|             guifg = colors.red, | ||||
|             guibg = colors.black | ||||
|         }, | ||||
|         indicator_selected = { | ||||
|             guifg = colors.black, | ||||
|             guibg = colors.black | ||||
|         }, | ||||
|         -- separators | ||||
|         separator = { | ||||
|             guifg = colors.black2, | ||||
|             guibg = colors.black2 | ||||
|         }, | ||||
|         separator_visible = { | ||||
|             guifg = colors.black2, | ||||
|             guibg = colors.black2 | ||||
|         }, | ||||
|         separator_selected = { | ||||
|             guifg = colors.black2, | ||||
|             guibg = colors.black2 | ||||
|         }, | ||||
|         -- modified | ||||
|         modified = { | ||||
|             guifg = colors.red, | ||||
|             guibg = colors.black2 | ||||
|         }, | ||||
|         modified_visible = { | ||||
|             guifg = colors.red, | ||||
|             guibg = colors.black2 | ||||
|         }, | ||||
|         modified_selected = { | ||||
|             guifg = colors.green, | ||||
|             guibg = colors.black | ||||
|         }, | ||||
|         -- close buttons | ||||
|    options = { | ||||
|       offsets = { { filetype = "NvimTree", text = "", padding = 1 } }, | ||||
|       buffer_close_icon = "", | ||||
|       modified_icon = "", | ||||
|       close_icon = "", | ||||
|       left_trunc_marker = "", | ||||
|       right_trunc_marker = "", | ||||
|       max_name_length = 14, | ||||
|       max_prefix_length = 13, | ||||
|       tab_size = 20, | ||||
|       show_tab_indicators = true, | ||||
|       enforce_regular_tabs = false, | ||||
|       view = "multiwindow", | ||||
|       show_buffer_close_icons = true, | ||||
|       separator_style = "thin", | ||||
|       mappings = true, | ||||
|       always_show_bufferline = true, | ||||
|    }, | ||||
|    highlights = { | ||||
|       fill = { | ||||
|          guifg = colors.grey_fg, | ||||
|          guibg = colors.black2, | ||||
|       }, | ||||
|       background = { | ||||
|          guifg = colors.grey_fg, | ||||
|          guibg = colors.black2, | ||||
|       }, | ||||
|       -- buffers | ||||
|       buffer_visible = { | ||||
|          guifg = colors.light_grey, | ||||
|          guibg = colors.black2, | ||||
|       }, | ||||
|       buffer_selected = { | ||||
|          guifg = colors.white, | ||||
|          guibg = colors.black, | ||||
|          gui = "bold", | ||||
|       }, | ||||
|       -- tabs | ||||
|       tab = { | ||||
|          guifg = colors.light_grey, | ||||
|          guibg = colors.one_bg3, | ||||
|       }, | ||||
|       tab_selected = { | ||||
|          guifg = colors.black2, | ||||
|          guibg = colors.nord_blue, | ||||
|       }, | ||||
|       tab_close = { | ||||
|          guifg = colors.red, | ||||
|          guibg = colors.black, | ||||
|       }, | ||||
|       indicator_selected = { | ||||
|          guifg = colors.black, | ||||
|          guibg = colors.black, | ||||
|       }, | ||||
|       -- separators | ||||
|       separator = { | ||||
|          guifg = colors.black2, | ||||
|          guibg = colors.black2, | ||||
|       }, | ||||
|       separator_visible = { | ||||
|          guifg = colors.black2, | ||||
|          guibg = colors.black2, | ||||
|       }, | ||||
|       separator_selected = { | ||||
|          guifg = colors.black2, | ||||
|          guibg = colors.black2, | ||||
|       }, | ||||
|       -- modified | ||||
|       modified = { | ||||
|          guifg = colors.red, | ||||
|          guibg = colors.black2, | ||||
|       }, | ||||
|       modified_visible = { | ||||
|          guifg = colors.red, | ||||
|          guibg = colors.black2, | ||||
|       }, | ||||
|       modified_selected = { | ||||
|          guifg = colors.green, | ||||
|          guibg = colors.black, | ||||
|       }, | ||||
|       -- close buttons | ||||
| 
 | ||||
|         close_button = { | ||||
|             guifg = colors.light_grey, | ||||
|             guibg = colors.black2 | ||||
|         }, | ||||
|         close_button_visible = { | ||||
|             guifg = colors.light_grey, | ||||
|             guibg = colors.black2 | ||||
|         }, | ||||
|         close_button_selected = { | ||||
|             guifg = colors.red, | ||||
|             guibg = colors.black | ||||
|         } | ||||
|     } | ||||
|       close_button = { | ||||
|          guifg = colors.light_grey, | ||||
|          guibg = colors.black2, | ||||
|       }, | ||||
|       close_button_visible = { | ||||
|          guifg = colors.light_grey, | ||||
|          guibg = colors.black2, | ||||
|       }, | ||||
|       close_button_selected = { | ||||
|          guifg = colors.red, | ||||
|          guibg = colors.black, | ||||
|       }, | ||||
|    }, | ||||
| } | ||||
|  |  | |||
|  | @ -1,25 +1,25 @@ | |||
| local present, compe = pcall(require, "compe") | ||||
| if not present then | ||||
|     return | ||||
|    return | ||||
| end | ||||
| 
 | ||||
| compe.setup { | ||||
|     enabled = true, | ||||
|     autocomplete = true, | ||||
|     debug = false, | ||||
|     min_length = 1, | ||||
|     preselect = "enable", | ||||
|     throttle_time = 80, | ||||
|     source_timeout = 200, | ||||
|     incomplete_delay = 400, | ||||
|     max_abbr_width = 100, | ||||
|     max_kind_width = 100, | ||||
|     max_menu_width = 100, | ||||
|     documentation = true, | ||||
|     source = { | ||||
|         buffer = {kind = "", true}, | ||||
|         luasnip = {kind = "", true}, | ||||
|         nvim_lsp = true, | ||||
|         nvim_lua = true | ||||
|     } | ||||
|    enabled = true, | ||||
|    autocomplete = true, | ||||
|    debug = false, | ||||
|    min_length = 1, | ||||
|    preselect = "enable", | ||||
|    throttle_time = 80, | ||||
|    source_timeout = 200, | ||||
|    incomplete_delay = 400, | ||||
|    max_abbr_width = 100, | ||||
|    max_kind_width = 100, | ||||
|    max_menu_width = 100, | ||||
|    documentation = true, | ||||
|    source = { | ||||
|       buffer = { kind = "", true }, | ||||
|       luasnip = { kind = "", true }, | ||||
|       nvim_lsp = true, | ||||
|       nvim_lua = true, | ||||
|    }, | ||||
| } | ||||
|  |  | |||
|  | @ -7,34 +7,34 @@ g.dashboard_disable_at_vimenter = 1 -- dashboard is disabled by default | |||
| g.dashboard_disable_statusline = 1 | ||||
| g.dashboard_default_executive = "telescope" | ||||
| g.dashboard_custom_header = { | ||||
|     "                                   ", | ||||
|     "                                   ", | ||||
|     "                                   ", | ||||
|     "   ⣴⣶⣤⡤⠦⣤⣀⣤⠆     ⣈⣭⣿⣶⣿⣦⣼⣆         ", | ||||
|     "    ⠉⠻⢿⣿⠿⣿⣿⣶⣦⠤⠄⡠⢾⣿⣿⡿⠋⠉⠉⠻⣿⣿⡛⣦       ", | ||||
|     "          ⠈⢿⣿⣟⠦ ⣾⣿⣿⣷    ⠻⠿⢿⣿⣧⣄     ", | ||||
|     "           ⣸⣿⣿⢧ ⢻⠻⣿⣿⣷⣄⣀⠄⠢⣀⡀⠈⠙⠿⠄    ", | ||||
|     "          ⢠⣿⣿⣿⠈    ⣻⣿⣿⣿⣿⣿⣿⣿⣛⣳⣤⣀⣀   ", | ||||
|     "   ⢠⣧⣶⣥⡤⢄ ⣸⣿⣿⠘  ⢀⣴⣿⣿⡿⠛⣿⣿⣧⠈⢿⠿⠟⠛⠻⠿⠄  ", | ||||
|     "  ⣰⣿⣿⠛⠻⣿⣿⡦⢹⣿⣷   ⢊⣿⣿⡏  ⢸⣿⣿⡇ ⢀⣠⣄⣾⠄   ", | ||||
|     " ⣠⣿⠿⠛ ⢀⣿⣿⣷⠘⢿⣿⣦⡀ ⢸⢿⣿⣿⣄ ⣸⣿⣿⡇⣪⣿⡿⠿⣿⣷⡄  ", | ||||
|     " ⠙⠃   ⣼⣿⡟  ⠈⠻⣿⣿⣦⣌⡇⠻⣿⣿⣷⣿⣿⣿ ⣿⣿⡇ ⠛⠻⢷⣄ ", | ||||
|     "    ⢻⣿⣿⣄   ⠈⠻⣿⣿⣿⣷⣿⣿⣿⣿⣿⡟ ⠫⢿⣿⡆       ", | ||||
|     "       ⠻⣿⣿⣿⣿⣶⣶⣾⣿⣿⣿⣿⣿⣿⣿⣿⡟⢀⣀⣤⣾⡿⠃     ", | ||||
|     "                                   " | ||||
|    "                                   ", | ||||
|    "                                   ", | ||||
|    "                                   ", | ||||
|    "   ⣴⣶⣤⡤⠦⣤⣀⣤⠆     ⣈⣭⣿⣶⣿⣦⣼⣆         ", | ||||
|    "    ⠉⠻⢿⣿⠿⣿⣿⣶⣦⠤⠄⡠⢾⣿⣿⡿⠋⠉⠉⠻⣿⣿⡛⣦       ", | ||||
|    "          ⠈⢿⣿⣟⠦ ⣾⣿⣿⣷    ⠻⠿⢿⣿⣧⣄     ", | ||||
|    "           ⣸⣿⣿⢧ ⢻⠻⣿⣿⣷⣄⣀⠄⠢⣀⡀⠈⠙⠿⠄    ", | ||||
|    "          ⢠⣿⣿⣿⠈    ⣻⣿⣿⣿⣿⣿⣿⣿⣛⣳⣤⣀⣀   ", | ||||
|    "   ⢠⣧⣶⣥⡤⢄ ⣸⣿⣿⠘  ⢀⣴⣿⣿⡿⠛⣿⣿⣧⠈⢿⠿⠟⠛⠻⠿⠄  ", | ||||
|    "  ⣰⣿⣿⠛⠻⣿⣿⡦⢹⣿⣷   ⢊⣿⣿⡏  ⢸⣿⣿⡇ ⢀⣠⣄⣾⠄   ", | ||||
|    " ⣠⣿⠿⠛ ⢀⣿⣿⣷⠘⢿⣿⣦⡀ ⢸⢿⣿⣿⣄ ⣸⣿⣿⡇⣪⣿⡿⠿⣿⣷⡄  ", | ||||
|    " ⠙⠃   ⣼⣿⡟  ⠈⠻⣿⣿⣦⣌⡇⠻⣿⣿⣷⣿⣿⣿ ⣿⣿⡇ ⠛⠻⢷⣄ ", | ||||
|    "    ⢻⣿⣿⣄   ⠈⠻⣿⣿⣿⣷⣿⣿⣿⣿⣿⡟ ⠫⢿⣿⡆       ", | ||||
|    "       ⠻⣿⣿⣿⣿⣶⣶⣾⣿⣿⣿⣿⣿⣿⣿⣿⡟⢀⣀⣤⣾⡿⠃     ", | ||||
|    "                                   ", | ||||
| } | ||||
| 
 | ||||
| g.dashboard_custom_section = { | ||||
|     a = {description = {"  Find File                 SPC f f"}, command = "Telescope find_files"}, | ||||
|     b = {description = {"  Recents                   SPC f o"}, command = "Telescope oldfiles"}, | ||||
|     c = {description = {"  Find Word                 SPC f w"}, command = "Telescope live_grep"}, | ||||
|     d = {description = {"洛 New File                  SPC f n"}, command = "DashboardNewFile"}, | ||||
|     e = {description = {"  Bookmarks                 SPC b m"}, command = "Telescope marks"}, | ||||
|     f = {description = {"  Load Last Session         SPC s l"}, command = "SessionLoad"} | ||||
|    a = { description = { "  Find File                 SPC f f" }, command = "Telescope find_files" }, | ||||
|    b = { description = { "  Recents                   SPC f o" }, command = "Telescope oldfiles" }, | ||||
|    c = { description = { "  Find Word                 SPC f w" }, command = "Telescope live_grep" }, | ||||
|    d = { description = { "洛 New File                  SPC f n" }, command = "DashboardNewFile" }, | ||||
|    e = { description = { "  Bookmarks                 SPC b m" }, command = "Telescope marks" }, | ||||
|    f = { description = { "  Load Last Session         SPC s l" }, command = "SessionLoad" }, | ||||
| } | ||||
| 
 | ||||
| g.dashboard_custom_footer = { | ||||
|     "   ", | ||||
|     -- "NvChad Loaded " .. plugins_count .. " plugins", | ||||
|     "NvChad v0.5" | ||||
|    "   ", | ||||
|    -- "NvChad Loaded " .. plugins_count .. " plugins", | ||||
|    "NvChad v0.5", | ||||
| } | ||||
|  |  | |||
|  | @ -1,32 +1,32 @@ | |||
| local present, gitsigns = pcall(require, "gitsigns") | ||||
| if not present then | ||||
|     return | ||||
|    return | ||||
| end | ||||
| 
 | ||||
| gitsigns.setup { | ||||
|     signs = { | ||||
|         add = {hl = "DiffAdd", text = "│", numhl = "GitSignsAddNr"}, | ||||
|         change = {hl = "DiffChange", text = "│", numhl = "GitSignsChangeNr"}, | ||||
|         delete = {hl = "DiffDelete", text = "_", numhl = "GitSignsDeleteNr"}, | ||||
|         topdelete = {hl = "DiffDelete", text = "‾", numhl = "GitSignsDeleteNr"}, | ||||
|         changedelete = {hl = "DiffChange", text = "~", numhl = "GitSignsChangeNr"} | ||||
|     }, | ||||
|     numhl = false, | ||||
|     keymaps = { | ||||
|         -- Default keymap options | ||||
|         noremap = true, | ||||
|         buffer = true, | ||||
|         ["n ]c"] = {expr = true, '&diff ? \']c\' : \'<cmd>lua require"gitsigns".next_hunk()<CR>\''}, | ||||
|         ["n [c"] = {expr = true, '&diff ? \'[c\' : \'<cmd>lua require"gitsigns".prev_hunk()<CR>\''}, | ||||
|         ["n <leader>hs"] = '<cmd>lua require"gitsigns".stage_hunk()<CR>', | ||||
|         ["n <leader>hu"] = '<cmd>lua require"gitsigns".undo_stage_hunk()<CR>', | ||||
|         ["n <leader>hr"] = '<cmd>lua require"gitsigns".reset_hunk()<CR>', | ||||
|         ["n <leader>hp"] = '<cmd>lua require"gitsigns".preview_hunk()<CR>', | ||||
|         ["n <leader>hb"] = '<cmd>lua require"gitsigns".blame_line()<CR>' | ||||
|     }, | ||||
|     watch_index = { | ||||
|         interval = 100 | ||||
|     }, | ||||
|     sign_priority = 5, | ||||
|     status_formatter = nil -- Use default | ||||
|    signs = { | ||||
|       add = { hl = "DiffAdd", text = "│", numhl = "GitSignsAddNr" }, | ||||
|       change = { hl = "DiffChange", text = "│", numhl = "GitSignsChangeNr" }, | ||||
|       delete = { hl = "DiffDelete", text = "_", numhl = "GitSignsDeleteNr" }, | ||||
|       topdelete = { hl = "DiffDelete", text = "‾", numhl = "GitSignsDeleteNr" }, | ||||
|       changedelete = { hl = "DiffChange", text = "~", numhl = "GitSignsChangeNr" }, | ||||
|    }, | ||||
|    numhl = false, | ||||
|    keymaps = { | ||||
|       -- Default keymap options | ||||
|       noremap = true, | ||||
|       buffer = true, | ||||
|       ["n ]c"] = { expr = true, "&diff ? ']c' : '<cmd>lua require\"gitsigns\".next_hunk()<CR>'" }, | ||||
|       ["n [c"] = { expr = true, "&diff ? '[c' : '<cmd>lua require\"gitsigns\".prev_hunk()<CR>'" }, | ||||
|       ["n <leader>hs"] = '<cmd>lua require"gitsigns".stage_hunk()<CR>', | ||||
|       ["n <leader>hu"] = '<cmd>lua require"gitsigns".undo_stage_hunk()<CR>', | ||||
|       ["n <leader>hr"] = '<cmd>lua require"gitsigns".reset_hunk()<CR>', | ||||
|       ["n <leader>hp"] = '<cmd>lua require"gitsigns".preview_hunk()<CR>', | ||||
|       ["n <leader>hb"] = '<cmd>lua require"gitsigns".blame_line()<CR>', | ||||
|    }, | ||||
|    watch_index = { | ||||
|       interval = 100, | ||||
|    }, | ||||
|    sign_priority = 5, | ||||
|    status_formatter = nil, -- Use default | ||||
| } | ||||
|  |  | |||
|  | @ -1,122 +1,122 @@ | |||
| local present, icons = pcall(require, "nvim-web-devicons") | ||||
| if not present then | ||||
|     return | ||||
|    return | ||||
| end | ||||
| 
 | ||||
| local global_theme = "themes/" .. vim.g.nvchad_theme | ||||
| local colors = require(global_theme) | ||||
| 
 | ||||
| icons.setup { | ||||
|     override = { | ||||
|         html = { | ||||
|             icon = "", | ||||
|             color = colors.baby_pink, | ||||
|             name = "html" | ||||
|         }, | ||||
|         css = { | ||||
|             icon = "", | ||||
|             color = colors.blue, | ||||
|             name = "css" | ||||
|         }, | ||||
|         js = { | ||||
|             icon = "", | ||||
|             color = colors.sun, | ||||
|             name = "js" | ||||
|         }, | ||||
|         ts = { | ||||
|             icon = "ﯤ", | ||||
|             color = colors.teal, | ||||
|             name = "ts" | ||||
|         }, | ||||
|         kt = { | ||||
|             icon = "", | ||||
|             color = colors.orange, | ||||
|             name = "kt" | ||||
|         }, | ||||
|         png = { | ||||
|             icon = "", | ||||
|             color = colors.dark_purple, | ||||
|             name = "png" | ||||
|         }, | ||||
|         jpg = { | ||||
|             icon = "", | ||||
|             color = colors.dark_purple, | ||||
|             name = "jpg" | ||||
|         }, | ||||
|         jpeg = { | ||||
|             icon = "", | ||||
|             color = colors.dark_purple, | ||||
|             name = "jpeg" | ||||
|         }, | ||||
|         mp3 = { | ||||
|             icon = "", | ||||
|             color = colors.white, | ||||
|             name = "mp3" | ||||
|         }, | ||||
|         mp4 = { | ||||
|             icon = "", | ||||
|             color = colors.white, | ||||
|             name = "mp4" | ||||
|         }, | ||||
|         out = { | ||||
|             icon = "", | ||||
|             color = colors.white, | ||||
|             name = "out" | ||||
|         }, | ||||
|         Dockerfile = { | ||||
|             icon = "", | ||||
|             color = colors.cyan, | ||||
|             name = "Dockerfile" | ||||
|         }, | ||||
|         rb = { | ||||
|             icon = "", | ||||
|             color = colors.pink, | ||||
|             name = "rb" | ||||
|         }, | ||||
|         vue = { | ||||
|             icon = "﵂", | ||||
|             color = colors.vibrant_green, | ||||
|             name = "vue" | ||||
|         }, | ||||
|         py = { | ||||
|             icon = "", | ||||
|             color = colors.cyan, | ||||
|             name = "py" | ||||
|         }, | ||||
|         toml = { | ||||
|             icon = "", | ||||
|             color = colors.blue, | ||||
|             name = "toml" | ||||
|         }, | ||||
|         lock = { | ||||
|             icon = "", | ||||
|             color = colors.red, | ||||
|             name = "lock" | ||||
|         }, | ||||
|         zip = { | ||||
|             icon = "", | ||||
|             color = colors.sun, | ||||
|             name = "zip" | ||||
|         }, | ||||
|         xz = { | ||||
|             icon = "", | ||||
|             color = colors.sun, | ||||
|             name = "xz" | ||||
|         }, | ||||
|         deb = { | ||||
|             icon = "", | ||||
|             color = colors.cyan, | ||||
|             name = "deb" | ||||
|         }, | ||||
|         rpm = { | ||||
|             icon = "", | ||||
|             color = colors.orange, | ||||
|             name = "rpm" | ||||
|         }, | ||||
|         lua = { | ||||
|             icon = "", | ||||
|             color = colors.blue, | ||||
|             name = "lua" | ||||
|         } | ||||
|     } | ||||
|    override = { | ||||
|       html = { | ||||
|          icon = "", | ||||
|          color = colors.baby_pink, | ||||
|          name = "html", | ||||
|       }, | ||||
|       css = { | ||||
|          icon = "", | ||||
|          color = colors.blue, | ||||
|          name = "css", | ||||
|       }, | ||||
|       js = { | ||||
|          icon = "", | ||||
|          color = colors.sun, | ||||
|          name = "js", | ||||
|       }, | ||||
|       ts = { | ||||
|          icon = "ﯤ", | ||||
|          color = colors.teal, | ||||
|          name = "ts", | ||||
|       }, | ||||
|       kt = { | ||||
|          icon = "", | ||||
|          color = colors.orange, | ||||
|          name = "kt", | ||||
|       }, | ||||
|       png = { | ||||
|          icon = "", | ||||
|          color = colors.dark_purple, | ||||
|          name = "png", | ||||
|       }, | ||||
|       jpg = { | ||||
|          icon = "", | ||||
|          color = colors.dark_purple, | ||||
|          name = "jpg", | ||||
|       }, | ||||
|       jpeg = { | ||||
|          icon = "", | ||||
|          color = colors.dark_purple, | ||||
|          name = "jpeg", | ||||
|       }, | ||||
|       mp3 = { | ||||
|          icon = "", | ||||
|          color = colors.white, | ||||
|          name = "mp3", | ||||
|       }, | ||||
|       mp4 = { | ||||
|          icon = "", | ||||
|          color = colors.white, | ||||
|          name = "mp4", | ||||
|       }, | ||||
|       out = { | ||||
|          icon = "", | ||||
|          color = colors.white, | ||||
|          name = "out", | ||||
|       }, | ||||
|       Dockerfile = { | ||||
|          icon = "", | ||||
|          color = colors.cyan, | ||||
|          name = "Dockerfile", | ||||
|       }, | ||||
|       rb = { | ||||
|          icon = "", | ||||
|          color = colors.pink, | ||||
|          name = "rb", | ||||
|       }, | ||||
|       vue = { | ||||
|          icon = "﵂", | ||||
|          color = colors.vibrant_green, | ||||
|          name = "vue", | ||||
|       }, | ||||
|       py = { | ||||
|          icon = "", | ||||
|          color = colors.cyan, | ||||
|          name = "py", | ||||
|       }, | ||||
|       toml = { | ||||
|          icon = "", | ||||
|          color = colors.blue, | ||||
|          name = "toml", | ||||
|       }, | ||||
|       lock = { | ||||
|          icon = "", | ||||
|          color = colors.red, | ||||
|          name = "lock", | ||||
|       }, | ||||
|       zip = { | ||||
|          icon = "", | ||||
|          color = colors.sun, | ||||
|          name = "zip", | ||||
|       }, | ||||
|       xz = { | ||||
|          icon = "", | ||||
|          color = colors.sun, | ||||
|          name = "xz", | ||||
|       }, | ||||
|       deb = { | ||||
|          icon = "", | ||||
|          color = colors.cyan, | ||||
|          name = "deb", | ||||
|       }, | ||||
|       rpm = { | ||||
|          icon = "", | ||||
|          color = colors.orange, | ||||
|          name = "rpm", | ||||
|       }, | ||||
|       lua = { | ||||
|          icon = "", | ||||
|          color = colors.blue, | ||||
|          name = "lua", | ||||
|       }, | ||||
|    }, | ||||
| } | ||||
|  |  | |||
|  | @ -1,42 +1,42 @@ | |||
| local present1, lspconfig = pcall(require, "lspconfig") | ||||
| local present2, lspinstall = pcall(require, "lspinstall") | ||||
| if not (present1 or present2) then | ||||
|     return | ||||
|    return | ||||
| end | ||||
| 
 | ||||
| local function on_attach(client, bufnr) | ||||
|     vim.api.nvim_buf_set_option(bufnr, "omnifunc", "v:lua.vim.lsp.omnifunc") | ||||
|    vim.api.nvim_buf_set_option(bufnr, "omnifunc", "v:lua.vim.lsp.omnifunc") | ||||
| 
 | ||||
|     local opts = {noremap = true, silent = true} | ||||
|    local opts = { noremap = true, silent = true } | ||||
| 
 | ||||
|     local function buf_set_keymap(...) | ||||
|         vim.api.nvim_buf_set_keymap(bufnr, ...) | ||||
|     end | ||||
|    local function buf_set_keymap(...) | ||||
|       vim.api.nvim_buf_set_keymap(bufnr, ...) | ||||
|    end | ||||
| 
 | ||||
|     -- Mappings. | ||||
|    -- Mappings. | ||||
| 
 | ||||
|     buf_set_keymap("n", "gD", "<Cmd>lua vim.lsp.buf.declaration()<CR>", opts) | ||||
|     buf_set_keymap("n", "gd", "<Cmd>lua vim.lsp.buf.definition()<CR>", opts) | ||||
|     buf_set_keymap("n", "K", "<Cmd>lua vim.lsp.buf.hover()<CR>", opts) | ||||
|     buf_set_keymap("n", "gi", "<cmd>lua vim.lsp.buf.implementation()<CR>", opts) | ||||
|     buf_set_keymap("n", "<C-k>", "<cmd>lua vim.lsp.buf.signature_help()<CR>", opts) | ||||
|     buf_set_keymap("n", "<space>wa", "<cmd>lua vim.lsp.buf.add_workspace_folder()<CR>", opts) | ||||
|     buf_set_keymap("n", "<space>wr", "<cmd>lua vim.lsp.buf.remove_workspace_folder()<CR>", opts) | ||||
|     buf_set_keymap("n", "<space>wl", "<cmd>lua print(vim.inspect(vim.lsp.buf.list_workspace_folders()))<CR>", opts) | ||||
|     buf_set_keymap("n", "<space>D", "<cmd>lua vim.lsp.buf.type_definition()<CR>", opts) | ||||
|     buf_set_keymap("n", "<space>rn", "<cmd>lua vim.lsp.buf.rename()<CR>", opts) | ||||
|     buf_set_keymap("n", "gr", "<cmd>lua vim.lsp.buf.references()<CR>", opts) | ||||
|     buf_set_keymap("n", "<space>e", "<cmd>lua vim.lsp.diagnostic.show_line_diagnostics()<CR>", opts) | ||||
|     buf_set_keymap("n", "[d", "<cmd>lua vim.lsp.diagnostic.goto_prev()<CR>", opts) | ||||
|     buf_set_keymap("n", "]d", "<cmd>lua vim.lsp.diagnostic.goto_next()<CR>", opts) | ||||
|     buf_set_keymap("n", "<space>q", "<cmd>lua vim.lsp.diagnostic.set_loclist()<CR>", opts) | ||||
|    buf_set_keymap("n", "gD", "<Cmd>lua vim.lsp.buf.declaration()<CR>", opts) | ||||
|    buf_set_keymap("n", "gd", "<Cmd>lua vim.lsp.buf.definition()<CR>", opts) | ||||
|    buf_set_keymap("n", "K", "<Cmd>lua vim.lsp.buf.hover()<CR>", opts) | ||||
|    buf_set_keymap("n", "gi", "<cmd>lua vim.lsp.buf.implementation()<CR>", opts) | ||||
|    buf_set_keymap("n", "<C-k>", "<cmd>lua vim.lsp.buf.signature_help()<CR>", opts) | ||||
|    buf_set_keymap("n", "<space>wa", "<cmd>lua vim.lsp.buf.add_workspace_folder()<CR>", opts) | ||||
|    buf_set_keymap("n", "<space>wr", "<cmd>lua vim.lsp.buf.remove_workspace_folder()<CR>", opts) | ||||
|    buf_set_keymap("n", "<space>wl", "<cmd>lua print(vim.inspect(vim.lsp.buf.list_workspace_folders()))<CR>", opts) | ||||
|    buf_set_keymap("n", "<space>D", "<cmd>lua vim.lsp.buf.type_definition()<CR>", opts) | ||||
|    buf_set_keymap("n", "<space>rn", "<cmd>lua vim.lsp.buf.rename()<CR>", opts) | ||||
|    buf_set_keymap("n", "gr", "<cmd>lua vim.lsp.buf.references()<CR>", opts) | ||||
|    buf_set_keymap("n", "<space>e", "<cmd>lua vim.lsp.diagnostic.show_line_diagnostics()<CR>", opts) | ||||
|    buf_set_keymap("n", "[d", "<cmd>lua vim.lsp.diagnostic.goto_prev()<CR>", opts) | ||||
|    buf_set_keymap("n", "]d", "<cmd>lua vim.lsp.diagnostic.goto_next()<CR>", opts) | ||||
|    buf_set_keymap("n", "<space>q", "<cmd>lua vim.lsp.diagnostic.set_loclist()<CR>", opts) | ||||
| 
 | ||||
|     -- Set some keybinds conditional on server capabilities | ||||
|     if client.resolved_capabilities.document_formatting then | ||||
|         buf_set_keymap("n", "<space>f", "<cmd>lua vim.lsp.buf.formatting()<CR>", opts) | ||||
|     elseif client.resolved_capabilities.document_range_formatting then | ||||
|         buf_set_keymap("n", "<space>f", "<cmd>lua vim.lsp.buf.range_formatting()<CR>", opts) | ||||
|     end | ||||
|    -- Set some keybinds conditional on server capabilities | ||||
|    if client.resolved_capabilities.document_formatting then | ||||
|       buf_set_keymap("n", "<space>f", "<cmd>lua vim.lsp.buf.formatting()<CR>", opts) | ||||
|    elseif client.resolved_capabilities.document_range_formatting then | ||||
|       buf_set_keymap("n", "<space>f", "<cmd>lua vim.lsp.buf.range_formatting()<CR>", opts) | ||||
|    end | ||||
| end | ||||
| 
 | ||||
| local capabilities = vim.lsp.protocol.make_client_capabilities() | ||||
|  | @ -45,53 +45,53 @@ capabilities.textDocument.completion.completionItem.snippetSupport = true | |||
| -- lspInstall + lspconfig stuff | ||||
| 
 | ||||
| local function setup_servers() | ||||
|     lspinstall.setup() | ||||
|     local servers = lspinstall.installed_servers() | ||||
|    lspinstall.setup() | ||||
|    local servers = lspinstall.installed_servers() | ||||
| 
 | ||||
|     for _, lang in pairs(servers) do | ||||
|         if lang ~= "lua" then | ||||
|             lspconfig[lang].setup { | ||||
|                 on_attach = on_attach, | ||||
|                 capabilities = capabilities, | ||||
|                 root_dir = vim.loop.cwd | ||||
|             } | ||||
|         elseif lang == "lua" then | ||||
|             lspconfig[lang].setup { | ||||
|                 root_dir = vim.loop.cwd, | ||||
|                 settings = { | ||||
|                     Lua = { | ||||
|                         diagnostics = { | ||||
|                             globals = {"vim"} | ||||
|                         }, | ||||
|                         workspace = { | ||||
|                             library = { | ||||
|                                 [vim.fn.expand("$VIMRUNTIME/lua")] = true, | ||||
|                                 [vim.fn.expand("$VIMRUNTIME/lua/vim/lsp")] = true | ||||
|                             }, | ||||
|                             maxPreload = 100000, | ||||
|                             preloadFileSize = 10000 | ||||
|                         }, | ||||
|                         telemetry = { | ||||
|                             enable = false | ||||
|                         } | ||||
|                     } | ||||
|                 } | ||||
|             } | ||||
|         end | ||||
|     end | ||||
|    for _, lang in pairs(servers) do | ||||
|       if lang ~= "lua" then | ||||
|          lspconfig[lang].setup { | ||||
|             on_attach = on_attach, | ||||
|             capabilities = capabilities, | ||||
|             root_dir = vim.loop.cwd, | ||||
|          } | ||||
|       elseif lang == "lua" then | ||||
|          lspconfig[lang].setup { | ||||
|             root_dir = vim.loop.cwd, | ||||
|             settings = { | ||||
|                Lua = { | ||||
|                   diagnostics = { | ||||
|                      globals = { "vim" }, | ||||
|                   }, | ||||
|                   workspace = { | ||||
|                      library = { | ||||
|                         [vim.fn.expand "$VIMRUNTIME/lua"] = true, | ||||
|                         [vim.fn.expand "$VIMRUNTIME/lua/vim/lsp"] = true, | ||||
|                      }, | ||||
|                      maxPreload = 100000, | ||||
|                      preloadFileSize = 10000, | ||||
|                   }, | ||||
|                   telemetry = { | ||||
|                      enable = false, | ||||
|                   }, | ||||
|                }, | ||||
|             }, | ||||
|          } | ||||
|       end | ||||
|    end | ||||
| end | ||||
| 
 | ||||
| setup_servers() | ||||
| 
 | ||||
| -- Automatically reload after `:LspInstall <server>` so we don't have to restart neovim | ||||
| lspinstall.post_install_hook = function() | ||||
|     setup_servers() -- reload installed servers | ||||
|     vim.cmd("bufdo e") -- triggers FileType autocmd that starts the server | ||||
|    setup_servers() -- reload installed servers | ||||
|    vim.cmd "bufdo e" | ||||
| end | ||||
| 
 | ||||
| -- replace the default lsp diagnostic symbols | ||||
| function lspSymbol(name, icon) | ||||
|     vim.fn.sign_define("LspDiagnosticsSign" .. name, {text = icon, numhl = "LspDiagnosticsDefaul" .. name}) | ||||
|    vim.fn.sign_define("LspDiagnosticsSign" .. name, { text = icon, numhl = "LspDiagnosticsDefaul" .. name }) | ||||
| end | ||||
| 
 | ||||
| lspSymbol("Error", "") | ||||
|  | @ -99,29 +99,25 @@ lspSymbol("Warning", "") | |||
| lspSymbol("Information", "") | ||||
| lspSymbol("Hint", "") | ||||
| 
 | ||||
| vim.lsp.handlers["textDocument/publishDiagnostics"] = | ||||
|     vim.lsp.with( | ||||
|     vim.lsp.diagnostic.on_publish_diagnostics, | ||||
|     { | ||||
|         virtual_text = { | ||||
|             prefix = "", | ||||
|             spacing = 0 | ||||
|         }, | ||||
|         signs = true, | ||||
|         underline = true, | ||||
|         -- set this to true if you want diagnostics to show in insert mode | ||||
|         update_in_insert = false | ||||
|     } | ||||
| ) | ||||
| vim.lsp.handlers["textDocument/publishDiagnostics"] = vim.lsp.with(vim.lsp.diagnostic.on_publish_diagnostics, { | ||||
|    virtual_text = { | ||||
|       prefix = "", | ||||
|       spacing = 0, | ||||
|    }, | ||||
|    signs = true, | ||||
|    underline = true, | ||||
|    -- set this to true if you want diagnostics to show in insert mode | ||||
|    update_in_insert = false, | ||||
| }) | ||||
| 
 | ||||
| -- suppress error messages from lang servers | ||||
| vim.notify = function(msg, log_level, _opts) | ||||
|     if msg:match("exit code") then | ||||
|         return | ||||
|     end | ||||
|     if log_level == vim.log.levels.ERROR then | ||||
|         vim.api.nvim_err_writeln(msg) | ||||
|     else | ||||
|         vim.api.nvim_echo({{msg}}, true, {}) | ||||
|     end | ||||
|    if msg:match "exit code" then | ||||
|       return | ||||
|    end | ||||
|    if log_level == vim.log.levels.ERROR then | ||||
|       vim.api.nvim_err_writeln(msg) | ||||
|    else | ||||
|       vim.api.nvim_echo({ { msg } }, true, {}) | ||||
|    end | ||||
| end | ||||
|  |  | |||
|  | @ -1,72 +1,66 @@ | |||
| local present, luasnip = pcall(require, "luasnip") | ||||
| if not present then | ||||
|     return | ||||
|    return | ||||
| end | ||||
| 
 | ||||
| local t = function(str) | ||||
|     return vim.api.nvim_replace_termcodes(str, true, true, true) | ||||
|    return vim.api.nvim_replace_termcodes(str, true, true, true) | ||||
| end | ||||
| 
 | ||||
| local check_back_space = function() | ||||
|     local col = vim.fn.col(".") - 1 | ||||
|     if col == 0 or vim.fn.getline("."):sub(col, col):match("%s") then | ||||
|         return true | ||||
|     else | ||||
|         return false | ||||
|     end | ||||
|    local col = vim.fn.col "." - 1 | ||||
|    if col == 0 or vim.fn.getline("."):sub(col, col):match "%s" then | ||||
|       return true | ||||
|    else | ||||
|       return false | ||||
|    end | ||||
| end | ||||
| 
 | ||||
| _G.tab_complete = function() | ||||
|     if vim.fn.pumvisible() == 1 then | ||||
|         return t "<C-n>" | ||||
|     elseif luasnip and luasnip.expand_or_jumpable() then | ||||
|         return t "<Plug>luasnip-expand-or-jump" | ||||
|     elseif check_back_space() then | ||||
|         return t "<Tab>" | ||||
|     else | ||||
|         return vim.fn["compe#complete"]() | ||||
|     end | ||||
|    if vim.fn.pumvisible() == 1 then | ||||
|       return t "<C-n>" | ||||
|    elseif luasnip and luasnip.expand_or_jumpable() then | ||||
|       return t "<Plug>luasnip-expand-or-jump" | ||||
|    elseif check_back_space() then | ||||
|       return t "<Tab>" | ||||
|    else | ||||
|       return vim.fn["compe#complete"]() | ||||
|    end | ||||
| end | ||||
| _G.s_tab_complete = function() | ||||
|     if vim.fn.pumvisible() == 1 then | ||||
|         return t "<C-p>" | ||||
|     elseif luasnip and luasnip.jumpable(-1) then | ||||
|         return t "<Plug>luasnip-jump-prev" | ||||
|     else | ||||
|         return t "<S-Tab>" | ||||
|     end | ||||
|    if vim.fn.pumvisible() == 1 then | ||||
|       return t "<C-p>" | ||||
|    elseif luasnip and luasnip.jumpable(-1) then | ||||
|       return t "<Plug>luasnip-jump-prev" | ||||
|    else | ||||
|       return t "<S-Tab>" | ||||
|    end | ||||
| end | ||||
| 
 | ||||
| _G.completions = function() | ||||
|     local npairs | ||||
|     if | ||||
|         not pcall( | ||||
|             function() | ||||
|                 npairs = require "nvim-autopairs" | ||||
|             end | ||||
|         ) | ||||
|      then | ||||
|         return | ||||
|     end | ||||
|    local npairs | ||||
|    if not pcall(function() | ||||
|       npairs = require "nvim-autopairs" | ||||
|    end) then | ||||
|       return | ||||
|    end | ||||
| 
 | ||||
|     if vim.fn.pumvisible() == 1 then | ||||
|         if vim.fn.complete_info()["selected"] ~= -1 then | ||||
|             return vim.fn["compe#confirm"]("<CR>") | ||||
|         end | ||||
|     end | ||||
|     return npairs.check_break_line_char() | ||||
|    if vim.fn.pumvisible() == 1 then | ||||
|       if vim.fn.complete_info()["selected"] ~= -1 then | ||||
|          return vim.fn["compe#confirm"] "<CR>" | ||||
|       end | ||||
|    end | ||||
|    return npairs.check_break_line_char() | ||||
| end | ||||
| 
 | ||||
| vim.api.nvim_set_keymap("i", "<Tab>", "v:lua.tab_complete()", {expr = true}) | ||||
| vim.api.nvim_set_keymap("s", "<Tab>", "v:lua.tab_complete()", {expr = true}) | ||||
| vim.api.nvim_set_keymap("i", "<S-Tab>", "v:lua.s_tab_complete()", {expr = true}) | ||||
| vim.api.nvim_set_keymap("s", "<S-Tab>", "v:lua.s_tab_complete()", {expr = true}) | ||||
| vim.api.nvim_set_keymap("i", "<CR>", "v:lua.completions()", {expr = true}) | ||||
| vim.api.nvim_set_keymap("i", "<Tab>", "v:lua.tab_complete()", { expr = true }) | ||||
| vim.api.nvim_set_keymap("s", "<Tab>", "v:lua.tab_complete()", { expr = true }) | ||||
| vim.api.nvim_set_keymap("i", "<S-Tab>", "v:lua.s_tab_complete()", { expr = true }) | ||||
| vim.api.nvim_set_keymap("s", "<S-Tab>", "v:lua.s_tab_complete()", { expr = true }) | ||||
| vim.api.nvim_set_keymap("i", "<CR>", "v:lua.completions()", { expr = true }) | ||||
| 
 | ||||
| luasnip.config.set_config( | ||||
|     { | ||||
|         history = true, | ||||
|         updateevents = "TextChanged,TextChangedI" | ||||
|     } | ||||
| ) | ||||
| luasnip.config.set_config { | ||||
|    history = true, | ||||
|    updateevents = "TextChanged,TextChangedI", | ||||
| } | ||||
| require("luasnip/loaders/from_vscode").load() | ||||
|  |  | |||
|  | @ -1,6 +1,6 @@ | |||
| local present, tree_c = pcall(require, "nvim-tree.config") | ||||
| if not present then | ||||
|     return | ||||
|    return | ||||
| end | ||||
| 
 | ||||
| local tree_cb = tree_c.nvim_tree_callback | ||||
|  | @ -10,9 +10,9 @@ vim.o.termguicolors = true | |||
| 
 | ||||
| g.nvim_tree_side = "left" | ||||
| g.nvim_tree_width = 25 | ||||
| g.nvim_tree_ignore = {".git", "node_modules", ".cache"} | ||||
| g.nvim_tree_ignore = { ".git", "node_modules", ".cache" } | ||||
| g.nvim_tree_gitignore = 1 | ||||
| g.nvim_tree_auto_ignore_ft = {"dashboard"} -- don't open tree on specific fiypes. | ||||
| g.nvim_tree_auto_ignore_ft = { "dashboard" } -- don't open tree on specific fiypes. | ||||
| g.nvim_tree_auto_open = 0 | ||||
| g.nvim_tree_auto_close = 0 -- closes tree when it's the last window | ||||
| g.nvim_tree_quit_on_open = 0 -- closes tree when file's opened | ||||
|  | @ -21,7 +21,7 @@ g.nvim_tree_indent_markers = 1 | |||
| g.nvim_tree_hide_dotfiles = 1 | ||||
| g.nvim_tree_git_hl = 1 | ||||
| g.nvim_tree_highlight_opened_files = 0 | ||||
| g.nvim_tree_root_folder_modifier = table.concat {":t:gs?$?/..", string.rep(" ", 1000), "?:gs?^??"} | ||||
| g.nvim_tree_root_folder_modifier = table.concat { ":t:gs?$?/..", string.rep(" ", 1000), "?:gs?^??" } | ||||
| g.nvim_tree_tab_open = 0 | ||||
| g.nvim_tree_allow_resize = 1 | ||||
| g.nvim_tree_add_trailing = 0 -- append a trailing slash to folder names | ||||
|  | @ -30,66 +30,66 @@ g.nvim_tree_hijack_netrw = 0 | |||
| g.nvim_tree_update_cwd = 1 | ||||
| 
 | ||||
| g.nvim_tree_show_icons = { | ||||
|     git = 1, | ||||
|     folders = 1, | ||||
|     files = 1 | ||||
|     -- folder_arrows= 1 | ||||
|    git = 1, | ||||
|    folders = 1, | ||||
|    files = 1, | ||||
|    -- folder_arrows= 1 | ||||
| } | ||||
| g.nvim_tree_icons = { | ||||
|     default = "", | ||||
|     symlink = "", | ||||
|     git = { | ||||
|         unstaged = "✗", | ||||
|         staged = "✓", | ||||
|         unmerged = "", | ||||
|         renamed = "➜", | ||||
|         untracked = "★", | ||||
|         deleted = "", | ||||
|         ignored = "◌" | ||||
|     }, | ||||
|     folder = { | ||||
|         -- disable indent_markers option to get arrows working or if you want both arrows and indent then just add the arrow icons in front            ofthe default and opened folders below! | ||||
|         -- arrow_open = "", | ||||
|         -- arrow_closed = "", | ||||
|         default = "", | ||||
|         open = "", | ||||
|         empty = "", --  | ||||
|         empty_open = "", | ||||
|         symlink = "", | ||||
|         symlink_open = "" | ||||
|     } | ||||
|    default = "", | ||||
|    symlink = "", | ||||
|    git = { | ||||
|       unstaged = "✗", | ||||
|       staged = "✓", | ||||
|       unmerged = "", | ||||
|       renamed = "➜", | ||||
|       untracked = "★", | ||||
|       deleted = "", | ||||
|       ignored = "◌", | ||||
|    }, | ||||
|    folder = { | ||||
|       -- disable indent_markers option to get arrows working or if you want both arrows and indent then just add the arrow icons in front            ofthe default and opened folders below! | ||||
|       -- arrow_open = "", | ||||
|       -- arrow_closed = "", | ||||
|       default = "", | ||||
|       open = "", | ||||
|       empty = "", --  | ||||
|       empty_open = "", | ||||
|       symlink = "", | ||||
|       symlink_open = "", | ||||
|    }, | ||||
| } | ||||
| 
 | ||||
| g.nvim_tree_bindings = { | ||||
|     {key = {"<CR>", "o", "<2-LeftMouse>"}, cb = tree_cb("edit")}, | ||||
|     {key = {"<2-RightMouse>", "<C-]>"}, cb = tree_cb("cd")}, | ||||
|     {key = "<C-v>", cb = tree_cb("vsplit")}, | ||||
|     {key = "<C-x>", cb = tree_cb("split")}, | ||||
|     {key = "<C-t>", cb = tree_cb("tabnew")}, | ||||
|     {key = "<", cb = tree_cb("prev_sibling")}, | ||||
|     {key = ">", cb = tree_cb("next_sibling")}, | ||||
|     {key = "P", cb = tree_cb("parent_node")}, | ||||
|     {key = "<BS>", cb = tree_cb("close_node")}, | ||||
|     {key = "<S-CR>", cb = tree_cb("close_node")}, | ||||
|     {key = "<Tab>", cb = tree_cb("preview")}, | ||||
|     {key = "K", cb = tree_cb("first_sibling")}, | ||||
|     {key = "J", cb = tree_cb("last_sibling")}, | ||||
|     {key = "I", cb = tree_cb("toggle_ignored")}, | ||||
|     {key = "H", cb = tree_cb("toggle_dotfiles")}, | ||||
|     {key = "R", cb = tree_cb("refresh")}, | ||||
|     {key = "a", cb = tree_cb("create")}, | ||||
|     {key = "d", cb = tree_cb("remove")}, | ||||
|     {key = "r", cb = tree_cb("rename")}, | ||||
|     {key = "<C->", cb = tree_cb("full_rename")}, | ||||
|     {key = "x", cb = tree_cb("cut")}, | ||||
|     {key = "c", cb = tree_cb("copy")}, | ||||
|     {key = "p", cb = tree_cb("paste")}, | ||||
|     {key = "y", cb = tree_cb("copy_name")}, | ||||
|     {key = "Y", cb = tree_cb("copy_path")}, | ||||
|     {key = "gy", cb = tree_cb("copy_absolute_path")}, | ||||
|     {key = "[c", cb = tree_cb("prev_git_item")}, | ||||
|     {key = "}c", cb = tree_cb("next_git_item")}, | ||||
|     {key = "-", cb = tree_cb("dir_up")}, | ||||
|     {key = "q", cb = tree_cb("close")}, | ||||
|     {key = "g?", cb = tree_cb("toggle_help")} | ||||
|    { key = { "<CR>", "o", "<2-LeftMouse>" }, cb = tree_cb "edit" }, | ||||
|    { key = { "<2-RightMouse>", "<C-]>" }, cb = tree_cb "cd" }, | ||||
|    { key = "<C-v>", cb = tree_cb "vsplit" }, | ||||
|    { key = "<C-x>", cb = tree_cb "split" }, | ||||
|    { key = "<C-t>", cb = tree_cb "tabnew" }, | ||||
|    { key = "<", cb = tree_cb "prev_sibling" }, | ||||
|    { key = ">", cb = tree_cb "next_sibling" }, | ||||
|    { key = "P", cb = tree_cb "parent_node" }, | ||||
|    { key = "<BS>", cb = tree_cb "close_node" }, | ||||
|    { key = "<S-CR>", cb = tree_cb "close_node" }, | ||||
|    { key = "<Tab>", cb = tree_cb "preview" }, | ||||
|    { key = "K", cb = tree_cb "first_sibling" }, | ||||
|    { key = "J", cb = tree_cb "last_sibling" }, | ||||
|    { key = "I", cb = tree_cb "toggle_ignored" }, | ||||
|    { key = "H", cb = tree_cb "toggle_dotfiles" }, | ||||
|    { key = "R", cb = tree_cb "refresh" }, | ||||
|    { key = "a", cb = tree_cb "create" }, | ||||
|    { key = "d", cb = tree_cb "remove" }, | ||||
|    { key = "r", cb = tree_cb "rename" }, | ||||
|    { key = "<C->", cb = tree_cb "full_rename" }, | ||||
|    { key = "x", cb = tree_cb "cut" }, | ||||
|    { key = "c", cb = tree_cb "copy" }, | ||||
|    { key = "p", cb = tree_cb "paste" }, | ||||
|    { key = "y", cb = tree_cb "copy_name" }, | ||||
|    { key = "Y", cb = tree_cb "copy_path" }, | ||||
|    { key = "gy", cb = tree_cb "copy_absolute_path" }, | ||||
|    { key = "[c", cb = tree_cb "prev_git_item" }, | ||||
|    { key = "}c", cb = tree_cb "next_git_item" }, | ||||
|    { key = "-", cb = tree_cb "dir_up" }, | ||||
|    { key = "q", cb = tree_cb "close" }, | ||||
|    { key = "g?", cb = tree_cb "toggle_help" }, | ||||
| } | ||||
|  |  | |||
|  | @ -1,75 +1,71 @@ | |||
| local M = {} | ||||
| 
 | ||||
| M.colorizer = function() | ||||
|     local present, colorizer = pcall(require, "colorizer") | ||||
|     if present then | ||||
|         colorizer.setup() | ||||
|         vim.cmd("ColorizerReloadAllBuffers") | ||||
|     end | ||||
|    local present, colorizer = pcall(require, "colorizer") | ||||
|    if present then | ||||
|       colorizer.setup() | ||||
|       vim.cmd "ColorizerReloadAllBuffers" | ||||
|    end | ||||
| end | ||||
| 
 | ||||
| M.comment = function() | ||||
|     local present, nvim_comment = pcall(require, "nvim_comment") | ||||
|     if present then | ||||
|         nvim_comment.setup() | ||||
|     end | ||||
|    local present, nvim_comment = pcall(require, "nvim_comment") | ||||
|    if present then | ||||
|       nvim_comment.setup() | ||||
|    end | ||||
| end | ||||
| 
 | ||||
| M.escape = function() | ||||
|     vim.g.better_escape_interval = 300 | ||||
|     vim.g.better_escape_shortcut = {"jk"} | ||||
|    vim.g.better_escape_interval = 300 | ||||
|    vim.g.better_escape_shortcut = { "jk" } | ||||
| end | ||||
| 
 | ||||
| M.lspkind = function() | ||||
|     local present, lspkind = pcall(require, "lspkind") | ||||
|     if present then | ||||
|         lspkind.init() | ||||
|     end | ||||
|    local present, lspkind = pcall(require, "lspkind") | ||||
|    if present then | ||||
|       lspkind.init() | ||||
|    end | ||||
| end | ||||
| 
 | ||||
| M.neoscroll = function() | ||||
|     pcall( | ||||
|         function() | ||||
|             require("neoscroll").setup() | ||||
|         end | ||||
|     ) | ||||
|    pcall(function() | ||||
|       require("neoscroll").setup() | ||||
|    end) | ||||
| end | ||||
| 
 | ||||
| M.blankline = function() | ||||
|     vim.g.indentLine_enabled = 1 | ||||
|     vim.g.indent_blankline_char = "▏" | ||||
|    vim.g.indentLine_enabled = 1 | ||||
|    vim.g.indent_blankline_char = "▏" | ||||
| 
 | ||||
|     vim.g.indent_blankline_filetype_exclude = {"help", "terminal", "dashboard", "packer"} | ||||
|     vim.g.indent_blankline_buftype_exclude = {"terminal"} | ||||
|    vim.g.indent_blankline_filetype_exclude = { "help", "terminal", "dashboard", "packer" } | ||||
|    vim.g.indent_blankline_buftype_exclude = { "terminal" } | ||||
| 
 | ||||
|     vim.g.indent_blankline_show_trailing_blankline_indent = false | ||||
|     vim.g.indent_blankline_show_first_indent_level = false | ||||
|    vim.g.indent_blankline_show_trailing_blankline_indent = false | ||||
|    vim.g.indent_blankline_show_first_indent_level = false | ||||
| end | ||||
| 
 | ||||
| M.signature = function() | ||||
|     local present, lspsignature = pcall(require, "lsp_signature") | ||||
|     if present then | ||||
|         lspsignature.setup( | ||||
|             { | ||||
|                 bind = true, | ||||
|                 doc_lines = 2, | ||||
|                 floating_window = true, | ||||
|                 fix_pos = true, | ||||
|                 hint_enable = true, | ||||
|                 hint_prefix = " ", | ||||
|                 hint_scheme = "String", | ||||
|                 use_lspsaga = false, | ||||
|                 hi_parameter = "Search", | ||||
|                 max_height = 22, | ||||
|                 max_width = 120, -- max_width of signature floating_window, line will be wrapped if exceed max_width | ||||
|                 handler_opts = { | ||||
|                     border = "single" -- double, single, shadow, none | ||||
|                 }, | ||||
|                 zindex = 200, -- by default it will be on top of all floating windows, set to 50 send it to bottom | ||||
|                 padding = "" -- character to pad on left and right of signature can be ' ', or '|'  etc | ||||
|             } | ||||
|         ) | ||||
|     end | ||||
|    local present, lspsignature = pcall(require, "lsp_signature") | ||||
|    if present then | ||||
|       lspsignature.setup { | ||||
|          bind = true, | ||||
|          doc_lines = 2, | ||||
|          floating_window = true, | ||||
|          fix_pos = true, | ||||
|          hint_enable = true, | ||||
|          hint_prefix = " ", | ||||
|          hint_scheme = "String", | ||||
|          use_lspsaga = false, | ||||
|          hi_parameter = "Search", | ||||
|          max_height = 22, | ||||
|          max_width = 120, -- max_width of signature floating_window, line will be wrapped if exceed max_width | ||||
|          handler_opts = { | ||||
|             border = "single", -- double, single, shadow, none | ||||
|          }, | ||||
|          zindex = 200, -- by default it will be on top of all floating windows, set to 50 send it to bottom | ||||
|          padding = "", -- character to pad on left and right of signature can be ' ', or '|'  etc | ||||
|       } | ||||
|    end | ||||
| end | ||||
| 
 | ||||
| return M | ||||
|  |  | |||
|  | @ -1,12 +1,12 @@ | |||
| local present1, gl = pcall(require, "galaxyline") | ||||
| local present2, condition = pcall(require, "galaxyline.condition") | ||||
| if not (present1 or present2) then | ||||
|     return | ||||
|    return | ||||
| end | ||||
| 
 | ||||
| local gls = gl.section | ||||
| 
 | ||||
| gl.short_line_list = {" "} | ||||
| gl.short_line_list = { " " } | ||||
| 
 | ||||
| local left_separator = "" -- or " " | ||||
| local right_separator = " " -- or "" | ||||
|  | @ -15,224 +15,224 @@ local global_theme = "themes/" .. vim.g.nvchad_theme | |||
| local colors = require(global_theme) | ||||
| 
 | ||||
| gls.left[1] = { | ||||
|     FirstElement = { | ||||
|         provider = function() | ||||
|             return "▋" | ||||
|         end, | ||||
|         highlight = {colors.nord_blue, colors.nord_blue} | ||||
|     } | ||||
|    FirstElement = { | ||||
|       provider = function() | ||||
|          return "▋" | ||||
|       end, | ||||
|       highlight = { colors.nord_blue, colors.nord_blue }, | ||||
|    }, | ||||
| } | ||||
| 
 | ||||
| gls.left[2] = { | ||||
|     statusIcon = { | ||||
|         provider = function() | ||||
|             return "  " | ||||
|         end, | ||||
|         highlight = {colors.statusline_bg, colors.nord_blue}, | ||||
|         separator = right_separator .. " ", | ||||
|         separator_highlight = {colors.nord_blue, colors.lightbg} | ||||
|     } | ||||
|    statusIcon = { | ||||
|       provider = function() | ||||
|          return "  " | ||||
|       end, | ||||
|       highlight = { colors.statusline_bg, colors.nord_blue }, | ||||
|       separator = right_separator .. " ", | ||||
|       separator_highlight = { colors.nord_blue, colors.lightbg }, | ||||
|    }, | ||||
| } | ||||
| 
 | ||||
| gls.left[3] = { | ||||
|     FileIcon = { | ||||
|         provider = "FileIcon", | ||||
|         condition = condition.buffer_not_empty, | ||||
|         highlight = {colors.white, colors.lightbg} | ||||
|     } | ||||
|    FileIcon = { | ||||
|       provider = "FileIcon", | ||||
|       condition = condition.buffer_not_empty, | ||||
|       highlight = { colors.white, colors.lightbg }, | ||||
|    }, | ||||
| } | ||||
| 
 | ||||
| gls.left[4] = { | ||||
|     FileName = { | ||||
|         provider = function() | ||||
|             local fileinfo = require('galaxyline.provider_fileinfo') | ||||
|             return fileinfo.get_current_file_name("", "") | ||||
|         end, | ||||
|         condition = condition.buffer_not_empty, | ||||
|         highlight = {colors.white, colors.lightbg}, | ||||
|         separator = right_separator, | ||||
|         separator_highlight = {colors.lightbg, colors.lightbg2} | ||||
|     } | ||||
|    FileName = { | ||||
|       provider = function() | ||||
|          local fileinfo = require "galaxyline.provider_fileinfo" | ||||
|          return fileinfo.get_current_file_name("", "") | ||||
|       end, | ||||
|       condition = condition.buffer_not_empty, | ||||
|       highlight = { colors.white, colors.lightbg }, | ||||
|       separator = right_separator, | ||||
|       separator_highlight = { colors.lightbg, colors.lightbg2 }, | ||||
|    }, | ||||
| } | ||||
| 
 | ||||
| gls.left[5] = { | ||||
|     current_dir = { | ||||
|         provider = function() | ||||
|             local dir_name = vim.fn.fnamemodify(vim.fn.getcwd(), ":t") | ||||
|             return "  " .. dir_name .. " " | ||||
|         end, | ||||
|         highlight = {colors.grey_fg2, colors.lightbg2}, | ||||
|         separator = right_separator, | ||||
|         separator_highlight = {colors.lightbg2, colors.statusline_bg} | ||||
|     } | ||||
|    current_dir = { | ||||
|       provider = function() | ||||
|          local dir_name = vim.fn.fnamemodify(vim.fn.getcwd(), ":t") | ||||
|          return "  " .. dir_name .. " " | ||||
|       end, | ||||
|       highlight = { colors.grey_fg2, colors.lightbg2 }, | ||||
|       separator = right_separator, | ||||
|       separator_highlight = { colors.lightbg2, colors.statusline_bg }, | ||||
|    }, | ||||
| } | ||||
| 
 | ||||
| local checkwidth = function() | ||||
|     local squeeze_width = vim.fn.winwidth(0) / 2 | ||||
|     if squeeze_width > 30 then | ||||
|         return true | ||||
|     end | ||||
|     return false | ||||
|    local squeeze_width = vim.fn.winwidth(0) / 2 | ||||
|    if squeeze_width > 30 then | ||||
|       return true | ||||
|    end | ||||
|    return false | ||||
| end | ||||
| 
 | ||||
| gls.left[6] = { | ||||
|     DiffAdd = { | ||||
|         provider = "DiffAdd", | ||||
|         condition = checkwidth, | ||||
|         icon = "  ", | ||||
|         highlight = {colors.white, colors.statusline_bg} | ||||
|     } | ||||
|    DiffAdd = { | ||||
|       provider = "DiffAdd", | ||||
|       condition = checkwidth, | ||||
|       icon = "  ", | ||||
|       highlight = { colors.white, colors.statusline_bg }, | ||||
|    }, | ||||
| } | ||||
| 
 | ||||
| gls.left[7] = { | ||||
|     DiffModified = { | ||||
|         provider = "DiffModified", | ||||
|         condition = checkwidth, | ||||
|         icon = "   ", | ||||
|         highlight = {colors.grey_fg2, colors.statusline_bg} | ||||
|     } | ||||
|    DiffModified = { | ||||
|       provider = "DiffModified", | ||||
|       condition = checkwidth, | ||||
|       icon = "   ", | ||||
|       highlight = { colors.grey_fg2, colors.statusline_bg }, | ||||
|    }, | ||||
| } | ||||
| 
 | ||||
| gls.left[8] = { | ||||
|     DiffRemove = { | ||||
|         provider = "DiffRemove", | ||||
|         condition = checkwidth, | ||||
|         icon = "  ", | ||||
|         highlight = {colors.grey_fg2, colors.statusline_bg} | ||||
|     } | ||||
|    DiffRemove = { | ||||
|       provider = "DiffRemove", | ||||
|       condition = checkwidth, | ||||
|       icon = "  ", | ||||
|       highlight = { colors.grey_fg2, colors.statusline_bg }, | ||||
|    }, | ||||
| } | ||||
| 
 | ||||
| gls.left[9] = { | ||||
|     DiagnosticError = { | ||||
|         provider = "DiagnosticError", | ||||
|         icon = "  ", | ||||
|         highlight = {colors.red, colors.statusline_bg} | ||||
|     } | ||||
|    DiagnosticError = { | ||||
|       provider = "DiagnosticError", | ||||
|       icon = "  ", | ||||
|       highlight = { colors.red, colors.statusline_bg }, | ||||
|    }, | ||||
| } | ||||
| 
 | ||||
| gls.left[10] = { | ||||
|     DiagnosticWarn = { | ||||
|         provider = "DiagnosticWarn", | ||||
|         icon = "  ", | ||||
|         highlight = {colors.yellow, colors.statusline_bg} | ||||
|     } | ||||
|    DiagnosticWarn = { | ||||
|       provider = "DiagnosticWarn", | ||||
|       icon = "  ", | ||||
|       highlight = { colors.yellow, colors.statusline_bg }, | ||||
|    }, | ||||
| } | ||||
| 
 | ||||
| gls.right[1] = { | ||||
|     lsp_status = { | ||||
|         provider = function() | ||||
|             local clients = vim.lsp.get_active_clients() | ||||
|             if next(clients) ~= nil then | ||||
|                 local buf_ft = vim.api.nvim_buf_get_option(0, "filetype") | ||||
|                 for _, client in ipairs(clients) do | ||||
|                     local filetypes = client.config.filetypes | ||||
|                     if filetypes and vim.fn.index(filetypes, buf_ft) ~= -1 then | ||||
|                         return " " .. "  " .. " LSP" | ||||
|                     end | ||||
|                 end | ||||
|                 return "" | ||||
|             else | ||||
|                 return "" | ||||
|    lsp_status = { | ||||
|       provider = function() | ||||
|          local clients = vim.lsp.get_active_clients() | ||||
|          if next(clients) ~= nil then | ||||
|             local buf_ft = vim.api.nvim_buf_get_option(0, "filetype") | ||||
|             for _, client in ipairs(clients) do | ||||
|                local filetypes = client.config.filetypes | ||||
|                if filetypes and vim.fn.index(filetypes, buf_ft) ~= -1 then | ||||
|                   return " " .. "  " .. " LSP" | ||||
|                end | ||||
|             end | ||||
|         end, | ||||
|         highlight = {colors.grey_fg2, colors.statusline_bg} | ||||
|     } | ||||
|             return "" | ||||
|          else | ||||
|             return "" | ||||
|          end | ||||
|       end, | ||||
|       highlight = { colors.grey_fg2, colors.statusline_bg }, | ||||
|    }, | ||||
| } | ||||
| 
 | ||||
| gls.right[2] = { | ||||
|     GitIcon = { | ||||
|         provider = function() | ||||
|             return " " | ||||
|         end, | ||||
|         condition = require("galaxyline.condition").check_git_workspace, | ||||
|         highlight = {colors.grey_fg2, colors.statusline_bg}, | ||||
|         separator = " ", | ||||
|         separator_highlight = {colors.statusline_bg, colors.statusline_bg} | ||||
|     } | ||||
|    GitIcon = { | ||||
|       provider = function() | ||||
|          return " " | ||||
|       end, | ||||
|       condition = require("galaxyline.condition").check_git_workspace, | ||||
|       highlight = { colors.grey_fg2, colors.statusline_bg }, | ||||
|       separator = " ", | ||||
|       separator_highlight = { colors.statusline_bg, colors.statusline_bg }, | ||||
|    }, | ||||
| } | ||||
| 
 | ||||
| gls.right[3] = { | ||||
|     GitBranch = { | ||||
|         provider = "GitBranch", | ||||
|         condition = require("galaxyline.condition").check_git_workspace, | ||||
|         highlight = {colors.grey_fg2, colors.statusline_bg} | ||||
|     } | ||||
|    GitBranch = { | ||||
|       provider = "GitBranch", | ||||
|       condition = require("galaxyline.condition").check_git_workspace, | ||||
|       highlight = { colors.grey_fg2, colors.statusline_bg }, | ||||
|    }, | ||||
| } | ||||
| 
 | ||||
| local mode_colors = { | ||||
|     [110] = {"NORMAL", colors.red}, | ||||
|     [105] = {"INSERT", colors.dark_purple}, | ||||
|     [99] = {"COMMAND", colors.pink}, | ||||
|     [116] = {"TERMINAL", colors.green}, | ||||
|     [118] = {"VISUAL", colors.cyan}, | ||||
|     [22] = {"V-BLOCK", colors.cyan}, | ||||
|     [86] = {"V_LINE", colors.cyan}, | ||||
|     [82] = {"REPLACE", colors.orange}, | ||||
|     [115] = {"SELECT", colors.nord_blue}, | ||||
|     [83] = {"S-LINE", colors.nord_blue} | ||||
|    [110] = { "NORMAL", colors.red }, | ||||
|    [105] = { "INSERT", colors.dark_purple }, | ||||
|    [99] = { "COMMAND", colors.pink }, | ||||
|    [116] = { "TERMINAL", colors.green }, | ||||
|    [118] = { "VISUAL", colors.cyan }, | ||||
|    [22] = { "V-BLOCK", colors.cyan }, | ||||
|    [86] = { "V_LINE", colors.cyan }, | ||||
|    [82] = { "REPLACE", colors.orange }, | ||||
|    [115] = { "SELECT", colors.nord_blue }, | ||||
|    [83] = { "S-LINE", colors.nord_blue }, | ||||
| } | ||||
| 
 | ||||
| local mode = function(n) | ||||
|     return mode_colors[vim.fn.mode():byte()][n] | ||||
|    return mode_colors[vim.fn.mode():byte()][n] | ||||
| end | ||||
| 
 | ||||
| gls.right[4] = { | ||||
|     left_round = { | ||||
|         provider = function() | ||||
|             vim.cmd("hi Galaxyleft_round guifg=" .. mode(2)) | ||||
|             return left_separator | ||||
|         end, | ||||
|         separator = " ", | ||||
|         separator_highlight = {colors.statusline_bg, colors.statusline_bg}, | ||||
|         highlight = {"GalaxyViMode", colors.statusline_bg} | ||||
|     } | ||||
|    left_round = { | ||||
|       provider = function() | ||||
|          vim.cmd("hi Galaxyleft_round guifg=" .. mode(2)) | ||||
|          return left_separator | ||||
|       end, | ||||
|       separator = " ", | ||||
|       separator_highlight = { colors.statusline_bg, colors.statusline_bg }, | ||||
|       highlight = { "GalaxyViMode", colors.statusline_bg }, | ||||
|    }, | ||||
| } | ||||
| 
 | ||||
| gls.right[5] = { | ||||
|     viMode_icon = { | ||||
|         provider = function() | ||||
|             vim.cmd("hi GalaxyviMode_icon guibg=" .. mode(2)) | ||||
|             return " " | ||||
|         end, | ||||
|         highlight = {colors.statusline_bg, colors.red} | ||||
|     } | ||||
|    viMode_icon = { | ||||
|       provider = function() | ||||
|          vim.cmd("hi GalaxyviMode_icon guibg=" .. mode(2)) | ||||
|          return " " | ||||
|       end, | ||||
|       highlight = { colors.statusline_bg, colors.red }, | ||||
|    }, | ||||
| } | ||||
| 
 | ||||
| gls.right[6] = { | ||||
|     ViMode = { | ||||
|         provider = function() | ||||
|             vim.cmd("hi GalaxyViMode guifg=" .. mode(2)) | ||||
|             return "  " .. mode(1) .. " " | ||||
|         end, | ||||
|         highlight = {"GalaxyViMode", colors.lightbg} | ||||
|     } | ||||
|    ViMode = { | ||||
|       provider = function() | ||||
|          vim.cmd("hi GalaxyViMode guifg=" .. mode(2)) | ||||
|          return "  " .. mode(1) .. " " | ||||
|       end, | ||||
|       highlight = { "GalaxyViMode", colors.lightbg }, | ||||
|    }, | ||||
| } | ||||
| 
 | ||||
| gls.right[7] = { | ||||
|     some_RoundIcon = { | ||||
|         provider = function() | ||||
|             return " " | ||||
|         end, | ||||
|         separator = left_separator, | ||||
|         separator_highlight = {colors.green, colors.lightbg}, | ||||
|         highlight = {colors.lightbg, colors.green} | ||||
|     } | ||||
|    some_RoundIcon = { | ||||
|       provider = function() | ||||
|          return " " | ||||
|       end, | ||||
|       separator = left_separator, | ||||
|       separator_highlight = { colors.green, colors.lightbg }, | ||||
|       highlight = { colors.lightbg, colors.green }, | ||||
|    }, | ||||
| } | ||||
| 
 | ||||
| gls.right[8] = { | ||||
|     line_percentage = { | ||||
|         provider = function() | ||||
|             local current_line = vim.fn.line(".") | ||||
|             local total_line = vim.fn.line("$") | ||||
|    line_percentage = { | ||||
|       provider = function() | ||||
|          local current_line = vim.fn.line "." | ||||
|          local total_line = vim.fn.line "$" | ||||
| 
 | ||||
|             if current_line == 1 then | ||||
|                 return "  Top " | ||||
|             elseif current_line == vim.fn.line("$") then | ||||
|                 return "  Bot " | ||||
|             end | ||||
|             local result, _ = math.modf((current_line / total_line) * 100) | ||||
|             return "  " .. result .. "% " | ||||
|         end, | ||||
|         highlight = {colors.green, colors.lightbg} | ||||
|     } | ||||
|          if current_line == 1 then | ||||
|             return "  Top " | ||||
|          elseif current_line == vim.fn.line "$" then | ||||
|             return "  Bot " | ||||
|          end | ||||
|          local result, _ = math.modf((current_line / total_line) * 100) | ||||
|          return "  " .. result .. "% " | ||||
|       end, | ||||
|       highlight = { colors.green, colors.lightbg }, | ||||
|    }, | ||||
| } | ||||
|  |  | |||
|  | @ -1,88 +1,82 @@ | |||
| local present, telescope = pcall(require, "telescope") | ||||
| if not present then | ||||
|     return | ||||
|    return | ||||
| end | ||||
| 
 | ||||
| telescope.setup( | ||||
|     { | ||||
|         defaults = { | ||||
|             vimgrep_arguments = { | ||||
|                 "rg", | ||||
|                 "--color=never", | ||||
|                 "--no-heading", | ||||
|                 "--with-filename", | ||||
|                 "--line-number", | ||||
|                 "--column", | ||||
|                 "--smart-case" | ||||
|             }, | ||||
|             prompt_prefix = "   ", | ||||
|             selection_caret = "  ", | ||||
|             entry_prefix = "  ", | ||||
|             initial_mode = "insert", | ||||
|             selection_strategy = "reset", | ||||
|             sorting_strategy = "descending", | ||||
|             layout_strategy = "horizontal", | ||||
|             layout_config = { | ||||
|                 horizontal = { | ||||
|                     prompt_position = "top", | ||||
|                     preview_width = 0.55, | ||||
|                     results_width = 0.8 | ||||
|                 }, | ||||
|                 vertical = { | ||||
|                     mirror = false | ||||
|                 }, | ||||
|                 width = 0.87, | ||||
|                 height = 0.80, | ||||
|                 preview_cutoff = 120 | ||||
|             }, | ||||
|             file_sorter = require("telescope.sorters").get_fuzzy_file, | ||||
|             file_ignore_patterns = {}, | ||||
|             generic_sorter = require("telescope.sorters").get_generic_fuzzy_sorter, | ||||
|             path_display = {"absolute"}, | ||||
|             winblend = 0, | ||||
|             border = {}, | ||||
|             borderchars = {"─", "│", "─", "│", "╭", "╮", "╯", "╰"}, | ||||
|             color_devicons = true, | ||||
|             use_less = true, | ||||
|             set_env = {["COLORTERM"] = "truecolor"}, -- default = nil, | ||||
|             file_previewer = require("telescope.previewers").vim_buffer_cat.new, | ||||
|             grep_previewer = require("telescope.previewers").vim_buffer_vimgrep.new, | ||||
|             qflist_previewer = require("telescope.previewers").vim_buffer_qflist.new, | ||||
|             -- Developer configurations: Not meant for general override | ||||
|             buffer_previewer_maker = require("telescope.previewers").buffer_previewer_maker | ||||
|         }, | ||||
|         extensions = { | ||||
|             fzf = { | ||||
|                 fuzzy = true, -- false will only do exact matching | ||||
|                 override_generic_sorter = false, -- override the generic sorter | ||||
|                 override_file_sorter = true, -- override the file sorter | ||||
|                 case_mode = "smart_case" -- or "ignore_case" or "respect_case" | ||||
|                 -- the default case_mode is "smart_case" | ||||
|             }, | ||||
|             media_files = { | ||||
|                 filetypes = {"png", "webp", "jpg", "jpeg"}, | ||||
|                 find_cmd = "rg" -- find command (defaults to `fd`) | ||||
|             } | ||||
|         } | ||||
|     } | ||||
| ) | ||||
| telescope.setup { | ||||
|    defaults = { | ||||
|       vimgrep_arguments = { | ||||
|          "rg", | ||||
|          "--color=never", | ||||
|          "--no-heading", | ||||
|          "--with-filename", | ||||
|          "--line-number", | ||||
|          "--column", | ||||
|          "--smart-case", | ||||
|       }, | ||||
|       prompt_prefix = "   ", | ||||
|       selection_caret = "  ", | ||||
|       entry_prefix = "  ", | ||||
|       initial_mode = "insert", | ||||
|       selection_strategy = "reset", | ||||
|       sorting_strategy = "descending", | ||||
|       layout_strategy = "horizontal", | ||||
|       layout_config = { | ||||
|          horizontal = { | ||||
|             prompt_position = "top", | ||||
|             preview_width = 0.55, | ||||
|             results_width = 0.8, | ||||
|          }, | ||||
|          vertical = { | ||||
|             mirror = false, | ||||
|          }, | ||||
|          width = 0.87, | ||||
|          height = 0.80, | ||||
|          preview_cutoff = 120, | ||||
|       }, | ||||
|       file_sorter = require("telescope.sorters").get_fuzzy_file, | ||||
|       file_ignore_patterns = {}, | ||||
|       generic_sorter = require("telescope.sorters").get_generic_fuzzy_sorter, | ||||
|       path_display = { "absolute" }, | ||||
|       winblend = 0, | ||||
|       border = {}, | ||||
|       borderchars = { "─", "│", "─", "│", "╭", "╮", "╯", "╰" }, | ||||
|       color_devicons = true, | ||||
|       use_less = true, | ||||
|       set_env = { ["COLORTERM"] = "truecolor" }, -- default = nil, | ||||
|       file_previewer = require("telescope.previewers").vim_buffer_cat.new, | ||||
|       grep_previewer = require("telescope.previewers").vim_buffer_vimgrep.new, | ||||
|       qflist_previewer = require("telescope.previewers").vim_buffer_qflist.new, | ||||
|       -- Developer configurations: Not meant for general override | ||||
|       buffer_previewer_maker = require("telescope.previewers").buffer_previewer_maker, | ||||
|    }, | ||||
|    extensions = { | ||||
|       fzf = { | ||||
|          fuzzy = true, -- false will only do exact matching | ||||
|          override_generic_sorter = false, -- override the generic sorter | ||||
|          override_file_sorter = true, -- override the file sorter | ||||
|          case_mode = "smart_case", -- or "ignore_case" or "respect_case" | ||||
|          -- the default case_mode is "smart_case" | ||||
|       }, | ||||
|       media_files = { | ||||
|          filetypes = { "png", "webp", "jpg", "jpeg" }, | ||||
|          find_cmd = "rg", -- find command (defaults to `fd`) | ||||
|       }, | ||||
|    }, | ||||
| } | ||||
| 
 | ||||
| -- load the theme_switcher extension | ||||
| require("telescope").load_extension("themes") | ||||
| require("telescope").load_extension "themes" | ||||
| 
 | ||||
| if | ||||
|     not pcall( | ||||
|         function() | ||||
|             telescope.load_extension("fzf") | ||||
|             telescope.load_extension("media_files") | ||||
|         end | ||||
|     ) | ||||
|  then | ||||
|      -- This should only trigger when in need of PackerSync, so better do it | ||||
|     print("After completion of PackerCompile, restart neovim.") | ||||
|     -- Trigger packer compile on PackerComplete, so it properly waits for PackerSync | ||||
|     vim.cmd 'autocmd User PackerComplete ++once lua print "Waiting for PackerCompile.." require("packer").compile()' | ||||
|     vim.cmd 'autocmd User PackerCompileDone ++once echo "Packer Compile done, restart neovim."' | ||||
|     require "pluginList" | ||||
|     require("packer").update("telescope-fzf-native.nvim", "telescope-media-files.nvim") | ||||
| if not pcall(function() | ||||
|    telescope.load_extension "fzf" | ||||
|    telescope.load_extension "media_files" | ||||
| end) then | ||||
|    -- This should only trigger when in need of PackerSync, so better do it | ||||
|    print "After completion of PackerCompile, restart neovim." | ||||
|    -- Trigger packer compile on PackerComplete, so it properly waits for PackerSync | ||||
|    vim.cmd 'autocmd User PackerComplete ++once lua print "Waiting for PackerCompile.." require("packer").compile()' | ||||
|    vim.cmd 'autocmd User PackerCompileDone ++once echo "Packer Compile done, restart neovim."' | ||||
|    require "pluginList" | ||||
|    require("packer").update("telescope-fzf-native.nvim", "telescope-media-files.nvim") | ||||
| end | ||||
|  |  | |||
|  | @ -1,47 +1,47 @@ | |||
| local present, toggleterm = pcall(require, "toggleterm") | ||||
| if not present then | ||||
|     return | ||||
|    return | ||||
| end | ||||
| 
 | ||||
| toggleterm.setup { | ||||
|       -- size can be a number or function which is passed the current terminal | ||||
|     size = function(term) | ||||
|         if term.direction == "horizontal" then | ||||
|             return 15 | ||||
|         elseif term.direction == "vertical" then | ||||
|             return vim.o.columns * 0.4 | ||||
|         end | ||||
|     end, | ||||
|     -- open_mapping = [[<C-\>]], -- mapping set in mappings.lua | ||||
|     hide_numbers = true, -- hide the number column in toggleterm buffers | ||||
|     shade_terminals = false, | ||||
|     start_in_insert = true, | ||||
|     -- insert_mappings = true, -- see 'open_mapping', not set on purpose | ||||
|         -- whether or not the open mapping applies in insert mode | ||||
|     persist_size = true, | ||||
|     direction = 'vertical', | ||||
|     close_on_exit = true, -- close the terminal window when the process exits | ||||
|     -- This field is only relevant if direction is set to 'float' | ||||
|     float_opts = { | ||||
|         border = 'single', | ||||
|         winblend = 0, | ||||
|         highlights = { | ||||
|             border = "Normal", | ||||
|             background = "Normal", | ||||
|         } | ||||
|     } | ||||
|    -- size can be a number or function which is passed the current terminal | ||||
|    size = function(term) | ||||
|       if term.direction == "horizontal" then | ||||
|          return 15 | ||||
|       elseif term.direction == "vertical" then | ||||
|          return vim.o.columns * 0.4 | ||||
|       end | ||||
|    end, | ||||
|    -- open_mapping = [[<C-\>]], -- mapping set in mappings.lua | ||||
|    hide_numbers = true, -- hide the number column in toggleterm buffers | ||||
|    shade_terminals = false, | ||||
|    start_in_insert = true, | ||||
|    -- insert_mappings = true, -- see 'open_mapping', not set on purpose | ||||
|    -- whether or not the open mapping applies in insert mode | ||||
|    persist_size = true, | ||||
|    direction = "vertical", | ||||
|    close_on_exit = true, -- close the terminal window when the process exits | ||||
|    -- This field is only relevant if direction is set to 'float' | ||||
|    float_opts = { | ||||
|       border = "single", | ||||
|       winblend = 0, | ||||
|       highlights = { | ||||
|          border = "Normal", | ||||
|          background = "Normal", | ||||
|       }, | ||||
|    }, | ||||
| } | ||||
| 
 | ||||
| local Terminal = require("toggleterm.terminal").Terminal | ||||
| 
 | ||||
| _G.termW = Terminal:new { | ||||
|         direction = "window", | ||||
|    direction = "window", | ||||
| } | ||||
| 
 | ||||
| _G.termV = Terminal:new { | ||||
|         direction = "vertical", | ||||
|    direction = "vertical", | ||||
| } | ||||
| 
 | ||||
| _G.termH = Terminal:new { | ||||
|         direction = "horizontal", | ||||
|    direction = "horizontal", | ||||
| } | ||||
|  |  | |||
|  | @ -1,15 +1,15 @@ | |||
| local present, ts_config = pcall(require, "nvim-treesitter.configs") | ||||
| if not present then | ||||
|     return | ||||
|    return | ||||
| end | ||||
| 
 | ||||
| ts_config.setup { | ||||
|     ensure_installed = { | ||||
|         "bash", | ||||
|         "lua" | ||||
|     }, | ||||
|     highlight = { | ||||
|         enable = true, | ||||
|         use_languagetree = true | ||||
|     } | ||||
|    ensure_installed = { | ||||
|       "bash", | ||||
|       "lua", | ||||
|    }, | ||||
|    highlight = { | ||||
|       enable = true, | ||||
|       use_languagetree = true, | ||||
|    }, | ||||
| } | ||||
|  |  | |||
|  | @ -1,70 +1,68 @@ | |||
| local present, true_zen = pcall(require, "true-zen") | ||||
| if not present then | ||||
|     return | ||||
|    return | ||||
| end | ||||
| 
 | ||||
| true_zen.setup( | ||||
|     { | ||||
|         ui = { | ||||
|             bottom = { | ||||
|                 laststatus = 0, | ||||
|                 ruler = false, | ||||
|                 showmode = false, | ||||
|                 showcmd = false, | ||||
|                 cmdheight = 1 | ||||
|             }, | ||||
|             top = { | ||||
|                 showtabline = 0 | ||||
|             }, | ||||
|             left = { | ||||
|                 number = false, | ||||
|                 relativenumber = false, | ||||
|                 signcolumn = "no" | ||||
|             } | ||||
|         }, | ||||
|         modes = { | ||||
|             ataraxis = { | ||||
|                 left_padding = 32, | ||||
|                 right_padding = 32, | ||||
|                 top_padding = 1, | ||||
|                 bottom_padding = 1, | ||||
|                 ideal_writing_area_width = {0}, | ||||
|                 auto_padding = true, | ||||
|                 keep_default_fold_fillchars = true, | ||||
|                 custome_bg = "", | ||||
|                 bg_configuration = true, | ||||
|                 affected_higroups = { | ||||
|                     NonText = {}, | ||||
|                     FoldColumn = {}, | ||||
|                     ColorColumn = {}, | ||||
|                     VertSplit = {}, | ||||
|                     StatusLine = {}, | ||||
|                     StatusLineNC = {}, | ||||
|                     SignColumn = {} | ||||
|                 } | ||||
|             }, | ||||
|             focus = { | ||||
|                 margin_of_error = 5, | ||||
|                 focus_method = "experimental" | ||||
|             } | ||||
|         }, | ||||
|         integrations = { | ||||
|             vim_gitgutter = false, | ||||
|             galaxyline = true, | ||||
|             tmux = false, | ||||
|             gitsigns = false, | ||||
|             nvim_bufferline = true, | ||||
|             limelight = false, | ||||
|             vim_airline = false, | ||||
|             vim_powerline = false, | ||||
|             vim_signify = false, | ||||
|             express_line = false, | ||||
|             lualine = false | ||||
|         }, | ||||
|         misc = { | ||||
|             on_off_commands = false, | ||||
|             ui_elements_commands = false, | ||||
|             cursor_by_mode = false | ||||
|         } | ||||
|     } | ||||
| ) | ||||
| true_zen.setup { | ||||
|    ui = { | ||||
|       bottom = { | ||||
|          laststatus = 0, | ||||
|          ruler = false, | ||||
|          showmode = false, | ||||
|          showcmd = false, | ||||
|          cmdheight = 1, | ||||
|       }, | ||||
|       top = { | ||||
|          showtabline = 0, | ||||
|       }, | ||||
|       left = { | ||||
|          number = false, | ||||
|          relativenumber = false, | ||||
|          signcolumn = "no", | ||||
|       }, | ||||
|    }, | ||||
|    modes = { | ||||
|       ataraxis = { | ||||
|          left_padding = 32, | ||||
|          right_padding = 32, | ||||
|          top_padding = 1, | ||||
|          bottom_padding = 1, | ||||
|          ideal_writing_area_width = { 0 }, | ||||
|          auto_padding = true, | ||||
|          keep_default_fold_fillchars = true, | ||||
|          custome_bg = "", | ||||
|          bg_configuration = true, | ||||
|          affected_higroups = { | ||||
|             NonText = {}, | ||||
|             FoldColumn = {}, | ||||
|             ColorColumn = {}, | ||||
|             VertSplit = {}, | ||||
|             StatusLine = {}, | ||||
|             StatusLineNC = {}, | ||||
|             SignColumn = {}, | ||||
|          }, | ||||
|       }, | ||||
|       focus = { | ||||
|          margin_of_error = 5, | ||||
|          focus_method = "experimental", | ||||
|       }, | ||||
|    }, | ||||
|    integrations = { | ||||
|       vim_gitgutter = false, | ||||
|       galaxyline = true, | ||||
|       tmux = false, | ||||
|       gitsigns = false, | ||||
|       nvim_bufferline = true, | ||||
|       limelight = false, | ||||
|       vim_airline = false, | ||||
|       vim_powerline = false, | ||||
|       vim_signify = false, | ||||
|       express_line = false, | ||||
|       lualine = false, | ||||
|    }, | ||||
|    misc = { | ||||
|       on_off_commands = false, | ||||
|       ui_elements_commands = false, | ||||
|       cursor_by_mode = false, | ||||
|    }, | ||||
| } | ||||
|  |  | |||
|  | @ -4,144 +4,139 @@ local M = {} | |||
| -- Custom theme picker | ||||
| -- Most of the code is copied from telescope colorscheme plugin, mostly for preview creation | ||||
| M.theme_switcher = function(opts) | ||||
|     local pickers, finders, previewers, actions, action_state, utils, conf | ||||
|     if pcall(require, "telescope") then | ||||
|         pickers = require "telescope.pickers" | ||||
|         finders = require "telescope.finders" | ||||
|         previewers = require "telescope.previewers" | ||||
|    local pickers, finders, previewers, actions, action_state, utils, conf | ||||
|    if pcall(require, "telescope") then | ||||
|       pickers = require "telescope.pickers" | ||||
|       finders = require "telescope.finders" | ||||
|       previewers = require "telescope.previewers" | ||||
| 
 | ||||
|         actions = require "telescope.actions" | ||||
|         action_state = require "telescope.actions.state" | ||||
|         utils = require "telescope.utils" | ||||
|         conf = require("telescope.config").values | ||||
|     else | ||||
|         error "Cannot find telescope!" | ||||
|     end | ||||
|       actions = require "telescope.actions" | ||||
|       action_state = require "telescope.actions.state" | ||||
|       utils = require "telescope.utils" | ||||
|       conf = require("telescope.config").values | ||||
|    else | ||||
|       error "Cannot find telescope!" | ||||
|    end | ||||
| 
 | ||||
|     local local_utils = require "utils" | ||||
|     local reload_theme = local_utils.reload_theme | ||||
|    local local_utils = require "utils" | ||||
|    local reload_theme = local_utils.reload_theme | ||||
| 
 | ||||
|     -- get a table of available themes | ||||
|     local themes = local_utils.list_themes() | ||||
|     if next(themes) ~= nil then | ||||
|         -- save this to use it for later to restore if theme not changed | ||||
|         local current_theme = vim.g.nvchad_theme | ||||
|         local new_theme = "" | ||||
|         local change = false | ||||
|    -- get a table of available themes | ||||
|    local themes = local_utils.list_themes() | ||||
|    if next(themes) ~= nil then | ||||
|       -- save this to use it for later to restore if theme not changed | ||||
|       local current_theme = vim.g.nvchad_theme | ||||
|       local new_theme = "" | ||||
|       local change = false | ||||
| 
 | ||||
|         -- buffer number and name | ||||
|         local bufnr = vim.api.nvim_get_current_buf() | ||||
|         local bufname = vim.api.nvim_buf_get_name(bufnr) | ||||
|       -- buffer number and name | ||||
|       local bufnr = vim.api.nvim_get_current_buf() | ||||
|       local bufname = vim.api.nvim_buf_get_name(bufnr) | ||||
| 
 | ||||
|         local previewer | ||||
|       local previewer | ||||
| 
 | ||||
|         -- in case its not a normal buffer | ||||
|         if vim.fn.buflisted(bufnr) ~= 1 then | ||||
|             local deleted = false | ||||
|             local function del_win(win_id) | ||||
|                 if win_id and vim.api.nvim_win_is_valid(win_id) then | ||||
|                     utils.buf_delete(vim.api.nvim_win_get_buf(win_id)) | ||||
|                     pcall(vim.api.nvim_win_close, win_id, true) | ||||
|                 end | ||||
|       -- in case its not a normal buffer | ||||
|       if vim.fn.buflisted(bufnr) ~= 1 then | ||||
|          local deleted = false | ||||
|          local function del_win(win_id) | ||||
|             if win_id and vim.api.nvim_win_is_valid(win_id) then | ||||
|                utils.buf_delete(vim.api.nvim_win_get_buf(win_id)) | ||||
|                pcall(vim.api.nvim_win_close, win_id, true) | ||||
|             end | ||||
|          end | ||||
| 
 | ||||
|             previewer = | ||||
|                 previewers.new { | ||||
|                 preview_fn = function(_, entry, status) | ||||
|                     if not deleted then | ||||
|                         deleted = true | ||||
|                         del_win(status.preview_win) | ||||
|                         del_win(status.preview_border_win) | ||||
|                     end | ||||
|                     reload_theme(entry.value) | ||||
|                 end | ||||
|             } | ||||
|         else | ||||
|             -- show current buffer content in previewer | ||||
|             previewer = | ||||
|                 previewers.new_buffer_previewer { | ||||
|                 get_buffer_by_name = function() | ||||
|                     return bufname | ||||
|                 end, | ||||
|                 define_preview = function(self, entry) | ||||
|                     if vim.loop.fs_stat(bufname) then | ||||
|                         conf.buffer_previewer_maker(bufname, self.state.bufnr, {bufname = self.state.bufname}) | ||||
|                     else | ||||
|                         local lines = vim.api.nvim_buf_get_lines(bufnr, 0, -1, false) | ||||
|                         vim.api.nvim_buf_set_lines(self.state.bufnr, 0, -1, false, lines) | ||||
|                     end | ||||
|                     reload_theme(entry.value) | ||||
|                 end | ||||
|             } | ||||
|         end | ||||
|          previewer = previewers.new { | ||||
|             preview_fn = function(_, entry, status) | ||||
|                if not deleted then | ||||
|                   deleted = true | ||||
|                   del_win(status.preview_win) | ||||
|                   del_win(status.preview_border_win) | ||||
|                end | ||||
|                reload_theme(entry.value) | ||||
|             end, | ||||
|          } | ||||
|       else | ||||
|          -- show current buffer content in previewer | ||||
|          previewer = previewers.new_buffer_previewer { | ||||
|             get_buffer_by_name = function() | ||||
|                return bufname | ||||
|             end, | ||||
|             define_preview = function(self, entry) | ||||
|                if vim.loop.fs_stat(bufname) then | ||||
|                   conf.buffer_previewer_maker(bufname, self.state.bufnr, { bufname = self.state.bufname }) | ||||
|                else | ||||
|                   local lines = vim.api.nvim_buf_get_lines(bufnr, 0, -1, false) | ||||
|                   vim.api.nvim_buf_set_lines(self.state.bufnr, 0, -1, false, lines) | ||||
|                end | ||||
|                reload_theme(entry.value) | ||||
|             end, | ||||
|          } | ||||
|       end | ||||
| 
 | ||||
|         local picker = | ||||
|             pickers.new( | ||||
|             { | ||||
|                 prompt_title = "Set NvChad color", | ||||
|                 finder = finders.new_table(themes), | ||||
|                 previewer = previewer, | ||||
|                 sorter = conf.generic_sorter(opts), | ||||
|                 attach_mappings = function() | ||||
|                     actions.select_default:replace( | ||||
|                         -- if a entry is selected, change current_theme to that | ||||
|                         function(prompt_bufnr) | ||||
|                             local selection = action_state.get_selected_entry() | ||||
|                             new_theme = selection.value | ||||
|                             change = true | ||||
|                             actions.close(prompt_bufnr) | ||||
|                         end | ||||
|                     ) | ||||
|                     return true | ||||
|                 end | ||||
|             } | ||||
|         ) | ||||
|       local picker = pickers.new { | ||||
|          prompt_title = "Set NvChad color", | ||||
|          finder = finders.new_table(themes), | ||||
|          previewer = previewer, | ||||
|          sorter = conf.generic_sorter(opts), | ||||
|          attach_mappings = function() | ||||
|             actions.select_default:replace( | ||||
|                -- if a entry is selected, change current_theme to that | ||||
|                function(prompt_bufnr) | ||||
|                   local selection = action_state.get_selected_entry() | ||||
|                   new_theme = selection.value | ||||
|                   change = true | ||||
|                   actions.close(prompt_bufnr) | ||||
|                end | ||||
|             ) | ||||
|             return true | ||||
|          end, | ||||
|       } | ||||
| 
 | ||||
|         -- rewrite picker.close_windows | ||||
|         local close_windows = picker.close_windows | ||||
|         picker.close_windows = function(status) | ||||
|             close_windows(status) | ||||
|             -- now apply the theme, if success, then ask for default theme change | ||||
|             local final_theme | ||||
|       -- rewrite picker.close_windows | ||||
|       local close_windows = picker.close_windows | ||||
|       picker.close_windows = function(status) | ||||
|          close_windows(status) | ||||
|          -- now apply the theme, if success, then ask for default theme change | ||||
|          local final_theme | ||||
|          if change then | ||||
|             final_theme = new_theme | ||||
|          else | ||||
|             final_theme = current_theme | ||||
|          end | ||||
| 
 | ||||
|          if reload_theme(final_theme) then | ||||
|             if change then | ||||
|                 final_theme = new_theme | ||||
|             else | ||||
|                 final_theme = current_theme | ||||
|                -- ask for confirmation to set as default theme | ||||
|                local ans = string.lower(vim.fn.input("Set " .. new_theme .. " as default theme ? [y/N] ")) == "y" | ||||
|                local_utils.clear_cmdline() | ||||
|                if ans then | ||||
|                   local_utils.change_theme(current_theme, final_theme) | ||||
|                else | ||||
|                   -- will be used in restoring nvchad theme var | ||||
|                   final_theme = current_theme | ||||
|                end | ||||
|             end | ||||
| 
 | ||||
|             if reload_theme(final_theme) then | ||||
|                 if change then | ||||
|                     -- ask for confirmation to set as default theme | ||||
|                     local ans = string.lower(vim.fn.input("Set " .. new_theme .. " as default theme ? [y/N] ")) == "y" | ||||
|                     local_utils.clear_cmdline() | ||||
|                     if ans then | ||||
|                         local_utils.change_theme(current_theme, final_theme) | ||||
|                     else | ||||
|                         -- will be used in restoring nvchad theme var | ||||
|                         final_theme = current_theme | ||||
|                     end | ||||
|                 end | ||||
|             else | ||||
|                 final_theme = current_theme | ||||
|             end | ||||
|             -- set nvchad_theme global var | ||||
|             vim.g.nvchad_theme = final_theme | ||||
|         end | ||||
|         -- launch the telescope picker | ||||
|         picker:find() | ||||
|     else | ||||
|         print("No themes found in " .. vim.fn.stdpath("config") .. "/lua/themes") | ||||
|     end | ||||
|          else | ||||
|             final_theme = current_theme | ||||
|          end | ||||
|          -- set nvchad_theme global var | ||||
|          vim.g.nvchad_theme = final_theme | ||||
|       end | ||||
|       -- launch the telescope picker | ||||
|       picker:find() | ||||
|    else | ||||
|       print("No themes found in " .. vim.fn.stdpath "config" .. "/lua/themes") | ||||
|    end | ||||
| end | ||||
| 
 | ||||
| -- register theme swticher as themes to telescope | ||||
| local present, telescope = pcall(require, "telescope") | ||||
| if present then | ||||
|     return telescope.register_extension { | ||||
|         exports = { | ||||
|             themes = M.theme_switcher | ||||
|         } | ||||
|     } | ||||
|    return telescope.register_extension { | ||||
|       exports = { | ||||
|          themes = M.theme_switcher, | ||||
|       }, | ||||
|    } | ||||
| else | ||||
|     error "Cannot find telescope!" | ||||
|    error "Cannot find telescope!" | ||||
| end | ||||
|  |  | |||
|  | @ -4,9 +4,9 @@ vim.g.nvchad_theme = chad_theme | |||
| local present, base16 = pcall(require, "base16") | ||||
| 
 | ||||
| if present then | ||||
|     base16(base16.themes(chad_theme), true) | ||||
|     require "highlights" | ||||
|     return true | ||||
|    base16(base16.themes(chad_theme), true) | ||||
|    require "highlights" | ||||
|    return true | ||||
| else | ||||
|     return false | ||||
|    return false | ||||
| end | ||||
|  |  | |||
|  | @ -1,33 +1,33 @@ | |||
| local colors = { | ||||
|     white = "#F8F8F2", | ||||
|     darker_black = "#232531", | ||||
|     black = "#282A36", --  nvim bg | ||||
|     black2 = "#303341", | ||||
|     one_bg = "#373844", -- real bg of onedark | ||||
|     one_bg2 = "#44475a", | ||||
|     one_bg3 = "#565761", | ||||
|     grey = "#41434f", | ||||
|     grey_fg = "#5a5c68", | ||||
|     grey_fg2 = "#5a5c68", | ||||
|     light_grey = "#636571", | ||||
|     red = "#FF5555", | ||||
|     baby_pink = "#DE8C92", | ||||
|     pink = "#FF79C6", | ||||
|     line = "#373844", -- for lines like vertsplit | ||||
|     green = "#50FA7B", | ||||
|     vibrant_green = "#69FF94", | ||||
|     nord_blue = "#b389ef", | ||||
|     blue = "#BD93F9", | ||||
|     yellow = "#F1FA8C", | ||||
|     sun = "#FFFFA5", | ||||
|     purple = "#BD93F9", | ||||
|     dark_purple = "#BD93F9", | ||||
|     teal = "#0088cc", | ||||
|     orange = "#FFB86C", | ||||
|     cyan = "#8BE9FD", | ||||
|     statusline_bg = "#2b2d39", | ||||
|     lightbg = "#343642", | ||||
|     lightbg2 = "#2f313d" | ||||
|    white = "#F8F8F2", | ||||
|    darker_black = "#232531", | ||||
|    black = "#282A36", --  nvim bg | ||||
|    black2 = "#303341", | ||||
|    one_bg = "#373844", -- real bg of onedark | ||||
|    one_bg2 = "#44475a", | ||||
|    one_bg3 = "#565761", | ||||
|    grey = "#41434f", | ||||
|    grey_fg = "#5a5c68", | ||||
|    grey_fg2 = "#5a5c68", | ||||
|    light_grey = "#636571", | ||||
|    red = "#FF5555", | ||||
|    baby_pink = "#DE8C92", | ||||
|    pink = "#FF79C6", | ||||
|    line = "#373844", -- for lines like vertsplit | ||||
|    green = "#50FA7B", | ||||
|    vibrant_green = "#69FF94", | ||||
|    nord_blue = "#b389ef", | ||||
|    blue = "#BD93F9", | ||||
|    yellow = "#F1FA8C", | ||||
|    sun = "#FFFFA5", | ||||
|    purple = "#BD93F9", | ||||
|    dark_purple = "#BD93F9", | ||||
|    teal = "#0088cc", | ||||
|    orange = "#FFB86C", | ||||
|    cyan = "#8BE9FD", | ||||
|    statusline_bg = "#2b2d39", | ||||
|    lightbg = "#343642", | ||||
|    lightbg2 = "#2f313d", | ||||
| } | ||||
| 
 | ||||
| return colors | ||||
|  |  | |||
|  | @ -1,33 +1,33 @@ | |||
| local colors = { | ||||
|     white = "#fff9e8", | ||||
|     darker_black = "#272f35", | ||||
|     black = "#2b3339", --  nvim bg | ||||
|     black2 = "#323a40", | ||||
|     one_bg = "#333b41", | ||||
|     one_bg2 = "#363e44", | ||||
|     one_bg3 = "#3a4248", | ||||
|     grey = "#4a5258", | ||||
|     grey_fg = "#50585e", | ||||
|     grey_fg2 = "#545c62", | ||||
|     light_grey = "#586066", | ||||
|     red = "#e67e80", | ||||
|     baby_pink = "#ce8196", | ||||
|     pink = "#ff75a0", | ||||
|     line = "#3a4248", -- for lines like vertsplit | ||||
|     green = "#83c092", | ||||
|     vibrant_green = "#a7c080", | ||||
|     nord_blue = "#78b4ac", | ||||
|     blue = "#7fbbb3", | ||||
|     yellow = "#dbbc7f", | ||||
|     sun = "#d1b171", | ||||
|     purple = "#b4bbc8", | ||||
|     dark_purple = "#d699b6", | ||||
|     teal = "#69a59d", | ||||
|     orange = "#e69875", | ||||
|     cyan = "#95d1c9", | ||||
|     statusline_bg = "#2e363c", | ||||
|     lightbg = "#3d454b", | ||||
|     lightbg2 = "#333b41" | ||||
|    white = "#fff9e8", | ||||
|    darker_black = "#272f35", | ||||
|    black = "#2b3339", --  nvim bg | ||||
|    black2 = "#323a40", | ||||
|    one_bg = "#333b41", | ||||
|    one_bg2 = "#363e44", | ||||
|    one_bg3 = "#3a4248", | ||||
|    grey = "#4a5258", | ||||
|    grey_fg = "#50585e", | ||||
|    grey_fg2 = "#545c62", | ||||
|    light_grey = "#586066", | ||||
|    red = "#e67e80", | ||||
|    baby_pink = "#ce8196", | ||||
|    pink = "#ff75a0", | ||||
|    line = "#3a4248", -- for lines like vertsplit | ||||
|    green = "#83c092", | ||||
|    vibrant_green = "#a7c080", | ||||
|    nord_blue = "#78b4ac", | ||||
|    blue = "#7fbbb3", | ||||
|    yellow = "#dbbc7f", | ||||
|    sun = "#d1b171", | ||||
|    purple = "#b4bbc8", | ||||
|    dark_purple = "#d699b6", | ||||
|    teal = "#69a59d", | ||||
|    orange = "#e69875", | ||||
|    cyan = "#95d1c9", | ||||
|    statusline_bg = "#2e363c", | ||||
|    lightbg = "#3d454b", | ||||
|    lightbg2 = "#333b41", | ||||
| } | ||||
| 
 | ||||
| return colors | ||||
|  |  | |||
|  | @ -1,33 +1,33 @@ | |||
| local colors = { | ||||
|     white = "#c7b89d", | ||||
|     darker_black = "#1e2122", | ||||
|     black = "#222526", --  nvim bg | ||||
|     black2 = "#26292a", | ||||
|     one_bg = "#2b2e2f", | ||||
|     one_bg2 = "#2f3233", | ||||
|     one_bg3 = "#313435", | ||||
|     grey = "#46494a", | ||||
|     grey_fg = "#5d6061", | ||||
|     grey_fg2 = "#5b5e5f", | ||||
|     light_grey = "#585b5c", | ||||
|     red = "#ec6b64", | ||||
|     baby_pink = "#ce8196", | ||||
|     pink = "#ff75a0", | ||||
|     line = "#2c2f30", -- for lines like vertsplit | ||||
|     green = "#89b482", | ||||
|     vibrant_green = "#a9b665", | ||||
|     nord_blue = "#6f8faf", | ||||
|     blue = "#6d8dad", | ||||
|     yellow = "#d6b676", | ||||
|     sun = "#d1b171", | ||||
|     purple = "#b4bbc8", | ||||
|     dark_purple = "#cc7f94", | ||||
|     teal = "#749689", | ||||
|     orange = "#e78a4e", | ||||
|     cyan = "#82b3a8", | ||||
|     statusline_bg = "#252829", | ||||
|     lightbg = "#2d3139", | ||||
|     lightbg2 = "#262a32" | ||||
|    white = "#c7b89d", | ||||
|    darker_black = "#1e2122", | ||||
|    black = "#222526", --  nvim bg | ||||
|    black2 = "#26292a", | ||||
|    one_bg = "#2b2e2f", | ||||
|    one_bg2 = "#2f3233", | ||||
|    one_bg3 = "#313435", | ||||
|    grey = "#46494a", | ||||
|    grey_fg = "#5d6061", | ||||
|    grey_fg2 = "#5b5e5f", | ||||
|    light_grey = "#585b5c", | ||||
|    red = "#ec6b64", | ||||
|    baby_pink = "#ce8196", | ||||
|    pink = "#ff75a0", | ||||
|    line = "#2c2f30", -- for lines like vertsplit | ||||
|    green = "#89b482", | ||||
|    vibrant_green = "#a9b665", | ||||
|    nord_blue = "#6f8faf", | ||||
|    blue = "#6d8dad", | ||||
|    yellow = "#d6b676", | ||||
|    sun = "#d1b171", | ||||
|    purple = "#b4bbc8", | ||||
|    dark_purple = "#cc7f94", | ||||
|    teal = "#749689", | ||||
|    orange = "#e78a4e", | ||||
|    cyan = "#82b3a8", | ||||
|    statusline_bg = "#252829", | ||||
|    lightbg = "#2d3139", | ||||
|    lightbg2 = "#262a32", | ||||
| } | ||||
| 
 | ||||
| return colors | ||||
|  |  | |||
|  | @ -1,33 +1,33 @@ | |||
| local colors = { | ||||
|     white = "#b5bcc9", | ||||
|     darker_black = "#10171e", | ||||
|     black = "#131a21", --  nvim bg | ||||
|     black2 = "#1a2128", | ||||
|     one_bg = "#1e252c", | ||||
|     one_bg2 = "#272e35", | ||||
|     one_bg3 = "#2a3138", | ||||
|     grey = "#363d44", | ||||
|     grey_fg = "#4e555c", | ||||
|     grey_fg2 = "#51585f", | ||||
|     light_grey = "#545b62", | ||||
|     red = "#ef8891", | ||||
|     baby_pink = "#fca2aa", | ||||
|     pink = "#fca2af", | ||||
|     line = "#20272e", -- for lines like vertsplit | ||||
|     green = "#9ce5c0", | ||||
|     vibrant_green = "#a5d4af", | ||||
|     blue = "#99aee5", | ||||
|     nord_blue = "#9aa8cf", | ||||
|     yellow = "#fbdf90", | ||||
|     sun = "#fbdf9a", | ||||
|     purple = "#d7c1ed", | ||||
|     dark_purple = "#ccaced", | ||||
|     teal = "#92dbb6", | ||||
|     orange = "#EDA685", | ||||
|     cyan = "#b5c3ea", | ||||
|     statusline_bg = "#181f26", | ||||
|     lightbg = "#222930", | ||||
|     lightbg2 = "#1d242b" | ||||
|    white = "#b5bcc9", | ||||
|    darker_black = "#10171e", | ||||
|    black = "#131a21", --  nvim bg | ||||
|    black2 = "#1a2128", | ||||
|    one_bg = "#1e252c", | ||||
|    one_bg2 = "#272e35", | ||||
|    one_bg3 = "#2a3138", | ||||
|    grey = "#363d44", | ||||
|    grey_fg = "#4e555c", | ||||
|    grey_fg2 = "#51585f", | ||||
|    light_grey = "#545b62", | ||||
|    red = "#ef8891", | ||||
|    baby_pink = "#fca2aa", | ||||
|    pink = "#fca2af", | ||||
|    line = "#20272e", -- for lines like vertsplit | ||||
|    green = "#9ce5c0", | ||||
|    vibrant_green = "#a5d4af", | ||||
|    blue = "#99aee5", | ||||
|    nord_blue = "#9aa8cf", | ||||
|    yellow = "#fbdf90", | ||||
|    sun = "#fbdf9a", | ||||
|    purple = "#d7c1ed", | ||||
|    dark_purple = "#ccaced", | ||||
|    teal = "#92dbb6", | ||||
|    orange = "#EDA685", | ||||
|    cyan = "#b5c3ea", | ||||
|    statusline_bg = "#181f26", | ||||
|    lightbg = "#222930", | ||||
|    lightbg2 = "#1d242b", | ||||
| } | ||||
| 
 | ||||
| return colors | ||||
|  |  | |||
|  | @ -1,33 +1,33 @@ | |||
| local colors = { | ||||
|     white = "#b0b0b0", | ||||
|     darker_black = "#171d23", | ||||
|     black = "#1a2026", --  nvim bg | ||||
|     black2 = "#20262c", | ||||
|     one_bg = "#242a30", | ||||
|     one_bg2 = "#292f35", | ||||
|     one_bg3 = "#2e343a", | ||||
|     grey = "#42484e", | ||||
|     grey_fg = "#474d53", | ||||
|     grey_fg2 = "#50565c", | ||||
|     light_grey = "#565c62", | ||||
|     red = "#ac8a8c", | ||||
|     baby_pink = "#de878f", | ||||
|     pink = "#e89199", | ||||
|     line = "#2d3339", -- for lines like vertsplit | ||||
|     green = "#8aac8b", | ||||
|     vibrant_green = "#9ec49f", | ||||
|     blue = "#6b8bab", | ||||
|     nord_blue = "#7797b7", | ||||
|     yellow = "#c4c19e", | ||||
|     sun = "#aca98a", | ||||
|     purple = "#a39ec4", | ||||
|     dark_purple = "#8f8aac", | ||||
|     teal = "#7c9cbc", | ||||
|     orange = "#e39a83", | ||||
|     cyan = "#9aafe6", | ||||
|     statusline_bg = "#1e242a", | ||||
|     lightbg = "#2d3339", | ||||
|     lightbg2 = "#252b31" | ||||
|    white = "#b0b0b0", | ||||
|    darker_black = "#171d23", | ||||
|    black = "#1a2026", --  nvim bg | ||||
|    black2 = "#20262c", | ||||
|    one_bg = "#242a30", | ||||
|    one_bg2 = "#292f35", | ||||
|    one_bg3 = "#2e343a", | ||||
|    grey = "#42484e", | ||||
|    grey_fg = "#474d53", | ||||
|    grey_fg2 = "#50565c", | ||||
|    light_grey = "#565c62", | ||||
|    red = "#ac8a8c", | ||||
|    baby_pink = "#de878f", | ||||
|    pink = "#e89199", | ||||
|    line = "#2d3339", -- for lines like vertsplit | ||||
|    green = "#8aac8b", | ||||
|    vibrant_green = "#9ec49f", | ||||
|    blue = "#6b8bab", | ||||
|    nord_blue = "#7797b7", | ||||
|    yellow = "#c4c19e", | ||||
|    sun = "#aca98a", | ||||
|    purple = "#a39ec4", | ||||
|    dark_purple = "#8f8aac", | ||||
|    teal = "#7c9cbc", | ||||
|    orange = "#e39a83", | ||||
|    cyan = "#9aafe6", | ||||
|    statusline_bg = "#1e242a", | ||||
|    lightbg = "#2d3339", | ||||
|    lightbg2 = "#252b31", | ||||
| } | ||||
| 
 | ||||
| return colors | ||||
|  |  | |||
|  | @ -1,33 +1,33 @@ | |||
| local colors = { | ||||
|     white = "#abb2bf", | ||||
|     darker_black = "#2a303c", | ||||
|     black = "#2E3440", --  nvim bg | ||||
|     black2 = "#343a46", | ||||
|     one_bg = "#373d49", | ||||
|     one_bg2 = "#3a404c", | ||||
|     one_bg3 = "#3d434f", | ||||
|     grey = "#474d59", | ||||
|     grey_fg = "#565c68", | ||||
|     grey_fg2 = "#606672", | ||||
|     light_grey = "#646a76", | ||||
|     red = "#BF616A", | ||||
|     baby_pink = "#de878f", | ||||
|     pink = "#d57780", | ||||
|     line = "#3a404c", -- for lines like vertsplit | ||||
|     green = "#A3BE8C", | ||||
|     vibrant_green = "#afca98", | ||||
|     blue = "#7797b7", | ||||
|     nord_blue = "#81A1C1", | ||||
|     yellow = "#EBCB8B", | ||||
|     sun = "#e1c181", | ||||
|     purple = "#aab1be", | ||||
|     dark_purple = "#B48EAD", | ||||
|     teal = "#6484a4", | ||||
|     orange = "#e39a83", | ||||
|     cyan = "#9aafe6", | ||||
|     statusline_bg = "#333945", | ||||
|     lightbg = "#3f4551", | ||||
|     lightbg2 = "#393f4b" | ||||
|    white = "#abb2bf", | ||||
|    darker_black = "#2a303c", | ||||
|    black = "#2E3440", --  nvim bg | ||||
|    black2 = "#343a46", | ||||
|    one_bg = "#373d49", | ||||
|    one_bg2 = "#3a404c", | ||||
|    one_bg3 = "#3d434f", | ||||
|    grey = "#474d59", | ||||
|    grey_fg = "#565c68", | ||||
|    grey_fg2 = "#606672", | ||||
|    light_grey = "#646a76", | ||||
|    red = "#BF616A", | ||||
|    baby_pink = "#de878f", | ||||
|    pink = "#d57780", | ||||
|    line = "#3a404c", -- for lines like vertsplit | ||||
|    green = "#A3BE8C", | ||||
|    vibrant_green = "#afca98", | ||||
|    blue = "#7797b7", | ||||
|    nord_blue = "#81A1C1", | ||||
|    yellow = "#EBCB8B", | ||||
|    sun = "#e1c181", | ||||
|    purple = "#aab1be", | ||||
|    dark_purple = "#B48EAD", | ||||
|    teal = "#6484a4", | ||||
|    orange = "#e39a83", | ||||
|    cyan = "#9aafe6", | ||||
|    statusline_bg = "#333945", | ||||
|    lightbg = "#3f4551", | ||||
|    lightbg2 = "#393f4b", | ||||
| } | ||||
| 
 | ||||
| return colors | ||||
|  |  | |||
|  | @ -1,33 +1,33 @@ | |||
| local colors = { | ||||
|     white = "#abb2bf", | ||||
|     darker_black = "#1b1f27", | ||||
|     black = "#1e222a", --  nvim bg | ||||
|     black2 = "#252931", | ||||
|     one_bg = "#282c34", -- real bg of onedark | ||||
|     one_bg2 = "#353b45", | ||||
|     one_bg3 = "#30343c", | ||||
|     grey = "#42464e", | ||||
|     grey_fg = "#565c64", | ||||
|     grey_fg2 = "#6f737b", | ||||
|     light_grey = "#6f737b", | ||||
|     red = "#d47d85", | ||||
|     baby_pink = "#DE8C92", | ||||
|     pink = "#ff75a0", | ||||
|     line = "#2a2e36", -- for lines like vertsplit | ||||
|     green = "#A3BE8C", | ||||
|     vibrant_green = "#7eca9c", | ||||
|     nord_blue = "#81A1C1", | ||||
|     blue = "#61afef", | ||||
|     yellow = "#e7c787", | ||||
|     sun = "#EBCB8B", | ||||
|     purple = "#b4bbc8", | ||||
|     dark_purple = "#c882e7", | ||||
|     teal = "#519ABA", | ||||
|     orange = "#fca2aa", | ||||
|     cyan = "#a3b8ef", | ||||
|     statusline_bg = "#22262e", | ||||
|     lightbg = "#2d3139", | ||||
|     lightbg2 = "#262a32" | ||||
|    white = "#abb2bf", | ||||
|    darker_black = "#1b1f27", | ||||
|    black = "#1e222a", --  nvim bg | ||||
|    black2 = "#252931", | ||||
|    one_bg = "#282c34", -- real bg of onedark | ||||
|    one_bg2 = "#353b45", | ||||
|    one_bg3 = "#30343c", | ||||
|    grey = "#42464e", | ||||
|    grey_fg = "#565c64", | ||||
|    grey_fg2 = "#6f737b", | ||||
|    light_grey = "#6f737b", | ||||
|    red = "#d47d85", | ||||
|    baby_pink = "#DE8C92", | ||||
|    pink = "#ff75a0", | ||||
|    line = "#2a2e36", -- for lines like vertsplit | ||||
|    green = "#A3BE8C", | ||||
|    vibrant_green = "#7eca9c", | ||||
|    nord_blue = "#81A1C1", | ||||
|    blue = "#61afef", | ||||
|    yellow = "#e7c787", | ||||
|    sun = "#EBCB8B", | ||||
|    purple = "#b4bbc8", | ||||
|    dark_purple = "#c882e7", | ||||
|    teal = "#519ABA", | ||||
|    orange = "#fca2aa", | ||||
|    cyan = "#a3b8ef", | ||||
|    statusline_bg = "#22262e", | ||||
|    lightbg = "#2d3139", | ||||
|    lightbg2 = "#262a32", | ||||
| } | ||||
| 
 | ||||
| return colors | ||||
|  |  | |||
|  | @ -1,33 +1,33 @@ | |||
| local colors = { | ||||
|     white = "#c0caf5", | ||||
|     darker_black = "#151621", | ||||
|     black = "#171823", --  nvim bg | ||||
|     black2 = "#20212c", | ||||
|     one_bg = "#242530", | ||||
|     one_bg2 = "#292a35", | ||||
|     one_bg3 = "#353b45", | ||||
|     grey = "#40486a", | ||||
|     grey_fg = "#4a5274", | ||||
|     grey_fg2 = "#4f5779", | ||||
|     light_grey = "#545c7e", | ||||
|     red = "#f7768e", | ||||
|     baby_pink = "#DE8C92", | ||||
|     pink = "#ff75a0", | ||||
|     line = "#242530", -- for lines like vertsplit | ||||
|     green = "#9ece6a", | ||||
|     vibrant_green = "#73daca", | ||||
|     nord_blue = "#80a8fd", | ||||
|     blue = "#7aa2f7", | ||||
|     yellow = "#e7c787", | ||||
|     sun = "#EBCB8B", | ||||
|     purple = "#bb9af7", | ||||
|     dark_purple = "#9d7cd8", | ||||
|     teal = "#0db9d7", | ||||
|     orange = "#ff9e64", | ||||
|     cyan = "#7dcfff", | ||||
|     statusline_bg = "#1d1e29", | ||||
|     lightbg = "#252631", | ||||
|     lightbg2 = "#22232e" | ||||
|    white = "#c0caf5", | ||||
|    darker_black = "#151621", | ||||
|    black = "#171823", --  nvim bg | ||||
|    black2 = "#20212c", | ||||
|    one_bg = "#242530", | ||||
|    one_bg2 = "#292a35", | ||||
|    one_bg3 = "#353b45", | ||||
|    grey = "#40486a", | ||||
|    grey_fg = "#4a5274", | ||||
|    grey_fg2 = "#4f5779", | ||||
|    light_grey = "#545c7e", | ||||
|    red = "#f7768e", | ||||
|    baby_pink = "#DE8C92", | ||||
|    pink = "#ff75a0", | ||||
|    line = "#242530", -- for lines like vertsplit | ||||
|    green = "#9ece6a", | ||||
|    vibrant_green = "#73daca", | ||||
|    nord_blue = "#80a8fd", | ||||
|    blue = "#7aa2f7", | ||||
|    yellow = "#e7c787", | ||||
|    sun = "#EBCB8B", | ||||
|    purple = "#bb9af7", | ||||
|    dark_purple = "#9d7cd8", | ||||
|    teal = "#0db9d7", | ||||
|    orange = "#ff9e64", | ||||
|    cyan = "#7dcfff", | ||||
|    statusline_bg = "#1d1e29", | ||||
|    lightbg = "#252631", | ||||
|    lightbg2 = "#22232e", | ||||
| } | ||||
| 
 | ||||
| return colors | ||||
|  |  | |||
|  | @ -1,33 +1,33 @@ | |||
| local colors = { | ||||
|     white = "#C5C8C2", | ||||
|     darker_black = "#191b1d", | ||||
|     black = "#1d1f21", -- nvim bg | ||||
|     black2 = "#232527", | ||||
|     one_bg = "#363a41", | ||||
|     one_bg2 = "#353b45", | ||||
|     one_bg3 = "#30343c", | ||||
|     grey = "#434547", | ||||
|     grey_fg = "#545B68", | ||||
|     grey_fg2 = "#616875", | ||||
|     light_grey = "#676e7b", | ||||
|     red = "#cc6666", | ||||
|     baby_pink = "#FF6E79", | ||||
|     pink = "#ff9ca3", | ||||
|     line = "#27292b", -- for lines like vertsplit | ||||
|     green = "#a4b595", | ||||
|     vibrant_green = "#a3b991", | ||||
|     nord_blue = "#728da8", | ||||
|     blue = "#6f8dab", | ||||
|     yellow = "#d7bd8d", | ||||
|     sun = "#e4c180", | ||||
|     purple = "#b4bbc8", | ||||
|     dark_purple = "#b290ac", | ||||
|     teal = "#8abdb6", | ||||
|     orange = "#DE935F", | ||||
|     cyan = "#70c0b1", | ||||
|     statusline_bg = "#212326", | ||||
|     lightbg = "#373B41", | ||||
|     lightbg2 = "#2D3035" | ||||
|    white = "#C5C8C2", | ||||
|    darker_black = "#191b1d", | ||||
|    black = "#1d1f21", -- nvim bg | ||||
|    black2 = "#232527", | ||||
|    one_bg = "#363a41", | ||||
|    one_bg2 = "#353b45", | ||||
|    one_bg3 = "#30343c", | ||||
|    grey = "#434547", | ||||
|    grey_fg = "#545B68", | ||||
|    grey_fg2 = "#616875", | ||||
|    light_grey = "#676e7b", | ||||
|    red = "#cc6666", | ||||
|    baby_pink = "#FF6E79", | ||||
|    pink = "#ff9ca3", | ||||
|    line = "#27292b", -- for lines like vertsplit | ||||
|    green = "#a4b595", | ||||
|    vibrant_green = "#a3b991", | ||||
|    nord_blue = "#728da8", | ||||
|    blue = "#6f8dab", | ||||
|    yellow = "#d7bd8d", | ||||
|    sun = "#e4c180", | ||||
|    purple = "#b4bbc8", | ||||
|    dark_purple = "#b290ac", | ||||
|    teal = "#8abdb6", | ||||
|    orange = "#DE935F", | ||||
|    cyan = "#70c0b1", | ||||
|    statusline_bg = "#212326", | ||||
|    lightbg = "#373B41", | ||||
|    lightbg2 = "#2D3035", | ||||
| } | ||||
| 
 | ||||
| return colors | ||||
|  |  | |||
							
								
								
									
										317
									
								
								lua/utils.lua
									
										
									
									
									
								
							
							
						
						
									
										317
									
								
								lua/utils.lua
									
										
									
									
									
								
							|  | @ -2,39 +2,36 @@ local M = {} | |||
| 
 | ||||
| -- 1st arg as current theme, 2nd as new theme | ||||
| M.change_theme = function(current_theme, new_theme) | ||||
|     if current_theme == nil or new_theme == nil then | ||||
|         print "Error: Provide current and new theme name" | ||||
|         return false | ||||
|     end | ||||
|     if current_theme == new_theme then | ||||
|         return | ||||
|     end | ||||
|    if current_theme == nil or new_theme == nil then | ||||
|       print "Error: Provide current and new theme name" | ||||
|       return false | ||||
|    end | ||||
|    if current_theme == new_theme then | ||||
|       return | ||||
|    end | ||||
| 
 | ||||
|     local file = vim.fn.stdpath("config") .. "/lua/chadrc.lua" | ||||
|     -- store in data variable | ||||
|     local data = assert(M.file("r", file)) | ||||
|     -- escape characters which can be parsed as magic chars | ||||
|     current_theme = current_theme:gsub("%p", "%%%0") | ||||
|     new_theme = new_theme:gsub("%p", "%%%0") | ||||
|     local find = "theme = .?" .. current_theme .. ".?" | ||||
|     local replace = 'theme = "' .. new_theme .. '"' | ||||
|     local content = string.gsub(data, find, replace) | ||||
|     -- see if the find string exists in file | ||||
|     if content == data then | ||||
|         print("Error: Cannot change default theme with " .. new_theme .. ", edit " .. file .. " manually") | ||||
|         return false | ||||
|     else | ||||
|         assert(M.file("w", file, content)) | ||||
|     end | ||||
|    local file = vim.fn.stdpath "config" .. "/lua/chadrc.lua" | ||||
|    -- store in data variable | ||||
|    local data = assert(M.file("r", file)) | ||||
|    -- escape characters which can be parsed as magic chars | ||||
|    current_theme = current_theme:gsub("%p", "%%%0") | ||||
|    new_theme = new_theme:gsub("%p", "%%%0") | ||||
|    local find = "theme = .?" .. current_theme .. ".?" | ||||
|    local replace = 'theme = "' .. new_theme .. '"' | ||||
|    local content = string.gsub(data, find, replace) | ||||
|    -- see if the find string exists in file | ||||
|    if content == data then | ||||
|       print("Error: Cannot change default theme with " .. new_theme .. ", edit " .. file .. " manually") | ||||
|       return false | ||||
|    else | ||||
|       assert(M.file("w", file, content)) | ||||
|    end | ||||
| end | ||||
| 
 | ||||
| M.clear_cmdline = function() | ||||
|     vim.defer_fn( | ||||
|         function() | ||||
|             vim.cmd("echo") | ||||
|         end, | ||||
|         0 | ||||
|     ) | ||||
|    vim.defer_fn(function() | ||||
|       vim.cmd "echo" | ||||
|    end, 0) | ||||
| end | ||||
| 
 | ||||
| -- 1st arg - r or w | ||||
|  | @ -42,167 +39,167 @@ end | |||
| -- 3rd arg - content if 1st arg is w | ||||
| -- return file data on read, nothing on write | ||||
| M.file = function(mode, filepath, content) | ||||
|     local data | ||||
|     local fd = assert(vim.loop.fs_open(filepath, mode, 438)) | ||||
|     local stat = assert(vim.loop.fs_fstat(fd)) | ||||
|     if stat.type ~= "file" then | ||||
|         data = false | ||||
|     else | ||||
|         if mode == "r" then | ||||
|             data = assert(vim.loop.fs_read(fd, stat.size, 0)) | ||||
|         else | ||||
|             assert(vim.loop.fs_write(fd, content, 0)) | ||||
|             data = true | ||||
|         end | ||||
|     end | ||||
|     assert(vim.loop.fs_close(fd)) | ||||
|     return data | ||||
|    local data | ||||
|    local fd = assert(vim.loop.fs_open(filepath, mode, 438)) | ||||
|    local stat = assert(vim.loop.fs_fstat(fd)) | ||||
|    if stat.type ~= "file" then | ||||
|       data = false | ||||
|    else | ||||
|       if mode == "r" then | ||||
|          data = assert(vim.loop.fs_read(fd, stat.size, 0)) | ||||
|       else | ||||
|          assert(vim.loop.fs_write(fd, content, 0)) | ||||
|          data = true | ||||
|       end | ||||
|    end | ||||
|    assert(vim.loop.fs_close(fd)) | ||||
|    return data | ||||
| end | ||||
| 
 | ||||
| -- return a table of available themes | ||||
| M.list_themes = function(return_type) | ||||
|     local themes = {} | ||||
|     -- folder where theme files are stored | ||||
|     local themes_folder = vim.fn.stdpath("config") .. "/lua/themes" | ||||
|     -- list all the contents of the folder and filter out files with .lua extension, then append to themes table | ||||
|     local fd = vim.loop.fs_scandir(themes_folder) | ||||
|     if fd then | ||||
|         while true do | ||||
|             local name, typ = vim.loop.fs_scandir_next(fd) | ||||
|             if name == nil then | ||||
|                 break | ||||
|    local themes = {} | ||||
|    -- folder where theme files are stored | ||||
|    local themes_folder = vim.fn.stdpath "config" .. "/lua/themes" | ||||
|    -- list all the contents of the folder and filter out files with .lua extension, then append to themes table | ||||
|    local fd = vim.loop.fs_scandir(themes_folder) | ||||
|    if fd then | ||||
|       while true do | ||||
|          local name, typ = vim.loop.fs_scandir_next(fd) | ||||
|          if name == nil then | ||||
|             break | ||||
|          end | ||||
|          if typ ~= "directory" and string.find(name, ".lua") then | ||||
|             -- return the table values as keys if specified | ||||
|             if return_type == "keys_as_value" then | ||||
|                themes[vim.fn.fnamemodify(name, ":r")] = true | ||||
|             else | ||||
|                table.insert(themes, vim.fn.fnamemodify(name, ":r")) | ||||
|             end | ||||
|             if typ ~= "directory" and string.find(name, ".lua") then | ||||
|                 -- return the table values as keys if specified | ||||
|                 if return_type == "keys_as_value" then | ||||
|                     themes[vim.fn.fnamemodify(name, ":r")] = true | ||||
|                 else | ||||
|                     table.insert(themes, vim.fn.fnamemodify(name, ":r")) | ||||
|                 end | ||||
|             end | ||||
|         end | ||||
|     end | ||||
|     return themes | ||||
|          end | ||||
|       end | ||||
|    end | ||||
|    return themes | ||||
| end | ||||
| 
 | ||||
| -- reload a plugin ( will try to load even if not loaded) | ||||
| -- can take a string or list ( table ) | ||||
| -- return true or false | ||||
| M.reload_plugin = function(plugins) | ||||
|     local status = true | ||||
|     local function _reload_plugin(plugin) | ||||
|         local loaded = package.loaded[plugin] | ||||
|         if loaded then | ||||
|             package.loaded[plugin] = nil | ||||
|         end | ||||
|         if not pcall(require, plugin) then | ||||
|             print("Error: Cannot load " .. plugin .. " plugin!") | ||||
|             status = false | ||||
|         end | ||||
|     end | ||||
|    local status = true | ||||
|    local function _reload_plugin(plugin) | ||||
|       local loaded = package.loaded[plugin] | ||||
|       if loaded then | ||||
|          package.loaded[plugin] = nil | ||||
|       end | ||||
|       if not pcall(require, plugin) then | ||||
|          print("Error: Cannot load " .. plugin .. " plugin!") | ||||
|          status = false | ||||
|       end | ||||
|    end | ||||
| 
 | ||||
|     if type(plugins) == "string" then | ||||
|         _reload_plugin(plugins) | ||||
|     elseif type(plugins) == "table" then | ||||
|         for _, plugin in ipairs(plugins) do | ||||
|             _reload_plugin(plugin) | ||||
|         end | ||||
|     end | ||||
|     return status | ||||
|    if type(plugins) == "string" then | ||||
|       _reload_plugin(plugins) | ||||
|    elseif type(plugins) == "table" then | ||||
|       for _, plugin in ipairs(plugins) do | ||||
|          _reload_plugin(plugin) | ||||
|       end | ||||
|    end | ||||
|    return status | ||||
| end | ||||
| 
 | ||||
| -- reload themes without restarting vim | ||||
| -- if no theme name given then reload the current theme | ||||
| M.reload_theme = function(theme_name) | ||||
|     local reload_plugin = require("utils").reload_plugin | ||||
|    local reload_plugin = require("utils").reload_plugin | ||||
| 
 | ||||
|     -- if theme name is empty or nil, then reload the current theme | ||||
|     if (theme_name == nil or theme_name == "") then | ||||
|         theme_name = vim.g.nvchad_theme | ||||
|     end | ||||
|    -- if theme name is empty or nil, then reload the current theme | ||||
|    if theme_name == nil or theme_name == "" then | ||||
|       theme_name = vim.g.nvchad_theme | ||||
|    end | ||||
| 
 | ||||
|     if not pcall(require, "themes/" .. theme_name) then | ||||
|         print("No such theme ( " .. theme_name .. " )") | ||||
|         return false | ||||
|     end | ||||
|    if not pcall(require, "themes/" .. theme_name) then | ||||
|       print("No such theme ( " .. theme_name .. " )") | ||||
|       return false | ||||
|    end | ||||
| 
 | ||||
|     vim.g.nvchad_theme = theme_name | ||||
|    vim.g.nvchad_theme = theme_name | ||||
| 
 | ||||
|     -- reload the base16 theme | ||||
|     local ok, base16 = pcall(require, "base16") | ||||
|     if not ok then | ||||
|         print("Error: Cannot load base16 plugin!") | ||||
|         return false | ||||
|     end | ||||
|     base16(base16.themes(theme_name), true) | ||||
|    -- reload the base16 theme | ||||
|    local ok, base16 = pcall(require, "base16") | ||||
|    if not ok then | ||||
|       print "Error: Cannot load base16 plugin!" | ||||
|       return false | ||||
|    end | ||||
|    base16(base16.themes(theme_name), true) | ||||
| 
 | ||||
|     if | ||||
|         not reload_plugin { | ||||
|             "highlights", | ||||
|             "plugins.bufferline", | ||||
|             "galaxyline", | ||||
|             "plugins.statusline" | ||||
|         } | ||||
|      then | ||||
|         print "Error: Not able to reload all plugins." | ||||
|         return false | ||||
|     end | ||||
|    if | ||||
|       not reload_plugin { | ||||
|          "highlights", | ||||
|          "plugins.bufferline", | ||||
|          "galaxyline", | ||||
|          "plugins.statusline", | ||||
|       } | ||||
|    then | ||||
|       print "Error: Not able to reload all plugins." | ||||
|       return false | ||||
|    end | ||||
| 
 | ||||
|     -- yes, this is very hacky, but due to new_async in | ||||
|     -- https://github.com/glepnir/galaxyline.nvim/blob/main/lua/galaxyline/provider.lua#L5-L36 | ||||
|     -- it doesn't work properly and some statusline stuff dissapears | ||||
|     local vcs = require("galaxyline.provider_vcs") | ||||
|     local fileinfo = require("galaxyline.provider_fileinfo") | ||||
|     local buffer = require("galaxyline.provider_buffer") | ||||
|     local extension = require("galaxyline.provider_extensions") | ||||
|     local whitespace = require("galaxyline.provider_whitespace") | ||||
|     local lspclient = require("galaxyline.provider_lsp") | ||||
|     _G.galaxyline_providers = { | ||||
|         BufferIcon = buffer.get_buffer_type_icon, | ||||
|         BufferNumber = buffer.get_buffer_number, | ||||
|         FileTypeName = buffer.get_buffer_filetype, | ||||
|         GitBranch = vcs.get_git_branch, | ||||
|         DiffAdd = vcs.diff_add, | ||||
|         DiffModified = vcs.diff_modified, | ||||
|         DiffRemove = vcs.diff_remove, | ||||
|         LineColumn = fileinfo.line_column, | ||||
|         FileFormat = fileinfo.get_file_format, | ||||
|         FileEncode = fileinfo.get_file_encode, | ||||
|         FileSize = fileinfo.get_file_size, | ||||
|         FileIcon = fileinfo.get_file_icon, | ||||
|         FileName = fileinfo.get_current_file_name, | ||||
|         SFileName = fileinfo.filename_in_special_buffer, | ||||
|         LinePercent = fileinfo.current_line_percent, | ||||
|         ScrollBar = extension.scrollbar_instance, | ||||
|         VistaPlugin = extension.vista_nearest, | ||||
|         WhiteSpace = whitespace.get_item, | ||||
|         GetLspClient = lspclient.get_lsp_client | ||||
|     } | ||||
|     local diagnostic = require("galaxyline.provider_diagnostic") | ||||
|     _G.galaxyline_providers.DiagnosticError = diagnostic.get_diagnostic_error | ||||
|     _G.galaxyline_providers.DiagnosticWarn = diagnostic.get_diagnostic_warn | ||||
|     _G.galaxyline_providers.DiagnosticHint = diagnostic.get_diagnostic_hint | ||||
|     _G.galaxyline_providers.DiagnosticInfo = diagnostic.get_diagnostic_info | ||||
|    -- yes, this is very hacky, but due to new_async in | ||||
|    -- https://github.com/glepnir/galaxyline.nvim/blob/main/lua/galaxyline/provider.lua#L5-L36 | ||||
|    -- it doesn't work properly and some statusline stuff dissapears | ||||
|    local vcs = require "galaxyline.provider_vcs" | ||||
|    local fileinfo = require "galaxyline.provider_fileinfo" | ||||
|    local buffer = require "galaxyline.provider_buffer" | ||||
|    local extension = require "galaxyline.provider_extensions" | ||||
|    local whitespace = require "galaxyline.provider_whitespace" | ||||
|    local lspclient = require "galaxyline.provider_lsp" | ||||
|    _G.galaxyline_providers = { | ||||
|       BufferIcon = buffer.get_buffer_type_icon, | ||||
|       BufferNumber = buffer.get_buffer_number, | ||||
|       FileTypeName = buffer.get_buffer_filetype, | ||||
|       GitBranch = vcs.get_git_branch, | ||||
|       DiffAdd = vcs.diff_add, | ||||
|       DiffModified = vcs.diff_modified, | ||||
|       DiffRemove = vcs.diff_remove, | ||||
|       LineColumn = fileinfo.line_column, | ||||
|       FileFormat = fileinfo.get_file_format, | ||||
|       FileEncode = fileinfo.get_file_encode, | ||||
|       FileSize = fileinfo.get_file_size, | ||||
|       FileIcon = fileinfo.get_file_icon, | ||||
|       FileName = fileinfo.get_current_file_name, | ||||
|       SFileName = fileinfo.filename_in_special_buffer, | ||||
|       LinePercent = fileinfo.current_line_percent, | ||||
|       ScrollBar = extension.scrollbar_instance, | ||||
|       VistaPlugin = extension.vista_nearest, | ||||
|       WhiteSpace = whitespace.get_item, | ||||
|       GetLspClient = lspclient.get_lsp_client, | ||||
|    } | ||||
|    local diagnostic = require "galaxyline.provider_diagnostic" | ||||
|    _G.galaxyline_providers.DiagnosticError = diagnostic.get_diagnostic_error | ||||
|    _G.galaxyline_providers.DiagnosticWarn = diagnostic.get_diagnostic_warn | ||||
|    _G.galaxyline_providers.DiagnosticHint = diagnostic.get_diagnostic_hint | ||||
|    _G.galaxyline_providers.DiagnosticInfo = diagnostic.get_diagnostic_info | ||||
| 
 | ||||
|     return true | ||||
|    return true | ||||
| end | ||||
| 
 | ||||
| -- toggle between 2 themes | ||||
| -- argument should be a table with 2 theme names | ||||
| M.toggle_theme = function(themes) | ||||
|     local current_theme = vim.g.current_nvchad_theme or vim.g.nvchad_theme | ||||
|     for _, name in ipairs(themes) do | ||||
|         if name ~= current_theme then | ||||
|             if require("utils").reload_theme(name) then | ||||
|                 -- open a buffer and close it to reload the statusline | ||||
|                 vim.cmd("new|bwipeout") | ||||
|                 vim.g.current_nvchad_theme = name | ||||
|                 if M.change_theme(vim.g.nvchad_theme, name) then | ||||
|                     vim.g.nvchad_theme = name | ||||
|                 end | ||||
|    local current_theme = vim.g.current_nvchad_theme or vim.g.nvchad_theme | ||||
|    for _, name in ipairs(themes) do | ||||
|       if name ~= current_theme then | ||||
|          if require("utils").reload_theme(name) then | ||||
|             -- open a buffer and close it to reload the statusline | ||||
|             vim.cmd "new|bwipeout" | ||||
|             vim.g.current_nvchad_theme = name | ||||
|             if M.change_theme(vim.g.nvchad_theme, name) then | ||||
|                vim.g.nvchad_theme = name | ||||
|             end | ||||
|         end | ||||
|     end | ||||
|          end | ||||
|       end | ||||
|    end | ||||
| end | ||||
| 
 | ||||
| return M | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue