Я понимаю, что это, возможно, не совсем вопрос по LaTeX, но я все равно решил разместить его здесь, поскольку у других людей иногда может возникнуть та же проблема.
Я работаю над довольно большим документом в данный момент, который содержит кучу уравнений. Вместо того, чтобы записывать их как:
Q^{h}_{Con} = 0.15 \cdot Q^{h}_{Transm} + ...
Я бы лучше сделал так:
\newcommand{\qCon}{Q^{h}_{Con}}
\newcommand{\qTransm}{Q^{h}_{Transm}}
...
\qCon = 0.15 \cdot \qTransm + ...
Теперь это несложно сделать, если у вас есть такая идея, когда вы начинаете писать в документе. В моем случае, однако, у меня уже написано много страниц (включая номенклатуру). Теперь я хотел бы заменить все упоминания eg на $Q^{h}_{Con}$
. $\qCon$
Сделав это, я мог бы убедиться, что у меня нет опечатки где-то и с $Q^{h}_{Com}$
.
Просматривать все файлы по отдельности слишком сложно, а редактор tex, который я использую, предлагает только поиск и замену во всех открытых файлах. Поэтому я попытался использовать Терминал (на Mac), чтобы сделать это. Я смог использовать 'grep', чтобы найти все экземпляры eg $Q^{h}_{Con}$
, но не смог понять, как заменить его на $\qCon$
.
У кого-нибудь есть идеи?
решение1
что-то вроде
for i in *.tex
do
sed -i -e 's/Q^{h}_{\([a-zA-Z]*\)}/\\q\1 /g' $i
done
Вероятно, что-то делает. (Сначала сохраните копию своих файлов:-)