Skip to content

Releases: noctisvexx/obsidian-visual-feed

1.6.9 — 跨设备同步过来的图片自动补上,不用再手动重建索引

Choose a tag to compare

@github-actions github-actions released this 15 Sep 00:13

从别的设备同步过来的图片,现在会自动补进「视界」,不用再手动重建索引。

  • 图片比笔记晚到:md 先到、图片后到(另一台设备同步过来)时,解析笔记那一刻图片还不存在,那条引用就被直接丢掉了,索引里不留任何痕迹;等图片真到了,插件也不知道「谁在等它」,只好一直缺着,只能手动点重建索引。现在解析时会把暂时找不到的本地图片/视频引用记进一张「待定引用表」,图片到达时按完整路径末级文件名两种写法去匹配,只重新解析在等它的那几篇
  • Obsidian 关着的时候图片才同步进来:这种 md 自身没变化,启动的增量对比发现不了。现在启动后会拿待定表轻查一遍(只看这个文件在不在,不读正文),能解析了才重解析;链接缓存就绪时也会补扫一次,同步批量落盘的情况做了 800ms 防抖
  • 代价很小:只有真在等这张图的笔记会被重新解析,没有待定条目时一个文件都不读
  • ⚠️ 索引结构升到 v2,升级后首次打开会自动重建一次索引(这次补不回来,只能重建)
  • 需 Obsidian 1.13.0+

Full Changelog: 1.6.8...1.6.9

1.6.8 — 冷启动空白修复、大图关闭按钮让开顶部安全区

Choose a tag to compare

@github-actions github-actions released this 14 Sep 07:20

修掉两个手机端问题:冷启动后标签页空白、大图预览的关闭按钮点不到。

  • 冷启动空白:开着「视界」把 Obsidian 从后台划掉再启动,偶尔整个标签页只剩空白(连右下角浮动按钮都没有),关掉重开又好了 —— 根因是视图初始化在极早期抛了异常,Obsidian 恢复标签页时是自动重建的,一抛就只剩空壳。现在存储读写各自隔离(读失败回默认筛选、写失败只告警)、骨架与渲染全程兜底,失败不再是留白而是给一个「视界加载失败 + 重试」面板;布局还没就绪时会在就绪后自动补渲染一次,没建起来则自动重试一次初始化
  • 大图关闭按钮让开状态栏:遮罩是全屏 fixed,手机上视口含状态栏/刘海,之前写死 top: 14px 会落在状态栏里被系统吃掉触摸;窄屏图片区的顶部留白又只有 44px,竖长图会顶到按钮下沿。现在 top/right 都走 env(safe-area-inset-*),窄屏下按钮给足 44px 触摸目标并加了一层半透明底,图片区顶部留白也一并让开按钮下沿
  • 需 Obsidian 1.13.0+

Full Changelog: 1.6.7...1.6.8

1.6.7 — 来源筛选多选、选中态高亮、筛选状态记忆

Choose a tag to compare

@github-actions github-actions released this 13 Sep 05:00

来源筛选从单选改成多选:点一个加入、再点一下移出,多个来源取并集(「全部」= 清空已选;一个都不选本来就是全部)。

  • 选中态改成整块填充强调色:Obsidian 内置的 button:not(.clickable-icon) 会顶掉单类选择器的背景色,之前选中只显示一圈细边框、看不出到底选没选中;改用选择器提权压过去(不写 !important
  • 筛选状态(来源 + 年份 + 起止日期)会被记住:存在设备本地存储里,重启 Obsidian、重载插件、关掉标签页再打开都还在;点「重置筛选」即清空
  • 来源被改名或删掉后,恢复时会自动剔除失效项
  • 需 Obsidian 1.13.0+

Full Changelog: 1.6.6...1.6.7

1.6.6 — 移动端视频显示首帧缩略图

Choose a tag to compare

@github-actions github-actions released this 13 Sep 01:15

桌面 Chromium 会主动为 preload="metadata"

  • 新增 src/utils/video.tsvideoThumbSrc():已带 # 或空地址原样返回,不二次拼接
  • 应用于卡片、大图 Lightbox 与发布预览三处
  • 需 Obsidian 1.13.0+(沿用 1.6.5 的 minAppVersion)

Full Changelog: 1.6.5...1.6.6

1.6.5 — 设置页改用声明式设置 API(需 Obsidian 1.13.0+)

Choose a tag to compare

@github-actions github-actions released this 13 Sep 00:55

设置页改用 Obsidian 1.13.0 的声明式设置 APIgetSettingDefinitions()),display() 已删除。

因为声明式设置要求 1.13.0,本次最低版本要求从 1.5.0 提到 1.13.0

  • 设置项现在也能被 Obsidian 自带的设置搜索搜到(以前搜不到)
  • 顺手清掉旧的 API 版本探测回退(setDestructive 现在可直接调用)
  • 来源文件夹、文件夹选择、索引统计、重建索引按钮仍保持原来的交互
  • 401 项测试全部通过

还在 Obsidian 1.12 及更早版本上?继续用 1.6.4(最后一个支持 1.5.0+ 的版本)。

Full Changelog: 1.6.4...1.6.5

1.6.4

Choose a tag to compare

@github-actions github-actions released this 13 Sep 00:15

Full Changelog: 1.6.3...1.6.4

1.6.3 — 发布时的时间戳规则与解析统一

Choose a tag to compare

@noctisvexx noctisvexx released this 12 Sep 11:24

修复

  • 发布(publish)与解析(indexer)现在共用同一套时间合法性规则。
    此前发布流程自己带了一套宽松的时间正则,- 99:99### 25:80 这类非法时间会被当成追加记录的锚点,而解析器根本不认这些行 —— 同一份笔记,一边认为是记录、另一边认为不是。
    现在两边的时间规则都从同一个来源拼出,只接受合法 24 小时制:
    • 有效:- 12:56- 9:05* 12:56- 23:59
    • 无效:- 24:00- 25:80- 99:99

说明

  • 不改动 Post 分段规则、文件格式与界面。
  • 测试 373 项全绿(新增 9 项断言,同时核对解析器与发布器对同一行的判定)。

安装:下载 main.jsmanifest.jsonstyles.css,放进 .obsidian/plugins/visual-feed/

1.6.2 — 去掉固定标题依赖,没有时间戳也能用

Choose a tag to compare

@noctisvexx noctisvexx released this 12 Sep 11:27

变更

  • 解析只按时间戳定位,不再依赖任何固定标题:正文里出现 - HH:MM### HH:MM 才算一条记录,标题叫什么都不参与判断。
  • 完全没有时间戳也照样能用:正文里一个 HH:MM 都没有时,整篇算一条记录(文件级回退),不会因为缺时间戳就把含图的笔记跳过。适合「一天一篇、每篇几张图」的写法 —— 那些图会合并成一张卡片的多图轮播
  • 日期和时分都是兜底来的:日期取 date → 路径里的年月日 → 文件修改时间;时分取 date 里的时间 → 文件名里的 HH-MM。两者都取不到就只显示日期,不硬造一个时间
  • 发布时不再创建、也不依赖任何固定标题,新文件只写 frontmatter;连一条锚点都没有就直接追加到正文末尾。
  • 移除了作者私有的日期字段与固定标题依赖。

说明

  • 测试 364 项全绿。

安装:下载 main.jsmanifest.jsonstyles.css,放进 .obsidian/plugins/visual-feed/