161 lines
4.8 KiB
VimL
161 lines
4.8 KiB
VimL
set nocompatible " be iMproved, required
|
|
"~ filetype off " required
|
|
"~
|
|
"~ " set the runtime path to include Vundle and initialize
|
|
"~ set rtp+=~/.vim/bundle/Vundle.vim
|
|
"~ call vundle#begin()
|
|
"~ " alternatively, pass a path where Vundle should install plugins
|
|
"~ "call vundle#begin('~/some/path/here')
|
|
"~
|
|
"~ " let Vundle manage Vundle, required
|
|
"~ Plugin 'VundleVim/Vundle.vim'
|
|
"~
|
|
"~ " The following are examples of different formats supported.
|
|
"~ " Keep Plugin commands between vundle#begin/end.
|
|
"~ " plugin on GitHub repo
|
|
"~ "##Plugin 'tpope/vim-fugitive'
|
|
"~ " plugin from http://vim-scripts.org/vim/scripts.html
|
|
"~ "##Plugin 'L9'
|
|
"~ " Git plugin not hosted on GitHub
|
|
"~ "##Plugin 'git://git.wincent.com/command-t.git'
|
|
"~ " git repos on your local machine (i.e. when working on your own plugin)
|
|
"~ ""Plugin 'file:///home/gmarik/path/to/plugin'
|
|
"~ " The sparkup vim script is in a subdirectory of this repo called vim.
|
|
"~ " Pass the path to set the runtimepath properly.
|
|
"~ "##Plugin 'rstacruz/sparkup', {'rtp': 'vim/'}
|
|
"~ " Install L9 and avoid a Naming conflict if you've already installed a
|
|
"~ " different version somewhere else.
|
|
"~ ""Plugin 'ascenator/L9', {'name': 'newL9'}
|
|
"~
|
|
"~ " ça va pas, il casse tout
|
|
"~ "Plugin 'leafgarland/typescript-vim'
|
|
"~
|
|
"~ " All of your Plugins must be added before the following line
|
|
"~ call vundle#end() " required
|
|
"~ filetype plugin indent on " required
|
|
"~ " To ignore plugin indent changes, instead use:
|
|
"~ "filetype plugin on
|
|
"~ "
|
|
"~ " Brief help
|
|
"~ " :PluginList - lists configured plugins
|
|
"~ " :PluginInstall - installs plugins; append `!` to update or just :PluginUpdate
|
|
"~ " :PluginSearch foo - searches for foo; append `!` to refresh local cache
|
|
"~ " :PluginClean - confirms removal of unused plugins; append `!` to auto-approve removal
|
|
"~ "
|
|
"~ " see :h vundle for more details or wiki for FAQ
|
|
"~ " Put your non-Plugin stuff after this line
|
|
|
|
|
|
set nocompatible
|
|
set showcmd
|
|
set wildmenu
|
|
set backspace=eol,start,indent
|
|
syntax on
|
|
filetype plugin indent on
|
|
set mouse=v
|
|
set number
|
|
colorscheme zellner
|
|
highlight LineNr ctermfg=yellow
|
|
"set autoindent
|
|
set smartindent
|
|
set cindent
|
|
set expandtab
|
|
set tabstop=4
|
|
retab
|
|
set shiftwidth=4
|
|
set ruler
|
|
set softtabstop=4
|
|
|
|
" warn > 79
|
|
highlight OverLength ctermbg=black ctermfg=gray guibg=#592929
|
|
match OverLength /\%80v.\+/
|
|
|
|
""highlight ColorColumn ctermbg=gray
|
|
""set colorcolumn=80
|
|
|
|
" language
|
|
""set spell spelllang=en_us
|
|
set spell spelllang=fr
|
|
set complete+=k
|
|
" save
|
|
inoremap <F3> <c-o>:up<cr>
|
|
" remove trailing spaces
|
|
nnoremap <silent> <F5> :let _s=@/ <Bar> :%s/\s\+$//e <Bar> :let @/=_s <Bar> :nohl <Bar> :unlet _s <CR>
|
|
" hit <enter> by mistake
|
|
inoremap <F7> <C-C>"_dd<bs>a
|
|
" j but create newline
|
|
inoremap <F9> <c-c>o
|
|
set nospell
|
|
" quick diff buffer vs save
|
|
command D :w !colordiff -u % -
|
|
command L :w !colordiff -u % - | less -R
|
|
" force unix mode on write
|
|
""set ff=unix
|
|
" copy-paste using X buffers
|
|
map <F7> :w !xclip<CR><CR>
|
|
vmap <F7> "*y
|
|
map <S-F7> :r!xclip -o<CR>
|
|
" line numbers in netrw file explorer
|
|
let g:netrw_bufsettings = 'noma nomod nu nobl nowrap ro'
|
|
" status line
|
|
set laststatus=2
|
|
" netrw ignore pyc
|
|
let g:netrw_list_hide= '.*\.pyc$,.*\.o$,.*\.out$'
|
|
" no wildmenu completion for
|
|
set wildignore+=*.a,*.o
|
|
set wildignore+=*.bmp,*.gif,*.ico,*.jpg,*.png
|
|
set wildignore+=.DS_Store,.git,.hg,.svn
|
|
set wildignore+=*~,*.swp,*.swo,*.tmp
|
|
" drop undo/redo history
|
|
command Z :set undoreload=0|edit
|
|
" show/hide special chars with :set (un)list
|
|
set listchars=eol:$,tab:>-,trail:~,extends:>,precedes:<
|
|
|
|
highlight ExtraWhitespace ctermbg=red guibg=red
|
|
augroup WhitespaceMatch
|
|
" Remove ALL autocommands for the WhitespaceMatch group.
|
|
autocmd!
|
|
autocmd BufWinEnter * let w:whitespace_match_number =
|
|
\ matchadd('ExtraWhitespace', '\s\+$')
|
|
autocmd InsertEnter * call s:ToggleWhitespaceMatch('i')
|
|
autocmd InsertLeave * call s:ToggleWhitespaceMatch('n')
|
|
augroup END
|
|
function! s:ToggleWhitespaceMatch(mode)
|
|
let pattern = (a:mode == 'i') ? '\s\+\%#\@<!$' : '\s\+$'
|
|
if exists('w:whitespace_match_number')
|
|
call matchdelete(w:whitespace_match_number)
|
|
call matchadd('ExtraWhitespace', pattern, 10, w:whitespace_match_number)
|
|
else
|
|
" Something went wrong, try to be graceful.
|
|
let w:whitespace_match_number = matchadd('ExtraWhitespace', pattern)
|
|
endif
|
|
endfunction
|
|
""" move
|
|
nnoremap <C-J> <C-W><C-J>
|
|
nnoremap <C-K> <C-W><C-K>
|
|
nnoremap <C-L> <C-W><C-L>
|
|
nnoremap <C-H> <C-W><C-H>
|
|
""" tell vim where to place new split
|
|
set splitbelow
|
|
set splitright
|
|
|
|
" spelling mistakes colors
|
|
hi clear SpellBad
|
|
hi SpellBad ctermfg=yellow
|
|
hi SpellBad ctermbg=red
|
|
|
|
" tabline color
|
|
hi TabLineFill ctermfg=DarkGreen ctermbg=DarkGreen
|
|
hi TabLine ctermfg=Blue ctermbg=Yellow
|
|
hi TabLineSel ctermfg=Red ctermbg=Yellow
|
|
|
|
"
|
|
command T :tabedit
|
|
command B :buffers
|
|
|
|
" current line number
|
|
hi cursorline cterm=none ctermbg=NONE ctermfg=NONE guibg=NONE guifg=NONE
|
|
hi CursorLineNr cterm=none
|
|
set cursorline
|
|
|