MacTeX -aux-directory=DIR

MacTeX -aux-directory=DIR

我使用的是 Textmate 和 MacTeX (texLive 1.12)。MiKTeX (Windows) 中有使用命令-aux-directory=DIR和的选项-output-directory=DIR。输出部分在 TeXLive 中有效,但 PDF 不会自动打开,主文件夹中仍有一个辅助文件和一个.fdb_latexmk文件。

有人知道-aux-directory=DIRTeXLive 是否有命令吗?

答案1

简短回答:不。该-aux-directory选项是 MiKTeX 特有的,例如,您可以通过pdftex --helpTeX Live 看到:

用法:pdftex [选项]...[TEXNAME[.tex]] [命令]
   或:pdftex [OPTION]... \FIRST-LINE
   或:pdftex [OPTION]... &FMT ARGS
  在 TEXNAME 上运行 pdfTeX,通常会创建 TEXNAME.pdf。
  读取 TEXNAME 后,任何剩余的命令都将作为 pdfTeX 输入处理。
  如果 TEXNAME 的第一行是 %&FMT,并且 FMT 是一个现有的 .fmt 文件,
  使用它。否则使用“NAME.fmt”,其中 NAME 是程序调用名称,
  最常见的是‘pdftex’。

  或者,如果第一个非选项参数以反斜杠开头,
  将所有非选项参数解释为一行 pdfTeX 输入。

  或者,如果第一个非选项参数以 & 开头,则
  下一个字将被视为要读取的 FMT,覆盖所有其他内容。任何
  其余参数的处理如上所述。

  如果没有指定参数或选项,则提示输入。

-draftmode 开启草稿模式(不生成输出 PDF)
-enc 启用 encTeX 扩展,例如 \mubyte
-etex 启用 e-TeX 扩展
[-no]-file-line-error 禁用/启用 file:line:error 样式消息
-fmt=FMTNAME 使用 FMTNAME 代替程序名或 %& 行
-halt-on-error 在第一次出现错误时停止处理
-ini 是 pdfinitex,用于转储格式;这是隐式的
                          如果程序名称是“pdfinitex”,则为 true
-interaction=STRING 设置交互模式 (STRING=batchmode/nonstopmode/
                          滚动模式/错误停止模式)
-ipc 将 DVI 输出发送到套接字以及通常
                          输出文件
-ipc-start 为 -ipc,并在另一端启动服务器
-jobname=STRING 将作业名称设置为 STRING
-kpathsea-debug=NUMBER 根据以下设置路径搜索调试标志
                          NUMBER 的位
[-no]-mktex=FMT 禁用/启用 mktexFMT 生成 (FMT=tex/tfm/pk)
-mltex 启用 MLTeX 扩展,例如 \charsubdef
-output-comment=STRING 使用 STRING 作为 DVI 文件注释,而不是日期
                          (对 PDF 无影响)
-output-directory=DIR 使用现有的 DIR 作为写入文件的目录
-output-format=FORMAT 使用 FORMAT 进行作业输出;FORMAT 为“dvi”或“pdf”
[-no]-parse-first-line 禁用/启用输入文件第一行的解析
-progname=STRING 将程序(和 fmt)名称设置为 STRING
-recorder 启用文件名记录器
[-no]-shell-escape 禁用/启用 \write18{SHELL COMMAND}
-shell-restricted 启用限制 \write18
-src-specials 将源特辑插入 DVI 文件
-src-specials=WHERE 在某些地方插入源特惠
                          DVI 文件。WHERE 是逗号分隔的值
                          列表:cr 显示 hbox math par parend vbox
-synctex=NUMBER 如果非零,则为预览器生成 SyncTeX 数据
-translate-file=TCXNAME 使用 TCX 文件 TCXNAME
-8bit 默认使所有字符可打印
-help 显示此帮助并退出
-version输出版本信息并退出

通过电子邮件将错误报告发送至[电子邮件保护]

请注意,-output-directory没有-aux-directory可以通过快速测试来验证的东西(因为记录的行为和实际行为可能不同!)。

答案2

与 Sameer 的评论有些相似,这就是我使用 TeXstudio 所做的事情。

按以下方式修改pdflatex命令(在 中找到):Preferences » Commands

sh -c "mkdir -p .temp & pdflatex -synctex=1 -interaction=nonstopmode -output-directory=.temp %.tex && cp .temp/%.pdf %.pdf"

这将创建一个隐藏目录.temp(如果尚未存在)来存储辅助文件,同时将 pdf 输出保留在同一目录中。您可以根据自己的喜好修改上述内容并获得所需的任何目录结构。

答案3

在 Mac 上使用 Tex Live 时,有两个问题需要解决:(i) 辅助文件夹必须首先存在,(ii) 输出文件也存储在那里。通过定义两个用户命令可以轻松解决这些问题,例如在 texstudio 中:

  • 用户命令 1 mkdir:检查辅助文件目录是否./aux-files存在,如果不存在则创建

mkdir -p ./aux 文件

  • 用户命令2复制:将pdf文件从辅助目录复制到根目录

sh -c‘cp -f`查找./aux-files-type f-name“*.pdf”`。’

接下来,将默认编译器更改为

txs:///mkdir | txs:///pdflatex

这样就首先创建了目录。

将构建器更改为

txs:///编译 | txs:///查看 | txs:///复制

并且编译后pdf被复制到根目录。

这将解决这两个问题。

相关内容