将Jupyter笔记本导出为Hugo兼容格式
nbhugoexporter的Python项目详细描述
#将笔记本导出到Hugo Compatible Markdown
您还需要向hugo添加一些shortcode定义
。您可以根据自己的意愿定制这些文件,但一个简单的开始方法是从hugo项目的根目录运行以下文件:
````
mkdir-p layouts/shortcodes
for x in cell input;do for y in start end;
do curl-l https://github.com/jbandlow/nb嫒hugo嫒exporter/raw/master/resources/jupyter嫒x嫒y.html>;layouts/shortcodes/jupyter'$x\$y.html;
完成;完成;
`````
生成的元数据将包括
``
--
标题:nb file
日期:<;nb_file的最后文件修改时间。ipynb>;
草稿:true
…
--
```
以及您指定的任何其他元数据。要设置元数据,请转到编辑->;
从笔记本中编辑笔记本元数据,然后使用所需的键和值添加
````
“hugo”:{
“key1”:value1,
…
}
```
。“title”值默认为
笔记本文件名,snake大小写替换为大写字母。所有自动生成的
值(`title`,`date`,和“草稿”可以在笔记本
元数据中重写。
>生成的标记将包含以下雨果快捷方式:
``
{{%jupytter{%jupytter{%jupytter{%jupytter{%jupytter{%jupytter{%jupytter{%jupytter{%jupytter{%jupytter{%jupytter{%jupytter{%jupytter{%jupytter{%jupytter{%jupytter{%jupytter{%jupytter{%jupytter{%jupytter{%jupytter{%jupytter``
在你期望的地方。`[cell-type]`是jupyter单元类型,例如,
“markdown”、“code”等。代码本身将具有github风格的代码栅栏:
```````
``python
import this
`````
`````````
在hugo配置文件中将“pygmentscodefences”设置为“true”,以使用
语法高亮。请参阅[hugo
文档](https://gohugo.io/content-management/syntax-highlighting/)了解更多有关此的信息。
已启用。
\css配置
这个项目的主要设计目标是生成可以根据我的特殊爱好设计的标记。
快捷键只用于生成“div”,而相应的类则易于设置样式。有了这个repo中的缺点,生成的html
看起来像:
```
<;div class="jupyter-cell [cell_type]">
<;div class="jupyter-input"> ... </div>
…
<;div>;
````
与语法高亮器的样式一致,这可以使
看起来或多或少像jupyter自己的主题,或者像您所希望的任何东西。请注意,导出器当前添加了一些不必要的空行。这些
可以用
```
清除。jupyter cell p:empty{display:none;}
```
您应该[在页面上包含mathjax脚本](
https://gohugo.io/content management/formats/enable mathjax)。
请注意,`nbconvert--to hugo`解决了[下划线问题](
https://gohugo.io/content management/formats/标记问题)以及在数学模式下简单引用所有下划线的“乏味”解决方案。因此,不需要在
javascript中“修复”标记的mathjax配置脚本,也不需要在那篇文章中描述的自定义css。与Jupyter笔记本和雨果一起开心地写博客。
,以及用于构建令人难以置信的工具的团队。
这不完全符合我的需要,
但可能适合你的需要。
您还需要向hugo添加一些shortcode定义
。您可以根据自己的意愿定制这些文件,但一个简单的开始方法是从hugo项目的根目录运行以下文件:
````
mkdir-p layouts/shortcodes
for x in cell input;do for y in start end;
do curl-l https://github.com/jbandlow/nb嫒hugo嫒exporter/raw/master/resources/jupyter嫒x嫒y.html>;layouts/shortcodes/jupyter'$x\$y.html;
完成;完成;
`````
生成的元数据将包括
``
--
标题:nb file
日期:<;nb_file的最后文件修改时间。ipynb>;
草稿:true
…
--
```
以及您指定的任何其他元数据。要设置元数据,请转到编辑->;
从笔记本中编辑笔记本元数据,然后使用所需的键和值添加
````
“hugo”:{
“key1”:value1,
…
}
```
。“title”值默认为
笔记本文件名,snake大小写替换为大写字母。所有自动生成的
值(`title`,`date`,和“草稿”可以在笔记本
元数据中重写。
>生成的标记将包含以下雨果快捷方式:
``
{{%jupytter{%jupytter{%jupytter{%jupytter{%jupytter{%jupytter{%jupytter{%jupytter{%jupytter{%jupytter{%jupytter{%jupytter{%jupytter{%jupytter{%jupytter{%jupytter{%jupytter{%jupytter{%jupytter{%jupytter{%jupytter{%jupytter``
在你期望的地方。`[cell-type]`是jupyter单元类型,例如,
“markdown”、“code”等。代码本身将具有github风格的代码栅栏:
```````
``python
import this
`````
`````````
在hugo配置文件中将“pygmentscodefences”设置为“true”,以使用
语法高亮。请参阅[hugo
文档](https://gohugo.io/content-management/syntax-highlighting/)了解更多有关此的信息。
已启用。
\css配置
这个项目的主要设计目标是生成可以根据我的特殊爱好设计的标记。
快捷键只用于生成“div”,而相应的类则易于设置样式。有了这个repo中的缺点,生成的html
看起来像:
```
<;div class="jupyter-cell [cell_type]">
<;div class="jupyter-input"> ... </div>
…
<;div>;
````
与语法高亮器的样式一致,这可以使
看起来或多或少像jupyter自己的主题,或者像您所希望的任何东西。请注意,导出器当前添加了一些不必要的空行。这些
可以用
```
清除。jupyter cell p:empty{display:none;}
```
您应该[在页面上包含mathjax脚本](
https://gohugo.io/content management/formats/enable mathjax)。
请注意,`nbconvert--to hugo`解决了[下划线问题](
https://gohugo.io/content management/formats/标记问题)以及在数学模式下简单引用所有下划线的“乏味”解决方案。因此,不需要在
javascript中“修复”标记的mathjax配置脚本,也不需要在那篇文章中描述的自定义css。与Jupyter笔记本和雨果一起开心地写博客。
,以及用于构建令人难以置信的工具的团队。
这不完全符合我的需要,
但可能适合你的需要。