From 8562d230fff31cf5db047d38bb66fca186e99954 Mon Sep 17 00:00:00 2001 From: Bastien Guerry Date: Fri, 10 Aug 2012 15:21:52 +0200 Subject: [PATCH] org-plot.el (org-plot/gnuplot-script): Don't use `org-flet' * org-plot.el (org-plot/gnuplot-script): Don't use `org-flet'. --- lisp/org-plot.el | 75 ++++++++++++++++++++++++++++---------------------------- 1 file changed, 38 insertions(+), 37 deletions(-) diff --git a/lisp/org-plot.el b/lisp/org-plot.el index 64a5b9ef4..23fe2a442 100644 --- a/lisp/org-plot.el +++ b/lisp/org-plot.el @@ -209,40 +209,41 @@ manner suitable for prepending to a user-specified script." ('2d "plot") ('3d "splot") ('grid "splot"))) - (script "reset") plot-lines) - (org-flet ((add-to-script (line) (setf script (format "%s\n%s" script line)))) - (when file ;; output file - (add-to-script (format "set term %s" (file-name-extension file))) - (add-to-script (format "set output '%s'" file))) - (case type ;; type - ('2d ()) - ('3d (if map (add-to-script "set map"))) - ('grid (if map - (add-to-script "set pm3d map") - (add-to-script "set pm3d")))) - (when title (add-to-script (format "set title '%s'" title))) ;; title - (when lines (mapc (lambda (el) (add-to-script el)) lines)) ;; line - (when sets ;; set - (mapc (lambda (el) (add-to-script (format "set %s" el))) sets)) - (when x-labels ;; x labels (xtics) - (add-to-script - (format "set xtics (%s)" - (mapconcat (lambda (pair) - (format "\"%s\" %d" (cdr pair) (car pair))) - x-labels ", ")))) - (when y-labels ;; y labels (ytics) - (add-to-script - (format "set ytics (%s)" - (mapconcat (lambda (pair) - (format "\"%s\" %d" (cdr pair) (car pair))) - y-labels ", ")))) - (when time-ind ;; timestamp index - (add-to-script "set xdata time") - (add-to-script (concat "set timefmt \"" - (or timefmt ;; timefmt passed to gnuplot - "%Y-%m-%d-%H:%M:%S") "\""))) - (unless preface - (case type ;; plot command + (script "reset") + ; ats = add-to-script + (ats (lambda (line) (setf script (format "%s\n%s" script line)))) + plot-lines) + (when file ;; output file + (funcall ats (format "set term %s" (file-name-extension file))) + (funcall ats (format "set output '%s'" file))) + (case type ;; type + ('2d ()) + ('3d (if map (funcall ats "set map"))) + ('grid (if map (funcall ats "set pm3d map") + (funcall ats "set pm3d")))) + (when title (funcall ats (format "set title '%s'" title))) ;; title + (when lines (mapc (lambda (el) (funcall ats el)) lines)) ;; line + (when sets ;; set + (mapc (lambda (el) (funcall ats (format "set %s" el))) sets)) + (when x-labels ;; x labels (xtics) + (funcall ats + (format "set xtics (%s)" + (mapconcat (lambda (pair) + (format "\"%s\" %d" (cdr pair) (car pair))) + x-labels ", ")))) + (when y-labels ;; y labels (ytics) + (funcall ats + (format "set ytics (%s)" + (mapconcat (lambda (pair) + (format "\"%s\" %d" (cdr pair) (car pair))) + y-labels ", ")))) + (when time-ind ;; timestamp index + (funcall ats "set xdata time") + (funcall ats (concat "set timefmt \"" + (or timefmt ;; timefmt passed to gnuplot + "%Y-%m-%d-%H:%M:%S") "\""))) + (unless preface + (case type ;; plot command ('2d (dotimes (col num-cols) (unless (and (equal type '2d) (or (and ind (equal (+ 1 col) ind)) @@ -264,9 +265,9 @@ manner suitable for prepending to a user-specified script." ('grid (setq plot-lines (list (format "'%s' with %s title ''" data-file with))))) - (add-to-script - (concat plot-cmd " " (mapconcat 'identity (reverse plot-lines) ",\\\n ")))) - script))) + (funcall ats + (concat plot-cmd " " (mapconcat 'identity (reverse plot-lines) ",\\\n ")))) + script)) ;;----------------------------------------------------------------------------- ;; facade functions -- 2.11.4.GIT