Paste Mathematica-Code, so dass es in separate Eingabezellen aufgeteilt ist

8

Ich kopiere häufig Mathematica-Code von Websites (z. B. SO) auf ein Notebook. Der Code wird normalerweise als eine einzelne Eingabezelle eingefügt. Ich bin auf der Suche nach einer einfachen Möglichkeit, es als mehrere Eingabezellen für eine bequeme schrittweise Auswertung einfügen.

Zum Beispiel

%Vor%

würde idealerweise als zwei Eingabezellen eingefügt werden. Manuelle Formatierung (d. H. Die ursprünglichen Zeilenumbrüche) sollte vorzugsweise ebenfalls beibehalten werden (dies ist beim standardmäßigen Einfügen nicht der Fall).

Im Allgemeinen, wenn man alle Eingabezellen auswählt (ALT-Klick), in einen Texteditor kopiert und den resultierenden Text in ein Notizbuch zurückkopiert, sollte man eine ähnliche Entsprechung der ursprünglichen Zellen erhalten, die kopiert wurden. p>     

Szabolcs 07.11.2011, 08:42
quelle

2 Antworten

15

Oder .... Sie können einfach Strg + Shift + D an der Stelle drücken, an der Sie Ihren Singe teilen möchten Zelle in 2 separate Zellen. Manchmal ist es vorteilhaft, mehrere Operationen in einer einzigen Zelle zu gruppieren (oder sie nicht zu teilen). Um eine solche Aufteilung rückgängig zu machen, wählen Sie beide Zellen aus (oder mehr als 2, wenn Sie möchten) und klicken Sie auf Strg + Umschalt + M sie in eins.

    
Gregory Klopper 07.11.2011, 18:08
quelle
0

Dies ist eine einfache Implementierung (ich würde auch einen Code-Review schätzen, ich bin nicht gut in Front-End-Programmierung):

%Vor%

Es bricht Zellen bei leeren Zeilen. Dazu müssen wir zuerst den Ausdruck analysieren (was ist, wenn eine leere Zeile in der Mitte eines langen Module erscheint?). Aber das Analysieren allein wird mehrere Probleme verursachen.

Probleme mit dieser Implementierung:

  • es entfernt Kommentare
  • kann nicht mit falschen Eingaben umgehen
  • es behält nicht die Formatierung (Zeilenumbrüche)
  • bei
  • Ich bin mir sicher, dass es noch einige andere Dinge geben muss, die schief gehen können
Szabolcs 07.11.2011 09:25
quelle