massive update, probably broken
[dotfiles/.git] / .config / nvim / init.vim
1 " Specify a directory for plugins
2 call plug#begin('~/.config/nvim/plugins/plugged')
3
4 Plug 'nvim-lua/popup.nvim'
5 Plug 'nvim-lua/plenary.nvim'
6 Plug 'nvim-telescope/telescope.nvim'
7 Plug 'pappasam/coc-jedi', { 'do': 'yarn install --frozen-lockfile && yarn build', 'branch': 'main' }
8 Plug 'neoclide/coc.nvim', {'branch': 'release'}
9 Plug 'ryanoasis/vim-devicons'
10 Plug 'airblade/vim-gitgutter'
11 Plug 'scrooloose/nerdcommenter'
12 "This is a linter for python
13 Plug 'metakirby5/codi.vim'
14 Plug 'christoomey/vim-tmux-navigator'
15 Plug 'morhetz/gruvbox'
16 Plug 'dracula/vim',{'as':'dracula'}
17 Plug 'HerringtonDarkholme/yats.vim' " TS Syntax
18 Plug 'tomlion/vim-solidity'
19 " Initialize plugin system
20 call plug#end()
21
22 colorscheme gruvbox
23 "colors:
24 syntax on
25
26 "Remaps:
27 "remap the leader to space
28 "let mapleader = " "
29 "jk in insert mode takes you back to normal mode
30 inoremap jk <ESC>
31 "Ctrl-s saves
32 nmap <C-s> :w<CR>
33 "++ in vmap or nmap coments
34 vmap ++ <plug>NERDCommenterToggle
35 nmap ++ <plug>NERDCommenterToggle
36 " j/k will move virtual lines (lines that wrap)
37 noremap <silent> <expr> j (v:count == 0 ? 'gj' : 'j')
38 noremap <silent> <expr> k (v:count == 0 ? 'gk' : 'k')
39 "Vex
40 nnoremap <leader>v :Vex<CR>
41 nnoremap <leader>h :Sex<CR>
42
43 function! Grepper()
44     call inputsave()
45     let replacement = input('RegExp: ')
46     let workdir = input('Directory: ')
47     call inputrestore()
48     execute 'grep! -Irn '.replacement.' '.workdir
49 endfunction
50 nnoremap <silent> <leader>gg  :call Grepper()<CR>:copen<CR>
51
52
53
54 " this is an auto changer for relative numbers
55 :augroup numbertoggle
56 :  autocmd!
57 :  autocmd BufEnter,FocusGained,InsertLeave * set relativenumber
58 :  autocmd BufLeave,FocusLost,InsertEnter   * set norelativenumber
59 :augroup END