Skip to content

[1296] 修复样式环境计算丢失文档上下文导致嵌套 use-package 解析失败 - #4549

Merged
da-liii merged 4 commits into
mainfrom
da/1296/stem_load_fix
Sep 11, 2026
Merged

[1296] 修复样式环境计算丢失文档上下文导致嵌套 use-package 解析失败#4549
da-liii merged 4 commits into
mainfrom
da/1296/stem_load_fix

Conversation

@da-liii

@da-liii da-liii commented Sep 11, 2026

Copy link
Copy Markdown
Contributor

What

  1. 修正 devel/1296.md §9 限定条件:本地包解析对 default 根 buffer 一律按 buffer 所在目录及其父祖目录本地优先,不区分是否在 $TEXMACS_PATH
  2. 修复 [1296] use-package 支持按文档及包目录相对解析 #4547 合入后仍渲染失败的根因:样式宏环境经 typeset_style_use_cacheget_style_envcompute_env_and_drd 计算,临时 env 的 base_file_name 恒为 $PWD/none(当前工作目录),本地优先解析在样式包内嵌套 use-package(如 ccnu_beamer.stem(use-package "beamer/daxue_beamer"))时必然 miss,title-slide 等宏缺失,且失败结果被磁盘样式缓存固化(style_set_cache 仅在缓存文件不存在时写入)

How

  • compute_env_and_drd / get_style_env / get_style_drd 增加 url master 参数,临时 env 的 base 取 is_none (master) ? $PWD/none : master
  • edit_typeset.cppbuf->buf->mastertm_button.cpp(无 buffer 上下文)与 get_document_drdurl_none ()
  • 删除 tree_analyze.cppget_style_drd 的过期重复声明

验证

rm ~/.cache/MoganLab/2026.3.5/*.scm  # 清除失败结果固化的样式缓存
xmake r stem -c ~/git/liii-templates/stem/华中师范大学幻灯片模板.stem /tmp/x.pdf

首页 title-slide 封面渲染正确(修复前渲染为红色 ⟨title-slide⟩ 标记);南方科技大学模板同法验证通过。

已知取舍

样式缓存 key 含解析后的样式绝对路径但不含 master,同一绝对路径样式被不同目录文档共享时,嵌套相对 use-package 的解析结果以首次计算为准;旧版本写入的坏缓存需手动清理(缓存目录按版本号隔离,发版即自然失效)。

🤖 Generated with Claude Code

da-liii and others added 3 commits September 11, 2026 23:00
Co-Authored-By: Claude <noreply@anthropic.com>
样式宏环境经 typeset_style_use_cache → get_style_env 计算,临时 env 的
base_file_name 恒为 $PWD/none,本地优先解析在样式包内嵌套 use-package
(如 ccnu_beamer.stem 引用 beamer/daxue_beamer)时以当前工作目录为基准
必然 miss,title-slide 等宏缺失且失败结果被磁盘样式缓存固化。
compute_env_and_drd/get_style_env/get_style_drd 增加 url master 参数,
edit_typeset 传入 buf->buf->master;无 buffer 上下文的调用方传 url_none。

Co-Authored-By: Claude <noreply@anthropic.com>
Co-Authored-By: Claude <noreply@anthropic.com>
@da-liii da-liii changed the title [1296] 修正任务文档 §9 本地包解析限定条件 [1296] 修复样式环境计算丢失文档上下文导致嵌套 use-package 解析失败 Sep 11, 2026
Co-Authored-By: Claude <noreply@anthropic.com>
@da-liii
da-liii merged commit d23c11f into main Sep 11, 2026
6 checks passed
@da-liii
da-liii deleted the da/1296/stem_load_fix branch September 11, 2026 15:26
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant