我很熟悉并经常使用C-l
(recenter-top-bottom
)
将当前行移至窗口中心, 顶部和底部,先后。
我希望有一个等效命令将当前的列连续移动到窗口中心,左右边框。内置或Elisp的片段。
答案 0 :(得分:11)
你走了:
(defun my-horizontal-recenter ()
"make the point horizontally centered in the window"
(interactive)
(let ((mid (/ (window-width) 2))
(line-len (save-excursion (end-of-line) (current-column)))
(cur (current-column)))
(if (< mid cur)
(set-window-hscroll (selected-window)
(- cur mid)))))
明显的绑定(来自obvio171)是:
(global-set-key (kbd "C-S-l") 'my-horizontal-recenter)
答案 1 :(得分:3)
如果你移动到一个选定的列并点击C-x C-n,那么命令C-n和C-p将进入该列,直到你点击C-u C-x C-n来关闭该行为。
你正在寻找的一种穷人版本。