是否有一个简单的,独立的,可移植的,现有的Mustache for Windows发行版,可以让我在mustache(1)手册中完全按照指定(或尽可能接近)调用Mustache?
cat data.yml template.mustache | mustache
我找不到任何解释如何实际获取一个名为mustache
的可执行文件以这种方式使用胡子 - 在任何平台上,虽然我现在主要对Windows感兴趣。
据我所知,胡子主页上列出的胡子的各种实现主要是库,而不是可以这种方式调用的独立应用程序。
理想情况下,我正在寻找的东西是:
如果没有这个,那么我有兴趣尽可能接近 - 例如如果我必须预安装python但不需要运行连接到互联网的安装程序。
我准备承认“没有预先安装”,如果我有一个地狱的猫有机会已经在我们的组织打包(例如python或ruby),而不是个别图书馆。
好吧,如果你在Windows机器上安装了Groovy,你可以运行这个脚本:https://gist.github.com/agentgt/1bc5f14e62bce11e2ceb。您不需要下载任何其他内容,因为脚本会自动下载正确的依赖项,因此不会出现故障。
Groovy版本比Ruby版本略微更多的跨平台(尽管有人可能会争论),尽管它需要Java并且速度较慢。如果您的JVM商店通常不是问题。
您可以使用上面的脚本并将其转换为Java并创建单个可执行Jar,其中包含可在Java安装的任何位置使用的所有依赖项。如果有兴趣只是添加评论,我会做一个快速的项目。
(完全披露:我是这个项目的维护者。)
我写过mo,它是胡子模板系统的Bash端口。它的主要警告是它使用环境变量而不是从.json
文件中读取。
$ export name="John Doe"
$ cat template.mo
Hello {{name}}.
{{^name2}}The variable name2 is not defined.{{/name2}}
$ mo template.mo
Hello John Doe.
The variable name2 is not defined.
它也适用于数组,但Bash无法将数组导出到其他函数。因此,要使数组工作,您需要将另一个文件或源mo
本身发送到环境中,然后调用mo
函数。
存储库包含测试和示例,以帮助说明如何使用此工具。