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

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

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

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


当前回答

GitHub有一个Markdown API,你可以使用。

其他回答

我最近做了你想要的东西,因为我需要从Markdown文件生成文档,GitHub风格非常好。试一试。它是用Node.js编写的。

gfm

也许这可能会有所帮助:

gem install github-markdown

没有文档,但我从咕噜的文档里找到的。查看rubydoc.info,看起来你可以使用:

require 'github/markdown'  
puts GitHub::Markdown.render_gfm('your markdown string')

在你的Ruby代码中。你可以在脚本中轻松地将其包装成命令行实用程序:

#!/usr/bin/env ruby

# render.rb
require 'github/markdown'

puts GitHub::Markdown.render_gfm File.read(ARGV[0])

使用./render执行它。rb路径/ /我/减价/ file.md。注意,在没有消毒的生产中使用是不安全的。

最新的添加,但showdownjs有一个CLI工具,您可以使用它将MD解析为HTML。

改进@barry- state的解决方案。将这段代码插入~/.bashrc中

function mdviewer(){
  pandoc $* | lynx -stdin
}

然后,我们可以从命令行快速查看该文件。也可以很好地工作在SSH/Telnet会话。

mdviewer README.md

为此,我设法使用了一行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,这似乎是失败的答案。