Releases: Aik358/dsh-literature
Releases · Aik358/dsh-literature
Release list
v0.2.5
0.2.5 修复:PDF 404(URL 编码键)+ 扫描导入补齐全文
- 根因:pdf 路由未对 key 做 URL 解码——含空格/标点的标题类条目(如
title:s11920 019 1079 z)被 %20 编码后映射到错误文件名,阅读器全部 404。现已在读取前解码,并新增含空格 key 的回归测试。 - 文件夹扫描导入现在会把 PDF 复制进插件自己的存储(此前只记录文件名,条目没有本地全文)。
- 测试隔离加固:DSH_HOME 在模块导入前设置并加断言,避免测试误写用户目录。
v0.2.4
0.2.4:Scribbr 式宽松识别(标题 / 文本 / URL / 外部搜索)
- 搜索框升级为 Autocite 式输入:DOI / arXiv / PMID / ISBN 照常精确识别;识别不到时自动进入模糊搜索(Crossref),面板顶部展示候选列表,一键添加(带完整元数据)。
- 候选底部提供外部搜索:Google Scholar / 百度学术 / 知网,用你的输入直接跳转。
- 任意 URL 直接识别:粘贴网址 → 抓取页面自身元数据(citation_* / og:title / title),解析出标题与 DOI。实测 arXiv 摘要页、PLOS 文章页均成功(PLOS 连 DOI 都拿到了);被 Cloudflare 反爬的站点(如 nature.com)回退为网址条目,仍可打开来源/导入 PDF。
- 修复:URL 页面抓取未取 response.text() 的 bug。
- 新增 /search 与 /add-candidate 端点及测试。
v0.2.3
v0.2.1
0.2.1 新特性:自定义下载源
- 设置页新增「自定义下载源」:可添加自己信任的镜像 / 机构代理 / 专属端点,逐条启用、命名、排序。
- URL 模板支持变量 {doi} {arxiv} {isbn} {title} {url};可配置自定义请求头(每行 名称: 值),适配带 token / cookie 的端点。
- 自定义源作为官方 OA 链之后的兜底;模板缺变量或非法 scheme 自动跳过。
- 合规提醒:这些源由你自行配置并负责,插件不内置任何破解/侵权来源。
- 实测:模板渲染(含缺失变量拒绝)与端到端回退下载(官方源全失败 → 本地镜像成功)。
v0.2.0
0.2.0 大版本:引用生成 + 库管理 + 全网搜索
- 引用生成器(Scribbr 风格):每条文献卡片上的「引用」菜单,支持参考文献 / 文内引用 / 直接引用(带页码)三种模式 × APA 7 / GB/T 7714-2015 / MLA 9 / Chicago 17 四种格式,一键复制。
- 库管理:① 扫描导入文件夹(文件名自动识别 DOI/arXiv/标题并解析元数据);② 从本地文献库批量导入(含 PDF 附件);③ 可选自动监控文件夹(每 30s 新增 PDF 自动入库);④ 条目可删除/移除。
- 全网入口:每条文献的「搜索」菜单 → Google Scholar / 百度学术 / 知网 / 来源页。
- 设置重构:内置文献库为默认第一选项;连接外部文献库的端口/数据目录/Unpaywall 折叠进「高级」区。
- 引用格式器实测通过(APA/GB/T/MLA/Chicago 参考文献 + 文内 + 直接引用)。
v0.1.6
v0.1.5
v0.1.4
0.1.4 修复:better-sidebar 检测彻底生效
根因:DSH 客户端插件运行时(dsh-cordis-client-runner)对动态插件的 ctx 做了白名单门控——ctx.betterSidebar 属性读取未在 inject 声明时直接抛错。此前探测用属性读取,异常被吞掉后永远回退到左侧栏按钮。
修复:运行时暴露 ctx.get(name) 作为不受门控的可选查找;探测顺序改为 属性读取 → reflect.get → ctx.get,且以 registerTab 实际调用成功为准。新增场景 4(模拟门控运行时)纳入自动化测试。
v0.1.3
v0.1.2
0.1.2 修复
修复 DSH 启动时插件加载崩溃:
- 症状:
Failed to load plugins ... Cannot access s before initialization(apply 阶段 TDZ) - 根因:settings 注册 effect 在
slots常量初始化前就读取了它 - 新增
scripts/check-apply.mjs:真实 React 环境下执行构建产物并运行 apply(),已接入 prepublishOnly 防止同类回归
0.1.1 引入:better-sidebar 集成(右侧栏 tab)、付费墙/需要登录的优雅处理(打开登录页 + 导入本地 PDF)、设置项扩充(21 项)。