我想有一个带上标的矢量。
\vec{o}^t
但这样做的结果非常糟糕:T与矢量箭头重叠。我如何解决这个问题(以及为什么这首先会产生不好的结果)?
试试这个。
\documentclass{article}
\usepackage{esvect}
\begin{document}
$\vv{o}^t \ \vv{o^t}$
$\vec{o}^{\,t}$
\end{document}
(我已经包括了egreg'的代码,以方便比较。)
前两个是用esvect
包完成的,第三个是egreg'的代码。
像这样的情况如何呢?
\documentclass{article}
\makeatletter
\newcommand{\vo}{\vec{o}\@ifnextchar{^}{\,}{}}
\makeatother
\begin{document}
$\vec{o}^t o$ $\vo^t o$
$\vec{o} o$ $\vo o$
$\vec{o}^t_t o$ $\vo^t_t o$
\end{document}
这看起来对$vo/^t$
很合适。("^"必须紧跟在 "vo "之后。)我不知道如何在"$vo^t_t$"中只进行上标转移。
这里是关于@ifnextchar
如何工作的讨论。