Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- " __ _(_)_ __ ___ _ __ ___
- " \ \ / / | '_ ` _ \| '__/ __|
- " \ V /| | | | | | | | | (__
- " (_)_/ |_|_| |_| |_|_| \___|
- "
- " Who cares about vi?
- set nocompatible
- "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- " GUI
- "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- if has('gui_running')
- set guioptions-=m
- set guioptions-=T
- set guioptions-=r
- set guioptions-=L
- set guioptions+=c
- set guifont=Consolas\ for\ Powerline\ 15
- set t_Co=256
- endif
- "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- " General
- "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- set number
- set relativenumber
- set showcmd
- set autoread
- set autochdir
- set nohidden
- set noswapfile
- set nobackup
- set nowritebackup
- set wildignore+=.git,.hg,.svn,*.o,*.aux,*.png,*.jpg,*.pdf
- set nofoldenable
- syntax on
- " Make backspace work like other editors.
- set backspace=indent,eol,start
- " Disable Ex mode.
- nnoremap Q <nop>
- let g:tex_flavor="latex"
- "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- " Bundles
- "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- if has('vim_starting')
- set runtimepath+=~/.vim/bundle/neobundle.vim/
- endif
- call neobundle#begin(expand('~/.vim/bundle/'))
- NeoBundle 'Shougo/neobundle.vim'
- " Interface.
- NeoBundle 'airblade/vim-gitgutter'
- NeoBundle 'vim-airline/vim-airline'
- NeoBundle 'vim-airline/vim-airline-themes'
- NeoBundle 'nanotech/jellybeans.vim'
- NeoBundle 'ctrlpvim/ctrlp.vim'
- " Text.
- NeoBundle 'ciaranm/detectindent'
- "NeoBundle 'lyokha/vim-xkbswitch'
- NeoBundle 'scrooloose/nerdcommenter'
- NeoBundle 'terryma/vim-multiple-cursors'
- NeoBundle 'jiangmiao/auto-pairs'
- NeoBundle 'dyng/ctrlsf.vim'
- " Integrations.
- NeoBundle 'dbext.vim'
- NeoBundle 'tpope/vim-fugitive'
- NeoBundle 'airblade/vim-rooter'
- NeoBundle 'metakirby5/codi.vim'
- " Languages.
- NeoBundle 'lervag/vimtex'
- NeoBundle 'cespare/vim-toml'
- NeoBundle 'pangloss/vim-javascript'
- NeoBundle 'petRUShka/vim-opencl'
- NeoBundle 'rust-lang/rust.vim'
- NeoBundle 'tikhomirov/vim-glsl'
- NeoBundle 'maksimr/vim-yate'
- NeoBundle 'hynek/vim-python-pep8-indent'
- NeoBundle 'mustache/vim-mustache-handlebars'
- call neobundle#end()
- NeoBundleCheck
- "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- " Indentation
- "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- set smarttab
- set tabstop=4
- set shiftwidth=4
- set expandtab
- " Auto indent pasted text.
- nnoremap p p=`]<C-o>
- nnoremap P P=`]<C-o>
- filetype plugin indent on
- " Display tabs and trailing spaces visually.
- set list listchars=tab:\ \ ,trail:·
- set nowrap
- set linebreak
- "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- " Scrolling
- "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- set scrolloff=8
- set sidescrolloff=5
- set sidescroll=1
- "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- " Search
- "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- set incsearch
- set hlsearch
- set ignorecase
- set smartcase
- "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- " Spelling
- "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- set nospell
- set spellfile=~/.vim/spell/shit.utf-8.add
- set spelllang=en,ru
- "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- " Appearance
- "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- set background=dark
- colorscheme jellybeans
- " Lines.
- set colorcolumn=100
- set cursorline
- set synmaxcol=900
- "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- " Splits
- "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- set splitbelow
- set splitright
- " Easy movement.
- nnoremap <C-j> <C-w>j
- nnoremap <C-k> <C-w>k
- nnoremap <C-l> <C-w>l
- nnoremap <C-h> <C-w>h
- if has('nvim')
- autocmd BufWinEnter,WinEnter term://* startinsert
- tnoremap <ESC> <C-\><C-n>
- tnoremap <C-j> <C-\><C-n><C-w>j
- tnoremap <C-k> <C-\><C-n><C-w>k
- tnoremap <C-l> <C-\><C-n><C-w>l
- tnoremap <C-h> <C-\><C-n><C-w>h
- endif
- "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- " Move up/down lines
- "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- nnoremap <A-j> :m .+1<CR>==
- nnoremap <A-k> :m .-2<CR>==
- inoremap <A-j> <Esc>:m .+1<CR>==gi
- inoremap <A-k> <Esc>:m .-2<CR>==gi
- vnoremap <A-j> :m '>+1<CR>gv=gv
- vnoremap <A-k> :m '<-2<CR>gv=gv
- "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- " airline
- "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- set laststatus=2
- set showtabline=2
- set noshowmode
- let g:airline_theme='jellybeans'
- let g:airline_section_c='%t'
- let g:airline#extensions#tabline#enabled=1
- let g:airline#extensions#tabline#show_buffers=0
- "TODO: show project name in tab
- let g:airline_powerline_fonts=1
- let g:airline_left_sep='⮀'
- let g:airline_left_alt_sep='⮁'
- let g:airline_right_sep='⮂'
- let g:airline_right_alt_sep='⮃'
- if !exists('g:airline_symbols')
- let g:airline_symbols={}
- endif
- let g:airline_symbols.branch='⭠'
- let g:airline_symbols.readonly='⭤'
- let g:airline_symbols.linenr='⭡'
- "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- " javascript
- "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- let g:javascript_plugin_jsdoc=1
- let g:javascript_plugin_flow=1
- "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- " xkbswitch
- "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- let g:XkbSwitchEnabled=1
- let g:XkbSwitchIMappings=['ru']
- "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- " dbext
- "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- let g:dbext_default_window_use_horiz=0
- let g:dbext_default_window_width=60
- let g:dbext_default_window_increment=50
- "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- " CtrlP
- "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- let g:ctrlp_user_command=['.git', 'cd %s && git ls-files -co --exclude-standard', 'cd %s && fd']
- let g:ctrlp_root_markers=['package.json', 'Cargo.toml']
- let g:ctrlp_working_path_mode='rc'
- "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- " CtrlSF
- "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- let g:ctrlsf_winsize = '35%'
- nmap <C-F>f <Plug>CtrlSFPrompt
- vmap <C-F>f <Plug>CtrlSFVwordPath
- vmap <C-F>F <Plug>CtrlSFVwordExec
- nmap <C-F>n <Plug>CtrlSFCwordPath
- nmap <C-F>p <Plug>CtrlSFPwordPath
- nnoremap <C-F>o :CtrlSFOpen<CR>
- nnoremap <C-F>t :CtrlSFToggle<CR>
- inoremap <C-F>t <Esc>:CtrlSFToggle<CR>
- "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- " Rooter
- "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- let g:rooter_silent_chdir=1
- let g:rooter_patterns=['.git/', 'package.json', 'Cargo.toml']
- "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- " Codi
- "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- "let g:codi#log='/tmp/codi_log'
- let g:codi#interpreters = {
- \ 'javascript': {
- \ 'bin': ['/home/.nvm/versions/node/v6.9.2/bin/node', '-e', 'require("repl").start({ignoreUndefined: true, useGlobal: true})'],
- \ 'prompt': '^\(>\|\.\.\.\+\) ',
- \ },
- \ }
- "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- " Projects
- "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
- augroup projects
- au FileType tex,markdown setlocal wrap spell cc=0 nonu nornu
- au FileType yate setlocal smartindent
- augroup END
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement