Я установил check-parens
для сохранения моих файлов, в частности файлов Markdown, чтобы предупредить меня о несбалансированных скобках.Они почти всегда являются ошибками, и это избавило меня от множества ошибок, связанных с ссылками Markdown внутри скобок:
;In Markdown files, there are few excuses for unbalanced delimiters
(add-hook 'markdown-mode-hook
(lambda ()
(when buffer-file-name
(add-hook 'after-save-hook
'check-parens
nil t))))
Я заметил, что у меня есть похожие проблемы с цитированием - я брошу завершающую цитатуили я забуду преобразовать одинарные и двойные значения соответствующим образом и т. д. (Это иногда пересекается с ошибками ссылок, когда я помещаю бумажные заголовки в подсказку.) Существует немного больше причин для дисбаланса, чем для (s или) s, иэто та же самая задача, которую check-parens
уже выполняет. Поэтому, естественно, я хотел бы также иметь check-parens
кавычки.
Но я не могу этого сделать! Кажется, что правильный путь заключается во взлометаблица синтаксиса Markdown, но все, что я пытаюсь сделать, похоже, не работает -
(modify-syntax-entry ?\" "(\"" markdown-mode-syntax-table)
(modify-syntax-entry ?\" ")\"" markdown-mode-syntax-table)
(modify-syntax-entry ?\" "$\"" markdown-mode-syntax-table)
(modify-syntax-entry ?\" "^\"" markdown-mode-syntax-table)
(modify-syntax-entry ?\" ".\"" markdown-mode-syntax-table)
(modify-syntax-entry ?' "\"" markdown-mode-syntax-table)
и т. д. и т. д. и т. д. Они все либо ничего не делают, либо заставляют check-parens
выдавать ошибки в начале файла, где, насколько я могускажите, что все работает просто отлично.
Я прочитал несколько ссылок по теме и документацию Ch f для modify-syntax-entry
:
и спросили #emacs
, но безрезультатно.
(Версия Emacs 24.0.93.1 для нестабильной версии Debian.)