自定义check-parens以检查双引号

时间:2012-03-02 03:31:30

标签: emacs

我已将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覆盖引号为(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) 好。

但我似乎无法这样做!正确的方式似乎涉及黑客攻击Markdown语法表,但我尝试的任何东西似乎都没有用 -

check-parens

等等等。他们都不做任何事情或导致modify-syntax-entry在文件的早期吐出错误,据我所知,一切正常。

我已阅读了有关该主题的多个链接以及#emacs C-h f 文档:

并在{{1}}上询问,但没有用。

(Debian unstable上的版本是Emacs 24.0.93.1。)

1 个答案:

答案 0 :(得分:1)

尝试

(modify-syntax-entry ?\" "\"" markdown-mode-syntax-table)