【发布时间】:2015-08-26 18:35:55
【问题描述】:
我正在尝试使用 emacs 将“$$...$$”形式的字符串转换为“\[...\]”。我刚刚开始学习使用 emacs 来编辑一些文件。
按照emacs wiki上replace-regexp的first example,我最初尝试过:
M-x replace-regexp
Replace regexp: \$\$.*\$\$
Replace regexp with: \,("\[" \1 "\]")
但我收到了错误:invalid function "["。我反而尝试了
Replace regexp with: "\["\1"\]"
但我收到了错误:Invalid use of `\' in replacement text。
由于这两种方法都不起作用,因此我尝试在 emacs wiki 上调整替换正则表达式的 13th example,写作
M-x replace-regexp
Replace regexp: \$\$
Replace regexp with: \,(if (evenp \#) "\[" "\]")
但我收到错误:(void-function evenp)。有什么建议么?我想了解每种情况下出了什么问题,以及如何解决这些问题。
【问题讨论】:
-
evenp是cl库的一部分。要么(require 'cl),要么使用cl-evenp和(require 'cl-lib)。现在推荐使用后者(非前缀名称现在是别名),但是 YMMV。