我已经习惯了scroll-conservatively
使 Emacs 的垂直滚动行为更加流畅。水平滚动仍然很糟糕。屏幕会跳转很多列,我经常会忘记自己在哪里。
可以让这个过程更顺利一些吗?
答案1
似乎没有直接等效scroll-conservatively
于水平滚动的功能,但自定义hscroll-step
(也许还有hscroll-margin
)应该至少产生接近相同行为的效果。从手册:
该变量
hscroll-margin
控制在自动滚动发生之前点与窗口左边缘和右边缘的距离。它以列为单位。例如,如果该值为 5,则将点移动到边缘 5 列以内会导致水平滚动远离该边缘。该变量
hscroll-step
决定当点太靠近边缘时,窗口要滚动多少列。默认值为零,表示将点水平置于窗口的中心。正整数值指定要滚动的列数。浮点数指定要滚动的窗口宽度的分数。
答案2
这与使用触控板滚动无关,但谁知道呢:
(global-set-key (kbd "<mouse-7>") '(lambda ()
(interactive)
(scroll-left 4)))
(global-set-key (kbd "<mouse-6>") '(lambda ()
(interactive)
(scroll-right 4)))
如果您想知道 Emacs 认为您的水平滚动“按钮”是什么,请尝试C-h k
( describe-key
),然后使用您的水平滚动。因此,在我当前的设置中,Emacs 报告<mouse-7>
和<mouse-6>
。我最初使用(scroll-left 1)
,但将其替换为4
以获得更快的滚动速度。