C/C++ Search Extension 修改默认中文

版本 2022年6月2日 0.3.0下载地址

最近从Chrome迁移到了Edge,在配置插件的时候遇到了点问题,之前在Chrome安装的一个 C/C++ Search Extension 版本,有在popup中设置语言的feature,但是现在商店发布的最新版本0.3.0,并不能打开popup来设置,那么搜索出来的文档默认语言是en,不便于快速阅读内容。

[Feature request] Option to config cppreference language · Issue #2 · huhu/cpp-search-extension

我对插件的开发并不了解,因此前期走了些弯路,在扩展(Edge里的翻译是扩展,Chrome里是插件)页面(edge://extensions/),找到了开发人员模式,没找到其他设置的线索,但是看到了一个背景页选项,就点进去看了看是什么。

打开后,进入了审查元素(也叫检查)页面,在源代码处,看到了插件所用的静态资源文件,找到setting.js这个文件,发现它是通过storage.setItem来设置默认语言的。

但是这个参数怎么使用呢?我找到了main.js,里边有这样一句https://${language}.cppreference.com/w/${doc.path},很显然,是通过字符串拼接来设置对应的url前缀,也正好是依据cppreference中的url,Engilsh用en前缀 https://en.cppreference.com/w/ ,中文用zh前缀 https://zh.cppreference.com/w/

在仓库中搜索zh这个词也印证了这一点,在 popup 中也是这么设置的。不过我也不太清楚为什么这个版本中没有看到 popup 的相关 js 文件。

至于为什么会出现这种问题,查阅了一下作者的Release页面,发现最新版本中做了些修改,然后顺手引入了几个小bug

不管了,我们解决问题就好了,在控制台里尝试设置一下。

storage.setItem('language', 'zh')

在浏览器地址栏里尝试

成功跳转