-
-
Save vladshablinsky/a8ed3de666957da2787b to your computer and use it in GitHub Desktop.
Well, someone asked for it.
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
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() | |
Plugin 'gmarik/Vundle.vim' | |
" My plugins | |
Plugin 'tpope/vim-fugitive' | |
Plugin 'scrooloose/nerdtree' | |
Plugin 'tpope/vim-surround' | |
Plugin 'altercation/vim-colors-solarized' | |
Plugin 'kien/ctrlp.vim' " fuzzy search, never used | |
Plugin 'bling/vim-airline' | |
Plugin 'majutsushi/tagbar' | |
Plugin 'tpope/vim-repeat' | |
Plugin 'airblade/vim-gitgutter' | |
Plugin 'Valloric/YouCompleteMe' | |
Plugin 'tpope/vim-markdown' | |
" top vim plugins above ---------------------------------------------- | |
Plugin 'junegunn/vim-easy-align' | |
Plugin 'AndrewRadev/splitjoin.vim' | |
Plugin 'scrooloose/nerdcommenter' | |
Plugin 'vim-scripts/bufkill.vim' | |
Plugin 'Lokaltog/vim-easymotion' | |
Plugin 'tpope/vim-unimpaired' | |
Plugin 'terryma/vim-smooth-scroll' | |
Plugin 'jeffkreeftmeijer/vim-numbertoggle' | |
Plugin 'takac/vim-hardtime' | |
Plugin 'git://git.code.sf.net/p/vim-latex/vim-latex' | |
Plugin 'nathanaelkane/vim-indent-guides' | |
Plugin 'lyokha/vim-xkbswitch' | |
Plugin 'MarcWeber/vim-addon-local-vimrc' | |
"Plugin 'Raimondi/delimitMate' | |
Plugin 'jiangmiao/auto-pairs' | |
" ruby support ------------------------------------------------------ | |
Plugin 'tpope/vim-endwise' | |
Plugin 'vim-scripts/ruby-matchit' | |
Plugin 'vim-ruby/vim-ruby' | |
" All of your Plugins must be added before the following line | |
call vundle#end() " required | |
filetype plugin indent on " required | |
" To ignore plugin s:indent changes, instead use: | |
"filetype plugin on | |
"# My tunes | |
"## Enabling external files | |
set secure " don't allow changing files | |
"## Default tab settings | |
set ts=2 et sw=0 sts=-1 | |
"## Appearance | |
syntax on | |
set go-=m go-=T | |
set scrolloff=2 | |
set lazyredraw | |
set incsearch | |
set background=dark | |
set number | |
set colorcolumn=80 | |
let g:airline_powerline_fonts = !(&term=~'linux') " neat arrows | |
let g:airline#extensions#tabline#enabled = 1 " use buffers | |
set laststatus=2 " always show buffers | |
set wildmenu | |
set wildmode=longest:full,full " rich command suggestion | |
set wildignorecase | |
set showcmd " show command being entered | |
set vb | |
colorscheme solarized | |
"colorscheme mustang | |
set guifont=DejaVu\ Sans\ Mono\ for\ Powerline"\ 11 | |
"## Behavior | |
set backspace=2 " else not working | |
set ignorecase | |
set smartcase | |
set hidden " allow hidden buffers | |
set smartindent | |
"## Keybindings | |
"### Plain text editor key bindings. | |
:inoremap <silent><S-Tab> <C-o><< | |
:inoremap <F3> <C-o>n | |
:inoremap <S-F3> <C-o>N | |
:noremap <Leader><CR> :nohlsearch<CR> | |
"### Moving lines with A-j A-k | |
nnoremap <silent><A-j> :m .+1<CR>== | |
nnoremap <silent><A-k> :m .-2<CR>== | |
inoremap <silent><A-j> <Esc>:m .+1<CR>==gi | |
inoremap <silent><A-k> <Esc>:m .-2<CR>==gi | |
vnoremap <silent><A-j> :m '>+1<CR>gv=gv | |
vnoremap <silent><A-k> :m '<-2<CR>gv=gv | |
"# GUI integration | |
set mouse=a | |
set mousemodel=popup_setpos | |
"# I MUST learn VIM. The hard way. | |
:noremap <up> <nop> | |
:noremap <down> <nop> | |
:noremap <left> << | |
:noremap <right> >> | |
:inoremap <up> <nop> | |
:inoremap <down> <nop> | |
:inoremap <left> <nop> | |
:inoremap <right> <nop> | |
"# Plugin Settings | |
"## solarized | |
let g:solarized_contrast="high" | |
"## Hardtime settings | |
let g:hardtime_showmsg=1 | |
let g:hardtime_maxcount=5 | |
"autocmd BufEnter * HardTimeOn | |
"## vim-indent-guides | |
autocmd Vimenter * IndentGuidesEnable | |
"## xkb-switch | |
let g:XkbSwitchLib='/usr/local/lib/libxkbswitch.so' | |
let g:XkbSwitchEnabled=1 | |
"## YouCompleteMe settings | |
let g:ycm_error_symbol=">>" | |
let g:ycm_warning_symbol="!!" | |
let g:ycm_allow_changing_update_time=1 | |
let g:ycm_autoclose_preview_window_after_insertion=1 | |
let g:ycm_confirm_extra_conf=0 | |
let g:ycm_global_ycm_extra_conf='~/.ycm_extra_conf.py' | |
let g:ycm_collect_identifiers_from_tags_files=1 | |
autocmd FileType c nnoremap <buffer> <silent> <C-]> :YcmCompleter GoTo<cr> | |
"## smooth scroll settings | |
noremap <silent> <c-u> :call smooth_scroll#up(&scroll, 0, 2)<CR> | |
noremap <silent> <c-d> :call smooth_scroll#down(&scroll, 0, 2)<CR> | |
noremap <silent> <c-b> :call smooth_scroll#up(&scroll*2, 0, 4)<CR> | |
noremap <silent> <c-f> :call smooth_scroll#down(&scroll*2, 0, 4)<CR> | |
"## EasyMotion | |
map <Leader> <Plug>(easymotion-prefix) | |
"## NERDTree | |
let g:nerdtree_tabs_autoclose=1 | |
"## EasyAlign | |
vmap <CR> <Plug>(EasyAlign) | |
nmap ga <Plug>(EasyAlign) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment