如何使 mdframed 包正常工作?

如何使 mdframed 包正常工作?

在全新的 Ubuntu 12.04 64 位系统上,我想将 mdframed 包添加到我的texlive发行版中。

在 Ubuntu 标准存储库中搜索无果后,我前往 CTAN 网站下载并手动编译和安装该软件包。我这样做了,并将其放在texmf我家的目录树中,在texhash此目录上运行后,我在编译时收到有关缺少xparse软件包的新错误。

我重复了同样的操作,并在 texlive-latex3 标准 Ubuntu 包中找到了此包。所以我安装了它apt-get,现在我得到了以下我无法解决的其他错误:

/usr/share/texmf-texlive/tex/latex/oberdiek/zref-abspage.sty:94: Missing \begin{document}.

我该如何解决它?

答案1

在最近的版本中,行数zref-abspage.sty为 66。在历史记录中,我找不到可以解释超过 28 行的提示。第 94 行及其前后两行是什么?

如果安装了源,您可以重新创建该文件。创建一个临时目录,将文件 zref.dtx 复制到那里并解压,例如:

mkdir /tmp/zref-scratch
cd /tmp/zref-scratch
cp /usr/share/texmf-texlive/source/latex/oberdiek/zref.dtx .
tex zref.dtx

这应该会生成许多样式文件zref-abspage.sty。请注意,您需要的是纯 TeX,而不是 LaTeX。否则会生成文档。可以比较这两个文件:

diff -u /usr/share/texmf-texlive/tex/latex/oberdiek/zref-abspage.sty zref-abspage.sty

有区别吗?

  • 如果是,那么有什么区别?然后可以重命名错误的文件(出于安全和进一步分析的考虑)并替换:

    sudo mv -i /usr/share/texmf-texlive/tex/latex/oberdiek/zref-abspage.sty /usr/share/texmf-texlive/tex/latex/oberdiek/zref-abspage-saved.sty
    sudo cp /tmp/zref-scratch/zref-abspage.sty /usr/share/texmf-texlive/tex/latex/oberdiek/zref-abspage.sty
    
  • 如果不是,您使用的是哪个版本?请查看文件zref-abspage.sty


我的建议是安装原版的 TeX Live,“操作方法”可以在网上找到,例如:


另一种方法是在本地 TDS 树(适用于所有用户)或主 texmf 树(~/texmf仅适用于当前用户)中安装手动更新的软件包。Ubuntu 文档包含有关乳胶

要识别本地树,您可以尝试:

kpsewhich --expand-var '$TEXMFLOCAL'

家里的树通常是~/texmf

如果软件包提供了.tds.zip文件,那么安装就很简单。例如,我使用我的软件包在主 texmf 树中安装:

wget http://mirror.ctan.org/install/macros/latex/oberdiek.tds.zip
unzip oberdiek.tds.zip -d ~/texmf

如果是本地 texmf 树,texhash需要调用:

sudo texhash

相关内容