极致丝滑的拼音搜索和快速切换 Tab 的浏览器插件(已开源&上架)极致丝滑的拼音搜索和快速切换 Tab 的浏览器插件,现
开发动机
- tab:在浏览或搜索资料时会打开多个 tab,多数情况下看完也不会及时关闭,导致 tab 越来越多,也不习惯用 group 分组(就算分组后每个组下的 tab 比较多也不太好靠肉眼定位),最终效果会如下所示:
- history:偶尔失手关闭的一些想保留的网页,想快速恢复,只能去 chrome://history 去搜索近期历史记录,还只能
- bookmark:个人的书签分类比较多,靠手动去某个文件夹下手动点击,有点不符合“工程师思维 👀”
如果你的习惯和我类似,那么可以浅试这个插件。
安装
进入 chrome 插件商店,点击添加到浏览器按钮即可。
功能
-
模糊拼音搜索: 支持中英文混合模糊搜索,默认支持拼音,对国人友好(依赖于 文本搜索引擎)
-
直观排序: 搜索结果按照文本搜索引擎返回的权重值和最近使用的时间降序,让你更快定位目标
-
标签搜索: 搜索你打开的所有Chrome标签
-
历史查询: 查询最近 200 条历史记录(后续考虑让用户自定义)
-
书签搜索: 搜索你所有的书签
-
切换和快速创建标签: 只需按下'enter'键来切换或打开你想要的标签
适用人群
那些追求快捷操作和速度的人群,如:
- 🧑💻 程序员
- 💻 多任务并行社畜
- 🏄🏻 冲浪
使用
点击插件 icon 即可唤醒一个小窗口,当你没有在输入框输入内容时默认展示当前打开的所有 tab,并按照时间最后访问的时间顺序排序,再追加历史记录和书签的内容
此时可以通过上下方向键选中,当停留指定目标后,按下 Enter 键就可以跳转过去,当然你也可以用鼠标左侧点击某个项目直接跳转。展示的内容总共有三种类型:Tab(打开的标签页)、History(历史记录)、bookmark(书签),触发事件遇到 Tab 类型时会切换并聚焦,其他两个则会新开网页。
你可以输入拼音缩写、英文单词或完整汉字来进行搜索过滤出你想要跳转的页面,如下所示:
快捷键唤醒
激活 Blazwitcher 扩展的默认快捷键是 Mac 上的Command+.(Command+Period)
,Windows上的Ctrl+.(Ctrl+Period)
。这个快捷键大概率会被占用,可以通过右键 icon 或在没有 pin 插件的情况下点击插件 icon 后,再点击菜单。
反正最终目的就是要到 chrome://extensions/shortcuts 页面就行,这时在咱们的插件那一行重新设置快捷键即可。
文本搜索算法
为了让搜索更丝滑,抽象了一个文本搜索算法,其核心是在遍历的过程中计算并保留前面的权重值,思路即是大家所熟知的动态规划,并且在汉字转拼音的过程中保存了下标的映射关系,最实现的效果类似如下图所示,线上 demo 例子戳我。
超级简单的 API
现已抽成了一个 NPM 包,使用起来超级简单,感兴趣的同学去 github 瞅瞅。
import { search } from 'text-search-engine'
const source = '地表最强前端监控平台'
search(source, 'jk') // [[6, 7]]
search(source, 'qianduapt') // [[4, 5],[8, 9]]
总结
目前插件已上架谷歌商店且开源,没有调用任何网络请求不用担心个人数据被泄漏,且纯净无广告:谷歌商店地址点我,开源 github 仓库地址点我,并且文本搜索算法的 NPM 包也已开源,线上 Demo 体验点我。
欢迎使用,如果你觉得不错,那么请 star 一下或在谷歌商店评分下 😘,纯靠爱发电,Blazwitcher 插件会持续更新功能,感兴趣的小伙伴可以参与 Pull Request 或在 Issue 中提建议。
转载自:https://juejin.cn/post/7404304125964517416