damianavila / RISE

RISE: "Live" Reveal.js Jupyter/IPython Slideshow Extension
Other
3.68k stars 416 forks source link

place code output left, right or at a given coordinate on a slide #108

Open torwag opened 9 years ago

torwag commented 9 years ago

It would be convenient to set the output location for the slides Maybe using magic commands %output_left %output_right %output_top %output_pos(x,y,dx,dy) The last one together with the hide source extension would allow us to arrange all kind of figures easily on a slide, e.g.. three graphs from three different (hidden) cells displayed in a row. That would allow us to have much more freedom to arrange slides as needed. At the moment afaik, its just a top down approach similar to the original notebook view (which serves well for the notebook, but is to much limiting for a slide-show).

damianavila commented 9 years ago

This is interesting... I am thinking on the "arrange" capabilities... I agree with you that right now is very limited to the linear top/bottom flow. But not sure about implement this as magic... I am thinking in some other stuff. Currently there is way to make all the elements "movable/droppable", I mean to give the user the possibility to move an order the elements in the slide as they wish. But the big problem is how to "persist" the changes for the next time. There are some possibilities involving the save of the positions of every element in some sort of data structure which could be saved, but the implementation is not trivial. With this king of thing in place, RISE would be a serious platform to create all kind of nice beautiful presentations, where you can move the objects as you wish and with al the power of the interactivity and "live" nature of the notebook. Still thinking how we can approach this in a simple an efficient way... In the meantime, something like an "output" per-cell config option could be a temporary solution, but you need to use the "magics" (I don't like to much) or use a cell-metadata approach with mod of the celltoolbar to support the new params (this is relevant to to hide cell per cell basis using cell metadata).

mcrovella commented 9 years ago

I want to support this general idea very strongly. I have used RISE to teach a class, ie, give an entire semester's worth of lectures during Spring 2015 here at Boston University. It worked very well. The capabilities are outstanding and others are now interested in doing the same thing here at BU. But the lack of an ability to arbitrarily arrange elements on the slide is the biggest barrier to using RISE for all presentations that I give.

Thanks for this terrific package. It's motivating me to improve my JS so I can contribute :)

damianavila commented 9 years ago

@mcrovella, nice to know you are already using it :wink: I think this the thing we are discussing here is a major challenge if we want to do it in the "right way", but if we can come up with something as I described above it would be amazing... I hope to I can start exploring some ideas soon (as time permits)... as usual, any kind of help is very welcome.

ratdon commented 8 years ago

@damianavila Sorry if this is the wrong place. But I couldn't find a proper place to ask. I was checking the discussion #3841 but couldn't find a way to do it. Is there any extension or a way to render the output of a code as separate fragment or slide?

damianavila commented 8 years ago

Is there any extension or a way to render the output of a code as separate fragment or slide?

As a separate fragment or slide, I don't know... there is some people out there with some workarounds to hide the input or output, but put the output in another fragment or slide is probably not trivial task and I did not see anyone trying it...

ratdon commented 8 years ago

@damianavila I am making a tutorial and wanted to hide the output in the slides (reveal.js) or show the input and output separately. Followed the discussion #3841. But still unable to do it. :'(