If I were you, I would use
(setq org-format-latex-options
(cdr '(_ :foreground auto ; default
:background default
:scale 1.5 ; 1.0
:html-foreground "Black"
:html-background "Transparent"
:html-scale 1.0
:matchers ("begin" "$1" "$" "$$" "\\(" "\\["))))
or
(setq org-format-latex-options (plist-put org-format-latex-options :scale 1.5))
(setq org-format-latex-options (plist-put org-format-latex-options :foreground 'auto))
because I like simple and obvious solutions. As for you question, you can use
(setq org-format-latex-options
(plist-put (plist-put org-format-latex-options
:scale 1.5)
:foreground 'auto))
To save more typing, you can define your own plist-put
, for example,
(defmacro your-plist-put (plist &rest args)
(let ((list nil))
(while args
(push `(setq ,plist (plist-put ,plist ,(pop args) ,(pop args))) list))
(cons 'progn (nreverse list))))
then you can use it in this way,
(your-plist-put org-format-latex-options :scale 1.5 :foreground 'auto)
↦
(progn
(setq org-format-latex-options
(plist-put org-format-latex-options :scale 1.5))
(setq org-format-latex-options
(plist-put org-format-latex-options :foreground 'auto)))