Add initial version of .vimrc. In future there will be omre explanation for it

This commit is contained in:
Grzegorz
2016-03-12 15:35:54 +01:00
parent 329ed255b4
commit 01e2cdc05a

205
.vimrc Normal file
View File

@@ -0,0 +1,205 @@
filetype off
syntax on
" Default config {{{
set term=screen-256color
set t_Co=256
set ruler
set ts=2 sts=2 sw=2
set nocompatible
set autoindent
set number
set backspace=2
set ignorecase
set incsearch
set cursorline
set expandtab
set wildmenu
set hid
set lazyredraw
set autoread
set history=700
"set relativenumber
set encoding=utf8
set fileencoding=utf8
set backupdir=~/.vim/swp
set directory=~/.vim/swp
set shell=/bin/bash
set hidden
map ; :
set undodir=$HOME/.vim/undo
set undolevels=1000
set undoreload=10000
set undofile
let &colorcolumn="80,".join(range(120,999),",")
" }}}
" Shortcuts {{{
let mapleader = ','
map <F12> :buffers<CR>
map H :tabp<CR>
map L :tabn<CR>
map <Leader>S :Ag! <cword><CR>
map <C-E> :VimFilerExplorer<CR>
map <Leader>g :Gstatus<CR>
map <Leader>c :Gcommit<CR>
map <Leader>ig :IndentGuidesToggle<CR>
map <C-p> :CtrlP<CR>
map <Leader>p :CtrlP .<CR>
map <Leader>/ <Plug>(easymotion-sn)
map <Leader>h :%s/:\([^ ]*\)\(\s*\)=>/\1:/g<CR>
map <Leader>H :s/:\([^ ]*\)\(\s*\)=>/\1:/g<CR>
" }}}
call plug#begin('~/.vim/plugged')
" Autocomplete {{{
Plug 'Valloric/YouCompleteMe'
"Plug 'Shougo/neocomplete.vim'
"Plug 'Shougo/neosnippet'
"Plug 'Shougo/neosnippet-snippets'
"let g:acp_enableAtStartup = 0
"" Use neocomplete.
"let g:neocomplete#enable_at_startup = 1
"" Use smartcase.
"let g:neocomplete#enable_smart_case = 1
"imap <expr><TAB> neosnippet#expandable_or_jumpable() ?
"\ "\<Plug>(neosnippet_expand_or_jump)"
"\: pumvisible() ? "\<C-n>" : "\<TAB>"
"smap <expr><TAB> neosnippet#expandable_or_jumpable() ?
"\ "\<Plug>(neosnippet_expand_or_jump)"
"\: "\<TAB>"
" }}}
"Plug 'blueyed/vim-colors-solarized'
Plug 'jpo/vim-railscasts-theme'
Plug 'dkprice/vim-easygrep'
Plug 'nathanaelkane/vim-indent-guides', { 'on': 'IndentGuidesToggle' }
Plug 'exu/pgsql.vim', { 'for': 'sql' }
Plug 'junegunn/vim-easy-align'
" Start interactive EasyAlign in visual mode (e.g. vipga)
xmap ga <Plug>(EasyAlign)
" Start interactive EasyAlign for a motion/text object (e.g. gaip)
nmap ga <Plug>(EasyAlign)
Plug 'duggiefresh/vim-easydir'
Plug 'scrooloose/syntastic'
Plug 'rking/ag.vim', { 'on': 'Ag' }
Plug 'Lokaltog/vim-easymotion'
Plug 'tpope/vim-surround'
Plug 'edkolev/tmuxline.vim'
Plug 'ntpeters/vim-better-whitespace'
Plug 'terryma/vim-multiple-cursors'
" Nerd {{{
"Plug 'scrooloose/nerdtree', { 'on': 'NERDTreeToggle' }
Plug 'Shougo/unite.vim'
Plug 'Shougo/vimfiler.vim', { 'on': 'VimFilerExplorer' }
"let NERDTreeIgnore = ['\.o']
Plug 'scrooloose/nerdcommenter'
" }}}
Plug 'terryma/vim-expand-region'
vmap v <Plug>(expand_region_expand)
vmap <C-v> <Plug>(expand_region_shrink)
Plug 'bling/vim-airline'
let g:airline#extensions#tabline#enabled = 1
let g:airline_powerline_fonts = 1
set laststatus=2
Plug 'kien/ctrlp.vim', { 'on': 'CtrlP' }
set wildignore+=*/.gem/*,*/vendor/Plug/*,*/tmp/*,log/*,*/tmp/*,*/public/system*,*.orig,*.o,*/public/assets*
Plug 'wikitopian/hardmode'
" RAILS {{{
Plug 'kchmck/vim-coffee-script'
Plug 'slim-template/vim-slim', { 'for': 'slim' }
Plug 'tpope/vim-haml', { 'for': 'haml' }
Plug 'tpope/vim-rails'
Plug 'grzlus/sass.snippet', { 'for': 'sass' }
Plug 'thoughtbot/vim-rspec'
Plug 'benmills/vimux'
let g:rspec_command = 'call VimuxRunCommand("bundle exec spring rspec {spec}")'
map <Leader>t :call RunCurrentSpecFile()<CR>
map <Leader>t :call RunAllSpecs()<CR>
"Plug 'kana/vim-textobj-user'
"Plug 'nelstrom/vim-textobj-rubyblock'
" }}}
Plug 'heartsentwined/vim-emblem', { 'for': 'emblem' }
" GIT
Plug 'tpope/vim-fugitive'
Plug 'airblade/vim-gitgutter'
Plug 'mattn/gist-vim', { 'on': 'Gist' }
Plug 'mattn/webapi-vim', { 'on': 'Gist' }
"Plug 'vim-utils/vim-ruby-fold'
call plug#end()
filetype plugin indent on
let g:solarized_termcolors=256
colorscheme railscasts
set background=dark
" VIM Flod {{{
augroup vimrc
au BufReadPre * setlocal foldmethod=marker
au BufWinEnter * if &fdm == 'indent' | setlocal foldmethod=manual | endif
augroup END
" }}}
" Remember line {{{
" Return to last edit position when opening files (You want this!)
autocmd BufReadPost *
\ if line("'\"") > 0 && line("'\"") <= line("$") |
\ exe "normal! g`\"" |
\ endif
" Remember info about open buffers on close
set viminfo^=%
" }}}
autocmd VimEnter,BufNewFile,BufReadPost * if !strlen(&buftype) | silent! call HardMode() | endif
autocmd FileType css,scss,sass setlocal iskeyword+=-
autocmd FileType css,scss,sass setlocal omnifunc=csscomplete#CompleteCSS
autocmd FileType html,markdown setlocal omnifunc=htmlcomplete#CompleteTags
autocmd FileType javascript,coffee setlocal omnifunc=javascriptcomplete#CompleteJS
autocmd BufWritePre * StripWhitespace