mirror of
https://github.com/mousebomb/obsidian-diary-ics.git
synced 2026-07-22 05:49:47 +00:00
No description
| .editorconfig | ||
| .eslintignore | ||
| .eslintrc | ||
| .gitignore | ||
| .npmrc | ||
| esbuild.config.mjs | ||
| LICENSE | ||
| main.ts | ||
| manifest.json | ||
| package-lock.json | ||
| package.json | ||
| README.md | ||
| styles.css | ||
| tsconfig.json | ||
| version-bump.mjs | ||
| versions.json | ||
Obsidian Diary ICS
这是一个Obsidian插件,用于将Obsidian的日记系统内容同步到系统的日历应用中(如macOS日历、Windows日历等)。
核心功能
生成ICS日历订阅文件
- 插件会根据Obsidian中的日记内容,自动生成一个ICS格式的日历订阅文件(.ics)
- 该文件将被托管在本地的一个HTTP端口上(例如:
http://127.0.0.1:19347/feed.ics) - 系统日历应用可以订阅这个链接,从而实时同步Obsidian的日记内容到系统日历中
日记内容解析规则
- 插件会解析Obsidian中的日记笔记文件(通常是按日期命名的Markdown文件)
- 从这些文件中提取出一级或二级标题(由用户配置)
- 每个提取出的标题将作为一条日历条目,对应当天(即文件名中的日期)
日历条目详情
每个日历条目(事件)将包含以下内容:
- 标题:从日记文件中提取的一级或二级标题
- 备注(Description):包含一个可点击的链接,格式为:
obsidian://open?vault=你的库名&file=日记文件路径,点击后可以直接跳转回Obsidian的对应日记文件中
示例说明
假设你有一个日记文件:2025-05-14.md,内容如下:
# 今天的工作总结
## 上午任务
- 完成项目A的模块1
## 下午任务
- 与团队开会讨论需求
用户在插件设置中设置了提取所有二级标题。则,插件会提取出两个日历条目:
- 事件1:标题为"上午任务",备注中包含链接
- 事件2:标题为"下午任务",备注中包含链接
系统日历订阅了 http://127.0.0.1:19347/feed.ics 后,就能看到这两个事件。
使用方法
- 在Obsidian中安装并启用此插件
- 在插件设置中配置:
- 要提取的标题级别(一级或二级标题)
- HTTP服务器端口(默认为19347)
- 复制插件提供的ICS订阅链接
- 在系统日历应用中添加该订阅链接
- 现在,你的Obsidian日记内容将自动同步到系统日历中
开发信息
- 本插件使用TypeScript开发
- 使用Obsidian API访问日记文件内容并监听文件变化
- 启动本地HTTP服务器提供ICS文件
- 按照ICS标准生成日历文件