passing this information to SpotBugs: >vim
let g:spotbugs_alternative_path = {
\ 'fromPath': 'path/to/dir_without_blanks',
\ 'toPath': 'path/to/dir with blanks',
\ }
[0] https://github.com/Konfekt/vim-compilers
[1] https://github.com/MarcWeber/vim-addon-local-vimrc
[2] https://github.com/spotbugs/spotbugs/issues/909
GNU MAKE *compiler-make*
Since the default make program is "make", the compiler plugin for make,
:compiler make, will reset the 'makeprg' and 'errorformat' option to
the default values and unlet any variables that may have been set by a
previous compiler plugin.
GROFF *quickfix-groff* *compiler-groff*
The GROFF compiler plugin uses the mom macro set (documented in the groff_mom
manpage) as input and expects that the output file type extension is passed to
make, say :make html or :make pdf.
Additional arguments can be passed to groff by setting them in
`b:groff_compiler_args` or `g:groff_compiler_args`. The `language` argument
passed to groff is set using 'spelllang'; it can be overridden by setting
`b:groff_compiler_lang`. The default encoding is `UTF-8` and can be changed
by setting `b:groff_compiler_encoding` or `g:groff_compiler_encoding`.
PANDOC *quickfix-pandoc* *compiler-pandoc*
The Pandoc compiler plugin expects that an output file type extension is
passed to make, say :make html or :make pdf.
Additional arguments can be passed to pandoc:
- either by appending them to make, say `:make html --self-contained` .
- or setting them in `b:pandoc_compiler_args` or `g:pandoc_compiler_args`.
The `--from` argument is an educated guess using the buffer file type;
it can be overridden by setting `b:pandoc_compiler_from`.
The `--metadata lang` argument is set using 'spelllang';
If `--from=markdown` is assumed and no title set in a title header or
YAML block, then the filename (without extension) is used as the title.
PERL *quickfix-perl* *compiler-perl*
The Perl compiler plugin doesn't actually compile, but invokes Perl's internal
syntax checking feature and parses the output for possible errors so you can
correct them in quick-fix mode.
Warnings are forced regardless of "no warnings" or "$^W = 0" within the file
being checked. To disable this set g:perl_compiler_force_warnings to a zero
value. For example: >
let g:perl_compiler_force_warnings = 0
MYPY TYPE CHECKER *compiler-mypy*
Commonly used compiler options can be added to 'makeprg' by setting the
b/g:mypy_makeprg_params variable. For example: >
let b:mypy_makeprg_params = "--warn-unused-ignores"
The global default is "--strict --ignore-missing-imports".
RUFF LINTER *compiler-ruff*
Commonly used compiler options can be added to 'makeprg' by setting the
b/g:ruff_makeprg_params variable. For example: >
let b:ruff_makeprg_params = "--max-line-length "..&textwidth
The global default is "--preview".
PYLINT LINTER *compiler-pylint*
Commonly used compiler options can be added to 'makeprg' by setting the
b/g:pylint_makeprg_params variable. For example: >
let b:pylint_makeprg_params = "--max-line-length "..&textwidth
The global default is "--jobs=0" to use (almost) all cores.
PYUNIT COMPILER *compiler-pyunit*
This is not actually a compiler, but a unit testing framework for the
Python language. It is included into standard Python distribution
starting from version 2.0. For older versions, you can get it from
https://pyunit.sourceforge.net.
When you run your tests with the help of the framework, possible errors
are parsed by Vim and presented for you in quick-fix mode.
Unfortunately, there is no standard way to run the tests.
The alltests.py script seems to be used quite often, that's all.
Useful values for the 'makeprg' options therefore are:
setlocal makeprg=./alltests.py " Run a testsuite
setlocal makeprg=python\ %:S " Run a single testcase
PYTEST COMPILER *compiler-pytest*
Commonly used compiler options can be added to 'makeprg' by setting the
b/g:pytest_makeprg_params variable.