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!
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
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