Vim и Syntastic: сортировка ошибок перед предупреждениями в списке местоположений

Я обнаружил, что на некоторые предупреждения может влиять наличие синтаксической ошибки.

Удалите ошибку, и, привет, предупреждение исчезнет или изменится.

Чтобы не тратить время на поддельные предупреждения, я хочу сначала разобраться с ошибками, а это значит, что они должны появиться первыми в списке местоположений vim.

Syntastic может сортировать, но :help syntastic-config-sort говорит, что by line number, then by type, then by column number. Единственный другой вариант - отображать в порядке, отображаемом генерирующим компилятором / средством проверки ... который не настраивается.

Я знаю, что могу сделать что-то вроде:

let g:syntastic_ruby_checkers=['errors-only', 'warnings-and-errors']

но это еще больше замедлит и без того медленный процесс проверки в общем случае, когда есть предупреждения, но нет ошибок.

Есть ли способ получить ошибки до предупреждений?

Или обходной путь?

Например, есть ли способ запустить errors-only, если в проверке warnings-and-errors обнаружена ошибка?

Или есть способ: let g:syntastic_quiet_messages = { "level" : "warnings" } только если список для "level" : "errors" пуст?


person Tom Hale    schedule 01.01.2016    source источник
comment
Это невозможно, и в настоящее время нет планов добавлять такую ​​функцию. Прости за это.   -  person lcd047    schedule 04.01.2016
comment
В любом случае, спасибо за то, что сообщили нам ... и за отличный плагин в целом.   -  person Tom Hale    schedule 18.01.2016
comment
Чтобы избежать лжи рубокопа при наличии синтаксических ошибок, я сначала обращаюсь к ним: let g: syntastic_ruby_checkers = ['mri', 'rubocop']   -  person Tom Hale    schedule 27.07.2016


Ответы (1)


Мой способ исправления ошибок до появления предупреждений - сначала заполнить список местоположений ошибками, а затем предупреждениями:

let g:syntastic_ruby_checkers=['mri', 'rubocop']

Если я сохраню после исправления ошибок, то все фейковые предупреждения пропадут.

person Tom Hale    schedule 05.08.2016