IPython notebookサイコオオオオオオオオオオオオオオオオオオオオオオオオオ

IPython notebook、昔々触ったときは「コンセプトは良いけどまだまだですナ。ハハハ」みたいな感じで流してたのだがちゃんと触ってみるとなにかと便利だったので未来の自分が別PCに導入することも考えてメモしておく。

インストール

Anacondaでインストールした。
http://continuum.io/downloads

使う

コマンドラインでipython notebookと打ち込めばブラウザ上に立ち上がる。
とりあえず以下の3点を覚えておけば快適。あとはショートカットキーを覚えていけば良い。

  1. Escでcommand modeへ、EnterでEdit modeに移行する。
  2. command modeでhを打てばショートカットキー一覧が出る。
  3. dを2回打てばセルを消去、zを打てば元に戻る、sで保存。

html埋め込み系の話はmarkdownで対応するとすっきりする。
例えばtwitterを埋め込みたいときは、「ツイートをサイトに埋め込む」で表示される文字列をセルにコピペした後、セルをmarkdownに変更(command modeでm)してやれば良い。

なお、Windowsだとショートカットキーはだいぶ異なるようなので注意。
たとえばショートカットキー一覧はCtrl+m-hで表示など、Ctrl+mをまず打つという手順が入る。

githubでnotebookを公開。

普通にgithubにファイルをアップすればOK。
addしてcommitしてpushだ。
そして下記サイトにgithubに上げたipynbのURLを放り込めばブラウザ上で見られるようにURLを生成してくれる。
http://nbviewer.ipython.org/
こんな感じ。
http://nbviewer.ipython.org/github/dichika/pythonmemo/blob/master/string141109.ipynb
ちなみにnotebookを共有するサービスもあるようで。これはPythonに限った話ではない。
http://beakernotebook.com/

エクステを使う

table of contentsはこれで自動生成するといい。
https://github.com/kmahelona/ipython_notebook_goodies
ここのエクステを使うとnotebookのツールバーにボタンが追加されてそれを押すとgist経由で簡単に投稿できる。addしてcommitしてpushとかしなくてよい。楽。
https://github.com/minrk/ipython_extensions

こんな感じになった。
http://nbviewer.ipython.org/gist/dichika/ecc7198721c7ecd3d33e
enjoy!!!