我有一个很长的文本文件。在一段时间之前编写和保存的文件上“撤消”M-q
(fill-paragraph)的简单方法?
例如,我想改变这个:
他们要带我走了, HA-HAAA!他们来接我 离开,ho-ho,嘻嘻,ha-haaa
到有趣的农场。生命在哪里 一直很漂亮,我会 很高兴看到那些漂亮的年轻人 他们干净的白色外套,他们是 来带我走吧哈哈!!!!!!
对此:
他们要带我走了, HA-HAAA!他们来接我 离开,ho-ho,嘻嘻,ha-haaa
到有趣的农场。生命在哪里 一直很漂亮,我会 很高兴看到那些漂亮的年轻人 他们干净的白色外套,他们是 来带我走吧哈哈!!!!!!
答案 0 :(得分:21)
使用我的.emacs中的以下内容:
(defun unfill-paragraph ()
(interactive)
(let ((fill-column (point-max)))
(fill-paragraph nil)))
(defun unfill-region ()
(interactive)
(let ((fill-column (point-max)))
(fill-region (region-beginning) (region-end) nil)))
我不能相信,我在几年前用Google搜索过。
答案 1 :(得分:9)
您可以将fill-columnn
设置为一个非常大的数字,并填写。
C-u 10000 C-x f M-x fill-individual-paragraphs
或者您可以使用一些自定义功能:
(defun refill-paragraphs-to-be-one-line ()
"fill individual paragraphs with large fill column"
(interactive)
(let ((fill-column 100000))
(fill-individual-paragraphs (point-min) (point-max))))
答案 2 :(得分:1)
当我在emacs 24.4.1中寻求M-Q(而不是M-q)的帮助时,我得到了这个:
M-Q (translated from <escape> Q) runs the command unfill-paragraph, which is an
interactive Lisp function in `init-util.el'.
It is bound to M-Q.
(unfill-paragraph &optional REGION)
Takes a multi-line paragraph and makes it into a single line of text.
答案 3 :(得分:1)
C-x f 100000 M-q
这恰好填充了一个段落。
说明:
C-x f Number
:为该列设置大量(100 000)个字符。M-q
:调用fill-paragraph
命令。 (可替代多个段落:M-x fill-individual-paragraphs
)此后,请不要忘记将列宽恢复为先前的值(此处为78)。
C-x f 78