<html><head></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><br><div><div>Le 25 juil. 2014 à 03:59, Doug Blank a écrit :</div><br class="Apple-interchange-newline"><blockquote type="cite"><div dir="ltr">Success; we now have a working IPython notebook with spelling checking in Markdown cells!<div><br></div><div>I'll try to package this up over the next few days to make a notebook extension for all kernels. Currently, I have this all in one custom.js file [1] ... check out the toggle_spell_check function and code loaded on app_initialized.</div>
<div><br></div><div>The way that is currently works is as a toggle "spell check" button: click it once, and it turns on a spell check overlay over the "markdown" mode on all Markdown cells (see attached picture). Press the button again, and it turns it off.</div>
<div><br></div><div>I'm currently using Typo.js, but any JavaScript spell check library could work. Typo isn't bad... may need to adjust what gets checked (need to remove single quotes, and maybe add HTML tag names to dictionary).</div>
<div><br></div><div>Possible options/limitations:</div><div><br></div><div>1) Should markdown cells be the only cells spell checked?</div></div></blockquote><div><br></div><div>I suppose, unless you have a way to spellcheck only comment in the languages, which will be hard. </div><div><br></div><blockquote type="cite"><div dir="ltr"><div><br></div><div>2) doesn't currently allow for right-click suggestion fixes; important?</div></div></blockquote><div><br></div><div>Would be good, but will prevent user to use normal right click which is super annoying. </div><div>you won't be able to right-click copy, or lots of other stuff. Would suggest no-to.</div><div>Or have an option to enable disable the menu.</div><br><blockquote type="cite"><div dir="ltr">
<div><br></div><div>3) English only. Just need to provide more dictionaries and an API to change the dictionary.</div><div><br></div><div>4) Should the spell checking be on all of the time?</div></div></blockquote><div><br></div><div>You can persist the state  in cell metadata. (language in notebook level metadata). </div><div>We have to see the overhead of spellchecking.</div><br><blockquote type="cite"><div dir="ltr"><div>Other options/suggestions welcomed!</div></div></blockquote><div><br></div><div>Will work on fall in refactoring completer. Might use completer to quick-correct maybe. </div><br><blockquote type="cite"><div dir="ltr">
<div><br></div><div>-Doug</div><div><br></div><div>[1] - <a href="https://bitbucket.org/ipre/calico/src/master/notebooks/profile/static/custom/custom.js">https://bitbucket.org/ipre/calico/src/master/notebooks/profile/static/custom/custom.js</a></div></div></blockquote><br><blockquote type="cite"><div dir="ltr">
<div><br></div><div>This custom.js has a few things in it that we'll break into extensions: two-column mode, bibtex references, tabbed in/out cells, heading numbering, table of contents, and spelling checking.</div></div></blockquote><div><br></div><div><div>Nice,  I suppose you have seen this, which regroups a few extensions. </div><div><a href="https://github.com/ipython-contrib/IPython-notebook-extensions">https://github.com/ipython-contrib/IPython-notebook-extensions</a></div><div><br></div><div>Your would be welcomed I guess. </div><div>--</div><div>M</div></div><br><blockquote type="cite"><div dir="ltr"><div>
<br></div></div><div class="gmail_extra"><br><br><div class="gmail_quote">On Thu, Jul 24, 2014 at 4:52 PM, Doug Blank <span dir="ltr"><<a href="mailto:doug.blank@gmail.com" target="_blank">doug.blank@gmail.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div class="">On Thu, Jul 24, 2014 at 2:31 PM, Damián Avila <span dir="ltr"><<a href="mailto:damianavila@gmail.com" target="_blank">damianavila@gmail.com</a>></span> wrote:<br>

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div dir="ltr"><div>> <span style="font-family:arial,sans-serif;font-size:13px">I'm interested to see the code.</span><div>

<span style="font-family:arial,sans-serif;font-size:13px"><br></span></div></div><div><span style="font-family:arial,sans-serif;font-size:13px">Me too ;-)</span></div></div></blockquote><div><br></div></div><div>Thanks for the hints and links...</div>

<div><br></div><div>Oh, we'll make this available to all... no more misspellings in notebooks!</div><span class="HOEnZb"><font color="#888888"><div><br></div><div>-Doug</div></font></span><div><div class="h5"><div> </div>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<div dir="ltr">
</div><div class="gmail_extra"><br><br><div class="gmail_quote">2014-07-24 15:30 GMT-03:00 Matthias Bussonnier <span dir="ltr"><<a href="mailto:bussonniermatthias@gmail.com" target="_blank">bussonniermatthias@gmail.com</a>></span>:<div>

<div><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><br>
Le 24 juil. 2014 à 19:06, Doug Blank a écrit :<br>
<div><br>
> I have successfully created and registered a CodeMirror overlay (for spell checking), but two questions:<br>
><br>
> 1) Which of the modes is used for Markdown cells? I guess that will be the mode that I overlay.<br>
<br>
</div>JSconsole :<br>
<br>
> IPython.TextCell.options_default.cm_config.mode<br>
"htmlmixed"<br>
<div><br>
<br>
<br>
><br>
> 2) How do I make it so that my new mode will be used on Markdown cells?<br>
<br>
</div>IPython.TextCell.options_default.cm_config.mode = yourmode<br>
+<br>
loop on all cell and set<br>
IPython.notebook.get_cell(0).code_mirror.setOption('mode',yourmode)<br>
<br>
might need to require your mode first though, maybe with code_mirrorm.getMode<br>
<br>
cf julia custom.js<br>
<br>
<a href="https://github.com/JuliaLang/IJulia.jl/blob/master/deps/custom.js#L66-L90" target="_blank">https://github.com/JuliaLang/IJulia.jl/blob/master/deps/custom.js#L66-L90</a><br>
<div><br>
><br>
> I guess that I need to associate the mime type of Markdown cells with my new mode, but having some trouble finding where to connect this in the IPython JavaScript.<br>
<br>
</div>I'm interested to see the code.<br>
--<br>
<div>M<br>
<br>
><br>
> Thanks for any suggestions,<br>
><br>
> -Doug<br>
><br>
</div>> _______________________________________________<br>
> IPython-dev mailing list<br>
> <a href="mailto:IPython-dev@scipy.org" target="_blank">IPython-dev@scipy.org</a><br>
> <a href="http://mail.scipy.org/mailman/listinfo/ipython-dev" target="_blank">http://mail.scipy.org/mailman/listinfo/ipython-dev</a><br>
<br>
_______________________________________________<br>
IPython-dev mailing list<br>
<a href="mailto:IPython-dev@scipy.org" target="_blank">IPython-dev@scipy.org</a><br>
<a href="http://mail.scipy.org/mailman/listinfo/ipython-dev" target="_blank">http://mail.scipy.org/mailman/listinfo/ipython-dev</a><br>
</blockquote></div></div></div><span><font color="#888888"><br><br clear="all"><div><br></div>-- <br><div dir="ltr"><b><i>Damián</i></b></div>
</font></span></div>
<br>_______________________________________________<br>
IPython-dev mailing list<br>
<a href="mailto:IPython-dev@scipy.org" target="_blank">IPython-dev@scipy.org</a><br>
<a href="http://mail.scipy.org/mailman/listinfo/ipython-dev" target="_blank">http://mail.scipy.org/mailman/listinfo/ipython-dev</a><br>
<br></blockquote></div></div></div><br></div></div>
</blockquote></div><br></div>
<span><Screenshot from 2014-07-24 21:55:22.png></span>_______________________________________________<br>IPython-dev mailing list<br><a href="mailto:IPython-dev@scipy.org">IPython-dev@scipy.org</a><br>http://mail.scipy.org/mailman/listinfo/ipython-dev<br></blockquote></div><br></body></html>