Mi chiedevo se qualcuno sapeva di un buon modo per ottenere R o ESS per interrompere l'esecuzione del resto del codice oltre il punto in cui si verifica un errore se sto valutando una regione o un buffer (I Ho trovato solo la richiesta opposta negli archivi di aiuto). Stavo cercando nei file della guida di R, ma option(error=stop)
interromperà l'esecuzione della funzione o dell'istruzione offensiva, ma non quelli che la seguono. Grazie!Arresto forzato o interruzione per errore
risposta
? Break
Solo per te sei fuori dal giro.
? Provare
consente di impostare il codice che potrebbe non riuscire e con grazia recuperare.
According to the ESS manual, questo dovrebbe funzionare: C-c C-c
(COMINT-interrupt-subjob) manda un segnale Control-C
al processo ESS. Questo ha l'effetto di interrompere il comando corrente.
John Fox ha un sito Web in cui offre una configurazione per ESS. In esso, ha questa funzione:
(defun stop-R()
"Interrupt R process in lower window."
(interactive)
(select-window win2)
(comint-interrupt-subjob)
(select-window win1))
Si dovrebbe essere in grado di aggiungere questa funzione al menu in XEmacs utilizzando:
(defun R-menu()
"Hook to install R menu and sub-menus"
(add-menu-item '("ESS" "R") "Interrupt computation" 'stop-R
)
)
(add-hook 'ess-mode-hook 'R-menu)
Si potrebbe controllare il resto del suo file di configurazione e la documentazione a vedi se ti interessa. Non ho ancora provato questo, ma spero che funzioni per te!
Charlie
Grazie Charlie - Ho familiarità con Cc Cc ma questo è per manualmente interrompere un processo in corso, a prescindere dagli errori (a quanto ho capito) .possero esaminare la modifica di eval-region o eval-buffer per chiamare questa funzione quando si verifica un errore ... – hatmatrix
Se R/ESS sta intasando il tempo di calcolo così tanto che i tuoi emacs/ESS non risponde a C-c C-c, è anche possibile salvarlo inviando un segnale di interruzione dal terminale.
Primo: individuare il processID di R utilizzando top
o ps
. (Il mio era 98490 Poi: kill -2 98490
che trasmette un segnale di allarme e si ottiene il/Emacs e R sessione ESS indietro
- 1. Arresto forzato di una discussione
- 2. Emulazione arresto forzato dai comandi ADB/shell
- 3. Timeout ripristino backupManagerService causa arresto forzato
- 4. Arresto ai punti di interruzione che causa EXC_BAD_ACCESS
- 5. Debug di Eclipse - Arresto senza punto di interruzione
- 6. download forzato tramite ZF2
- 7. aggiornamento forzato in GWT
- 8. AFNetworking 2.0 - Caching forzato
- 9. Interruzione trap 6 errore in C
- 10. Tracciare in R; non può essere forzato al doppio errore
- 11. Download forzato ASP.Net
- 12. laravel 4 Errore: metodo non definito arresto
- 13. Modulo di errore: kernelbase.dll. Arresto anomalo dell'applicazione
- 14. Uso forzato dell'attributo personalizzato
- 15. MongoDB Impossibile avviare - *** interruzione dopo errore fassert()
- 16. Angolare - Errore: 10 $ digest() iterazioni raggiunte. Interruzione
- 17. IE8 forzato in modalità compatibilità
- 18. C'è un modo o una soluzione per avere un trigger sul lato client forzato?
- 19. Modalità documento forzato = Standard IE8
- 20. Gradle: utilizzo forzato di un repository per una dipendenza
- 21. Git pull dopo aggiornamento forzato
- 22. Gancio di arresto per Rails
- 23. Il modo più semplice per forzare un arresto in Swift
- 24. Lettura breve o DB di caricamento OOM. Errore irreversibile, interruzione ora
- 25. Errore durante l'utilizzo del punto di interruzione condizionale con instanceof.È me o eclissi?
- 26. rapido: qual è il modificatore del tipo forzato (!) Per
- 27. Arresto modulo WinApp senza errori o eccezioni .Net
- 28. Il modo migliore per distribuire il sito Web - Arresto del pool di app o arresto del sito Web
- 29. L'incapsulamento per interruzione di eredità?
- 30. Elemento flex forzato per non crescere in direzione dell'asse trasversale
Grazie, ma quando si lavora in modo interattivo Non voglio per avvolgere la linea o la regione in prova() o tryCatch() ogni volta, ma suppongo che sarebbe tecnicamente farlo ... – hatmatrix
Ciao crippledlambda. Hai trovato una soluzione per il tuo problema nel frattempo? – giordano