注意:简悦已经升级为 1.0.4,详细请看 http://www.jianshu.com/p/7afe2f6d59ed
简悦是什么?
简悦是 沉浸式阅读的 Chrome 扩展,类似 Safari 的阅读模式;取自:「 简单阅读,心情愉悦 」 之意。
前文回顾,猛戳这里
马上使用:
Chrome 应用商店 或者 离线下载 ,官网 在这里 以及代码托管 在这里
距离 1.0.0 发布 139 commits 之后
自发布以来,得到了很多朋友的帮助以及鼓励,基本上是持续不断的 ⭐⭐⭐⭐⭐ 好评。
任何一个产品最初都不是完美的,随着用户的增加,大家也期盼着如下的功能:
通过人肉一一收集来源 [1] [2] [3],总结了如下的几个功能点:
- 支持
ESC
退出方式;
-
阅读进度
可隐藏; -
控制栏
可隐藏; -
右键菜单
可隐藏; - 已适配的网址可
自动进入阅读模式
; -
手动添加未适配网址
到阅读模式;
前五个功能都属于功能增强,并不属于新增功能;而最后一个原计划即为下个版本才发布。
如果把它们都放到原计划发布的 1.1.0 里面无疑对开发周期是一个严峻的考量,再加上 7月份我有个 为期15天
的假期,所以走之前无法完成 1.1.0,回来后还要再开发一段时间,这对简悦的用户来说,并不友好...
经过考虑,决定在 1.1.0 之前发布一个小改版,把一些容易实现且提高用户体验性的功能放到 1.0.1 里面。
既然定好了,撸袖子开干!1.0.0 发布之后的周末,前四个功能的界面初版完成。
前三个功能从需求分析 → 完成测试,只用了不到三天时间,直到 右键菜单可隐藏
...
这个功能在需求上给了我一些困扰,原本打算想单纯的 隐藏/显示
右键菜单完事,但右键菜单有三个: 聚焦模式
阅读模式
是否显示使用阅读模式打开此链接?
且每个菜单项的使用场景都不一样,所以不能简单粗暴的将它们放在一起控制。
所以,右键菜单有了单独控制的选项:
第五个功能 已适配的网址可自动进入阅读模式
代码并不复杂,甚至跟上面四个功能相比更加的简单。但是它涉及到了 适配列表 的逻辑,而这部分逻辑由于在 1.0.0 里面并没有完美的实现,所以第五个功能就变得需要还技术债...
原来的 URL 适配只使用了比较简单的模糊查询,如 http://www.cnbeta.com/*
会匹配如下的网址:
1. http://www.cnbeta.com/category/movie.htm
2. http://hot.cnbeta.com/articles/movie/627439.htm
而真正需要匹配的网址 http://*.cnbeta.com/articles/*/*.htm
才对!而前一个 URL 显然不是需要被适配的网址,这样无形给 已适配的网址可自动进入阅读模式
带来了不好的用户体验性。(即:未适配的页面也能自动进入阅读模式)
在这里特别需要感谢 @ksky 正是他提供 minimatch 解决了这个问题!
因此 适配列表 进化到了 v2 版本,第二版的适配列表已增至 165 个,URL 的修改以及修改后的测试可是个「大活」,先给出 v1 和 v2 差别性的比较:
再加上六月底有些忙,这个功能持差不多陆续续了三天多的时间!
虽然加入了 minimatch 后可以解决绝大部分问题,但仍旧有少量的 URL 有问题,比如如下几个网址:
https://www.waerfa.com/social
https://www.waerfa.com/boostnote-review
https://www.waerfa.com/twitter-for-ios-dark-mode
后两个 URL 属于一组,与前一个 URL 的页面结构完全不同,所以即便使用了 minimatch 方案,也无法解决这种特例...
为此我在这个功能基础之上增加一个 排除列表 功能,属于这个列表中的 URL 将默认不自动进入阅读模式。
适配上除了支持 URL 外,还支持 minimatch 方案 以及 name 方式,详细说明 移步这里。
至此 1.0.1 的新功能全部完成了,它们包括:
-
选项页-高级设定,点击这里 看大图
增加
ESC
退出方式;右键菜单可隐藏;
控制栏可隐藏
包括:聚焦模式 与 阅读模式
;阅读进度可隐藏;
当适配阅读模式时,增加 自动进入 以及 排除列表, 详细 请看这里;
适配列表增至
165个
,并且终于有了一个简陋的列表,详细请看 这里;下载为 Markdown 格式
仅限阅读模式
,由 @ksky 提供;修复了 这些 issues
当然,这仅仅只是新功能,1.0.1 还包含了很多改进,更多内容请看 更新日志 。
以下是简悦的全部功能: 左下角为 1.0.1 新增加功能
最后,希望简悦一如既往地提升你的阅读体验,还原阅读本质!