Vimari: 点击逃生退出全屏

创建于 2018-08-14  ·  9评论  ·  资料来源: televator-apps/vimari

作为一个几乎只在全屏/分屏模式下使用 safari 的人,我发现自己在使用 vimari 时经常意外退出全屏,例如,如果我想在写这样的评论后返回正常模式以点击链接提示中的提交键模式。

这可以通过事件侦听器阻止默认行为来避免。

粗略的例子:

function disable_esc_exit(window){
    const ESC_KEY = 27;
    const KEYPRESS_EVENT = "keypress";

    window.addEventListener(KEYPRESS_EVENT, 
        event => event.keyCode === ESC_KEY && event.preventDefault()
    );
}

... 
disable_esc_exit(window);
feature request

最有用的评论

这里是什么状态? 这个错误使得这个扩展在全屏模式下几乎毫无用处。

所有9条评论

嗨@Hultner。 我不明白你对用例的解释 - 你能提供更详细的解释,或者一个 gif 吗? 谢谢。

@simeg好的,我将列出重现步骤。

问题

  1. 用 vimari 打开 Safari
  2. 进入全屏
  3. 使用 vimari 浏览网页
  4. 在某个时候按Esc

这会触发 Safari 退出全屏模式,并伴有破坏性动画。
此外,如果用户在分割全屏模式下运行另一个电影的窗口,他们需要再次手动重新排列分割窗口,迫使用户使用他们的鼠标或其他指针设备。

建议的解决方案

阻止Esc 的默认行为从而防止用户由于重叠键绑定而意外退出全屏。

Extra ,通过扩展设置中的切换使该功能可选,以防任何用户实际上依赖于默认行为。

我希望现在有点清楚,如果解释不够,我会尝试提供一个 gif。
我不熟悉这样的屏幕录制软件,如果您或其他任何人对哪种软件适合我的目的有建议,我很想听听您的意见。

感谢您花时间阅读我的意见。

@Hultner ,感谢您的详细解释! 因此,如果我理解正确的话,问题是当您在全屏模式下使用 Safari 并使用 vimari 导航时,不小心点击了 Esc 键

或者,当您处于全屏模式时,按一下 esc 键会退出全屏模式吗? 看你的描述还真看不出来

无论如何,我制作了这个 GIF 来证明预期的正确行为。 我用 vimari 浏览维基百科,我可以按 esc 完全退出链接模式。 但是当我不在某些 vimari 模式下按 esc 时 - 它退出全屏。 我正在运行 1.13 版。

vimari_safari_fullscreen

让我知道确切的问题,我们将从那里解决它。

有两种情况会触发此行为

1) 我不小心按了多次 Esc 或由于肌肉记忆
2) 我编辑了一个输入字段,按 Esc 将插入模式退出到正常模式。 写这条评论时,我的直觉是输入所需的文本,按 Esc,进入链接目标模式,触发 [评论] 按钮。

这两种情况同样具有破坏性。

再次感谢您阅读并考虑我的意见。

谢谢@Hultner ,我现在明白了。 我可以看到这很烦人和具有破坏性,我认为有一个选择是有道理的。 但是,我在处理当前版本的扩展程序(由于它与 11 以下的任何 Safari 版本不兼容这一事实很快将被弃用)和新版本的扩展程序之间徘徊,但仍然缺乏一些基本的东西喜欢设置。

我认为实现这一点不会太难,因为到目前为止你是唯一想要这个功能的人,我建议你自己做。 我可以帮助审查和测试,但我不会编写任何代码。 我很抱歉,但我必须优先考虑我的时间。

那是什么状态? 我主要是在寻找退出“插入模式”的方法。 流程如下:

  1. 访问例如GitHub
  2. 点击i进入“pass-through”或“insert”模式(例如使用GitHub y快捷方式扩展URL)
  3. <Esc>返回“正常模式”

在某些情况下,解决方法是使用^[ ,但在我的键盘(40% 普朗克)上,它比仅使用<Esc>更麻烦。

@hauleth我没有研究它,我不知道 Vimari 是否正在积极开发中。 目前,我希望基于 chrome 的 vim 扩展能够在下一个 Safari 版本上运行,因为它们看起来更成熟且功能更完整。 我确实喜欢 vimari,没有它我将无法使用 Safari 作为我的日常浏览器,但它仍然缺少 Chrome 和 Firefox 中它的兄弟姐妹的很大一部分功能。

这里是什么状态? 这个错误使得这个扩展在全屏模式下几乎毫无用处。

我在同一条船上——这基本上迫使我在使用扩展和全屏之间做出选择:(

此页面是否有帮助?
0 / 5 - 0 等级