+
+" ALE config
+let g:ale_linters = {'javascript': ['eslint']}
+
+" Move things up and down using Ctrl + Shift
+nnoremap <C-S-j> :m .+1<CR>==
+nnoremap <C-S-k> :m .-2<CR>==
+inoremap <C-S-j> <Esc>:m .+1<CR>==gi
+inoremap <C-S-k> <Esc>:m .-2<CR>==gi
+vnoremap <C-S-j> :m '>+1<CR>gv=gv
+vnoremap <C-S-k> :m '<-2<CR>gv=gv
+
+" Plug configuration
+call plug#begin('~/.vim/plugged')
+
+"
+" Plugin List
+"
+
+" Syntaxes
+Plug 'rbdr/api-notation.vim'
+Plug 'elzr/vim-json'
+Plug 'mustache/vim-mode'
+Plug 'othree/yajs.vim'
+Plug 'ARM9/snes-syntax-vim'
+Plug 'posva/vim-vue'
+Plug 'leafOfTree/vim-svelte-plugin'
+Plug 'bumaociyuan/vim-swift'
+Plug 'udalov/kotlin-vim'
+
+" Editing
+Plug 'jiangmiao/auto-pairs'
+" Plug 'tpope/vim-endwise.git'
+Plug 'michaeljsmith/vim-indent-object'
+
+" Tools
+Plug 'editorconfig/editorconfig-vim'
+Plug 'w0rp/ale'
+Plug 'vim-scripts/LargeFile'
+Plug 'tpope/vim-fugitive'
+Plug 'milkypostman/vim-togglelist'
+Plug 'jremmen/vim-ripgrep'
+Plug 'lifepillar/vim-mucomplete'
+
+" List ends here. Plugins become visible to Vim after this call.
+call plug#end()