zhoudian
V2EX  ›  macOS

我做了一个 macOS 菜单栏日历:白纸日历

  •  
  •   zhoudian · Jun 28 · 3451 views

    我做了一个 macOS 菜单栏日历:白纸日历

    V2EX 的朋友们大家好,最近做了一个 macOS 菜单栏日历应用,叫「白纸日历」。

    它的出发点很简单:我每天都会看日期、农历、节假日、日程和提醒事项,但这些信息通常分散在系统菜单栏、日历 App 、提醒事项 App 和各种节假日查询页面里。系统菜单栏只适合看一个很短的日期,系统日历又更像一个完整管理工具,打开成本偏高。

    所以我想做一个更轻的入口:常驻菜单栏,点击一下展开,今天、农历、节假日、日程和提醒都在眼前。

    主面板截图

    它主要解决什么

    白纸日历不是想替代 Fantastical 、BusyCal 这类完整日历应用,而是想补上一个更适合中文用户的菜单栏日历:

    • 菜单栏可以显示日期、星期、时间、秒、农历/节气,格式可以自己组合。
    • 点击菜单栏后展开 42 格月历,农历小字、节气、节假日、调休、日程圆点都集中在一个面板里。
    • 支持中国法定节假日和调休标记,也会显示假期倒计时。
    • 可以展开农历黄历信息,看节气、宜忌、干支等必要内容。
    • 系统日历事件和提醒事项会合并显示在同一天视图里。
    • 可以从底部快速新建日程或提醒,也可以编辑、删除、标记完成。
    • 有多套主题和暗黑模式,可以尽量贴合自己的桌面。

    我自己比较在意的几个细节

    1. 中文日期体验

    很多 macOS 日历工具对农历、节气、调休的支持比较弱。白纸日历里,月视图每一天都可以显示农历小字,遇到节气、传统节日会优先展示更有用的信息。

    黄历部分没有做成很重的页面,只保留我觉得日常会看的信息:农历日期、节气、宜忌、干支。需要时展开,不需要时它就是一条轻量摘要。

    农历黄历截图

    2. 节假日和请假攻略

    节假日数据来自 Apple 中国节假日 iCal 订阅源,并做了本地缓存。月历里会用「休」「班」标出放假和调休上班日。

    假期卡片里还加了一个小功能:请假攻略。比如某个假期前后请几天年假,可以连休几天,会直接列出来。这个功能不复杂,但对规划小长假很实用。

    假期与请假攻略截图

    3. 日程和提醒事项放在同一天里

    我自己平时会同时用系统日历和提醒事项,但它们在 macOS 上是两个 App 。白纸日历会把同一天的日历事件和到期提醒放在一个列表里。

    提醒事项可以直接标记完成;日程和提醒都可以从面板里新建、编辑和删除。新建入口也尽量做轻,不用打开一个完整窗口。

    日程和提醒事项截图

    4. 菜单栏显示可以自己决定

    有人只想看日期,有人想看日期 + 时间,有人想连星期、秒、农历都放上去。白纸日历把这部分做成了设置项:

    • 仅日期 / 标准 / 完整 / 自定义
    • 是否显示年份、星期
    • 日期分隔符
    • 是否显示时间、秒
    • 24 小时 / 12 小时
    • 是否显示农历或节气

    如果你喜欢极简,可以只留一个日期;如果你和我一样经常看秒和农历,也可以直接塞进菜单栏。

    菜单栏设置截图

    5. 外观尽量不像工具箱

    我希望它虽然是工具,但不要太「表格感」。目前有森林绿、活力橙、清新蓝、紫罗兰、石墨灰、暗黑模式几套主题,也支持跟随系统外观。

    主题截图

    关于隐私和权限

    白纸日历不需要注册账号,也没有广告追踪。

    日历和提醒事项权限由 macOS 系统授权,授权后只用于在本机显示、创建和管理你的系统日历事件与提醒事项。农历计算在本地完成。节假日数据会从公开 iCal 订阅源拉取,并缓存在本地。

    应用包含故障诊断和崩溃信息能力,用来排查稳定性问题;这部分不用于广告追踪,也不会把你的日历和提醒事项内容拿去做用户画像。

    隐私说明截图

    适合谁

    如果你有这些习惯,可能会觉得它顺手:

    • 经常点菜单栏看今天几号、星期几。
    • 想在 Mac 上直接看农历、节气、节假日和调休。
    • 平时同时使用系统日历和提醒事项。
    • 不想打开完整日历 App ,只想快速确认今天安排。
    • 想在菜单栏里显示更完整的日期和时间。

    不太适合的情况也提前说一下:

    • 如果你需要团队协作日历、复杂会议排期、跨平台同步工作流,它不是这类重型日历。
    • 如果你完全不用系统日历和提醒事项,那它的日程整合价值会少一些。
    • 如果你不喜欢菜单栏常驻应用,也可能不是你的菜。

    下载方式

    App Store 下载地址:

    https://apps.apple.com/cn/app/id6771203171

    也可以在 App Store 搜索:

    白纸日历

    官网:

    https://baizhi.me/calendar

    反馈邮箱:

    [email protected]

    欢迎大家试用,也欢迎在评论里直接提需求、挑问题。尤其是菜单栏日期格式、节假日/调休准确性、日程提醒体验、不同 macOS 版本下的表现,这些反馈都很有价值。


    46 replies    2026-07-02 16:02:51 +08:00
    desususula
        1
    desususula  
       Jun 28   ❤️ 1
    能不能增加一个仅留菜单栏图标的功能?刘海屏的菜单栏图标寸土寸金😂
    zhoudian
        2
    zhoudian  
    OP
       Jun 28
    @desususula 非常棒的建议👍留意下一个版本哈
    dcncy
        3
    dcncy  
       Jun 28 via iPhone
    跟我刚发布的一款很像,不过我的 app 支持调休调班闹钟,支持 iPhone/ipad/mac 三端同步。

    https://mobirth.opcdrive.com
    CNN
        4
    CNN  
       Jun 28
    [建议] ①增加悬停、②自定义显示大小,例如农历显示太小

    以前很喜欢小历,可惜没了
    surmrf
        5
    surmrf  
       Jun 28
    @zhoudian 这个需求很刚需
    zhoudian
        6
    zhoudian  
    OP
       Jun 28
    @CNN
    ①增加悬停。没有理解你的意思。可以详细描述一下吗?
    ②自定义显示大小,例如农历显示太小 -> 没问题,下个版本。
    zhoudian
        7
    zhoudian  
    OP
       Jun 28
    @surmrf 感谢!也是我的刚需,哈哈。我看 app store 稍微好用点的 mac 日历都要收费,我干脆自己搞一个出来,分享给大家。
    zhoudian
        8
    zhoudian  
    OP
       Jun 28
    @dcncy 你的 mac 版本包体好大呀,不是 swift 原生的么?下载我的试试,包体积、cpu 、内存占用都是极限优化。
    dcncy
        9
    dcncy  
       Jun 28 via iPhone
    @zhoudian #8 是原生的,我塞进去了一些铃声资源导致安装包比较大。🥹
    CNN
        10
    CNN  
       Jun 28
    @zhoudian #6 即鼠标放上去自动下拉显示
    zhoudian
        11
    zhoudian  
    OP
       Jun 28
    @CNN 有看到哪个应用支持这样的功能么?我需要研究下,这题超纲了
    CNN
        12
    CNN  
       Jun 28
    @zhoudian #11 以前的「小历」
    apollo007
        13
    apollo007  
       Jun 28
    @CNN #4 我喜欢的同款软件是 LunarCal
    byasm32
        14
    byasm32  
       Jun 28
    一直在找类似的 app ,这个做的太棒了,居然还免费!
    zhoudian
        15
    zhoudian  
    OP
       Jun 28
    @apollo007 试试我这个,哈哈。包体积、cpu 、内存占用都是做到极致优化。
    FrankAdler
        16
    FrankAdler  
       Jun 28
    收了
    lambdaX999
        17
    lambdaX999  
       Jun 28
    开源吗老哥,我现在用的 Itsycal ,感觉也挺好用的,你这个里面我比较中意的就是农历功能,其它的感觉不如 Itsycal 好用。
    dantifer
        18
    dantifer  
       Jun 29
    这个看起来不错。我之前搞过一个基于 webview 的菜单栏农历小工具:

    https://calendar.zfdang.com/

    不过显然还是你这个更精致
    dantifer
        19
    dantifer  
       Jun 29
    为啥我安装之后,运行了,但是啥反应都没有呢?进程里可以看到进程,系统是 15 。7 。7
    zhoudian
        20
    zhoudian  
    OP
       Jun 29 via Android
    @lambdaX999 不开源的哈。可以分享一下 Itsycal 的优点吗?
    Honye
        21
    Honye  
       Jun 29   ❤️ 1
    我用的这个开源的 https://github.com/bylinxx/MacCalendar ,同样精美
    shervy
        22
    shervy  
       Jun 29
    我用的 Lunarbar 。
    Debug1998
        23
    Debug1998  
       Jun 29
    开发不易,铜币+1
    zhoudian
        24
    zhoudian  
    OP
       Jun 29
    @Honye @shervy 用自己喜欢的就好,哈哈。也可以试试我这个,包体积、cpu 、内存占用都是做到极致优化。
    zhoudian
        25
    zhoudian  
    OP
       Jun 29
    @dantifer 帮我看下有没有崩溃日志。路径是:~/Library/Logs/DiagnosticReports/BaizhiCalendar*.crash
    zhoudian
        26
    zhoudian  
    OP
       Jun 29 via Android
    @Debug1998 ,感恩
    ethanpeng
        27
    ethanpeng  
       Jun 29
    菜单栏能支持定制吗?
    我喜欢 MMMd 日 E 这种样式的
    zhoudian
        28
    zhoudian  
    OP
       Jun 29 via Android
    @ethanpeng 下个版本加上完全自定义的功能
    W20NY
        29
    W20NY  
       Jun 29
    两个问题
    1. 放到最右边的位置的话,弹窗会有遮挡,macos26
    2. 系统能不能隐藏时钟啊
    zhoudian
        30
    zhoudian  
    OP
       Jun 29 via Android
    @W20NY 下个版本处理 1 。问题 2 是什么意思?
    W20NY
        31
    W20NY  
       Jun 30
    @zhoudian mac 系统本身的时钟是没有办法隐藏的
    zhoudian
        32
    zhoudian  
    OP
       Jun 30 via Android
    似乎不行,至少都要显示一个小圆圈
    pmer
        33
    pmer  
       3 days ago
    去年做了一个老黄历站点和小程序:laohuangli.info

    实在无法忍受广告满天飞的 APP 和小程序,这个既是练手,也当公益来做。
    zhoudian
        34
    zhoudian  
    OP
       3 days ago   ❤️ 1
    @desususula @CNN @ethanpeng @W20NY 你们提出的建议非常好,我们已经新增或者修改好这些功能。

    本次更新主要优化菜单栏与日历显示体验:

    1. 菜单栏支持自定义日期、时间显示格式,并新增一键重置菜单栏显示选项。
    2. 支持鼠标悬停菜单栏图标时自动展开主面板,查看日历更顺手。
    3. 优化主面板弹出位置和屏幕边缘适配,减少遮挡、错位和层级问题。
    4. 新增菜单栏入口不可见时的恢复引导,帮助用户在系统设置中重新开启显示。
    5. 农历文字支持调整字号和字体颜色深浅,显示效果可按偏好微调。
    6. 关于与反馈中新增前往 App Store 评分入口。

    优化设置页布局、菜单栏预览和若干交互细节,提升整体稳定性。
    zhoudian
        35
    zhoudian  
    OP
       3 days ago
    预计下周会发布到 App Store
    LLSY
        36
    LLSY  
       2 days ago
    下载~试用支持一下~
    zhoudian
        37
    zhoudian  
    OP
       2 days ago
    @LLSY 感谢!
    zhoudian
        38
    zhoudian  
    OP
       2 days ago
    @desususula @CNN @ethanpeng @W20NY 1.2.0 版本已经上架到 App Store 应用市场。迭代版本上架还挺快的。哈哈。如果觉得好用且有时间的话,帮忙给个真实的 App Store 好评。感谢哈!
    lstt
        39
    lstt  
       2 days ago
    下载试了一下,挺好的,然后试了一下仅图标,这样菜单栏是一个日历的图标,能否设计成这个仅图标是当前的日期呢?比如今天是 2 号就是 2 。
    zhoudian
        40
    zhoudian  
    OP
       2 days ago
    @lstt 下载最新版本。设置 -> 菜单栏 -> 自定义 -> 使用自定义格式 -> 格式化字符串里面填写:d 。这样就行
    blankhang
        41
    blankhang  
       2 days ago
    建议加入 休 班的样式 类似 https://github.com/bylinxx/MacCalendar
    blankhang
        42
    blankhang  
       2 days ago
    @blankhang #41 欢迎加入交流社区,分享使用体验、提出建议。 能不能不要一直显示
    blankhang
        43
    blankhang  
       2 days ago
    @Honye #21 这个确实好用 精美
    blankhang
        44
    blankhang  
       2 days ago
    农历 节气似乎未正确显示出来 只有数字 事件也未正确显示 权限已给
    zhoudian
        45
    zhoudian  
    OP
       2 days ago
    @blankhang
    1. 有班休的,你切换到 6 月看下。6 月有一个端午。
    2. 欢迎加入交流社区,分享使用体验、提出建议。我比较想保留这个模块,因为这个模块是实现开发者和用户的重要路径。
    3. 可以详细描述一下“农历、节气未正确显示”么? 农历、节气各显示 10 秒左右的,动态自动切换。
    4. 事件也未正确显示是指提醒事项吗?日程能正确显示吗?提醒事项需要再设置->提醒事项->开启“显示提醒事项” -> 选择提醒列表 勾选你要选择的列表。
    zhoudian
        46
    zhoudian  
    OP
       2 days ago
    @blankhang “这个确实好用 精美” -> 其实还有底层极致的优化你看不到,哈哈。( cpu 占用、内存占用、包体积)
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   912 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 103ms · UTC 20:17 · PVG 04:17 · LAX 13:17 · JFK 16:17
    ♥ Do have faith in what you're doing.