Function: org-plot/add-options-to-plist

org-plot/add-options-to-plist is a byte-compiled function defined in org-plot.el.gz.

Signature

(org-plot/add-options-to-plist P OPTIONS)

Documentation

Parse an OPTIONS line and set values in the property list P.

Returns the resulting property list.

Source Code

;; Defined in /usr/src/emacs/lisp/org/org-plot.el.gz
(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."
  (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)
		("min"       . :ymin)
		("ymin"      . :ymin)
		("max"       . :ymax)
		("ymax"      . :ymax)
		("xmin"      . :xmin)
		("xmax"      . :xmax)
		("ticks"     . :ticks)
		("trans"     . :transpose)
		("transpose" . :transpose)))
	  (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)