X-Git-Url: http://christophe.rhodes.io/gitweb/?p=swankr.git;a=blobdiff_plain;f=swank-media.R;h=01ea682932cf6bee1c5718c513301d906360ca74;hp=6e81dbbe82399b7704bcb43a6aaf86c1126d5152;hb=03de6608402c91c474d0e5fb57569631ded3701a;hpb=3cf3720a2c0a72d6f722a9b990891a27301fadcf diff --git a/swank-media.R b/swank-media.R index 6e81dbb..01ea682 100644 --- a/swank-media.R +++ b/swank-media.R @@ -15,5 +15,30 @@ makeMediaReplResult.trellis <- function(value) { quote(`:file`), filename)), deparse(value$call, nlines=1)) } +makeMediaReplResult.ggplot <- function(value) { + filename <- tempfile("swank-media-") + png(filename, width=320, height=200) + print(value) + dev.off() + list(quote(`:write-image`), list(list(quote(`:type`), quote(png), + quote(`:file`), filename)), + deparse(value$call, nlines=1)) +} + +makeMediaReplResult.numeric <- function(value) { + string <- paste(deparse(value), sep="", collapse="\n") + list(quote(`:write-string`), string, quote(`:repl-result`)) +} +makeMediaReplResult.complex <- function(value) { + string <- deparse(value) + list(quote(`:write-string`), string, quote(`:repl-result`)) +} + +makeMediaReplResult.array <- function(value) { + makeMediaReplResult.default(value) +} +makeMediaReplResult.matrix <- function(value) { + makeMediaReplResult.default(value) +} makeReplResultFunction <- makeMediaReplResult