Listennummerierung Jupyter Notebook Markdown

8

Ich versuche ein Tutorial für Studenten zu erstellen. Ich möchte die Fragen nummerieren, die ich ihnen stelle, aber dazwischen möchte ich Informationen hinzufügen, um die Fragen zu stellen. Wie kann ich eine automatisch nummerierte Liste erstellen, bei der die Nummerierung nicht jedes Mal zurückgesetzt wird, wenn ich Text einfüge? Zum Beispiel:

%Vor%

Gibt die Ausgabe aus:

Dies ist eine Info.

  1. Das ist die erste Frage.

Dies ist mehr Info.

  1. Das ist Frage zwei.
Chiel 04.03.2016, 13:41
quelle

2 Antworten

6

Dies ist mit Standard Markdown nicht direkt möglich, obwohl Sie es "fälschen" können (siehe unten). In der Tat sagen die Regeln Folgendes aus:

  

Es ist wichtig zu beachten, dass die tatsächlichen Zahlen, die Sie zum Markieren der Liste verwenden, keine Auswirkung auf die HTML-Ausgabe haben, die Markdown erzeugt. ... Wenn Sie möchten, können Sie in Ihren geordneten Markdown-Listen Ordnungszahlen verwenden, damit die Zahlen in Ihrer Quelle mit den Zahlen in Ihrem veröffentlichten HTML übereinstimmen. Aber wenn du faul sein willst, musst du nicht.

     

Wenn Sie jedoch die Nummerierung von Faults verwenden, sollten Sie die Liste immer noch mit der Nummer 1 beginnen. Ab einem bestimmten Punkt in der Zukunft kann Markdown das Starten von geordneten Listen unter einer beliebigen Nummer unterstützen.

Diese Zukunft ist nie offiziell angekommen. Einige verschiedene Markdown-Implementierungen bieten jedoch möglicherweise eine solche Funktion als nicht standardmäßige Option an. Leider ist es selten (und ich erinnere mich nicht, welche Implementierungen sie sind).

Unabhängig davon haben Sie ein anderes Problem. Es ist mir nicht klar, wie Ihre gewünschte Ausgabe HTML wäre. Im Wesentlichen werden Sie nach Absätzen außerhalb Ihrer Listenelemente gefragt, die in Ihrer Liste verschachtelt sind. Das wäre ungültiger HTML:

%Vor%

Das heißt, es wird (fast) angezeigt, wie Sie es wünschen (die Nicht-Listen-Elemente sind ebenfalls eingerückt).

  

    Dies ist eine Info.

      
  1. Das ist die erste Frage.
  2.   

    Dies ist mehr Info.

      
  3. Das ist Frage zwei.
  4.   

Ich würde es nicht empfehlen, aber Sie könnten das als HTML verwenden. Vielleicht könnten Sie eine andere Methode oder ein anderes Format zur Darstellung Ihrer Daten finden.

Ich habe erwogen, die Verwendung einer geordneten Liste in einer Definitionsliste zu verschachteln, wenn Ihre Markdown-Implementierung dies unterstützt (diese Eigenschaft ist zwar nicht standardgemäß, aber in Implementierungen sehr üblich und konsistent, obwohl sie möglicherweise nicht standardmäßig aktiviert ist). Es gibt Ihnen die richtige Verschachtelung, aber das gleiche Problem, wenn nicht fortlaufende Nummern bestehen bleiben. Wenn Sie die Zahlen jedoch manuell hinzufügen und sie ausschließen, sodass sie nicht als Listenelemente interpretiert werden, funktioniert das folgendermaßen:

%Vor%

Das rendert als:

%Vor%

Und zeigt als:

  
Dies ist eine Information.
  
1. Das ist die erste Frage.
  
Dies ist mehr Info.
  
2. Das ist Frage zwei.
  

Interessanterweise, als SO den (gewöhnlich Standard) Einzug auf Definitionslisten entfernt, habe ich bei meinen Versuchen, es in der obigen Demo zu fälschen, festgestellt, dass es eine einfachere Lösung gibt, die in allen Markdown-Implementierungen funktionieren sollte. Verwenden Sie nur Absätze, manuelle Zahlen und nicht beschädigte Leerzeichen, um den Einzug zu erzwingen:

%Vor%

Beachten Sie, dass die nicht brechenden Leerzeichen dazu führen, dass Markdown diese Zeilen nicht als Listenelemente erkennt, sodass sie nicht entfernt werden müssen. Das obige rendert als:

%Vor%

Und zeigt als:

  

Dies ist eine Info.

     

1. Das ist die erste Frage.

     

Dies ist mehr Info.

     

2. Das ist Frage zwei.

    
Waylan 04.03.2016, 16:02
quelle
1

Nicht identisch mit dem gewünschten, aber Jupiter hörte auf zu nummerieren, als ich schrieb 1) 2) 3) usw.

Das ')' scheint die Neunummerierung von Jupyters Abschrift zu deaktivieren. Für jpyter Version 5.0.0 läuft Python 3.5.2.

    
Jeff Winchell 17.10.2017 04:00
quelle