They work differently. Try this example: #+BEGIN_SRC emacs-lisp :var x="hi" (message x) #+END_SRC tangles to (let ((x (quote "hi"))) (message x)) but this #+NAME: x #+BEGIN_SRC emacs-lisp "hi" #+END_SRC #+BEGIN_SRC emacs-lisp (message «x») #+END_SRC tangles to this (message "hi" Sincerely, Grant Rettke On Mon, Dec 25, 2017 at 6:45 AM, numbchild@gmail.com wrote: > > I see. I will use noweb style for now. > But should tangle expand :var variables when tangling? I think this is the > correct behaviour. > > [stardiviner] GPG key ID: 47C32433 > IRC(freeenode): stardiviner Twitter: @numbchild > Key fingerprint = 9BAA 92BC CDDD B9EF 3B36 CB99 B8C4 B8E5 47C3 2433 > Blog: http://stardiviner.github.io/ > > On Sun, Dec 24, 2017 at 11:40 PM, Grant Rettke > wrote: > >> > Here is a quick test: >> > >> > * Test tangle will auto expand and substitute :var >> > >> > #+begin_src js :tangle kk.js >> > console.log("hello, world!"); >> > #+end_src >> > >> > #+begin_src js :var name="chris" :tangle require-kk.js >> > // require("kk.js"); >> > console.log("Hi, ", name); >> > #+end_src >> > >> > #+RESULTS: >> > : Hi, chris >> > >> > #+NAME: check whether tangle expand and substitute :var >> > #+begin_src shell >> > cat require-kk.js >> > #+end_src >> > >> > #+RESULTS: check whether tangle expand and substitute :var >> > : var name="chris"; >> > : console.log("Hi, ", name); >> > >> > The upper result should be: ~console.log("Hi, ", "chris");~. >> >> Here are your two source blocks. They each do literate programming, >> one with Variable style and the other with Noweb style. When you >> evaluate them you get an identical result. When you tangle them you >> get two different pieces of code, that generate the same result. You >> can peek at what the tangled code will look like by calling >> org-babel-expand-src-block inside the source block. That is how it >> will look in the tangled file. I think that want Noweb style. >> >> When I use the Variable approach like this >> >> #+begin_src js :var name="chris" :tangle kk.js >> console.log("Hi, ", name); >> #+end_src >> >> I get this in the tangled output file >> >> var name="chris"; >> console.log("Hi, ", name); >> >> When I use the the Noweb approach like this >> >> #+NAME: name >> #+BEGIN_SRC emacs-lisp >> chris >> #+END_SRC >> >> #+NAME: org_gcr_2017-12-23_mara_3D887FDD-163D-4BE1-80E8-464BF29DABEA >> #+BEGIN_SRC js :tangle noweb-kk.js :comments no >> console.log("Hi, ", "«name»"); >> #+END_SRC >> >> I get this in the tangled output file >> >> console.log("Hi, ", "chris"); >> >> WDYT? >> > >