强制 overleaf 刷新 docker 文件系统上更改的文件

强制 overleaf 刷新 docker 文件系统上更改的文件

overleaf 的一个著名扩展是写满。还有一些插件可以使 grammarly 用于 overleaf:Grammarly 和 Overleaf:detex 中是否有某个版本或选项可以在乳胶标记之间留下一些内容?

也可以从 API 内部运行命令行参数:还有一个API通过网络使用 overleaf,但其功能相当有限。

\write18我正在寻找的是通过/Lua使用 docker 命令行界面的方法。

具体来说,我想编写一个小程序来处理文件,例如,用 替换所有形式Let $i$为的序列Let~$i$,或者更好的是,用 Unicode 对应项替换 LaTeX 符号(例如 $\alpha$)。

问题在于 IDE 编辑器无法察觉 docker 中的文件更新。我们需要一种手段来告诉 IDE 文件系统上的文件已发生更改。

一种方法是在另一个窗口中打开另一个编辑器,从而让 overleaf 认为它应该同步文件。可能还有其他方法,比如在 docker 中执行某些操作。也许可以删除 PDF 从而强制重新编译。

另一个可能有助于应对挑战的资源是:如何设置 Overleaf 使用 `lualatex --shell-escape <file>` 进行编译?

如果可能的话,我尽量避免编写浏览器扩展。

答案1

(我是 Overleaf 的支持人员。)

您对编译容器内的文件所做的任何更改都是短暂的,并且不会保留到您在 Web 编辑器中看到的项目输入文件中。

您提到的扩展程序不会对编译容器中的文件进行更改,而是在客户端进行操作。因此,从 Overleaf 的角度来看,浏览器扩展程序所做的编辑看起来就像您在 Web 编辑器中键入内容一样。这就是这些扩展程序能够以持久方式修改项目文件的原因。

如果你想要在某些 .tex 文件上运行脚本/程序来进行编辑,我们建议你通过我们的同步集成功能离线执行此操作,例如Dropbox、Git 或 GitHub。您可以离线运行您的脚本/程序并将更改同步回 Overleaf 项目。

如果您无法访问任何自动同步集成,您可以通过下载 .tex 文件、在本地运行脚本/程序以及将修改后的 .tex 文件手动上传回您的 Overleaf 项目来执行此操作。

相关内容