写了一些 Jupyter notebook 的扩展插件

2016-05-29 20:03:53 +08:00
 ruoyu0088

《 Python 科学计算》第二版是采用 IPython notebook 编写的,为了方便写书,我编写了几个扩展程序。今天抽空把这些扩展程序升级到 Jupyter notebook 。由于我对 Javascript 不熟,这次全部改用 Python 编写,然后用 py2js 转换为 Javascript ,这样做编写程序的效率高了不少。

https://github.com/ruoyu0088/jupyter_extensions

12089 次点击
所在节点    Jupyter
7 条回复
sivacohan
2016-05-29 22:25:19 +08:00
直接用 jupyter 写书?出版分页什么的没有问题吗?
有机会分享一下经验啊。
justou
2016-05-29 22:49:30 +08:00
感谢作者

请问一下, 用 ipython notebook 写书后转换成其它格式需要用些什么技巧, 比如转换成 md 或者 pdf 文件.
发现直接用 File 菜单的 Download as...或者基本的转换命令生成的格式都很糟糕, 生成的 md 文件用 markdownPad 打开后格式会出现不对地方, 尤其是代码段, 生成的 pdf 也是相当难看. 看了下 nbconvert 的文档, 试着添了些 options, 结果还是很糟

以前一直用 latex 编写文档, 各种繁琐的格式配置感觉越用越麻烦, 最近开始用 ipython notebook, 确实便利, html 格式比较好看, 转换成其他格式就变丑了
ruoyu0088
2016-05-29 22:58:46 +08:00
@sivacohan @justou
书的原稿全部用 Notebook 编写,然后使用 nbconvert 将它们转换成 markdown 文件,这个转换过程我也通过插件自定义了很多步骤,例如将 SVG 图片转换为高分辨率的 PNG 。然后用 pandoc 把 markdown 文件转换成 docx 文件。然后再用 Python 脚本用过 COM 接口驱动 Word 对这些 docx 文件进行自动排版。所有的这些过程放到一个批处理里面,就可以实现从 Notebook 到交稿时的 docx 文档的自动转换。
sivacohan
2016-05-29 23:14:41 +08:00
非常感谢。
ruoyu0088
2016-05-29 23:14:59 +08:00
自动转换的程序在这里:

https://github.com/ruoyu0088/nbmanager

不过要让它跑起来,需要特定的目录的结构,以及 Notebook 中的一些排版用的注释。等以后有时间希望能把这个整理成通用的。
justou
2016-05-29 23:31:45 +08:00
谢谢, 看来背后要懂的东西还不少
cqcn1991
2016-07-13 20:10:26 +08:00
前几天在 stackoverflow 上问问被 LZ 回答了...
表示感谢

http://stackoverflow.com/questions/38318166/jupyter-notebook-output-image-in-previous-line

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/282068

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX