diff --git a/neovim/.config/nvim/coc-settings.json b/neovim/.config/nvim/coc-settings.json index 7e1f9ae..7df27b7 100644 --- a/neovim/.config/nvim/coc-settings.json +++ b/neovim/.config/nvim/coc-settings.json @@ -1,8 +1,10 @@ { - "git.removedSign.text": "✗", "git.addedSign.hlGroup": "GitGutterAdd", "git.changedSign.hlGroup": "GitGutterChange", "git.removedSign.hlGroup": "GitGutterDelete", "git.topRemovedSign.hlGroup": "GitGutterDelete", - "git.changeRemovedSign.hlGroup": "GitGutterChangeDelete" + "git.changeRemovedSign.hlGroup": "GitGutterChangeDelete", + "snippets.extends":{ + "latex":["tex","texmath"] + } } diff --git a/neovim/.config/nvim/coc.vim b/neovim/.config/nvim/coc.vim index f73f4ff..74525bf 100644 --- a/neovim/.config/nvim/coc.vim +++ b/neovim/.config/nvim/coc.vim @@ -15,15 +15,6 @@ set updatetime=300 " Don't pass messages to |ins-completion-menu|. set shortmess+=c -" Always show the signcolumn, otherwise it would shift the text each time -" diagnostics appear/become resolved. -if has("nvim-0.5.0") || has("patch-8.1.1564") - " Recently vim can merge signcolumn and number column into one - set signcolumn=number -else - set signcolumn=yes -endif - " Use tab for trigger completion with characters ahead and navigate. " NOTE: Use command ':verbose imap ' to make sure tab is not mapped by " other plugin before putting this into your config. diff --git a/neovim/.config/nvim/init.vim b/neovim/.config/nvim/init.vim index 24d9283..65992ff 100644 --- a/neovim/.config/nvim/init.vim +++ b/neovim/.config/nvim/init.vim @@ -2,15 +2,14 @@ let $MYPLUGDIRECTORY = "~/.config/nvim/plugged/" let $MYNVIMINIT = "~/.config/nvim/init.vim" let $MYCOCVIM = "~/.config/nvim/coc.vim" -"-------------------- -"plugins -"-------------------- -" autoinstall vim-plug if it is not installed +" Plugins {{{ " +" automatic vim-plug install {{{ " if empty(glob('~/.local/share/nvim/site/autoload/plug.vim')) silent !curl -fLo "${XDG_DATA_HOME:-$HOME/.local/share}"/nvim/site/autoload/plug.vim --create-dirs \ https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim autocmd VimEnter * PlugInstall | source $MYNVIMINIT endif +" }}} automatic vim-plug install " call plug#begin($MYPLUGDIRECTORY) " automatically install all plugins that are not already installed @@ -38,10 +37,9 @@ Plug 'Yggdroot/indentLine' " ident guides Plug 'iamcco/markdown-preview.nvim', { 'do': { -> mkdp#util#install() }, 'for': ['markdown', 'vim-plug']} Plug 'elkowar/yuck.vim', {'for': 'yuck'} " for yuck (eww) configuration call plug#end() +" }}} Plugins " -"-------------------- -" general settings -"-------------------- +" General Settings {{{ " let mapleader=" " " set mapleader to space let maplocalleader=" " " set localleader to space set timeoutlen=1000 " set timeout length @@ -60,19 +58,29 @@ set wildmode=longest,list " get bash-like tab completions filetype plugin indent on " allows auto-indenting depending on file type syntax on " syntax highlighting set cc=80 " set an 80 column border for good coding style +" folding +set foldmethod=marker +set foldtext=gitgutter#fold#foldtext() "toggle cc when reasonable augroup cctoggle autocmd! autocmd BufEnter,FocusGained * set cc=80 autocmd BufLeave,FocusLost * set cc=0 augroup END +"toggle relativenumber when reasonable +set number relativenumber +augroup numbertoggle + autocmd! + autocmd BufEnter,FocusGained,InsertLeave * set relativenumber + autocmd BufLeave,FocusLost,InsertEnter * set norelativenumber +augroup END +" sign column +set signcolumn=yes +" }}} General Settings " -"-------------------- -"mappings -"-------------------- +" Mappings {{{ " "disable colorizer mappings let g:colorizer_nomap = 1 - " enable copy and past to and fro clipboard vnoremap y "+y nnoremap Y "+yg_ @@ -106,43 +114,28 @@ nnoremap nt :NERDTreeToggle nnoremap f :NERDTreeFind "symbol renaming nnoremap rn (coc-reame) +" }}} Mappings " -"-------------------- -" coc (Conquer of Completion) -"-------------------- +" CoC (Conquer of Completion) {{{ " " coc plugins (will automatically install) -let g:coc_global_extensions = ['coc-snippets', 'coc-git', 'coc-vimtex', 'coc-python', 'coc-vimlsp', 'coc-json'] +let g:coc_global_extensions = [ + \'coc-texlab', + \'coc-snippets', + \'coc-git', + \'coc-vimtex', + \'coc-python', + \'coc-vimlsp', + \'coc-json'] source $MYCOCVIM -"" use for trigger completion and navigate to the next complete item -"function! s:check_back_space() abort - "let col = col('.')- 1 - "return !col || getline('.')[col - 1] =~ '\s' -"endfunction +" }}} CoC (Conquer of Completion) " -"" Make used for trigger completion, completion confirm, snippet expand and jump like VSCode. -"inoremap - "\ pumvisible() ? coc#_select_confirm() : - "\ coc#expandableOrJumpable() ? "\=coc#rpc#request('doKeymap', ['snippets-expand-jump',''])\" : - "\ check_back_space() ? "\" : - "\ coc#refresh() - -"function! s:check_back_space() abort - "let col = col('.') - 1 - "return !col || getline('.')[col - 1] =~# '\s' -"endfunction - -"let g:coc_snippet_next = '' - -"-------------------- -" airline -"-------------------- +" Airline {{{ " set laststatus=2 " start in 'normal' mode let g:airline#extensions#tabline#enabled = 1 " enable tabline for buffers let g:airline#extensions#tabline#formatter = 'unique_tail' " set tabline item style +" }}} Airline " -"-------------------- -"NERDTree -"-------------------- +" NERDTree {{{ " set modifiable let NERDTreeShowHidden=1 " show hidden files in NERDTree let NERDTreeAutoDeleteBuffer=1 " automatically delete the buffer of the file deleted with NERDTree @@ -158,11 +151,9 @@ autocmd BufEnter * if tabpagenr('$') == 1 && winnr('$') == 1 && exists('b:NERDTr " If another buffer tries to replace NERDTree, put it in the other window, and bring back NERDTree. autocmd BufEnter * if bufname('#') =~ 'NERD_tree_\d\+' && bufname('%') !~ 'NERD_tree_\d\+' && winnr('$') > 1 | \ let buf=bufnr() | buffer# | execute "normal! \w" | execute 'buffer'.buf | endif +" }}} NERDTree " - -"-------------------- -"colors -"-------------------- +" Color Scheme {{{ " " set colorscheme let g:gruvbox_contrast_dark='hard' colorscheme gruvbox @@ -175,18 +166,10 @@ highlight GitGutterChange ctermfg=208 highlight GitGutterDelete ctermfg=124 highlight LineNr ctermfg=7 highlight CursorLineNr ctermfg=7 +" }}} Color Scheme " -"toggle relativenumber when reasonable -set number relativenumber -augroup numbertoggle - autocmd! - autocmd BufEnter,FocusGained,InsertLeave * set relativenumber - autocmd BufLeave,FocusLost,InsertEnter * set norelativenumber -augroup END -"-------------------- -"vimtex -"-------------------- +" VimTeX {{{ " let g:vimtex_compiler_progname = 'nvr' " neovim-remote for vimtex let g:vimtex_view_method = 'zathura' " set zathura as basic pdf viewer "open TOC @@ -202,4 +185,4 @@ let g:vimtex_compiler_latexmk = { \ '-interaction=nonstopmode', \ ], \} - +" }}} VimTeX "