问题标签 [metalsmith]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1273 浏览

javascript - 无法从 Handlebars 模板访问 metalsmith-collections 'path' 键?

我的模板:

渲染( this.path 未定义):

我正在使用金属匠:

在编译时,我控制台日志收集

我可以看到每个集合都有一个文件数组,每个文件都包含键“路径”。控制台日志 ->

奇怪的?我可以通过节点以编程方式访问 file.path。此外,Handlebars 能够访问 file.title 和所有其他键。在此先感谢您的帮助。

0 投票
2 回答
251 浏览

metalsmith - 如何在 metalsmith 中运行 bash 脚本

如何让 metalsmith 运行 bash 脚本?你能做到吗?

我的 build.js 非常简单,但我想在编译完所有内容后从 build 文件夹中删除一些内容。

因此,如果我在 config/cleanup.sh 中保留一个 bash 脚本,如何在 .build() 之后执行它?

0 投票
2 回答
605 浏览

collections - 金属匠系列 上一个 下一个

根据 metalsmith-collections 文档,它支持集合成员之间的“上一个/下一个”链接:

一个 Metalsmith 插件,可让您将文件组合成一个有序的集合,例如博客文章。这样,您可以遍历它们以生成索引,或在它们之间添加“下一个”和“上一个”链接。

然而,没有真正的例子说明这如何在模板方面发挥作用(我正在使用 swig,但任何例子都可以)。

0 投票
2 回答
701 浏览

node.js - 无法获得非常基本的金属匠安装来构建页面

Metalsmith 将自己描绘成一个简单得可笑的静态站点生成器。我正在尝试编写最基本的网站,只是为了让自己熟悉软件的基础知识,但我似乎无法构建。这是我的文件夹结构:

我的index.js文件:

我的index.html文件:

还有我的index.hbt模板:

我的理解是,该build命令应该查看src目录并解析它找到的任何文件,其中包含顶部的 YAML 内容。所以它应该看一下index.html,看看它使用templates/index.hbt模板渲染,基本上只是将文件移动到build/index.html. 但是当我跑步时,我node index.js什么也得不到。没有进度指示器,没有“完成构建你的东西​​!” 消息,只是一个闪烁的命令提示行。我的构建目录是空的。显然有些东西坏了,但没有要检查的日志,也没有状态消息给谷歌。我究竟做错了什么?目录中不应该至少创建一个页面build吗?

0 投票
1 回答
651 浏览

node.js - Metalsmith - 静态站点生成器 - 配置

我是Metalsmith的新手。我正在寻找在windows8中配置它。之前我使用的是Grunt js,它可以轻松快速地配置(给出干净简单的步骤)。我将JadeSass与 Grunt js 一起使用,这是我一直用于网页的非常有用的工具。现在我想在 Metalsmith 中尝试 Jade 和 Sass。我尝试了一个教程和一些 youtube 视频。还是没有收获。任何简单步骤的帮助将不胜感激。提前致谢。

注意:我尝试安装 Metalsmith,我的目录结构是

目录结构

我不确定如何保存jade & sass 文件并构建或编译。

0 投票
2 回答
447 浏览

node.js - 不要将“Jade include”文件转换为 html 文件

我正在使用metalsmith 静态站点生成器,并分别从jade/sass 构建html/css 文件。

当我编译时,我得到以下

  • .scss 文件作为 .css 文件
  • ._scss 文件不会生成为 .css 文件,但我可以将它们包含在 .scss 文件中。(包括 sass 文件)
  • .jade 文件作为 .html 文件

我对 Sass 的工作方式感到满意。但是当我将一些包含文件保存为 .jade 文件时,包含文件也会创建为 .html 文件。

例如:

被转换为

但我只想

我不希望构建目录中有多个 html 文件(不应将包含文件转换为 html 文件)。

任何帮助都感激不尽。

0 投票
1 回答
123 浏览

fullpage.js - 使用 FullPage.js 的 Metalsmith 博客

我正在尝试使用 Metalsmith 和 fullPage.js 库建立一个简单的博客。

目前我有一个问题,初始加载时部分 div 的高度大约是正确大小的 2 倍。

IE。当它最初加载控制台中的高度时,显示为 1563px。

奇怪的是,一旦我以任何方式调整浏览器窗口的大小,即。使其更大或更小,然后 div(class='section') 高度将在控制台和浏览器中调整为正确的高度,并且所有内容都再次正确布局(使用常规大小的 div 而不是超高的以前在那里。

这种初始高度不一致导致我的布局出现许多对齐问题,例如上一个/下一个箭头以及 div 内容。

这是这个项目的我的公共 git 存储库的链接。

如果你想在本地运行它,你可以把它拉下来,运行 npm install,然后运行 ​​nf start。然后,您将能够在 localhost/3000 访问它。

如果有人有任何建议,将不胜感激。

谢谢。

0 投票
1 回答
591 浏览

path - Metalsmith:如何使用 path()?

Metalsmith 的文档对 path() 函数没有太多解释:#path(paths...): Resolve any amount of paths...相对于工作目录。这对于想要从另一个目录(例如 ./templates)读取额外资产的插件很有用。而已。这是文档的总和。

预计会有哪些论据,它们会做什么?

我要做的是:根据不同的Metalsmith插件处理不同的源目录。这似乎需要我在单独的源目录下创建多个模板/目录。如果我希望 metalsmith-templates 在 ../templates 而不是 ./templates 下查找模板,我会假设 path() 可以做到这一点......但在没有任何有意义的文档的情况下,我无法预测如何做它,甚至它是否会起作用(缺少阅读源代码)。

0 投票
1 回答
351 浏览

haml - 如何在 metalsmith-layouts 中使用 haml 进行局部处理

如何在 metalsmith 布局中使用带有 haml 的部分?

文档列出{{> nested/footer }}了在车把中使用部分的一种方式,但我无法为 haml 找到一个等价物。

0 投票
1 回答
529 浏览

reactjs - metalsmith 静态站点生成器(带有 react jsx)

我真的很想使用 reacts jsx 模板/组件创建静态站点生成器。杰基尔和中间人必须被黑才能允许这样做......

但我发现http://www.metalsmith.io带有插件:https ://github.com/yeojz/metalsmith-react-templates

到目前为止,我一直在关注:

和 jsx 文件:

当我运行 node build.js 时,它会出错:

在此处输入图像描述

metalsmith-react-templates 示例似乎已过时,因此存在问题吗?

尝试过的建议@: