X-Git-Url: https://git.rmz.io/dotfiles.git/blobdiff_plain/ced2503ba7d51b1e898512c9bfa37d6d1cbb2ba5..00cc79588b09872e703c1a572822de0c59a13a74:/vimrc diff --git a/vimrc b/vimrc index 55906d8..7269ee3 100644 --- a/vimrc +++ b/vimrc @@ -1,16 +1,8 @@ " My vimrc file. " -" Maintainer: Samir Benmendil +" Author: Samir Benmendil " -if v:progname =~? "evim" - finish -endif - -" Use Vim settings, rather than Vi settings (much better!). -" This must be first, because it changes other options as a side effect. -set nocompatible - " pathogen.vim runtime path manipulation silent! call pathogen#infect() @@ -19,7 +11,38 @@ set incsearch set ignorecase set smartcase set hlsearch -nmap q :nohl +" use leader-n to unhighlight search +nmap n :silent nohl +" use leader-# to display the number of matches for the last search +nmap # :%s:/::gn + +" line wrap {{{1 +set backspace=indent,eol,start " allow backspacing over everything in insert mode +set wrap " wrap lines +set linebreak " do not wrap in the middle of a word +set showbreak=▒▒ " show these chars for wrapped lines + +" indent {{{1 +set expandtab " expand to spaces in Insert mode +set smarttab " a in an indent inserts 'shiftwidth' spaces +set softtabstop=4 " if non-zero, number of spaces to insert for a +set shiftwidth=4 " number of spaces used for each step of (auto)indent +set shiftround " round to 'shiftwidth' for "<<" and ">>" + +set cindent " use smart C indenting (see :h C-indenting) +set cinoptions=l1,c4,(0,U1,w1,m1,j1,J1 + +:nmap b :set expandtab tabstop=4 shiftwidth=4 softtabstop=4 +:nmap B :set expandtab tabstop=8 shiftwidth=8 softtabstop=4 +:nmap M :set noexpandtab tabstop=8 softtabstop=4 shiftwidth=4 +:nmap m :set expandtab tabstop=2 shiftwidth=2 softtabstop=2 + +" backup/undo {{{1 +set backup " keep a backup file +set backupdir=$HOME/.vim/backupdir + +set undofile " persistent undo history +set undodir=$HOME/.vim/backupdir " NERDTree {{{1 " open/close NERDTree with \e @@ -34,25 +57,10 @@ autocmd bufenter * if (winnr("$") == 1 && exists("b:NERDTreeType") && b:NERDTree " airline {{{1 let g:airline#extensions#tabline#enabled = 1 -" tabbing {{{1 -:nmap b :set expandtab tabstop=4 shiftwidth=4 softtabstop=4 -:nmap B :set expandtab tabstop=8 shiftwidth=8 softtabstop=4 -:nmap M :set noexpandtab tabstop=8 softtabstop=4 shiftwidth=4 -:nmap m :set expandtab tabstop=2 shiftwidth=2 softtabstop=2 - -" backup {{{1 -if has("vms") - set nobackup " do not keep a backup file, use versions instead -else - set backup " keep a backup file - set backupdir=$HOME/.vim/backupdir -endif - " appearance {{{1 set background=dark " Dark background, d'uh! set number " show some linenumbers set showmatch " Show matching brackets. -set showbreak=▒▒ " show these chars for wrapped lines set list listchars=tab:»·,trail:· " show these chars for tabs and trailing spaces " misc options {{{1 @@ -64,14 +72,9 @@ set autowrite " Automatically save before commands like :next a "set hidden " Hide buffers when they are abandoned set splitright " split right when using :vsp set scrolloff=5 " keep at least n lines above/below -set backspace=indent,eol,start " allow backspacing over everything in insert mode set viminfo='100,<50,s10,h,n~/.vim/viminfo " viminfo defaults but save file in .vim -" tabs {{{1 -set softtabstop=4 -set shiftwidth=4 -set expandtab " misc bindings {{{1 " Don't use Ex mode, use Q for formatting