Настройка чек-паренов для проверки двойных кавычек - PullRequest
2 голосов
/ 02 марта 2012

Я установил 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.)

1 Ответ

1 голос
/ 02 марта 2012

Попробуйте

(modify-syntax-entry ?\" "\"" markdown-mode-syntax-table)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...