由于某种原因,Firefox 的 vimperator :tabopen 命令突然不起作用。 :open 仍然有效。有人知道如何修复这个问题吗?
答案1
更新 #2:修复已发布
- 重新安装 Vimperator
更新:修复已完成
修复已完成并贡献给 Vimperator,新版本已使用它构建,但在发布之前需要 Mozilla 的验证,因此需要时间。
如果你想要它,请关注本期评论。我自己还没有这样做过,所以(暂时)不会以我的名义重新发表。
不起作用的原因
Firefox 改变了其渲染引擎处理 JS 的方式,并且 Vimperator 需要进行调整(例如,旧的生成器函数 - 那些yield
- 现已被删除)。
标签页打开解决方法
- 打开你的
.vimperatorrc
文件(GNU/Linux/home/username/.vimperatorrc
:) - 添加此项(由于 - 我认为 - << 导致的奇怪格式,导致我认为我试图在这里做一些令人讨厌的工作并且不显示部分代码):
" Example keybinding: xt
nmap xt :extraTab<SPACE>
command! extraTab -nargs=1 -description "Open an extra tab" :js extraTab("<args>");
:js <<EOF
function extraTab(args) {
liberator.open(args, liberator.NEW_TAB)
}
EOF
真正的解决方案
需要tabs
重新进行定义,因为现在不会因此而使做很多与标签相关的事情变得困难。
它需要重新编写 Vimperator 代码并进行更新,因此请去对问题进行点赞(不要评论,只需对原始帖子进行点赞):
答案2
许多人都遇到过这个问题。如果你等不及修复发布,有一个解决方法(至少对我来说有效)https://github.com/vimperator/vimperator-labs/issues/568#issuecomment-275755483
答案3
我将其映射t
到Control+t + open
.vimperatorrc 中,如下所示:
nnoremap t <C-t> o
nnoremap T y <C-t> o <C-v>
这模仿了旧的 tabopen 命令。
您还可以对 Jack Doe 所演示的其他命令执行此操作。
答案4
在文件“.vimperatorrc”或“_vimperatorrc”中添加此行:
nnoremap t <C-t>
因此,当您按下“t”时,它会在 Firefox 中打开一个新选项卡并让您在 URL 栏中输入内容,而不是使用“:tabopen”。
我是 Windows 用户,因此我在以我的名字命名的文件夹(与包含“我的文档”的文件夹相同)中创建了“_vimperatorrc”文件。
PS: 如果你set gui=nonavigation
的 vimperatorrc 中有这个选项,那么这个方法将不起作用,你可以改用
nnoremap t <C-t>:open
后面有一个空格open
。
另外,对我来说“r”也停止刷新,“d”也停止关闭标签,所以下面的几行修复了这个问题。
nnoremap r <C-r>
nnoremap d <C-w>