两个问题:
eval-buffer
的结果存储在哪里?我该如何访问它?
例如:
(+ 2 2)
(forward-word)
等函数由eval-buffer
执行,但不移动光标?那是为什么?
答案 0 :(得分:7)
eval-buffer
通常用于副作用,而不是返回值。例如,在.emacs文件中,eval-buffer
将重新加载我们的所有配置设置。默认情况下,当以交互方式使用时,它将始终返回nil
。如果要在缓冲区中获取代码的返回值,这是错误的方法。绑定到eval-last-sexp
的{{1}}是一种方法。使用前缀C-x C-e
调用它会将返回值插入当前缓冲区。
C-u C-x C-e
保留了point的值。因此像eval-buffer
这样的函数没有明显的效果。