问题标签 [nanoc]
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.
javascript - Nanoc 规则文件未处理我的 JavaScript 目录
我的 nanoc 内容目录结构:
从我的规则文件中提取:
命令行结果:
我咨询了如何将自己的javascript文件添加到nanoc?. 我似乎设置正确,但我的结果却相反。
我看不到错误。有人有想法么?
mime-types - 使用“nanoc 视图”更改预览站点的默认内容类型
我在 nanoc 的文件中使用以下路径生成没有任何文件类型扩展名的 HTMLRules
文件:
所以文件/content/blog/hello-world.html
生成为/output/blog/hello-world
,导致 URL 路径/blog/hello-world
。
当使用 nanoc 的内置预览服务器(nanoc view
据我了解,它使用 adsf 和 WEBrick)时,这些无扩展名的 HTML 文件被解释为纯文本。
对于使用 进行预览nanoc view
,如何text/html
为没有文件类型扩展名的文件设置默认内容类型(即 )?
(发布此站点时,我在 Apache 的.htaccess
文件中设置了正确的内容类型,以便将文件解释为 HTML,但 WEBrick/adsf 似乎不支持.htaccess
。)
nanoc - 一个主模板还是多个模板?
我在网站上有一组页面是使用静态生成的nanoc
;每个组代表一种文档类型并拥有自己的模板。每个组模板都有点不同。例如,主模板:
然后其他一些模板可能没有news
部分,但会有footer
:
等等。什么会更好:
[A] 有一个主模板,然后有一个标志来打开/关闭某些导入
或者
[B] 拥有许多包含常见 html 块的较小模板?
nanoc - 如何在预处理器和规则之间创建全局 nanoc 变量
@foo
我在预处理器块中创建变量。它在预处理时是全局的,即不同的方法可以访问它。但是,在编译时,即在规则中,此变量不可用。
目前,我使用@config
map 来存储这些变量。如何创建将在不使用@config
地图的情况下共享的全局变量?
nanoc - How to invoke my code before/after the site compilation in nanoc?
I have some additional processing, and would like to generate some javascript files based on existing content.
Therefore, I need my code to be called after the site compilation and generation, so I can create new files in the output.
How to do that in nanoc? Thank you!
git - 将 nanoc 用于 github 页面
我尝试使用nanoc
在 github 页面上生成静态博客。我找到了几个关于它的教程和博客文章,但它们似乎都过时了并且不起作用。
这就是我所做的:
- 将 nanoc 安装到目录中
/MYNAME.github.io
- 通过执行编译默认静态站点
nanoc
- 创建一个名为的 Github 存储库
MYNAME.github.io
在我的目录中,我执行以下命令:
混帐初始化
混帐添加。
git commit -m "初始提交"
git 远程添加源https://github.com/MYNAME/MYNAME.github.io.git
git push -u 起源大师
然后此目录中的所有文件都将上传到存储库。
但是,当我转到http://MYNAME.github.io时,我只会收到 404 错误。但是,当我到达http://MYNAME.github.io/output/时,我看到了起始页。
我应该只推送输出目录吗?
此外,与我在本地运行 nanoc 服务器时相比,起始页真的很难看。
node.js - 与 nanoc 链接的 nw 命令
我正在使用 OSX 并安装了 NWjs,当我尝试使用 运行站点时nw ./
,它会出现这样的错误:
警告:该
watch
命令已弃用。请考虑guard-nanoc
改用(参见https://github.com/nanoc/guard-nanoc)。
错误:当前工作目录似乎不是 nanoc 站点。
我有点困惑,我正在运行 nw,但为什么它运行 ruby?那是出于某种原因,nw 与 nanoc 相关联吗?我应该删除 nanoc 吗?如果是这样,我该怎么办?
我试过gem uninstall nanoc
了,在那之后,我nw
在终端上运行,错误是:
找不到命令:nanoc
似乎nw
与nanoc
.
ruby - 动态创建 Nanoc 规则和编译指令
我想从帮助模块生成规则 DSL。Rules
我有自定义博客助手,我希望它自动生成 RSS 提要,因此只要存在特定的元数据,我就不必在文件中指定任何编译和路由规则。
所以可以说我的博客news.erb
和news\*.md
目录中有我的博客。Erb 文件在其元数据部分中有博客配置(要显示的文章数量、排序等)。在预处理中,我有create_blog
根据\page\N
我在news.erb
. 如果此元数据包含rss: true
部分,我希望该create_blog
函数还注册 2 个附加规则(如果之前未定义)和 1 个附加文件/feeds/news.xml
:
我可以生成文件,但为了保持站点模块化,我想在其create_blog
自身中创建上述规则。这允许我稍后,如果我想删除博客,只需注释掉模块而不更改Rules
文件。
css - 用于 SCSS 的 Nanoc 过滤器
我正在使用 nanoc 和 ruby 编写一个站点,并且我想使用 SCSS。但我有一点问题。无论我尝试什么,我都无法让我的 SCSS 文件转换并输出为编译后的 CSS。它要么引发错误,要么以完全相同的文件类型出现。我的 Ruby 规则文件和目录结构如下,请帮忙!
这是我的目录结构:
gitlab - Gitlab pages & nanoc -> Errno::ENOENT: 没有这样的文件或目录
我正在尝试使用通过 nanoc 编译的静态网站的 gitlab 页面。当我将代码提交到我的 gitlab 存储库时,运行器无法编译它。我收到以下错误消息:
跑步者输出:
.gitlab-ci.yml