瀏覽代碼

org-plot: Use lexical binding

* lisp/org-plot.el (org-plot/add-options-to-plist): Silence
  byte-compiler.
Nicolas Goaziou 8 年之前
父節點
當前提交
62d3d24f0b
共有 1 個文件被更改,包括 34 次插入36 次删除
  1. 34 36
      lisp/org-plot.el

+ 34 - 36
lisp/org-plot.el

@@ -1,4 +1,4 @@
-;;; org-plot.el --- Support for plotting from Org-mode
+;;; org-plot.el --- Support for Plotting from Org -*- lexical-binding: t; -*-
 
 ;; Copyright (C) 2008-2016 Free Software Foundation, Inc.
 ;;
@@ -49,41 +49,39 @@
 (defun org-plot/add-options-to-plist (p options)
   "Parse an OPTIONS line and set values in the property list P.
 Returns the resulting property list."
-  (let (o)
-    (when options
-      (let ((op '(("type"    . :plot-type)
-		  ("script"  . :script)
-		  ("line"    . :line)
-		  ("set"     . :set)
-		  ("title"   . :title)
-		  ("ind"     . :ind)
-		  ("deps"    . :deps)
-		  ("with"    . :with)
-		  ("file"    . :file)
-		  ("labels"  . :labels)
-		  ("map"     . :map)
-                  ("timeind" . :timeind)
-		  ("timefmt" . :timefmt)))
-	    (multiples '("set" "line"))
-	    (regexp ":\\([\"][^\"]+?[\"]\\|[(][^)]+?[)]\\|[^ \t\n\r;,.]*\\)")
-	    (start 0)
-	    o)
-	(while (setq o (pop op))
-	  (if (member (car o) multiples) ;; keys with multiple values
-	      (while (string-match
-		      (concat (regexp-quote (car o)) regexp)
-		      options start)
-		(setq start (match-end 0))
-		(setq p (plist-put p (cdr o)
-				   (cons (car (read-from-string
-					       (match-string 1 options)))
-					 (plist-get p (cdr o)))))
-		p)
-	    (if (string-match (concat (regexp-quote (car o)) regexp)
-			      options)
-		(setq p (plist-put p (cdr o)
-				   (car (read-from-string
-					 (match-string 1 options)))))))))))
+  (when options
+    (let ((op '(("type"    . :plot-type)
+		("script"  . :script)
+		("line"    . :line)
+		("set"     . :set)
+		("title"   . :title)
+		("ind"     . :ind)
+		("deps"    . :deps)
+		("with"    . :with)
+		("file"    . :file)
+		("labels"  . :labels)
+		("map"     . :map)
+		("timeind" . :timeind)
+		("timefmt" . :timefmt)))
+	  (multiples '("set" "line"))
+	  (regexp ":\\([\"][^\"]+?[\"]\\|[(][^)]+?[)]\\|[^ \t\n\r;,.]*\\)")
+	  (start 0))
+      (dolist (o op)
+	(if (member (car o) multiples) ;; keys with multiple values
+	    (while (string-match
+		    (concat (regexp-quote (car o)) regexp)
+		    options start)
+	      (setq start (match-end 0))
+	      (setq p (plist-put p (cdr o)
+				 (cons (car (read-from-string
+					     (match-string 1 options)))
+				       (plist-get p (cdr o)))))
+	      p)
+	  (if (string-match (concat (regexp-quote (car o)) regexp)
+			    options)
+	      (setq p (plist-put p (cdr o)
+				 (car (read-from-string
+				       (match-string 1 options))))))))))
   p)
 
 (defun org-plot/goto-nearest-table ()