代码木鱼 发表于 2026-8-28 11:10:18

vBookmarks


**vBookmarks** 是一款免费、轻量级的书签管理工具,源自经典的 NeatBookmarks。自 2011 年起,我已持续维护超过 15 年——免费无广告、简洁有品味、稳定而活跃、功能丰富、支持 43 种语言、开源且安全,并且是首批支持 Chrome 全新 MV3 标准的扩展之一。

**4.0 版本是有史以来最大的一次更新。vBookmarks 彻底完成了它的现代化重构并保持着全部旧有的体验。** 它将你的书签堆积转化为一个快速、键盘优先的工作空间——提供六个专业视图、一个能区分“网站宕机”和“访问被屏蔽”的双通道死链检测器、一个支持自定义斜杠命令的快捷指令面板,以及 Chrome 侧边栏的完整支持。同时依然保持免费、轻量和隐私优先的设计理念。

# vBookmarks 能为你做什么

点击工具栏图标即可打开一个六视图管理器,它位于弹出窗口(或 Chrome 侧边栏——由你选择)中:包含熟悉的文件夹树、即时模糊搜索、最近添加时间线、访问统计、死链检测和重复项清理。所有操作都可以通过键盘完成,每次删除都可以撤销,你的数据永远不会离开浏览器——无需账户、无遥测、无黑盒构建代码,只有你可以阅读的纯 JavaScript。

- **六个视图,一个弹出窗口**——树形 / 搜索 / 最近 / 统计 / 死链 / 重复项,通过图标标签栏或 `Alt+1…6` 切换。
- **书签库的维护工具**——支持暂停和恢复的死链扫描,提供六种保留策略和可撤销批量清理的重复项清理,将整个窗口的标签页保存为会话文件夹。
- **真正的键盘优先**——每个视图都可以完全脱离鼠标操作:方向键、`Enter`、`F2` 重命名、`Delete`、视图快捷键,以及 `Ctrl/Cmd+K` 快捷指令面板。
- **快速且安静**——支持高亮匹配的模糊搜索(对中日韩语言友好)、多功能框搜索(`*` + 空格),以及不打扰你的同步状态提示。
- **随心定制**——五种精心设计的主题(包括 Ink 和 Paper)、自定义 CSS、自定义工具栏图标、每个视图的可见性开关——也可以完全隐藏标签栏,回归经典的单面板风格。
- **隐私优先设计**——数据仅保存在本地,支持 43 种语言,MIT 许可证。
- **Chrome 和 Edge**——一个 MV3 安装包同时支持两款浏览器。

基于 (http://www.opensource.org/licenses/mit-license.php) 开源。阅读 (https://github.com/windviki/vBookmarks/wiki/FAQ)。4.0 新增功能?请阅读 (guide-v4.md)。

# v4 带来了哪些飞跃

以下是 v4 的核心新特性——它们都是可退出的,所以你仍然可以保持经典风格。

## 1. 六个专业视图,统一的键盘模型

原本单一的树形视图现在扩展为一个完整的工作空间:
- **树形**——经典的文件夹视图,现在支持同步状态感知和拖拽操作。
- **搜索**——双区域布局:上方是搜索历史,下方是搜索结果。历史记录采用 MRU(最近 10 条),可重新运行、单条删除或全部清空——全部支持键盘操作。离开再回来,你的查询内容和滚动位置都会保留。
- **最近**——按 **今天 / 本周 / 本月 / 更早** 分组展示最新书签,每行显示相对时间标签和完整路径。按 `R` 可在树形视图中定位任意条目。
- **统计**——100% 本地的访问次数统计,可按次数或最近访问排序,提供暂停开关和一键清除。**最近访问**区域(可选开启 Chrome 历史记录权限)展示你实际浏览的页面,并支持一键收藏。
- **死链**——双通道检测器(详见下文)。运行在 Service Worker 中,因此关闭弹出窗口也不会丢失扫描进度。结果实时流式呈现,支持暂停/恢复/取消,以及跨视图的**死链标记**(红色 ✕ 会跟随该链接出现在所有视图中)。
- **重复项**——通过 URL 标准化(去除 `utm_*` 等跟踪参数、去除哈希、可选 http/https 归一化)来识别真正的重复项。提供六种保留策略,预览待删除项(带删除线),然后批量执行清理——全部可撤销。

**统一的键盘模型**:方向键、Home/End、PageUp/PageDown、Enter、F2、Delete、即时输入过滤,在所有列表视图中行为完全一致。`Alt+1…6` 直接跳转到任意视图。`Esc` 层级清晰:上下文菜单 → 快捷指令面板 → 视图操作 → 清除搜索 → 返回树形 → 关闭。

## 2. 双通道死链检测器(支持代理)

大多数书签检查工具只会告诉你“这个链接失败了”。vBookmarks 会告诉你*为什么*。

- **第一通道**:从你的浏览器直接请求。如果失败,可能是网站宕机——也可能只是被你的网络屏蔽了。
- **第二通道**:你自己的代理服务器(http/https/socks5)。扫描器通过临时 PAC 脚本,仅将自身的探测 URL 路由到代理——**其他所有标签页的流量都保持正常路径**。这使它能够区分“全网宕机”和“本地网络屏蔽”,并为不同情况显示不同的状态标签。

在死链视图中一键添加代理——地址在保存前会经过可达性测试。在同一面板中可随时修改或移除代理。扫描结束、取消或弹出窗口关闭时,设置会自动恢复。`proxy` 权限在安装时声明(Chrome 不允许将其设为可选权限),但**除非你配置了代理服务器并运行扫描,否则该权限完全不会被使用。**

## 3. 可定制的快捷指令面板

`Ctrl/Cmd+K`(弹出窗口内)或 `Ctrl/Cmd+Shift+K`(全局)打开的不仅是搜索框:

- **跳转指令**直接切换到任意视图:`/recent`、`/stats`、`/dead`、`/dupes`。
- **快捷指令**:`/session` 将当前窗口的标签页保存为文件夹,`/theme <名称>` 即时切换主题,`/options` 打开设置,`/tabs` 切换标签栏显示。
- **自定义斜杠指令**——可将任意 URL、URL 模板(例如 `/g kimi code`)、文件夹作为标签组打开、或视图预设保存为自己的指令。从快捷指令面板的“保存为指令”行即可保存,跨设备同步,并可在菜单中编辑或删除。

## 4. 侧边栏支持

vBookmarks 现在支持 Chrome 侧边栏——在设置中开启即可(弹出窗口仍为默认)。侧边栏会记住你上次离开时的视图,成为一个永久可访问的书签工作空间。快捷快捷键:`Alt+Shift+B`。

## 5. 更智能、更可定制的界面

- **五种主题**——跟随系统、浅色、深色,以及两款“寓言”风格主题:**Ink**(深色)和 **Paper**(暖色),全部基于统一的设计标记系统。
- **图标标签栏**——带有实时计数标记(死链标记、重复组、追踪页面)。可按视图隐藏,或完全隐藏以回归经典单面板风格。
- **弹出窗口或侧边栏**——两者都记住你上次离开时的视图(可关闭此功能以始终从树形视图启动)。
- **设置全面升级**:新增视图分组、死链扫描分组、自定义指令管理,以及完整的**备份与恢复**——将所有设置导出为 JSON 文件并导入。选项页和高级选项页合并为一个响应式页面。
- **经典模式友好**:一键恢复经典头部样式;每个新功能都是可退出的。

# 功能概览(一览)

1. **六个视图**位于一个弹出窗口中:树形、搜索、最近、统计、死链扫描、重复项清理。
2. **双通道死链扫描器**——直连 + 代理(你自己的 http/https/socks5),区分“宕机”与“屏蔽”;运行在 Service Worker 中;支持暂停/恢复/取消;跨视图死链标记。
3. **可定制的快捷指令面板**(`Ctrl/Cmd+K`,或全局 `Ctrl/Cmd+Shift+K`)——内置斜杠指令 + 自定义指令(URL/模板/文件夹组/视图预设),跨设备同步。
4. **侧边栏模式**——可选开启,记住上次视图,快捷键 `Alt+Shift+B`。
5. **搜索历史**——最近 10 条,可重新运行、单条删除、全部清空;可在设置中禁用(并清除)。
6. **访问统计**——本地计数,暂停开关,一键清除;可选 Chrome 历史记录驱动的“最近访问”区域,支持一键收藏。
7. **重复项清理**——URL 标准化(去除跟踪参数),六种保留策略,预览待删除项(带删除线),可撤销的批量删除。
8. **最近视图**——按今天 / 本周 / 本月 / 更早分组,支持在树形视图中定位。
9. **同步感知**——Chrome 138+ 支持本地/同步双存储:仅本地的子树会变暗显示,根节点标注 `(本地)` / `(同步)`,跨存储拖拽会被阻止并显示提示。
10. **随处快速添加**——星标按钮、`Ctrl/Cmd+D`、全局 `Alt+Shift+S`,或右键菜单。
11. **完整的键盘支持**——方向键、Home/End、PageUp/PageDown、Enter、F2、Delete、即时输入过滤;`Alt+1…6` 视图跳转。
12. **五种主题**——浅色、深色、跟随系统、Ink、Paper。
13. **多功能框搜索**——在地址栏输入 `*` + 空格。
14. **备份与恢复**——将所有设置导出/导入为 JSON。
15. **43 种语言**,通过 LLM 辅助翻译流水线保持同步。

# 权限说明

vBookmarks 需要两个新的权限,值得解释清楚:

- **`history`**(可选权限,仅在你开启时请求)——为统计视图中的**最近访问**区域提供数据支持。vBookmarks 不会展示 Chrome 原始的浏览记录页面,而是提供一个更清晰、友好的视图,展示你实际浏览的页面,并支持一键收藏。**如果你从未开启该功能,统计视图仍然正常工作**——弹出窗口中累计的访问计数仍然保留,最近访问区域保持为空。你可以在设置中随时开启或关闭,并可通过统计清除按钮一键清空相关数据。

- **`proxy`**(安装时声明,Chrome 不允许将其设为可选权限)——**仅用于**死链扫描器的双通道检测。只有扫描器自身的探测 URL(带有特定标记)会通过你配置的代理服务器路由(通过临时 PAC 脚本实现)——其他所有标签页的流量都保持正常路径。扫描结束、取消或弹出窗口关闭时,设置会自动恢复。**如果你从未配置代理服务器或从未运行死链扫描,代理相关的代码路径就完全不会被执行。**

# 高级用法

## 键盘快捷键

完整的键盘支持,在六个视图中行为完全一致(详见 (guide-v4.md)):
- **↑↓** 移动选择;当光标在第一行时按 **↑** 会依次跳到标签栏、搜索框
- **←→** 在标签栏切换视图;在行上按 **→** 打开上下文菜单,**←** 关闭菜单
- **Enter** / **Space** 打开;**Ctrl/Cmd+Enter** 在新标签页中打开
- **Home** / **End**、**PageUp** / **PageDown**;**Alt+1…6** 直接跳转到对应视图
- **Delete** 删除(可撤销),**F2** 重命名,**R** 在树形视图中定位;**K** 在重复项视图中固定保留项,**M** 切换死链标记
- 树形和搜索视图支持即时输入过滤
- **Ctrl+F** 聚焦搜索框;**Esc** 清除搜索、关闭菜单、暂停扫描或关闭快捷指令面板——从内到外逐层退出

## 快捷指令面板详解

- `Ctrl/Cmd+K`(弹出窗口内),`Ctrl/Cmd+Shift+K`(全局)
- 内置斜杠指令:`/recent` `/stats` `/dead` `/dupes`(视图跳转)、`/session`(保存标签页)、`/options`(设置)、`/theme <名称>`、`/tabs`(切换标签栏)
- **自定义指令**:选项页 → 指令分组,或快捷指令面板中的“保存为指令”行——支持 URL、URL 模板、文件夹作为标签组打开、视图预设;跨设备同步,可编辑、可删除

## 其他实用功能

- **多功能框搜索** —— 在地址栏输入 `*`,按空格,然后输入关键词
- **中键点击文件夹** —— 将其中的所有书签以彩色标签组的形式打开
- **拖拽排序** —— 跨同步/本地存储的拖拽会被安全阻止并给出提示
- **选项页自定义** —— 分隔符、扫描并发数/超时时间、自定义 CSS、自定义工具栏图标、弹出窗口缩放、固定高度、关闭行为、后台打开、仅显示书签栏模式
- **备份与恢复** —— 从选项页底部的备份分组导出/导入所有设置为 JSON

# 更新日志 — v4.0(2026 年 7 月)

## 新增视图与工作空间

- **六视图管理器** —— 树形 / 搜索 / 最近 / 统计 / 死链 / 重复项,带图标标签栏、实时计数标记、每个视图的可见性开关,支持 `Alt+1…6` 跳转。
- **搜索视图** —— 双区域布局(上方历史、下方结果),支持可重新运行的 MRU 搜索历史。
- **最近视图** —— 按时间段分组(今天 / 本周 / 本月 / 更早),支持在树形视图中定位(`R`)。
- **统计视图** —— 本地访问统计,带后台收集器、最近访问区域(可选 Chrome 历史记录)和一键收藏。
- **死链视图** —— 双通道检测、渐进式渲染、暂停/恢复/取消、跨视图死链标记,基于 Service Worker 运行(关闭弹出窗口不丢失进度)。
- **重复项视图** —— URL 标准化、六种保留策略、待删除预览、可撤销的批量删除。

## 代理与死链扫描器

- 第二通道现支持**自有代理服务器**(http/https/socks5):在视图的代理栏中一键添加,保存前进行可达性测试,可在线修改或移除。
- 路由使用标记匹配的临时 PAC 脚本 —— **只有扫描器的探测 URL 走代理**;其他标签页不受影响;扫描结束/取消/弹出窗口关闭时恢复设置;崩溃残留由 Service Worker 自动清理。
- 工具栏新增死链·被屏蔽摘要行,并在直连失败但未配置代理时显示配置提示。

## 快捷指令面板

- 每个视图的跳转指令:`/recent`、`/stats`、`/dead`、`/dupes`。
- 快捷指令:`/theme <名称>`、`/session`、`/options`、`/tabs`,支持别名。
- **自定义斜杠指令** —— URL/模板/文件夹组/视图预设,跨设备同步,可从快捷指令面板的“保存为指令”行保存。
- 搜索桥接行,失焦自动关闭。

## 界面与主题

- **Ink 和 Paper** “寓言”主题(深色 / 暖色),总计五种主题。
- 图标标签栏带计数标记;每个视图的可见性开关;可完全隐藏标签栏以回归经典单面板风格。
- 同步状态展示重构:安静的小点、本地化的提示文字、`(本地)`/`(同步)` 根节点标签、拖拽阻止提示,以及可正常工作的“高亮未同步”变暗效果。
- 弹出窗口中的一键收藏星标按钮;全局快速添加快捷键(`Alt+Shift+S`)。

## 选项与设置

- 新增**视图分组** —— 标签栏及每个视图的可见性、计数标记、记住上次视图开关、快捷指令面板/快速添加/工具栏按钮开关,以及一键**恢复经典头部**按钮。
- 新增**死链扫描分组** —— 代理模板、并发数、超时时间。
- 新增**指令分组** —— 管理自定义斜杠指令。
- **备份与恢复** —— 将所有设置导出/导入为 JSON。
- 选项页和高级选项页合并为单一响应式页面(旧 URL 自动重定向)。

## 侧边栏

- 可选侧边栏模式(可选开启;弹出窗口仍为默认),快捷键 `Alt+Shift+B`。
- 记住上次离开时的视图(与弹出窗口行为一致)。

## 键盘与无障碍

- **统一的键盘模型** —— 在全部六个视图中行为一致:方向键、Home/End、PageUp/PageDown、Enter、F2、Delete、即时输入过滤。
- **层级化 Esc** —— 上下文菜单 → 快捷指令面板 → 视图操作 → 清除搜索 → 树形 → 关闭。
- 死链视图和重复项视图中的选择模式(批量标记/取消标记,批量清理)支持 `Esc` 退出。
- `Tab`/`Shift+Tab` 区域循环,包含列表内工具栏,支持每个区域的焦点记忆。
- 重复项成员行快捷键:`Enter` 打开副本,`←` 返回组头;组头菜单。
- 所有上下文菜单添加 ARIA 角色;`aria-modal` 对话框带焦点陷阱。

## 批量操作

- 批量工具(死链扫描和重复项清理)首次使用时显示**备份优先风险提示**,链接到 Chrome 备份指南;“不再显示”将在下个大版本前保持静默。
- 死链:批量标记/取消标记;重复项清理:批量组清理。

## 工程化

- **仓库重组** —— `src/`、`pages/`、`css/`、`assets/`、`scripts/`;废弃的 `release/` 和 MV2 遗留文件已移除(保留在 git 历史中)。
- 所有图标改用内联 SVG;位图图标已退役。
- **语言包基线** 扩展至 345 个词条;全部 43 个语言包通过 `scripts/i18n.py` LLM 流水线重新对齐。
- **测试套件** 扩展至 1386 个测试用例,涵盖 43 个 Vitest 测试集(单元测试 + 契约测试)。
- **Docker 测试工具** 扩展了键盘/视图验证套件,以及多主题、多语言截图捕获。
- **GitHub Actions CI** —— 每次推送和 PR 运行单元测试、语言包检查及发布打包。

## 变更说明

- `proxy` 权限在安装时声明(Chrome 不允许设为可选权限),且**仅当**配置了代理并运行扫描,或添加代理时的可达性探测时才会被使用——从未配置代理服务器或不使用死链扫描功能时完全不会被使用。
vBookmarks 4.0.8.crx
.crx
4.0.8
1.02MiB
支持

vBookmarks 4.0.8.zip
.zip
4.0.8
1.02MiB
不支持

页: [1]
查看完整版本: vBookmarks