diff options
Diffstat (limited to 'vimrc')
-rw-r--r-- | vimrc | 141 |
1 files changed, 141 insertions, 0 deletions
@@ -0,0 +1,141 @@ +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 + +" 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 + +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: |