diff options
author | Akshay <[email protected]> | 2020-07-22 03:34:08 +0100 |
---|---|---|
committer | Akshay <[email protected]> | 2020-07-22 03:34:08 +0100 |
commit | 51810b5c07e20982ebdf66f0bfb384c4bf55ad7d (patch) | |
tree | b5120bfc9b0ca72c9293afb9ed6e2e632a811deb /nvim/.config/nvim/init.vim |
squash again
Diffstat (limited to 'nvim/.config/nvim/init.vim')
-rw-r--r-- | nvim/.config/nvim/init.vim | 185 |
1 files changed, 185 insertions, 0 deletions
diff --git a/nvim/.config/nvim/init.vim b/nvim/.config/nvim/init.vim new file mode 100644 index 0000000..3de2adb --- /dev/null +++ b/nvim/.config/nvim/init.vim | |||
@@ -0,0 +1,185 @@ | |||
1 | let &t_ZM = "\e[3m" | ||
2 | |||
3 | " vim-plugs | ||
4 | call plug#begin('~/.local/share/nvim/plugged') | ||
5 | |||
6 | Plug 'airblade/vim-gitgutter' | ||
7 | Plug 'andymass/vim-matchup' | ||
8 | Plug 'godlygeek/tabular' | ||
9 | Plug 'jiangmiao/auto-pairs' | ||
10 | Plug 'junegunn/fzf', { 'dir': '~/.fzf', 'do': './install --all' } | ||
11 | Plug 'junegunn/fzf.vim' | ||
12 | Plug 'mattn/emmet-vim', {'for': ['javascript.jsx', 'html', 'css']} | ||
13 | Plug 'neoclide/coc.nvim', {'do': { -> coc#util#install()}, 'branch': 'release'} | ||
14 | Plug 'wellle/targets.vim' | ||
15 | Plug 'editorconfig/editorconfig-vim' | ||
16 | |||
17 | " tpope | ||
18 | Plug 'tpope/vim-repeat' | ||
19 | Plug 'tpope/vim-surround' | ||
20 | Plug 'tpope/vim-unimpaired' | ||
21 | Plug 'tpope/vim-fugitive' | ||
22 | |||
23 | " syntax and friends | ||
24 | Plug 'leafgarland/typescript-vim', {'for' : 'typescript'} | ||
25 | Plug 'mxw/vim-jsx', {'for' : 'javascript.jsx'} | ||
26 | Plug 'pangloss/vim-javascript', {'for' : ['javascript.jsx', 'javascript']} | ||
27 | Plug 'rust-lang/rust.vim', {'for': 'rust'} | ||
28 | Plug 'lervag/vimtex', {'for': 'tex'} | ||
29 | Plug 'neovimhaskell/haskell-vim', {'for': 'haskell'} | ||
30 | |||
31 | " colorschemes | ||
32 | Plug 'nerdypepper/agila.vim' | ||
33 | Plug 'nerdypepper/chestnut.vim' | ||
34 | Plug 'nerdypepper/vim-colors-plain', { 'branch': 'duotone' } | ||
35 | |||
36 | call plug#end() | ||
37 | |||
38 | " augroups | ||
39 | |||
40 | augroup plaintext | ||
41 | autocmd! | ||
42 | autocmd FileType text,markdown setlocal ts=2 sts=2 sw=2 expandtab textwidth=60 | ||
43 | augroup END | ||
44 | |||
45 | augroup webdev | ||
46 | autocmd! | ||
47 | autocmd FileType less,css,html,js?,ts? setlocal ts=2 sts=2 sw=2 expandtab | ||
48 | autocmd FileType less,css,html nnoremap <Leader>s viB:sort<cr> | ||
49 | augroup END | ||
50 | |||
51 | augroup restorecursor | ||
52 | autocmd BufReadPost * | ||
53 | \ if line("'\"") > 1 && line("'\"") <= line("$") | | ||
54 | \ execute "normal! g`\"" | | ||
55 | \ endif | ||
56 | augroup END | ||
57 | |||
58 | " general settings | ||
59 | set nobackup | ||
60 | set nowritebackup | ||
61 | set noswapfile " get rid of swapfiles everywhere | ||
62 | set dir=/tmp | ||
63 | |||
64 | syntax on | ||
65 | |||
66 | set omnifunc=syntaxcomplete#Complete | ||
67 | set completefunc=LanguageClient#complete | ||
68 | set list | ||
69 | filetype off | ||
70 | filetype plugin indent on | ||
71 | set laststatus=2 | ||
72 | set nowrap | ||
73 | set noshowmode | ||
74 | set listchars=tab:┊\ ,nbsp:␣,trail:·,extends:>,precedes:< | ||
75 | set fillchars=vert:\│ | ||
76 | set ignorecase | ||
77 | set smartcase | ||
78 | set sidescroll=40 | ||
79 | set incsearch | ||
80 | set hlsearch | ||
81 | set undofile | ||
82 | set undodir=~/tmp | ||
83 | set path+=** | ||
84 | set backspace=indent,eol,start | ||
85 | set hidden | ||
86 | set wildmenu | ||
87 | set foldmethod=manual | ||
88 | set complete=.,w,b,i,u,t, | ||
89 | set background=dark | ||
90 | set mouse=a | ||
91 | set conceallevel=0 | ||
92 | set nocursorline | ||
93 | set nonumber | ||
94 | set grepprg=rg\ --vimgrep\ --no-heading | ||
95 | set grepformat=%f:%l:%c:%m,%f:%l:%m | ||
96 | set cmdheight=2 | ||
97 | set shortmess+=c | ||
98 | set updatetime=300 | ||
99 | set signcolumn=yes | ||
100 | set inccommand=split | ||
101 | |||
102 | let g:netrw_browsex_viewer= "xdg-open" | ||
103 | |||
104 | colorscheme plain | ||
105 | |||
106 | set shiftwidth=4 " indent = 4 spaces | ||
107 | set expandtab | ||
108 | set tabstop=4 " tab = 4 spaces | ||
109 | set softtabstop=4 " backspace through spaces | ||
110 | |||
111 | " Functions | ||
112 | function! GetTabber() " a lil function that integrates well with Tabular.vim | ||
113 | let c = nr2char(getchar()) | ||
114 | :execute 'Tabularize /' . c | ||
115 | endfunction | ||
116 | |||
117 | " Ugh | ||
118 | :command! WQ wq | ||
119 | :command! Wq wq | ||
120 | :command! Wqa wqa | ||
121 | :command! W w | ||
122 | :command! Q q | ||
123 | |||
124 | " abbreviations | ||
125 | abclear | ||
126 | iab #i #include | ||
127 | iab #d #define | ||
128 | cab dst put =strftime('%d %a, %b %Y')<cr> | ||
129 | cab vg vimgrep | ||
130 | |||
131 | |||
132 | " plugin settings | ||
133 | |||
134 | " emmet | ||
135 | let g:user_emmet_mode='a' | ||
136 | let g:user_emmet_leader_key='<C-X>' | ||
137 | |||
138 | " gitgutter | ||
139 | let g:gitgutter_override_sign_column_highlight = 0 | ||
140 | let g:gitgutter_sign_added = '+' " '┃' | ||
141 | let g:gitgutter_sign_modified = '~' " '┃' | ||
142 | let g:gitgutter_sign_removed = '-' " '┃' | ||
143 | let g:gitgutter_sign_removed_first_line = '-' " '┃' | ||
144 | let g:gitgutter_sign_modified_removed = '~' " '┃' | ||
145 | |||
146 | highlight GitGutterAdd ctermfg=8 | ||
147 | highlight GitGutterChange ctermfg=8 | ||
148 | highlight GitGutterDelete ctermfg=8 | ||
149 | |||
150 | " rust.vim | ||
151 | let g:rustfmt_autosave = 1 | ||
152 | |||
153 | " fzf colors | ||
154 | let g:fzf_colors = | ||
155 | \ { 'fg': ['fg', 'Normal'], | ||
156 | \ 'bg': ['bg', 'Normal'], | ||
157 | \ 'hl': ['fg', 'Comment'], | ||
158 | \ 'fg+': ['fg', 'CursorLine', 'CursorColumn', 'Normal'], | ||
159 | \ 'bg+': ['bg', 'CursorLine', 'CursorColumn'], | ||
160 | \ 'hl+': ['fg', 'Statement'], | ||
161 | \ 'info': ['fg', 'PreProc'], | ||
162 | \ 'border': ['fg', 'Ignore'], | ||
163 | \ 'prompt': ['fg', 'Conditional'], | ||
164 | \ 'pointer': ['fg', 'Exception'], | ||
165 | \ 'marker': ['fg', 'Keyword'], | ||
166 | \ 'spinner': ['fg', 'Label'], | ||
167 | \ 'header': ['fg', 'Comment'] } | ||
168 | |||
169 | " indentLine | ||
170 | let g:indentLine_setColors = 0 | ||
171 | let g:indentLine_char = '┆' | ||
172 | |||
173 | let g:latex_view_general_viewer = 'zathura' | ||
174 | let g:vimtex_view_method = "zathura" | ||
175 | |||
176 | " man pages | ||
177 | let g:ft_man_open_mode = 'tab' | ||
178 | |||
179 | " vim-matchup | ||
180 | let g:matchup_matchparen_deferred = 1 | ||
181 | let g:matchup_matchparen_hi_surround_always = 1 | ||
182 | |||
183 | " coc-nvim | ||
184 | hi CocHintSign ctermfg=7 | ||
185 | let g:python3_host_prog="/usr/bin/python3" | ||