在Emacs中包装(填充)一长串字符串(clojure-mode)

时间:2014-12-02 19:48:00

标签: emacs clojure textwrapping

在Emacs中(在Clojure模式下),我想填写这个:

(def items
  ["freezing" "drum" "lean" "deputy" "deputy" "session" "critic" "ace" "rat" "racket" "trap" "inconvenient" "guidance" "ruins"])

所以它看起来像这样:

(def items
  ["freezing" "drum" "lean" "deputy" "deputy" "session" "critic" "ace"
   "rat" "racket" "trap" "inconvenient" "guidance" "ruins"])

我正在寻找一个能够做到这一点的功能。我试过了,没有成功:

  • M-q(例如paredit-reindent-defun
  • C-u M-q(例如paredit-reindent-defun
  • M-x fill-paragraph
  • C-u M-x fill-paragraph

2 个答案:

答案 0 :(得分:3)

fill-region-as-paragraph就是你想要的。

在填充之前,您可以选择使用库pp.el中的函数进行漂亮打印(到字符串或缓冲区)。漂亮的打印不会填充,但如果你展示一个Lisp sexp,它将在线宽和可读性方面产生很大的不同。

答案 1 :(得分:1)

lispy-fill可以做到这一点。

在下面的gif中,fill-column位于70,并且:

  • M-q 填充
  • f h 移动光标
  • O 取消填写

lispy-fill