![方法 1:常规](https://linux22.com/image/1455885/%E6%96%B9%E6%B3%95%201%EF%BC%9A%E5%B8%B8%E8%A7%84.png)
我的标签:
[1] [2] [3] [4] [5] [6] [7] [8] [9]
设想
我正在研究第五在 Firefox 上打开选项卡并寻找一种方法第五和第六而不是之后第九t或将完成o
我做了大量的研究,在进行研究的同时,我倾向于保持多个(神圣的)标签打开,有时我倾向于暂时将相关的标签放在一起。如果你想知道为什么。
答案1
方法 1:常规
以下代码定义了一个命令,用于在当前选项卡旁边的选项卡中打开 URL。您可以将其放在.vimperatorrc
文件中,也可以将其保存为单独的文件并在 中获取.vimperatorrc
。
" Defines commands to open new tab to right of current tab
" Example keybinding: xt
nmap xt :newtabright<SPACE>
command! newtabright -nargs=1 -description "Open new tab to right of current tab" :js newTabRight("<args>");
:js <<EOF
function newTabRight(args) {
var origOrd = gBrowser.selectedTab._tPos;
var numTabs = tabs.count;
liberator.open(args, liberator.NEW_TAB)
var newTab = tabs.getTab();
tabs.move(newTab, origOrd+1);
}
EOF
我已将此代码上传为要旨,因此您可以下载它并将其保存在您的.vimperator
目录中(如果您愿意)。然后,您可以使用以下命令从 rc 文件中获取它:
:source ~/.vimperator/newtabright.vimperator
还有一个五指版本。
要在右侧的选项卡中打开 URL,只需在 Vimperator 命令行中输入以下内容:
newtabright www.example.com
...或者,使用示例键绑定,输入:
xtwww.example.com
Enter
方法 2:需要 about.config 设置 browser.tabs.insertRelatedAfterCurrent
假设您已将about.config
设置browser.tabs.insertRelatedAfterCurrent
设为true
,则可以使用更简单的方法(甚至可以有条件地在没有 Vimperator/Pentadactyl 的情况下使用)。
创建一个新的书签。随意命名(例如“右侧新标签”),然后在字段中location
输入以下内容:
javascript:window.open('%s');void(0);
在该keyword
字段中输入一个方便的关键字,例如r
。
这是书签和“搜索”书签的组合(尽管我们不使用它来搜索)。您可以从 FF 的位置栏或 Vimperator 的打开提示中使用它。只需输入关键字,然后输入 URL。因此,使用 Vimperator 的键绑定来打开 example.com,我们只需输入:
oSpacerSpaceexample.com
Enter
使用 Firefox 地址栏 (vanilla FF)...
我们也可以将书签与 FF 地址栏一起使用。使用标准 FF 键绑定,我们可以example.com
通过键入以下内容打开:
Ctrl-LrSpaceexample.com
Enter
...这实际上比 Vimperator 命令行略快。
但是,如果您启用了 FF 的弹出窗口拦截器(菜单 ▷ 偏好设置 ▷ 内容 ▷ 弹出窗口)。这是因为在位置栏(或从书签小程序)输入的 javascript 方案 URL 被视为与网页执行的 javascript 相同,而 Vimperator 的命令行:javascript
命令使用其扩展权限执行代码。
答案2
要获得与 完全相同的行为:tabopen
,请使用以下命令:
nnoremap <A-[> :tabopenleft<SPACE>
nnoremap <A-]> :tabopenright<SPACE>
:js <<EOF
commands.addUserCommand
( ["tabopenright", "tabnewright"]
, "Open one or more URLs in a new tab to the right"
, function (args)
{ var origOrd = gBrowser.selectedTab._tPos;
commands.get("tabopen").action(args);
var newTab = tabs.getTab();
tabs.move(newTab, origOrd + 1);
}
, { bang : commands.get("tabopen").bang
, completer : commands.get("tabopen").completer
, literal : commands.get("tabopen").literal
, privateData : commands.get("tabopen").privateData
}
, true
);
commands.addUserCommand
( ["tabopenleft", "tabnewleft"]
, "Open one or more URLs in a new tab to the left"
, function (args)
{ var origOrd = gBrowser.selectedTab._tPos;
commands.get("tabopen").action(args);
var newTab = tabs.getTab();
tabs.move(newTab, origOrd + 0);
}
, { bang : commands.get("tabopen").bang
, completer : commands.get("tabopen").completer
, literal : commands.get("tabopen").literal
, privateData : commands.get("tabopen").privateData
}
, true
);
EOF
这个答案部分是使用pyrocrasty 的第一种方法并使用vimperator 的来源。