Erzwinge Stopp oder Halt bei Fehler

8

Ich habe mich gefragt, ob irgendjemand einen guten Weg kannte, um R oder ESS dazu zu bringen, den Rest des Codes über den Punkt hinaus auszuführen, an dem ein Fehler auftritt, wenn ich eine Region oder einen Puffer evaluiere (ich habe nur das Gegenteil gefunden) Anfrage in den Hilfearchiven). Ich habe in den R-Hilfedateien gesucht, aber option(error=stop) stoppt nur die Ausführung der betreffenden Funktion oder Anweisung, aber nicht die, die ihr folgen. Danke!

    
hatmatrix 15.09.2009, 18:02
quelle

3 Antworten

11

Wenn R / ESS so viel Rechenzeit verbraucht, dass Ihr Emacs / ESS nicht mehr auf C-c C-c reagiert, können Sie es auch speichern, indem Sie ein INTERRUPT-Signal vom Terminal senden.

Erstens: Ermitteln Sie die Prozess-ID von R mit top oder ps . (meine war 98490 Dann: %Code% Das sendet ein Interrupt-Signal und Sie erhalten Ihre ESS / Emacs und R-Sitzung zurück

    
Yannick Wurm 16.11.2009 19:38
quelle
4

Laut dem ESS-Handbuch sollte dies funktionieren : C-c C-c (commint-interrupt-subjob) Sendet ein Control-C -Signal an den ESS-Prozess. Dies hat den Effekt, dass der aktuelle Befehl abgebrochen wird.

John Fox hat eine Website, auf der er eine Konfiguration für ESS anbietet. In ihm hat er diese Funktion:

%Vor%

Sie sollten diese Funktion zum Menü in XEmacs hinzufügen können:

%Vor%

Sie können den Rest seiner Konfigurationsdatei und Dokumentation prüfen, um zu sehen, ob Sie interessiert sind. Ich habe das noch nicht versucht, aber ich hoffe, dass es für Sie funktioniert!

Charlie

    
Charlie 26.09.2009 08:14
quelle
2

? brechen

Ruft nur die Schleife ab.

? probiere

aus

Ermöglicht das Einrichten von Code, der fehlschlagen und ordnungsgemäß wiederhergestellt werden kann.

    
42- 16.09.2009 02:20
quelle

Tags und Links