diff options
author | Tyler Davis <tyler@gluecode.net> | 2025-04-11 04:21:53 +0000 |
---|---|---|
committer | Tyler Davis <tyler@gluecode.net> | 2025-04-11 04:21:53 +0000 |
commit | 8038805215c53185e3b5c6c40a8e8a872daf7884 (patch) | |
tree | 58f9f1b896605adf22f5ca3fbb958bbdb027d682 | |
parent | aed18e7c1e40d4dc41b89a5bc2806f8dfd3e7b25 (diff) | |
download | dotfiles-8038805215c53185e3b5c6c40a8e8a872daf7884.tar.gz dotfiles-8038805215c53185e3b5c6c40a8e8a872daf7884.zip |
-rw-r--r-- | .config/nvim/init.vim.bak | 416 |
1 files changed, 0 insertions, 416 deletions
diff --git a/.config/nvim/init.vim.bak b/.config/nvim/init.vim.bak deleted file mode 100644 index dea37b2..0000000 --- a/.config/nvim/init.vim.bak +++ /dev/null @@ -1,416 +0,0 @@ -""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" -" -> Vim-Plug -""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" -call plug#begin('~/.config/nvim/plugged') - -Plug 'jremmen/vim-ripgrep' -Plug 'stefandtw/quickfix-reflector.vim' -Plug 'fatih/vim-go', { 'do': ':GoUpdateBinaries' } -Plug 'buoto/gotests-vim' -Plug 'w0rp/ale' -Plug 'vim-scripts/DrawIt' -let $NVIM_TUI_ENABLE_TRUE_COLOR=1 -" Rust settings -Plug 'rust-lang/rust.vim' - -" Autocomplete -Plug 'Shougo/deoplete.nvim', { 'do': ':UpdateRemotePlugins' } - -" LSP -Plug 'nvim-lua/lsp-status.nvim' -Plug 'neovim/nvim-lspconfig' -Plug 'nvim-lua/lsp_extensions.nvim' -Plug 'nvim-lua/completion-nvim' -" Diagnostics in QuickFix/LocList -Plug 'onsails/diaglist.nvim' - -call plug#end() - -""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" -" -> General -""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" - -" Sets how many lines of history VIM has to remember -set history=500 - -" Enable filetype plugins -filetype plugin on -"filetype indent on - -" Set to auto read when a file is changed from the outside -set autoread -au FocusGained,BufEnter * checktime - -" :Ws sudo saves the file -" (useful for handling the permission-denied error) -command! Ws execute 'w !sudo tee % > /dev/null' <bar> edit! - -" Limit what can be done in the VIMRC -set secure - -""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" -" -> VIM user interface -""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" -" Set 7 lines to the cursor - when moving vertically using j/k -set so=7 - -" Avoid garbled characters in Chinese language windows OS -let $LANG='en' -set langmenu=en -source $VIMRUNTIME/delmenu.vim -source $VIMRUNTIME/menu.vim - -" Turn on the Wild menu -set wildmenu - -" Display wildmenu with specific options -set wildmode=list:longest,full - - -" Ignore compiled files -set wildignore=*.o,*~,*.pyc -if has("win16") || has("win32") - set wildignore+=.git\*,.hg\*,.svn\* -else - set wildignore+=*/.git/*,*/.hg/*,*/.svn/*,*/.DS_Store -endif - -"Always show current position -set ruler - -" Height of the command bar -set cmdheight=1 - -" A buffer becomes hidden when it is abandoned -set hid - -" Configure backspace so it acts as it should act -set backspace=eol,start,indent -set whichwrap+=<,>,h,l - -" Ignore case when searching -set ignorecase - -" When searching try to be smart about cases -set smartcase - -" Highlight search results -set hlsearch - -" Makes search act like search in modern browsers -set incsearch - -" Don't redraw while executing macros (good performance config) -set lazyredraw - -" For regular expressions turn magic on -set magic - -" Show matching brackets when text indicator is over them -set showmatch - -" How many tenths of a second to blink when matching brackets -set mat=2 - -" No annoying sound on errors -set noerrorbells -set novisualbell -set t_vb= -set tm=500 - -" time waited for key press(es) to complete. It makes for a faster key response -set ttyfast -set ttimeout -set ttimeoutlen=50 - -" Properly disable sound on errors on MacVim -if has("gui_macvim") - autocmd GUIEnter * set vb t_vb= -endif - -" Add a bit extra margin to the left -set foldcolumn=1 - -" new splits will be at the bottom or to the right side of the screen -set splitbelow -set splitright - -set showcmd " Show previous commands -set showmode " Display NORMAL/INSERT/VISUAL mode below statusline - -set number " We like line numbers - -""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" -" -> Colors and Fonts -""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" -" Enable syntax highlighting -"syntax enable - -" Disable syntax for now, but keep colors for the rest of the UI -syntax off - -" Enable 256 colors palette in Gnome Terminal -if $COLORTERM == 'gnome-terminal' - set t_Co=256 -endif - -try - colorscheme peachpuff -catch -endtry - -set background=light - -" Set extra options when running in GUI mode -if has("gui_running") - set guioptions-=T - set guioptions-=e - set t_Co=256 - set guitablabel=%M\ %t -endif - -" Set utf8 as standard encoding and en_US as the standard language -set encoding=utf8 - -" Use Unix as the standard file type -set ffs=unix,dos,mac - -set colorcolumn=250 "Disable formatting past 250 chars - -""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" -" -> Files, backups and undo -""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" -" Turn backup off, since most stuff is in SVN, git etc. anyway... -set nobackup -set nowb -set noswapfile -set shortmess+=I - -""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" -" -> Text, tab and indent related -""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" -" Use spaces instead of tabs -set expandtab - -" Be smart when using tabs ;) -set smarttab - -" 1 tab == 4 spaces -set shiftwidth=4 -set tabstop=4 - -" Linebreak on 500 characters -set lbr -set tw=500 - -set ai "Auto indent -set si "Smart indent -set wrap "Wrap lines - -set shiftround " When shifting lines, round indentation to nearest shiftwidth - - -"""""""""""""""""""""""""""""" -" -> Status line -"""""""""""""""""""""""""""""" -" Always show the status line -set laststatus=2 - -" Statusline definition -set statusline= -set statusline+=%7*\[%n] "buffernr -set statusline+=%1*\ %<%t\ "File+path -set statusline+=%3*\ %y\ "FileType -set statusline+=%4*\ %{''.(&fenc!=''?&fenc:&enc).''} "Encoding -set statusline+=%5*\ %{(&bomb?\",BOM\":\"\")}\ "Encoding2 -set statusline+=%6*\ %{&ff}\ "FileFormat (dos/unix..) -set statusline+=%7*\ %=\ row:%l/%L\ (%03p%%)\ "Rownumber/total (%) -set statusline+=%9*\ col:%03c\ "Colnr -set statusline+=%0*\ %m%r%w\ "Modified? Readonly? Top/bot. - -""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" -" -> Misc -""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" -" Remove the Windows ^M - when the encodings gets messed up -noremap <Leader>m mmHmt:%s/<C-V><cr>//ge<cr>'tzt'm - -" Toggle paste mode on and off -map <leader>pp :setlocal paste!<cr> -set pastetoggle=<F2> - -" Disable mouse automatic mode -set mouse-=a - -" Enable line numbers toggle -noremap <leader>n :set invnumber<CR> - -" jump to the last position when reopening a file -if has("autocmd") - au BufReadPost * if line("'\"") > 1 && line("'\"") <= line("$") | exe "normal! g'\"" | endif -endif - -""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" -" -> Helper functions -""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" - -" Trim whitespace at end of lines -nnoremap <leader>s :%s/\s\+$//e<CR> - -""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" -" -> General Code Settings -""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" -let g:deoplete#enable_at_startup = 1 - -" Fix weird JSON quotation issue -let g:vim_json_syntax_conceal = 0 - -" Enable Ripgrep formatting for vim -let g:rg_command = 'rg --vimgrep -S' - -" Code folding -set foldmethod=syntax -set foldlevel=1 -set foldnestmax=1 - -" -- Text wrap and expand spaces for yaml, css, js, etc -if has("autocmd") - " Syntax of these languages is fussy over tabs Vs spaces - autocmd FileType make setlocal ts=8 sts=8 sw=8 noexpandtab - autocmd FileType yaml setlocal ts=2 sts=2 sw=2 expandtab - - " Customisations based on house-style (arbitrary) - autocmd FileType html setlocal ts=2 sts=2 sw=2 expandtab - autocmd FileType css setlocal ts=2 sts=2 sw=2 expandtab - autocmd FileType javascript setlocal ts=4 sts=4 sw=4 noexpandtab - - " Treat .rss files as XML - autocmd BufNewFile,BufRead *.rss setfiletype xml -endif - -" Persistent Undo -if has('persistent_undo') - set undolevels=5000 - set undodir=$HOME/.vim_undofiles - set undofile -endif - -" Put LSP stuff in the quickfix window -"lua vim.diagnostic.setqflist() - -" Enable diagnostic list in qfix/loclist -lua << EOF - require("diaglist").init({ - -- optional settings - -- below are defaults - - -- increase for noisy servers - debounce_ms = 50, - - -- list in quickfix only diagnostics from clients - -- attached to a current buffer - -- if false, all buffers' clients diagnostics is collected - buf_clients_only = true, -}) -EOF - -""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" -" -> ALE Settings -""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" -let g:LanguageClient_serverCommands = { - \ 'rust': ['rust-analyzer'], - \ } -let g:ale_linters = {'rust': ['rust-analyzer']} -let g:ale_markdown_markdownlint_options = "--config ~/.mdlrc" - -""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" -" -> Golang Settings -""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" - -let g:go_def_mode='gopls' -let g:go_info_mode='gopls' -let g:go_gopls_gofumpt=1 -let g:go_metalinter_command = 'golangci-lint' -let g:go_fmt_command="gopls" - -" By default syntax-highlighting for Functions, Methods and Structs is disabled -let g:go_highlight_build_constraints = 1 -let g:go_highlight_fields = 1 -let g:go_highlight_functions = 1 -let g:go_highlight_interfaces = 1 -let g:go_highlight_methods = 1 -let g:go_highlight_operators = 1 -let g:go_highlight_structs = 1 - -" Auto-space Go files -autocmd BufNewFile,BufRead *.go setlocal noexpandtab tabstop=4 shiftwidth=4 - -" vim-go mappings -au FileType go nmap <leader>b <Plug>(go-build) -au FileType go nmap <leader>c <Plug>(go-coverage) -"au FileType go nmap <leader>r <Plug>(go-run) -au FileType go nmap <leader>t <Plug>(go-test) -au FileType go nmap <leader>d <Plug>(go-def) - -" Go implements (interfaces under cursor) -"au FileType go nmap <Leader>s <Plug>(go-implements) - -" Go show type info under cursor -au FileType go nmap <Leader>i <Plug>(go-info) - -" Go rename -"au FileType go nmap <Leader>e <Plug>(go-rename) - -" Go vet -au FileType go nmap <Leader>v <Plug>(go-vet) - -" Godoc under cursor -au FileType go nmap <Leader>k <Plug>(go-doc) - -""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" -" -> Rust Settings -""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" - -let g:rustfmt_autosave = 1 - -if has('nvim') - " Rust LSP support for rust-analyzer - lua << EOF - local nvim_lsp = require'lspconfig' - - local on_attach = function(client) - require'completion'.on_attach(client) - end - - -- Auto-imports - nvim_lsp.rust_analyzer.setup({ - on_attach=on_attach, - settings = { - ["rust-analyzer"] = { - assist = { - importGranularity = "module", - importPrefix = "by_self", - }, - cargo = { - loadOutDirsFromCheck = true - }, - procMacro = { - enable = true - }, - } - } - }) - - -- Enable diagnostics - vim.lsp.handlers["textDocument/publishDiagnostics"] = vim.lsp.with( - vim.lsp.diagnostic.on_publish_diagnostics, { - virtual_text = true, - signs = true, - update_in_insert = true, - } - ) -EOF - -endif - -""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""" - |