繁体   English   中英

仅显示从Jupyter Notebook用nbconvert创建的pdf中的特定(带标签)输入单元格

[英]Show only specific (tagged) input cells in pdf created with nbconvert from jupyter notebook

在各种Jupyter笔记本电脑中,我想手动指定要显示的输入单元格,并且在将其转换为pdf或tex文档时默认情况下不显示任何输入单元格。

通过使用以下乳胶模板,我已经实现了不显示任何输入单元的效果:

((*- extends 'article.tplx' -*))
% Disable input cells
((* block input_group *))
((* endblock input_group *))

但是现在,当尝试添加单元格标签然后显示或不显示它们时,我感到困惑。 我试过了

% Disable input cells if there is no "show" tag, else show
((*- block input_group -*))
    ((*- if 'show' in cell.metadata.get('tags', []) -*))
        ((*- block in_prompt -*))((*- endblock in_prompt -*))
        ((*- block input -*))((*- endblock input -*))
    ((*- else -*))
    ((*- endif -*))
((*- endblock input_group -*))

但它总是删除所有输入单元格,也带有“ show”标签的单元格。

在写这个问题时,我意识到我从错误的文件中复制了第二个代码块中的第4行和第5行。 它来自null.tplx (骨架)模板,我应该在大多数情况下从那里使用style_ipython.tplx

我想出了以下代码,该代码现在实际上删除/隐藏/隐藏了所有带有“ show”标签的输入单元格:

% Disable input cells if there is no "show" tag, else show
((*- block input_group -*))
    ((*- if 'show' in cell.metadata.get('tags', []) -*))
        ((( add_prompt(cell.source | highlight_code(strip_verbatim=True), cell, 'In ', 'incolor') )))
    ((*- else -*))
    ((*- endif -*))
((*- endblock input_group -*))

但是,它仅适用于ipython样式,不适用于python样式...也许有人可以在这里提供帮助?

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM