Jupyter notebook をインポートする
#要望 #インポート
Jupyter http://jupyter.org/ は、Python や Julia などをWebブラウザ上で実行できるフロントエンドです。Jupyter notebook は、そのファイル形式で、プログラムと実行結果を、1ファイルにまとめられます。
Jupyter notebook 風のページ群を scrapbox 上に載せられると、プログラミング教材向けに便利だと考えています。
現時点でも、Jupyter notebook を markdown形式で別名保存し、md2sb を通してから、scrapbox にインポートできますが、画像などを別途アップロードする手間が必要です。
そもそも Jupyter notebook (拡張子 .ipynb) は JSON ですので、scrapbox 形式に直接変換する方がよさそうです。
nbformat → http://nbformat.readthedocs.io/en/latest/format_description.html
nbformat 内の markdown-cell の scrapbox形式への変換には、md2sb 内の compiler.js が使えると思います。 https://github.com/pastak/md2sb/blob/master/src/libs/compiler.js
(自分自身でも書きたいのですが、node の非同期処理は学んでいません。難しそう)
code-cells の source タグ?を、scrapbox 同名のコードブロックにしておくと、code/api でプログラムソースを一度に取り出して、コピペに使えるので便利かと思います。
ふむふむ。なるほどです。良い感じのサンプル入力と期待される出力みたいなのがあれば、importツールシリーズの1つとして書いてみれるかもしれません /icons/pastak.icon
ご関心いただき、ありがとうございます。
例。(よい感じかどうかは分かりませんが。
ソース ipynb → https://gist.github.com/anonymous/8292d2518ac613789b6edc860bf05eb4 
(右の RAW ボタンで ipynb の JSON ソースがみれます)
scrapbox に載せてみた → /hsugawa-sandbox/ローレンツ関数へ
これでソースのみ得られる (すばらしい) →
★ プロトタイプを作ってみました。 2017.7.19
https://github.com/hsugawa8651/jupyter_to_scrapbox_gem
機能
jupyter のコード部分を、scrapboxのコードブロックに入れる
jupyter の markdown 部分を、scrapbox のテキストに入れる (何も修正しない)
このツールを用いて、上のソースをインポートしてみた結果 → /hsugawa-sandbox/Untitled57
上の機能通りの結果が得られた。
output = image/png の部分、画像を取り込めたらうれしい、というのが、この要望の趣旨です → JSON importから画像をアップロードする
★ 画像を取り込めるようにしました。2017.8.2 /hsugawa8651memo/JupyterToScrapbox
数式も取り込めます→ /hsugawa-sandbox/Untitled57 (copy)