vim.o.shiftwidth = 4 vim.o.tabstop = 4 vim.o.softtabstop = 4 vim.o.expandtab = true vim.o.hlsearch = false vim.o.number = true vim.o.mouse = "a" vim.o.ignorecase = true vim.o.smartcase = true vim.o.updatetime = 100 vim.o.timeout = true vim.o.timeoutlen = 300 vim.o.completeopt = "menuone,noselect" vim.o.termguicolors = true vim.o.swapfile = false vim.o.backup = false vim.o.incsearch = true vim.o.scrolloff = 5 vim.o.colorcolumn = "80,120" vim.o.fileformat = "unix" vim.o.encoding = "utf-8" vim.o.autoread = true vim.api.nvim_create_autocmd({ "BufEnter", "CursorHold", "CursorHoldI", "FocusGained" }, { command = "if mode() != 'c' | checktime | endif", pattern = { "*" }, }) vim.o.cinoptions = "l1,g0,N-s,(s,U1,w1,Ws" vim.o.list = true vim.o.listchars = "lead:·,tab:\\x20\\x20" require("ibl").setup { scope = { enabled = false, }, indent = { char = "│", tab_char = "│", }, } vim.api.nvim_create_autocmd({ "BufWritePre" }, { pattern = {"*"}, callback = function(ev) save_cursor = vim.fn.getpos(".") vim.cmd("%s/\\s\\+$//e") vim.fn.setpos(".", save_cursor) end, }) vim.api.nvim_create_autocmd({ "BufRead", "BufNewFile" }, { pattern = { "*.frag", "*.vert" }, command = "set filetype=glsl", }) vim.api.nvim_create_autocmd({ "BufRead", "BufNewFile" }, { pattern = { "*.templ" }, command = "set filetype=templ", }) vim.api.nvim_create_autocmd({ "BufRead", "BufNewFile" }, { pattern = { "*.go" }, callback = function() local buf = vim.api.nvim_get_current_buf() vim.api.nvim_buf_set_option(buf, "expandtab", false) end, })