您可以使用 JavaScript。将整个字符串作为函数的输入。根据某些字符拆分它,然后修剪零件。构建链接,然后在当前选项卡或新选项卡中打开它,具体取决于您的选择。
javascript:(function myFunction(str) {
var part = ";";
var res = str.split(part);
var search_query = res[0].trim();
var category = res[1].trim();
var new_tab = res[2];
var res_url = "https://github.com/search?q=" + search_query + "&type=" + category;
// open in new tab if str contains a third parameter that is composed of zero or more spaces
if ((new_tab !== undefined) && (new_tab.trim() === ""))
{
window.open(res_url, "_blank");
}
else // open in current tab
{
window.location.href = res_url;
}
})('%s');
在缩小时,自定义搜索引擎 URL 将是javascript:(function myFunction(str){var part=";";var res=str.split(part);var search_query=res[0].trim();var category=res[1].trim();var new_tab=res[2];var res_url="https://github.com/search?q="+search_query+"&type="+category;if((new_tab!==undefined)&&(new_tab.trim()==="")){window.open(res_url,"_blank")}else{window.location.href=res_url}})('%s');
. 该函数以 '%s' 作为参数调用。它根据分号字符进行拆分。
用法:让我们将此自定义搜索引擎昵称为“gm”。然后搜索“gm binary tree; code”将在当前页面打开https://github.com/search?q=binary%20tree&type=code 。搜索“gm radix tree; commits;”将在新选项卡中打开https://github.com/search?q=radix%20tree&type=commits 。
请注意,如果 %s 包含单引号,此函数将失败。如果从诸如设置之类的内部页面调用它也不起作用。
实现您的目标的另一种方法是放弃自定义搜索引擎的想法,并使用AutoHotkey (Windows) 之类的脚本工具来用 URL 替换搜索字符串。