我希望能够在 Emacs (Ma, Me) 中按句子导航。这就是问题所在:默认情况下,Emacs 期望每个句子由两个空格分隔,而我习惯于只放置一个空格。当然,可以关闭该设置,以允许句子仅由一个空格分隔,如下所示:
(setq sentence-end-double-space nil)
但是随后 Emacs 认为句子在带有句号(“.”)的缩写之后结束,例如在“...一个奇怪的命令,例如 foo...”之类的东西之后。
因此,除了使用上面的代码之外,有没有一种方法可以定义句尾变量,以便将 [.!?] 视为标记句子的结尾,如果后面是一个或多个空格,后跟一个大写字母 [ AZ]?
并且...还允许 [.!?] 标记句子的结尾,如果后面跟着零个或多个空格,然后是“\”?[后一种情况的原因是为了编写 LaTeX 代码:一个句子后面跟着一个 LaTeX 命令,如 \footnote{},例如“...所以我们可以看到这一点得到了证明。\footnote{在一些替代世界,至少。}"]
我试着玩弄句尾的定义,并想出了:
(setq sentence-end "[.!?][]'\")}]*\\(\\$\\|[ ]+[A-Z]\\|[ ]+[A-Z]\\| \\)[
;]*")
但这似乎根本不起作用。
有什么建议么?