Vimium: 添加临时打开/关闭页面的vimium的功能

创建于 2011-12-30  ·  28评论  ·  资料来源: philc/vimium

如果我可以做一个组合键来暂时禁用当前页面上的 vimium,那就太好了; 此外,在 vimium 无法运行的设置中有一个可编辑的域列表会很好。

最有用的评论

@smblott-github 据我所知,请求的原始功能仍然不可用。 如果不重新加载页面,则无法在当前禁用的页面上启用 vimium。 能够通过单击 vimium 扩展图标来切换它会很有用。

所有28条评论

在 vimium 不运行的设置中已经有一个可编辑的域列表。

关于暂时禁用 vimium,输入“i”(插入模式)是否符合要求?

@philc

我对其进行了测试,插入模式绝对可以在 GMail 等超级 AJAXed 网站上完成这项工作。 谢谢!

@DeadDork您是否发现 GMail 有时会导致 Vimium 离开插入模式? 例如,假设您打开了两个聊天窗口。

点击“i”进入插入模式
输入 C-。 (关注下一个窗口的 GMail 快捷方式,在本例中为聊天 1)
输入 C-。 (焦点聊天2)

此时对我来说,不再调用插入模式。 任何想法为什么会发生这种情况?

GMail 的更改焦点字段是否以某种方式触发了取消插入模式的“转义”事件?

同样,大多数时候(但不总是)在插入模式下点击“/”跳转到 GMail 搜索栏会使我退出插入模式。

@philc如果除了插入模式之外,我们还有另一个可映射的击键(可能是一个非常花哨的和弦),它将关闭 vimium 并保持关闭,直到它被重新打开,我会喜欢它。 这会让我在没有 vimium 的情况下在 GMail 中使用转义和类似的东西,有时会取消插入模式。 这似乎类似于 #186

插入模式的解决方法有效,但如果有一个禁用功能会非常好。 Firefox 上的 Vimperator 使用 Shift+Esc,这对于像 Google 文档这样的网站来说非常方便。 Shift+Esc 打开和关闭 Vimperator,这对 Vimium 来说非常有用,特别是对于使用 Esc 作为热键的网站(HTML5 游戏等)。

@beatgammit这似乎是一个非常不错的功能。 我想知道你需要重构多少代码......

@dankessler我不熟悉 vimium 代码库,所以我不知道。 它应该很简单:

if (shift && escape) enabled = !enabled;
if (!enabled) return;

我也不熟悉 Chromium 扩展,所以它可能比这更复杂......

我查看了代码,发现了一个isEnabled标志。 当我有时间并且没有其他人实现它时,我会尝试实现该功能。

刚刚获得了具有此功能的 PL: https :
希望你喜欢!

+1

我阅读了各种重复的问题,主要用例之一似乎是在 Gmail 上使用它。 我们将很快发货#491; 这是否会减轻对这种全局切换的需求,或者即使使用特定于站点的映射,切换仍然很重要?

@philc

不过,它不仅仅是像 gmail 这样的网站。 我对编写 WebGL 游戏很感兴趣,所以我玩了很多演示。 这些演示经常出现在我只会访问一次的站点上,因此手动排除这些站点很乏味,而且不完全是我想要做的。 但是,暂时禁用可以很好地解决问题。

除了游戏之外,网站也变得越来越复杂。 我在嵌入式平台上开发 HTML5 应用程序(包含快捷方式),因此我经常需要在不同的 IP 地址上访问同一个应用程序。 就像游戏一样,为这些 IP 地址中的每一个添加例外需要付出太多的努力,我通常会尝试通过进入插入模式来勉强通过(这不是真正的解决方案)。

@philc
谷歌文档上的同样问题。

当然不仅仅是gmail。 任何网站都可以绑定自定义快捷方式。 此外,其他 Chrome 插件能够映射任何这些键。 例如, Vimsert插件允许您在任何文本区域中打开 vim 编辑器。 这不适用于 Vimium,因为两者都绑定到相同的键。 我无法想象用户为每个可能有他们可以填写的表单的站点禁用 Vimium,但我可以看到用户在使用 Vimsert 之前只需按 shift + escape 并禁用 Vimium。 这似乎不太可能发生,但在我看来,Vimium 用户似乎可能拥有其他插件,这些插件提供了更大的“类似 vim”的功能,并且会遇到这些类型的冲突。

这只是一个例子,但我相信还有很多其他例子。 最重要的是,我认为假设用户有先见之明知道 Vimium 何时会与站点或插件发生冲突是没有意义的。

@tandroid1。 也许在这里检查?

编辑:啊,好的。 我看了一下vimsert。 你的问题是Escape ,是吗?

@smblott-github 是的,转义键是问题之一,但由于它使用 ace vim 编辑器,我想大多数键绑定都会发生冲突。

@tandroid1您链接的扩展程序看起来像使用<textarea> ,因此当它获得焦点时我们会自动进入插入模式。 insert more 中唯一的绑定是<esc> / <c-[> ,所以这应该是唯一(但重要的)冲突。

@philc @idf即使谷歌文档是一个排除页面:
https?://docs.google.com/*排除了*键,转义仍然无法按预期工作。 禁用 vimium 后,此行为恢复正常。

@drwl。 要完全禁用 Vimium,您应该将“Keys”留空。 那会是你的问题吗? 如果没有,也许打开一个新问题并解释您期望发生的事情以及实际发生的事情。

@smblott-github 排除 * (所有键)与将其保留为空白会禁用页面上的 Vimium 是很有趣的行为。 尽管如此,让它空白工作!

太好了,@drwl。

我们可能应该关闭这个问题。
它涵盖了自胎面开始以来已实施的各种功能和问题。
如果特定功能存在特定问题,请打开一个新问题。

感谢@drwl @smblott-github 的修复。

这个修复什么时候会有新的 vimium 版本?

@idf如果您想为 Google 文档关闭

screen shot 2015-08-18 at 4 04 00 pm

否则你是在问别的吗?

@drwl是否有一个组合键来切换 vimium 而不是完全通过 URL 禁用它。 我试过 ESC,它在谷歌电子表格中有效,但在谷歌 word 中无效。

即使它禁用了 vimium 的 css 和 js,也会在开发工具中向我的网络选项卡发送垃圾邮件。

即使它禁用了 vimium 的 css 和 js,也会在开发工具中向我的网络选项卡发送垃圾邮件。

@philc之前提出过这个问题……#1838。

啊,好的,谢谢!

@smblott-github 据我所知,请求的原始功能仍然不可用。 如果不重新加载页面,则无法在当前禁用的页面上启用 vimium。 能够通过单击 vimium 扩展图标来切换它会很有用。

另一个+1。 由于这个问题,我刚刚再次卸载了 vimium ......插入模式工作正常,但它显示“插入模式”吐司。 此外,在制作我自己的 webGL 游戏时非常烦人。 一个简单的全局临时禁用会让我高兴(我猜实际上是更快的卸载/重新安装,保留设置)! 我会尝试我猜的排除技巧..但对于一个常见的用例来说,它是相当重量级的。

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

相关问题

haroldcarr picture haroldcarr  ·  4评论

umutyazgan picture umutyazgan  ·  4评论

jkbbwr picture jkbbwr  ·  3评论

finalfantasia picture finalfantasia  ·  3评论

everyonesdesign picture everyonesdesign  ·  3评论