Created
November 16, 2019 22:10
-
-
Save OrderAndCh4oS/d4aab5f513a9c27986fb3a9f73251384 to your computer and use it in GitHub Desktop.
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
#!/bin/bash | |
brew unlink vim | |
brew install cmake macvim | |
git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim; | |
touch .vimrc; | |
cat << EOF > .vimrc | |
set nocompatible | |
filetype off | |
let g:ycm_confirm_extra_conf = 0 | |
set rtp+=~/.vim/bundle/Vundle.vim | |
call vundle#begin() | |
Plugin 'VundleVim/Vundle.vim' | |
Plugin 'Valloric/YouCompleteMe' | |
Plugin 'Syntastic' | |
Plugin 'tpope/vim-fugitive' | |
Plugin 'scrooloose/nerdtree' | |
Plugin 'vim-airline/vim-airline' | |
Plugin 'vim-airline/vim-airline-themes' | |
Plugin 'airblade/vim-gitgutter' | |
Plugin 'morhetz/gruvbox' | |
Plugin 'junegunn/goyo.vim' | |
Plugin 'junegunn/limelight.vim' | |
Plugin 'lilydjwg/colorizer' | |
Plugin 'TagBar' | |
Plugin 'ctrlp.vim' | |
Plugin 'ntpeters/vim-better-whitespace' | |
Plugin 'Chiel92/vim-autoformat' | |
Plugin 'vim-flake8' | |
Plugin 'vimlatex' | |
call vundle#end() | |
filetype plugin indent on | |
syntax on | |
colorscheme gruvbox | |
set background=dark | |
scriptencoding utf-8 | |
set encoding=utf-8 | |
set fenc=utf-8 | |
set termencoding=utf-8 | |
set number | |
set ruler | |
set shiftround | |
set ts=4 | |
set autoindent | |
set smartindent | |
set expandtab | |
set smarttab | |
set shiftwidth=4 | |
set history=500 | |
set autoread | |
set list | |
set listchars=tab:\ \ ,trail:. | |
set colorcolumn=80 | |
set backspace=2 " backspace delete over EOL | |
" set spell spelllang=en_gb | |
let mapleader = "," | |
let g:airline#extensions#tabline#enabled = 1 | |
set laststatus=2 | |
set statusline=%t | |
set statusline+=[%{strlen(&fenc)?&fenc:'none'}] | |
set statusline+=%#warningmsg# | |
set statusline+=%{SyntasticStatuslineFlag()} | |
set statusline+=%* | |
autocmd FileType make setlocal noexpandtab | |
autocmd BufWritePre * StripWhitespace | |
autocmd StdinReadPre * let s:std_in=1 | |
autocmd VimEnter * if argc() == 0 && !exists("s:std_in") | NERDTree | endif | |
autocmd FileType python setlocal completeopt-=preview | |
let g:syntastic_loc_list_height=5 | |
let g:syntastic_always_populate_loc_list = 1 | |
let g:syntastic_check_on_open = 1 | |
let g:syntastic_check_on_wq = 0 | |
let g:syntastic_java_checkers = [] | |
" edit vimrc | |
nnoremap <Leader>ev :e ~/.vimrc<CR> | |
" source .vimrc | |
nnoremap <Leader>sv :so ~/.vimrc<CR> | |
" search and replace | |
nnoremap <Leader>rr :%s//g<Left><Left> | |
" search and replace current word | |
nnoremap <Leader>rw :%s/<c-r><c-w>//g<left><left> | |
" increment/decrement numbers | |
nnoremap + <C-a> | |
" increment/decrement numbers | |
nnoremap - <C-x> | |
" turn a snake into a camel | |
nnoremap <Leader>+ mmviw:s/\%V_\(.\)/\U\1/g<CR>:nohlsearch<CR>`m | |
" turn a camel into a snake | |
nnoremap <Leader>_ mmviw:s/\%V\(\u\)/_\L\1/g<CR>:nohlsearch<CR>`m | |
" move by single line | |
nnoremap j gj | |
nnoremap k gk | |
let g:ctrlp_show_hidden = 1 | |
let NERDTreeQuitOnOpen=1 | |
let NERDTreeShowHidden=1 | |
let loaded_matchparen = 1 | |
highlight ColorColumn ctermbg=236 | |
hi CursorLine cterm=NONE ctermbg=236 | |
" toggle goyo | |
nnoremap <Leader>gy :Goyo<CR> | |
autocmd! User GoyoEnter Limelight | |
autocmd! User GoyoLeave Limelight! | |
let g:limelight_conceal_ctermfg = 'gray' | |
let g:limelight_conceal_ctermfg = 240 | |
map <C-n> :NERDTreeToggle<CR> | |
nmap <C-t> :TagbarToggle<CR> | |
nmap <C-l> :bnext<CR> | |
nmap <C-h> :bprev<CR> | |
map <C-Y> :YcmGenerateConfig<CR> | |
map <C-;> :YcmCompleter FixIt<CR> | |
noremap <C-f> :Autoformat<CR> | |
nnoremap <F7> :make<CR> | |
EOF | |
vim +PluginInstall +qall; | |
cd ~/.vim/bundle/YouCompleteMe; | |
./install.py --clang-completer; | |
cd -; |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment