-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathvimrc
More file actions
126 lines (115 loc) · 2.69 KB
/
vimrc
File metadata and controls
126 lines (115 loc) · 2.69 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
set nocompatible
call plug#begin('~/.vim/plugged')
Plug 'rakr/vim-one'
Plug 'ctrlpvim/ctrlp.vim'
Plug 'jremmen/vim-ripgrep'
Plug 'tpope/vim-rails'
Plug 'tpope/vim-fugitive'
Plug 'tpope/vim-vinegar'
Plug 'tpope/vim-commentary'
Plug 'tpope/vim-surround'
Plug 'sheerun/vim-polyglot'
Plug 'junegunn/vim-easy-align'
Plug 'terryma/vim-multiple-cursors'
Plug 'jiangmiao/auto-pairs'
Plug 'Yggdroot/indentLine'
Plug 'itchyny/lightline.vim'
Plug 'ervandew/supertab'
Plug 'airblade/vim-gitgutter'
call plug#end()
set modifiable
set et
set showcmd
set showmatch
set nowrap
set autoread
set smarttab
set noincsearch
set ignorecase smartcase
set relativenumber
set number
set ttyfast
set title
set ruler
set nowrap
set expandtab
set splitbelow
set splitright
set nobackup
set noswapfile
set autoindent
set lazyredraw
set shiftround
set nojoinspaces
set nofoldenable
set encoding=utf-8
set history=500
set wmh=0
set sw=2
set regexpengine=1
set tabstop=2
set shiftwidth=2
set softtabstop=2
set backspace=2
set laststatus=2
set timeoutlen=1000
set ttimeoutlen=0
set updatetime=250
set statusline+=%{fugitive#statusline()}
set wildignore+=*/.git/*,tmp/*/**,*.swp,log/*/**,vendor/*/**
set tags=./tags
set wildmode=longest,list,full
set wildmenu
set mouse=a
set term=xterm
set t_Co=256
set background=dark
set cursorline
" always show gitgutter to prevent toggling
if exists('&signcolumn')
set signcolumn=yes
else
let g:gitgutter_sign_column_always = 1
endif
" remove trailing whitespace on save
autocmd BufWritePre * %s/\s\+$//e
" indentline
let g:indentLine_color_term=242
let g:indentLine_char = '·'
" easy-align plugs
xmap ga <Plug>(EasyAlign)
nmap ga <Plug>(EasyAlign)
" netrw
let g:netrw_localrmdir="rm -r"
" custom leader shortcuts
let mapleader=","
inoremap jk <ESC>
noremap <C-f> :Rg<space>
nnoremap <leader>vv :vsplit<CR>
nnoremap <leader>hh :split<CR>
nnoremap <leader>a ^
nnoremap <leader>e $
nnoremap <leader>s :w<CR>
nnoremap <leader>q :q<CR>
nnoremap <leader>qq :qa!<CR>
nnoremap <leader>rr :so ~/.vimrc<CR>
nnoremap <leader>pi :PlugInstall<CR>
nnoremap <leader>pu :PlugUpdate<CR>
nnoremap <leader>pc :PlugClean<CR>
nnoremap <leader>r :R<CR>
nnoremap <leader>d :ALEGoToDefinition<CR>
" yil to yank all non-white on line except line break
vnoremap <silent> il :<c-u>norm!^vg_<cr>
onoremap <silent> il :norm vil<cr>
" colors and theme
colorscheme one
let g:lightline = {'colorscheme':'one',
\ 'active':{'left':[['mode','paste'],['gitbranch','readonly','filename','modified']]},
\ 'component_function':{'gitbranch': 'fugitive#head'}}
" highlights and indicators
let &colorcolumn="80"
hi ColorColumn ctermbg=232
hi CursorLine cterm=NONE ctermbg=232
hi Cursor ctermbg=15 ctermfg=232
hi Normal cterm=NONE ctermbg=234
hi Visual ctermbg=15 ctermfg=232