Поиск несопоставимых разделителей в Clojurescript

Изредка я нахожусь в ситуации, когда не совпадают фигурные скобки, круглые или квадратные скобки: {}()[] в Clojurescript. я использую leininingen а также cljsbuild Мне трудно отследить источник ошибок. Обычно это сводится к чему-то вроде этого:

Compiling "resources/public/js/whitespace.js" failed. clojure.lang.ExceptionInfo: java.lang.RuntimeException: Unmatched delimiter: ) at line 1

Затем следует обширная трассировка стека, которая, кажется, не содержит имени файла, информации о номере строки.

Как я могу получить больше полезной информации?

Мой обходной путь до сих пор

  • используйте контроль версий для поиска различий файлов и их предыдущих состояний. Тогда посмотрите, где скобки, где изменились.

  • использовать парни Vim в широком соответствии % в помощь.

1 ответ

Решение

Вы можете использовать режим Paredit, чтобы сохранить баланс S-выражений во время ввода. В Emacs этот режим также предупреждает вас, если у вас есть несоответствующее выражение в файле.

Существует плагин vim, который обеспечивает режим Paredit для vim, посмотрите здесь: https://github.com/vim-scripts/paredit.vim.

Другие вопросы по тегам