Dieser Beitrag geht auf meine Frage zurück Ausweitung der Zelldefinition auf Zellrahmen-Etiketten . Ich habe herumgespielt mit CounterIncrements
und ich erhalte nicht das, was ich erwarte.
Wie Simon in seiner Antwort auf den von mir erwähnten Beitrag, beginnen wir mit der Erstellung eines Zählers.
CellPrint[Cell["Setting the counter", "Text",
CounterAssignments -> {{"MyCounter", 0}}]]
Jetzt drucken wir diesen Zähler aus.
CellPrint[Cell[
TextData[RowBox[{"MyCounter ", CounterBox["MyCounter"]}]], "Text"]]
Das Ergebnis wird sein:
MyCounter 0
Um den Zähler zu erhöhen, können wir die Option CounterIncrements
wie folgt:
CellPrint[Cell[TextData[RowBox[{"MyCounter ", CounterBox["MyCounter"]}]],
"Text", CounterIncrements -> "MyCounter"]]
Dies wird Ihnen helfen:
MyCounter 1
Sie können das so oft eingeben, wie Sie wollen, und Sie werden sehen, dass sich der Zähler erhöht.
Desde CounterIncrements
ist eine Option für eine Zelle, sagte ich zu mir selbst: "Nun, was ist, wenn ich eine Zelle innerhalb einer Zelle mache und dort diese Option einstelle?". Da ich eine Zelle mit dieser Option erstelle, würde ich erwarten, dass sich der Zähler erhöht. Ist das der Fall?
CellPrint[
Cell[TextData[
RowBox[{"MyCounter ", CounterBox["MyCounter"],
Cell[TextData[RowBox[{"[InlineCell]"}]], "Text",
CounterIncrements -> "MyCounter"]}]], "Text"]]
Die Ausgabe ist:
MyCounter 1[InlineCell]
Ich hatte erwartet, dass die Ausgabe lautet MyCounter 2[InlineCell]
denn ich habe der Zelle innerhalb der Zelle gesagt, sie solle den Zähler erhöhen, aber sie hat es nicht getan.
In der Dokumentation heißt es, dass CounterIncrements
"ist noch nicht vollständig in das langfristige Mathematica-System integriert und kann sich noch ändern", aber ich denke, dass die Information dort etwas irreführend ist.
Der Grund, warum ich das möchte, ist, dass ich einen Stil definieren kann, der jedes Mal, wenn er verwendet wird, einen Zähler erhöht. Aber diese Formatvorlage wird auf eine Zelle angewendet, die sich innerhalb einer anderen Zelle befindet. Hat jemand eine Idee, was hier passiert? Ich verwende MMA8 unter Mac OS X.