149 lines
3.2 KiB
VimL
Executable File
149 lines
3.2 KiB
VimL
Executable File
filetype off
|
|
|
|
"" Plugins
|
|
set rtp+=~/.vim/bundle/Vundle.vim
|
|
set rtp+=~/.fzf
|
|
|
|
call vundle#begin()
|
|
"" Core
|
|
Plugin 'gmarik/Vundle.vim'
|
|
Plugin 'wakatime/vim-wakatime'
|
|
Plugin 'junegunn/fzf.vim'
|
|
Plugin 'ctrlpvim/ctrlp.vim'
|
|
Plugin 'tpope/vim-dispatch'
|
|
Plugin 'majutsushi/tagbar'
|
|
Plugin 'Valloric/YouCompleteMe'
|
|
Plugin 'SirVer/ultisnips'
|
|
Plugin 'honza/vim-snippets'
|
|
Plugin 'w0rp/ale'
|
|
|
|
"" UI
|
|
Plugin 'scrooloose/nerdtree'
|
|
Plugin 'vim-airline/vim-airline'
|
|
Plugin 'powerline/powerline'
|
|
Plugin 'mhinz/vim-startify'
|
|
Plugin 'morhetz/gruvbox'
|
|
Plugin 'crusoexia/vim-monokai'
|
|
|
|
"" Languages
|
|
Plugin 'plasticboy/vim-markdown'
|
|
Plugin 'jceb/vim-orgmode'
|
|
Plugin 'OmniSharp/omnisharp-vim'
|
|
Plugin 'OrangeT/vim-csharp'
|
|
|
|
"" Plugins
|
|
Plugin 'godlygeek/tabular'
|
|
Plugin 'tpope/vim-commentary'
|
|
Plugin 'tpope/vim-fugitive'
|
|
Plugin 'tpope/vim-surround'
|
|
Plugin 'ervandew/supertab'
|
|
Plugin 'tpope/vim-speeddating'
|
|
|
|
"" Other
|
|
Plugin 'rhysd/vim-clang-format'
|
|
Plugin 'python-rope/ropevim'
|
|
call vundle#end()
|
|
|
|
|
|
"" Standard variables
|
|
syntax enable
|
|
filetype plugin indent on
|
|
set nocompatible
|
|
set ignorecase
|
|
set smartcase
|
|
set clipboard=unnamed
|
|
set number
|
|
set nobackup
|
|
set noundofile
|
|
set nowritebackup
|
|
set nohlsearch
|
|
set wildmenu
|
|
set tabstop=4
|
|
set softtabstop=4
|
|
set expandtab
|
|
set shiftwidth=4
|
|
set previewheight=5
|
|
set foldmethod=syntax
|
|
set foldlevel=99
|
|
let mapleader = ' '
|
|
|
|
|
|
"" Theming
|
|
let g:airline_theme = 'vorange'
|
|
colorscheme monokai
|
|
|
|
|
|
"" Dir Config
|
|
let g:NERDTreeHijackNetrw = 1
|
|
|
|
|
|
"" Language Config
|
|
let g:OmniSharp_server_stdio = 1
|
|
let g:OmniSharp_selector_ui = 'fzf'
|
|
|
|
|
|
"" Tool Config
|
|
let g:ycm_key_list_select_completion = ['<C-n>', '<Down>']
|
|
let g:ycm_key_list_previous_completion = ['<C-p>', '<Up>']
|
|
let g:SuperTabDefaultCompletionType = '<C-n>'
|
|
|
|
let g:UltiSnipsExpandTrigger = '<tab>'
|
|
let g:UltiSnipsJumpForwardTrigger = '<tab>'
|
|
let g:UltiSnipsJumpBackwardTrigger = '<s-tab>'
|
|
let g:ale_linters = {
|
|
\ 'cs': ['OmniSharp']
|
|
\}
|
|
|
|
|
|
"" Keybinds
|
|
"" General keybind
|
|
nnoremap <leader>fed :e ~/.vimrc<CR>
|
|
nnoremap <leader>fei :e ~/.vim/ftplugin<CR>
|
|
nnoremap <leader>fer :so ~/.vimrc<CR>:PluginInstall<CR>
|
|
nnoremap <leader>qq :q!<CR>
|
|
nnoremap <leader><leader> :
|
|
|
|
"" File Management
|
|
nnoremap <leader>fr :e!<CR>
|
|
nnoremap <leader>fs :w<CR>
|
|
nnoremap <leader>fq :wq<CR>
|
|
nnoremap <leader>fn :enew<CR>
|
|
nnoremap <F8> :set hlsearch! hlsearch?<CR>
|
|
|
|
"" Buffer Management
|
|
nnoremap <leader>bb :Buffers<CR>
|
|
nnoremap <leader>bn :bn <CR>
|
|
nnoremap <leader>bp :bp <CR>
|
|
nnoremap <leader>bd :bd <CR>
|
|
|
|
"" Window Management
|
|
nnoremap <leader>ww :Windows<CR>
|
|
"" Splits
|
|
nnoremap <leader>w/ <C-W>v
|
|
nnoremap <leader>w- <C-W>s
|
|
nnoremap <leader>wd <C-W>q
|
|
"" Resizes
|
|
nnoremap <leader>w^ :resize -5<CR>
|
|
nnoremap <leader>w<Down> :resize +5<CR>
|
|
nnoremap <leader>w> <C-W>5>
|
|
nnoremap <leader>w< <C-W>5<
|
|
"" Movement
|
|
nnoremap <leader>wj <C-W><C-J>
|
|
nnoremap <leader>wk <C-W><C-K>
|
|
nnoremap <leader>wl <C-W><C-L>
|
|
nnoremap <leader>wh <C-W><C-H>
|
|
|
|
"" Searches
|
|
nnoremap <leader>ss :BLines <CR>
|
|
nnoremap <leader>sf :Ag <CR>
|
|
nnoremap <leader>st :BTags <CR>
|
|
nnoremap <leader>ff :Files
|
|
|
|
"" Projects
|
|
nnoremap <leader>pf :Files<CR>
|
|
nnoremap <leader>pt :NERDTreeToggle<CR>
|
|
nnoremap <leader>pg :!ctags-exuberant -R --exclude=Makefile .
|
|
|
|
"" Tags
|
|
nnoremap <leader>tt :Tags<CR>
|