将标记转换为ipython笔记本。

notedown的Python项目详细描述


python 2/3和ipython 4/jupyter兼容!

将iPython笔记本电脑转换为降价(和后退)

notedown是一个简单的工具 从创建IPython notebooks 降价(和R-降价)。

notedown将标记分为代码和非代码。代码块 (围栏或缩进)进入输入单元格,其他所有内容都进入 标记单元格。

用法:

notedown input.md > output.ipynb

安装:

pip install notedown

或github上的最新版本:

pip install https://github.com/aaren/notedown/tarball/master

转换为降价

将笔记本转换为降价,取消所有输出:

notedown input.ipynb --to markdown --strip > output.md

将笔记本转换为降价,输出json保持不变:

notedown input.ipynb --to markdown > output_with_outputs.md

输出作为json放在紧接着 相应的输入代码块。notedown理解此约定 同样,也可以将这个带有json的标记转换回 笔记本。

这意味着可以编辑标记、转换为笔记本、播放 大约一点,然后转换回标记。

注意:当前,笔记本和单元格元数据不保留在 转换。

从标记中删除输出单元格:

notedown with_output_cells.md --to markdown --strip > no_output_cells.md

运行ipython笔记本

notedown notebook.md --run > executed_notebook.ipynb

在浏览器中编辑(新!)

您可以将ipython/jupyter配置为无缝使用markdown作为其 存储格式。在配置文件中添加以下内容:

c.NotebookApp.contents_manager_class = 'notedown.NotedownContentsManager'

现在您可以在浏览器中编辑标记文件,执行代码, 创建绘图-全部存储在标记中!

对于jupyter,您的配置文件是jupyter_notebook_config.pyin ~/.jupyter。对于ipython,你的配置是 ipython_notebook_config.py在您的ipython配置文件中(可能 ~/.ipython/profile_default):

R-降价

您也可以使用notedown来转换r-markdown。我们只需要 告诉notedown使用knitr转换 R-降价。这要求您在 knitr

将R-降价转换为降价:

notedown input.Rmd --to markdown --knit > output.md

将r-markdown转换为ipython笔记本:

notedown input.Rmd --knit > output.ipynb
  • --rmagic将在 笔记本,允许您使用rmagic执行代码单元格 扩展(需要rpy2)。记下 自动执行适当的%R单元格魔术。

魔法

读取用python以外的语言注释的隔离代码块 使用ipython的%%cell magic进入单元格。

您可以用--nomagic禁用它。

  • --pre允许您将任意代码添加到笔记本的开头。 例如 notedown file.md --pre '%matplotlib inline' 'import numpy as np'

如何在标记中放置文字代码块?

使用--match参数。notedown默认为转换 all代码块进入代码单元。这种行为可以通过 给--match

一个不同的参数
  • --match=all:转换所有代码块(默认值)

  • --match=fenced:仅转换受保护的代码块

  • --match=language:只转换带有“language”的fenced代码块 作为语法说明符(或块属性的任何成员)

  • --match=strict:仅转换pandoc样式的代码块 包含“python”和“input”作为类的属性。即代码 块必须看起来像

    ```{.python .input}
    code
    ```
    

这不是很互动!

尝试使用 NotedownContentsManager(见上文)。

通过使用 vim-ipython,它允许 连接到正在运行的ipython内核。你可以从vim发送代码 从正在运行的内核获取代码完成。试试看!

我的语法突出显示在哪里?!

尝试使用 vim-markdownvim-pandoc。两者都是 聪明到可以在降价中突出显示代码。

以降价方式呈现输出

这是实验性的!

将笔记本转换为降价,将单元格输出呈现为本机输出 马尔kdown元素:

notedown input.ipynb --render

这意味着png输出变成![](data-uri)images和 文本被放在文档中。

当然,你可以用这个和Runipy一起制作 用代码标记,用代码标记中的数字:

notedown input.md --run --render > output.md

看不到笔记本!

--render标志强制输出格式标记。

待办事项

  • [X]Python 3支持
  • [X]Unicode支持
  • [X]iPython 3支持
  • [X]iPython 4(Jupyter)支持
  • []允许内核规范

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java JMSTemplate检查主题是否存在并获取订户计数   选项卡中的java JavaFX窗格   java camel是否对文件使用隐式读锁?   java数字[x]给出了不正确的输出,我不明白为什么   java Java2D图形仅通过OpenGL管道渲染   java如何解析一个整数,当我有一个double的格式时?   java Android动画图片更改   java在按用户定义类型过滤时如何在jooq中形成where子句   java Nullcheck检查先前在Sonar中取消引用的值的第114行的状态   java显示Thymeleaf循环中的ArrayList内容   java ApachePOI即使在执行fileoutputstream之后也不保存excel工作簿。关闭()   java listNode公共方法不访问私有数据成员   尝试模拟静态(不兼容的依赖项)时出现java NoClassDefFoundError或NoSuchMethodError   JavaSelenium自动元素单击返回null   将javaee WAR部署到ColdFusion服务器(用于混合Java ColdFusion应用程序)