diff options
Diffstat (limited to '.config/new_neovim')
| -rw-r--r-- | .config/new_neovim/coc-settings.json | 73 | ||||
| -rw-r--r-- | .config/new_neovim/general/functions.vim | 9 | ||||
| -rw-r--r-- | .config/new_neovim/general/paths.vim | 4 | ||||
| -rw-r--r-- | .config/new_neovim/general/settings.vim | 43 | ||||
| -rw-r--r-- | .config/new_neovim/init.vim | 8 | ||||
| -rw-r--r-- | .config/new_neovim/keys/mappings.vim | 73 | ||||
| -rw-r--r-- | .config/new_neovim/keys/which-key.vim | 170 | ||||
| -rw-r--r-- | .config/new_neovim/plug-config/coc.vim | 157 | ||||
| -rw-r--r-- | .config/new_neovim/themes/airline.vim | 34 | ||||
| -rw-r--r-- | .config/new_neovim/themes/onedark.vim | 23 | ||||
| -rw-r--r-- | .config/new_neovim/vim-plug/plugins.vim | 49 |
11 files changed, 643 insertions, 0 deletions
diff --git a/.config/new_neovim/coc-settings.json b/.config/new_neovim/coc-settings.json new file mode 100644 index 0000000..a11d575 --- /dev/null +++ b/.config/new_neovim/coc-settings.json @@ -0,0 +1,73 @@ +{ + // suggestions + // "suggest.echodocSupport": true, + // TODO add more labels and give them cool glyphs + "suggest.completionItemKindLabels": { + "text": "t", + "method": "m", + "function": "f" + }, + + // diagnostics + "diagnostic.errorSign": "✗", + "diagnostic.warningSign": "⚠", + "diagnostic.infoSign": "", + "diagnostic.hintSign": " ", + // "diagnostic.displayByAle": true, + + // codelens TODO what does this get me? + // "codeLens.enable": true, + + // list + "list.indicator": ">", + "list.selectedSignText": " ", + + // autoformat + "coc.preferences.formatOnSaveFiletypes": [ + "css", + "markdown", + "javascript", + "html", + "yaml", + "json", + "python" + ], + "coc.preferences.hoverTarget": "float", + + // python config + "python.linting.enabled": true, + "python.linting.pylintEnabled": true, + + // snippets + "snippets.ultisnips.directories": ["UltiSnips", "~/.config/nvim/utils/snips"], + + // explorer + "explorer.width": 30, + "explorer.icon.enableNerdfont": true, + "explorer.previewAction.onHover": false, + "explorer.icon.enableVimDevicons": false, + "explorer.keyMappings": { + "<cr>": ["expandable?", "expand", "open"], + "v": "open:vsplit" + }, + + "languageserver": { + "bash": { + "command": "bash-language-server", + "args": ["start"], + "filetypes": ["sh"], + "ignoredRootPaths": ["~"] + }, + "clangd": { + "command": "clangd", + "rootPatterns": ["compile_flags.txt", "compile_commands.json"], + "filetypes": ["c", "cc", "cpp", "c++", "objc", "objcpp"] + } + + } + + // TODO language servers + // TODO g:coc_global_extensions + // TODO b:coc_suggest_disable=1 GOYO + // TODO add to paths.vim g:coc_node_path +} diff --git a/.config/new_neovim/general/functions.vim b/.config/new_neovim/general/functions.vim new file mode 100644 index 0000000..58db6b1 --- /dev/null +++ b/.config/new_neovim/general/functions.vim @@ -0,0 +1,9 @@ +" Turn spellcheck on for markdown files +augroup auto_spellcheck + autocmd BufNewFile,BufRead *.md setlocal spell +augroup END + +" Remove trailing whitespaces automatically before save +" augroup strip_ws +" autocmd BufWritePre * call utils#stripTrailingWhitespaces() +" augroup END diff --git a/.config/new_neovim/general/paths.vim b/.config/new_neovim/general/paths.vim new file mode 100644 index 0000000..12ba27c --- /dev/null +++ b/.config/new_neovim/general/paths.vim @@ -0,0 +1,4 @@ +let g:ruby_host_prog='rvm system do neovim-ruby-host' +let g:python_host_prog='/usr/bin/python2' +let g:python3_host_prog='/usr/bin/python3' + diff --git a/.config/new_neovim/general/settings.vim b/.config/new_neovim/general/settings.vim new file mode 100644 index 0000000..751b725 --- /dev/null +++ b/.config/new_neovim/general/settings.vim @@ -0,0 +1,43 @@ +set iskeyword+=- " treat dash separated words as a word text object" +set formatoptions-=cro " Stop newline continution of comments + +syntax enable " Enables syntax highlighing +set hidden " Required to keep multiple buffers open multiple buffers +set nowrap " Display long lines as just one line +set encoding=utf-8 " The encoding displayed +set pumheight=10 " Makes popup menu smaller +set fileencoding=utf-8 " The encoding written to file +set ruler " Show the cursor position all the time +set cmdheight=2 " More space for displaying messages +set splitbelow " Horizontal splits will automatically be below +set splitright " Vertical splits will automatically be to the right +set t_Co=256 " Support 256 colors +set conceallevel=0 " So that I can see `` in markdown files +set tabstop=2 " Insert 2 spaces for a tab +set shiftwidth=2 " Change the number of space characters inserted for indentation +set smarttab " Makes tabbing smarter will realize you have 2 vs 4 +set expandtab " Converts tabs to spaces +set smartindent " Makes indenting smart +set autoindent " Good auto indent +set laststatus=2 " Always display the status line +set number relativenumber " Line numbers +set cursorline " Enable highlighting of the current line +set background=dark " tell vim what the background color looks like +set noshowmode " We don't need to see things like -- INSERT -- anymore +set nobackup " This is recommended by coc +set nowritebackup " This is recommended by coc +set shortmess+=c " Don't pass messages to |ins-completion-menu|. +set signcolumn=yes " Always show the signcolumn, otherwise it would shift the text each time +set updatetime=300 " Faster completion +set timeoutlen=100 " By default timeoutlen is 1000 ms +set clipboard=unnamedplus " Copy paste between vim and everything else +set incsearch + +" au! BufWritePost $MYVIMRC source % " auto source when writing to init.vm alternatively you can run :source $MYVIMRC +autocmd FileType * setlocal formatoptions-=c formatoptions-=r formatoptions-=o + + +"If you forget to sudo before calling vim use the following to be +"able to write the file. +cnoremap w!! %!sudo tee > /dev/null % + diff --git a/.config/new_neovim/init.vim b/.config/new_neovim/init.vim new file mode 100644 index 0000000..10ad6a0 --- /dev/null +++ b/.config/new_neovim/init.vim @@ -0,0 +1,8 @@ +BASENAME='/home/archlinux/vgg/.config/new_neovim' +source $BASENAME/vim-plug/plugins.vim +source $BASENAME/general/settings.vim +source $BASENAME/keys/mappings.vim +source $BASENAME/themes/onedark.vim +source $BASENAME/themes/airline.vim + + diff --git a/.config/new_neovim/keys/mappings.vim b/.config/new_neovim/keys/mappings.vim new file mode 100644 index 0000000..929414b --- /dev/null +++ b/.config/new_neovim/keys/mappings.vim @@ -0,0 +1,73 @@ +" g Leader key +let mapleader="," +let localleader=",," +nnoremap <Space> <Nop> +map <leader>v :edit $MYVIMRC<CR> + +" Better indenting +vnoremap < <gv +vnoremap > >gv + +" Better nav for omnicomplete +inoremap <expr> <c-j> ("\<C-n>") +inoremap <expr> <c-k> ("\<C-p>") + +" TAB in general mode will move to text buffer +nnoremap <silent> <TAB> :bnext<CR> +" SHIFT-TAB will go back +nnoremap <silent> <S-TAB> :bprevious<CR> + +" Use control-c instead of escape +nnoremap <silent> <C-c> <Esc> +" <TAB>: completion. +inoremap <silent> <expr><TAB> pumvisible() ? "\<C-n>" : "\<TAB>" + +" Better window navigation +nnoremap <C-h> <C-w>h +nnoremap <C-j> <C-w>j +nnoremap <C-k> <C-w>k +nnoremap <C-l> <C-w>l + +" Use alt + hjkl to resize windows +nnoremap <silent> <M-j> :resize -2<CR> +nnoremap <silent> <M-k> :resize +2<CR> +nnoremap <silent> <M-h> :vertical resize -2<CR> +nnoremap <silent> <M-l> :vertical resize +2<CR> + +" Copy selected text to system clipboard (requires gvim/nvim/vim-x11 installed): +vnoremap <C-c> "+y +map <C-p> "+P + +" Binary File Settings ---- {{{ +" +" Hex read +nmap <leader>hr :%!xxd<CR> :set filetype=xxd<CR> +" Hex write +nmap <leader>hw :%!xxd -r<CR> :set binary<CR> :set filetype=xxd<CR> +" +" }}} +" Info Pages Settings ----- {{{ +" +" Set up the reading of info from within vim (use :Info whatever) + +nnoremap <F1> :exe ":Info ".expand("<cword>")<CR> + +" +" }}} +" Terminal Emulator ----- {{{ +" +" +tnoremap <Esc> <C-\><C-n> + +" Usel alt+hjkl to move between windows + +tnoremap <A-h> <C-\><C-n><C-w>h +tnoremap <A-j> <C-\><C-n><C-w>j +tnoremap <A-k> <C-\><C-n><C-w>k +tnoremap <A-l> <C-\><C-n><C-w>l +nnoremap <A-h> <C-w>h +nnoremap <A-j> <C-w>j +nnoremap <A-k> <C-w>k +nnoremap <A-l> <C-w>l +" +" }}} diff --git a/.config/new_neovim/keys/which-key.vim b/.config/new_neovim/keys/which-key.vim new file mode 100644 index 0000000..87eda18 --- /dev/null +++ b/.config/new_neovim/keys/which-key.vim @@ -0,0 +1,170 @@ +" Map leader to which_key +nnoremap <silent> <leader> :silent WhichKey '<Space>'<CR> +vnoremap <silent> <leader> :silent <c-u> :silent WhichKeyVisual '<Space>'<CR> + +" Create map to add keys to +let g:which_key_map = {} +" Define a separator +let g:which_key_sep = '→' +" set timeoutlen=100 + + +" Not a fan of floating windows for this +let g:which_key_use_floating_win = 0 + +" Change the colors if you want +highlight default link WhichKey Operator +highlight default link WhichKeySeperator DiffAdded +highlight default link WhichKeyGroup Identifier +highlight default link WhichKeyDesc Function + +" Hide status line +autocmd! FileType which_key +autocmd FileType which_key set laststatus=0 noshowmode noruler + \| autocmd BufLeave <buffer> set laststatus=2 noshowmode ruler + +" Single mappings +let g:which_key_map['/'] = [ '<Plug>NERDCommenterToggle' , 'comment' ] +let g:which_key_map['.'] = [ ':e $MYVIMRC' , 'open init' ] +let g:which_key_map[';'] = [ ':Commands' , 'commands' ] +let g:which_key_map['='] = [ '<C-W>=' , 'balance windows' ] +let g:which_key_map[','] = [ 'Startify' , 'start screen' ] +let g:which_key_map['d'] = [ ':bd' , 'delete buffer'] +let g:which_key_map['e'] = [ ':CocCommand explorer' , 'explorer' ] +let g:which_key_map['f'] = [ ':Files' , 'search files' ] +let g:which_key_map['h'] = [ '<C-W>s' , 'split below'] +let g:which_key_map['q'] = [ 'q' , 'quit' ] +let g:which_key_map['r'] = [ ':RnvimrToggle' , 'ranger' ] +let g:which_key_map['S'] = [ ':SSave' , 'save session' ] +let g:which_key_map['T'] = [ ':Rg' , 'search text' ] +let g:which_key_map['v'] = [ '<C-W>v' , 'split right'] +let g:which_key_map['w'] = [ 'w' , 'write' ] +let g:which_key_map['z'] = [ 'Goyo' , 'zen' ] + +" Group mappings + +" b is for buffer +let g:which_key_map.b = { + \ 'name' : '+buffer' , + \ '1' : ['b1' , 'buffer 1'] , + \ '2' : ['b2' , 'buffer 2'] , + \ 'd' : ['bd' , 'delete-buffer'] , + \ 'f' : ['bfirst' , 'first-buffer'] , + \ 'h' : ['Startify' , 'home-buffer'] , + \ 'l' : ['blast' , 'last-buffer'] , + \ 'n' : ['bnext' , 'next-buffer'] , + \ 'p' : ['bprevious' , 'previous-buffer'] , + \ '?' : ['Buffers' , 'fzf-buffer'] , + \ } + +" s is for search +let g:which_key_map.s = { + \ 'name' : '+search' , + \ '/' : [':History/' , 'history'], + \ ';' : [':Commands' , 'commands'], + \ 'a' : [':Ag' , 'text Ag'], + \ 'b' : [':BLines' , 'current buffer'], + \ 'B' : [':Buffers' , 'open buffers'], + \ 'c' : [':Commits' , 'commits'], + \ 'C' : [':BCommits' , 'buffer commits'], + \ 'f' : [':Files' , 'files'], + \ 'g' : [':GFiles' , 'git files'], + \ 'G' : [':GFiles?' , 'modified git files'], + \ 'h' : [':History' , 'file history'], + \ 'H' : [':History:' , 'command history'], + \ 'l' : [':Lines' , 'lines'] , + \ 'm' : [':Marks' , 'marks'] , + \ 'M' : [':Maps' , 'normal maps'] , + \ 'p' : [':Helptags' , 'help tags'] , + \ 'P' : [':Tags' , 'project tags'], + \ 's' : [':Snippets' , 'snippets'], + \ 'S' : [':Colors' , 'color schemes'], + \ 't' : [':Rg' , 'text Rg'], + \ 'T' : [':BTags' , 'buffer tags'], + \ 'w' : [':Windows' , 'search windows'], + \ 'y' : [':Filetypes' , 'file types'], + \ 'z' : [':FZF' , 'FZF'], + \ } + +" g is for git +let g:which_key_map.g = { + \ 'name' : '+git' , + \ 'a' : [':Git add .' , 'add all'], + \ 'A' : [':Git add %' , 'add current'], + \ 'b' : [':Git blame' , 'blame'], + \ 'B' : [':GBrowse' , 'browse'], + \ 'c' : [':Git commit -m "autocommit"' , 'commit'], + \ 'd' : [':Git diff' , 'diff'], + \ 'D' : [':Gdiffsplit' , 'diff split'], + \ 'g' : [':GGrep' , 'git grep'], + \ 'G' : [':Gstatus' , 'status'], + \ 'h' : [':GitGutterLineHighlightsToggle' , 'highlight hunks'], + \ 'H' : ['<Plug>(GitGutterPreviewHunk)' , 'preview hunk'], + \ 'j' : ['<Plug>(GitGutterNextHunk)' , 'next hunk'], + \ 'k' : ['<Plug>(GitGutterPrevHunk)' , 'prev hunk'], + \ 'l' : [':Git log' , 'log'], + \ 'p' : [':Git push' , 'push'], + \ 'P' : [':Git pull' , 'pull'], + \ 'r' : [':GRemove' , 'remove'], + \ 's' : ['<Plug>(GitGutterStageHunk)' , 'stage hunk'], + \ 't' : [':GitGutterSignsToggle' , 'toggle signs'], + \ 'u' : ['<Plug>(GitGutterUndoHunk)' , 'undo hunk'], + \ 'v' : [':GV' , 'view commits'], + \ 'V' : [':GV!' , 'view buffer commits'], + \ } + +" l is for language server protocol +let g:which_key_map.l = { + \ 'name' : '+lsp' , + \ '.' : [':CocConfig' , 'config'], + \ ';' : ['<Plug>(coc-refactor)' , 'refactor'], + \ 'a' : ['<Plug>(coc-codeaction)' , 'line action'], + \ 'A' : ['<Plug>(coc-codeaction-selected)' , 'selected action'], + \ 'b' : [':CocNext' , 'next action'], + \ 'B' : [':CocPrev' , 'prev action'], + \ 'c' : [':CocList commands' , 'commands'], + \ 'd' : ['<Plug>(coc-definition)' , 'definition'], + \ 'D' : ['<Plug>(coc-declaration)' , 'declaration'], + \ 'e' : [':CocList extensions' , 'extensions'], + \ 'f' : ['<Plug>(coc-format-selected)' , 'format selected'], + \ 'F' : ['<Plug>(coc-format)' , 'format'], + \ 'h' : ['<Plug>(coc-float-hide)' , 'hide'], + \ 'i' : ['<Plug>(coc-implementation)' , 'implementation'], + \ 'I' : [':CocList diagnostics' , 'diagnostics'], + \ 'j' : ['<Plug>(coc-float-jump)' , 'float jump'], + \ 'l' : ['<Plug>(coc-codelens-action)' , 'code lens'], + \ 'n' : ['<Plug>(coc-diagnostic-next)' , 'next diagnostic'], + \ 'N' : ['<Plug>(coc-diagnostic-next-error)' , 'next error'], + \ 'o' : ['<Plug>(coc-openlink)' , 'open link'], + \ 'O' : [':CocList outline' , 'outline'], + \ 'p' : ['<Plug>(coc-diagnostic-prev)' , 'prev diagnostic'], + \ 'P' : ['<Plug>(coc-diagnostic-prev-error)' , 'prev error'], + \ 'q' : ['<Plug>(coc-fix-current)' , 'quickfix'], + \ 'r' : ['<Plug>(coc-rename)' , 'rename'], + \ 'R' : ['<Plug>(coc-references)' , 'references'], + \ 's' : [':CocList -I symbols' , 'references'], + \ 't' : ['<Plug>(coc-type-definition)' , 'type definition'], + \ 'u' : [':CocListResume' , 'resume list'], + \ 'U' : [':CocUpdate' , 'update CoC'], + \ 'v' : [':Vista!!' , 'tag viewer'], + \ 'z' : [':CocDisable' , 'disable CoC'], + \ 'Z' : [':CocEnable' , 'enable CoC'], + \ } + + +" t is for toggle +let g:which_key_map.t = { + \ 'name' : '+toggle' , + \ 'c' : [':ColorizerToggle' , 'colorizer'], + \ 'e' : [':CocCommand explorer' , 'explorer'], + \ 'n' : [':set nonumber!' , 'line-numbers'], + \ 'r' : [':set norelativenumber!' , 'relative line nums'], + \ 's' : [':let @/ = ""' , 'remove search highlight'], + \ 't' : [':FloatermToggle' , 'terminal'], + \ 'v' : [':Vista!!' , 'tag viewer'], + \ } + +" Register which key map +call which_key#register('<Space>', "g:which_key_map") + + diff --git a/.config/new_neovim/plug-config/coc.vim b/.config/new_neovim/plug-config/coc.vim new file mode 100644 index 0000000..709f971 --- /dev/null +++ b/.config/new_neovim/plug-config/coc.vim @@ -0,0 +1,157 @@ + " let g:coc_global_extensions = [ + " \ 'coc-snippets', + " \ 'coc-actions', + " \ 'coc-emmet', + " \ 'coc-pairs', + " \ 'coc-tsserver', + " \ 'coc-floaterm', + " \ 'coc-html', + " \ 'coc-css', + " \ 'coc-cssmodules', + " \ 'coc-yaml', + " \ 'coc-python', + " \ 'coc-explorer', + " \ 'coc-svg', + " \ 'coc-prettier', + " \ 'coc-vimlsp', + " \ 'coc-flutter', + " \ 'coc-xml', + " \ 'coc-yank', + " \ 'coc-json', + " \ 'coc-vimtex', + " \ ] + +" Use tab for trigger completion with characters ahead and navigate. +inoremap <silent><expr> <TAB> + \ pumvisible() ? "\<C-n>" : + \ <SID>check_back_space() ? "\<TAB>" : + \ coc#refresh() +inoremap <expr><S-TAB> pumvisible() ? "\<C-p>" : "\<C-h>" + +function! s:check_back_space() abort + let col = col('.') - 1 + return !col || getline('.')[col - 1] =~# '\s' +endfunction + +" Use <c-space> to trigger completion. +inoremap <silent><expr> <c-space> coc#refresh() + +" Use <cr> to confirm completion, `<C-g>u` means break undo chain at current +" position. Coc only does snippet and additional edit on confirm. +if exists('*complete_info') + inoremap <expr> <cr> complete_info()["selected"] != "-1" ? "\<C-y>" : "\<C-g>u\<CR>" +else + imap <expr> <cr> pumvisible() ? "\<C-y>" : "\<C-g>u\<CR>" +endif + +" GoTo code navigation. +nmap <silent> gd <Plug>(coc-definition) +nmap <silent> gy <Plug>(coc-type-definition) +nmap <silent> gi <Plug>(coc-implementation) +nmap <silent> gr <Plug>(coc-references) + +" Use K to show documentation in preview window. +nnoremap <silent> K :call <SID>show_documentation()<CR> + +function! s:show_documentation() + if (index(['vim','help'], &filetype) >= 0) + execute 'h '.expand('<cword>') + else + call CocAction('doHover') + endif +endfunction + +" Highlight the symbol and its references when holding the cursor. +autocmd CursorHold * silent call CocActionAsync('highlight') + +" Symbol renaming. +" nmap <leader>rn <Plug>(coc-rename) + +augroup mygroup + autocmd! + " Setup formatexpr specified filetype(s). + autocmd FileType typescript,json setl formatexpr=CocAction('formatSelected') + " Update signature help on jump placeholder. + autocmd User CocJumpPlaceholder call CocActionAsync('showSignatureHelp') +augroup end + +" Applying codeAction to the selected region. +" Example: `<leader>aap` for current paragraph +" xmap <leader>a <Plug>(coc-codeaction-selected) +" nmap <leader>a <Plug>(coc-codeaction-selected) + +" Remap keys for applying codeAction to the current line. +" nmap <leader>ac <Plug>(coc-codeaction) +" Apply AutoFix to problem on the current line. +" nmap <leader>qf <Plug>(coc-fix-current) + +" Introduce function text object +" NOTE: Requires 'textDocument.documentSymbol' support from the language server. +xmap if <Plug>(coc-funcobj-i) +xmap af <Plug>(coc-funcobj-a) +omap if <Plug>(coc-funcobj-i) +omap af <Plug>(coc-funcobj-a) + +" Use <TAB> for selections ranges. +" NOTE: Requires 'textDocument/selectionRange' support from the language server. +" coc-tsserver, coc-python are the examples of servers that support it. +" nmap <silent> <TAB> <Plug>(coc-range-select) +" xmap <silent> <TAB> <Plug>(coc-range-select) + +" Add `:Format` command to format current buffer. +command! -nargs=0 Format :call CocAction('format') + +" Add `:Fold` command to fold current buffer. +command! -nargs=? Fold :call CocAction('fold', <f-args>) + +" Add `:OR` command for organize imports of the current buffer. +command! -nargs=0 OR :call CocAction('runCommand', 'editor.action.organizeImport') + +" Add (Neo)Vim's native statusline support. +" NOTE: Please see `:h coc-status` for integrations with external plugins that +" provide custom statusline: lightline.vim, vim-airline. +set statusline^=%{coc#status()}%{get(b:,'coc_current_function','')} + +" Mappings using CoCList: +" Show all diagnostics. +" TODO add these to which key +" nnoremap <silent> <space>a :<C-u>CocList diagnostics<cr> +" " Manage extensions. +" nnoremap <silent> <space>e :<C-u>CocList extensions<cr> +" " Show commands. +" nnoremap <silent> <space>c :<C-u>CocList commands<cr> +" " Find symbol of current document. +" nnoremap <silent> <space>o :<C-u>CocList outline<cr> +" " Search workspace symbols. +" nnoremap <silent> <space>s :<C-u>CocList -I symbols<cr> +" " Do default action for next item. +" nnoremap <silent> <space>j :<C-u>CocNext<CR> +" " Do default action for previous item. +" nnoremap <silent> <space>k :<C-u>CocPrev<CR> +" " Resume latest coc list. +" nnoremap <silent> <space>p :<C-u>CocListResume<CR> + +" Explorer +let g:coc_explorer_global_presets = { +\ 'floating': { +\ 'position': 'floating', +\ }, +\ 'floatingLeftside': { +\ 'position': 'floating', +\ 'floating-position': 'left-center', +\ 'floating-width': 30, +\ }, +\ 'floatingRightside': { +\ 'position': 'floating', +\ 'floating-position': 'right-center', +\ 'floating-width': 30, +\ }, +\ 'simplify': { +\ 'file.child.template': '[selection | clip | 1] [indent][icon | 1] [filename omitCenter 1]' +\ } +\ } +"nmap <silent> <space>e :CocCommand explorer<CR> +" nnoremap <silent> <leader>e :CocCommand explorer<CR> +" nmap <space>f :CocCommand explorer --preset floatingRightside<CR> +autocmd BufEnter * if (winnr("$") == 1 && &filetype == 'coc-explorer') | q | endif + diff --git a/.config/new_neovim/themes/airline.vim b/.config/new_neovim/themes/airline.vim new file mode 100644 index 0000000..80fad2e --- /dev/null +++ b/.config/new_neovim/themes/airline.vim @@ -0,0 +1,34 @@ +"let g:airline_theme='luna' +let g:airline_theme='onedark' + +if !exists('g:airline_symbols') + let g:airline_symbols = {} +endif + +let g:airline_powerline_fonts = 1 + " unicode symbols +let g:airline_left_sep = '▶' +let g:airline_right_sep = '◀' +let g:airline_symbols.crypt = '🔒' +let g:airline_symbols.linenr = '☰' +let g:airline_symbols.maxlinenr = '㏑' +let g:airline_symbols.branch = '⎇' +let g:airline_symbols.paste = 'Þ' +let g:airline_symbols.spell = 'Ꞩ' +let g:airline_symbols.notexists = 'Ɇ' +let g:airline_symbols.whitespace = 'Ξ' +let g:powerline_pycmd='py3' + +" enable tabline +let g:airline#extensions#tabline#enabled = 1 +let g:airline#extensions#tabline#left_sep = '▶' +let g:airline#extensions#tabline#right_sep = '◀' + +set showtabline 2 + +set timeoutlen=300 ttimeoutlen=0 +set laststatus=2 " always display the status line +set statusline=%F "Full path to the file +set statusline+=\ -\ "Separator +set statusline+=%-4{fugitive#statusline()} "If using git, show branch being used + diff --git a/.config/new_neovim/themes/onedark.vim b/.config/new_neovim/themes/onedark.vim new file mode 100644 index 0000000..99ad7bb --- /dev/null +++ b/.config/new_neovim/themes/onedark.vim @@ -0,0 +1,23 @@ +" onedark.vim override: Don't set a background color when running in a terminal; +if (has("autocmd") && !has("gui_running")) + augroup colorset + autocmd! + let s:white = { "gui": "#ABB2BF", "cterm": "145", "cterm16" : "7" } + autocmd ColorScheme * call onedark#set_highlight("Normal", { "fg": s:white }) " `bg` will not be styled since there is no `bg` setting + augroup END +endif + +hi Comment cterm=italic +let g:onedark_hide_endofbuffer=1 +let g:onedark_terminal_italics=1 +let g:onedark_termcolors=256 + +syntax on +colorscheme onedark + + +" checks if your terminal has 24-bit color support +if (has("termguicolors")) + set termguicolors + hi LineNr ctermbg=NONE guibg=NONE +endif diff --git a/.config/new_neovim/vim-plug/plugins.vim b/.config/new_neovim/vim-plug/plugins.vim new file mode 100644 index 0000000..d569804 --- /dev/null +++ b/.config/new_neovim/vim-plug/plugins.vim @@ -0,0 +1,49 @@ +" auto-install vim-plug + +if ! filereadable(expand('~/.config/new_neovim/autoload/plug.vim')) + echo "Downloading junegunn/vim-plug to manage plugins..." + silent !mkdir -p ~/.config/nvim/autoload/ + silent !curl "https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim" > ~/.config/nvim/autoload/plug.vim +endif + +call plug#begin('~/.config/new_neovim/plugged') +Plug 'alok/notational-fzf-vim' +Plug 'dbeniamine/cheat.sh-vim' +Plug 'dbeniamine/vim-mail' +Plug 'honza/vim-snippets' +Plug 'jalvesaq/Nvim-R' +Plug 'jalvesaq/vimcmdline' +Plug 'jceb/vim-orgmode' +Plug 'jnurmine/Zenburn' +Plug 'joshdick/onedark.vim' +Plug 'junegunn/fzf.vim' +Plug 'junegunn/fzf', { 'dir': '~/.fzf', 'do': './install --all' } +Plug 'junegunn/goyo.vim' +Plug 'junegunn/Limelight.vim' +Plug 'liuchengxu/vim-which-key' " See what keys do like in emacs +Plug 'morhetz/gruvbox' +Plug 'nelstrom/vim-markdown-preview' +Plug 'neoclide/coc.nvim', {'branch': 'release'} +Plug 'pangloss/vim-javascript' +Plug 'PotatoesMaster/i3-vim-syntax' +Plug 'scrooloose/nerdtree' +Plug 'scrooloose/nerdcommenter' " Comment stuff out +Plug 'sheerun/vim-polyglot' +Plug 'SirVer/ultisnips' +Plug 'suan/vim-instant-markdown', {'for': 'markdown'} +Plug 'szymonmaszke/vimpyter' +Plug 'terryma/vim-multiple-cursors' +Plug 'tmhedberg/SimpylFold' +Plug 'tpope/timl' +Plug 'tpope/vim-markdown' +Plug 'tpope/vim-surround' +Plug 'tpope/vim-fugitive' +Plug 'vim-airline/vim-airline' +Plug 'vim-airline/vim-airline-themes' +Plug 'vim-latex/vim-latex' +Plug 'vifm/vifm.vim' +Plug 'vimwiki/vimwiki' +Plug 'voldikss/vim-floaterm' +Plug 'xuhdev/vim-latex-live-preview' +call plug#end() + |
