Repository navigation
Plainstruct 3.3.0 Release
[3.3.0] - 2026-09-30
修复
-
修复站内锚点链接全部失效:
[文字](文档.md#章节)中的#此前随路径一起被 URL 编码成%23,浏览器把文档.html%23章节当作文件名而非页面锚点 —— 构建产物与发布站点中所有带锚点的站内链接均指向错误地址(编辑器预览因点击拦截先解码而侥幸正常,更不易察觉)。现锚点在路径编码之外原样拼接,文档内跳转恢复正常 -
修复打开文档瞬间的输入丢失:点击切换文档时,读取新文档的等待窗口内对旧文档的键入会随内容被整块覆盖且从未落盘。现切换前检测到未保存输入会先补存回旧文档,编辑体验无任何变化
-
修复删除文档可能被「自动保存」复活:删除当前打开的文档时,等待删除的窗口期内自动保存定时器可能把已删文件按旧内容重新写回。现在先把编辑器切离该文档再执行删除
-
修复构建跨越站点切换时产物写错站点:构建(清空/写出/拷贝三步)此前按后端「当前站点根」落盘,构建飞行期间切换或关闭站点会让旧站点的产物写入新站点的 build/ 目录。现构建调用钉死发起时的站点根 —— 落盘命令携带该根交后端校验,站点已切换则整体拒绝;过期构建结果也不再写入报告、不刷新预览
-
修复首次构建期间的文档保存被静默丢弃:首次构建飞行中的保存此前不会触发「构建后补建」,产物停留在旧内容;现已与其他构建行为一致,补建机制对首建同样生效(「从未构建就不自动生成产物」的行为保持不变)
-
修复 asset/images 子目录泄漏进站点导航:
asset/(及旧images/)下的子目录此前会按普通目录进入站点导航并生成目录列表页;现整棵资产子树一律排除,只作为资源输出 -
修复博客文章日期排序错乱:front-matter 日期原样保留、不保证零填充,
2026-9-1按字符串比较会排到2026-10-1之后;现按年-月-日数值比较,非日期文本回退原有行为 -
修复主题 ZIP 导入的解压炸弹风险:畸形压缩包(条目声明解压后数 GB)此前在大小检查生效前就已把内容读入内存,可致应用内存耗尽闪退;现读取前按 zip 头声明的解压后大小预检(单条目上限 20MB)
-
修复主题制作器保存时的崩溃:保存主题文件期间的等待窗口内退出制作器,保存流程完成时会因编辑状态已清空而报错中断;现各等待点复查状态,已退出则静默收尾
-
修复偶发启动白屏,新增启动分级自愈与白屏急救:部分用户反馈应用启动偶尔白屏,清除软件数据后恢复。经排查,根因是 WebView 界面层的用户数据(磁盘缓存、代码缓存等)损坏 —— 应用内更新解压覆盖、WebView2 运行时自动升级、进程被强制结束都可能诱发;免安装版这些数据就存放在程序目录内,「清除软件数据」恰好把它一并清掉,因而表现为清数据即恢复。现不再依赖手动清理,启动层自带三级自愈:启动失败先自动重载一次(多数偶发问题到此即恢复);仍失败则自动清除 WebView 浏览数据后重载(等效于此前用户手动清数据);依旧失败才显示错误详情交人工反馈。失败计数跨启动累计、启动成功即清零,失败详情落盘数据目录
boot-failures.log便于远程排查;上一轮已走到清数据档时,下一轮启动会在页面加载前先给一个干净环境。另在设置 → 数据新增「清除浏览器缓存」急救按钮(清除界面层缓存与本地存储后自动重载,站点与设置不受影响),无法自愈的极端情况可一键处理;挂载成功后启动诊断层不再接管,运行期错误不会再误弹全屏诊断遮罩 -
修复博客文章目录点按后不跳转:文章页右侧目录的链接此前点了没有反应(或落在标题上却"看不见标题")。两处原因:一是预览用的 iframe 出于安全只保留同源、关闭了其中的脚本,主题自带的目录跳转脚本不会执行;二是构建产物里标题与吸顶顶栏之间没有留白,锚点即便跳转,标题也会正好被顶栏压在下面。现在目录链接由主题脚本自己接管滚动(并写回地址栏哈希),预览侧由宿主代为滚动;正文标题统一带
scroll-margin-top,落点始终停在顶栏之下 -
修复资产页分组渲染全部图片:卡片视图按文件夹分组时,每个分组都渲染了全部图片 —— 同一张图会在每个文件夹下重复出现。现每个分组只渲染自己目录中的图片
-
修复资产页「移动到…」弹窗没有目标文件夹下拉:弹窗内的目标选择组件此前未在本页导入,永远渲染不出来,只能靠拖放移动。现补齐导入,弹窗与拖放两条路径都可用
新增
-
Windows 图标圆角化:Windows 的应用图标(任务栏/桌面/安装包)从方形白底裁切为圆角矩形(标准 app 圆角比例,四角透明),与 macOS 观感统一;macOS 图标与移动端图标不变
-
界面字号滑块:设置 → 个性化新增「界面字号」滑块(85%–130% 连续调节),只缩放文字、布局随内容自适应 —— 按钮卡片行高自然伸缩,图标与控件尺寸不变;拖动即时预览,松手保存;偏离 100% 时出现一键重置;即刻生效并跨启动记忆
-
界面字重滑块:设置 → 个性化新增「界面字重」滑块(400–600),拖动调节基础文字的笔画粗细;标题、按钮等原本加重的元素保持原有层级,排版层次不乱
-
首页标语精简:首页标语调整为「本地静态站点创建器」
-
关于页工作室字标可点击:悬停在关于页底部的 MogroWang Studio 字标上会模糊并浮现「点击前往 MogroWang Studio 官方网站」引导文字,点击即打开 www.mogrowangstudio.top;键盘聚焦时同样浮现
-
关于页中文标点全角化:中文界面下关于页简介文案的逗号统一为全角标点
-
关于页分板块呈现:介绍文案、架构(Vue 3 · TypeScript · Tauri 2)、工作室(字标与版权)拆为三个独立卡片,各带小节标题,层次更清晰;工作室字标的悬停引导与点击跳转保持不变
-
站点设置标题格式一键插入令牌:「浏览器标题格式」输入框下方新增 {page} 与 {site} 等宽小徽章按钮,点击即把占位符插入光标处(自动恢复焦点与光标位置,未聚焦时追加到末尾);悬停提示说明各占位符含义
-
内容页文件树与资产栏大小可拖拽调整:文件树侧栏宽度(180–360px,右缘分隔线)与底部资产栏高度(120–420px,顶缘分隔线)均可上下/左右拖动调整,分隔线以伪元素扩展命中区(视觉仍为 1px 细线),拖动即时生效;界面缩放档位下指针坐标自动换算,任意字号档位拖拽跟手;资产页详情窗宽度的拖拽同样补齐该换算
-
资产栏视图切换单按钮化:内容页资产栏的「卡片视图/列表视图」两枚按钮合并为单枚切换按钮 —— 图标即将要切换到的视图,悬停提示同步说明(切换为卡片视图/切换为列表视图)
-
启动动画:应用启动画面加入品牌动画,设置 → 个性化可选四种预设 —— 「浮现」(一次性淡入上浮)、「呼吸」(循环呼吸,启动慢时明示仍在工作)、「进度线」(不定进度来回扫动)或「关闭」(静态);就绪后启动画面整体淡出与主界面交叉衔接,不阻塞启动;偏好镜像本地存储以在配置加载前同步生效,并完整适配减弱动态偏好
-
修复界面字号破坏界面的问题,实现改为只缩放文字:此前以整页 CSS zoom 等比缩放实现,实际使用中会挤压可视区域、并牵连浮层与拖拽的坐标计算(macOS 的 WebView 下尤为明显),大档位下界面难以正常使用。现全部界面字号统一乘以字号档位变量,只放大文字、布局随内容自适应 —— 按钮/卡片/行高自然伸缩,图标与控件尺寸不变,深浅主题与减弱动态偏好不受影响;新建站点向导弹窗在大字号下支持滚动
-
新建站点类型卡片带迷你界面预览与流畅切换过渡:新建站点窗口中,「文档站点」与「博客站点」两张选择卡片顶部各带对应类型站点的迷你界面示意(常显,跟随深浅主题)—— 文档站为侧栏目录 + 正文,博客站为顶栏导航 + 文章流;来回切换时选中态以非线性缓动平滑过渡(缩放/透明度/描边/阴影,可随时反向),预览框随选中同步提亮,并完整适配减弱动态偏好
-
资产显示文件详细大小:资产页详情窗在路径下方显示文件的详细大小(如「1.2 MB · 1,234,567 B」,人类可读与精确字节并列);网格卡片悬停提示同样带大小;文件树节点数据新增文件字节数,资产栏与资产页同源
-
资产卡片默认显示文件大小:资产页每张卡片的「N 处引用」下一行直接展示文件大小(等宽字体,与详情窗同源);文件大小数据此前已加入文件树节点,详情窗的详细大小(可读 + 精确字节)保持不变
-
资产页双视图与文件夹管理:资产页新增「卡片 / 列表」双视图切换(单按钮)—— 列表视图含缩略图、路径、大小、引用数与操作;支持在资产中新建文件夹,并可将图片移动到任意资产子文件夹 —— 移动后文档中的引用路径自动重定向(与渲染管线同一套换算),打开中未保存的文档会提示跳过;卡片视图按子文件夹分组展示
-
博客主题顶栏滚动形态(五款博客主题):主题配置新增「顶栏滚动形态」—— 「固定不动」(原状)、「药丸」(滚动后顶栏收成居中浮动胶囊)、「圆角矩形」(滚动后浮起为圆角条);滚动超过阈值自动变形并带非线性过渡,完整适配减弱动态偏好;手记·浅色/深色、专栏、日志、留白五款主题同步,主题版本升至 3.3.0
-
最近打开列表显示站点类型与大小:每条最近站点在路径下方显示「站点类型 · 站点文件夹大小」(如「文档站点 · 12.3 MB」),信息异步获取、不阻塞启动;文件夹已不存在的条目显示占位
-
修复更改设置后重启软件无界面的问题(启动画面永久滞留):在全新数据目录上,第一次保存的设置若不是语言(例如启动动画),settings 里就只有那一个字段 —— 下次启动时
settings.locale缺失,vue-i18n 对空 locale 抛错导致初始化失败,启动画面永久滞留(界面完全不显示)。现读取与保存设置时都会补齐全部默认字段(受影响的老数据自动治愈);初始化万一失败也会留下诊断日志并以默认设置降级进入界面,不再滞留 -
修复 macOS 关闭窗口后再次启动软件看不到界面:关闭主窗口现在按 macOS 惯例改为隐藏(保留界面),再次启动软件时由单实例机制把主窗口带回前台(此前二次启动的回调为空,窗口关闭后进程仍在却不恢复界面);Windows 关闭后快速重启的短暂窗口期同样受益
-
修复启动自愈的预防清理从未生效:boot-state 的读取发生在数据目录初始化之前,永远读到空路径;已移到其后
-
博客主题顶栏变形宽度可调(五款博客主题):主题配置新增「顶栏变形后宽度」滑块(360–1600px,默认 720px),仅在「顶栏滚动形态」为「药丸」或「圆角矩形」时出现 —— 变形后的宽度与未变形时的「顶栏宽度」解绑,可独立设置顶栏浮起时收成多宽;宽度过渡与形态变形同步(220ms 标准缓动),完整适配减弱动态偏好
-
博客主题封面图宽度可调(五款博客主题):主题配置新增「封面图宽度」滑块(40%–100%)—— 100%(默认)保持原有满宽出血外观,收窄后封面在卡片中居中并带四角圆角
-
博客主题文章目录设置(五款博客主题):主题配置新增「启用文章目录」开关与两项目录外观 —— 「目录树风格」(缩进线 / 树形分支 / 极简:分支用按层级收进的 ├─ 折线替代通栏竖线,极简只留层级缩进与强调色)与「目录悬停动画」(无 / 滑入 / 微移 / 底色:分别为左侧指示条展开、文字微移、底色浮现);目录可整体关闭,悬停动效统一 180ms 标准缓动并适配减弱动态偏好
-
站点内 / 站点外双 Logo:站点设置把 Logo 拆为两项 —— 「站点内 Logo」显示在网站页面里(尺寸与圆角仍由主题的 Logo 配置决定),「站点外图标」只用于浏览器标签页与收藏夹,两者独立设置、分别移除;站点外图标未设置时自动沿用站点内 Logo,旧站点外观不变
-
资产页框选多选与拖放移动:资产页支持框选(在空白处按住拖动划出选区,命中即选中)、Ctrl/⌘ 点选与 Shift 连选;选中项可整批拖到文件夹标题上移动,也可用「移动到文件夹…」弹窗;移动后文档中的引用路径自动重定向(与渲染管线同一套换算,打开中未保存的文档提示跳过);右栏在多选时切换为批量操作面板(合计大小、已选清单、批量移动与批量删除)
-
资产页空文件夹可见:新建的资产文件夹即使还没有图片也会以分组形式列出(虚框、标注「空文件夹」),可以直接把图片拖进去
变更
- 资产页按钮图标重绘:刷新、铅笔(重命名)、垃圾桶(删除)、图片(占位)与网格(视图切换)五枚图标按 24 网格重绘 —— 修正刷新弧线与箭头脱节、图片折线越出相框等问题;「移动到…」改用专门的文件夹 + 箭头图标,与动作一一对应
其他
- 版本号升级至 3.3.0
- 修复 CI 双平台构建失败:启动自愈的
BootState.failures字段未跨模块公开(启动预防性清理在入口模块读取时编译报 E0616),改为 crate 内可见;顺带消除发布流程一处未使用变量的编译警告。已通过cargo check全量编译验证