Ich möchte eine Umgebung definieren, in der ich Text und Formeln zwischen Dollarzeichen schreiben kann. Ich möchte, dass diese Formeln nur in dieser Umgebung einen bestimmten Stil haben, wie mathrm
zum Beispiel.
Es würde mir in zwei Situationen helfen:
- Um eine Umgebung zu definieren, in der Text fett ist (was ziemlich einfach ist) und in der ich keine Formeln fett zwei verwenden muss
\boldsymbol
; es würde automatisch passieren. Im Moment mache ich das (ohne eine automatisierte Umgebung):\textbf{j'écris une formule avec $\boldsymbol{f}$ qui est importante}.
- Ich habe diesen Befehl, um einen fehlerhaften mathematischen Text in einer anderen Schriftart zu schreiben:
\DeclareMathAlphabet{\mathpzc}{OT1}{pzc}{m}{it} \newenvironment{erreur}{\fontfamily{pzc}\selectfont *(}{)}
aber das Gleiche gilt, ich muss \begin{erreur} La dérivée de $\mathpzc{x \mapsto sin(x)}$ est $\mathpzc{x \mapsto - cos(x)}$. \end{erreur}
so schreiben, dass der Mathematikmodus einen bestimmten Stil hat.
Ich würde gern lokal etwas wie „eine mathematische Schriftart festlegen“ tun. Ideen?
Das ist, was ich jetzt habe und nicht ändern möchte (nur die Art und Weise, wie ich es bekomme ;) )!
(Ich wurde gebeten, einen Code einzugeben. Hier ist er:
\documentclass{article}
\DeclareMathAlphabet{\mathpzc}{OT1}{pzc}{m}{it}
\newenvironment{erreur}{\fontfamily{pzc}\selectfont *(}{)}
\begin{document}
\begin{erreur} La dérivée de $\mathpzc{x \mapsto sin(x)}$ est $\mathpzc{x \mapsto - cos(x)}$. \end{erreur}
\begin{erreur} La dérivée de $x \mapsto sin(x)$ est $x \mapsto - cos(x)$. \end{erreur}
\end{document}
Ich möchte meine Umgebung erreur
so ändern, dass die zweite Codezeile automatisch das Ergebnis der ersten liefert.)
Antwort1
Für die Frage nach der pzc
Schriftart kannst Du Dich mit einklinken $
. \everymath
Das ist zwar nicht immer sehr robust, aber vielleicht reicht es für Deine Zwecke. Diese Vorgehensweise erfordert einen zusätzlichen Schritt, nämlich die Umwandlung \mathpzc
eines Befehls, der ein Argument annimmt, in einen Schalter, der die Schriftart dauerhaft bis zum nächsten Schalter oder bis zum Ende der Gruppe ändert (ähnlich wie z. B. \textbf{}
vs. \bfseries
für Text), was mit möglich ist \@fontswitch
.
Dieser Befehl benötigt zwei Argumente: Das erste Argument wird im Textmodus und das zweite im Mathematikmodus verwendet. Wenn es innerhalb aufgerufen wird, \everymath
wird das erste Argument nie verwendet, aber Sie können aus Konsistenzgründen etwas Sinnvolles dort einfügen.
Wenn der \everymath
Hook innerhalb von platziert wird, \newenvironment{erreur}
wird die Mathematik außerhalb der Umgebung nicht beeinflusst.
MWE:
\documentclass{article}
\DeclareMathAlphabet{\mathpzc}{OT1}{pzc}{m}{it}
\makeatletter
\newenvironment{erreur}{%
\everymath{\@fontswitch{\normalfont\rmfamily}{\mathpzc}}%
\fontfamily{pzc}\selectfont *(}%
{)}
\makeatother
\begin{document}
La dérivée de $x \mapsto sin(x)$ est $x \mapsto cos(x)$.
\begin{erreur} La dérivée de $\mathpzc{x \mapsto sin(x)}$ est $\mathpzc{x \mapsto - cos(x)}$. \end{erreur}
La dérivée de $x \mapsto sin(x)$ est $x \mapsto cos(x)$.
\begin{erreur} La dérivée de $x \mapsto sin(x)$ est $x \mapsto - cos(x)$. \end{erreur}
La dérivée de $x \mapsto sin(x)$ est $x \mapsto cos(x)$.
\end{document}
Ergebnis: