Skip to content

Instantly share code, notes, and snippets.

@ashishwadekar
Created March 28, 2019 16:55
Show Gist options
  • Save ashishwadekar/301b70114f682f029841c48330282359 to your computer and use it in GitHub Desktop.
Save ashishwadekar/301b70114f682f029841c48330282359 to your computer and use it in GitHub Desktop.
" Basic Setup
set nocompatible
syntax enable
filetype plugin indent on
set background=dark
set shell=/bin/bash
set linespace=2
set tabstop=2 shiftwidth=2 expandtab
set hlsearch
set number
set ttimeoutlen=50 "Reduces latency after pressing escape
set laststatus=2 "Keeps Status line always active
" Undo Handling
if !isdirectory($HOME."/.vim/undo-dir")
call mkdir($HOME."/.vim/undo-dir", "", 0700)
endif
set undodir=~/.vim/undo-dir//
set backupdir=~/.vim/.backup//
set directory=~/.vim/.swp//
set undofile
" Theme & Font
set guifont=Hack:h15
colorscheme jellybeans
" MacVim Related Setup
set guioptions-=r
set guioptions-=l
" Indentation helpers
nnoremap <D-]> >>
nnoremap <D-[> <<
vnoremap <D-]> >gv
vnoremap <D-[> <gv
" Vim Airline Setup
set statusline+=%#warningmsg#
set statusline+=%{SyntasticStatuslineFlag()}
set statusline+=%*
" Syntastic Setup
let g:syntastic_always_populate_loc_list = 1
let g:syntastic_auto_loc_list = 1
let g:syntastic_ruby_checkers = ['rubocop', 'mri']
" Mix Format for Elixir Lang
let g:mix_format_on_save = 1
" Completion key for Emmet
let g:user_emmet_leader_key='<Tab>'
" Vim search related with AG
let g:ackprg = 'ag --vimgrep --smart-case'
cnoreabbrev ag Ack
cnoreabbrev aG Ack
cnoreabbrev Ag Ack
cnoreabbrev AG Ack
" Vue Plugin Settings
let g:vim_vue_plugin_load_full_syntax = 1
"FINDING FILES functionality
" Search down into subfolders
" Provides tab-completion for all file-related tasks
set path+=**
" Display all matching files when we tab complete
set wildmenu
" Plugin Management
call plug#begin('~/.vim/plugins_vim')
" Plugin List
" On-demand loading
Plug 'scrooloose/nerdtree', { 'on': 'NERDTreeToggle' }
" Vim working related
Plug 'nanotech/jellybeans.vim'
Plug 'mileszs/ack.vim'
Plug 'Yggdroot/indentLine'
Plug 'vim-syntastic/syntastic'
Plug 'majutsushi/tagbar'
Plug 'vim-airline/vim-airline'
Plug 'airblade/vim-gitgutter'
Plug 'wakatime/vim-wakatime'
Plug 'prettier/vim-prettier', { 'do': 'yarn install' }
Plug 'bronson/vim-trailing-whitespace'
Plug 'tpope/vim-dispatch'
Plug 'tpope/vim-surround'
Plug 'tpope/vim-commentary'
" Languages related
"HTML
Plug 'mattn/emmet-vim'
" Rails Plugins
Plug 'tpope/vim-bundler'
Plug 'tpope/vim-rails'
Plug 'ngmy/vim-rubocop'
" Elixir Plugins
Plug 'elixir-lang/vim-elixir'
Plug 'slashmili/alchemist.vim'
Plug 'mhinz/vim-mix-format'
" Vue Plugins
Plug 'leafOfTree/vim-vue-plugin'
" Themes List
Plug 'chriskempson/base16-vim'
Plug 'morhetz/gruvbox'
call plug#end()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment