[WIP] Metaui slideshow #2687

Merged
merged 4 commits into from Jan 15, 2013

Conversation

Projects
None yet
4 participants
@Carreau
Member

Carreau commented Dec 15, 2012

Pr to discuss specific implementation for the slideshow mode

This is the same as PR #2333 plus specific stuff.

pinging
@damianavila and @ellisonbg

@damianavila

This comment has been minimized.

Show comment Hide comment
@damianavila

damianavila Dec 16, 2012

Contributor

El 15/12/12 18:51, Bussonnier Matthias escribió:

Pr to discuss specific implementation for the slideshow mode

This is the same as PR #2333
#2333 plus specific stuff.

pinging
@damianavila https://github.com/damianavila and @ellisonbg
https://github.com/ellisonbg

OK, I will look into this...
And, I will cite this PR in the IPEP 9
Thanks Matthias.

Contributor

damianavila commented Dec 16, 2012

El 15/12/12 18:51, Bussonnier Matthias escribió:

Pr to discuss specific implementation for the slideshow mode

This is the same as PR #2333
#2333 plus specific stuff.

pinging
@damianavila https://github.com/damianavila and @ellisonbg
https://github.com/ellisonbg

OK, I will look into this...
And, I will cite this PR in the IPEP 9
Thanks Matthias.

@damianavila

View changes

IPython/frontend/html/notebook/static/js/examples/metaui.slideshow.js
+ ["Slide" ,"slide" ],
+ ["Fragment" ,"fragment" ],
+ ["Skip" ,"skip" ],
+ ],

This comment has been minimized.

Show comment Hide comment
@damianavila

damianavila Dec 17, 2012

Contributor

It will be great if "-" return "-" or "none" or some other string... because undefined give me problems with reveal.js
Can you do this modification? Thanks

@damianavila

damianavila Dec 17, 2012

Contributor

It will be great if "-" return "-" or "none" or some other string... because undefined give me problems with reveal.js
Can you do this modification? Thanks

This comment has been minimized.

Show comment Hide comment
@Carreau

Carreau Dec 18, 2012

Member

The problem is when metadata does not exist, javascript return a undefined, so even if I map nothing to undefined you will still get some (and the ui will be inconsistent) if user have never touched the cell.
So I preferred to explicitly map it to undefined.

@Carreau

Carreau Dec 18, 2012

Member

The problem is when metadata does not exist, javascript return a undefined, so even if I map nothing to undefined you will still get some (and the ui will be inconsistent) if user have never touched the cell.
So I preferred to explicitly map it to undefined.

This comment has been minimized.

Show comment Hide comment
@damianavila

damianavila Dec 18, 2012

Contributor

El 18/12/12 04:22, Bussonnier Matthias escribió:

In IPython/frontend/html/notebook/static/js/examples/metaui.slideshow.js:

  • MetaUI.register_callback('slideshow.hslide',hslide);
  • MetaUI.register_callback('slideshow.vslide',vslide);
  • MetaUI.register_callback('slideshow.fragment',fragment);
  • //slideshow_preset.push('slideshow.fragment');
  • //slideshow_preset.push('slideshow.vslide');
  • //slideshow_preset.push('slideshow.hslide');
  • var select_type = MetaUI.utils.select_ui_generator([
  •        ["-"            ,undefined      ],
    
  •        ["Header Slide" ,"header_slide" ],
    
  •        ["Slide"        ,"slide"        ],
    
  •        ["Fragment"     ,"fragment"     ],
    
  •        ["Skip"         ,"skip"         ],
    
  •        ],
    

The problem is when metadata does not exist, javascript return a
|undefined|, so even if I map nothing to undefined you will still get
some (and the ui will be inconsistent) if user have never touched the
cell.
So I preferred to explicitly map it to undefined.


Reply to this email directly or view it on GitHub
https://github.com/ipython/ipython/pull/2687/files#r2445477.

OK, Mathias... I read the code after send it this request... I
understand... I have found a solution, thanks again...

@damianavila

damianavila Dec 18, 2012

Contributor

El 18/12/12 04:22, Bussonnier Matthias escribió:

In IPython/frontend/html/notebook/static/js/examples/metaui.slideshow.js:

  • MetaUI.register_callback('slideshow.hslide',hslide);
  • MetaUI.register_callback('slideshow.vslide',vslide);
  • MetaUI.register_callback('slideshow.fragment',fragment);
  • //slideshow_preset.push('slideshow.fragment');
  • //slideshow_preset.push('slideshow.vslide');
  • //slideshow_preset.push('slideshow.hslide');
  • var select_type = MetaUI.utils.select_ui_generator([
  •        ["-"            ,undefined      ],
    
  •        ["Header Slide" ,"header_slide" ],
    
  •        ["Slide"        ,"slide"        ],
    
  •        ["Fragment"     ,"fragment"     ],
    
  •        ["Skip"         ,"skip"         ],
    
  •        ],
    

The problem is when metadata does not exist, javascript return a
|undefined|, so even if I map nothing to undefined you will still get
some (and the ui will be inconsistent) if user have never touched the
cell.
So I preferred to explicitly map it to undefined.


Reply to this email directly or view it on GitHub
https://github.com/ipython/ipython/pull/2687/files#r2445477.

OK, Mathias... I read the code after send it this request... I
understand... I have found a solution, thanks again...

@damianavila

This comment has been minimized.

Show comment Hide comment
@damianavila

damianavila Dec 21, 2012

Contributor

@Carreau I need to add another cell type:
Something like,

+["Notes"     ,    "notes" ]

Obviously, to provide speaker notes... the library gives us this support so I want to add it because it is a very useful resource... and I need this another cell type to implement it. With this enhancement, we will support all the main capabilities that reveal provide us.

Thanks, and sorry to bother you all these last days ;-) !

More info about Speaker Notes:

Speaker Notes
reveal.js comes with a speaker notes plugin which can be used to present per-slide notes in a separate browser window. The notes window also gives you a preview of the next upcoming slide so it may be helpful even if you haven't written any notes. Append ?notes to presentation URL or press the 's' key on your keyboard to open the notes window.

By default notes are written using standard HTML, see below, but you can add a data-markdown attribute to the

to write them using Markdown.

<section>
    <h2>Some Slide</h2>

    <aside class="notes">
        Oh hey, these are some notes. They'll be hidden in your presentation, but you can see them if you open the speaker notes window (hit 's' on your keyboard).
    </aside>
</section>

Server Side Speaker Nodes
In some cases it can be desirable to run notes on a separate device from the one you're presenting on. The Node.js-based notes plugin lets you do this using the same note definitions as its client side counterpart. Include the requried scripts by adding the following dependencies:

{ src: '/socket.io/socket.io.js', async: true },
{ src: 'plugin/notes-server/client.js', async: true }
Then:

Install Node.js
Run npm install
Run node plugin/notes-server

Contributor

damianavila commented Dec 21, 2012

@Carreau I need to add another cell type:
Something like,

+["Notes"     ,    "notes" ]

Obviously, to provide speaker notes... the library gives us this support so I want to add it because it is a very useful resource... and I need this another cell type to implement it. With this enhancement, we will support all the main capabilities that reveal provide us.

Thanks, and sorry to bother you all these last days ;-) !

More info about Speaker Notes:

Speaker Notes
reveal.js comes with a speaker notes plugin which can be used to present per-slide notes in a separate browser window. The notes window also gives you a preview of the next upcoming slide so it may be helpful even if you haven't written any notes. Append ?notes to presentation URL or press the 's' key on your keyboard to open the notes window.

By default notes are written using standard HTML, see below, but you can add a data-markdown attribute to the

to write them using Markdown.

<section>
    <h2>Some Slide</h2>

    <aside class="notes">
        Oh hey, these are some notes. They'll be hidden in your presentation, but you can see them if you open the speaker notes window (hit 's' on your keyboard).
    </aside>
</section>

Server Side Speaker Nodes
In some cases it can be desirable to run notes on a separate device from the one you're presenting on. The Node.js-based notes plugin lets you do this using the same note definitions as its client side counterpart. Include the requried scripts by adding the following dependencies:

{ src: '/socket.io/socket.io.js', async: true },
{ src: 'plugin/notes-server/client.js', async: true }
Then:

Install Node.js
Run npm install
Run node plugin/notes-server

@Carreau

This comment has been minimized.

Show comment Hide comment
@Carreau

Carreau Dec 21, 2012

Member

I don't know wether it is better to add speaker notes to a slide metadata or slide.

You could open a codemirror on a click on some metaUI element.

Still I pushed what you asked for, I will be less availlable for the next 2 weeks, even not availlable at all sometime and without my computer.

Member

Carreau commented Dec 21, 2012

I don't know wether it is better to add speaker notes to a slide metadata or slide.

You could open a codemirror on a click on some metaUI element.

Still I pushed what you asked for, I will be less availlable for the next 2 weeks, even not availlable at all sometime and without my computer.

@damianavila

This comment has been minimized.

Show comment Hide comment
@damianavila

damianavila Dec 21, 2012

Contributor

El 21/12/12 05:53, Bussonnier Matthias escribió:

I don't know wether it is better to add speaker notes to a slide
metadata or slide.

You could open a codemirror on a click on some metaUI element.

I might be a possibility...

Still I pushed what you asked for, I will be less availlable for the
next 2 weeks, even not availlable at all sometime and without my computer.

Thanks, I think that the option I asked for is clean and simple, and fit
with the structure we build, so let me try this and see how develop...
I am testing another improvements, so maybe when you come back, there
will be new and nice enhancements (if I get some time to develop them,
hehe).

If I do not see again, very nice Christmas and a happy new year for you
and your family!

Damián.

Contributor

damianavila commented Dec 21, 2012

El 21/12/12 05:53, Bussonnier Matthias escribió:

I don't know wether it is better to add speaker notes to a slide
metadata or slide.

You could open a codemirror on a click on some metaUI element.

I might be a possibility...

Still I pushed what you asked for, I will be less availlable for the
next 2 weeks, even not availlable at all sometime and without my computer.

Thanks, I think that the option I asked for is clean and simple, and fit
with the structure we build, so let me try this and see how develop...
I am testing another improvements, so maybe when you come back, there
will be new and nice enhancements (if I get some time to develop them,
hehe).

If I do not see again, very nice Christmas and a happy new year for you
and your family!

Damián.

@ellisonbg

This comment has been minimized.

Show comment Hide comment
@ellisonbg

ellisonbg Dec 21, 2012

Member

If we do notes they should just be a markdown cell with a notes metadata attribute

Sent from my iPhone

On Dec 20, 2012, at 10:10 PM, Damián Avila notifications@github.com wrote:

@Carreau I need to add another cell type:
Something like,

+["Notes" , "notes" ]
Obviously, to provide speaker notes... the library gives us this support so I want to add it because it is a very useful resource... and I need this another cell type to implement it. With this enhancement, we will support all the main capabilities that reveal provide us.

Thanks, and sorry to bother you all these last days ;-) !

More info about Speaker Notes:

Speaker Notes
reveal.js comes with a speaker notes plugin which can be used to present per-slide notes in a separate browser window. The notes window also gives you a preview of the next upcoming slide so it may be helpful even if you haven't written any notes. Append ?notes to presentation URL or press the 's' key on your keyboard to open the notes window.

By default notes are written using standard HTML, see below, but you can add a data-markdown attribute to the to write them using Markdown.

Some Slide

<aside class="notes">
    Oh hey, these are some notes. They'll be hidden in your presentation, but you can see them if you open the speaker notes window (hit 's' on your keyboard).
</aside>
Server Side Speaker Nodes In some cases it can be desirable to run notes on a separate device from the one you're presenting on. The Node.js-based notes plugin lets you do this using the same note definitions as its client side counterpart. Include the requried scripts by adding the following dependencies:

{ src: '/socket.io/socket.io.js', async: true },
{ src: 'plugin/notes-server/client.js', async: true }
Then:

Install Node.js
Run npm install
Run node plugin/notes-server


Reply to this email directly or view it on GitHub.

Member

ellisonbg commented Dec 21, 2012

If we do notes they should just be a markdown cell with a notes metadata attribute

Sent from my iPhone

On Dec 20, 2012, at 10:10 PM, Damián Avila notifications@github.com wrote:

@Carreau I need to add another cell type:
Something like,

+["Notes" , "notes" ]
Obviously, to provide speaker notes... the library gives us this support so I want to add it because it is a very useful resource... and I need this another cell type to implement it. With this enhancement, we will support all the main capabilities that reveal provide us.

Thanks, and sorry to bother you all these last days ;-) !

More info about Speaker Notes:

Speaker Notes
reveal.js comes with a speaker notes plugin which can be used to present per-slide notes in a separate browser window. The notes window also gives you a preview of the next upcoming slide so it may be helpful even if you haven't written any notes. Append ?notes to presentation URL or press the 's' key on your keyboard to open the notes window.

By default notes are written using standard HTML, see below, but you can add a data-markdown attribute to the to write them using Markdown.

Some Slide

<aside class="notes">
    Oh hey, these are some notes. They'll be hidden in your presentation, but you can see them if you open the speaker notes window (hit 's' on your keyboard).
</aside>
Server Side Speaker Nodes In some cases it can be desirable to run notes on a separate device from the one you're presenting on. The Node.js-based notes plugin lets you do this using the same note definitions as its client side counterpart. Include the requried scripts by adding the following dependencies:

{ src: '/socket.io/socket.io.js', async: true },
{ src: 'plugin/notes-server/client.js', async: true }
Then:

Install Node.js
Run npm install
Run node plugin/notes-server


Reply to this email directly or view it on GitHub.

@Carreau

This comment has been minimized.

Show comment Hide comment
@Carreau

Carreau Dec 21, 2012

Member

Note to myself, prevent 'notes' to be assigned to non-md cell.
Le 21 déc. 2012 18:03, "Brian E. Granger" notifications@github.com a
écrit :

If we do notes they should just be a markdown cell with a notes metadata
attribute

Sent from my iPhone

On Dec 20, 2012, at 10:10 PM, Damián Avila notifications@github.com
wrote:

@Carreau I need to add another cell type:
Something like,

+["Notes" , "notes" ]
Obviously, to provide speaker notes... the library gives us this support
so I want to add it because it is a very useful resource... and I need this
another cell type to implement it. With this enhancement, we will support
all the main capabilities that reveal provide us.

Thanks, and sorry to bother you all these last days ;-) !

More info about Speaker Notes:

Speaker Notes
reveal.js comes with a speaker notes plugin which can be used to present
per-slide notes in a separate browser window. The notes window also gives
you a preview of the next upcoming slide so it may be helpful even if you
haven't written any notes. Append ?notes to presentation URL or press the
's' key on your keyboard to open the notes window.

By default notes are written using standard HTML, see below, but you can
add a data-markdown attribute to the to write them using Markdown.

Some Slide

Oh hey, these are some notes. They'll be hidden in your presentation, but you can see them if you open the speaker notes window (hit 's' on your keyboard). Server Side Speaker Nodes In some cases it can be desirable to run notes on a separate device from the one you're presenting on. The Node.js-based notes plugin lets you do this using the same note definitions as its client side counterpart. Include the requried scripts by adding the following dependencies:

{ src: '/socket.io/socket.io.js', async: true },
{ src: 'plugin/notes-server/client.js', async: true }
Then:

Install Node.js
Run npm install
Run node plugin/notes-server


Reply to this email directly or view it on GitHub.


Reply to this email directly or view it on GitHubhttps://github.com/ipython/ipython/pull/2687#issuecomment-11619976.

Member

Carreau commented Dec 21, 2012

Note to myself, prevent 'notes' to be assigned to non-md cell.
Le 21 déc. 2012 18:03, "Brian E. Granger" notifications@github.com a
écrit :

If we do notes they should just be a markdown cell with a notes metadata
attribute

Sent from my iPhone

On Dec 20, 2012, at 10:10 PM, Damián Avila notifications@github.com
wrote:

@Carreau I need to add another cell type:
Something like,

+["Notes" , "notes" ]
Obviously, to provide speaker notes... the library gives us this support
so I want to add it because it is a very useful resource... and I need this
another cell type to implement it. With this enhancement, we will support
all the main capabilities that reveal provide us.

Thanks, and sorry to bother you all these last days ;-) !

More info about Speaker Notes:

Speaker Notes
reveal.js comes with a speaker notes plugin which can be used to present
per-slide notes in a separate browser window. The notes window also gives
you a preview of the next upcoming slide so it may be helpful even if you
haven't written any notes. Append ?notes to presentation URL or press the
's' key on your keyboard to open the notes window.

By default notes are written using standard HTML, see below, but you can
add a data-markdown attribute to the to write them using Markdown.

Some Slide

Oh hey, these are some notes. They'll be hidden in your presentation, but you can see them if you open the speaker notes window (hit 's' on your keyboard). Server Side Speaker Nodes In some cases it can be desirable to run notes on a separate device from the one you're presenting on. The Node.js-based notes plugin lets you do this using the same note definitions as its client side counterpart. Include the requried scripts by adding the following dependencies:

{ src: '/socket.io/socket.io.js', async: true },
{ src: 'plugin/notes-server/client.js', async: true }
Then:

Install Node.js
Run npm install
Run node plugin/notes-server


Reply to this email directly or view it on GitHub.


Reply to this email directly or view it on GitHubhttps://github.com/ipython/ipython/pull/2687#issuecomment-11619976.

@damianavila

This comment has been minimized.

Show comment Hide comment
@damianavila

damianavila Dec 21, 2012

Contributor

El 21/12/12 14:34, Bussonnier Matthias escribió:

Note to myself, prevent 'notes' to be assigned to non-md cell.
Le 21 déc. 2012 18:03, "Brian E. Granger" notifications@github.com a
écrit :

If we do notes they should just be a markdown cell with a notes
metadata
attribute

Sent from my iPhone

Great!
Also, I have though about that, I will use a data markdown atributte
supported by reveal, so the notes written in markdown will be rendered
to markdown properly by reveal ;-)

Contributor

damianavila commented Dec 21, 2012

El 21/12/12 14:34, Bussonnier Matthias escribió:

Note to myself, prevent 'notes' to be assigned to non-md cell.
Le 21 déc. 2012 18:03, "Brian E. Granger" notifications@github.com a
écrit :

If we do notes they should just be a markdown cell with a notes
metadata
attribute

Sent from my iPhone

Great!
Also, I have though about that, I will use a data markdown atributte
supported by reveal, so the notes written in markdown will be rendered
to markdown properly by reveal ;-)

@damianavila

This comment has been minimized.

Show comment Hide comment
@damianavila

damianavila Dec 21, 2012

Contributor

I though loud again, I do not need to use data-markdown attribute supported by reveal because I have markdown called by the class to render the markdown notes...
Sorry for the noise...

Contributor

damianavila commented Dec 21, 2012

I though loud again, I do not need to use data-markdown attribute supported by reveal because I have markdown called by the class to render the markdown notes...
Sorry for the noise...

@albop

This comment has been minimized.

Show comment Hide comment
@albop

albop Jan 4, 2013

Contributor

I tested this PR and I saw a new button to activate metadata editiing but its only visible effect was a very small line showing on the upper left of each cell. I had the same result when using the javascript activation code from the older pull request. Did I miss something ?

Contributor

albop commented Jan 4, 2013

I tested this PR and I saw a new button to activate metadata editiing but its only visible effect was a very small line showing on the upper left of each cell. I had the same result when using the javascript activation code from the older pull request. Did I miss something ?

@Carreau

This comment has been minimized.

Show comment Hide comment
@Carreau

Carreau Jan 4, 2013

Member

@albop , You didn't miss anything obvious.
You have to add stuff in your .profile_xxx/static/js/custom.js

$.getScript('/static/js/examples/metaui.slideshow.js');
or
$.getScript('/static/js/examples/metaui.example.js');

cf thread in previous PR

Those enable different content in the "very small line" that becomes a toolbar.

Member

Carreau commented Jan 4, 2013

@albop , You didn't miss anything obvious.
You have to add stuff in your .profile_xxx/static/js/custom.js

$.getScript('/static/js/examples/metaui.slideshow.js');
or
$.getScript('/static/js/examples/metaui.example.js');

cf thread in previous PR

Those enable different content in the "very small line" that becomes a toolbar.

@albop

This comment has been minimized.

Show comment Hide comment
@albop

albop Jan 4, 2013

Contributor

Tanks it works. The system looks extremely flexible, it's impressive !

Contributor

albop commented Jan 4, 2013

Tanks it works. The system looks extremely flexible, it's impressive !

@ellisonbg

This comment has been minimized.

Show comment Hide comment
@ellisonbg

ellisonbg Jan 11, 2013

Member

Is this based on the metadata UI pull request. I ran this code, but didn't see the slideshow UI appear. Hmm...

Member

ellisonbg commented Jan 11, 2013

Is this based on the metadata UI pull request. I ran this code, but didn't see the slideshow UI appear. Hmm...

@ellisonbg

This comment has been minimized.

Show comment Hide comment
@ellisonbg

ellisonbg Jan 11, 2013

Member

As far as the visible names of the different cell modes I would use:

  • Slide
  • Sub-Slide
  • Fragment
  • Skip
  • Notes (or possibly Speaker Notes, but that is long)

This way, the top-level one (Slide) will be the one that people use most, which is appropriate given that it is at the highest level in the select box and the slideshow hierarchy. The metadata names follow pretty naturally from this.

Member

ellisonbg commented Jan 11, 2013

As far as the visible names of the different cell modes I would use:

  • Slide
  • Sub-Slide
  • Fragment
  • Skip
  • Notes (or possibly Speaker Notes, but that is long)

This way, the top-level one (Slide) will be the one that people use most, which is appropriate given that it is at the highest level in the select box and the slideshow hierarchy. The metadata names follow pretty naturally from this.

@Carreau

This comment has been minimized.

Show comment Hide comment
@Carreau

Carreau Jan 11, 2013

Member

Is this based on the metadata UI pull request. I ran this code, but didn't see the slideshow UI appear. Hmm...

You might have been tired :
2 comment above:

I tested this PR and I saw a new button to activate metadata editiing but its only visible effect was a very small line showing on the upper left of each cell. I had the same result when using the javascript activation code from the older pull request. Did I miss something ?

Response

@albop , You didn't miss anything obvious.
You have to add stuff in your .profile_xxx/static/js/custom.js

$.getScript('/static/js/examples/metaui.slideshow.js');
or
$.getScript('/static/js/examples/metaui.example.js');

cf thread in previous PR

Those enable different content in the "very small line" that becomes a toolbar.

Member

Carreau commented Jan 11, 2013

Is this based on the metadata UI pull request. I ran this code, but didn't see the slideshow UI appear. Hmm...

You might have been tired :
2 comment above:

I tested this PR and I saw a new button to activate metadata editiing but its only visible effect was a very small line showing on the upper left of each cell. I had the same result when using the javascript activation code from the older pull request. Did I miss something ?

Response

@albop , You didn't miss anything obvious.
You have to add stuff in your .profile_xxx/static/js/custom.js

$.getScript('/static/js/examples/metaui.slideshow.js');
or
$.getScript('/static/js/examples/metaui.example.js');

cf thread in previous PR

Those enable different content in the "very small line" that becomes a toolbar.

@damianavila

This comment has been minimized.

Show comment Hide comment
@damianavila

damianavila Jan 11, 2013

Contributor

El 11/01/13 00:25, Brian E. Granger escribió:

As far as the visible names of the different cell modes I would use:

  • Slide
  • Sub-Slide
  • Fragment
  • Skip
  • Notes (or possibly Speaker Notes, but that is long)

This way, the top-level one (Slide) will be the one that people use
most, which is appropriate given that it is at the highest level in
the select box and the slideshow hierarchy. The metadata names follow
pretty naturally from this.


Reply to this email directly or view it on GitHub
#2687 (comment).

I like the idea of short names, so for me... Notes is OK.
The other possibilities (Header slide and Standard slide) include
compose names with two words, that maybe is long for the UI... so I am
+1 to one word names...
Finally, it is just a matter of impose our nomenclature (although if the
names are natural there is no need to impose it, he...).

Contributor

damianavila commented Jan 11, 2013

El 11/01/13 00:25, Brian E. Granger escribió:

As far as the visible names of the different cell modes I would use:

  • Slide
  • Sub-Slide
  • Fragment
  • Skip
  • Notes (or possibly Speaker Notes, but that is long)

This way, the top-level one (Slide) will be the one that people use
most, which is appropriate given that it is at the highest level in
the select box and the slideshow hierarchy. The metadata names follow
pretty naturally from this.


Reply to this email directly or view it on GitHub
#2687 (comment).

I like the idea of short names, so for me... Notes is OK.
The other possibilities (Header slide and Standard slide) include
compose names with two words, that maybe is long for the UI... so I am
+1 to one word names...
Finally, it is just a matter of impose our nomenclature (although if the
names are natural there is no need to impose it, he...).

@Carreau

This comment has been minimized.

Show comment Hide comment
@Carreau

Carreau Jan 12, 2013

Member

Hum, big update on other PR.
now, use the other PR and add that to your custom.js

$.getScript('https://raw.github.com/Carreau/ipython/metaui-slideshow/IPython/frontend/html/notebook/static/js/examples/metaui.slideshow.js');

should be enough.

Member

Carreau commented Jan 12, 2013

Hum, big update on other PR.
now, use the other PR and add that to your custom.js

$.getScript('https://raw.github.com/Carreau/ipython/metaui-slideshow/IPython/frontend/html/notebook/static/js/examples/metaui.slideshow.js');

should be enough.

@damianavila

This comment has been minimized.

Show comment Hide comment
@damianavila

damianavila Jan 12, 2013

Contributor

El 12/01/13 10:20, Bussonnier Matthias escribió:

Hum, big update on other PR.
now, use the other PR and add that to your custom.js

|$.getScript('https://raw.github.com/Carreau/ipython/metaui-slideshow/IPython/frontend/html/notebook/static/js/examples/metaui.slideshow.js');
|

should be enough.


Reply to this email directly or view it on GitHub
#2687 (comment).

Got it! Thanks.

Contributor

damianavila commented Jan 12, 2013

El 12/01/13 10:20, Bussonnier Matthias escribió:

Hum, big update on other PR.
now, use the other PR and add that to your custom.js

|$.getScript('https://raw.github.com/Carreau/ipython/metaui-slideshow/IPython/frontend/html/notebook/static/js/examples/metaui.slideshow.js');
|

should be enough.


Reply to this email directly or view it on GitHub
#2687 (comment).

Got it! Thanks.

@Carreau

This comment has been minimized.

Show comment Hide comment
@Carreau

Carreau Jan 12, 2013

Member

What about not merging this in and serving directly for slides.nbviewer.org, or from somewhere else ?

Member

Carreau commented Jan 12, 2013

What about not merging this in and serving directly for slides.nbviewer.org, or from somewhere else ?

@damianavila

This comment has been minimized.

Show comment Hide comment
@damianavila

damianavila Jan 12, 2013

Contributor

El 12/01/13 10:31, Bussonnier Matthias escribió:

What about not merging this in and serving directly for
slides.nbviewer.org, or from somewhere else ?


Reply to this email directly or view it on GitHub
#2687 (comment).

I was thinking about that... what do you propose? We can serve the
slideshow from slides.nbviewer.org, or from somewhere else but we need
to provide a UI to build the slides... Are you thinking in a notebook in
the cloud specialize to build the slides?

Contributor

damianavila commented Jan 12, 2013

El 12/01/13 10:31, Bussonnier Matthias escribió:

What about not merging this in and serving directly for
slides.nbviewer.org, or from somewhere else ?


Reply to this email directly or view it on GitHub
#2687 (comment).

I was thinking about that... what do you propose? We can serve the
slideshow from slides.nbviewer.org, or from somewhere else but we need
to provide a UI to build the slides... Are you thinking in a notebook in
the cloud specialize to build the slides?

@Carreau

This comment has been minimized.

Show comment Hide comment
@Carreau

Carreau Jan 12, 2013

Member

no just serving
IPython/frontend/html/notebook/static/js/examples/metaui.slideshow.js

From the cloud. It allows automatic updates.

Member

Carreau commented Jan 12, 2013

no just serving
IPython/frontend/html/notebook/static/js/examples/metaui.slideshow.js

From the cloud. It allows automatic updates.

@damianavila

This comment has been minimized.

Show comment Hide comment
@damianavila

damianavila Jan 12, 2013

Contributor

El 12/01/13 11:51, Bussonnier Matthias escribió:

no just serving
IPython/frontend/html/notebook/static/js/examples/metaui.slideshow.js

From the cloud. It allows automatic updates.


Reply to this email directly or view it on GitHub
#2687 (comment).

Ah... automatic updates are great, but what happens if a user can not
have connectivity (when you are traveling, in some places is difficult
to have internet connection). We can have it in in the cloud, but maybe
we have to provide a way to install it locally, as mathjax... (btw, you
remind me that reveal converter is using mathjax trough cdn... so it
will fail to render equation if there is no connectivity). What do you
think? Maybe, I am pondering the connectivity to much, but in some
places this can be an important issue.

Contributor

damianavila commented Jan 12, 2013

El 12/01/13 11:51, Bussonnier Matthias escribió:

no just serving
IPython/frontend/html/notebook/static/js/examples/metaui.slideshow.js

From the cloud. It allows automatic updates.


Reply to this email directly or view it on GitHub
#2687 (comment).

Ah... automatic updates are great, but what happens if a user can not
have connectivity (when you are traveling, in some places is difficult
to have internet connection). We can have it in in the cloud, but maybe
we have to provide a way to install it locally, as mathjax... (btw, you
remind me that reveal converter is using mathjax trough cdn... so it
will fail to render equation if there is no connectivity). What do you
think? Maybe, I am pondering the connectivity to much, but in some
places this can be an important issue.

@Carreau

This comment has been minimized.

Show comment Hide comment
@Carreau

Carreau Jan 12, 2013

Member

Possibility to local install make sens. Like Mathjax.
Anyway if it's single script we really don't need to worry about that yet.

Member

Carreau commented Jan 12, 2013

Possibility to local install make sens. Like Mathjax.
Anyway if it's single script we really don't need to worry about that yet.

@damianavila

This comment has been minimized.

Show comment Hide comment
@damianavila

damianavila Jan 12, 2013

Contributor

El 12/01/13 13:42, Bussonnier Matthias escribió:

Possibility to local install make sens. Like Mathjax.
Anyway if it's single script we really don't need to worry about that
yet.


Reply to this email directly or view it on GitHub
#2687 (comment).

Great.... btw... I like the CellToolBar with the drowdown menu...
working with metaui.slideshow.js without problems.

Contributor

damianavila commented Jan 12, 2013

El 12/01/13 13:42, Bussonnier Matthias escribió:

Possibility to local install make sens. Like Mathjax.
Anyway if it's single script we really don't need to worry about that
yet.


Reply to this email directly or view it on GitHub
#2687 (comment).

Great.... btw... I like the CellToolBar with the drowdown menu...
working with metaui.slideshow.js without problems.

@Carreau

This comment has been minimized.

Show comment Hide comment
@Carreau

Carreau Jan 12, 2013

Member

We had a long discusion with Brian on that :

  • Me: "And you can have preset on the main toolbar"
  • Brian: "Let's keep it simple for now"
  • Me : "ok, so let's do like that"
  • Him :"hum but then you can do like this"
    -... etc
  • Me : "And then you have preset on the main toolbar"

and of course it works with metaui.slideshow.js it is made for that :-)

Member

Carreau commented Jan 12, 2013

We had a long discusion with Brian on that :

  • Me: "And you can have preset on the main toolbar"
  • Brian: "Let's keep it simple for now"
  • Me : "ok, so let's do like that"
  • Him :"hum but then you can do like this"
    -... etc
  • Me : "And then you have preset on the main toolbar"

and of course it works with metaui.slideshow.js it is made for that :-)

@Carreau

This comment has been minimized.

Show comment Hide comment
@Carreau

Carreau Jan 14, 2013

Member

Rebase on master and go for

  • Slide
  • Sub-Slide
  • Fragment
  • Skip
  • Notes

Brian is the more native English Speaker so I'll trust him.

Member

Carreau commented Jan 14, 2013

Rebase on master and go for

  • Slide
  • Sub-Slide
  • Fragment
  • Skip
  • Notes

Brian is the more native English Speaker so I'll trust him.

@ellisonbg

This comment has been minimized.

Show comment Hide comment
@ellisonbg

ellisonbg Jan 14, 2013

Member

I will test now, but the code for this makes me smile now :-)

Member

ellisonbg commented Jan 14, 2013

I will test now, but the code for this makes me smile now :-)

+
+ slideshow_preset.push('slideshow.select');
+
+ CellToolbar.register_preset('slideshow',slideshow_preset);

This comment has been minimized.

Show comment Hide comment
@ellisonbg

ellisonbg Jan 14, 2013

Member

Let's capitalize slideshow here for the menu.

@ellisonbg

ellisonbg Jan 14, 2013

Member

Let's capitalize slideshow here for the menu.

+ * metadata UI for slideshow
+ *
+ * ```
+ * $.getScript('/static/js/examples/metaui.slideshow.js');

This comment has been minimized.

Show comment Hide comment
@ellisonbg

ellisonbg Jan 14, 2013

Member

This preset should always be loaded by default. All notebook users are going to use this much of the time. Let's put it after the "Default" one.

@ellisonbg

ellisonbg Jan 14, 2013

Member

This preset should always be loaded by default. All notebook users are going to use this much of the time. Let's put it after the "Default" one.

This comment has been minimized.

Show comment Hide comment
@ellisonbg

ellisonbg Jan 14, 2013

Member

Oh, and the path for loading needs to be updated.

@ellisonbg

ellisonbg Jan 14, 2013

Member

Oh, and the path for loading needs to be updated.

This comment has been minimized.

Show comment Hide comment
@ellisonbg

ellisonbg Jan 14, 2013

Member

Even with an updated path, I can't load this preset. I tried:

$.getScript('/static/js/celltoolbarpresets/slideshow.js');
@ellisonbg

ellisonbg Jan 14, 2013

Member

Even with an updated path, I can't load this preset. I tried:

$.getScript('/static/js/celltoolbarpresets/slideshow.js');

This comment has been minimized.

Show comment Hide comment
@Carreau

Carreau Jan 14, 2013

Member

Weird, it does work for me...

@Carreau

Carreau Jan 14, 2013

Member

Weird, it does work for me...

This comment has been minimized.

Show comment Hide comment
@ellisonbg

ellisonbg Jan 14, 2013

Member

I just hadn't saved my custom.js file ;(

On Mon, Jan 14, 2013 at 1:22 PM, Bussonnier Matthias <
notifications@github.com> wrote:

In
IPython/frontend/html/notebook/static/js/celltoolbarpresets/slideshow.js:

+//
+// Distributed under the terms of the BSD License. The full license is in
+// the file COPYING, distributed as part of this software.
+//----------------------------------------------------------------------------
+
+//============================================================================
+//CellToolbar Example
+//============================================================================
+
+/**

  • * Example Use for the CellToolbar library
  • * add the following to your custom.js to load
  • * metadata UI for slideshow
  • * ```
  • * $.getScript('/static/js/examples/metaui.slideshow.js');

Weird, it does work for me...


Reply to this email directly or view it on GitHubhttps://github.com/ipython/ipython/pull/2687/files#r2641460.

Brian E. Granger
Cal Poly State University, San Luis Obispo
bgranger@calpoly.edu and ellisonbg@gmail.com

@ellisonbg

ellisonbg Jan 14, 2013

Member

I just hadn't saved my custom.js file ;(

On Mon, Jan 14, 2013 at 1:22 PM, Bussonnier Matthias <
notifications@github.com> wrote:

In
IPython/frontend/html/notebook/static/js/celltoolbarpresets/slideshow.js:

+//
+// Distributed under the terms of the BSD License. The full license is in
+// the file COPYING, distributed as part of this software.
+//----------------------------------------------------------------------------
+
+//============================================================================
+//CellToolbar Example
+//============================================================================
+
+/**

  • * Example Use for the CellToolbar library
  • * add the following to your custom.js to load
  • * metadata UI for slideshow
  • * ```
  • * $.getScript('/static/js/examples/metaui.slideshow.js');

Weird, it does work for me...


Reply to this email directly or view it on GitHubhttps://github.com/ipython/ipython/pull/2687/files#r2641460.

Brian E. Granger
Cal Poly State University, San Luis Obispo
bgranger@calpoly.edu and ellisonbg@gmail.com

+ slideshow_preset.push('slideshow.select');
+
+ CellToolbar.register_preset('slideshow',slideshow_preset);
+ console.log('Slideshow extension for metadata editting loaded.');

This comment has been minimized.

Show comment Hide comment
@ellisonbg

ellisonbg Jan 14, 2013

Member

editting -> editing

@ellisonbg

ellisonbg Jan 14, 2013

Member

editting -> editing

@ellisonbg

This comment has been minimized.

Show comment Hide comment
@ellisonbg

ellisonbg Jan 14, 2013

Member

There are just a few minor things we need to take care of, but this is almost ready to go.

Member

ellisonbg commented Jan 14, 2013

There are just a few minor things we need to take care of, but this is almost ready to go.

@ellisonbg

This comment has been minimized.

Show comment Hide comment
@ellisonbg

ellisonbg Jan 14, 2013

Member

OK nevermind, I got this preset to load...

Two issues with the cell toolbar styling on Linux Chrome+Firefox:

  • The celltoolbar div extends past the left edge of the input area. I think this has to do with the units of measurement. The input prompt width is in pixels and the left margin of the cell toolbar is in px.
  • The font used in the celltoolbar slideshow select box is too big - it should match that of the other select boxes.
Member

ellisonbg commented Jan 14, 2013

OK nevermind, I got this preset to load...

Two issues with the cell toolbar styling on Linux Chrome+Firefox:

  • The celltoolbar div extends past the left edge of the input area. I think this has to do with the units of measurement. The input prompt width is in pixels and the left margin of the cell toolbar is in px.
  • The font used in the celltoolbar slideshow select box is too big - it should match that of the other select boxes.
@Carreau

This comment has been minimized.

Show comment Hide comment
@Carreau

Carreau Jan 14, 2013

Member

Ok, fixed, can't you still load it ?
what about :

$.getScript('https://raw.github.com/Carreau/ipython/metaui-slideshow/IPython/frontend/html/notebook/static/js/celltoolbarpreset/metaui.slideshow.js');
Member

Carreau commented Jan 14, 2013

Ok, fixed, can't you still load it ?
what about :

$.getScript('https://raw.github.com/Carreau/ipython/metaui-slideshow/IPython/frontend/html/notebook/static/js/celltoolbarpreset/metaui.slideshow.js');
@ellisonbg

This comment has been minimized.

Show comment Hide comment
@ellisonbg

ellisonbg Jan 14, 2013

Member

No I can load it fine...was just stupidity on my part.

On Mon, Jan 14, 2013 at 1:25 PM, Bussonnier Matthias <
notifications@github.com> wrote:

Ok, fixed, can't you still load it ?
what about :

$.getScript('https://raw.github.com/Carreau/ipython/metaui-slideshow/IPython/frontend/html/notebook/static/js/celltoolbarpreset/metaui.slideshow.js');


Reply to this email directly or view it on GitHubhttps://github.com/ipython/ipython/pull/2687#issuecomment-12240591.

Brian E. Granger
Cal Poly State University, San Luis Obispo
bgranger@calpoly.edu and ellisonbg@gmail.com

Member

ellisonbg commented Jan 14, 2013

No I can load it fine...was just stupidity on my part.

On Mon, Jan 14, 2013 at 1:25 PM, Bussonnier Matthias <
notifications@github.com> wrote:

Ok, fixed, can't you still load it ?
what about :

$.getScript('https://raw.github.com/Carreau/ipython/metaui-slideshow/IPython/frontend/html/notebook/static/js/celltoolbarpreset/metaui.slideshow.js');


Reply to this email directly or view it on GitHubhttps://github.com/ipython/ipython/pull/2687#issuecomment-12240591.

Brian E. Granger
Cal Poly State University, San Luis Obispo
bgranger@calpoly.edu and ellisonbg@gmail.com

@Carreau

This comment has been minimized.

Show comment Hide comment
@Carreau

Carreau Jan 14, 2013

Member

Two issues with the cell toolbar styling on Linux Chrome+Firefox:

I'll crash to bed, it will be easy for you to iterate fast on the css if you have linux and firefox in order to fix the display issue, than me to guess and get your review.

Right now I need to sleep.

Member

Carreau commented Jan 14, 2013

Two issues with the cell toolbar styling on Linux Chrome+Firefox:

I'll crash to bed, it will be easy for you to iterate fast on the css if you have linux and firefox in order to fix the display issue, than me to guess and get your review.

Right now I need to sleep.

@ellisonbg

This comment has been minimized.

Show comment Hide comment
@ellisonbg

ellisonbg Jan 14, 2013

Member

The celltoolbar div styling is made more difficult by the way we style the prompt divs:

div.prompt {
width: 11ex;
padding: 0.4em;
margin: 0px;
font-family: monospace;
text-align: right;
}

The top+bottom padding is finely tuned ot get everything aligned with the actual input text, so we can't change that. You will have to do the l and r padding separate and convert to a consistent units for spacing, probably ex. Also will have to watch for the spacing of all the output area collapse areas.

Member

ellisonbg commented Jan 14, 2013

The celltoolbar div styling is made more difficult by the way we style the prompt divs:

div.prompt {
width: 11ex;
padding: 0.4em;
margin: 0px;
font-family: monospace;
text-align: right;
}

The top+bottom padding is finely tuned ot get everything aligned with the actual input text, so we can't change that. You will have to do the l and r padding separate and convert to a consistent units for spacing, probably ex. Also will have to watch for the spacing of all the output area collapse areas.

@ellisonbg

This comment has been minimized.

Show comment Hide comment
@ellisonbg

ellisonbg Jan 14, 2013

Member

OK I will play with the styling and submit a PR for that. The rest of the
slideshow UI stuff is pretty simple though, have a good night.

On Mon, Jan 14, 2013 at 1:30 PM, Bussonnier Matthias <
notifications@github.com> wrote:

Two issues with the cell toolbar styling on Linux Chrome+Firefox:

I'll crash to bed, it will be easy for you to iterate fast on the css if
you have linux and firefox in order to fix the display issue, than me to
guess and get your review.

Right now I need to sleep.


Reply to this email directly or view it on GitHubhttps://github.com/ipython/ipython/pull/2687#issuecomment-12240773.

Brian E. Granger
Cal Poly State University, San Luis Obispo
bgranger@calpoly.edu and ellisonbg@gmail.com

Member

ellisonbg commented Jan 14, 2013

OK I will play with the styling and submit a PR for that. The rest of the
slideshow UI stuff is pretty simple though, have a good night.

On Mon, Jan 14, 2013 at 1:30 PM, Bussonnier Matthias <
notifications@github.com> wrote:

Two issues with the cell toolbar styling on Linux Chrome+Firefox:

I'll crash to bed, it will be easy for you to iterate fast on the css if
you have linux and firefox in order to fix the display issue, than me to
guess and get your review.

Right now I need to sleep.


Reply to this email directly or view it on GitHubhttps://github.com/ipython/ipython/pull/2687#issuecomment-12240773.

Brian E. Granger
Cal Poly State University, San Luis Obispo
bgranger@calpoly.edu and ellisonbg@gmail.com

@damianavila

This comment has been minimized.

Show comment Hide comment
@damianavila

damianavila Jan 15, 2013

Contributor

I can not load the slideshow preset...
I have used with no success:

$.getScript('/static/js/celltoolbarpresets/slideshow.js');

and

//$.getScript('https://raw.github.com/Carreau/ipython/metaui-slideshow/IPython/frontend/html/notebook/static/js/celltoolbarpreset/slideshow.js');

Do you have any insight?

Contributor

damianavila commented Jan 15, 2013

I can not load the slideshow preset...
I have used with no success:

$.getScript('/static/js/celltoolbarpresets/slideshow.js');

and

//$.getScript('https://raw.github.com/Carreau/ipython/metaui-slideshow/IPython/frontend/html/notebook/static/js/celltoolbarpreset/slideshow.js');

Do you have any insight?

@damianavila

This comment has been minimized.

Show comment Hide comment
@damianavila

damianavila Jan 15, 2013

Contributor

OK, I fixed... sorry for the noise...

Contributor

damianavila commented Jan 15, 2013

OK, I fixed... sorry for the noise...

@ellisonbg

This comment has been minimized.

Show comment Hide comment
@ellisonbg

ellisonbg Jan 15, 2013

Member

I think there is only one more thing that needs to be done before this is merged: install this preset by default.

Member

ellisonbg commented Jan 15, 2013

I think there is only one more thing that needs to be done before this is merged: install this preset by default.

@Carreau

This comment has been minimized.

Show comment Hide comment
@Carreau

Carreau Jan 15, 2013

Member

Done.

Member

Carreau commented Jan 15, 2013

Done.

@ellisonbg

This comment has been minimized.

Show comment Hide comment
@ellisonbg

ellisonbg Jan 15, 2013

Member

Merging - great work!

Member

ellisonbg commented Jan 15, 2013

Merging - great work!

ellisonbg added a commit that referenced this pull request Jan 15, 2013

@ellisonbg ellisonbg merged commit ff7178b into ipython:master Jan 15, 2013

1 check passed

default The Travis build passed
Details

mattvonrocketstein pushed a commit to mattvonrocketstein/ipython that referenced this pull request Nov 3, 2014

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