Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/iphone/43.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Filter 如何编写Pandoc筛选器以删除正文文本_Filter_Pandoc - Fatal编程技术网

Filter 如何编写Pandoc筛选器以删除正文文本

Filter 如何编写Pandoc筛选器以删除正文文本,filter,pandoc,Filter,Pandoc,我有一大套用Pandoc markdown编写的注释,我希望能够将其转换为beamer幻灯片,其中只有标题、列表、表格和公式可以保存。所以我想删除所有的纯文本。(我知道这并不是一个很好的演讲,但这只是一个开始。) 我原以为下面的方法行得通,但我不理解pandocfilter对象 我使用以下命令行 pandoc -t beamer -o filter.pdf --filter=.\filter.bat --slide-level=2 filter.md 其中filter.bat是使脚本可执行的包

我有一大套用Pandoc markdown编写的注释,我希望能够将其转换为beamer幻灯片,其中只有标题、列表、表格和公式可以保存。所以我想删除所有的纯文本。(我知道这并不是一个很好的演讲,但这只是一个开始。)

我原以为下面的方法行得通,但我不理解pandocfilter对象

我使用以下命令行

pandoc -t beamer -o filter.pdf --filter=.\filter.bat --slide-level=2 filter.md
其中filter.bat是使脚本可执行的包装器

python filter.py %*
filter.py是一个简单的脚本

"""
Pandoc filter to remove text, but leave headers, equations, and lists
"""

from pandocfilters import toJSONFilter, Str, Para

def noText(key, value, format, meta):
  if key == 'Para':
    return Para([Str ""])

if __name__ == "__main__":
  toJSONFilter(noText)
而filter.md是一个简单的pandoc标记文件

---
title: Testing Filters
author: Richard Herron
---

# One

Weathered 3D-printed shoes faded post-bicycle man smart-render-farm soul-delay pre-crypto-network table papier-mache. Geodesic fetishism futurity table refrigerator silent boat industrial grade decay euro-pop. Paranoid vinyl shanty town Tokyo long-chain hydrocarbons sprawl drone pistol office DIY hotdog nano-footage. Math-spook shrine monofilament decay dome meta-rifle soul-delay corrupted fetishism cardboard artisanal carbon denim human table. 

## Two

Kowloon tattoo euro-pop tube ablative tiger-team voodoo god digital bomb man bicycle vinyl monofilament papier-mache A.I. San Francisco. Cartel Shibuya alcohol stimulate vehicle wonton soup camera dissident order-flow boat systemic concrete pre-vinyl. Range-rover spook tiger-team computer singularity Shibuya convenience store urban tower smart-dolphin bicycle skyscraper carbon tank-traps systemic. Long-chain hydrocarbons assault vehicle motion carbon girl sentient systemic otaku rifle dead realism. Free-market franchise Chiba 3D-printed beef noodles meta-grenade construct rebar. 

- One
- Two
- Three

## Two B

Franchise spook sprawl network lights Tokyo plastic grenade. Corrupted systemic paranoid singularity semiotics shoes numinous military-grade kanji j-pop. Modem table bicycle-space market corporation tattoo advert car youtube soul-delay. Euro-pop grenade rifle long-chain hydrocarbons ablative media neon bridge courier 8-bit physical savant advert boy neural tanto. 
但是我得到了以下错误

  File "filter.py", line 9
    return Para([Str ""])
                      ^
SyntaxError: invalid syntax

我在窗户上。我只能在*nix上使用过滤器吗?

我认为这只是语法问题<代码>返回段落([Str(“”))应该work@scoa谢谢你说得对。但现在我又回到了原来的状态,并不断收到
pandoc:Failed reading:satisfyElem
错误。我认为Windows和pandoc过滤器不会混合使用,所以我正在使用Linux来实现这一点。谢谢我认为这只是语法问题<代码>返回段落([Str(“”))应该work@scoa谢谢你说得对。但现在我又回到了原来的状态,并不断收到
pandoc:Failed reading:satisfyElem
错误。我认为Windows和pandoc过滤器不会混合使用,所以我正在使用Linux来实现这一点。谢谢