让用户为我的omnibox chrome扩展程序选择关键字

时间:2013-04-12 09:20:51

标签: javascript google-chrome-extension chromium omnibox

我刚刚使用omnibox api创建了一个chrome扩展。

"omnibox": { "keyword" : "a" },

我发现无法使用多重关键字 或者让用户为我的分机选择关键字,尽管该扩展名列在搜索引擎设置页上:

Chrome extension Bug

除此之外,我还认为extension关键字的优先级是最低的。 如果用户已在Default search engines / Other search engines - 部分中定义了关键字,则扩展关键字不可用。

有没有人知道至少其中一个问题的解决方案?

也许使用NPAPI

3 个答案:

答案 0 :(得分:2)

此讨论之前已经出现,您可以在此处查看示例 - https://code.google.com/p/chromium/issues/detail?id=75890

似乎只有一个标题:关键字对的原因是为了防止过多的关键词。似乎也没有任何支持允许最终用户更改此配对。

答案 1 :(得分:1)

我想让人们知道这似乎已经改变了,现在已不再是这样了。我自己正在探索这种可能性,并发现这个页面说明它是不可能的。为了在安装后更改我的扩展的关键字,我采取了以下步骤:

  1. 右键单击多功能框(地址栏)并选择编辑搜索引擎
  2. 滚动到最底部(可选择删除您将找到的很长的网站列表的一半)
  3. 在已安装扩展程序的关键字部分下,找到您要修改的扩展程序,然后点击其名称右侧的关键字值。没有编辑按钮,它将变成可编辑的字段。
  4. Edit Omnibox Keyword

    我在Windows上使用的是Chrome版本30.0.1588.0,但我不确定它可以编辑多长时间。

答案 2 :(得分:1)

对于某些扩展,我发现有必要直接编辑扩展源。通常这可以在GitHub或类似的存储库中获得。

  1. 将来源克隆到计算机上的目录
  2. 打开扩展程序路径目录中的manifest.json文件。编辑或添加此部分:

    " omnibox":{     "关键字" :" key" }

  3. Where" key"是键盘快捷键本身。

    1. 在Chrome中,请转到:chrome://extensions/
    2. 删除旧分机(如果相关,请小心删除重要数据)
    3. 启用页面右上角的developer mode
    4. 选择Load unpacked extension...并导航到克隆目录
    5. 确认扩展程序已在Chrome中加载并正常运行
    6. 使用Chrome扩展程序developer mode继续浏览互联网存在安全风险。通过packing将此扩展名解析为单个.crx文件(一种类型.zip文件)。
    7. 删除新创建的"解压缩"扩展并点击Pack extension... (您可以使用.pem密钥对文件进行签名,但这不是必需的)
    8. 关闭页面右上角的developer mode
    9. Nagivate到克隆目录上方的目录
    10. packing步骤中生成的.crx文件拖到Chrome窗口
    11. 新扩展程序现在应显示在chrome://extensions/页面
    12. 导航至chrome://settings/ - >验证结果是否正确Manage search engines...
    13. 页面底部"搜索引擎由扩展程序添加"键盘快捷键应该更新,扩展名只出现一次