我的发行版已更新diffcoeff
至 5.3 版,但很多东西都损坏了:
\dl
例如的权力\dl^2 x
不再起作用(见\dl 的幂与 diffcoeff)- 带有波浪号的符号不再起作用:
\documentclass[11pt,parskip]{scrartcl}
\usepackage{lmodern}
\usepackage[ngerman]{babel}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc} \usepackage{amsmath}
% use option ISO or version >=5 (not tested) to get upright d
\usepackage{diffcoeff}
\begin{document}
$\dl A$
$\dl \tilde{A}$
%$\dl^2 A$
\end{document}
编译时出现错误
! You can't use math shift character $ after \the.
<argument> $
l.14 $\dl \tilde{
A}$
这两个问题的明显解决方法是使用\usepackage[ISO]{diffcoeff}[=v4]
,但在我看来这不是一个长期的解决方案。考虑到第一个问题,有一个可用的解决方案,有人知道如何解决第二个问题吗?
另外,我放弃了该physics
软件包,因为总体看来它的编程很糟糕,但是当旧文档与新版本的软件包不兼容时,diffcoeff
我可能会改回来。有没有建议可以避免将来出现此类问题?
提前致谢。
答案1
从版本 5 开始,您需要将多标记变量放在 后的括号中\dl
,例如$\dl{\tilde{A}}$
。
这在 4.1 节“差速器” (第 48 页) 中有解释。当前手册(版本 5.3)。
梅威瑟:
\documentclass{article}
\usepackage{diffcoeff}
\begin{document}
$\dl A$
$\dl{\tilde{A}}$
$\difc[2]A{}$
$\difc[2]{\tilde{A}}{}$
\end{document}
您的第二个问题是关于“强化”文档以应对未来软件包更改,这个问题很难回答。一般来说,建议软件包维护人员注意向后兼容性,这样就不会出现这样的问题。但在某个时间点,最佳实践可能会发生变化,可能会出现提供更好基本功能的新软件包,可能会建立新的标准,这最终将需要改变软件包中某些命令的语法。至少,这种大的变化通常应该记录在软件包手册中(这里就是这种情况)。
除了冻结包含当前工作版本中所有软件包的项目以供将来参考外,没有其他明智的方法可以防止这种情况发生。更好的建议可能是始终使用最新的软件包,并时不时更新您的文档(但我知道这可能很乏味)。