De `call` functionaliteit van Org-babel verpakt alle resultaten tussen aanhalingstekens

Met behulp van org-babel-bronblokken, kan ik een blok een naam geven en dit later noemen. Wanneer ik het blok zelf evalueer, krijg ik een absolute waarde:

#+name: demo
#+BEGIN_SRC python
return 5
#+END_SRC

#+RESULTS: demo
: 5

Maar als ik het blok call , is het resultaat altijd tussen aanhalingstekens:

#+call: demo()

#+RESULTS:
: "5"

Hoe verander je dit gedrag op earth ? Ik heb met org-babel-inline-results-wrap geknoeid, het mocht niet baten.

0
Met jouw exacte voorbeeld krijg ik altijd een eenvoudige niet-geciteerde 5. Let er overigens op dat je modifiers op de CALL-verklaring (: resultaten, enz.) Precies zo kunt zetten als je kunt op het SRC-blok (zoek in de handleiding) : # + CALL: [] () .
toegevoegd de auteur Ross, de bron
Yep. Ik heb elke vlag geprobeerd die ik kan leveren aan de aanroep - : resultaten woordelijk bijvoorbeeld. En ik heb nog nooit een instantie gezien waarin de uitvoer van iemand anders call werd geciteerd. Dus mijn conclusie is: het is op de een of andere manier te configureren! Maar ik kan niet, voor het leven van mij, achterhalen hoe .
toegevoegd de auteur Dawny33, de bron

1 antwoord

Dit blijkt een bijwerking te zijn van : results verbatim particular on call blocks. Vis:

#+name: demo
#+BEGIN_SRC python :results verbatim
return 5
#+END_SRC

#+RESULTS: demo
: 5

#+call: demo() :results value

#+RESULTS:
: 5

#+call: demo() :results verbatim

#+RESULTS:
: "5"

Eerlijk gezegd, ik heb geen idee waarom dit het geval is, maar het is hier in ieder geval voor het geval iemand anders erin rent. (Ik gebruik : resultaten verbatim heel vaak op src-blokken, dus.)

1
toegevoegd
Ik kan het nu reproduceren. Maar het vereist voor mij verbatim op het originele src-blok en op het belblok. Dit lijkt mij een bug die op de mailinglijst zou moeten worden geplaatst.
toegevoegd de auteur Ross, de bron