2021-07-27 00:28:47 +02:00
local M = { }
2021-10-10 21:07:41 +02:00
local utils = require " lvim.utils "
2021-07-27 00:28:47 +02:00
M.load_options = function ( )
local default_options = {
backup = false , -- creates a backup file
clipboard = " unnamedplus " , -- allows neovim to access the system clipboard
cmdheight = 2 , -- more space in the neovim command line for displaying messages
colorcolumn = " 99999 " , -- fixes indentline for now
completeopt = { " menuone " , " noselect " } ,
conceallevel = 0 , -- so that `` is visible in markdown files
fileencoding = " utf-8 " , -- the encoding written to a file
foldmethod = " manual " , -- folding, set to "expr" for treesitter based folding
foldexpr = " " , -- set to "nvim_treesitter#foldexpr()" for treesitter based folding
guifont = " monospace:h17 " , -- the font used in graphical neovim applications
hidden = true , -- required to keep multiple buffers and open multiple buffers
hlsearch = true , -- highlight all matches on previous search pattern
ignorecase = true , -- ignore case in search patterns
mouse = " a " , -- allow the mouse to be used in neovim
pumheight = 10 , -- pop up menu height
showmode = false , -- we don't need to see things like -- INSERT -- anymore
showtabline = 2 , -- always show tabs
smartcase = true , -- smart case
smartindent = true , -- make indenting smarter again
splitbelow = true , -- force all horizontal splits to go below current window
splitright = true , -- force all vertical splits to go to the right of current window
swapfile = false , -- creates a swapfile
termguicolors = true , -- set term gui colors (most terminals support this)
timeoutlen = 100 , -- time to wait for a mapped sequence to complete (in milliseconds)
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 to
2021-09-13 11:28:15 +02:00
undodir = utils.join_paths ( get_cache_dir ( ) , " undo " ) , -- set an undo directory
2021-07-27 00:28:47 +02:00
undofile = true , -- enable persistent undo
updatetime = 300 , -- faster completion
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 edited
expandtab = true , -- convert tabs to spaces
shiftwidth = 2 , -- the number of spaces inserted for each indentation
tabstop = 2 , -- insert 2 spaces for a tab
cursorline = true , -- highlight the current line
number = true , -- set numbered lines
relativenumber = false , -- set relative numbered lines
numberwidth = 4 , -- set number column width to 2 {default 4}
signcolumn = " yes " , -- always show the sign column, otherwise it would shift the text each time
wrap = false , -- display lines as one long line
spell = false ,
spelllang = " en " ,
2021-12-09 11:51:37 +01:00
spellfile = utils.join_paths ( get_config_dir ( ) , " spell " , " en.utf-8.add " ) ,
2021-07-27 00:28:47 +02:00
scrolloff = 8 , -- is one of my fav
sidescrolloff = 8 ,
2021-09-13 11:10:22 +02:00
}
2021-07-03 17:33:54 +02:00
2021-07-27 00:28:47 +02:00
--- SETTINGS ---
2021-07-11 10:00:15 +02:00
2021-08-25 07:47:48 +02:00
vim.opt . shortmess : append " c "
2021-07-03 17:33:54 +02:00
2021-11-15 09:20:45 +01:00
vim.opt . shadafile = utils.join_paths ( get_cache_dir ( ) , " lvim.shada " )
2021-07-27 00:28:47 +02:00
for k , v in pairs ( default_options ) do
vim.opt [ k ] = v
end
end
2021-07-03 17:33:54 +02:00
2021-07-27 00:28:47 +02:00
M.load_commands = function ( )
local cmd = vim.cmd
if lvim.line_wrap_cursor_movement then
cmd " set whichwrap+=<,>,[,],h,l "
end
2021-07-10 08:38:25 +02:00
2021-07-27 00:28:47 +02:00
if lvim.transparent_window then
cmd " au ColorScheme * hi Normal ctermbg=none guibg=none "
cmd " au ColorScheme * hi SignColumn ctermbg=none guibg=none "
cmd " au ColorScheme * hi NormalNC ctermbg=none guibg=none "
cmd " au ColorScheme * hi MsgArea ctermbg=none guibg=none "
cmd " au ColorScheme * hi TelescopeBorder ctermbg=none guibg=none "
cmd " au ColorScheme * hi NvimTreeNormal ctermbg=none guibg=none "
2021-10-24 10:39:11 +02:00
cmd " au ColorScheme * hi EndOfBuffer ctermbg=none guibg=none "
2021-07-27 00:28:47 +02:00
cmd " let &fcs='eob: ' "
end
2021-07-10 09:19:32 +02:00
end
2021-07-27 00:28:47 +02:00
return M