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