我在 Debian GNU/Linux 上使用 TeX Live 2018。该texdoc(1)
命令的配置文件是:
$ texdoc --files
/opt/tug/texlive/2018/texmf-dist/scripts/texdoc/texdoclib.tlu 3.0
Configuration files are:
active ~/opt/tug/texlive/texdoc/texdoc.cnf
active /opt/tug/texlive/2018/texmf-dist/texdoc/texdoc.cnf
Recommended file(s) for personal settings:
~/opt/tug/texlive/texdoc/texdoc.cnf
个人配置文件的内容~/opt/tug/texlive/texdoc/texdoc.cnf
为:
$ cat ~/opt/tug/texlive/texdoc/texdoc.cnf
viewer_pdf = (nohup ${PDFVIEWER:-xpdf} %s) 2> /dev/null &
$ echo $PDFVIEWER
mupdf
我预计 texdoc(1) 命令将打开如下 PDF 文件:
(nohup mupdf /opt/tug/texlive/2018/texmf-dist/doc/support/texdoc/texdoc.pdf) 2> /dev/null &
但是,当我设置环境变量时$PDFVIEWER
,texdoc(1) 命令会使用它,并忽略个人配置文件。
$ texdoc --debug=config texdoc
texdoc debug-version: /opt/tug/texlive/2018/texmf-dist/scripts/texdoc/texdoclib.tlu version 3.0
texdoc debug-config: Setting 'debug_list=config' from command line option "--debug".
texdoc debug-config: Setting 'viewer_pdf=mupdf' from environment variable "PDFVIEWER".
[...]
texdoc debug-config: Ignoring 'viewer_pdf=(nohup ${PDFVIEWER:-xpdf} %s) 2> /dev/null &' in file "~/opt/tug/texlive/texdoc/texdoc.cnf" on line 1.
[...]
texdoc info: View command: mupdf "/opt/tug/texlive/2018/texmf-dist/doc/support/texdoc/texdoc.pdf"
我如何让命令识别其个人配置文件中texdoc(1)
的值而不是环境变量?viewer_pdf
$PDFVIEWER
答案1
您可以设置环境变量“PDFVIEWER_texdoc”;如果我这样做
> export PDFVIEWER=mupdf-gl
> export PDFVIEWER_texdoc='(nohup ${PDFVIEWER:-xpdf} %s) 2> /dev/null &'
> texdoc texdoc
然后使用 打开文档文件mupdf-gl
(抱歉,我没有mupdf
)。如果我取消设置PDFVIEWER
,则使用 打开文件xpdf
。