项目记录3 分钟阅读

牛马日记:从一个简单的桌面工具开始

从任务与工作记录,到迷你工作台和窗口托管,一份有边界的项目演变记录。

起点是一个本地工作台

牛马日记是一款以 Windows 本地桌面端为核心的个人任务管理与工作记录工具。它把任务、项目、日历和工作记录放在一起,使用 Python 与 PySide6 构建界面,使用 SQLite 存储本地数据。

本篇依据项目说明和源码整理,不是一次新的软件验收报告。可确认的版本记录到 V0.3.2;源码中出现的 V0.3.3 版本号,不被直接当作正式发布证明。

先解决数据留存,再扩展交互

V0.1 是初始版本。V0.2 引入 SQLite 本地数据库和备份机制,V0.2.1 继续处理视觉统一与节假日信息。这个次序有一个实际意义:界面可以调整,但已经输入的数据需要有稳定的保存和恢复路径。

备份也不是简单把“导出”按钮放上去。正在写入的数据如何形成一致快照,恢复前是否保留旧库,导入失败后能否回到原状态,这些都属于同一条链路。更细的原理见本地优先与 SQLite。

窗口小了,状态并没有变少

V0.3 增加托盘和迷你工作台;V0.3.1 继续加入极简模式、窗口吸附和快捷操作。小窗口的难点不只在于缩小布局,还包括主窗口与迷你窗口如何保持一致,以及跨日期、隐藏、退出时如何处理尚未保存的输入。

如果同一份记录能在两个位置编辑,后写入的内容不应无条件覆盖先写入的修改。对使用者来说,“没有悄悄丢失内容”比刷新动画更有价值。

吃草功能的边界

V0.3.2 的吃草功能围绕外部窗口托管展开。根据项目说明,它使用 Windows 窗口定位能力,让选定窗口与工作区配合;外部软件仍是独立窗口,并不是把浏览器或播放器嵌入应用。

这一区别决定了恢复原位置、处理窗口关闭、避免误认复用的窗口句柄,都属于需要认真处理的状态问题。本文不承诺所有外部软件或多显示器组合都已通过验证。

让版本号对应具体事实

页面会展示版本节点,但不会为缺少证据的发布日期补一个日期,也不会把规划当成功能。网站文章日期表示本篇整理日期,不代表对应软件的发布日期。

后续方向记录在从单机到多端协同中。它是一份问题清单和规划,不是一份已完成产品的宣传页。

— 记到这里,下次接着折腾。 —