varkor / quiver

A modern commutative diagram editor for the web.
https://q.uiver.app
MIT License
2.37k stars 78 forks source link

Support fletcher output? #209

Closed kokic closed 4 months ago

kokic commented 4 months ago

There are numerous imperfections within Typst, including its core functionalities and reliance on third-party packages. However, a recent observation indicates that fletcher is emerging as a potential substitute for tikzcd in Typst, offering broader capabilities in charting.

From the already implemented functions, it can serve as a new output method for quiver.

Not considering parsing from the fletcher source code back to quiver. On one hand, the flexible grammar of Typst poses significant challenges in this integration effort. On the other hand, Typst's performance is robust enough to directly accommodate changes to the fletcher source code, allowing for immediate previews of the effects.

If deemed necessary, I am willing to undertake the implementation of this integration and open a pull request accordingly.


varkor commented 4 months ago

I would be willing to add support for Typst if someone volunteers to implement initial support for Typst export (meaning supporting most of the basic features of diagrams in quiver, though I think it's okay if some of the less commonly used features, e.g. wavy arrows, are not supported in an initial implementation). Regarding which drawing library to export to, I am happy with anything that is convenient for users, and is currently actively maintained. Implementing parsing is definitely not necessary.

If you are interested in implementing support for Typst, let me know if you have any questions about how quiver works. As a starting point, the functionality for exporting to LaTeX is here (and the functions that call it in the UI): https://github.com/varkor/quiver/blob/a98fba4d4ee17aa71dd4db693afded7bf1cdc9ab/src/quiver.js#L293-L294

varkor commented 4 months ago

I am going to close this issue in favour of the pre-existing issue #177, though.