From: Stefan Huber <stefan.huber@fh-salzburg.ac.at>
Date: Wed, 4 Mar 2020 16:15:55 +0000 (+0100)
Subject: Add java support
X-Git-Url: https://git.sthu.org/?a=commitdiff_plain;h=b35afc843096bbfc0c5fa1f8b2afb9d32a5f22ec;p=vimconf.git

Add java support

- Add java complete package and shortcuts to handle imports
- Enable smart case for deoplete
---

diff --git a/init.vim b/init.vim
index ff6dcd8..fd7e77d 100644
--- a/init.vim
+++ b/init.vim
@@ -94,6 +94,7 @@ let g:clang_compilation_database = '.'
 let g:python3_host_prog = '/usr/bin/python3'
 " deoplete requires huge startuptime. Delay loading upon first InsertEnter.
 let g:deoplete#enable_at_startup = 0
+let g:deoplete#enable_smart_case = 1
 autocmd InsertEnter * call deoplete#enable()
 
 "augroup pencil
@@ -137,6 +138,23 @@ au Filetype mail syn match Statement /^\s*-*\s*8<\s*-*\s*$/
 " Line wrap crippled with numbers shown
 au Filetype man set nonumber
 
+" Java completion
+au FileType java setlocal omnifunc=javacomplete#Complete
+au FileType java JCEnable
+" See https://github.com/artur-shaik/vim-Javacomplete2
+" <C-j>ji <leader>ji
+nmap <F4> <Plug>(JavaComplete-Imports-AddSmart)
+imap <F4> <Plug>(JavaComplete-Imports-AddSmart)
+" <C-j>ii <leader>jii
+nmap <F5> <Plug>(JavaComplete-Imports-Add)
+imap <F5> <Plug>(JavaComplete-Imports-Add)
+" <C-j>I <leader>jI
+nmap <F6> <Plug>(JavaComplete-Imports-AddMissing)
+imap <F6> <Plug>(JavaComplete-Imports-AddMissing)
+" <C-j>R <leader>jR
+nmap <F7> <Plug>(JavaComplete-Imports-RemoveUnused)
+imap <F7> <Plug>(JavaComplete-Imports-RemoveUnused)
+
 
 """"""""""""""""""""""""""""""""""""""""""""""""""""""""""""
 " Some plugin-specific settings
diff --git a/plugins.vim b/plugins.vim
index 43f9163..2b36d0a 100644
--- a/plugins.vim
+++ b/plugins.vim
@@ -55,6 +55,8 @@ Plug 'derekwyatt/vim-fswitch', {'for': ['c', 'cpp', 'objc']}
 Plug 'ludovicchabant/vim-gutentags', {'for': ['c', 'cpp', 'objc']}
 "Plug 'vim-scripts/Conque-GDB', {'for': ['c', 'cpp', 'objc']}
 
+Plug 'artur-shaik/vim-javacomplete2', {'for': 'java'}
+
 Plug 'godlygeek/tabular'
 Plug 'junegunn/vim-easy-align'