1set nocompatible exrc secure
 2filetype plugin on
 3
 4call plug#begin()
 5	Plug 'tpope/vim-commentary'
 6	Plug 'mitjafelicijan/sniper.vim'
 7	Plug 'ctrlpvim/ctrlp.vim'
 8	Plug 'dense-analysis/ale'
 9	Plug 'airblade/vim-gitgutter'
10call plug#end()
11
12set encoding=utf8 spelllang=en_us laststatus=2 tabstop=4 shiftwidth=4
13set number autoindent cursorline ignorecase hlsearch incsearch signcolumn=yes
14set hidden nowrap nobackup noswapfile noundofile autoread updatetime=300
15set backspace=indent,eol,start completeopt=menuone path+=**
16set foldmethod=syntax foldlevel=99 foldopen= lazyredraw scrolloff=10
17set wildignore+=*/.git/*,*/.hg/*,*/.svn/*,*/vendor,tags,*.o,*.a,*.so
18set omnifunc=ale#completion#OmniFunc
19set completeopt=menu,menuone,popup,noselect,noinsert
20set background=dark
21colorscheme wildcharm
22
23if executable('rg')
24	set grepprg=rg\ --vimgrep\ --no-heading\ --smart-case
25	set grepformat=%f:%l:%c:%m
26endif
27
28nnoremap <C-Right> :bnext<CR>
29nnoremap <C-Left> :bprevious<CR>
30nnoremap <C-q> :copen<CR>
31nnoremap <C-b> :CtrlPBuffer<CR>
32nnoremap <C-k> :ALEHover<CR>
33nnoremap <C-j> :ALEDetail<CR>
34nnoremap <M-Right> :cnext<CR>
35nnoremap <M-Left> :cprevious<CR>
36nnoremap <Leader>d :bd<CR>
37nnoremap <leader>t :term<CR>
38nnoremap <Leader>q :nohlsearch<CR>
39nnoremap <Leader>e :ALEPopulateQuickfix<CR>:sleep 100m<CR>:copen<CR>
40nnoremap <leader>w :silent! grep! <cword> \| cwindow \| redraw!<CR>
41
42nmap <silent> gr :ALEFindReferences -quickfix<CR>:sleep 100m<CR>:copen<CR>
43nmap <silent> gd :ALEGoToDefinition<CR>
44nmap <silent> re :ALERename<CR>
45
46let g:ctrlp_use_caching = 0
47let g:ctrlp_working_path_mode = 'ra'
48let g:ale_hover_to_floating_preview = 1
49let g:ale_detail_to_floating_preview = 1
50let g:ale_floating_window_border = 0
51let g:ale_virtualtext_cursor = 0
52let g:ale_set_quickf = 1