144 lines
3.3 KiB
VimL
144 lines
3.3 KiB
VimL
" Ma conf vim - Frank
|
|
|
|
execute pathogen#infect()
|
|
|
|
syntax on
|
|
color desert
|
|
|
|
hi clear SpellBad
|
|
hi SpellBad cterm=underline,bold ctermfg=lightblue
|
|
|
|
set spell
|
|
set spelllang=en,fr
|
|
|
|
|
|
|
|
"set nocompatible "fuck you !. impossible de backspace, sinon
|
|
set backspace=indent,eol,start
|
|
|
|
"set ruler
|
|
set number
|
|
set ts=8 "Un tab, huit espaces
|
|
set noexpandtab "On veut pas remplacer tab -> espace
|
|
set wrap "Une grande ligne continue à la ligne
|
|
"set mouse=a
|
|
|
|
set hlsearch "On souligne les mots cherchés
|
|
set incsearch "recherche peu à peu
|
|
set ignorecase
|
|
|
|
set foldmethod=marker
|
|
|
|
|
|
set cul "souligner la ligne actuelle
|
|
set cursorline
|
|
hi CursorLine term=bold cterm=bold guibg=Grey40
|
|
|
|
set showcmd "on affiche la commande qu'on écrit
|
|
set laststatus=2
|
|
set statusline=
|
|
set statusline +=%5*%{&ff}%* "file format
|
|
set statusline +=%3*%y%* "file type
|
|
set statusline +=%4*\ %<%F%* "full path
|
|
set statusline +=%2*%m%* "modified flag
|
|
set statusline +=%1*%=%5l%* "current line
|
|
set statusline +=%2*/%L%* "total lines
|
|
set statusline +=%1*%4v\ %* "virtual column number
|
|
set statusline +=%2*0x%04B\ %* "character under cursor
|
|
|
|
hi User1 guifg=#eea040 guibg=#222222
|
|
hi User2 guifg=#dd3333 guibg=#222222
|
|
hi User3 guifg=#ff66ff guibg=#222222
|
|
hi User4 guifg=#a0ee40 guibg=#222222
|
|
hi User5 guifg=#eeee40 guibg=#222222
|
|
|
|
|
|
filetype plugin on
|
|
filetype indent on
|
|
|
|
noremap <S-Space> <Esc>
|
|
|
|
noremap j gj
|
|
noremap k gk
|
|
|
|
cmap Q q
|
|
command W w
|
|
map <Tab> <C-w>w
|
|
map <S-Tab> <C-w>W
|
|
|
|
|
|
|
|
|
|
set list
|
|
set listchars=tab:\|\-"Cool for ifs/whiles
|
|
set listchars+=trail:· "For eol with spaces
|
|
set listchars+=eol:↲ "To show eol;not very useful with trail, but cool anyway :p
|
|
set listchars+=nbsp:⍽ "For unbreakeable spaces
|
|
|
|
|
|
set history=500
|
|
set undolevels=500
|
|
|
|
set title "titre du terminal
|
|
|
|
set autoindent
|
|
set smartindent
|
|
set copyindent
|
|
set preserveindent
|
|
|
|
set autoread "lit les modifs externes
|
|
|
|
"highlight identical words
|
|
autocmd CursorMoved *
|
|
\ exe printf('match IncSearch /\V\<%s\>/', escape(expand('<cword>'), '/\'))
|
|
|
|
" lines longer than 80 chars {{{
|
|
set cc=80
|
|
hi ColorColumn ctermbg=lightblue guibg=lightgrey
|
|
" }}}
|
|
|
|
|
|
|
|
"MAKEFILES
|
|
map <F5> :make
|
|
"TIPS : :copen :cclose :cw
|
|
|
|
|
|
"SKELETONS {{{
|
|
|
|
" When editing a new file, load skeleton if any.
|
|
" If we find <+FILENAME+> in skeleton, replace it by the filename.
|
|
" If we find <+HEADERNAME+> in skeleton, replace it by the filename
|
|
" uppercase with . replaced by _ (foo.h become FOO_H).
|
|
autocmd BufNewFile *
|
|
\ let skel = $HOME . "/.vim/skeletons/skel." . expand("%:e") |
|
|
\ if filereadable(skel) |
|
|
\ execute "silent! 0read " . skel |
|
|
\ let fn = expand("%") |
|
|
\ let hn = substitute(expand("%"), "\\w", "\\u\\0", "g") |
|
|
\ let hn = substitute(hn, "\\.", "_", "g") |
|
|
\ let hn = substitute(hn, "/", "_", "g") |
|
|
\ let cn = expand("%:t:r") |
|
|
\ %s/<+FILENAME+>/\=fn/Ige |
|
|
\ %s/<+HEADERNAME+>/\=hn/Ige |
|
|
\ %s/<+CLASSNAME+>/\=cn/Ige |
|
|
\ unlet fn hn cn |
|
|
\ endif |
|
|
\ unlet skel |
|
|
\ goto 1
|
|
" skeleton template use <+KEY+>
|
|
nnoremap § <esc>/<+.\{-1,}+><return>c/+>/e<return>
|
|
inoremap § <esc>/<+.\{-1,}+><return>c/+>/e<return>
|
|
" }}}
|
|
|
|
|
|
"Automatic line wrap/br when writing mails in mutt
|
|
au BufRead /dev/shm/mutt-* set tw=80 fo+=aw noautoindent
|
|
|
|
autocmd BufRead,BufNewFile *.tex set tw=80
|
|
autocmd BufRead,BufNewFile *.latex set tw=80
|
|
|
|
|
|
"Automatic documentation
|
|
autocmd BufNewFile,BufRead *.py set keywordprg=pydoc
|
|
autocmd BufNewFile,BufRead *.php set keywordprg=~/.vim/scripts/doc.php.sh
|