blob: 2d32bbeadf822515ebf395296dd4fa69f8b34d13 (
plain)
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
|
"
" behavior
"
set nocompatible " use vim, not vi settings
set wildignore=*.pyc,.git " ignore from autocomplete
set showcmd " display incomplete commands
set ignorecase " ignore case in search
set smartcase " respect case in search if uppercase is used
set nowrap " do not wrap lines
set vb t_vb= " no beeping
"
" formatting
"
set tabstop=2
set softtabstop=2
set shiftwidth=2
set expandtab
set shiftround
set listchars=tab:»·,trail:·
set list
"
" filetype-specific
"
if has("autocmd")
au!
" plain text
au FileType text setlocal tw=80
au FileType markdown setlocal tw=80
" python
au FileType python setlocal ts=4 sw=4 sts=4
" makefiles
au FileType make setlocal nolist
" When editing a file, always jump to the last known cursor position.
" Don't do it when the position is invalid or when inside an event handler
au BufReadPost *
\ if line("'\"") > 0 && line("'\"") <= line("$") |
\ exe "normal g`\"" |
\ endif
endif
"
" bindings
"
let mapleader = ","
" convenience
nnoremap <leader>x :source ~/.vimrc<Enter>
nnoremap <leader><leader> <c-^>
nnoremap <c-j> <c-w>j
nnoremap <c-k> <c-w>k
nnoremap <c-h> <c-w>h
nnoremap <c-l> <c-w>l
" dirvish
nnoremap <leader>e :Dirvish<Enter>
" bufexplore
nnoremap <leader>fe :BufExplorer<Enter>
nnoremap <leader>fs :BufExplorerHorizontalSplit<Enter>
nnoremap <leader>fv :BufExplorerVerticalSplit<Enter>
" ctrlp
let g:ctrlp_map ='<leader>a'
" ale
nnoremap <leader>r :ALEDetail<Enter>
let g:ale_linters_ignore = {'python': ['mypy']} " mypy is too slow and doesn't support dmypy
"
" visual
"
set background=light
silent! colo mono
let g:airline_theme='mono'
set hlsearch
syntax enable
" don't mess up gutter highlight with gitgutter
highlight clear SignColumn
hi! link SignColumn Background
" Highlight non-ascii characters as the theme highlights errors
hi clear nonascii
hi link nonascii Error
if has("autocmd")
au BufReadPost * syntax match nonascii /[^\d0-\d127]/
endif
" highlight trailing space and tab as the theme highlights errors
hi clear SpecialKey
hi link SpecialKey Error
let g:airline_skip_empty_sections = 1
"
" local additions
"
if filereadable($HOME."/.vimrc-local")
source ~/.vimrc-local
endif
|