变体包

变体包

我正在尝试建立一个变体表,这在法国学校相当独特。为了在 latex 中生成它们,编写了一个特殊的包,它预定义了绘制这些表格所需的一切并使用表格环境。它可以下载这里。不幸的是,我无法让它为我工作。

我建立了一个最小的例子来说明我所尝试做的事情:

\documentclass{article}
\usepackage{variations}
\begin{document}
\variations
x & -2 & & -1 & & \;1 & & 2 \\
f'(x) & & - & & \ha & & + & \\
f(x) & \h{\sqrt3} & \d & \b0 & \hv & \b0 & \cl & \h{\sqrt3\;} \\
\fin
\end{document}

问题是,当我尝试使用 pdflatex (pdfTeX,版本 3.14159265-2.6-1.40.16 (TeX Live 2015/MacPorts 2015_8) (预加载格式=pdflatex)) 进行编译时,无法处理名为“variations.mac”的文件中定义的某些命令 (并非全部)。例如\d,应该产生箭头的命令给出了未定义的控制序列错误。

! Undefined control sequence.
<argument> \,\raise 0\p@int \hbox {\f@nt 
                                     D}\,

它的定义是

\def\d{\@rrow{0\p@int}{D}} 

我猜问题就出在这部分\@rrow{0\p@int}(只是我的猜测)。我不是专家,所以不太明白它到底指的是什么。我真的希望有人能帮助我,因为我和同事已经尝试了几天来解决这个问题,但没有成功。

提前感谢您的努力、提示和回答!

答案1

TeX Live(标准、MacTeX 或 MacPorts)不提供 0.8 版本variations,而只提供 0.3 版本。

您可以在个人树或本地树中安装文件。

个人树

打开终端,进入解压后的目录variations-0.8.tar.gz。执行cd variations-0.8并执行ls -l。你应该得到类似

-rw-r--r--@ 1 staff   1870 Mar 28  2010 ALIRE
-rw-r--r--@ 1 staff  35147 Mar 28  2010 COPYING
-rw-r--r--@ 1 staff   1587 Mar 28  2010 README
-rw-r--r--@ 1 staff  78330 Mar 28  2010 docvariations.pdf
-rw-r--r--@ 1 staff   5673 Mar 28  2010 docvariations.tex
drwxr-xr-x@ 5 staff    170 Mar 28  2010 variations/
-rw-r--r--@ 1 staff   2185 Mar 28  2010 variations.mf

现在执行以下步骤

mkdir -p $(kpsewhich -var-value TEXMFHOME)/tex/latex
mkdir -p $(kpsewhich -var-value TEXMFHOME)/doc/latex/variations
mkdir -p $(kpsewhich -var-value TEXMFHOME)/fonts/source/variations
mv variations $(kpsewhich -var-value TEXMFHOME)/tex/latex/
mv ALIRE COPYING README docvariations* $(kpsewhich -var-value TEXMFHOME)/doc/latex/variations
mv variations.mf $(kpsewhich -var-value TEXMFHOME)/fonts/source/variations

现在通过编译之前出现问题的文件来测试安装。

当地的树

执行完全相同的步骤,但在每个命令前加上sudo并改为TEXMFHOMETEXMFLOCAL最后添加

sudo mktexlsr

差异

这两种安装方式有什么区别?第一种方法只有您(作为机器的用户)可以使用该包。第二种方法任何用户都可以访问它。

答案2

该软件包提供了一种字体,TeX 需要能够找到它才能使用该软件包,但该字体位于顶级目录中,而不是.sty.tex.mac文件中。如果您将.mf和其他文件放入您的工作目录(包含您的文档),那么 TeX 可以找到字体文件,并且您的示例可以正常编译:

变化

相关内容