如何匹配emacs中的询问和感叹号?

时间:2014-10-08 23:47:43

标签: emacs

正确的西班牙文写作需要有审讯和感叹的开始和结束标记。例如:¡Qué buena página!¿Cómo cambiar emacs?

我希望与括号匹配具有相同的行为:突出显示该对或显示一个不匹配。

如何实现这一目标?

2 个答案:

答案 0 :(得分:2)

理论上可以获得匹配,例如“<”之间和“>” 你应该写:

(modify-syntax-entry ?< "(>")
(modify-syntax-entry ?> ")<")

但这对所有unicode符号都不起作用, 见http://projects.haskell.org/pipermail/haskellmode-emacs/2011-July/000107.html

答案 1 :(得分:1)

以上是我在上面的评论中提到的第一个粗略草案 - 它考虑用户在text-mode

(defun my-custom-keywords ()

  (font-lock-add-keywords nil (list

    (list "\\(¡\\)\\(\\(.\\|\n\\)+?\\)\\(!\\)"
      '(1 font-lock-keyword-face t)
      '(2 'default t)
      '(4 font-lock-keyword-face t))

    (list "\\(¿\\)\\(\\(.\\|\n\\)+?\\)\\([?]\\)"
      '(1 font-lock-keyword-face t)
      '(2 'default t)
      '(4 font-lock-keyword-face t))

    (list "\\(¡\\|!\\|¿\\|[?]\\)"
      '(1 font-lock-warning-face))  )))

(add-hook 'text-mode-hook 'my-custom-keywords)