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

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

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

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


当前回答

我找到了一个网站,可以帮你做到这一点:http://tmpvar.com/markdown.html。粘贴你的Markdown,它会为你显示它。它似乎工作得很好!

然而,它似乎不能处理代码的语法高亮显示选项;也就是说,~~~ruby特性不起作用。它只打印‘ruby’。

其他回答

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

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

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

mdviewer README.md

GitHub(从那时起)开发了一个很好的模块化文本编辑器Atom(基于Chromium,并使用Node.js模块作为包)。

一个默认的预安装包Markdown预览让您显示您的预览在一个单独的选项卡使用Ctrl + Shift + M。

我还没有测试它的完整语法,但由于它来自GitHub,如果预览的语法与他们的不同(使用~~~工作的栅栏块),我会非常惊讶。

现在,虽然它在技术上不是基于命令行,但它使用Node.js并输出到基于dom的渲染器,这可能会帮助任何试图在基于Node.js的web服务器上渲染基于GitHub语法的HTML的人,或者只是编辑她/他的README。md离线。

带浏览器的Pandoc对我来说很好。

用法:cat README。Md | pandoc -f markdown_github |浏览器

安装(假设你使用的是Mac OSX):

安装pandoc $ brew安装浏览器

Debian/Ubuntu: apt-get安装pandoc浏览器

我还没有找到一个快速和简单的方法,github风味Markdown,但我已经找到了一个稍微更通用的版本- Pandoc。它可以从/转换为多种格式,包括Markdown, Rest, HTML和其他格式。

我还开发了一个Makefile来将所有。md文件转换为。html(在很大程度上是Writing, Markdown和Pandoc的例子):

# 'Makefile'
MARKDOWN = pandoc --from gfm --to html --standalone
all: $(patsubst %.md,%.html,$(wildcard *.md)) Makefile

clean:
    rm -f $(patsubst %.md,%.html,$(wildcard *.md))
    rm -f *.bak *~

%.html: %.md
    $(MARKDOWN) $< --output $@

一种“快速和肮脏”的方法是使用wget实用程序下载wiki HTML页面,而不是克隆它。例如,这是我从GitHub下载Hystrix wiki的方式(我使用的是Ubuntu Linux):

 $ wget -e robots=off -nH -E -H -k -K -p https://github.com/Netflix/Hystrix/wiki
 $ wget -e robots=off -nH -E -H -k -K -I "Netflix/Hystrix/wiki" -r -l 1 https://github.com/Netflix/Hystrix/wiki

第一个调用将下载wiki条目页面及其所有依赖项。第二个将调用它的所有子页面。您现在可以通过打开Netflix/Hystrix/wiki.1.html浏览维基。

注意,对wget的两次调用都是必需的。如果您只运行第二个,那么您将错过正确显示页面所需的一些依赖项。