92 lines
2.3 KiB
VimL
92 lines
2.3 KiB
VimL
|
" This is like my other vimrc except it needs no plugins
|
||
|
|
||
|
colorscheme desert
|
||
|
|
||
|
syntax on
|
||
|
filetype plugin indent on
|
||
|
|
||
|
set whichwrap=<,>,[,],b,
|
||
|
set backspace=indent,eol,start
|
||
|
set ruler
|
||
|
set number
|
||
|
set cursorline
|
||
|
set cursorcolumn
|
||
|
set background=dark
|
||
|
set autoread
|
||
|
|
||
|
" Leader
|
||
|
let mapleader = ","
|
||
|
let g:mapleader = ","
|
||
|
nmap <leader>w :w!<cr>
|
||
|
|
||
|
" Highlight a line to read over later
|
||
|
nnoremap <silent> <Leader>l ml:execute 'match Search /\%'.line('.').'l/'<CR>
|
||
|
|
||
|
" Turn backup off, since most stuff is in SVN, git et.c anyway...
|
||
|
set nobackup
|
||
|
set nowb
|
||
|
set noswapfile
|
||
|
|
||
|
" But also have C-like languages use C spacing
|
||
|
" Thanks much jdhore
|
||
|
set ai
|
||
|
au BufRead,BufNewFile *.c,*.h,*.cpp,*.cxx,*.hpp,*.cc,*.c++,*.hh,*.hxx,*.ipp,*.moc,*.tcc,*.inl set cindent
|
||
|
au BufRead,BufNewFile *.c,*.h,*.cpp,*.cxx,*.hpp,*.cc,*.c++,*.hh,*.hxx,*.ipp,*.moc,*.tcc,*.inl set tabstop=8
|
||
|
au BufRead,BufNewFile *.c,*.h,*.cpp,*.cxx,*.hpp,*.cc,*.c++,*.hh,*.hxx,*.ipp,*.moc,*.tcc,*.inl set shiftwidth=8
|
||
|
set cinoptions=>s,e0,n0,f0,{0,}0,^0,=s,ps,t0,c3,+s,(2s,us,)20,*30,gs,hs
|
||
|
|
||
|
" Python spacing in python
|
||
|
autocmd Filetype python setlocal expandtab tabstop=4 shiftwidth=4
|
||
|
|
||
|
au Filetype lolcode setl et ts=4 sw=4
|
||
|
|
||
|
au BufRead APKBUILD setl noexpandtab softtabstop=0 tabstop=4 shiftwidth=4 nosmarttab
|
||
|
|
||
|
" Show tabs
|
||
|
set list
|
||
|
set listchars=tab:>-,trail:~,extends:>,precedes:<
|
||
|
|
||
|
" status line
|
||
|
set ls=2
|
||
|
set statusline=%F%m%r%h%w\ >\ FORMAT=%{&ff}\ >\ TYPE=%Y\ >\ BUF=\#%n\ <\ POS=%04l,%04v\ <\ %p%%\ <\ LEN=%L
|
||
|
|
||
|
" wildmenu
|
||
|
set wildmenu
|
||
|
set wildignore=*.o,*~,*.pyc
|
||
|
|
||
|
" Delete extra spaces 4 at a time
|
||
|
:highlight ExtraWhitespace ctermbg=red guibg=red
|
||
|
:match ExtraWhitespace /\s\+$/
|
||
|
:match ExtraWhitespace /\s\+$\| \+\ze\t/
|
||
|
|
||
|
" Paste macros
|
||
|
" Thanks to jdhore
|
||
|
map <F8> :set paste<CR>
|
||
|
map <F9> :set nopaste<CR>
|
||
|
imap <F8> <C-O>:set paste<CR>
|
||
|
imap <F9> <nop>
|
||
|
set pastetoggle=<F9>
|
||
|
map <F3> gg=G:w<cr>
|
||
|
|
||
|
" Lvimrc
|
||
|
" if .lvimrc exists in parent directory of loaded file, load it as config
|
||
|
let lvimrc_path = expand('%:p:h') . '/.lvimrc'
|
||
|
if filereadable(lvimrc_path)
|
||
|
execute 'so' lvimrc_path
|
||
|
endif
|
||
|
|
||
|
" Color column definition
|
||
|
let &colorcolumn="80,100, 110"
|
||
|
highlight ColorColumn ctermbg=52
|
||
|
|
||
|
" Delete trailing white space on save, useful for Python and CoffeeScript ;)
|
||
|
func! DeleteTrailingWS()
|
||
|
exe "normal mz"
|
||
|
%s/\s\+$//ge
|
||
|
exe "normal `z"
|
||
|
endfunc
|
||
|
autocmd BufWrite *.py :call DeleteTrailingWS()
|
||
|
|
||
|
" Spellchecking
|
||
|
map <leader>ss :setlocal spell!<cr>
|