Skip to content

日历同步

将 Obsidian 与日历应用集成,可以实现日程管理、会议记录和时间追踪。本文介绍与 Google Calendar 和 Apple Calendar 的同步方案。

为什么集成日历?

  • 📅 日程可视化:在 Obsidian 中查看日程安排
  • 📝 会议记录:自动创建会议笔记模板
  • ⏱️ 时间追踪:记录活动时间
  • 🔗 双向链接:笔记与日程相互关联

方案对比

方案平台双向同步难度
Calendar 插件全平台
Full Calendar 插件全平台⚠️⭐⭐
ICS 插件全平台
iOS 快捷指令iOS/macOS⭐⭐
Templater + API全平台⭐⭐⭐

方案一:Calendar 插件

这是最简单的方案,适合查看和管理日记。

安装

  1. 设置 → 核心插件 → 启用 "日记"
  2. 设置 → 第三方插件 → 搜索 "Calendar" → 安装

功能

  • 侧边栏日历视图
  • 快速创建日记
  • 显示日记完成状态
  • 周视图和月视图

配置

在插件设置中:

yaml
# 日记文件夹
folder: daily

# 日期格式
dateFormat: YYYY-MM-DD

# 周起始日
startWeekOn: Monday

方案二:Full Calendar 插件

功能更强大的日历插件,支持从日历文件读取事件。

安装

  1. 安装 "Full Calendar" 插件
  2. 在设置中配置日历源

支持的日历源

  1. 本地 ICS 文件

    yaml
    type: local
    path: calendars/work.ics
  2. 远程 ICS 链接

    yaml
    type: remote
    url: https://calendar.google.com/xxx/basic.ics
  3. Obsidian 笔记中的事件

    yaml
    type: fullNote

在笔记中创建事件

markdown
---
type: event
date: 2024-02-15
startTime: 14:00
endTime: 15:30
title: 项目会议
location: 会议室A
---

## 会议议程
- 讨论项目进度
- 分配任务

方案三:Google Calendar 集成

方法一:使用 ICS 链接(只读)

  1. 在 Google Calendar 中获取 ICS 链接

    • 设置 → 设置 → 选择日历 → 获取日历地址
    • 复制 ICAL 格式链接
  2. 在 Full Calendar 中添加远程源

方法二:使用 Templater 自动化

创建一个 Templater 脚本获取日历事件:

javascript
<%*
// 使用 Google Calendar API 获取事件
// 需要配置 OAuth 认证
const events = await fetchGoogleEvents();

for (const event of events) {
  tR += `- ${event.start} - ${event.title}\n`;
}
%>

注意

Google Calendar API 需要在 Google Cloud Console 中配置项目和凭据。

方案四:Apple Calendar 集成

macOS 自动化

使用 AppleScript 创建日程到 Obsidian:

applescript
tell application "Calendar"
  set theEvent to first event of calendar "Work"
  set eventTitle to name of theEvent
  set eventStart to start date of theEvent
end tell

tell application "Obsidian"
  -- 创建笔记
end tell

iOS 快捷指令

创建快捷指令将日程发送到 Obsidian:

  1. 获取日历事件
  2. 格式化为 Markdown
  3. 使用 Obsidian URI 创建笔记
obsidian://new?vault=MyVault&file=Meeting%20Notes/{{date}}&content={{formatted_content}}

日程笔记模板

会议笔记模板

markdown
---
date: {{date}}
time: {{time}}
attendees: 
tags: [meeting]
---

# {{title}}

## 参会人员
- 

## 议程
1. 
2. 

## 讨论内容

## 行动项
- [ ] 

## 下次会议
- 时间:
- 议题:

日计划模板

markdown
---
date: {{date}}
type: daily
---

# {{date:YYYY-MM-DD}} 日计划

## 今日日程
```fullcalendar
type: remote
url: YOUR_CALENDAR_ICS_URL

今日目标

  • [ ]
  • [ ]
  • [ ]

笔记

明日计划


## 最佳实践

### 1. 统一日程文件夹结构

Vault/ ├── Calendar/ │ ├── Daily/ │ ├── Meetings/ │ └── Events/ └── Templates/ ├── meeting.md └── daily.md


### 2. 结合周期性笔记

使用 [Periodic Notes](../advanced/periodic-notes.md) 插件管理周计划和月计划。

### 3. 自动化工作流

使用 [QuickAdd](../advanced/quickadd.md) 创建快捷操作:

- 快速创建会议笔记
- 自动从日历获取参会人员
- 会后添加行动项到任务列表

## 版本要求

> [!note] 版本说明
> - **Calendar 插件**:需要 Obsidian 0.9.0+
> - **Full Calendar 插件**:需要 Obsidian 0.13.0+
> - **URI 协议**:需要 Obsidian 0.10.0+

## 相关资源

- [日记](../basics/daily-notes.md) - 日记功能详解
- [周期性笔记](../advanced/periodic-notes.md) - 周期笔记管理
- [QuickAdd](../advanced/quickadd.md) - 自动化工作流
- [iOS 快捷指令](../basics/ios-shortcuts.md) - iOS 集成
最后更新:2026年3月28日编辑此页反馈问题