Emacs s-表达式的折叠部分-请求建议

Emacs s-表达式的折叠部分-请求建议,emacs,clojure,elisp,Emacs,Clojure,Elisp,我使用clojure模式和clojure.test/with-test,如下所示: (with-test (def... some expression defining a var) ;; comment for a test (is (= 0 (- 1 1))) (is ...)) 其中,在with test中第一个表达式后面的表达式。。。是第一种形式的测试用例。这是很有用的,因为它可以使测试接近它们的相关代码 然而,测试用例的列表可能相当长,掩盖了真实代码的其余部分。我

我使用clojure模式和clojure.test/with-test,如下所示:

(with-test
  (def... some expression defining a var)

  ;; comment for a test
  (is (= 0 (- 1 1)))
  (is ...))
其中,在with test中第一个表达式后面的表达式。。。是第一种形式的测试用例。这是很有用的,因为它可以使测试接近它们的相关代码

然而,测试用例的列表可能相当长,掩盖了真实代码的其余部分。我希望有某种方法将所有测试代码隐藏在缓冲区中。类似于大纲/组织模式的折叠功能:

(with-test
  (def some expression defining a var)
  ...)
甚至

(def some expression defining a var)
使用某种标记来显示隐藏的测试用例

关于这一点,最棘手的部分是def。。。我想关注的表单在with测试中。。。我想隐藏的形式

我环顾四周,就我所能看到的而言,我将无法在大纲模式或隐藏模式下完成这项工作。我假设我需要一些能够感知表达式的折叠库来实现这样的功能。这样的事情已经存在了吗,我是不是想错了,你有什么建议吗

更新


我能和hideshow合作。请参阅中的hs hide all clojure tests(隐藏所有clojure测试)

我相信,您可以将该包用于此任务,但您需要添加一些配置,以便它仅隐藏测试…

我相信,您可以将该包用于此任务,但是您需要添加一些配置,这样它将只隐藏测试…

根据您的建议,我再次查看了HideShow,它看起来确实可以让它以我想要的方式工作。谢谢@JoostDiepenmaat当你有一个解决方案时,你能分享你的解决方案吗?也可以看看hideshowvis。@event_jr我找到了一个解决方案,请参阅我文章底部的更新。根据你的推荐,我再次看了HideShow,看起来我确实可以让它按我想要的方式工作。谢谢@JoostDiepenmaat当你有一个解决方案时,你能分享你的解决方案吗?也可以看看hideshowvis。@event_jr我找到了一个解决方案,请参阅我文章底部的更新。