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

Support EPUB generation #98

Closed
zoosky opened this issue Feb 14, 2017 · 13 comments
Closed

Support EPUB generation #98

zoosky opened this issue Feb 14, 2017 · 13 comments

Comments

@zoosky
Copy link

zoosky commented Feb 14, 2017

See http://pandoc.org/MANUAL.html
Why? Generate epub

@eed3si9n
Copy link
Contributor

eed3si9n commented Feb 14, 2017

Having Pandoc support would also allow PDF output a la Pamflet. #14

@andyczerwonka
Copy link

If someone doesn't grab this one sooner, I'll take a look at this one on or around July 1. https://twitter.com/andyczerwonka/status/874814697752494080

@andyczerwonka
Copy link

I would suggest that this story is not about supporting Pandoc, it's about generating both PDF and ePub for offline reading. Pandoc is an implementation detail - does anyone disagree? Is there some other reason for the Pandoc dependency?

@cleverdeveloper
Copy link

@andyczerwonka any updates?

@andyczerwonka
Copy link

@cleverdeveloper I pulled the repository a couple of days ago and started to look at the build process and where to inject the documentation steps. I should have more to share this weekend.

@andyczerwonka
Copy link

andyczerwonka commented Aug 7, 2017

Apologies to all, I won't have an update until I get back from vacation mid-August. :(

@andyczerwonka
Copy link

All, shall we close this issues? At the moment this issue is highly dependent on #81 given there is discussion that takes PDF into account.

@eed3si9n
Copy link
Contributor

All, shall we close this issues? At the moment this issue is highly dependent on #81 given there is discussion that takes PDF into account.

I don't see a reason to close this issue, just because there's a related discussion happening elsewhere. We can close it when Paradox is able to generate a Pandoc-compatible single markdown file. In my opinion, it's more of a matter of String concatenation rather than markdown parser implementation.

@andyczerwonka
Copy link

I think that's fair, but there is clearly a dependency. We may be able to solve the PDF generation depending on library that is chosen, which is really the ask. Pandoc is an implementation concern.

@eed3si9n
Copy link
Contributor

ok. I can rename this issue to support EPUB generation.

@eed3si9n eed3si9n changed the title Please support Pandoc Support EPUB generation Aug 13, 2017
@huntc
Copy link

huntc commented Jan 17, 2018

Just wondering if there's been any further thinking on an implementation approach to solve the use case of publishing paradox docs. I might attempt to solve this over the next couple of months for my own purposes.

@zoosky
Copy link
Author

zoosky commented May 5, 2018

@andyczerwonka IMHO PDF and EPUB are different use cases. For Flexmark Java support of EPUB, see vsch/flexmark-java#192

@NightMachinery
Copy link

Any updates on epub support?

@zoosky zoosky closed this as completed Oct 27, 2021
raboof pushed a commit to poWer4aiX/paradox that referenced this issue Apr 7, 2022
According to the [Java Language Specification](https://docs.oracle.com/javase/specs/jls/se8/html/index.html)
member of packages, e.g. subpackages are identifiers. Identifiers itself is

    ...an unlimited-length sequence of Java letters and Java digits, the first of which must be a Java letter.

As a `Java letter` includes more than what is expressed by the regex `\b[a-z][a-z0-9_]*)\.`, package names which include uppercase or non ASCII characters cannot be processed. I know that there are some _naming conventions_ flying around but something like `aBc.DE.fg` is still a valid package name in my opinion.

I have changed the regex in `packageDotsToSlash()` to `(\b\p{javaJavaIdentifierStart}\p{javaJavaIdentifierPart}*)\.`. Unfortunately this breaks with the changes applied for issue lightbend#397, lightbend#395, lightbend#98, lightbend#86 to handle inner classes. In order to support this notation, the regex can be relaxed to `(\b\p{javaLowerCase}\p{javaJavaIdentifierPart}*)\.`.

I have added the variable 'scaladoc.strictPackageIdent' (which defaults to `false`) by which you can switch between the two regexp. Once set to true, the package name can conform to an identifier now.
raboof pushed a commit to poWer4aiX/paradox that referenced this issue Apr 7, 2022
According to the [Java Language Specification](https://docs.oracle.com/javase/specs/jls/se8/html/index.html)
member of packages, e.g. subpackages are identifiers. Identifiers itself is

    ...an unlimited-length sequence of Java letters and Java digits, the first of which must be a Java letter.

As a `Java letter` includes more than what is expressed by the regex `\b[a-z][a-z0-9_]*)\.`, package names which include uppercase or non ASCII characters cannot be processed. I know that there are some _naming conventions_ flying around but something like `aBc.DE.fg` is still a valid package name in my opinion.

I have changed the regex in `packageDotsToSlash()` to `(\b\p{javaJavaIdentifierStart}\p{javaJavaIdentifierPart}*)\.`. Unfortunately this breaks with the changes applied for issue lightbend#397, lightbend#395, lightbend#98, lightbend#86 to handle inner classes. In order to support this notation, the regex can be relaxed to `(\b\p{javaLowerCase}\p{javaJavaIdentifierPart}*)\.`.

I have added the variable 'scaladoc.strictPackageIdent' (which defaults to `false`) by which you can switch between the two regexp. Once set to true, the package name can conform to an identifier now.
raboof pushed a commit that referenced this issue Apr 7, 2022
According to the [Java Language Specification](https://docs.oracle.com/javase/specs/jls/se8/html/index.html)
member of packages, e.g. subpackages are identifiers. Identifiers itself is

    ...an unlimited-length sequence of Java letters and Java digits, the first of which must be a Java letter.

As a `Java letter` includes more than what is expressed by the regex `\b[a-z][a-z0-9_]*)\.`, package names which include uppercase or non ASCII characters cannot be processed. I know that there are some _naming conventions_ flying around but something like `aBc.DE.fg` is still a valid package name in my opinion.

I have changed the regex in `packageDotsToSlash()` to `(\b\p{javaJavaIdentifierStart}\p{javaJavaIdentifierPart}*)\.`. Unfortunately this breaks with the changes applied for issue #397, #395, #98, #86 to handle inner classes. In order to support this notation, the regex can be relaxed to `(\b\p{javaLowerCase}\p{javaJavaIdentifierPart}*)\.`.

I have added the variable 'scaladoc.strictPackageIdent' (which defaults to `false`) by which you can switch between the two regexp. Once set to true, the package name can conform to an identifier now.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants