Hi list, have spent hours with trying to de-mystify this issue, but no chance to get it. Any hints or doc references are welcome.
Given a src block with a simple if clause depending on parameter p1: #+NAME: decider #+BEGIN_SRC emacs-lisp :var p1="tbd" :results output (cond ((equal p1 "valA")(print "VALUE A")) ((equal p1 "valB")(print "B VALUE")) (t (print (concat "ERROR: p1=>|" p1 "|< not handled" ))) ) #+END_SRC Why does the following noweb call result in the t condition (and not in valB as expected) although the p1 value seems to be received by the decider block: #+BEGIN_SRC shell :var x="valB" :noweb yes :results output raw echo -n <<decider(p1="$x")>> #+END_SRC == ERROR: p1=>|valB|< not handled while hard coded param value will work (valA chosen to differentiate from x): #+BEGIN_SRC shell :var x="valB" :noweb yes :results output raw echo -n <<decider(p1="valA")>> #+END_SRC #+RESULTS: VALUE A Hard coded "valB" will work as well. Different Linux Emacsen with org-mode 9+ show same results. Thank you very much in advance, Jherek