1
0
Fork 0
mirror of https://github.com/hcartiaux/dotfiles.git synced 2024-10-18 17:25:23 +02:00
dotfiles/vim/vimrc

145 lines
4 KiB
VimL
Raw Normal View History

"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
"
" .bashrc -- my personal VIM configuration
" see https://github.com/hcartiaux/dotfiles
"
" Copyright (c) 2013 Hyacinthe Cartiaux <Hyacinthe.Cartiaux@uni.lu>
" _
" __ _(_)_ __ ___ _ __ ___
" \ \ / / | '_ ` _ \| '__/ __|
" \ V /| | | | | | | | | (__
" (_)_/ |_|_| |_| |_|_| \___|
"
"""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""""
" Resources:
" * https://github.com/shingara/vim-conf/blob/master/vimrc
" * http://blog.shingara.fr/vundle-ou-le-bundler-de-vim.html
" * http://vim.wikia.com/wiki/Configuring_the_cursor
" * http://ftp.vim.org/pub/vim/runtime/spell/
" * http://stackoverflow.com/questions/6496778/vim-run-autocmd-on-all-filetypes-except
" * http://vim.wikia.com/wiki/Omni_completion
2013-05-02 23:39:27 +02:00
set rtp+=~/.vim/bundle/vundle/
call vundle#rc()
2013-07-26 11:22:22 +02:00
" Git syntax highlighting and integration
2013-05-02 23:39:27 +02:00
Bundle 'tpope/vim-git'
2013-07-26 11:22:22 +02:00
Bundle 'tpope/vim-fugitive'
Bundle 'gregsexton/gitv'
" syntax highlighting
2013-05-02 23:39:27 +02:00
Bundle 'tpope/vim-markdown'
Bundle 'vim-ruby/vim-ruby'
2013-07-26 11:22:22 +02:00
" Surround selection with quotes, parenthesis…
Bundle 'tpope/vim-surround'
" Automatically closes functions, blocks, etc.
Bundle 'tpope/vim-endwise'
" A better stats bar
Bundle 'Lokaltog/vim-powerline'
" Aligns text.
Bundle 'godlygeek/tabular'
" Browse tags of source code files.
Bundle 'majutsushi/tagbar'
2013-05-02 23:39:27 +02:00
syntax on
set background=dark
colorscheme default
filetype on
2013-07-26 11:22:22 +02:00
" set mouse=a
2013-05-02 23:39:27 +02:00
" set number
2013-07-26 11:22:22 +02:00
set ruler
2013-05-02 23:39:27 +02:00
set nocompatible
set hlsearch
set nostartofline
set scrolloff=1
set nostartofline
2013-07-26 11:22:22 +02:00
set laststatus=2
set showcmd
set showmatch
2013-07-26 11:22:22 +02:00
set cursorline
hi CursorLine term=bold cterm=bold ctermbg=blue ctermfg=white
" orange in insert mode, red in command mode
" if you want to use rgb color formatting:
" konsoleprofile CustomCursorColor=#255255255
autocmd VimEnter * silent !konsoleprofile UseCustomCursorColor=1
let &t_SI = "\<Esc>]50;CustomCursorColor=orange;BlinkingCursorEnabled=1\x7"
let &t_EI = "\<Esc>]50;CustomCursorColor=red;BlinkingCursorEnabled=0\x7"
silent !konsoleprofile CustomCursorColor=red
autocmd VimLeave * silent !konsoleprofile CustomCursorColor=gray;BlinkingCursorEnabled=0
2013-05-02 23:39:27 +02:00
2013-07-26 11:22:22 +02:00
" Indent
2013-05-02 23:39:27 +02:00
set cindent
set softtabstop=2
set tabstop=2
set expandtab
set shiftwidth=2
" set textwidth=80
2013-07-26 11:22:22 +02:00
" Encoding
2013-05-02 23:39:27 +02:00
set encoding=utf-8
set fileencoding=utf-8
2013-07-26 11:22:22 +02:00
" filename completion
set wildmode=list:longest,list:full
set wildignore+=*.o,*.obj,.git,*.rbc
2013-05-02 23:39:27 +02:00
2013-07-26 11:22:22 +02:00
let g:qb_hotkey = "<F1>"
2013-05-02 23:39:27 +02:00
" Centralize backups, swapfiles and undo history
2013-05-02 23:39:27 +02:00
set backup
set backupdir=$HOME/.vim/backup
set directory=$HOME/.vim/swap
if exists("&undodir")
set undodir=$HOME/.vim/undo
endif
set viminfo+=n$HOME/.vim/.viminfo
2013-05-02 23:39:27 +02:00
" Vim 7 spell checker (z=)
if has("spell")
setlocal spell spelllang=
" Language : FR
map ,lf :setlocal spell spelllang=fr<cr>
" Language : EN
map ,le :setlocal spell spelllang=en<cr>
" Language : Aucun
map ,ln :setlocal spell spelllang=<cr>
endif
set spellsuggest=5
autocmd BufEnter *.txt,*.tex,*.md set spell
autocmd BufEnter *.txt,*.tex set spelllang=fr
autocmd BufEnter *.md set spelllang=en
autocmd BufNewFile,BufRead PKGBUILD set syntax=sh
autocmd bufnewfile *.rb so ~/.vim/header/ruby
autocmd bufnewfile *.pl so ~/.vim/header/perl
autocmd bufnewfile *.sh so ~/.vim/header/shell
au BufRead,BufNewFile *.md set syntax=markdown
" Display trailing white spaces
2013-05-02 23:39:27 +02:00
set list listchars=tab:\ \ ,trail
" Remove trailing white spaces in all files except *.md
fun! StripTrailingWhitespace()
" Only strip if the b:noStripeWhitespace variable isn't set
if exists('b:noStripWhitespace')
return
endif
%s/\s\+$//e
endfun
autocmd BufWritePre * call StripTrailingWhitespace()
autocmd FileType markdown let b:noStripWhitespace=1
2013-05-02 23:39:27 +02:00
2013-07-26 11:22:22 +02:00
" Completion, C-X C-O in insert mode, navigation with C-N/C-P
filetype plugin on
set ofu=syntaxcomplete#Complete
map <F3> <Esc>:tabnext<CR>
map <F2> <Esc>:tabprevious<CR>
map <F6> <Esc>:set paste<CR>