首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >lineNumbers在Reveal.js代码块中使用pandoc -向下转换

lineNumbers在Reveal.js代码块中使用pandoc -向下转换
EN

Stack Overflow用户
提问于 2020-08-02 12:35:13
回答 1查看 907关注 0票数 1

如何才能在使用pandoc创建的Reveal.js幻灯片显示中,在代码块的左侧显示从减价文档中显示的行号?

我试过以下几种方法:

代码语言:javascript
复制
---
title:  'Display Code-block Line Numbers'
date: 'Aug 2020'
---

--------

~~~ { .python .number-lines startFrom="1" data-line-numbers="3,4-5" }

def main():
  print( "hello pan" )

if __name__ == '__main__:
  main()

~~~

--------

对于pandoc,使用以下命令:

代码语言:javascript
复制
pandoc -s -i -t revealjs --section-divs -o slides.html slides.md

我还尝试了对fenced_code_attributes{ .python .number-lines }{ .python .numberLines }pandoc命令的各种修改:删除-i标志并尝试一些--variable命令。

另外,以下内容也不起作用:https://stackoverflow.com/a/55845381/5060792

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-08-04 10:33:37

Reveal.js使用highlight.js和highlightjs-line-numbers.js v2.6进行代码突出显示和行编号。正因为如此,

  • data-line-numbers在行编号的<code>元素中是预期的
  • startFrom选项,或者更确切地说,<code>元素中的data-ln-start-from属性不能工作(当前),因此这个特性被添加到荧光the行号s.js v2.8中。

默认情况下,pandoc的代码块HTML输出的工作方式与reveal.js的预期不同。例如,将有围栏的代码数据属性放入包装<div>中,reveal.js在其中找不到它们。您将需要编写原始HTML或使用过滤器更改输出,以使用reveal.js‘代码表示特性 (类似行编号)。

正如@tarleb上面评论的那样,我编写了一个lua过滤器,它适应pandoc的HTML输出以支持这些特性:https://github.com/pandoc/lua-filters/tree/master/revealjs-codeblock

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/63216061

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档