Kontextabhängige Punkte am Ende von Formeln

Kontextabhängige Punkte am Ende von Formeln

amsmathdefiniert \dots, wer einen Look-Ahead durchführt und verwendet je nach nächstem Token unterschiedliche Punkte (im Grunde vertikal zentriert oder nicht). SieheWie funktionieren magische Punkte in amsmath?

Aus diesem Grund (zumindest ist das mein Verständnis) funktioniert es jedoch nicht, wenn die PunkteAm Endeder Formel:

\documentclass{article}
\usepackage{amsmath}
\begin{document}

\[ x + \dots + x + \dots \]

\end{document}

mwe.jpg

Nun, bei der Verwendung ist es kein großes Problem, +da ich direkt verwenden kann \dotsb. Benutzerdefinierte Befehle können jedoch auch „punktorientiert“ gemacht werden:

\documentclass{article}
\usepackage{amsmath}
\begin{document}

\newcommand*\myop{\DOTSB\rightarrow}

\[ x \myop \dots \myop x \myop \dots \]

\end{document}

In diesem Fall möchte ich, dass \dotssich Letzteres je nach Definition von automatisch anpasst \myop. Wie kann dies erreicht werden?

Ich erwarte nicht unbedingt, \dotsdass ich mich daran „erinnere“, was vorher passiert ist (obwohl das nett wäre). Es wäre ok, einen Hinweis zu geben, indem man den Operator nach den Punkten wiederholt:

\[ x \myop \dots \myop x \myop \dots \hint\myop \]

EDIT: oder noch besser:

\[ x \myop \dots \myop x \myop \dotsfor{\myop} \]

Vielleicht könnte ein Vorausschaumakro verwendet werden, das sich das erste Token seines Arguments ansieht? Obwohl es sich nicht nur um Vorausschau handeln würde, sollte der Rest des Arguments verworfen werden.

Antwort1

Dies scheint in keiner leicht verfügbaren Dokumentation erklärt zu sein, aber es gibt Isteine Erklärung indie Freude an Tex(das Handbuch für AMS-Tex), wo die Punktvariationen erstmals definiert wurden. Von S. 156:

Wenn Sie also \dotsim Mathematikmodus arbeiten, wird die Art der zu setzenden Punkte sowohl durch den Stil als auch durch das nächste Symbol in der Formel bestimmt. Leider gibt es eine Situation, in der dieses Schema versagt, nämlich wenn ist nichtjedes nächste Symbol. Wenn Sie [Beispiele werden \dotsam Ende einer Formel angezeigt] eingeben, \dotskann nicht erwartet werden, dass es weiß, welche Art von Punkten Sie möchten – es kann nur vorausschauen und hat keine Möglichkeit zu wissen, welches Symbol vorher eingegeben wurde – und \dotswählt einfach \dotso in all diesen Fällen aus. Wenn eine Formel also mit Punkten endet, ist es richtig, AMS-TeX mitzuteilen, welche Art von Punkten es verwenden soll.

Als AMS-Tex gegründet wurde, dachte man gründlich über dieses Problem nach, und die Randfälle waren zu unvorhersehbar, um sie zu berücksichtigen.

ich denke, der Zwei-Makro-Ansatz ist Ihre beste Option: \myopund \myopdots(oder ein anderer, möglicherweise kürzerer Name für das zweite); in Ihrer Datei leicht zu finden, wenn Sie Änderungen vornehmen müssen.

bearbeiten:wie @Zarko in einem Kommentar anmerkte, \dotsmwäre (für „Multiplikationspunkte“) angemessen, ebenso wie \dotsb(„Punkte mit binären Operatoren/Relationen“). beide ergeben \cdots.

verwandte Informationen