![更新:完全有效的解决方案(参见答案底部)](https://linux22.com/image/1444744/%E6%9B%B4%E6%96%B0%EF%BC%9A%E5%AE%8C%E5%85%A8%E6%9C%89%E6%95%88%E7%9A%84%E8%A7%A3%E5%86%B3%E6%96%B9%E6%A1%88%EF%BC%88%E5%8F%82%E8%A7%81%E7%AD%94%E6%A1%88%E5%BA%95%E9%83%A8%EF%BC%89.png)
如果按下H
和L
分别将您带到上一页和下一页(在原始 Firefox 上按 Alt+左/右键),那么在新选项卡中打开上一页/下一页的键是什么?
我想要实现的功能就像在地址栏旁边的左右箭头上单击鼠标中键一样,最好不需要访问历史记录(即隐私浏览模式)如果可能的话,有没有办法对:ju
(跳转)列表中的其他项目执行此操作?
注(2015/05/15):我前段时间切换到了 Vimperator,但仍然缺少“在新选项卡中打开下一页/上一页”的功能,不过当我再次打开 Pentadactyl 时,下面标记的解决方案完美地起作用了。
注(2015/05/17):pyrocrasty 在解决方案中添加了 Vimperator 版本,效果也很好。
答案1
更新:完全有效的解决方案(参见答案底部)
内置解决方案:坏了吗?
实际上有一个Ctrl+键T,用于在新选项卡中执行下一个映射。但是,它对我来说根本不起作用。我不知道为什么。
还有 ex 命令tab
,它对下一个 ex 命令执行相同的操作。但是,它似乎无法与历史命令配合使用。它会复制选项卡,但不会返回。
两步解决方案
您可以通过组合两个命令来实现这一点:
tabduplicate
(或tabdu
)复制当前选项卡,保留历史记录。您可以通过在 .pentadactylrc 文件中添加如下行将其绑定到某个键:
map -g user -ex C :tabduplicate
H并且L像您提到的那样来回反复。
因此,如果您使用上面的示例绑定,则可以用来CH在新选项卡中打开上一页。
笔记:新标签的位置。
一个重要的警告是,根据您的设置,此方法可能会在与右键单击历史记录按钮不同的位置打开新选项卡。C如上所述,命令将在结尾标签栏而不是当前标签之后。
如果你希望标签页在当前标签页旁边打开,则可以使用扩展程序来打开全部当前选项卡后的新选项卡。Tab Mix Plus是一个受欢迎的选择。
首次尝试单命令解决方案。
我尝试用一个命令复制一个标签,然后在其中向前或向后移动时遇到了麻烦。但是,在后台复制一个标签,然后在其中向前或向后移动很容易原来的标签。
这与以下情况基本相同:两个标签的位置互换了:您会回到历史记录中当前所在的位置,并且无论新标签页打开与否,标签页都会保留其原始状态。如果您使用扩展程序使所有新标签页都在当前标签页旁边打开,那么您可能只会考虑这一点。
map -g user -ex [t :execute "tabduplicate! | back"
map -g user -ex ]t :execute "tabduplicate! | forward"
然后,您可以在新选项卡中打开上一页[t(如果有可用的单字母键绑定,则可以使用)。
更新:完全有效的 Javascript 解决方案
我现在用 Javascript 命令实现了这个功能。我之前天真的尝试的问题是,它们试图在历史记录可用之前返回历史记录。经过一番研究,我使用事件监听器解决了这个问题。
代码位于这个要点(更新:vimperator 版本)。要么直接将其包含在您的 .pentadactylrc 文件中,要么单独保存(最好在 .pentadactyl 目录中)并从 .pentadactylrc 中获取它。例如。
:source "~/.pentadactyl/backt-forwardt.penta"
然后您可以使用gh和gl来实现与单击鼠标中键后退/前进按钮相同的效果。