【问题标题】:How to interpret this Emacs magit help screen?如何解释这个 Emacs magit 帮助屏幕?
【发布时间】:2015-02-10 16:29:48
【问题描述】:

我开始了解 Emacs 的 magit 包。集成很好。但是我很困惑如何获得帮助。

我创建了一个临时存储库,向其中添加了一个文件 test.org 并运行了命令 magit-status。然后我点击? 寻求帮助。我认为这意味着它会在 magit-status 屏幕中显示可供我使用的命令。屏幕如下所示:

底部是可用的 magit 操作。注意它是怎么说的s: Show Status。但是s 不会那样做。它暂存一个文件。并且没有u 键,但它会取消暂存文件。

我是误读了这个还是我调用了错误的帮助屏幕或其他什么?

【问题讨论】:

  • 你的大写锁定是偶然按下的——大写SStage All吗?见第 1622 行:github.com/magit/magit/blob/master/magit.el
  • 不,我查过了。不是大写锁定。
  • 那么,magit-status-mode-map 可能在帮助屏幕期间处于活动状态——按下小写字母 s 将在上面链接的第 1644 行触发 magit-stage-item源代码。如果是这样的话,这听起来像一个错误。 . .该库非常受欢迎,另一位论坛参与者可能很快就会得到答案。将第 1644 行从小写 s 更改为大写 S 可能会解决问题,然后重新编译并重新启动 Emacs。
  • 我有点误会了。我按? 而不是h? 键绑定到 magit-key-mode-popup-dispatchh 绑定到 magit-key-mode-popup-diff-options。我不确定这是否有所不同,但即使在h 键帮助屏幕中也没有描述“stage”和“unstage”。
  • 我不知道为什么会发生这种情况,但似乎在此帮助屏幕打开时点击s确实运行“查看状态”命令(即@987654344 @),而不是“阶段”命令。

标签: git emacs magit


【解决方案1】:

magit 提供了一种适合基于键盘输入的上下文菜单形式。因此,键绑定取决于您所在的菜单。有点违反直觉,? 不会打开特定于模式的帮助(像往常一样使用C-h m)。 ? 通过调用 magit-key-mode-popup-dispatch 打开顶级上下文菜单。在此菜单中时,可用的键绑定与调用 magit-status 时的键绑定不同。在状态模式下,su 绑定到 magit-stage-itemmagit-unstage-item。由于它们在某一点上作用于项目,因此在其中一个上下文菜单中将键绑定到它们是没有意义的。考虑到这一点,在? 启动的上下文菜单中将s 绑定到"Show Status" 是很自然的。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多