在 Windows PC 上正确安装 circuit_macros

在 Windows PC 上正确安装 circuit_macros

我想使用circuit_macros,这是由 Dwight Aplevich 编写的使用 M4 宏创建电路图的工具。我使用的是 Windows,遇到了问题,因为大多数可用文档都是针对 UNIX 和 GNU/Linux 用户的。

我在 Windows 8.1 上使用 Miktex 2.9 和 Texmaker 5.0.2。按照安装说明,以下是我目前所做的操作:

  1. 从以下网址下载 dpic(pic 解释器)的 .exe 文件
    https://ece.uwaterloo.ca/~aplevich/dpic/Windows/index.html
    我把两个可执行文件dpic.exem4.exe放在一个新创建的文件夹中:C:\dpic
    然后我添加了小路从“查看高级系统设置”菜单中更改上述文件夹,这样无论我在哪个目录中,我都可以执行这些程序。

  2. 下载并安装了 m4 宏解释器。
    仍然根据 Aplevich 关于存储库的说明,可以从 sourceforge 网站下载程序:
    http://gnuwin32.sourceforge.net/packages/m4.htm

  3. 从 CTAN 下载并解压 circuit_macros 发行版

  4. 决定安装.m4 库文件的位置
    我在 创建了 localtexmf 文件夹,C:\localtexmf\tex\latex\circuit_macros并将下载的解压后的分发文件复制到目标文件夹。

  5. 将 boxdims.sty 从顶级分发目录复制到 LaTeX 可以找到它的位置
    就我而言,我将其粘贴到新创建的名为“boxdims”的文件夹中:
    C:\Users\billyandriam\AppData\Local\Programs\MiKTeX2.9\miktex\tex\latex\boxdims\

    之后,我打开了 MikTex 控制台,并从左上角的菜单中单击“任务”>“刷新文件名数据库”。

  6. 定义环境变量 M4PATH 指向步骤 4 中确定的安装目录。
    在控制面板中的“查看高级系统设置”中,我创建了一个名为M4路径并将其值归于以下目录:C:\localtexmf\tex\latex\circuit_macros\

现在,我的安装有一些限制。当我有一个 .m4 文件并运行相应的命令时,.m4 文件会转换为 .tex没有错误。因此,在 Windows 的命令提示符下,这是我用来创建“filename.tex”文件的命令(一开始,我把它放在include(pgf.m4).m4 的第一行,因为它必须生成 Tikz 图片):

m4 文件名.m4 | dpic -g > 文件名.tex

但是,我无法直接从 latex 文档调用 m4 和 dpic。
为了说明起见,让我们考虑以下 latex 代码:

\documentclass{article}
\usepackage{tikz}
\newcommand\mtotex[2]{\immediate\write18{m4 #2.m4 | dpic -#1 > #2.tex}}

\begin{document}
\mtotex{g}{filename} %This line should create filename.tex from filename.m4
\input{filename.tex}
\end{document}

由于某些原因,排版上述 MWE 会返回错误。我是不是漏掉了什么?

答案1

LaTeX 将不会运行外部应用程序(出于安全原因),除非您使用选项允许--shell-escape

\immediate\write18{...}就是这样一个对外部应用程序的调用。

例如https://tex.stackexchange.com/a/236648/2388如何向 texmaker 调用添加选项。

我还建议将 boxdims.sty 和 m4 文件移动到 localtexmf 中C:\localtexmf\tex\latex\circuit_macros

如果尚未完成,请添加C:\localtexmfTEXMF root directories按钮下的 MikTeX 控制台Settings>Directories>(add the localtexmf path)或使用任务菜单中的条目刷新 FNDB。

答案2

虽然这个问题已经得到解答,但其他用户找到了一种在 LaTeX 中使用电路宏的简单方法,可能会发现很有用PyCirkuit 工具,适用于 GNU/Linux、Mac 和 Windows 系统。

相关内容