emacs-orgmode
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: multipage html output


From: Ihor Radchenko
Subject: Re: multipage html output
Date: Sat, 10 Aug 2024 12:32:12 +0000

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

>  it was easier than I thought, although still nasty:
>
> https://github.com/ormf/org-mode/tree/org-html-multipage
>
> Maybe you can check whether this is along the lines of what you had in
> mind.

>> Also, please mention that `org-export-multipage-split-functions' are
>> called _only_ when multipage output is requested. This means that
>> `org-html-multipage-split' does not need to check :multipage property.
>
> done.

I do not see it in

> (defvar org-export-multipage-split-functions nil
>   "List of functions applied to the parse tree after it has been
> split for multipage output. Each function is called with three
> arguments: The parse tree, as returned by
> `org-element-parse-buffer', the backend, as a symbol, and the
> communication channel, as a plist. It must return the modified
> parse tree to transcode.")

Also, as a side note, this docstring does not follow docstring
conventions. Try M-x checkdoc

>> > +(defun org-html-transcode-org-data (data content info)
>> > +  "Transcode the top org-data node of the org file to export.
>> > ...
>> 
>> > +(defun org-html-transcode-multipage (info &optional body-only)
>> > +  "Central routine transcoding to multipage output called by
>> > +`org-html-transcode-org-data' called from `org-export-as'.
>> > ...
>> 
>> I see nothing specific to HTML in these two functions.  Please, factor
>> them out into ox.el. I think that they can be all merged into the
>> default `org-export-transcode-org-data'.
>
> I factored out org-html-transcode-multipage to
> org-export-transcode-multipage and got rid of
> org-html-transcode-multipage.

I do not see `org-export-transcode-multipage' in
https://github.com/ormf/org-mode/tree/org-html-multipage

Did you forget to push some commits?

>> This is awkward.  Why not modifying DATA directly? Say, you can
>> transform it into (org-data (...) (org-page ...) (org-page ...) ...).
>
> I implemented it now by making org-page elements full citizens,
> adopting their contents so that you can org-export-data on them. It
> was quite nasty concerning link resolution but I found a reasonable
> way to solve this.
>
> This is just a proposal to check whether this architecture is the way
> to go. I got the idea that it might be feasible to integrate all page
> related properties directly into the properties of each org-page
> element rather than annotating info with this information. I will look
> into that in the following days as it might simplify the code
> somewhat, but it won't be a drastic change (just again probably a
> chasing of many nasty details ;-).

Looking forward.

-- 
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

[Prev in Thread] Current Thread [Next in Thread]