feat: add pdfpc-file metadata in typst directly
Many thanks for Polylux anyway, it is very cool. But I think it would be nice to have the ability to export pdfpc file without polylux2pdfpc.
A lot of work has been done in #83 and #84 , but too many files have been modified. I just come up with a simpler method. I add a locate and query in pdfpc.config() function, so you just add pdfpc.config() in your slide source file to enable this feature.
You can export pdfpc file without polylux2pdfpc simply by:
typst query --root . example.typ --field value --one "<pdfpc-file>" > example.pdfpc
https://typst.app/project/rzIE9aLpKytQUQNn8SSRrP
This PR is significant for tools other than pdfpc, just like Typst Preview, which already has a slide mode.
With this feature, Typst Preview can implement better navigation and presenter view, which is much more convenient than pdfpc because you have a hard time installing pdfpc on Windows #106 , and Typst Preview has animated GIFs support that pdfpc doesn't have. https://github.com/Enter-tainer/typst-preview/issues/191 https://github.com/Enter-tainer/typst-preview/issues/192
It's also a good way to achieve #122 .
@andreasKroepelin If you have spare time, could you please take a look at this? Many thanks!
@andreasKroepelin I really like this idea, this could be a good idea to avoid having a dependency to an external program to extract the metadata. What do you think of it?
@OrangeX4 @drupol Sorry, I never reacted on this PR. I think the change to Polylux' code is okay but I don't like the user interface of having to call this complicated typst query command. I think "use this tool polylux2pdfpc" is an easier to follow advice for users.
Thanks for reply. I prefer the typst query command, even though it's a bit more complicated. I think that this command is a low-frequency copy-and-paste command, so it won't be annoying too much. However, keeping polylux2pdfpc as an option also make sense, providing users with two choices.
I do prefer having less complexity and fewer dependencies too, as long as the command to extract the data is correctly documented, it's not an issue.