我喜欢在评估时看到所有可能的信息,所以我已经设置了
(setq eval-expression-print-length nil)
(setq eval-expression-print-level nil)
但是,这会在处理大数据时造成严重的减速
操纵CEDET数据。
所以我认为懒惰打印系统对我有用:打印尽可能多的数据 达到设定限制(比如100000个字符)并缩写其余部分。
因此,而不是print-level
的当前行为:
(foo (bar1 ... baz1)
(bar2 ... baz2)
(bar3 ... baz3))
我可以:
(foo (bar1 __tmp1__ baz1)
(bar2 __tmp2__ baz2)
(bar3 __tmp3__ baz3))
其中__tmp1__
包含...
隐藏的值,可以使用某种快捷方式在*scratch*
中展开。
我甚至可以添加一个font-lock
规则来__tmp[0-9]+__
作为...
。
我想要实现所述系统的一些指针(例如高效生成, 存储和垃圾收集的缩写变量),或者可能 你可以指出一个更好的系统来解决我所描述的问题。