The problem may be the name is only two characters long. Try Ahh instead. That works for me. John ----------------------------------- Professor John Kitchin Doherty Hall A207F Department of Chemical Engineering Carnegie Mellon University Pittsburgh, PA 15213 412-268-7803 @johnkitchin http://kitchingroup.cheme.cmu.edu On Mon, Feb 4, 2019 at 7:00 AM Emmanuel Charpentier wrote: > Seen in `org-mode' version `9.2'. > > Using `noweb' syntax works OK with `emacs-lisp': > > ┌──── > │ #+name: a > │ #+begin_src emacs-lisp > │ (setq L (append L (list i))) > │ #+end_src > │ > │ #+name: b > │ #+begin_src emacs-lisp :noweb yes :exports both > │ ;; Lisp version > │ (setq L nil) > │ (dotimes (i 5) <>) > │ L > │ #+end_src > └──── > > This gives : > > ┌──── > │ (setq L (append L (list i))) > └──── > > ┌──── > │ ;; Lisp version > │ (setq L nil) > │ (dotimes (i 5) ) > │ L > └──── > > The `noweb' syntax also works with `Sage' (a symbolic maths oriented > Python derivative): > > ┌──── > │ #+name: Aaarghhh > │ #+begin_src sage > │ L.append(i) > │ #+end_src > │ > │ #+name: Berde > │ #+begin_src sage :noweb yes :exports both > │ ## Python version > │ L=[] > │ for i in range(1,6): > │ <> > │ L > │ #+end_src > └──── > > wich gives : > > ┌──── > │ L.append(i) > └──── > > ┌──── > │ ## Sage version > │ L=[] > │ for i in range(1,6): > │ > │ L > └──── > > But using the same syntax in Python fails miserably: > > ┌──── > │ #+name: Ah > │ #+begin_src python > │ L.append(i) > │ #+end_src > │ > │ #+name: Beee > │ #+begin_src python :noweb yes :exports both > │ ## Python version > │ L=[] > │ for i in range(1,6): > │ <> > │ L > │ #+end_src > └──── > > ┌──── > │ L.append(i) > └──── > > ┌──── > │ ## Python version > │ L=[] > │ for i in range(1,6): > │ <> > │ L > └──── > > ┌──── > │ [] > └──── > > > It *seems* that the "Ah" block is not expanded. > > The code itself should be sound *if* it expanded: > > ┌──── > │ #+name: B0 > │ #+begin_src python :exports both > │ L=[] > │ for i in range(1,6): > │ L.append(i) > │ L > │ #+end_src > └──── > > ┌──── > │ L=[] > │ for i in range(1,6): > │ L.append(i) > │ L > └──── > > ━━━━━━━━━━━━━━━ > 1 2 3 4 5 > ━━━━━━━━━━━━━━━ > > During the compilation of the source of this mail, the following is > printed in the `*Python*' buffer: > > ┌──── > │ >>> L.append(i) > │ >>> > │ >>> open('/tmp/babel-OJSsxf/python-dVESY4', 'w').write(str(_)) > │ >>> > │ >>> > │ >>> 'org_babel_python_eoe' > │ 'org_babel_python_eoe' > │ >>> ## Python version > │ ... L=[] > │ >>> for i in range(1,6): > │ ... <> > │ File "", line 2 > │ <> > │ ^ > │ SyntaxError: invalid syntax > │ >>> > │ >>> L > │ [] > │ >>> > │ >>> open('/tmp/babel-OJSsxf/python-9NR46u', 'w').write(str(_)) > │ >>> > │ >>> > │ >>> 'org_babel_python_eoe' > │ 'org_babel_python_eoe' > │ >>> L=[] > │ >>> for i in range(1,6): > │ ... L.append(i) > │ ... > │ >>> L > │ [1, 2, 3, 4, 5] > │ >>> > │ >>> open('/tmp/babel-OJSsxf/python-fW5gK0', 'w').write(str(_)) > │ >>> > │ >>> > │ >>> 'org_babel_python_eoe' > │ 'org_babel_python_eoe' > │ >>> > └──── > > The source code of this mail is attached. > > -- > Emmanuel Charpentier >