我想知道是否有一个命令行实用程序可以将GitHub风味Markdown文件并将其呈现为HTML。

我正在使用GitHub维基创建网站内容。我已经在服务器上克隆了存储库,然后想把它处理成常规HTML。对我来说,重要的是,在GitHub上出现的内容正是我的网站应该如何寻找的。我也非常喜欢使用带~~~的围栏块,所以我宁愿不使用标准Markdown语法。

我已经看了一下JavaScript的实时预览,我想我可以把它挂钩到Node.js,但他们说它已经被弃用了。我已经查看了红地毯存储库,但它看起来不像有命令行界面。

我选择了自己的解决方案,但是,由于这里没有一个解决方案明显比其他解决方案更好,所以我将不选择答案。


当前回答

为此,我设法使用了一行Ruby脚本(尽管它必须放在单独的文件中)。首先,在每台客户端机器上运行这些命令一次,你将从下面的机器推送文档:

gem install github-markup
gem install commonmarker

接下来,在客户端镜像中安装这个脚本,并将其命名为render-readme-for-javadoc.rb:

require 'github/markup'

puts GitHub::Markup.render_s(GitHub::Markups::MARKUP_MARKDOWN, File.read('README.md'))

最后,像这样调用它:

ruby ./render-readme-for-javadoc.rb >> project/src/main/javadoc/overview.html

ETA:这不会帮助你与stackoverflow风味Markdown,这似乎是失败的答案。

其他回答

使用标记。它支持GitHub调味Markdown,可以作为Node.js模块和从命令行使用。

一个例子是:

$ marked -o hello.html
hello world
^D
$ cat hello.html
<p>hello world</p>

参见https://softwareengineering.stackexchange.com/a/128721/24257。


如果你对我们(Github)如何渲染Markdown文件感兴趣,你可能想看看Redcarpet,我们的Ruby接口到Sundown库。

Ruby-script,使用Redcarpet,将是“命令行工具”,如果你有本地Ruby

阅读自述文件。md文件在终端我使用:

pandoc README.md | lynx -stdin

Pandoc以HTML格式输出,Lynx将其呈现在您的终端中。

它工作得很好:它充满了我的终端,快捷方式如下所示,我可以滚动浏览,链接也起作用了! 虽然只有一种字体大小,但颜色+缩进+对齐方式弥补了这一点。

安装:

Apt: sudo Apt -get install pandoc lynx Nix: Nix -shell -p pandoc lynx

有一个非常好的和简单的工具来浏览GFM Markdown文档:

GFMS - Github调味Markdown服务器

它是简单和轻量级的(不需要配置)HTTP服务器,您可以在任何包含标记文件的目录中启动以浏览它们。

特点:

全GFM Markdown支持 源代码语法突出显示 浏览文件和目录 漂亮的输出(以及可配置的CSS样式表) 导出为PDF

pip3 install --user markdown
python3 -m markdown readme.md > readme.html

它不能处理GitHub扩展,但总比没有强。我相信您可以扩展模块来处理GitHub的添加。