【发布时间】:2009-06-04 12:46:34
【问题描述】:
如何在 emacs 中使用换行(自动滚动?)? 这样不适合屏幕的部分就不会显示,而是显示在下一行?
【问题讨论】:
如何在 emacs 中使用换行(自动滚动?)? 这样不适合屏幕的部分就不会显示,而是显示在下一行?
【问题讨论】:
您所描述的听起来更像是换行而不是滚动。如果这就是您真正感兴趣的,它由缓冲区局部变量truncate-lines 控制。您可以使用自定义来全局设置它,或使用挂钩。例如,我曾经用这个来防止换行:
(add-hook 'dired-mode-hook (lambda () (setq truncate-lines t)))
【讨论】:
toggle-truncate-lines 允许您将其关闭(正如 Peter 在 this post 的评论中指出的那样)
我已将其映射到功能键:
(define-key global-map [f5] 'toggle-truncate-lines)
除非 truncate-partial-width-windows 设置为 nil(来自我的 .emacs),否则它不会在垂直分割(部分宽度)窗口中工作:
(setq-default truncate-lines t)
(setq truncate-partial-width-windows nil) ;; for vertically-split windows
【讨论】:
您也可以从菜单中更改它。
选项->此缓冲区中的换行->截断长行
或者如果你想全局使用这个函数,你可以使用函数
全局视觉线模式
【讨论】:
global-visual-line-mode 功能。我在 GNU 22.3.1 上,它更新了吗?
我更喜欢这些设置:
;; disable line wrap
(setq default-truncate-lines t)
;; make side by side buffers function the same as the main window
(setq truncate-partial-width-windows nil)
;; Add F12 to toggle line wrap
(global-set-key (kbd "<f12>") 'toggle-truncate-lines)
【讨论】:
(setq default-truncate-lines t) 不起作用,但 (setq-default truncate-lines t) 起作用。 Emacs 27.2.
;; Wrapping the lines
(global-set-key (kbd "C-x p") 'toggle-truncate-lines)
这适用于 Emacs-27.1
【讨论】: