【发布时间】:2011-05-29 15:50:37
【问题描述】:
我希望 PgUp 和 PgDn 键只是向上或向下移动显示文件的内容,但光标(point 在 Emacs Lingo 中)应该留在原处(在屏幕上)。不幸的是,默认的 Emacs 行为是不同的。默认行为很难描述,但如果您按 PgDn 后按 PgUp,您最终不会回到之前的位置 (!)。
这不是一个新问题,在EmacsWiki 中有一个很好的解决方案,叫做sfp-page-up and sfp-page-down。
(defun sfp-page-up ()
(interactive)
(setq this-command 'previous-line)
(previous-line
(- (window-text-height)
next-screen-context-lines)))
然而,与cua-mode 结合使用时存在一个问题,它提供(除其他外)移位选择(按 Shift 和光标移动键,如 ← kbd> 或 PgDn 开始突出显示选定区域):
cua-mode 无法识别重新定义的 PgUp/PgDn 键,即它们不会开始选择。解决方法是先按 ↑ 或 ↓ 键,然后按 PgUp/PgDn 继续。
如何让cua-mode 与sfp-page-up/down 配合得很好?
【问题讨论】:
标签: emacs keyboard-shortcuts cua cua-mode