Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Does Pandoc plan to support converting to/from Wolfram/Mathematica notebooks? #5623

Open
georgewsinger opened this issue Jun 28, 2019 · 4 comments

Comments

@georgewsinger
Copy link

The particular use case I have in mind is: org-mode -> mathematica, and (less importantly) mathematica -> org-mode. It doesn't look like this is currently supported (unless I'm mistaken).

@mb21
Copy link
Collaborator

mb21 commented Jun 29, 2019

Can you link to some official documentation of the format?

@arnoudbuzing
Copy link

(I work for Wolfram Research)

All notebooks for Wolfram products use the syntax from the Wolfram Language. In the Wolfram Language there is no syntactical difference between code and data formats. Everything follows the same expression format:
https://reference.wolfram.com/language/tutorial/EverythingIsAnExpression.html

There is a good starter tutorial on notebooks is here:
https://reference.wolfram.com/language/tutorial/NotebooksAsWolframLanguageExpressions.html.

Notebook files have the .nb extension and contain one Notebook[...] expression with a list ({...}) of Cell[...] expressions. Each Cell typically has two or three arguments with the first argument representing the cell content, the second argument representing the cell's style, and an optional third argument containing the cell's options.

Here is more documentation on notebooks and cells:

https://reference.wolfram.com/language/ref/Notebook.html
https://reference.wolfram.com/language/ref/Cell.html

Additionally cells can be grouped using CellGroupData. This allows for collapsing a number of cells so they take up less vertical space in the notebook:
https://reference.wolfram.com/language/ref/CellGroupData.html

Contents in cells is represented by a "box language" where each typeset expression can be represented by a number of "box functions":
https://reference.wolfram.com/language/guide/LowLevelNotebookStructure.html

The reference documentation for the language is located here: https://reference.wolfram.com. It is the official documentation for the Wolfram Language and provides the complete set of documented and supported functions for the notebook format in the Wolfram language.

If you need help with specifics, or have questions, please let me know and I will be happy to help with anything. If anyone reading this plans to do serious work on a Wolfram notebook converter for Pandoc, please let me know and I can help you with any necessary licenses to complete this project. Thank you for your interest in this format.

@georgewsinger
Copy link
Author

@arnoudbuzing Is there any possibility that Wolfram Research can build this feature directly?

@jgm
Copy link
Owner

jgm commented Mar 22, 2020

I can help you with any necessary licenses to complete this project

Everything in pandoc needs to be GPL. So if the licensing of the mathematica format prohibits that, this issue can be closed. It would still be possible to create a converter that could interface with pandoc (e.g. via JSON serialization of a pandoc structure).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants