|
|
- if empty(glob('~/.config/nvim/autoload/plug.vim'))
- silent !curl -fLo ~/.config/nvim/autoload/plug.vim --create-dirs
- \ https://raw.githubusercontent.com/junegunn/vim-plug/master/plug.vim
- autocmd VimEnter * PlugInstall
- endif
-
- call plug#begin()
- " Plugins
- Plug 'miyakogi/seiya.vim'
- Plug 'ctrlpvim/ctrlp.vim'
- Plug 'FelikZ/ctrlp-py-matcher'
- Plug 'jeetsukumaran/vim-filebeagle'
- Plug 'bling/vim-airline'
- Plug 'vim-airline/vim-airline-themes'
- Plug 'scrooloose/nerdtree'
- Plug 'christoomey/vim-tmux-navigator'
- Plug 'editorconfig/editorconfig-vim'
- Plug 'mhinz/vim-grepper'
- Plug 'tomtom/tcomment_vim'
- Plug 'ap/vim-css-color'
- Plug 'autozimu/LanguageClient-neovim', { 'do': ':UpdateRemotePlugins' }
- Plug 'neomake/neomake'
- Plug 'ludovicchabant/vim-gutentags'
- " Colorschemes
- Plug 'whatyouhide/vim-gotham'
- Plug 'flazz/vim-colorschemes'
-
- "HTML & CSS
- Plug 'hail2u/vim-css3-syntax'
- Plug 'othree/html5.vim'
- Plug 'Valloric/MatchTagAlways'
- Plug 'digitaltoad/vim-jade'
-
- "Javascript
-
- "PHP
- Plug 'StanAngeloff/php.vim', {'for': 'php'}
- Plug 'lumiliet/vim-twig'
- Plug 'roxma/LanguageServer-php-neovim', {'do': 'composer install && composer run-script parse-stubs', 'for': 'php'}
- Plug 'SirVer/ultisnips' | Plug 'phux/vim-snippets'
- "Git plugin
- Plug 'tpope/vim-fugitive'
-
- " Lua
- Plug 'xolox/vim-misc'
- Plug 'xolox/vim-lua-ftplugin'
-
- "Vue
- Plug 'posva/vim-vue'
-
- Plug 'sbdchd/neoformat'
- " Donnie says this is important
- function! DoRemote(arg)
- UpdateRemotePlugins
- endfunction
-
- call plug#end()
-
- let g:airline#extensions#tabline#enabled = 1
- let g:airline#extensions#neomake#enabled = 0
-
-
- syntax on
- colorscheme gotham
- set tabstop=2
- set expandtab
- set shiftwidth=2
- set smartcase
- set hlsearch
- set number
- set autoindent
- set incsearch
- set clipboard+=unnamedplus
- set noswapfile
- set t_Co=256
- set hidden
- set relativenumber
- set list listchars=tab:»·,trail:·,nbsp:·
- set termguicolors
- set tags=.tags,./tags,tags;
-
- let g:airline_theme="gotham"
-
- "Option + Left and Right switch buffers
- "execute "set <M-Right>=\e\eC"
- "execute "set <M-Left>=\e\eD"
- nnoremap <silent> <C-Right> :bnext<CR>
- nnoremap <silent> <C-Left> :bprevious<CR>
- nnoremap <silent> <C-Del> :bd<CR>
-
- "Syntastic default settings
- set statusline+=%#warningmsg#
- set statusline+=%{SyntasticStatuslineFlag()}
- set statusline+=%*
-
- " let g:deoplete#sources#padawan#add_parentheses = 1
- " needed for echodoc to work if add_parentheses is 1
-
- " let g:deoplete#sources = get(g:,'deoplete#sources',{})
- " let g:deoplete#sources.php = ['padawan', 'ultisnips', 'tags', 'buffer', 'LanguageClient']
-
-
- function! GutentagsFilter(path) abort
- if fnamemodify(a:path, ':e') == 'java'
- return 0
- elseif fnamemodify(a:path, ':e') == ''
- return 0
- elseif fnamemodify(a:path, ':e') == 'xml'
- return 0
- elseif fnamemodify(a:path, ':e') == 'gradle'
- return 0
- else
- return 1
- endif
- endfunction
-
- let g:gutentags_enabled_user_func = 'GutentagsFilter'
- let g:gutentags_ctags_tagfile = '.tags'
- let g:gutentags_ctags_executable_php = 'ctags --langmap=php:.engine.inc.module.theme.install.php --php-kinds=cdfi --fields=+l'
-
-
- " only start lsp when opening php files
- au filetype php LanguageClientStart
-
- " use LSP completion on ctrl-x ctrl-o as fallback for padawan in legacy projects
- au filetype php set omnifunc=LanguageClient#complete
-
- " no need for diagnostics, we're going to use neomake for that
- let g:LanguageClient_diagnosticsEnable = 0
- let g:LanguageClient_signColumnAlwaysOn = 0
-
- " I only use these 3 mappings
- nnoremap <silent> gd :call LanguageClient_textDocument_definition()<CR>
- nnoremap <silent> gr :call LanguageClient_textDocument_references()<CR>
- nnoremap K :call LanguageClient_textDocument_hover()<cr>
-
- " cycle through menu items with tab/shift+tab
- inoremap <expr> <TAB> pumvisible() ? "\<c-n>" : "\<TAB>"
- inoremap <expr> <s-tab> pumvisible() ? "\<c-p>" : "\<TAB>"
-
- autocmd BufWritePost * Neomake
- let g:neomake_error_sign = {'text': '✖', 'texthl': 'NeomakeErrorSign'}
- let g:neomake_warning_sign = {'text': '∆', 'texthl': 'NeomakeWarningSign'}
- let g:neomake_message_sign = {'text': '➤', 'texthl': 'NeomakeMessageSign'}
- let g:neomake_info_sign = {'text': 'ℹ', 'texthl': 'NeomakeInfoSign'}
-
- let g:UltiSnipsExpandTrigger="<c-j>"
- let g:UltiSnipsJumpForwardTrigger="<c-j>"
- let g:UltiSnipsJumpBackwardTrigger="<c-b>"
-
- " PHP7
- let g:ultisnips_php_scalar_types = 1
-
- let g:seiya_auto_enable=1
-
- let g:seiya_target_groups = has('nvim') ? ['guibg'] : ['ctermbg']
|