如何在 Emacs ansi-term 中向上滚动



我一直在谷歌上搜索并查看Emacs内置帮助,但我还没有确定如何在Emacs ansi-term中向上(或向下)滚动。

我在iTerm2中使用Emacs 23.3.1,OS X。谢谢!

编辑:我注意到人们给我的大多数建议在 ansi 术语中不起作用,但在 eshell 中确实有效。从那以后,我搬到了eshell。

通常,如果您不需要全屏终端仿真,shelleshell是更好的选择。

但是,如果您决定坚持使用 ansi-term ,按 C-c C-j 进入线路模式。 然后,您可以使用通常的光标移动键正常移动。 按 C-c C-k 返回字符模式以与终端交互。

或者,您可以使用 C-c C-v 一次向后滚动屏幕,只需输入文本即可滚动回终端输入点。

查看 Emacs 文档 关于 term-mode (其中大部分同样适用于 ansi-term ) 以获取更多信息。

Shift-page up/down(在Emacs语言中,S-prior/S-next)将使用默认绑定工作。

(虽然正常的C-h m/C-h b无法在此模式下查看模式信息和绑定,但您仍然可以使用 C-c M-x describe-mode/describe-bindings ,或者根据您的设置,使用 F1帮助键而不是 C-h

先安装邪恶模式,按C-z切换到vim键绑定。

  • 您可以使用C-fC-b上下滚动
  • 可以使用20%跳转到缓冲区的前 20%
  • 可以使用/?#*来搜索缓冲区中的文本。
  • 所有 grep/filter 命令现在都可用(发生、滑动、掌舵俯冲......仅举几例)
  • 您可以缩小/加宽缓冲区
  • 你可以拉动文本

你试过吗:向上翻页,向上箭头,Ctrl-V,Alt-V

对于 ansi-term,我.emacs中有这个:

(add-hook 'term-mode-hook
          (function
           (lambda ()
             (define-key term-raw-map [?C-c prior] 'scroll-down)
             (define-key term-raw-map [?C-c next] 'scroll-up))))

然后我可以使用C-c pgupC-c pgdn滚动。

我遇到了同样的问题,但使用多术语 (zsh),并且在阅读了 @muffinista 的回复后(C-v对我不起作用),但Alt-v工作去了 1 页,之后您可以使用正常的C-pC-n上下滚动。

这对我有用,但这在很大程度上取决于您使用的术语和您可能拥有的键绑定。

上下是Ctrl-P和Ctrl-V。 这里有一大堆清单

最新更新