color red "syntax clear syntax on "Allow special Vim improvements like multiple-undo set nocompatible "Seems to fuck up symlinks when set to no... [Debian bug #158657] set backupcopy=yes "Set improve Backspace set backspace=2 "Show the current edition mode on last line, number of column and line set showmode set ruler "Show line numbers set number set laststatus=2 " Set Auto-indentation "set autoindent "set cindent " Make command line X lines high set cmdheight=1 " Highlight search strings set hlsearch " Incremental search set incsearch " Hide mouse when typing set mousehide " highlighting strings inside C comments let c_comment_strings=1 " Backup dir set autowrite " default error format "set efm=\"%f\"\\,\ line\ %l:\ error\ %m,\"%f\"\\,\ line\ %l:\ warning\ %m " remaps C-j & C-k to C-y and C-e noremap noremap "Macros map :source ~/.vim/bépo " folding set foldmethod=indent autocmd BufRead *.[ch] setlocal foldmethod=syntax autocmd BufRead /tmp/mutt-*[0-9] setlocal foldmethod=expr autocmd BufRead /tmp/mutt-*[0-9] setlocal foldexpr=(strlen(substitute(matchstr(getline(v:lnum),\"^\ *[>\ ]*\"),\"\ *\",\"\",\"g\"))) set foldminlines=0 set foldcolumn=5 set foldlevel=999 map :setlocal foldcolumn-=1:execute 'setlocal foldlevel='.(&foldcolumn - 2) map :setlocal foldcolumn+=1:execute 'setlocal foldlevel='.(&foldcolumn - 2) map za map :setlocal invfoldenable "buffer moving map :bN " Load local cscope db if exists if filereadable( expand("$PWD/tags") ) set tags=tags elseif filereadable( expand("$PWD/ctags.out") ) set tags=$pwd/ctags.out elseif has("cscope") if filereadable( expand("$PWD/cscope.out") ) set cst " cscope macros map :cs find g =expand("") " find global definition map :cs find c =expand("") " find callers of function under cursor map :cs find t =expand("") " find assignments to variable under cursor map :cs find s =expand("") " find string under cursor map :cs find f =expand("") " find file under cursor map :cs find i =expand("") " find files including file under cursor map :cs find I % " find files including current file cs add $PWD/cscope.out endif endif " F*cking trailing whitespaces autocmd BufRead * highlight ExtraWhitespace ctermbg=red guibg=red autocmd BufRead * match ExtraWhitespace /\s\+$\| \+\ze\t\| / set title set autoindent set diffopt=iwhite,filler set guifont=LucidaTypewriter\ 8 " mouse " v -> enabled in visual mode " i -> enabled in insert mode " c -> enabled in command mode " a -> enabled in all modes set mouse=a set mousem=extend set tabstop=4 set shiftwidth=4 set noexpandtab map U yyp:s/[^ ]/-/g:noh map Q v/$\n\nJ:.!fmt -tcw78:noh map u :noh " Function " Erase_Sig_but_Your() " " Author " Yann Kerhervé " Based on Luc Hermitte work " " Purpose " Deletes signatures at the end of e-mail replies. But keep " your sig intact (mutt-added). " Also deletes the empty lines (even those beginning by '>') " preceding the signature. " function! Erase_Sig_but_Your() " Search for the signature pattern : "^> -- $" let lastline = line ('$') let i = lastline " (1) while i >= 1 if getline(i) =~ '^> *-- $' break endif let i = i - 1 endwhile " let find the beginning of our sig let j = i while j < lastline let j = j + 1 if getline(j) =~ '^-- $' let j = j - 1 break endif endwhile " If (1) found, then if i != 0 " First, search for the last non empty (non sig) line while i >= 1 let i = i - 1 " rem : i can't value 1 if getline(i) !~ '^(>s*)*$' break endif endwhile " Second, delete these lines plus the signature let i = i + 1 exe 'normal '.i.'Gd'.j.'G' endif endfunction function! GitBlameCurrentLine() let l:line = line('.') let l:file = expand("%:t") let l:wd = expand("%:p:h") let content = system("cd " . l:wd . ";git blame -L ". l:line . "," . l:line . " " . l:file . " | sed 's/).*/)/'") let line = split(content, '\n')[0] echohl Type | echo line | echohl None endfunction command! GitBlameCurrentLine :call GitBlameCurrentLine() map b :GitBlameCurrentLine " n goto next empty reply-to paragraph " m opens an empty reply-paragraph at this line " d deletes everything until but the signature " w reformats entire mail but the signature " D deletes everything until but the next reply-to § autocmd BufRead /tmp/mutt-*[0-9] map n /^> $ autocmd BufRead /tmp/mutt-*[0-9] map m 'ddO-I autocmd BufRead /tmp/mutt-*[0-9] map D ^d?^\([^>]\\|$\)?+O autocmd BufRead /tmp/mutt-*[0-9] map d ^d/^-- $O autocmd BufRead /tmp/mutt-*[0-9] map w ggv/^-- $:!par rTbgqRe 'B=.,?_A_a' 'Q=_s>\|' autocmd BufRead /tmp/mutt-*[0-9] setlocal textwidth=74 autocmd BufRead /tmp/mutt-*[0-9] execute Erase_Sig_but_Your() autocmd BufRead /tmp/mutt-*[0-9] :normal ,n