Last active
December 17, 2015 05:38
-
-
Save jineshpaloor/5559041 to your computer and use it in GitHub Desktop.
My .vimrc file
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
" to add auto indetation " | |
set smartindent | |
set textwidth=79 " lines longer than 79 columns will be broken | |
set shiftwidth=4 " operation >> indents 4 columns; << unindents 4 columns | |
set tabstop=4 " a hard TAB displays as 4 columns | |
set expandtab " insert spaces when hitting TABs | |
set softtabstop=4 " insert/delete 4 spaces when hitting a TAB/BACKSPACE | |
set shiftround " round indent to multiple of 'shiftwidth' | |
set autoindent " align the new line indent with the previous line | |
execute pathogen#infect() | |
syntax on | |
filetype plugin indent on | |
autocmd BufWritePost *.py call Flake8() # invoke python syntax checks while saving file | |
autocmd BufWritePre *.py :%s/\s\+$//e # remove trailing whitespaces | |
" to indent html files " | |
filetype on | |
filetype plugin on | |
filetype indent on | |
"{{{Auto Commands | |
" Automatically cd into the directory that the file is in | |
" autocmd BufEnter * execute "chdir ".escape(expand("%:p:h"), ' ') | |
" Remove any trailing whitespace that is in the file | |
autocmd BufRead,BufWrite * if ! &bin | silent! %s/\s\+$//ge | endif | |
" Restore cursor position to where it was before | |
augroup JumpCursorOnEdit | |
au! | |
autocmd BufReadPost * | |
\ if expand("<afile>:p:h") !=? $TEMP | | |
\ if line("'\"") > 1 && line("'\"") <= line("$") | | |
\ let JumpCursorOnEdit_foo = line("'\"") | | |
\ let b:doopenfold = 1 | | |
\ if (foldlevel(JumpCursorOnEdit_foo) > foldlevel(JumpCursorOnEdit_foo - 1)) | | |
\ let JumpCursorOnEdit_foo = JumpCursorOnEdit_foo - 1 | | |
\ let b:doopenfold = 2 | | |
\ endif | | |
\ exe JumpCursorOnEdit_foo | | |
\ endif | | |
\ endif | |
" Need to postpone using "zv" until after reading the modelines. | |
autocmd BufWinEnter * | |
\ if exists("b:doopenfold") | | |
\ exe "normal zv" | | |
\ if(b:doopenfold > 1) | | |
\ exe "+".1 | | |
\ endif | | |
\ unlet b:doopenfold | | |
\ endif | |
augroup END | |
"}}} | |
"{{{Misc Settings | |
" Necesary for lots of cool vim things | |
set nocompatible | |
" This shows what you are typing as a command. I love this! | |
set showcmd | |
" Folding Stuffs | |
set foldmethod=marker | |
" This is totally awesome - remap jj to escape in insert mode. You'll never type jj anyway, so it's great! | |
inoremap jj <Esc> | |
"{{{ Open URL in browser | |
function! Browser () | |
let line = getline (".") | |
let line = matchstr (line, "http[^ ]*") | |
exec "!konqueror ".line | |
endfunction | |
"}}} | |
"display a warning if &et is wrong, or we have mixed-indenting | |
set statusline+=%#error# | |
set statusline+=%{StatuslineTabWarning()} | |
set statusline+=%* | |
set statusline+=%{StatuslineTrailingSpaceWarning()} | |
set statusline+=%{StatuslineLongLineWarning()} | |
set statusline+=%#warningmsg# | |
set statusline+=%{SyntasticStatuslineFlag()} | |
set statusline+=%* | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment