Before: runtime ale_linters/fortran/gcc.vim After: call ale#linter#Reset() let g:ale_fortran_gcc_options = '-Wall' let g:ale_fortran_gcc_use_free_form = 1 let g:ale_fortran_gcc_executable = 'gcc' Execute(The fortran gcc command callback should return the correct default string): AssertEqual 'gcc -S -x f95 -fsyntax-only -ffree-form -Wall -', \ join(split(ale_linters#fortran#gcc#GetCommand(1))) Execute(The fortran gcc command callback should let you set options): let g:ale_fortran_gcc_options = '-Wotherthings' AssertEqual 'gcc -S -x f95 -fsyntax-only -ffree-form -Wotherthings -', \ join(split(ale_linters#fortran#gcc#GetCommand(1))) Execute(The fortran gcc command callback should let you use -ffixed-form): let g:ale_fortran_gcc_use_free_form = 0 AssertEqual 'gcc -S -x f95 -fsyntax-only -ffixed-form -Wall -', \ join(split(ale_linters#fortran#gcc#GetCommand(1))) Execute(The fortran executable should be configurable): let g:ale_fortran_gcc_executable = 'gfortran' AssertEqual 'gfortran', ale_linters#fortran#gcc#GetExecutable(1) AssertEqual 'gfortran -S -x f95 -fsyntax-only -ffree-form -Wall -', \ join(split(ale_linters#fortran#gcc#GetCommand(1)))