如何在Emacs中自动换行?

Yuf*_*fei 60 emacs

如何配置emacs以便换行不会在单词中间中断?

Kir*_*sey 72

如果要模拟记事本等编辑器的行为,可能需要打开视觉线模式.虽然设置自动换行将导致换行在单词边界处,但您在一行上执行的任何操作(例如,向上/向下移动或查杀)仍将尊重换行符.可视线模式将每条显示行视为最后有一个换行符.

(visual-line-mode t)
Run Code Online (Sandbox Code Playgroud)

要添加到.emacs文件中的行:

(global-visual-line-mode t)
Run Code Online (Sandbox Code Playgroud)

  • 我正在使用`visual-line-mode`,但是因为`kill-line`的方式而烦恼,然后只有在包装上被杀死,所以对于长行的文本(即段落!)我不得不反复调用它删除该行.所以现在我用`(setq-default word-wrap t)`代替; 这可以实现包装,但是`kill-line`仍然会杀死整条线.当然,你可能不同意这是首选行为,但对我来说肯定是这样. (18认同)

Doo*_*day 39

你能指出你在说什么样的包装吗?

Mx toggle-truncate-lines disable允许您禁用视觉断行.

Mx自动填充模式 + Mq允许您对真实的预先存在的段落进行自动换行.

  • `Mq` 运行 `fill-paragraph`,它将包装已经存在的文本行。变量“fill-column”决定换行文本的行长度。 (2认同)

hua*_*uan 18

将其添加到您的init文件中:

(setq-default word-wrap t)
Run Code Online (Sandbox Code Playgroud)

或者,按下C-h vword-wrapEmacs并按照末尾附近的"自定义"链接.


小智 9

我最近才发现了longlines-mode(我想我正在浏览emacs Info文档).它像其他UI编辑器的自动换行功能一样包装.当我正在阅读或编写没有换行符的自由文本(一个单词)而没有使用时发生的丑陋的中间词包装时,它尤其有用M-x toggle-word-wrap.

http://www.emacswiki.org/emacs/LongLines

我的配置:

(setq longlines-wrap-follows-window-size t)
(global-set-key [(control meta l)] 'longlines-mode)
Run Code Online (Sandbox Code Playgroud)

  • 根据维基,长线模式被弃用,有利于视线模式(在下面的安东答案中提到. (2认同)