跳到主要内容

KDE 使用 KOrganizer 和系统时钟打造完美中国农历与调休节假日日历

·1 分钟

[可选] 第一部分:在 KOrganizer 中添加中国节假日 #

KOrganizer 是 KDE 生态中的核心日程管理工具。我们先在客户端内把基础数据配置好。

启用内置的中国公共节假日 #

KDE 内置了 libkholidays(节日库),无需下载任何文件即可开启基础节日:

  1. 打开 KOrganizer,在顶部菜单栏依次点击 设置 (Settings) -> 配置 KOrganizer (Configure KOrganizer)
  2. 在左侧面板中选择 时间和日期 (Time & Date)
  3. 切换到右侧的 假日 (Holidays) 选项卡。
  4. 在国家/地区列表中滚动找到 中国 (China) 并勾选。
  5. 点击 应用 (Apply)

第二部分:添加精准的“调休/补班”日历 #

由于国内的调休安排每年都在变动,KDE 内置的静态节日库无法做到完美同步(比如哪天该补班)。我们需要通过 iCal (.ics) 链接订阅网络上开源维护的动态日历。

1. 推荐的日历订阅源 #

你可以在 KOrganizer 中使用以下高质量的开源数据源:

  • GitHub 开源中国节假日源china-holiday-calender

    https://www.shuyz.com/githubfiles/china-holiday-calender/master/holidayCal.ics
    
  • GitHub 开源中国农历源Chinese-Lunar-Calendar-ics

    https://lwlsw.github.io/Chinese-Lunar-Calendar-ics/chinese_lunar_my.ics
    

2. 在 KOrganizer 中添加订阅 #

  1. 在 KOrganizer 左下角的“日历列表”空白处右键,选择 添加日历 (Add Calendar)
  2. 在弹出的类型列表中选择 来自网络的日历 (Calendar file from network)iCal 日历文件
  3. 将上面的 .ics 链接粘贴进去。
  4. 设置合理的自动刷新频率(例如:每 7 天刷新一次),点击确定。

第三部分:让右下角系统时钟与 KOrganizer 同步显示事件 #

很多同学在 KOrganizer 里配置好了 .ics 调休源,但点击系统右下角的时间挂件时,却发现里面依然是空的,没有显示任何节假日和补班事件。这是因为 KDE 的数字时钟挂件默认不读取 PIM 数据库,我们需要手动为其打通管道。

核心配置步骤 #

步骤 1:启用时钟的 PIM 事件插件 #

  1. 鼠标右键点击屏幕右下角的 数字时钟 (Digital Clock),选择 配置数字时钟 (Configure Digital Clock…)
  2. 在左侧导航栏中点击 日历 (Calendar)
  3. 在右侧的“可用插件 (Available Plugins)”列表中,勾选 日历事件
  4. 点击右下角的 应用 (Apply)

步骤 2:在时钟里勾选你的 ics 数据源 #

  1. 刷新后,时钟配置的左侧导航栏会多出一个名为 日历事件 (Events) 的选项,点击它。
  2. 在右侧展现出来的日历数据源列表中,找到你刚才在 KOrganizer 里添加的那个中国节假日 ics 订阅源
  3. 务必将其前面的复选框勾选上。你还可以顺便在旁边为它指定一个醒目的颜色(比如红色)。
  4. 点击 确定 (OK) 保存。

🔍 常见问题与排查 #

如果你配置完成后,点击时钟发现依然没有显示小圆点或事件,可以尝试以下两种方法强制刷新:

  1. 强制强制 Akonadi 后端同步: 打开 KOrganizer,在左侧你添加的 ics 资源上右键,选择 检查更新 (Check for Updates)
  2. 强制刷新 Plasmashell 缓存: 有时候系统挂件存在 UI 缓存,可以在终端或 Alt + Space 运行以下命令重启桌面外壳:
    plasmashell --replace