Является ли подсветка синтаксиса Vim Haskell нарушенной?

Мне кажется, что подсветка синтаксиса Vim для Haskell нарушена или очень глючит. Многострочные комментарии в Haskell (начиная с {- и заканчивая -}) произвольно выровнены и не очищены. Иногда перетаскивание мышью по прокомментированному коду приводит к обратному цвету.

Кто-нибудь еще испытывал эту проблему?

Ответы

Ответ 1

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

Различные методы, которые он использует для определения того, сколько текста для просмотра можно увидеть на : help: syn-sync. Если вы хотите использовать Just Work, используйте :syn sync fromstart, чтобы Vim рассмотрел весь буфер до курсора, чтобы определить выделение.

Ответ 2

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

http://vimdoc.sourceforge.net/htmldoc/syntax.html