[IPython-dev] New Notebook extensions: Spell checking, document tools, cell tools

Matthias Bussonnier bussonniermatthias at gmail.com
Sun Jul 27 08:48:44 EDT 2014


Le 27 juil. 2014 à 14:41, Doug Blank a écrit :

> Speaking of this: is there a magic that acts as a type of Notebook JavaScript package manager? With the new system, it seems like it wouldn't be too hard to make a small installer that could keep track of dependencies, versioning, and file copying.

Hum, no, and it is slightly more complicated than that. It is "relatively" easy for pure js/css modules, but for things
 that require kernel-side there are some challenges. 

I even suspect that you should be able to develop/register extensions with bower/npm and "just" install 
them in nbextensions. 
-- 
M



> 
> -Doug
> 
> 
> On Sun, Jul 27, 2014 at 6:59 AM, Matthias Bussonnier <bussonniermatthias at gmail.com> wrote:
> >
> >
> > Le 27 juil. 2014 à 12:54, Juergen Hasch a écrit :
> >
> > > Hi Doug,
> > > nice work. I am glad you found a Javascript solution for the spell checker. I'll happily retire my aspell-based version.
> > >
> > > I think it would be a good idea to move to the nbextension location, as Matthias suggested.
> > > Also, the CSS stuff for the spellchecker extension should probably be in a separate spell-check.css file .
> > >
> > > Matthias:
> > > One can use "IPython.load_extensions('spell-check')" or "require(['nbextensions/spell-check'])" to load an extension.
> > > The first options seems nicer to me, what do you say ?
> >
> > Yes, I just never remember how to use it :-)
> > Writing My PhD have made a lot of holes in my usage of IPython.
> > We should really write documentation for Javascript stuff.
> > --
> > M
> >
> >
> > >  Juergen
> > >
> > >
> > > Am 27.07.2014 07:50, schrieb Doug Blank:
> > >> IPython notebook users,
> > >>
> > >> Looking for some beta testers to try out three new notebook extensions. These are browser extensions, so should work
> > >> with any kernel. They are:
> > >>
> > >> 1. Spell check: this is implemented in JavaScript, not too big (~700k), and pretty fast. It is currently set up to work
> > >> only for Markdown cells. It toggles on/off via the "check" button. Doesn't offer suggestions for misspelled words, but
> > >> is a big help in writing. Currently, English only, but supports a range of dictionary types via Typo.js.
> > >>
> > >> 2. Cell tools: There are two formats for code cells: Input/Output Tabbed view, and Column view. The Tabbed view will
> > >> cover the Input code cell with the Output of the code, and you can tab back and forth. The Column view will show the
> > >> output in a column next to the  input column. Both of these buttons toggle individual code cells, and remembers their
> > >> state when you re-open the notebook. These don't show in nbviewer, however.
> > >>
> > >> 3. Document tools: There are three different extensions for handling documents: 1) Heading numbering, 2) Table of
> > >> Contents generation, and 3) Bibliographic support. The first two are fairly straightforward in functionality: the first
> > >> toggles heading numbering on/off, and the second creates a Table of Contents from the heading cells.
> > >>
> > >> The Bibliographic tool is a bit more complex, and still needs to be refined. It does two things: replaces citations in
> > >> your Markdown with proper author/year, and creates a References section at the end of your notebook with cited sources
> > >> (this part isn't complete yet). It uses Bibtex data stored in the notebook, or in a separate Bibliography.ipynb in your
> > >> root dir. For more on this tool, see:
> > >>
> > >> http://nbviewer.ipython.org/urls/bitbucket.org/ipre/calico/raw/master/notebooks/Documentation/Reference%20Guide/Reference%20Guide.ipynb#4.-Bibliographic-Support
> > >>
> > >> (Documentation hasn't been refined yet; This is a temp version. We hope to have some demo videos next week.)
> > >>
> > >> To install, you can do something like:
> > >>
> > >> 1) Change to the profile you want to use:
> > >> cd $(ipython locate)/profile_default/static/custom/
> > >>
> > >> 2) Overwrite or edit your custom js and css:
> > >> wget https://bitbucket.org/ipre/calico/raw/master/notebooks/profile/static/custom/custom_example.js -o custom.css
> > >> wget https://bitbucket.org/ipre/calico/raw/master/notebooks/profile/static/custom/custom.css
> > >>
> > >> 3) Get the extensions that you want:
> > >>
> > >> Document tools:
> > >> wget https://bitbucket.org/ipre/calico/raw/master/notebooks/profile/static/custom/bibtex.js
> > >> wget https://bitbucket.org/ipre/calico/raw/master/notebooks/profile/static/custom/document-tools.js
> > >>
> > >> Cell tools:
> > >> wget https://bitbucket.org/ipre/calico/raw/master/notebooks/profile/static/custom/cell-tools.js
> > >>
> > >> Spell checking:
> > >> wget https://bitbucket.org/ipre/calico/raw/master/notebooks/profile/static/custom/spell-check.js
> > >> wget https://bitbucket.org/ipre/calico/raw/master/notebooks/profile/static/custom/typo.zip
> > >> unzip typo.zip
> > >>
> > >>
> > >> We'd be glad to get feedback on any and all of these. We hope that you find them useful!
> > >>
> > >> -Doug (and the Bryn Mawr College digital humanities team)
> > >>
> > >>
> > >>
> > >> _______________________________________________
> > >> IPython-dev mailing list
> > >> IPython-dev at scipy.org
> > >> http://mail.scipy.org/mailman/listinfo/ipython-dev
> > >>
> > >
> > > _______________________________________________
> > > IPython-dev mailing list
> > > IPython-dev at scipy.org
> > > http://mail.scipy.org/mailman/listinfo/ipython-dev
> >
> > _______________________________________________
> > IPython-dev mailing list
> > IPython-dev at scipy.org
> > http://mail.scipy.org/mailman/listinfo/ipython-dev
> _______________________________________________
> IPython-dev mailing list
> IPython-dev at scipy.org
> http://mail.scipy.org/mailman/listinfo/ipython-dev




More information about the IPython-dev mailing list