olivierkes / manuskript

A open-source tool for writers
http://www.theologeek.ch/manuskript
GNU General Public License v3.0
1.74k stars 230 forks source link

No in-built PDF exporting! #598

Open venu-kuruganti opened 5 years ago

venu-kuruganti commented 5 years ago

I wanted to simply export a Manuskript project to PDF format.

However, to do that I needed to jump through a lot of hoops in downloading Pandoc and then MikeTex for Windows just to be able to get the option to export to PDF.

With PDF being the format for almost 90% of the documents around the world, why isn't this option in-built into Manuskript?

I feel that it should be in-built and authors should be able to export to PDF from the get-go itself!

worstje commented 5 years ago

To keep a long story short: PDF is not a simple thing. It is damn complicated. The first document I come across when looking for the PDF specification is over 750 pages long. Its complexity alone is arguably many times larger than Manuskript's own.

Manuskript is multi-platform, and as such it tries to rely on solutions that are applicable to all the platforms it runs on as opposed to just a singular one. Windows has some solutions for dealing with PDFs, but they are specific to the platform. While there is the option to support Windows-specific and other-platform options for PDF generation, that is just a sliding slope where any differences between the two mediums become ours to solve and 'keep equal' in terms of features and output.

Pandoc exists exactly for the purpose it is being used for: converting a document from one format to the other.

The Tex tools exist for the exact purpose of unleashing the full power of the Tex toolchain which can produce the most powerful, most flexible PDFs. It can handle mathematical equations, common fonts and all other sorts of typographical dilemmas that are definitely not trivial to implement, and are even likely to be outright missing on smaller typesetting tools. Manuskript is not only used to write books, but also by people working on scientific papers, so those 'complicated' features are not optional to a considerable number of our userbase.

You want to simply export to PDF, and we understand that. Obviously, we want to make the features in Manuskript as simple and non-confusing to use as possible to begin with. 😄

However, beyond 'download pandoc and miketex', did you have any other difficulties or find yourself needing to jump through any other hoops? Did we insufficiently document the need to have those tools installed to enable the functionality? Did we fail to supply a list with prerequisites somewhere?

Improving the installation and setup experience to be less frustrating are things we can reasonably work on with the resources we have, so if you have suggestions of a more realistic nature than 'implement PDF natively in Manuskript', we are glad to hear them.

Keep in mind that installing those tools a single time takes just a few minutes of your time, and you won't have to worry about it a second time. Reinventing the wheel or implementing and supporting a huge amount of extra code just to avoid installing these tools? That is far beyond the time and effort the few volunteers on this project have available to put into it. And simply making these tools a part of the manuskript download isn't trivial either; things like software licenses and the other projects prerequisites and updates also make it less than trivial than you might think at first glance.

But if you are passionate and really want to make builtin PDF support happen, feel free to work it out and submit a pull request! 😄

venu-kuruganti commented 5 years ago

However, beyond 'download pandoc and miketex', did you have any other difficulties or find yourself needing to jump through any other hoops? Did we insufficiently document the need to have those tools installed to enable the functionality? Did we fail to supply a list with prerequisites somewhere?

To answer your first question, no. No other hoops to jump through.

To answer your second question, I think a little more documentation might be helpful. Specifically a single whole page dedicated to how to install Pandoc and MikeTex (Or Mac and Linux equivalent) to get full PDF functionality as that is the major format these days. Including pictures and screenshots would be very helpful.

Third question, I can't find a webpage with a list of pre-requisites so I would have to say yes to this.

venu-kuruganti commented 5 years ago

But if you are passionate and really want to make builtin PDF support happen, feel free to work it out and submit a pull request! 😄

I wish I could! 😆 But I don't know Python. If the software was in .NET or C# though I could have!

gedakc commented 5 years ago

To answer your second question, I think a little more documentation might be helpful. Specifically a single whole page dedicated to how to install Pandoc and MikeTex (Or Mac and Linux equivalent) to get full PDF functionality as that is the major format these days. Including pictures and screenshots would be very helpful.

The Manuskript Wiki is available to collect information regarding manuskript installation, use, tips, etc. The entire project is a volunteer effort. You might consider adding the documentation you describe so that it is available to others.