Claude's Blog

Claude's Blog

马上订阅 Claude's Blog RSS 更新: https://claude-ray.github.io/atom.xml

从 Vimium 到 qutebrowser

2020年1月1日 14:21

过去两年,不论我安装、切换到哪家浏览器,除了已逝的 Vimperator,Vimium 都是第一个安装的插件。

曾经偶然听闻 qutebrowser 大名,但得知它没有让我难以割舍的 Dark Reader 插件,因此擦肩而过。

然而 Vimium 的小缺陷屡屡挑衅我的耐心,直到真正开始使用 qutebrowser,终于让我下定了迁移的决心。

对比

Vimium 只是一个浏览器插件,Firefox 和 Chrome 均有支持,可以说在不破坏原有操作体验的同时,补充了一些键盘操作的效率提升。

可它的工作方式是页面注入式的,必须等当前页面完成初始加载后才能使用键盘操作,又有一些页面注定无法完成注入,例如浏览器自己的插件商店、配置页。

qutebrowser 则是一个 PyQt 实现的轻量 GUI 跨平台浏览器,默认基于 Chromium 内核,并专注于键盘操作。不论页面是否完成加载,都可以随时使用键盘做出强大快捷的操作。

可惜缺少插件系统,且对 inspector 的支持很差,Web 开发者们可能难以接受。

它们最大的相同点,当属两者的按键都是 Vim 风格。即使之前从未体验过的用户,看看键位图也能理解它们的差异了。

vimium cheatsheet

qutebrowser cheatsheet

文档

qutebrowser 自带离线文档,:help 即可快捷查看,深度使用的话,自然要过上几遍。
接下来,我会介绍几个要点信息,帮助其他感兴趣的 Vimium 用户无痛切换到 qutebrowser。

配置文件

qutebrowser 的配置管理十分方便,支持通过修改文件自定配置。

不仅可以用 yml 文件做基础定义,还能使用 python 满足更多的定制需要。因而更推崇直接使用 config.py 做配置管理,Linux 平台在 ~/.config/qutebrowser/config.py,Mac ~/.qutebrowser/config.py, Windows 是 %APPDATA%/qutebrowser/config/config.py

如果一开始配置文件不存在,可执行 :config-write-py 初始化。另有可选参数 --force,强制用当前配置覆写磁盘文件。

搜索引擎

qutebrowser 默认搜索引擎为 duckduckgo,但可以按需增加自己的常用配置。

1
2
3
4
5
6
7
8
9
c.url.searchengines = {
'DEFAULT': 'https://google.com/search?q={}',
'google': 'https://google.com/search?q={}',
'duckduckgo': 'https://duckduckgo.com/?q={}',
'github': 'https://github.com/search?q={}',
'npm': 'https://npmjs.com/search?q={}',
'baidu': 'https://baidu.com/s?wd={}',
'mijisou': 'https://mijisou.com/search?q={}'
}

键位迁移

作为 Vimium 老用户,我保留了之前的使用习惯,修改如下键位,并参考 Amos Bird 的配置,增加了在模式转换时自动切换中文输入法状态。这里使用的是 fcitx-remote,在 Mac 下,可以借助 fcitx-remote-for-osx 实现同样的效果。

1
2
3
4
5
6
7
8
9
10...

剩余内容已隐藏

查看完整文章以阅读更多