如何使emacs在字体锁定模式下呈现数学组合字符?
我正试图让emacs在字体锁定模式下正确地呈现数学组合字符,如分划、过栏等。目标是能够写一些数学的东西,比如ẋdot,并将其显示为“ẋ”,或者x̄bar显示为“x” 这就是我到目前为止所做的,而且基本上是有效的如何使emacs在字体锁定模式下呈现数学组合字符?,emacs,font-lock,font-lock-mode,Emacs,Font Lock,Font Lock Mode,我正试图让emacs在字体锁定模式下正确地呈现数学组合字符,如分划、过栏等。目标是能够写一些数学的东西,比如ẋdot,并将其显示为“ẋ”,或者x̄bar显示为“x” 这就是我到目前为止所做的,而且基本上是有效的 (font-lock-add-keywords nil `(("\\<\\(\\w\\)\\(_dot\\)\\>" (0 (progn (compose-region (match-beginning 1) (match-end 2)
(font-lock-add-keywords
nil
`(("\\<\\(\\w\\)\\(_dot\\)\\>"
(0 (progn (compose-region (match-beginning 1) (match-end 2)
(concatenate 'string (match-string 1) " ̇" )) nil)))))
(字体锁定添加关键字)
无
`(("\\"
(0(程序(合成区域)(匹配开始1)(匹配结束2)
(连接“字符串(匹配字符串1)”)(零
但是:我在合成的角色之前看到了一个视觉工件角色。执行上述操作后,在*scratch*缓冲区中写入“x_dot”或类似内容来测试这一点
这个神器像幽灵一样来来去去去。在编写“o”和“-”等普通字符时,不会出现这种行为,如下面的示例所示
(font-lock-add-keywords
nil
`(("\\<\\(\\w\\)\\(_dash\\)\\>"
(0 (progn (compose-region (match-beginning 1) (match-end 2)
(concatenate 'string (match-string 1) "-" )) nil)))))
(字体锁定添加关键字)
无
`(("\\"
(0(程序(合成区域)(匹配开始1)(匹配结束2)
(连接“字符串(匹配字符串1)”-”)nil‘‘‘‘‘‘‘)
然后在某处输入“x_dash”
发生了什么?无论如何,您的第一个示例在我的操作系统X上的前沿Emacs中运行良好,没有瑕疵。您可能看到了特定于您平台的Emacs UI和/或字体库的渲染怪癖。如果你发布更多关于你正在运行的Emacs的信息,比我更专业的人可能会证实这个问题。我在ubuntu上用Emacs 23.2测试了这个例子,发现了同样的问题。是的,我也在ubuntu上用Emacs 23.2测试。我看看能不能找到真正的问题。。。