更新后 \textsubscript 不再起作用

更新后 \textsubscript 不再起作用

最近更新 MikTeX 后,我遇到了一个奇怪的问题。我以前使用\usepackage{fixltx2e}命令\textsubscript{}。但是,如果我现在这样做,我会收到警告Package fixltx2e Warning: fixltx2e is not required with releases after 2015,CTAN 对此进行了解释。然而,无论有没有,\usepackage{fixltx2e}我都会收到未定义控制序列的错误\textsubscript。这个命令是否被替换/重命名了,或者问题出在哪里?

\documentclass{article}
\usepackage{fixltx2e}

\begin{document}
Test\textsuperscript{1} Test\textsubscript{1}
\end{document}

日志档案:

This is pdfTeX, Version 3.14159265-2.6-1.40.15 (MiKTeX 2.9) (preloaded format=pdflatex 2015.4.7)  5 JUN 2015 17:53
entering extended mode
**LaTeX1.tex
(LaTeX1.tex
LaTeX2e <2014/05/01>
Babel <3.9l> and hyphenation patterns for 68 languages loaded.
("C:\Program Files (x86)\MiKTeX 2.9\tex\latex\base\article.cls"
Document Class: article 2014/09/29 v1.4h Standard LaTeX document class
("C:\Program Files (x86)\MiKTeX 2.9\tex\latex\base\size10.clo"
File: size10.clo 2014/09/29 v1.4h Standard LaTeX file (size option)
)
\c@part=\count79
\c@section=\count80
\c@subsection=\count81
\c@subsubsection=\count82
\c@paragraph=\count83
\c@subparagraph=\count84
\c@figure=\count85
\c@table=\count86
\abovecaptionskip=\skip41
\belowcaptionskip=\skip42
\bibindent=\dimen102
)
("C:\Program Files (x86)\MiKTeX 2.9\tex\latex\base\fixltx2e.sty"
Package: fixltx2e 2015/02/21 v2.0a fixes to LaTeX (obsolete)


Package fixltx2e Warning: fixltx2e is not required with releases after 2015
(fixltx2e)                All fixes are now in the LaTeX kernel.
(fixltx2e)                See the latexrelease package for details.

) (LaTeX1.aux)
LaTeX Font Info:    Checking defaults for OML/cmm/m/it on input line 4.
LaTeX Font Info:    ... okay on input line 4.
LaTeX Font Info:    Checking defaults for T1/cmr/m/n on input line 4.
LaTeX Font Info:    ... okay on input line 4.
LaTeX Font Info:    Checking defaults for OT1/cmr/m/n on input line 4.
LaTeX Font Info:    ... okay on input line 4.
LaTeX Font Info:    Checking defaults for OMS/cmsy/m/n on input line 4.
LaTeX Font Info:    ... okay on input line 4.
LaTeX Font Info:    Checking defaults for OMX/cmex/m/n on input line 4.
LaTeX Font Info:    ... okay on input line 4.
LaTeX Font Info:    Checking defaults for U/cmr/m/n on input line 4.
LaTeX Font Info:    ... okay on input line 4.
LaTeX Font Info:    External font `cmex10' loaded for size
(Font)              <7> on input line 5.
LaTeX Font Info:    External font `cmex10' loaded for size
(Font)              <5> on input line 5.

! Undefined control sequence.
l.5 Test\textsuperscript{1} Test\textsubscript
                                              {1}
The control sequence at the end of the top line
of your error message was never \def'ed. If you have
misspelled it (e.g., `\hobx'), type `I' and the correct
spelling (e.g., `I\hbox'). Otherwise just continue,
and I'll forget about whatever was undefined.

[1

{C:/Users/Manuel/AppData/Local/MiKTeX/2.9/pdftex/config/pdftex.map}] (LaTeX1.aux) ) 
Here is how much of TeX's memory you used:
 211 strings out of 493698
 2321 string characters out of 3141992
 52149 words of memory out of 3000000
 3619 multiletter control sequences out of 15000+200000
 3640 words of font info for 14 fonts, out of 3000000 for 9000
 1025 hyphenation exceptions out of 8191
 23i,4n,17p,135b,107s stack positions out of 5000i,500n,10000p,200000b,50000s
<C:/Program Files (x86)/MiKTeX 2.9/fo
nts/type1/public/amsfonts/cm/cmr10.pfb><C:/Program Files (x86)/MiKTeX 2.9/fonts/type1/public/amsfonts/cm/cmr7.pfb>
Output written on LaTeX1.pdf (1 page, 18746 bytes).
PDF statistics:
 14 PDF objects out of 1000 (max. 8388607)
 0 named destinations out of 1000 (max. 500000)
 1 words of extra memory for PDF output out of 10000 (max. 10000000)

答案1

如果我使用 TeX Live 2015/prerelease,这是我的终端输出:

This is pdfTeX, Version 3.14159265-2.6-1.40.16 (TeX Live 2015) (preloaded format=pdflatex)
 restricted \write18 enabled.
entering extended mode
(./wein.tex
LaTeX2e <2015/01/01>
Babel <3.9l> and hyphenation patterns for 79 languages loaded.
(/usr/local/texlive/2015/texmf-dist/tex/latex/base/article.cls
Document Class: article 2014/09/29 v1.4h Standard LaTeX document class
(/usr/local/texlive/2015/texmf-dist/tex/latex/base/size10.clo))
(/usr/local/texlive/2015/texmf-dist/tex/latex/base/fixltx2e.sty

Package fixltx2e Warning: fixltx2e is not required with releases after 2015
(fixltx2e)                All fixes are now in the LaTeX kernel.
(fixltx2e)                See the latexrelease package for details.

)
No file wein.aux.
[1{/usr/local/texlive/2015/texmf-var/fonts/map/pdftex/updmap/pdftex.map}]
(./wein.aux) )</usr/local/texlive/2015/texmf-dist/fonts/type1/public/amsfonts/c
m/cmr10.pfb></usr/local/texlive/2015/texmf-dist/fonts/type1/public/amsfonts/cm/
cmr7.pfb>
Output written on wein.pdf (1 page, 17909 bytes).
Transcript written on wein.log.

正如你所见,横幅上写着

LaTeX2e <2015/01/01>

而你说

LaTeX2e <2014/05/01>

您必须重建格式。我不知道如何使用 MiKTeX 完成此操作:要么通过向导按钮,要么通过命令行

initexmf --admin --dump

http://docs.miktex.org/2.9/manual/configuring.html#mo-general

答案2

我刚刚从磁盘上的(旧)软件包中复制了fixltx2e.sty相关定义。这应该可以工作,对于较旧的内核也是如此(仍有 TL 2014 版本)

\documentclass{article}

\makeatletter
\DeclareRobustCommand*\textsubscript[1]{%
  \@textsubscript{\selectfont#1}}
\def\@textsubscript#1{%
  {\m@th\ensuremath{_{\mbox{\fontsize\sf@size\z@#1}}}}}
\makeatother



\begin{document}
Test\textsuperscript{1} 
Test\textsubscript{1}
\end{document}

在此处输入图片描述

答案3

自 2015 年 latex2e 发布以来,您不再需要任何内容fixltx2e​​:此软件包中的所有更改都已合并到内核中:

\documentclass{article}

\begin{document}

Test\textsuperscript{superscript\textsuperscript{1}} \\

Test\textsuperscript{superscript\textsubscript{1}} \\

Test\textsubscript{subscript}
\end{document} 

在此处输入图片描述

相关内容