Поиск несопоставимых разделителей в 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.