Thanks for clarifying! Reading the docs on filters, if I understand correctly the idea is something like this: Input => Reader => AST => Filter => AST => Writer => Output But if I need to write a custom reader anyway, why would I need to encode additional transformations in a filter? Couldn't I just encode it into the AST when I read it in in the first place? On Tuesday, March 21, 2023 at 2:31:14 PM UTC+1 Bastien DUMONT wrote: > Your custom reader can store the required information in divs, spans or > attributes (for the elements that support it). Then, when writing to LaTeX, > you can use a custom filter to convert this information to LaTeX code. > > A word of caution: in your figure, the LaTeX engine comes after Pandoc > (Pandoc outputs a TeX file taking account of the custom template; then this > TeX file is processed by the LaTeX engine). > > Le Tuesday 21 March 2023 à 05:31:48AM, Matan Bendix Shenhav a écrit : > > I'm looking to implement a web app which allows users to write articles > which > > automatically get typeset into newspapers. I will be consuming JSON data > and > > want to output PDFs, and want to understand how to provide limited > control of > > element positioning (especially of images) through some sort of layout > hooks. > > > > Articles will be written in a simple linear rich-text format, but some > limited > > settings would allow users to control elements of positioning, in > particular > > whether images would appear inline inside a column or blown up to full > page > > width. > > > > Editing is highly contained to keep things simple. Users select a > collection of > > articles and pick their preferred order, and the application can decide > the > > details of how to position them. The output is a section of the > newspaper, N > > pages long, as a PDF. > > > > The web editor will output the content in some sort of JSON format > (probably > > extending [1]this API), but if necessary I can easily convert this into > HTML > > (and indeed, I will have to anyway for the use to view the content in the > > editor). > > > > If I understand correctly, the Pandoc pipeline should be something like > this: > > > > Screenshot from 2023-03-21 13-25-28.png > > > > My main question is about provide element-level hooks to allow to input > JSON to > > influence output layout. As a simple example, let's say the user adds > some > > images into the markup. Some images should be inline, while others > should be > > full page width or even full page. > > > > How do I implement such hooks in this sort of Pandoc pipeline? > > > > Thank you for your time! > > > > > > -- > > You received this message because you are subscribed to the Google Groups > > "pandoc-discuss" group. > > To unsubscribe from this group and stop receiving emails from it, send > an email > > to [2]pandoc-discus...-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org > > To view this discussion on the web visit [3] > https://groups.google.com/d/msgid/ > > pandoc-discuss/9b05df21-d6cc-4312-963b-d706b24e4f38n%40googlegroups.com. > > > > References: > > > > [1] https://editorjs.io/base-concepts/#what-is-clean-data > > [2] mailto:pandoc-discus...-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org > > [3] > https://groups.google.com/d/msgid/pandoc-discuss/9b05df21-d6cc-4312-963b-d706b24e4f38n%40googlegroups.com?utm_medium=email&utm_source=footer > > > -- You received this message because you are subscribed to the Google Groups "pandoc-discuss" group. To unsubscribe from this group and stop receiving emails from it, send an email to pandoc-discuss+unsubscribe-/JYPxA39Uh5TLH3MbocFF+G/Ez6ZCGd0@public.gmane.org To view this discussion on the web visit https://groups.google.com/d/msgid/pandoc-discuss/f2109e96-b0b2-42da-b19a-0312a41f5952n%40googlegroups.com.