plugins: nvim-treesitter for neovim-0.8
[vimconf.git] / plugins-noroot-nolowendbox.vim
index 3f84bfb72d9b3931e2b7b9629b2d90e6e046bccd..38d914e8000b5083b99c0ba0dfb9a54461eb962c 100644 (file)
@@ -15,11 +15,13 @@ Plug 'artur-shaik/vim-javacomplete2', {'for': 'java'}
 Plug 'neomake/neomake'
 Plug 'puremourning/vimspector'
 
+Plug 'kana/vim-operator-user'
+Plug 'rhysd/vim-clang-format'
 Plug 'justmao945/vim-clang', {'for': ['c', 'cpp', 'objc']}
 
 " Prevent slow foling update, e.g., for vimtex
 Plug 'Konfekt/FastFold'
-Plug 'lervag/vimtex', {'for': 'tex'}
+Plug 'lervag/vimtex'
 
 Plug 'mhinz/vim-signify'
 Plug 'tpope/vim-fugitive'
@@ -33,6 +35,7 @@ Plug 'hail2u/vim-css3-syntax', {'for': ['scss', 'css']}
 
 Plug 'https://gitlab.com/dbeniamine/vim-mail'
 Plug 'Konfekt/vim-DetectSpellLang', {'do': 'spell'}
+Plug 'dpelle/vim-LanguageTool'
 
 " Disable devicons on linux terminal
 if $TERM == 'linux'
@@ -53,8 +56,12 @@ Plug 'dbeniamine/cheat.sh-vim', {'on': 'Cheat'}
 
 Plug 'sheerun/vim-polyglot'
 
-if has('nvim-0.5')
-    Plug 'nvim-treesitter/nvim-treesitter', {'do': ':TSUpdate'}
+if has('nvim')
+    if has('nvim-0.8')
+        Plug 'nvim-treesitter/nvim-treesitter', {'do': ':TSUpdate'}
+    else
+        Plug 'nvim-treesitter/nvim-treesitter', {'do': ':TSUpdate', 'tag': 'v0.8.0'}
+    endif
     Plug 'nvim-treesitter/nvim-treesitter-refactor', {'do': ':TSUpdate'}
 endif
 
@@ -172,8 +179,8 @@ function PluginsNorootNolowendboxConfig()
 
 lua <<EOF
         require'nvim-treesitter.configs'.setup {
-            -- one of "all", "maintained" (parsers with maintainers), or a list of languages
-            ensure_installed = "maintained",
+            -- one of "all"
+            ensure_installed = "all",
             -- List of parsers to ignore installing
             ignore_install = {},
             -- Modules and its options go here
@@ -217,6 +224,14 @@ EOF
     let g:detectspelllang_langs = {}
     let g:detectspelllang_langs.aspell =[ 'en_US', 'de_AT']
 
+    " Try finding jar file. If it does not work, set cmd directly
+    let g:languagetool_jar='/snap/languagetool/current/usr/bin/languagetool-commandline.jar'
+    if !filereadable(g:languagetool_jar)
+        unlet! g:languagetool_jar
+        let g:languagetool_cmd='languagetool'
+    endif
+
+
     au FileType mail let g:VimMailSpellLangs=['de', 'en']
     let g:VimMailContactsProvider=['khard']
     let g:VimMailContactsCommands={
@@ -242,8 +257,11 @@ EOF
 
     let g:vimtex_fold_enabled = 1
     let g:vimtex_fold_levelmarker = '➜'
+    let g:vimtex_view_general_viewer = 'okular'
+    let g:vimtex_view_general_options = '--unique file:@pdf\#src:@line@tex'
+    let g:airline#extensions#vimtex#enabled = 1
 
-    au FileType c,cpp,obj,java,python packadd! vimspector
+    au FileType c,cpp,objc,java,python packadd! vimspector
     let g:vimspector_base_dir = expand('~/.vim/vimspector-config')
     let g:vimspector_install_gadgets = [ 'debugpy', 'vscode-cpptools' ]
     "let g:vimspector_enable_mappings = 'VISUAL_STUDIO'
@@ -280,4 +298,12 @@ EOF
     " Do not show diagnostic window of vim-clang
     let g:clang_diagsopt = ''
 
+    augroup ClangFormatSettings
+        au!
+        au FileType c,cpp,objc,javascript,java,typescript,protobuf,cuda,vala
+                    \ vmap <buffer><leader>cf <Plug>(operator-clang-format)
+        au FileType c,cpp,objc,javascript,java,typescript,protobuf,cuda,vala
+                    \ nmap <buffer><leader>cf :ClangFormat<CR>
+    augroup END
+
 endfunction