# MNotes **Repository Path**: fyypll/mnotes ## Basic Information - **Project Name**: MNotes - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-01-27 - **Last Updated**: 2026-11-04 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 轻笺 轻笺是以 **快速记录 → 本地保存 → 全局找回** 为主路径的 Flutter 桌面便签应用,以 Windows 体验为重点。 ## 产品定位 面向习惯在工作旁常驻小型笔记窗口、在快速记录与持续写作之间切换的用户,提供本地优先的中文笔记与待办体验。优先保证可读性、可预测的键鼠行为、草稿保护与快速响应。 当前产品以 Flutter Windows 桌面体验为重点;Android、iOS、Web 工程骨架的存在不表示已完成这些平台的验证或发布。功能见下文,长期保护要求见 [AGENTS:产品保护约束](AGENTS.md#产品保护约束),视觉方向见 [DESIGN](DESIGN.md#overview)。 ## 文档入口 按当前任务选择入口,不默认读取全部链接: - 接手与协作规则:[AGENTS](AGENTS.md);定位资料:[PROJECT_INDEX](PROJECT_INDEX.md)。 - 接续任务:[当前状态](docs/context/NOW.md);目录与配置:[项目位置关系](docs/context/MAP.md)。 - 执行对应操作前:[RUNBOOK](docs/context/RUNBOOK.md);已确认选择:[已确认决策](#已确认决策);验证缺口:[RISKS](docs/context/RISKS.md)。 - 产品约束:[AGENTS:产品保护约束](AGENTS.md#产品保护约束);视觉规则:[DESIGN](DESIGN.md);追溯旧过程:[历史索引](docs/context/history/README.md)。 ## 已确认决策 以下简述仅用于定位,具体要求在链接的权威位置维护。2026-10-15 核对既有记录并归并,不表示本次验收或发布授权。新决定应记录理由、范围和确认来源;建议不得写成已确认决定,被替代的选择按需进入 [历史索引](docs/context/history/README.md)。 | 已确认选择 | 理由与范围 | 权威来源 | | --- | --- | --- | | 应用名称统一为「轻笺」 | 统一窗口、托盘、通知、设置和安装器的产品名称;保留内部包名、既有数据目录与备份/更新协议以兼容已有数据。来源:2026-10-16 本会话用户明确要求改名 | Dart 展示名见 [AppIdentity](lib/core/app_identity.dart),安装与升级兼容关系见 [在线更新说明](docs/context/online-updates.md#下载与安装行为) | | Windows 优先的本地笔记与待办 | 围绕快速记录、持续编辑与找回,优先可读性、草稿和响应速度;不推定其他平台已验证 | [产品定位](#产品定位),承接既有产品约定 | | 液态玻璃与整套主题色、两栏工作台与按需导航 | 来源:2026-10-23 用户认可当前冰川淡蓝液态玻璃,要求移除原风格与独立强调色入口,改为协调的主题色预设;明暗模式保留。取代此前标准/暖纸与强调色的独立选择,保留轻量常驻与草稿保护 | [DESIGN:Colors](DESIGN.md#colors),本批结果见 [NOW](docs/context/NOW.md#2026-10-23-液态玻璃主题色) | | 浮游便签采用 F「一体手笺」,五款设计颜色作为应用主题预设 | 来源:2026-10-23 本会话展示 F–K 六案并推荐 F 后,用户明确回复“好,就按这个方案开发。并且你设计的这几个颜色都作为app的主题预设颜色”。以单层编辑底座扩大正文,空间、提醒与九项编辑工具直接可达;冰川蓝、薄荷青、薰衣草、樱花粉、杏桃橙共用液态玻璃材质。替代此前浮游 A/B 布局,保留主工作台 E、明暗、透明度与草稿保护;授权开发不等于运行效果已获用户验收 | [F 六案与选型](docs/design/liquid-glass-2026-10/floating-exploration-02/README.md)、[DESIGN:Layout](DESIGN.md#layout)、[实施验证](artifacts/liquid-glass-2026-10/floating-f/verification.md) | | 玻璃边缘统一取消游离短线装饰 | 来源:2026-10-23 用户指出所有玻璃上下的不规则线条突兀。按此反馈移除独立顶部短弧和底部暗唇,保留连续圆角轮廓、渐变、模糊及柔影;覆盖主窗、浮游、速记、菜单和弹窗。这是对旧稿材料的明确修订,历史图稿不反向修改 | [DESIGN:Overview](DESIGN.md#overview),实际结果见 [NOW](docs/context/NOW.md) | | 软件图标参考 macOS 桌面应用,可自由重选配色,并与左上角品牌图形统一 | 改善图标的优雅与规范感,先探索多个方案再推荐;窗口雾蓝磨砂方向不变。来源:2026-10-19 本会话用户明确确认参考方向与配色自由,并要求主界面左上角统一;具体成稿尚待用户验收 | [DESIGN:Application Icon](DESIGN.md#application-icon),实际结果见 [NOW](docs/context/NOW.md#2026-10-19-应用图标) | | 窗栏控件采用 A「线性留白」 | 桌边栏使用面板展开图形,浮游将保存状态独立显示;2026-10-20按后续确认移除保存按钮并改为失焦自动保存,统一工具语言与命中范围。来源:2026-10-19 本会话展示四款并推荐 A 后,用户回复“就这样,开始吧”授权实施;不包含 E 整套编辑布局 | [DESIGN:Layout](DESIGN.md#layout),选型见 [窗栏控件](docs/design/editor-layouts/window-controls.md),实际结果见 [NOW](docs/context/NOW.md#2026-10-19-窗栏控件实施) | | 三处编辑统一失焦自动保存 | 浮游便签、主界面和桌边栏移除独立保存按钮与离开/关闭时的保存确认,输入框失焦后自动写入;失败留在原编辑器并保留草稿和重试,主动放弃仍须确认。来源:2026-10-20本会话用户要求并明确确认三处统一,随后要求去掉原保存提示;完整编辑弹窗和临时速记不在此次范围 | [DESIGN:Layout](DESIGN.md#layout),实际结果见 [NOW](docs/context/NOW.md#2026-10-20-失焦自动保存) | | 独立标题与正文,常用编辑工具直接可见 | 来源:2026-10-20用户确认保留两个字段,只重排按钮与视觉层级,并授权多候选后由助手选推荐、规划并实施。此次选B底部常驻布局,沿用E的自适应容量;具体效果待用户验收,不将助手选型记为用户逐项批准 | [DESIGN:Note List / Editor](DESIGN.md#note-list--editor),选型与计划见[连续文稿方案](docs/design/editor-layouts/composition-plan.md),实际结果见[NOW](docs/context/NOW.md#2026-10-20-编辑区连续排版) | | 浮游提醒完整可见,选项保持轻量可扫读 | 来源:2026-10-20用户先要求解除宿主裁切,随后否定日期输入变形、底部黑影和月历滚动,授权重新比较并实施。保留相邻独立工具窗与菜单 A「轻量分组动作」;提醒内部改选 A「完整月历双栏」,稳定输入和固定六周月历,空间受限采用分页或文字输入。此为授权范围内的助手选型,不表示用户已验收 | [DESIGN:Overlays / Feedback](DESIGN.md#overlays--feedback),[三款提醒再设计](docs/design/editor-layouts/reminder-refinement-plan.md),[本批验证](docs/design/editor-layouts/reminder-refinement-verification.md);前批菜单依据见[六款候选](docs/design/editor-layouts/floating-panels-plan.md) | | 全界面采用各审核单元的最终推荐 | 来源:2026-10-20本会话用户要求“把之前设计的界面都实现吧”;统一接入49个单元,旧保存/Aa方案以后续已确认的自动保存和E工具栏替代。互斥候选保留选型,不增加布局切换负担;源码、自动化、原生与用户验收分别记录 | [接入范围](docs/context/ui-review.md#2026-10-20-推荐方案统一接入)、[本轮证据](docs/context/NOW.md#2026-10-20-全界面推荐方案统一接入),现行视觉仍以[DESIGN](DESIGN.md)为准 | | 保持兼容性、草稿与可访问性 | 既有产品约定要求在存储、界面和原生窗口变更中继续保留 | [AGENTS:产品保护约束](AGENTS.md#产品保护约束),2026-10-15 归并 | | 按需读取、单一事实来源与分层验证 | 支持后续 AI 可靠接续,适用于项目协作 | [AGENTS](AGENTS.md),来源为 2026-10-15 用户要求 | ## 当前功能 - 本地 SQLite 数据库(首次启动自动创建) - 随手记与待办空间,支持新建自定义空间 - 快速记录:主界面、桌边栏与浮游输入框失焦后自动保存;临时速记和完整编辑弹窗保留显式保存,`Ctrl/⌘ + Enter`、`Ctrl+S`可立即提交 - 连续编辑、全部空间搜索、置顶;列表支持最近修改/最近创建/标题排序,待办可直接完成并按完成状态筛选 - 快速切换:工作区/速记菜单或 `Ctrl+P` 按标题查找,支持最近访问、键盘选择与跨空间打开 - 正文内查找:编辑工具中的查找或 `Ctrl+F`,支持匹配计数、上一处/下一处与 `Esc` 收起 - 软删除 - 回收站:最多 200 条批量选择、恢复后查看原记录(批量时按标题与空间选择)、二次确认后的永久删除,已删除记录保留 30 天 - 按需空间导航:点击当前空间标题打开抽屉,保留空间管理、备份、回收站和设置入口 - 双主界面布局:两栏工作台与桌边便签栏;桌边栏可停靠左右侧,点击便签在栏内编辑,返回列表保留草稿,一键展开工作台;尺寸及响应式规则见 [DESIGN:Layout](DESIGN.md#layout) - 自适应编辑工具栏:主工作台常驻八项、浮游常驻九项编辑工具,桌边栏与速记按可用宽度安排常用入口;菜单继续提供低频格式、剪贴板插图与查找,具体规则见 [DESIGN:Layout](DESIGN.md#layout) - Markdown 阅读视图:支持标题、列表、代码块、引用和安全的 data URL 内嵌图片预览 - 从文件或 Windows 剪贴板插入图片:自动缩放并转换为受限的 WebP data URL - 便签列表右侧预览正文第一张图片,新建和编辑时实时更新,无图记录不预留空白 - 记录移动(保留原始便签/待办类型) - 自定义空间重命名与拖拽排序 - 删除自定义空间:可迁移记录,或将记录移到回收站后删除 - 结构化备份:导出 `.mnotes-backup`,导入前查看不含正文的变更预览,确认后自动快照并原子恢复 - 外观:跟随系统、浅色、深色;冰川蓝、薄荷青、薰衣草、樱花粉、杏桃橙五款液态玻璃主题色,整窗协调切换;设置展示玻璃小窗预览 - Windows 在线更新:设置中的“版本与更新”支持启动时检查、手动检查、更新说明、下载进度/取消及安装包校验;安装由用户主动启动。默认使用本仓库 Gitee 发行版,发布流程见 [在线更新说明](docs/context/online-updates.md)。 - 提醒:主界面、桌边栏、浮游与完整编辑可设置时间;浮游点击窗栏铃铛直接打开相邻工具窗,也可通过「便签选项 → 提醒」进入。完整月历与快选、日期及24小时时间同页,已有提醒可在其中移除,点击「完成」后自动保存;到期后由 Windows 通知提示,可在记录中消除 - Windows 托盘:关闭主窗口时隐藏到托盘,可从托盘显示或退出;同一数据目录只运行一个主进程,再次点击快捷方式会唤回已有主窗口,保留浮游便签与草稿 - 退出保护:主界面、桌边栏离开与浮游关闭先等待自动保存,不再弹出保存确认;失败保留原编辑器、草稿与重试入口。速记保留保存/放弃/继续编辑,主程序退出前需先处理浮游窗口 - 窗口选项:主界面布局、桌边停靠位置、置顶、不透明度、展开窗口恢复、独立的紧凑速记模式及速记保存后隐藏 - 全局快捷键:可配置组合键以显示窗口并聚焦速记;`F1` 查看快捷键,`Ctrl+K` 搜索,`Ctrl+N` 新建便签,`Ctrl+Shift+N` 新建待办 - 浮游便签:F「一体手笺」使用连续液态玻璃写作面,单行窗栏显示便签标题、保存状态及空间、提醒、选项、置顶和关闭入口;底部九项常用编辑工具直接可用。打开即写,点击标题或 F2 就地修改,输入失焦自动保存;保留草稿保护与跨窗口同步,不单独占用任务栏。材质与交互见 [DESIGN](DESIGN.md#quick-capture--detached-note) - 删除撤销:移到回收站后 5 秒内可通过轻提示直接恢复,之后仍可从回收站恢复 - 操作反馈:窗口顶部的紧凑轻提示,普通消息约 3 秒、错误或带操作的消息约 5 秒自动收起;悬停或键盘操作时暂停计时 - Markdown 导出:可导出单条记录或全部记录 - 本地自动快照:写入后 45 秒创建 `.mnotes-backup` 快照,启动时补偿缺失或过期快照,保留最近 30 份;备份窗口可查看健康状态、手动创建、打开或复制快照目录 在工作区选项或「设置 → 主界面布局」中切换桌边栏;桌边栏是普通覆盖式窗口,不预留系统工作区,也不强制置顶。详细规则见 [设计系统:桌边便签栏](docs/context/design-system.md#桌边便签栏)。 浮游提醒窗会显示所属便签标题,打开时仍可在原便签继续记录;再次选择「提醒」会聚焦同一工具窗。日期可直接点击完整月历或输入,空间不足时使用日期/时间分页,极短窗口使用文字输入。输入需晚于当前时间,取消、Escape或关闭保留原提醒。三点菜单中「消除提醒」仅消除到期状态;移除时间设置在提醒窗内操作。设计与实际验证边界见[提醒面板再设计验证](docs/design/editor-layouts/reminder-refinement-verification.md)。 ## 本地开发 需要 Flutter stable、Visual Studio 的“使用 C++ 的桌面开发”工作负载。将 Flutter SDK 的 `bin` 目录加入 PATH,在项目根目录运行: ```powershell flutter pub get flutter analyze flutter test --no-pub flutter run -d windows ``` 如 Windows 分析服务在含中文的项目路径下报告 LSP 编码异常,可使用临时的 ASCII 路径映射运行,完成后移除自己创建的映射。 ## Windows 构建 ```powershell flutter build windows --release ``` 完整程序位于 `build/windows/x64/runner/Release/`,运行其中的 `qingjian.exe`,不要只复制单个 exe。安装包通过下列脚本生成(工具版本要求与完整步骤见 [在线更新说明](docs/context/online-updates.md#发布-windows-安装包)): ```powershell ./tools/build_windows_release.ps1 -ReleaseNotesFile ./docs/releases/1.0.0.md ``` 安装包输出到 `build/releases/`。脚本只构建本地产物,不会自动发布在线更新。 ## 验证基线 当前任务与检查范围见 [NOW](docs/context/NOW.md),验证缺口见 [RISKS](docs/context/RISKS.md)。过去的测试数字、截图和验收结果已统一归入 [历史索引](docs/context/history/README.md),不代表当前代码的验证结果。