Hello,
[email protected] (Дядов Васил Стоянов) writes:
> With my patch to ob-core.el org-babel works fine with your suggestion. It
> just skips #+attr_...: lines as blank lines (original behaviour of
> org-babel is to skip blank lines between #+end_src and #+results, when
> it searches results block for updating).
My remark about syntax was orthogonal to your patch. I was just pointing
out you used a wrong example. Eric Schulte will know better than me
about your patch.
> Of course, org-babel behavior may be easily changed to dissallow empty
> lines between #+attr_...: and #+results:.
It would be better, indeed.
> But currently org-elements allows next construction:
>
> ,----
> | #+attr_html: alt="big image" width="100%"
> | ^
> | |
> | +- several empty lines between attr and file
> | |
> | v
> | file:123.png
> `----
Of course not. With:
#+attr_html: alt="big image" width="100%"
file:123.png
(org-element-property :attr_html (org-element-at-point)) with point at
"file:..." will return ("alt=\"big image\" width=\"100%\"") while on the
following example:
#+attr_html: alt="big image" width="100%"
file:123.png
it will return nil.
> That is why I think that it is not necessary to make org-babel behavior
> different from org-elements (to dissalow empty lines between #+attr and
> #+results when it searches results block), at least for now.
Babel behaviour is already slightly different from Elements's. In the
long run it will be necessary to correct this.
> PS: Is there any good documentation and explanation of org-mode
> internals? I could help a little with rewritting org-babel to use
> org-elements.
You may have a look at the comments at the start of org-elements.el. At
some point, I will have to write an Info doc about this library, unless
I postpone it until the end of time.
Regards,
--
Nicolas Goaziou