local M = {} function M.setup() vim.g.mapleader = ' ' vim.g.maplocalleader = ' ' vim.g.loaded_netrwPlugin = true --vim.o.colorcolumn=0 vim.o.autoindent = true vim.o.autoread = true vim.o.completeopt = 'menuone,noinsert,noselect' vim.o.cursorline = true vim.o.expandtab = true vim.o.fileencodings = 'ucs-bom,utf-8,default,windows-1250,cp852' vim.o.foldcolumn = 'auto:1' vim.o.foldenable = true vim.o.foldmethod = 'marker' vim.o.foldopen = 'hor,mark,percent,quickfix,search,tag,undo' -- removed block so { and friends don't open fold vim.o.hidden = true vim.o.ignorecase = true vim.o.inccommand = 'split' vim.o.incsearch = true vim.o.list = false vim.o.mouse = '' vim.o.number = true vim.o.path = '**' vim.o.relativenumber = false vim.o.ruler = true vim.o.scrolloff = 3 vim.o.shiftwidth = 4 vim.o.showcmd = true vim.o.sidescrolloff = 5 vim.o.signcolumn = 'yes' vim.o.smartcase = true vim.o.smartindent = true vim.o.softtabstop = 4 vim.o.swapfile = true vim.o.tabstop = 4 vim.o.undofile = true vim.o.splitbelow = true vim.o.splitright = true --vim.o.clipboard = "unnamedplus" vim.o.guifont = 'Hack:12h' vim.o.list = true vim.o.listchars = 'tab:❮⋯❯,trail:⸬,nbsp:·' vim.o.grepprg = 'rg --vimgrep --no-ignore --smart-case $*' vim.o.grepformat = '%f:%l:%c:%m' vim.o.statusline = '' .. ' %{fnamemodify(getcwd(),":t")}' -- basename of cwd .. '%( │  %{get(b:,"gitsigns_head","")}%)' -- branch .. ' │  %<%f%( [%M%R%W]%)' -- filename and modification flags .. '%=' -- rest is right .. '%y ' -- filetype .. '%-7.(%3.l:%-3.(%c%V%)%) %P' -- ruler vim.api.nvim_create_autocmd('FileType', { pattern = { 'qf', 'man', 'help', 'tsplayground', 'checkhealth', 'OverseerList' }, callback = function(args) local buf = args.buf local bo = vim.bo[buf] if bo.filetype == 'help' and bo.buftype ~= 'help' then return end vim.bo[buf].buflisted = false vim.wo.number = false vim.wo.signcolumn = 'auto' vim.keymap.set('n', 'q', ':q', { buffer = buf }) if vim.bo[buf].filetype ~= 'qf' then vim.wo.statusline = '%Y %f%=%l:%v %P' end end }) vim.api.nvim_create_autocmd({ 'BufEnter', 'FileType' }, { pattern = { 'Trouble' }, callback = function(args) local opts = require('trouble.config').options local words = vim.split(opts.mode, '[%W]', {}) for i, word in ipairs(words) do words[i] = word:sub(1, 1):upper() .. word:sub(2) end vim.b[args.buf].trouble_mode = table.concat(words, ' ') vim.wo.statusline = '%Y [%{b:trouble_mode}]%=%P' end }) if vim.g.neoray then vim.cmd.NeoraySet('CursorAnimTime', 0) vim.cmd.NeoraySet('Transparency', '0.95') vim.cmd.NeoraySet('TargetTPS', 120) vim.cmd.NeoraySet('ContextMenuOn', false) vim.cmd.NeoraySet('BoxDrawingOn', true) vim.cmd.NeoraySet('WindowSize', '100x40') vim.cmd.NeoraySet('WindowState', 'none') vim.cmd.NeoraySet('KeyZoomIn', '<>') vim.cmd.NeoraySet('KeyZoomOut', '<>') end end return M