所有浏览器都有书签, 这是一个不起眼的功能. 但书签到底是什么? 这往往是由人如何使用来决定的.
书签是一个树状结构的数据库, 每个节点对应着一个网页或者文件夹, 也即节点的集合. 这个结构具有高度的灵活性和抽象性, 如果我们抛弃固有概念, 书签可以做很多的事情.
书签与标签页
既然书签对应着网页, 而标签页也对应着网页, 那么, 书签可以对应标签页. 一个书签就是一个没有打开的标签页, 标签页是打开了的书签. 这样, 书签管理器就成为了广义的标签页栏.
书签管理器怎么能管理标签页呢? 这是观念的束缚, 从技术的角度来说没有问题.
标签页栏一开始并不是为打开大量网页设计的. 为了应对打开的标签页越来越多, chrome 增加了标签页分组功能, edge 增加了垂直标签页. 如果这些还不能满足要求, 还有许多的标签页管理插件. 但书签管理器从设计之初就是为管理大量的节点, 管理这些标签页可以说是降维.
书签与工作空间
标签页栏本身就是一个工作空间, 只是无法切换. edge 有专门的 workspace, 可以共享. workona 也有类似功能.
但如果把书签视为标签页, 那么, 每一个文件夹就是一个工作空间, 对应着一组标签页栏. 工作空间的切换不过是文件夹的切换. 树状结构还可以实现子工作空间. 这从技术上可以实现.
知识库
两者的打通也为保存标签页提供了新途径. OneTab, session buddy 之类的插件, 实质上是把标签页保存为链接列表, 换言之, 是简化了的书签. 既然如此, 直接保存为书签不是更好? 一般书签管理器所提供的灵活性要远大于这些简化了的书签管理器, 数据安全性上也更有保证. 当然, 这需要书签管理器提供相应功能.
但我们大多有这样的经验: 保存了大量的网页, 计划 "稍后阅读", 但从来没有再打开过. 这是否合理呢? 很合理.
不管以什么形式, 我们保存的网址实质上是一条笔记, 是我们的知识库的一部分. 知识库是在我们需要的时候提供储备. 换言之, 即便我们从未打开, 这些书签本身就是知识. 对书签数据库的管理就是知识管理. 这对管理器也提出了更高的要求.
Abookmark
上述理念来自 abookmark . 但这些并不是必要的. 可以简单的把其作为书签管理器及书签栏使用, 或者 OneTab, workona 的替代品. 侧边栏里的 "tab nodes" 可以当做 竖向标签页栏, 与edge功能类似.
对于程序员朋友, 这些功能或有兴趣:
- js正则表达式搜索
- 文本模式显示及修改. 通过 json 等格式批量编辑书签数据.
- 文本自定义模板
- 将书签或标签页信息拷贝到剪贴板.
- vi 模式