summaryrefslogtreecommitdiffstats
path: root/vimrc
blob: cab9ad212d4a3368faa957c7968d518cc3276eb3 (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
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
set autoindent
set backspace=indent,eol,start
set complete-=i
set smarttab
set nu
set nrformats-=octal
set incsearch
set hlsearch
set laststatus=2
set ruler
set wildmenu

set tabstop=4
set expandtab
set shiftwidth=4

if has('autocmd')
  filetype plugin indent on
endif
if has('syntax') && !exists('g:syntax_on')
  syntax enable
endif

if !has('nvim') && &ttimeoutlen == -1
  set ttimeout
  set ttimeoutlen=100
endif

set timeoutlen=100

" Use <C-L> to clear the highlighting of :set hlsearch.
if maparg('<C-L>', 'n') ==# ''
  nnoremap <silent> <C-L> :nohlsearch<C-R>=has('diff')?'<Bar>diffupdate':''<CR><CR><C-L>
endif


if !&scrolloff
  set scrolloff=1
endif
if !&sidescrolloff
  set sidescrolloff=5
endif
set display+=lastline

if &encoding ==# 'latin1' && has('gui_running')
  set encoding=utf-8
endif

if &listchars ==# 'eol:$'
  set listchars=tab:>\ ,trail:-,extends:>,precedes:<,nbsp:+
endif

if v:version > 703 || v:version == 703 && has("patch541")
  set formatoptions+=j " Delete comment character when joining commented lines
endif

if has('path_extra')
  setglobal tags-=./tags tags-=./tags; tags^=./tags;
endif

if &shell =~# 'fish$' && (v:version < 704 || v:version == 704 && !has('patch276'))
  set shell=/usr/bin/env\ bash
endif

set autoread

if &history < 1000
  set history=1000
endif
if &tabpagemax < 50
  set tabpagemax=50
endif
if !empty(&viminfo)
  set viminfo^=!
endif
set sessionoptions-=options

" Allow color schemes to do bright colors without forcing bold.
if &t_Co == 8 && $TERM !~# '^linux\|^Eterm'
  set t_Co=16
endif

" Load matchit.vim, but only if the user hasn't installed a newer version.
if !exists('g:loaded_matchit') && findfile('plugin/matchit.vim', &rtp) ==# ''
  runtime! macros/matchit.vim
endif

inoremap <C-U> <C-G>u<C-U>

colorscheme desert

let mapleader = "\<Space>"

nmap <Leader>gs iSigned-off-by:<space>Matthias<Space>Beyer<space><mail@beyermatthias.de><ESC>
nmap <Leader>gr iReviewed-by:<space>Matthias<Space>Beyer<space><mail@beyermatthias.de><ESC>
nmap <Leader>gf iFixes:<space>INSERT<space>HASH<space>("INSERT<space>COMMITMSG")<ESC>
nmap <Leader>gS iSuggested-by:<space>INSERT<space>NAME<space><INSERT<space>EMAIL><ESC>
nmap <Leader>gR iReported-by:<space>INSERT<space>NAME<space><INSERT<space>EMAIL><ESC>

nmap <Leader>h <C-w>h
nmap <Leader>j <C-w>j
nmap <Leader>k <C-w>k
nmap <Leader>l <C-w>l

nmap <Leader>s <C-w>s
nmap <Leader>v <C-w>v

nmap <Leader>w :w<CR>
nmap <Leader>q :q
nmap <Leader>e :Explore<CR>

nnoremap <Leader><Leader> za
onoremap <Leader><Leader> <C-C>za
vnoremap <Leader><Leader> zf


nmap <Leader>ga :Git add %:p<CR><CR>
nmap <Leader>gc :Gcommit -v --quiet<CR>ggi
nmap <Leader>gF :Gcommit --fixup<space>
nmap <Leader>gC :Git add %:p<CR><CR>:Gcommit -v -q<CR>ggi
nmap <Leader>gd :Gvdiff<CR>
nmap <Leader>gb :Gblame<CR>
nmap <Leader>gp :!git push<space>

nmap <Leader>f :ls<CR>:b<space>
nmap <Leader>zf :FZF<CR>
nmap <Leader>zr :FZFRg<CR>
nmap <Leader>zh :FZFHistory<CR>
nmap <Leader>zl :FZFBLines<CR>
nmap <Leader>zt :FZFTags<CR>
nmap <Leader>zT :FZFBTags<CR>
nmap <Leader>zm :FZFMarks<CR>
nmap <Leader>zw :FZFWindows<CR>

" Specify a directory for plugins
" - For Neovim: stdpath('data') . '/plugged'
" - Avoid using standard Vim directory names like 'plugin'
call plug#begin('~/.vim/plugged')
Plug 'tpope/vim-fugitive', { 'tag': 'v3.2' }

" Plugin outside ~/.vim/plugged with post-update hook
Plug 'junegunn/fzf', { 'dir': '~/.fzf', 'do': './install --all' }
call plug#end()

" vim:set ft=vim et sw=2: