summaryrefslogtreecommitdiffstats
path: root/compiler/textidote.vim
diff options
context:
space:
mode:
authorAdam Stankiewicz <sheerun@sher.pl>2020-04-25 21:30:46 +0200
committerAdam Stankiewicz <sheerun@sher.pl>2020-04-25 21:30:46 +0200
commitd757bfd643cc73c2d495355c153ed0257f5d5b47 (patch)
treeff210950456938a779d98f6a2ba7321aca512897 /compiler/textidote.vim
parent8ec73a3a8974a62a613680a6b6222a77a7b99546 (diff)
downloadvim-polyglot-d757bfd643cc73c2d495355c153ed0257f5d5b47.tar.gz
vim-polyglot-d757bfd643cc73c2d495355c153ed0257f5d5b47.zip
Change latex provider to luatex, closes #476
Diffstat (limited to 'compiler/textidote.vim')
-rw-r--r--compiler/textidote.vim38
1 files changed, 38 insertions, 0 deletions
diff --git a/compiler/textidote.vim b/compiler/textidote.vim
new file mode 100644
index 00000000..f7ecab30
--- /dev/null
+++ b/compiler/textidote.vim
@@ -0,0 +1,38 @@
+if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'latex') == -1
+
+if exists('current_compiler') | finish | endif
+let current_compiler = 'textidote'
+
+" older Vim always used :setlocal
+if exists(':CompilerSet') != 2
+ command -nargs=* CompilerSet setlocal <args>
+endif
+
+let s:cpo_save = &cpo
+set cpo&vim
+
+if exists('g:vimtex_textidote_jar')
+ \ && filereadable(fnamemodify(g:vimtex_textidote_jar, ':p'))
+ let s:textidote_cmd = 'java -jar '
+ \ . shellescape(fnamemodify(g:vimtex_textidote_jar, ':p'))
+else
+ echoerr 'To use the textidote compiler, '
+ \ . 'please set g:vimtex_textidote_jar to the path of textidote.jar!'
+ finish
+endif
+
+let &l:makeprg = s:textidote_cmd
+ \ . ' --no-color --output singleline --check '
+ \ . matchstr(&spelllang, '^\a\a') . ' %:S'
+
+setlocal errorformat=
+setlocal errorformat+=%f(L%lC%c-L%\\d%\\+C%\\d%\\+):\ %m
+setlocal errorformat+=%-G%.%#
+
+silent CompilerSet makeprg
+silent CompilerSet errorformat
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
+
+endif