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 reveal.js backend #557

Closed
rdmueller opened this issue Jun 16, 2017 · 11 comments
Closed

support reveal.js backend #557

rdmueller opened this issue Jun 16, 2017 · 11 comments

Comments

@rdmueller
Copy link
Member

As I can see from asciidoctor-diagram, it seems trivial to create the *j wrapper for those ruby gems.

If I would create the build for reveal.js and create a pull request - would this be ok and someone else would take care of the release?

@robertpanzer
Copy link
Member

Sure, from my side this would be highly appreciated!
In my opinion, as we're currently in the stage of splitting the multiple modules into separate projects it would make most sense to have an own project that lives next to asciidoctorj.

@mojavelinux
Copy link
Member

I agree that this needs to be its own project if we move forward. The easiest way to think of it is that components that are versioned together go together (otherwise, they need to be separate). We've learned that hard lesson.

I'll mention that I still think it's completely absurd that we have to repackage gems to reuse them in JRuby. I really wish JRuby could just load a gem file directly.

Part of me thinks that when we're not adding any additional APIs, we should have some sort of generic repackager that just takes a gem and makes it a jar. That way, we have less code to maintain.

@rdmueller
Copy link
Member Author

I really wish JRuby could just load a gem file directly.

as far as I know this works - at least, you can specify Gems to use from within the gradle build.

I used this mechanism for a long time but then switched all my dependencies to the asciidoctorj wrappers.
There are environments where you have access to maven repositories but not to the ruby gem repository. That's why I need those wrappers...

@rdmueller
Copy link
Member Author

btw: as I now understand, the deckjs backend only consists of haml templates and no ruby code...
So it was a wrong understanding by me that I need a wrapper to use it...
I'll give it a try without a wrapper and see what I get...

@rdmueller
Copy link
Member Author

so, it seems that deck.js works with the gradle plugin without any further ruby or jRuby library...
now I will try reveal.js...

@rdmueller
Copy link
Member Author

reveal js also seems to work without additional ruby gems:

  • just specify the right templates
  • make sure that reveal.js folder is copied to the build folder

the gradle example basically explains it: https://github.com/asciidoctor/asciidoctor-gradle-examples/blob/master/asciidoc-to-revealjs-example/build.gradle

so, I will close this issue now. Thanx for helping my thoughts focus...

@mojavelinux
Copy link
Member

mojavelinux commented Jun 19, 2017

First, I'm glad to hear you got it working.

I strongly recommend against using deck.js. It's really terrible and I stand by that position. I prefer Bespoke, but I recognize that reveal.js is quite sound as well (in its own way).

While using the templates directly is workable, it's going to work better in the long run to use it like a regular converter. It also gives us the ability to change how it's implemented without breaking applications using it.

Here's what I think we should do for these types of gems. If the jar package doesn't introduce any additional APIs, we should create and use a generic repackager project to convert the gem to a jar and publish it. That should cut down on the number of repositories we need to maintain. I propose we do that even for Asciidoctor PDF and EPUB3. Something asciidoctorj-repack or something. wdyt @robertpanzer?

@mojavelinux
Copy link
Member

asciidoctor-repack will also allow us to make gems available to the AsciidoctorJ ecosystem earlier and with a lot less effort. It just takes a bit of time to get it setup. But then we'll be cooking.

@robertpanzer
Copy link
Member

This would be indeed very nice.
I am just not so sure though about one generic project for asciidoctorj-pdf.
We sometimes nailed versions down explicitly, partly also to versions deviating from those defined in the gem.
And we have a test suite that I would still like to have.

@mojavelinux
Copy link
Member

I am just not so sure though about one generic project for asciidoctorj-pdf.

That's perfectly okay. If you can think of at least one reason to keep a gem as a separate project, then let's do it. This is more about if you can't think of any reason, then let's use the generic releaser.

@johnjelinek
Copy link

johnjelinek commented Aug 27, 2019

@robertpanzer: can we re-open this issue or should this move forward with asciidoctor/asciidoctor-reveal.js#271?

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

4 participants