P: ¿cómo puedo obtener ESS (R) para trazar directamente a un búfer de Emacs?
Al interactuar con R a través de ESS, R por defecto genera una ventana gráfica separada fuera de Emacs para dibujar sus trazados. (Por supuesto, uno puede elegir otros dispositivos gráficos, que es cómo trazamos en PDF, etc.) Dos problemas: primero, la nueva ventana le roba el foco a Emacs, y segundo, seguro que sería bueno mantener todo bien y ordenado dentro del ecosistema Emacs.
Entonces: ¿hay alguna forma de trazar "directamente" (o incluso indirectamente) a un búfer de Emacs y, lo que es más importante, hacerlo sin mucha intervención manual por parte del usuario?
Hubo alguna discusión previa en este viejo hilo de desbordamiento de pila , pero las soluciones parciales propuestas no son ideales. Principalmente implican cambiar el dispositivo de trazado en R (por ejemplo, a PNG), trazar en un archivo temporal y luego visitar manualmente ese archivo en un búfer de Emacs. Todo eso me parece muy torpe, especialmente si el objetivo es usar la ventana de trama / buffer de forma interactiva y dibujar muchas parcelas en una sesión (o agregar capas sobre la marcha).
Estoy especulando aquí, pero me parece que, dado que tanto R como Emacs admiten SVG, ese podría ser un formato útil para usar. Sin embargo, no me queda claro si / cómo se podría conectar al proceso R para comunicarse sobre la marcha. ¿Hay alguna manera de hacer que R escupe el código SVG directamente en un búfer de Emacs, o necesitaría pasar por el intermediario de un archivo temporal? ¿Cómo podría uno convencer a Emacs para que visite un nuevo archivo temporal de forma automática cuando R lo crea, o para actualizar dicho búfer de trama cuando el archivo temporal se actualiza / sobrescribe con una nueva trama?
create-image
. Sin embargo, no puedo ayudarte a hacer que R y Emacs se comuniquen entre sí para lograrlo.