-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathvimrc
38 lines (36 loc) · 986 Bytes
/
vimrc
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
set nocompatible
filetype on " workaround for OSX vim bug
filetype off
" settings
filetype plugin indent on
syntax on
set nu
set hls
set ai
set si
set ts=4
set sw=4
set re=0 " workaround for groovy syntax error on macos
set expandtab
"set bg=dark
set wildmode=longest:full
set wildmenu
set guifont=Menlo:h12
" mapping to make movements operate on 1 screen line in wrap mode
function! ScreenMovement(movement)
if &wrap
return "g" . a:movement
else
return a:movement
endif
endfunction
onoremap <silent> <expr> j ScreenMovement("j")
onoremap <silent> <expr> k ScreenMovement("k")
onoremap <silent> <expr> 0 ScreenMovement("0")
onoremap <silent> <expr> ^ ScreenMovement("^")
onoremap <silent> <expr> $ ScreenMovement("$")
nnoremap <silent> <expr> j ScreenMovement("j")
nnoremap <silent> <expr> k ScreenMovement("k")
nnoremap <silent> <expr> 0 ScreenMovement("0")
nnoremap <silent> <expr> ^ ScreenMovement("^")
nnoremap <silent> <expr> $ ScreenMovement("$")