-
Notifications
You must be signed in to change notification settings - Fork 0
Troubleshooting
本页按“片段、文献、预览”三部分排查 TeXLeaf 0.7.1。多数问题可以通过确认文件作用域、设置覆盖、第三方扩展和 Output → TeXLeaf 日志定位。
- 确认安装的是 GitHub Release 中的
texleaf-0.7.1.vsix,不是旧本地构建。 - 运行 Developer: Reload Window。
- 在 Settings 搜索
@ext:local-lab.texleaf,检查目标功能总开关。 - 检查设置右侧齿轮的“Modified in”来源;工作区/语言设置可能覆盖用户设置。
- 打开 View → Output,选择 TeXLeaf,复现一次问题。
- 若怀疑扩展冲突,在临时 Profile 或通过 Help: Start Extension Bisect 比较。
不要在含未保存工作时随意删除 Profile/globalStorage。管理器和恢复命令已经提供冲突检查与备份。
依次检查:
- 文件是否已经保存;
- 后缀是否正好是
.tex或.bib,而不是 Untitled、.md、.tex.md; - 右下角 language mode 是否在
texleaf.languageIds,默认latex、tex、bibtex; -
texleaf.enabled是否为true; - 自动规则需要
texleaf.autoSnippets=true; - 非自动规则需要按
texleaf.manualTrigger对应的 Tab 或 Space; -
t/m/M/n是否符合当前位置的文本、行内数学或块级数学; - 当前环境是否在
texleaf.excludedEnvironments; - “问题”面板是否有 JSONC、正则、选项或占位符诊断。
对于 dm、\thm、\dfn、\lem、\cor 和四个模板,即使自动事件偶发被输入法或 Suggest 打断,完整输入 trigger 后按 Tab 应走 TeXLeaf 精确兜底。
如果位置在以下参数中,这是预期保护:
\label{;a}
\tag{;a}
\tag*{;a}闭合参数后,外层数学环境会恢复。如果在普通公式正文仍不展开,检查是否处于注释、verb/verbatim 或被排除环境。
出厂 \thm 是自动规则,通常完整输入即展开;Tab 精确兜底不依赖普通 Suggest 排名。若只看到 LaTeX Workshop 的命令候选:
- 确认没有关闭
texleaf.autoSnippets; - 确认当前是文本模式;
- 在管理器中检查
environment.theorem是否启用、trigger 是否被自定义; - 按 Tab 验证 exact path;
- 在快捷键页检查 Tab 是否被其他扩展更高优先级接管。
dm 使用文本模式和词边界。它不会在较长单词内部、数学区域、Untitled 或不受支持文件中展开。中文输入法 composition 期间,扩展会避免对尚未提交的组合文本重复处理;提交完成后如仍未展开,按 Tab,并附最小复现报告。
- 需要数学区域;
-
texleaf.autoFraction=true; - 输入第一枚
/后保留1/是正常的,首个有效分母字符2到来时才变换; - 左侧扫描遇到
autoFractionBreakingCharacters会停止; -
//是另一条明确 Snippet,输入第二个/应优先展开空分式。
- 在 Keyboard Shortcuts 搜索
texleaf、tab、enter; - 运行 Developer: Toggle Keyboard Shortcuts Troubleshooting;
- 确认
texleaf.matrixShortcuts=true; - 检查环境是否在
texleaf.matrixEnvironments; - 暂时停用 LaTeX Workshop 等扩展比较;
- 注意 Tab 先处理活动 snippet tabstop,再执行列操作。
left/right 智能 Enter 只处理唯一、顶层、安全配对。遇到嵌套 pair、&、已有 \\、命令参数、注释或嵌套环境时回退普通行为是设计选择。
- 先升级到 0.7.1;
- 运行 Developer: Reload Window;
- 打开 Developer: Toggle Developer Tools,查看 Webview CSP/脚本错误;
- 检查 Profile 是否允许扩展 globalStorage 写入;
- 暂停同步后重试,排除另一个窗口持续修改;
- 不要把旧版全局 JSONC 的 JavaScript/函数格式直接粘入结构化数据。
管理器的 ready 握手会重试,主机加载和消息有边界;正常库不应永久 busy。
这表示管理器载入后,另一个窗口、高级 JSONC、Settings Sync 或恢复操作修改了同一库。正确处理:
- 复制尚未保存的重要草稿;
- 选择重新载入当前磁盘/Profile 内容;
- 重新应用变更;
- 再保存。
不要通过反复点击保存绕过 CAS。冲突拒绝是在保护另一个窗口的修改。
- 先检查选中的字段范围;
- 正则模式下 replacement 使用 JavaScript 字符串替换语义,但数据仍不可执行脚本;
- 关闭正则时,查找内容按字面量处理;
- 看预览中的 before/after 与数量;
- 应用后仍是草稿,可先撤销再保存;
- 大规模操作前先导出备份。
恢复默认会明确替换当前工厂库,但成功前应创建原字节备份。到当前扩展宿主的 globalStorageUri/backups 中恢复,或从先前导出文件导入。不要从另一 Profile 猜路径;先确认 Stable/Insiders、本地/Remote 和 Profile。
四个模板要求:
- 已保存的
.tex; - 单光标;
- 文档除空白和完整 trigger 外无其他内容;
- 自动展开需
autoSnippets=true,否则按 Tab。
若修改 trigger 后旧 trigger 仍生效:
- 确认管理器右上角已保存且无错误;
- 重新选择该模板检查值;
- 搜索是否另有同 trigger Snippet;
- Reload Window 后复试;
- 确认当前 Profile 与修改时相同。
article 模板参考文献样式应是 alpha。Beamer 中的 \theoremstyle{plain} 是定理样式,不是 bibliography style。
- Settings Sync 必须在 VS Code 账户中主动开启;
- 手工 VSIX 不会自动安装到另一设备;先安装相同 extension ID 的兼容版本;
- 同步检测不是实时,通常等窗口重新聚焦或下一轮约 15 秒检查;VS Code 云端传播另计;
- envelope 超过 256 KiB、库无效或 dirty 时暂停同步;
- Profile、Stable/Insiders、本地/Remote 可能是独立副本;
- 双方都改动时会提示冲突,不会自动选“最新时间”。
检查:
- 当前工作区是否信任;
-
.tex是否已保存; -
texleaf.enabled、texleaf.zoteroCitations; - 命令是否在
texleaf.citationCommands; - 光标是否真的在必需大括号内,而不是可选参数或命令外;
-
bibliographyFile是否指向当前 workspace root 内的.bib; -
.bib是否存在未闭合外层条目或重复 key; - 手动运行 TeXLeaf: 显示参考文献补全。
即使 Zotero 不可用,合法的已有 bibliography 条目仍应出现。
- 启动 Zotero,并等待主窗口完全加载;
- 确认允许本机其他应用通信;
- 默认端口
23119,Juris-M 常见24119; - 检查
zoteroLibrary名称,重名群组库改用数字 ID; - 运行 TeXLeaf: 刷新 Zotero 参考文献缓存;
- 查看 Output 中是 connection、404、timeout、library-not-found、RPC 还是 invalid-response;
- Better BibTeX 不可用时,确认 Zotero 官方 Local API 可用;
- Flatpak/Snap/安全软件可能隔离回环连接。
不要把端口改成公网转发,也不要尝试配置远程主机;TeXLeaf 固定 127.0.0.1。
127.0.0.1 指扩展宿主所在网络命名空间。确认 TeXLeaf 安装在本地 UI 一侧;若它只安装/运行在 Remote,则端口指远程机器/容器,本机 Zotero 不可达。Codespaces 浏览器环境不能假设访问桌面 Zotero。
更多边界见 文献与 Zotero#WSL、Remote-SSH、Dev-Container-与-Codespaces。
先区分来源:
-
abc/Text 类型普通文档单词:TeXLeaf 已为[latex]/[tex]默认设置editor.wordBasedSuggestions=off;检查用户/工作区是否显式覆盖。 - Reference 类型、逐条来自
.bib的 key:很可能是 LaTeX Workshop 自己的 citation provider,不是 TeXLeaf。
TeXLeaf 不能从 VS Code 合并后的列表中删除另一个扩展的候选。可让 LaTeX Workshop 改用标题标签:
不要用 editor.suggest.showReferences=false,它会同时隐藏 TeXLeaf citation 和 \ref 等 Reference 补全。完整解释见 文献与 Zotero#与-LaTeX-Workshop-及其他补全共存。
- 导出格式必须是
bibtex或biblatex; -
.bib未闭合、重复 key 或 key 被不同文献占用时会停止; - DOI/ISBN/标题/第一作者/年份不足会降低跨 key 去重能力;
- dirty bibliography 不自动保存是保护行为;
- 提交前当前 citation/文档版本改变会取消;
- Better BibTeX 返回多个条目或 key 不一致会拒绝;
- 查看 Output 的明确错误,不要手工重复点击导入多次。
检查:
- 当前是已保存
.tex,language ID 为 LaTeX/TeX; -
texleaf.mathPreview.enabled=true; -
presentation是否是预期的 cursor/hover/both; - 光标是否在完整或当前可安全识别的公式中;
- 是否位于注释、verb/verbatim、lstlisting、minted;
- 公式是否超过
maxSourceLength; - 运行 TeXLeaf: 刷新 Math Preview;
- 查看 Output 中 MathJax render、timeout、macro 或 asset 错误。
0.7.1 使用 Base64 data: URI 给 cursor decoration,避免 Windows MAX_PATH 造成生成了 SVG 却加载为空框。若仍为空:
- 确认不是旧 VSIX;
- 刷新预览并 Reload Window;
- 用默认深色/浅色主题比较;
- 查看开发者工具是否拒绝 data URI;
- 提供公式最小复现。
模糊/锯齿受 Chromium、系统 DPI、显示器、字体缩放和 window.zoomLevel 影响。尝试整数 zoom、默认主题和系统推荐缩放进行对照。TeXLeaf 公式本身是 SVG path,不建议用 Custom CSS 给所有 path 加 stroke。
- 行内 auto 应位于活动源码行下方;起始行对齐 delimiter,后续行对齐首个非空白字符;
- 行间预览应对齐 opening delimiter;
- 上下无空白时,decoration 无法给正文预留真实高度,可能临时遮住相邻行;
- 超宽行间公式右端裁切是已知 API 边界,不应通过错误跳到第 0 列解决;
- 可降低
scale、切换hover、添加空白行或显式选择 above/below; - 对齐问题请同时提供 opening 行、锚点/光标行、Tab Size、字体、Zoom 和截图。
- 确认安装目录、Profile 路径和 workspace 中的中文/空格没有被自定义脚本错误转义;
- Zotero 与 VS Code 应在同一桌面会话;
- 安全软件不要阻止回环;
- 旧空框问题优先确认版本,不要手工清整个用户数据目录。
- 运行时正式支持 macOS;快捷键使用
Cmd+Alt+L,其余 Tab/Enter/Shift+Enter/Escape 与 Windows/Linux 相同; - 确认下载的 VSIX 未被浏览器自动解压;
- Zotero 必须是当前用户桌面会话中的本机应用;
- 若视觉定位或抗锯齿异常,报告 Retina/非 Retina、显示缩放、主题和
window.zoomLevel; - 仓库中的固定视觉宿主/CDP 辅助脚本当前以 Windows CLI/窗口路径为主要自动化环境,不随 VSIX 发布;Release 前仍应在真实 macOS VS Code 上人工验收片段、引用、浅/深主题预览和快捷键。
- 检查 code CLI 是否在 PATH;
- Flatpak/Snap/AppImage 与系统 Zotero 可能有沙箱边界;
- Wayland/X11 和分数缩放会影响 Chromium 抗锯齿与 decoration 像素;
- 报告发行版、桌面环境、显示协议和缩放。
请提供:
- TeXLeaf、VS Code、操作系统版本;
- Local/WSL/SSH/Container/Codespaces 与扩展安装位置;
- Zotero 和 Better BibTeX 版本(文献问题);
- 最小
.tex/.bib片段,删除个人信息和未公开文献数据; - 相关设置的用户/工作区/语言覆盖;
- 是否安装 LaTeX Workshop、Ultra Math Preview 或键位扩展;
- 从全新 Profile 是否可复现;
- Output → TeXLeaf 日志;
- UI 问题的深/浅主题截图、DPI/缩放/Zoom。
不要上传完整 Zotero 数据库、私人 .bib、访问凭据、系统环境变量或整个 VS Code 用户目录。
开始
片段
AI 写作
文献
预览
贡献与发布
{ "latex-workshop.intellisense.citation.label": "title" }