我可以将emacs(非窗口)中的长行分成下一行吗?

时间:2011-02-02 20:58:49

标签: emacs split line

enter image description here

使用emacs(非窗口),当终端宽度很窄时,我会在行尾看到'$'标记。有没有办法将长行打破到下一行而不是显示'$'标记?

ADDED

M-x自动填充模式适用于文本模式,但使用org-mode时,$ mark仍然保留自动填充模式。

6 个答案:

答案 0 :(得分:10)

您可以通过M-x fill-paragraphM-x fill-region获取emacs,将长行划分为多个较短的行。您也可以使用M-x auto-fill-mode将其设置为默认行为。

答案 1 :(得分:9)

您可以使用M-x set-variable truncate-lines nil停用线截断。

您也可以在.emacs (setq-default truncate-lines nil)中输入默认设置。

答案 2 :(得分:2)

您可以自定义word-wrap变量以直观地换行。这应该类似于longlines-mode,除非它使用缓冲区宽度而不是填充列进行包装。

您也可以使用visual-line-mode来启用自动换行,还可以“重新定义简单的编辑命令以对视线进行操作,而非逻辑行”,这可以解决nominolo提到的问题。

答案 3 :(得分:1)

truncate-lines设置为nil会打破长行,但如果按C-ndownarrow,光标将跳转到下一个物理行,而不是下面显示的位置光标。

使用Tex时,我通常会打开M-x longlines-mode。它有它的怪癖,但它运作得相当好。

答案 4 :(得分:0)

为所有缓冲区设置:

(setq truncate-lines nil)

仅为特定模式(例如org-mode)设置:

(add-hook 'org-mode-hook (lambda () (setq truncate-lines nil)))

答案 5 :(得分:0)

仅在当前会话中使用命令

M-x toggle-truncate-lines