[ Adding the mailing list back to CC ]

Orm Finnendahl <orm.finnend...@selma.hfmdk-frankfurt.de> writes:

> Let me recapitulate to make sure I understand you completely:
>
> 1. Replace the call to org-export-transcode-page at the end of
>    ord-export-as by a call to org-export-data

Yes.

> 2. If a transcoder for org-data is defined, call that and return nil
>    from org-export-date.
>
>    Otherwise return the transcoded string.

> 3. In case a string is returned, process it as it is done in
>    org-export-transcode-page (only that the output string will be
>    supplied in place of the headline and we will find a better name for
>    org-export-transcode-page as it is called *after* the transcoding.

No.

If a transcoder for org-data is defined, call it and return whatever it
returns. Otherwise, call `org-export-transcode-page' (adjusted to follow
transcoder arguments).

> 1. org-export-data has to be modified to catch the case of
>    org-export-transcoder being called on org-data in the
>    multipage-case (after ;; Element/Object with contents.). This seems
>    a bit complicated as there is memoization going on in
>    :exported-data of info further down in org-export-data which
>    probably should get circumvented in the multipage case (e.g. by
>    checking the value of results).

I do not fully understand the problem you are describing here, but hope
that my clarification above resolved it.

> 2. The code has to define/provide a transcoding function in the
>    multipage case but should *not* provide such a function in the
>    single page case, which means (in the multipage case) to modify the
>    alist of the backend on-the-fly before calling org-export-as.

I propose to allow custom org-data transcoder for single page case as well.
If there is no need to have custom transcoder for single page, the
custom transcoder can check :multipage property and fall back to
calling `org-export-transcode-page' if it is nil.

-- 
Ihor Radchenko // yantar92,
Org mode contributor,
Learn more about Org mode at <https://orgmode.org/>.
Support Org development at <https://liberapay.com/org-mode>,
or support my work at <https://liberapay.com/yantar92>

Reply via email to