我知道自动填充emacs,这很好,我希望文本在特定宽度(例如编码时)有换行符时使用它。但是,在编辑和阅读文本时,我不想重新格式化文本(M-q
)并插入换行符,因此在导出文本时看起来很奇怪,例如到电子邮件或Microsoft Word。
emacs'截断行'工作的工具?似乎是但我无法弄清楚如何设置截断线的宽度,它似乎只能截断屏幕宽度 - 这个或其他模式有设置吗?
(我使用的是spacemacs,但这不应该有很多相关性)
答案 0 :(得分:1)
有一个代码解决了在emacs交换here中截断缓冲区少于wincow的wicth的问题。
看看@JeanPierre的回答。它使用set-window-margins
查看emacs手册here。
这是一个交互式功能,因此请在执行评估后使用M-x my/change-window-width
来调用它。
(defun my/change-window-width (width)
"Adjust margins so that window is centered"
(interactive "NWindow width: ")
(if (= 0 width)
(set-window-margins nil 0 0)
(let* ((cur-width (window-width))
(cur-m (window-margins))
(cur-l (if (and cur-m (car cur-m)) (car cur-m) 0))
(cur-r (if (and cur-m (cdr cur-m)) (cdr cur-m) 0))
(lr (- (+ cur-l cur-r cur-width) width))
(left (/ lr 2))
(right (if (= 0 (% lr 2)) left (1+ left))))
(set-window-margins nil (max left 0) (max right 0)))))
它是visual-line-mode
中的函数的变体,请参阅doc here
要仅截断缓冲区的一部分,它看起来像填充列
答案 1 :(得分:0)
我通常使用
M 72 M-x set-fill-column
打破72列的行。这仍然会妨碍你不要将导入到Word"但问题是。如果您使用特定格式保存文件(例如,使用M-x xml-mode
),那么我相信这可以帮助您解决导入问题。