From 2ea5a8f3746112f052bb5a333af9ac46c6110fc7 Mon Sep 17 00:00:00 2001 From: navewindre Date: Sun, 13 Jul 2025 02:10:26 +0200 Subject: a --- vimrc | 757 ------------------------------------------------------------------ 1 file changed, 757 deletions(-) delete mode 100644 vimrc (limited to 'vimrc') diff --git a/vimrc b/vimrc deleted file mode 100644 index 73911e6..0000000 --- a/vimrc +++ /dev/null @@ -1,757 +0,0 @@ -let g:mapleader = '\' -let g:vsnip_snippet_dir = '~/.config/nvim/snippets' -" fuck zig niggers -let g:polyglot_disabled = ['autoindent'] - -lua <'] = cmp.mapping.scroll_docs(-4), - -- [''] = cmp.mapping.scroll_docs(4), - [''] = cmp.mapping.abort(), - [''] = cmp.mapping.confirm({ select = true }), -- Accept currently selected item. Set `select` to `false` to only confirm explicitly selected items. - }), - sources = cmp.config.sources({ - { name = 'nvim_lsp' }, - { name = 'vsnip' }, - -- { name = 'man' } - }, { - { name = 'buffer' } - }) - }) - - cmp.setup.filetype('gitcommit', { - sources = cmp.config.sources({ - { name = 'git' }, -- You can specify the `git` source if [you were installed it](https://github.com/petertriho/cmp-git). - }, { - { name = 'buffer' }, - }) - }) - - -- Use buffer source for `/` and `?` (if you enabled `native_menu`, this won't work anymore). - cmp.setup.cmdline({ '/', '?' }, { - mapping = cmp.mapping.preset.cmdline(), - sources = { - { name = 'buffer' } - } - }) - - -- Use cmdline & path source for ':' (if you enabled `native_menu`, this won't work anymore). - cmp.setup.cmdline(':', { - mapping = cmp.mapping.preset.cmdline(), - sources = cmp.config.sources({ - { name = 'path' }, - { name = 'man' }, - }, { { name = 'cmdline' } } ) - }) - - cmp.register_source('man', { - complete = function(self, request, callback) - local input = string.match(request.context.cursor_before_line, "Man%s+(.*)$") - if not input then - return - end - local result = {} - local handle = io.popen("man -k . | cut -d ' ' -f 1,2 | sed 's/ (/(/'") - if handle then - for line in handle:lines() do - if vim.startswith(line:lower(), input:lower()) then - table.insert(result, { - label = line, - kind = cmp.lsp.CompletionItemKind.File, - }) - end - end - handle:close() - end - callback({ items = result, isIncomplete = false }) - end - }) - - require("wpm").setup({ - sample_count = 8, - sample_interval = 750, - percentile = 1 - }) - - local capabilities = require('cmp_nvim_lsp').default_capabilities() - capabilities.offsetEncoding = "utf-16" - require('lspconfig')['clangd'].setup { - capabilities = capabilities - } - - require('lspconfig')['ts_ls'].setup { - capabilities = capabilities, - settings = { - eslint = { - rules = { - eqeqeq = "off" - } - } - } - } - - require('lspconfig')['zls'].setup { - capabilities = capabilities - } - - require('lspconfig')['intelephense'].setup { - capabilities = capabilities - } - - require('lspconfig')['jdtls'].setup { - capabilities = capabilities - } - - require('lspconfig')['vala_ls'].setup { - capabilities = capabilities - } - - require('lspconfig')['arduino_language_server'].setup { - capabilities = capabilities - } - - vim.diagnostic.config({ - signs = false - }) - - require('whitespace-nvim').setup({ - highlight = 'Underlined', - ignored_filetypes = { 'TelescopePrompt', 'Trouble', 'help', 'dashboard' }, - -- `ignore_terminal` configures whether to ignore terminal buffers - ignore_terminal = true, - }) - - require'nvim-treesitter.configs'.setup { - ensure_installed = { "c", "cpp", "javascript", "html", "lua", "vim", "vimdoc", "java", "sql", "query", "markdown", "markdown_inline" }, - sync_install = false, - textobjects = { enable = true }, - injections = { - enable = true, - }, - auto_install = true, - -- parser_install_dir = "/some/path/to/store/parsers", -- Remember to run vim.opt.runtimepath:append("/some/path/to/store/parsers")! - highlight = { - enable = true, - disable = function(lang, buf) - local max_filesize = 100 * 1024 -- 100 KB - local ok, stats = pcall(vim.loop.fs_stat, vim.api.nvim_buf_get_name(buf)) - if ok and stats and stats.size > max_filesize then - return true - end - end, - - additional_vim_regex_highlighting = false, - }, - query_linter = { - enable = true, - lint_events = {"BufWrite", "CursorHold"}, - }, - } - - require('img-clip').setup( { - -- recommended settings - default = { - embed_image_as_base64 = false, - prompt_for_file_name = false, - drag_and_drop = { - insert_mode = true, - }, - }, - } ) - - require('render-markdown').setup { - file_types = { "markdown", "Avante" }, - enable = true, - } - require('avante_lib').load() - require('avante').setup({ - mappings = { - --- @class AvanteConflictMappings - diff = { - ours = "co", - theirs = "ct", - all_theirs = "ca", - both = "cb", - cursor = "cc", - next = "]x", - prev = "[x", - }, - suggestion = { - accept = "", - next = "", - prev = "", - dismiss = "", - }, - jump = { - next = "]]", - prev = "[[", - }, - submit = { - normal = "", - insert = "", - }, - }, - provider = "openai_mini", - providers = { - ---@type AvanteProvider - openai_mini = { - __inherited_from = "openai", - model = "gpt-4o-mini", - timeout = 30, - max_tokens = 10000, - }, - ---@type AvanteProvider - ollama = { - api_key_name = '', - endpoint = "127.0.0.1:11434/v1", - -- model = 'qwen2.5:7b-instruct-q4_K_M', - model = 'qwen2.5-coder:7b-instruct-q5_K_M', - -- model = 'yi-coder:9b-chat-q4_0', - -- model = "codestral", - -- model = "codestral:22b-v0.1-q6_K", - -- model = "mistral-nemo:12b-instruct-2407-q8_0", - -- model = "mistral-nemo:12b-instruct-2407-q4_K_S", - -- model = "deepseek-coder-v2:16b-lite-instruct-q5_K_M", - -- model = "llama3.1:8b-instruct-q5_K_M", - -- model = "starcoder2:15b-instruct-v0.1-q3_K_S", - -- model = "gemma2:27b-instruct-q5_K_M", - -- model = "mixtral:8x7b-instruct-v0.1-q3_K_L", - parse_curl_args = function(opts, code_opts) - return { - url = opts.endpoint .. "/chat/completions", - headers = { - ["Accept"] = "application/json", - ["Content-Type"] = "application/json", - }, - body = { - model = opts.model, - messages = require("avante.providers").openai.parse_messages(code_opts), -- you can make your own message, but this is very advanced - max_tokens = 20000, - stream = true, - }, - } - end, - parse_response_data = function(data_stream, event_state, opts) - require("avante.providers").openai.parse_response(data_stream, event_state, opts) - end, - }, - }, - - }) -EOF - -set autoindent expandtab tabstop=2 shiftwidth=2 number -set mouse=a -set mousemodel=popup -set noshowmode -set termguicolors -set title -set foldnestmax=1 -set foldlevel=10000 -set foldmethod=indent -set smartcase -set showtabline=2 -set nocompatible -set guicursor+=i:-blinkwait175-blinkoff150-blinkon175 -set signcolumn=number - -filetype plugin on -let g:vimspector_enable_mappings = 'HUMAN' -let g:vimspector_enable_debug_logging = 0 -let g:lightline = { - \ 'colorscheme': 'landscape', - \ 'active': { - \ 'left': [ [ 'mode', 'paste' ], - \ [ 'readonly', 'filename', 'modified' ] ], - \ 'right': [ [ 'lineinfo' ], - \ [ 'percent' ], - \ [ 'fmtcustom', 'tabbycustom', 'enccustom', 'ftcustom', 'wpm' ] ] - \ }, - \ 'tabline': { - \ 'left': [ ['buffers'] ], - \ 'right': [ ['close'], ['tabscustom'] ] - \ }, - \ 'component_expand': { - \ 'buffers': 'lightline#bufferline#buffers' - \ }, - \ 'component_type': { - \ 'buffers': 'tabsel' - \ }, - \ 'component_function': { - \ 'tabline_tabs': 'TablineTabs', - \ 'wpm': 'WPM', - \ 'ftcustom': 'CustomFT', - \ 'enccustom': 'CustomEncode', - \ 'fmtcustom': 'CustomFileFormat', - \ 'tabscustom': 'CustomTabs', - \ 'tabbycustom': 'TabbyStatus' - \ } -\ } - -if exists('g:loaded_relative_sign_numbers') - finish -endif -let g:loaded_relative_sign_numbers = 1 - -let s:signs = {} - -function! s:UpdateSignColumn() - execute 'sign unplace * group=RelativeLineNumbers' - let disallowed_langs = [] - if index(disallowed_langs, &filetype) >= 0 - return - endif - let l:cur_line = line('.') - let l:last_line = line('$') - - if !has_key(s:signs, 0) - execute 'sign define RelNum0 text=0 texthl=LineNr' - let s:signs[0] = 1 - endif - - let l:start = 1 - if l:cur_line > 10 - let l:start = l:cur_line - 10 - endif - - let l:end = l:cur_line + 10 - if l:end > l:last_line - let l:end = l:last_line - endif - - for l:lnum in range(l:start, l:end) - if l:lnum != l:cur_line - let l:distance = abs(l:cur_line - l:lnum) - if l:distance > 0 && l:distance <= 9 - if !has_key(s:signs, l:distance) - execute 'sign define RelNum' . l:distance . ' text=' . l:distance . ' texthl=LineNr' - let s:signs[l:distance] = 1 - endif - execute 'sign place ' . l:lnum . ' line=' . l:lnum . - \' name=RelNum' . l:distance . - \' group=RelativeLineNumbers buffer=' . bufnr('') - endif - endif - endfor -endfunction - -augroup RelativeSignNumbers - autocmd! - autocmd BufEnter,WinEnter,CursorMoved,CursorMovedI * call s:UpdateSignColumn() -augroup END - -command! EnableRelativeSignNumbers call s:UpdateSignColumn() -command! DisableRelativeSignNumbers execute 'sign unplace * group=RelativeLineNumbers' -let g:lightline.component_raw = {'buffers': 1} -let g:lightline#bufferline#clickable = 1 -let g:lightline#bufferline#show_number = 2 - -let g:zig_fmt_autosave=0 -let g:ale_javascript_eslint_options = '--config /home/aurelia/.eslintrc.json' - -function! CustomTabs() - if tabpagenr('$') == 1 - return '' - endif - - let current_tab = tabpagenr() - let tab_list = [] - - for i in range(1, tabpagenr('$')) - if i == current_tab - call add(tab_list, '[' . i . ']') - else - call add(tab_list, i) - endif - endfor - - return join(tab_list, ' | ') -endfunction - -function CustomFileFormat() - if &filetype != 'Avante' && &filetype != 'AvanteInput' - return &fileformat - endif - return '' -endfunction - -function CustomEncode() - if &filetype != 'Avante' && &filetype != 'AvanteInput' - return &fileencoding - endif - return '' -endfunction - -function CustomFT() - if &filetype != 'Avante' && &filetype != 'AvanteInput' - return &filetype - endif - return '' -endfunction - -function WPM() - if &filetype != 'Avante' && &filetype != 'AvanteInput' - return (luaeval("require('wpm').historic_graph()") . ' ' . luaeval("require('wpm').wpm()")) . 'wpm' - endif - return '' -endfunction - -function TabbyStatus() - if !exists("g:tabby_inline_completion_trigger") - let g:tabby_inline_completion_trigger = 'auto' - endif - if g:tabby_inline_completion_trigger == 'auto' - return '' - endif - if g:tabby_inline_completion_trigger == 'manual' - return 'ai: manual' - endif - return 'ai: off' -endfunction - -function ToggleTabby() - if !exists("g:tabby_inline_completion_trigger") - let g:tabby_inline_completion_trigger = 'auto' - endif - if g:tabby_inline_completion_trigger == 'auto' - let g:tabby_inline_completion_trigger = 'manual' - elseif g:tabby_inline_completion_trigger == 'off' - let g:tabby_inline_completion_trigger = 'auto' - else - let g:tabby_inline_completion_trigger = 'off' - endif -endfunction - -function! TablineTabs() - return lightline#tabline() -endfunction - -let g:tabby_keybinding_accept = '' -autocmd Filetype json,jsonc let g:indentLine_setConceal = 0 -autocmd Filetype javascriptreact,typescriptreact TSEnable indent -autocmd Filetype * call tabby#inline_completion#keybindings#Setup() - -function! SWB() - execute('call lightline#bufferline#go_previous()') -endfunction - -function! SW() - execute('call lightline#bufferline#go_next()') -endfunction - -function! Q() - let float_visible = 0 - let winid = 0 - for win in range(1, winnr('$')) - let config = nvim_win_get_config(win_getid(win)) - if has_key(config, 'relative') && config.relative != '' - let float_visible = 1 - let winid = win_getid(win) - break - endif - endfor - if float_visible - call nvim_win_close(winid, v:true) - return - endif - - - if exists("t:NERDTreeBufName") && bufwinnr(t:NERDTreeBufName) != -1 - NERDTreeClose - else - call feedkeys(":nohlsearch\") - if len(filter(range(1, bufnr('$')), 'buflisted(v:val)')) > 1 - call feedkeys(':bd') - else - call feedkeys(':q') - endif - endif -endfunction - -function! GoToTab(tab_number) - execute 'call lightline#bufferline#go(' . a:tab_number . ')' -endfunction - -function! InputTabNumber() - let l:tab_number = nr2char(getchar()) - if l:tab_number =~ '\d' - call GoToTab(str2nr(l:tab_number)) - endif -endfunction - -function! TurnOffDiag() - let disallowed_langs = ['c', 'cpp', 'javascript', 'typescript', 'typescriptreact', 'javascriptreact'] - if index(disallowed_langs, &filetype) >= 0 - ALEDisable - endif -endfunction - -function! AddSpacesToParentheses() range - let saved_search = @/ - let pattern = '\v(\w+\()(\S.{-})(\))' - execute a:firstline . ',' . a:lastline . 's/' . pattern . '/\1 \2 \3/ge' - execute a:firstline . ',' . a:lastline . 's/( )/( )/ge' - execute a:firstline . ',' . a:lastline . 's/(\s\+/( /ge' - execute a:firstline . ',' . a:lastline . 's/\s\+)/ )/ge' - let @/ = saved_search -endfunction - -function! OpenLsp() - let float_visible = 0 - for win in range(1, winnr('$')) - let config = nvim_win_get_config(win_getid(win)) - if has_key(config, 'relative') && config.relative != '' - let float_visible = 1 - break - endif - endfor - - if float_visible - call Q() - endif - - call feedkeys('K') -endfunction - -function! OpenFloat() - let float_visible = 0 - let g:float_winid = 0 - for win in range(1, winnr('$')) - let config = nvim_win_get_config(win_getid(win)) - if has_key(config, 'relative') && config.relative != '' - let float_visible = 1 - let g:float_winid = win_getid(win) - break - endif - endfor - - -lua <') - let parts = split(file_line, '#L') - if len(parts) > 1 - execute 'e +' . parts[1] . ' ' . parts[0] | sleep 200m - set number - execute('call lightline#bufferline#go_next()') - else - normal! gf - endif -endfunction - -nnoremap c "+yy -vnoremap c "+y -nnoremap p "+gP -vnoremap p "+P - -nnoremap f :lua vim.lsp.buf.code_action() -vnoremap f :lua vim.lsp.buf.code_action() - -nnoremap rs :lua vim.lsp.buf.rename() -vnoremap rs :lua vim.lsp.buf.rename() - -nnoremap gf :call GFLine() -vnoremap ap :call AddSpacesToParentheses() - -autocmd BufReadPost,BufNew * call TurnOffDiag() - -nnoremap :noh - -nnoremap :NERDTreeMirror:NERDTreeFocus -inoremap :NERDTreeMirror:NERDTreeFocus -vnoremap :NERDTreeMirror:NERDTreeFocus - -nnoremap :call Q() -tnoremap -nnoremap :call SWB() -nnoremap :call SW() - -nnoremap w -nnoremap -nnoremap b - -vnoremap w -vnoremap -vnoremap b - -noremap :tabn -noremap :tabp - -nnoremap :call InputTabNumber() -inoremap :call InputTabNumber() -vnoremap :call InputTabNumber() - -nnoremap :Telescope live_grep -nnoremap :Telescope current_buffer_fuzzy_find -nnoremap :Telescope marks - -nnoremap :lua ToggleDiagnostics() - -nnoremap :VimspectorReset -nnoremap :VimspectorToggle -nnoremap b :VimspectorBreakpoints -nnoremap d :VimspectorDisassemble -nnoremap [ VimspectorUpFrame -nnoremap ] VimspectorDownFrame -nnoremap VimspectorBalloonEval - -inoremap -vnoremap >gv -vnoremap lightline#bufferline#move_previous() -nnoremap lightline#bufferline#move_next() - -nnoremap t :call OpenFloat() -nnoremap T :call OpenLsp() - -nnoremap gd -nnoremap gd :Telescope diagnostics - -nnoremap gr :Telescope lsp_references - -nnoremap [[ ?{:nohl -nnoremap ]] /}:nohl -nnoremap ][ /{:nohl -nnoremap [] ?}:nohl - -vnoremap [[ ?{:nohlgv -vnoremap ]] /}:nohlgv -vnoremap ][ /{:nohlgv -vnoremap [] ?}:nohlgv - -nnoremap -nnoremap ta :call ToggleTabby() - -xnoremap ip :silent! normal! T,vt, -onoremap ip :silent! normal! T,vt, - -nnoremap -nnoremap -vnoremap -vnoremap - -inoremap i -inoremap i - -colorscheme base16-synth-midnight-dark -hi LineNr guibg=#000000 -hi String ctermfg=1 guifg=#ea5971 -hi Character ctermfg=1 guifg=#dddddd -hi CmpItemKindDefault guifg=#7cede9 guibg=#101010 -hi javaScriptIdentifier guifg=#ff40ff ctermfg=Magenta -hi Delimiter ctermfg=14 guifg=#cccccc -hi AvanteConflictCurrent guibg=#101010 -hi AvanteConflictIncoming guibg=#102010 -hi PmenuSel guibg=#ffffff guifg=#202020 -hi Variable guifg=#40FF40 ctermfg=Green -hi @variable guifg=#40FF40 ctermfg=Green -hi Identifier guifg=#27ea91 -hi def link @lsp.typemod.variable.defaultLibrary.javascriptreact Special -hi def link @lsp.typemod.variable.defaultLibrary.typescriptreact Special -hi def link @lsp.typemod.variable.defaultLibrary.javascript Special -hi def link @lsp.typemod.variable.defaultLibrary.typescript Special -hi def link @punctuation.special.javascript Delimiter -hi def link @lsp.type.keywordLiteral.zig Special -hi def link @lsp.type.string.zig NONE -hi def link @type.builtin.arduino Keyword -hi def link markdownId markdownIdDeclaration -hi def link markdownH1 RenderMarkdownH1 -hi def link markdownH2 RenderMarkdownH2 -hi def link markdownHeadingRule RenderMarkdownTableHead -hi def link markdownRule markdownH1 -hi def link markdownIdDeclaration markdownCode -hi def link markdownLineStart markdownCode - -hi @type.builtin.cpp guifg=#ea5ce2 -hi SpecialChar ctermfg=9 guifg=#e4600e -hi SignColumn guibg=#000000 - -let g:vim_json_conceal=0 -let g:markdown_syntax_conceal=0 -let g:indentLine_color_term=239 -let g:indentLine_color_gui='#141414' -let NERDTreeQuitOnOpen=1 -let NERDTreeWinSize=36 -let NERDTreeMinimalUI=1 - -autocmd BufNewFile,BufRead *.zig set shiftwidth=2 -autocmd BufNewFile,BufRead *.modelfile set ft=gotmpl -autocmd BufNewFile,BufRead *.vsh set ft=glsl - -aunmenu PopUp.Inspect -aunmenu PopUp.-1- -aunmenu PopUp.How-to\ disable\ mouse -anoremenu PopUp.Inspect Inspect - -augroup highlight_yank - autocmd! - au TextYankPost * silent! lua vim.highlight.on_yank { higroup='TelescopeSelection', timeout=200 } -augroup END -- cgit v1.2.3