一个最小的nbdev版本,专注于编写quarto扩展
项目描述
关键词
Cell
:Jupyter Notebook中的执行模块或Markdown容器。Directive
:由管道分隔(|
)的注释块,由Quarto和nbquarto
识别。Processor
:一个基于其指令调整单元格的类。
介绍nbquarto
:您的Python-Powered Notebook增强器
使用nbquarto
利用Python的力量,这是一个外部转换Jupyter Notebook单元格的动态界面,旨在为Quarto项目设计。此框架通过启用Jupyter Notebooks的快速创建和实现后处理器来简化您的文档流程。虽然以Quarto为中心,但nbquarto
对于任何利用Jupyter Notebooks的Python项目来说都是一项宝贵的资产。
入门
查看此处的安装说明以开始!
选择nbquarto
以获得更佳体验
从nbdev汲取灵感,nbquarto
致力于一个更易于理解且不那么抽象的界面。它专注于修改Jupyter Notebooks,以便充分利用Quarto的丰富功能,最小化依赖项,并提高代码可读性。
无需学习曲线的nbquarto
为什么要在Python内容中学习新的语言(Lua)进行修改?nbquarto
是Quarto扩展的Pythonic替代品。以可忽略的增加处理时间为代价,提供灵活性和简单性,nbquarto
使您能够掌控叙事。
nbquarto
是如何工作的?
nbquarto
的核心是一个Processor
。该组件用于修改单元格以微调代码格式或快速创建复杂的Quarto语法组合。每个cell
对象包含两个关键元素:directives_
(单元格指令列表)和source
(可修改的单元格文本)。
看看如何在单元格文本源顶部添加注释是多么简单
>>> from nbquarto import Processor
>>> class BasicProcessor(Processor):
... "A basic processor that adds a comment to the top of a cell's text source."
...
... directives = "process"
...
... def process(self, cell):
... if any(directive in cell.directives_ for directive in self.directives):
... cell.source = f"# This code has been processed!\n{cell.source}"
在笔记本单元格中
# Input
>>> #| process
... print("Hello, world!")
# Output
>>> # This code has been processed!
... print("Hello, world!")
简化配置
告别对nbquarto
配置文件的困惑。这个实用功能组织处理器使用、笔记本路径和处理器常量,以提供无缝的用户体验。
documentation_source: tests
processors: [
nbquarto.processors.example:BasicProcessor,
nbquarto.processors.autodoc:AutoDocProcessor
]
processor_args:
AutoDocProcessor:
repo_owner: muellerzr
repo_name: nbquarto
高效的笔记本处理
执行nbquarto-process
命令,让配置的Processor
(s)在您的笔记本上施展魔法。所有处理过的笔记本都以qmd
文件的形式保存在您指定的输出文件夹中
nbquarto-process \
--config_file tests/test_artifacts/single_processor.yaml \
--notebook_file tests/test_artifacts/test_example.ipynb \
--output_folder docs/
重新发明nbdev
:体验nbquarto
使用nbquarto
重新理解nbdev
,它是原始项目的用户友好重制。享受明确界面的简洁性,享受最小化的抽象,享受清晰的错误消息,并欣赏对优秀的Python编码实践的遵循。
项目详情
下载文件
下载适合您平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。
源分发
构建分发
nbquarto-0.0.1.tar.gz的哈希
算法 | 哈希摘要 | |
---|---|---|
SHA256 | a647b0fa4d19340bbeaa2fc2e94dea371632c3c27810b6dddae87a9be1c5618b |
|
MD5 | 285198df79fa28ee3070ca0c375f7e6c |
|
BLAKE2b-256 | 741495931383e4eaf628c35d9e7f4315b7187c046afa94ad2ebda7426b7c7161 |
nbquarto-0.0.1-py3-none-any.whl的哈希
算法 | 哈希摘要 | |
---|---|---|
SHA256 | d66d0f444f9a4585dc9091cb5a5fc1bc60f7a417c96ae44f46a14d8cdfc5117e |
|
MD5 | 096c5620501a2d20feec720522d13011 |
|
BLAKE2b-256 | 6a8eb06ac5aec19287a0d6e6a927207faddbd26365dc4925d84b0cf8e2544eb7 |