Hello, vdya...@elvees.com (Дядов Васил Стоянов) 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