2019-08-24 16:05:09 +00:00
|
|
|
let g:nvim_dotfiles_dir = expand('<sfile>:p:h')
|
2019-04-21 11:42:15 +00:00
|
|
|
|
2019-06-20 23:27:47 +00:00
|
|
|
let g:vim_ide = get(g:, 'vim_ide', 0)
|
|
|
|
|
2019-12-15 18:39:36 +00:00
|
|
|
let &runtimepath = g:nvim_dotfiles_dir.','.&runtimepath.','.g:nvim_dotfiles_dir.'/after'
|
2019-09-05 21:37:09 +00:00
|
|
|
|
2019-04-21 11:42:15 +00:00
|
|
|
|
2020-01-19 23:30:23 +00:00
|
|
|
let s:vim_config_dir = stdpath("config")
|
2019-12-15 20:17:10 +00:00
|
|
|
let s:vim_plug_script = s:vim_config_dir . '/autoload/plug.vim'
|
|
|
|
let s:vim_plug_home = s:vim_config_dir . '/plugged'
|
|
|
|
|
|
|
|
let s:just_installed_vim_plug = 0
|
|
|
|
if !filereadable(s:vim_plug_script)
|
|
|
|
execute '!curl -fL https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim --create-dirs -o' shellescape(s:vim_plug_script)
|
|
|
|
autocmd VimEnter * PlugInstall --sync
|
|
|
|
endif
|
|
|
|
|
|
|
|
call plug#begin(s:vim_config_dir . '/plugged')
|
|
|
|
|
|
|
|
Plug 'junegunn/vim-plug'
|
|
|
|
|
|
|
|
" Files {{{
|
|
|
|
Plug 'tpope/vim-eunuch'
|
|
|
|
if g:vim_ide
|
|
|
|
Plug 'francoiscabrol/ranger.vim'
|
|
|
|
endif
|
|
|
|
" }}}
|
|
|
|
|
|
|
|
" Editing {{{
|
2020-04-30 09:02:00 +00:00
|
|
|
if g:vim_ide
|
|
|
|
Plug 'easymotion/vim-easymotion'
|
|
|
|
Plug 'junegunn/vim-easy-align'
|
|
|
|
endif
|
2019-12-15 20:17:10 +00:00
|
|
|
Plug 'Raimondi/delimitMate'
|
|
|
|
Plug 'tpope/vim-repeat'
|
|
|
|
Plug 'tpope/vim-commentary'
|
|
|
|
Plug 'tpope/vim-surround'
|
|
|
|
Plug 'Yggdroot/indentLine'
|
|
|
|
Plug 'henrik/vim-indexed-search'
|
|
|
|
Plug 'andymass/vim-matchup'
|
|
|
|
Plug 'inkarkat/vim-ingo-library' " required by LineJuggler
|
|
|
|
Plug 'inkarkat/vim-LineJuggler', { 'branch': 'stable' }
|
|
|
|
Plug 'reedes/vim-pencil'
|
2020-08-30 17:32:18 +00:00
|
|
|
Plug 'idbrii/detectindent'
|
2020-07-27 07:46:55 +00:00
|
|
|
Plug 'tommcdo/vim-exchange'
|
2019-12-15 20:17:10 +00:00
|
|
|
" }}}
|
|
|
|
|
|
|
|
" Text objects {{{
|
|
|
|
Plug 'kana/vim-textobj-user'
|
|
|
|
Plug 'kana/vim-textobj-entire'
|
|
|
|
Plug 'kana/vim-textobj-line'
|
|
|
|
Plug 'kana/vim-textobj-indent'
|
|
|
|
" }}}
|
|
|
|
|
|
|
|
" UI {{{
|
|
|
|
Plug 'moll/vim-bbye'
|
|
|
|
Plug 'gerw/vim-HiLinkTrace'
|
|
|
|
Plug 'vim-airline/vim-airline'
|
|
|
|
Plug 'tpope/vim-obsession'
|
|
|
|
Plug 'romainl/vim-qf'
|
|
|
|
if g:vim_ide
|
|
|
|
Plug 'dyng/ctrlsf.vim'
|
|
|
|
endif
|
|
|
|
" }}}
|
2019-09-05 21:37:09 +00:00
|
|
|
|
2019-12-15 20:17:10 +00:00
|
|
|
" Git {{{
|
2020-04-30 09:02:00 +00:00
|
|
|
if g:vim_ide
|
|
|
|
Plug 'tpope/vim-fugitive'
|
|
|
|
Plug 'tpope/vim-rhubarb'
|
|
|
|
Plug 'airblade/vim-gitgutter'
|
|
|
|
endif
|
2019-12-15 20:17:10 +00:00
|
|
|
" }}}
|
|
|
|
|
|
|
|
" FZF {{{
|
|
|
|
Plug 'junegunn/fzf', { 'do': './install --bin' }
|
|
|
|
Plug 'junegunn/fzf.vim'
|
|
|
|
" }}}
|
|
|
|
|
|
|
|
" Programming {{{
|
|
|
|
Plug 'sheerun/vim-polyglot'
|
2020-08-12 20:24:31 +00:00
|
|
|
Plug 'chikamichi/mediawiki.vim'
|
2019-12-15 20:17:10 +00:00
|
|
|
if g:vim_ide
|
2020-03-07 18:01:33 +00:00
|
|
|
Plug 'neoclide/coc.nvim', { 'branch': 'release' }
|
2019-12-15 20:17:10 +00:00
|
|
|
Plug 'dag/vim2hs'
|
|
|
|
endif
|
|
|
|
" }}}
|
|
|
|
|
|
|
|
call plug#end()
|
|
|
|
|
|
|
|
" Automatically install/clean plugins (because I'm a programmer) {{{
|
|
|
|
augroup vimrc-plugins
|
|
|
|
autocmd!
|
|
|
|
autocmd VimEnter *
|
|
|
|
\ if len(filter(values(g:plugs), '!isdirectory(v:val.dir)'))
|
|
|
|
\| PlugInstall --sync | q
|
|
|
|
\| endif
|
|
|
|
augroup END
|
|
|
|
" }}}
|
|
|
|
|
|
|
|
|
|
|
|
colorscheme dotfiles
|