| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384 | ---  HELPERS  ---local cmd = vim.cmdlocal opt = vim.opt---  VIM ONLY COMMANDS  ---cmd "filetype plugin on"cmd('let &titleold="' .. TERMINAL .. '"')cmd "set inccommand=split"cmd "set iskeyword+=-"cmd "set whichwrap+=<,>,[,],h,l"if O.transparent_window then  cmd "au ColorScheme * hi Normal ctermbg=none guibg=none"  cmd "au ColorScheme * hi SignColumn ctermbg=none guibg=none"end---  SETTINGS  ---opt.backup = false -- creates a backup fileopt.clipboard = O.clipboard -- allows neovim to access the system clipboardopt.cmdheight = O.cmdheight -- more space in the neovim command line for displaying messagesopt.colorcolumn = O.colorcolumnopt.completeopt = { "menuone", "noselect" }opt.conceallevel = 0 -- so that `` is visible in markdown filesopt.fileencoding = "utf-8" -- the encoding written to a fileopt.guifont = "monospace:h17" -- the font used in graphical neovim applicationsopt.hidden = O.hidden_files -- required to keep multiple buffers and open multiple buffersopt.hlsearch = O.hl_search -- highlight all matches on previous search patternopt.ignorecase = O.ignore_case -- ignore case in search patternsopt.mouse = "a" -- allow the mouse to be used in neovimopt.pumheight = 10 -- pop up menu heightopt.scrolloff = O.scrolloff -- minimal number of screen lines to keep above and below the cursoropt.showmode = false -- we don't need to see things like -- INSERT -- anymoreopt.showtabline = 2 -- always show tabsopt.smartcase = O.smart_case -- smart caseopt.smartindent = true -- make indenting smarter againopt.splitbelow = true -- force all horizontal splits to go below current windowopt.splitright = true -- force all vertical splits to go to the right of current windowopt.swapfile = false -- creates a swapfileopt.termguicolors = true -- set term gui colors (most terminals support this)opt.timeoutlen = O.timeoutlen -- time to wait for a mapped sequence to complete (in milliseconds)opt.title = true -- set the title of window to the value of the titlestring-- opt.titlestring = "%<%F%=%l/%L - nvim" -- what the title of the window will be set toopt.undodir = CACHE_PATH .. "/undo" -- set an undo directoryopt.undofile = true -- enable persisten undoopt.updatetime = 300 -- faster completionopt.writebackup = false -- if a file is being edited by another program (or was written to file while editing with another program), it is not allowed to be editedopt.expandtab = true -- convert tabs to spacesopt.shiftwidth = O.shift_width -- the number of spaces inserted for each indentationopt.shortmess:append "c"opt.tabstop = O.tab_stop -- insert 4 spaces for a tabopt.cursorline = O.cursorline -- highlight the current lineopt.number = O.number -- set numbered linesopt.relativenumber = O.relative_number -- set relative numbered linesopt.numberwidth = O.number_width -- set number column width to 2 {default 4}opt.signcolumn = "yes" -- always show the sign column, otherwise it would shift the text each timeopt.wrap = O.wrap_lines -- display lines as one long lineopt.spell = O.spellopt.spelllang = O.spelllangopt.scrolloff = 8 -- is one of my favlocal disabled_built_ins = {  "netrw",  "netrwPlugin",  "netrwSettings",  "netrwFileHandlers",  "gzip",  "zip",  "zipPlugin",  "tar",  "tarPlugin", -- 'man',  "getscript",  "getscriptPlugin",  "vimball",  "vimballPlugin",  "2html_plugin",  "logipat",  "rrhelper",  "spellfile_plugin",  -- 'matchit', 'matchparen', 'shada_plugin',}for _, plugin in pairs(disabled_built_ins) do  vim.g["loaded_" .. plugin] = 1end
 |