在不同纯文本格式之间进行转换的工具

软件推荐 html 降价 纯文本 文本处理 文档转换器
2021-10-16 22:00:44

有几种类型的纯文本结构/格式化语法,例如:

  • 降价
  • 媒体维基
  • XWiki
  • HTML

是否有通用工具(比 reg-ex 更容易/更合适)来帮助定义和执行转换规则?

2个回答

Pandoc(许可证:GPL)可以导入:

  • 降价
  • 重构文本
  • 纺织品
  • HTML
  • 文档书
  • 乳胶
  • MediaWiki 标记
  • OPML
  • 黑线鳕标记

并转换为这些和其他各种格式(可以使用 Lua 添加自定义格式。)

它是一个独立的命令行程序,并带有一个 Haskell 库。

您可以在线测试:http: //johnmacfarlane.net/pandoc/try/

使用 txt2tags ( https://txt2tags.org/ ),您可以导出至少 20 种不同的格式,包括 rtf(富文本格式)、latex、html、wikipedia、creole、dokuwiki、重组文本、markdown、spip、AsciiDoc。 ..

txt2tags ( https://wiki.txt2tags.org/index.php/Main/Html2wiki )有一个 html 导入器,所以你可以用它做任何事情。

(编辑)为了在我的回答中更完整,是的,我使用 txt2tags 好几年了(至少 7 或 8 年)。

我能想到的唯一缺点是它不像 Markdown 那样为人所知,但它更老(自 2001 年以来)并且在我看来更好(更可定制、更可扩展、更合乎逻辑且语法不碎片化)。

它对上面提到的所有导出都有一个 python 2 实现,以及一个仅用于 html 导出的 php 实现。

您可以使用新的语法定义模块或正则表达式创建特殊的导出规则。首先,这很简单,例如这里是 html 模块中粗体的导出规则:

'fontBoldOpen'         : '<B>'            ,
'fontBoldClose'        : '</B>'           ,

使用正则表达式,您可以在文档中或作为配置文件执行此操作。

例如,要在 html 输出中使用 strong 而不是 b,您可以创建以下规则:

%!postproc: '<b>' '<strong>'
%!postproc: '</b>' '</strong>'