问题标签 [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.
css - Nanoc 没有编译 css
我想使用自定义样式表路径/stylesheets/stylesheet.css
与 nanoc 一起使用,但 nanoc 不会在output
文件夹中呈现 css 文件。这是我的规则:
而且它不起作用 - 任何人都知道问题出在哪里?此外,它只生成output/stylesheet/index.html
包含我的样式表但放入我的 html 布局的文件!:(
下面是它的样子 ( output/stylesheet/index.html
):
请帮忙!
ruby - 如何为 nanoc 中的每个标签生成页面
我是 nanoc 的新手,我仍然在它周围找到我的。我能够准备好我的网站,它看起来不错,功能也很好。但我需要有一个标签区域。我能够做到这一点
但是如何为标签生成页面?因此,例如有一个名为“NFL”的标签,因此每次用户点击它时,他/她都应该被引导到http://example.com/tag/nfl
与 NFL 对应的文章列表。
我可以设置一个布局来做到这一点。但是那我应该使用什么样的逻辑呢?而且我还需要一个帮手吗?
javascript - 如何将自己的 javascript 文件添加到 nanoc?
我再次遇到 nanoc 中的文件问题。这次我想将自定义文件附加slide.js
到我的博客,但我不能(不知道为什么 - 我的路线可能有问题)。这是我的路线:
在head
我的布局部分中,我放了:(%script{:type => "text/javascript", :src => "/js/slide.js"}/
是的,它是一个 HAML)。
谁能帮我解决这个问题?将不胜感激。
php - Nanoc 的 HAML 代码中的 PHP 代码过滤器
我想在我的 nanoc 网站上制作一个联系表格,我需要在我的.haml
文件中放置一些 php 代码 - 有什么方法(过滤器可能吗?)可以轻松实现这一点,或者我必须将整个页面保存为.php
(并使用标准 html语法而不是haml?)。
或者可能有纯 Ruby 解决方案(托管在 github 上可以实现?)
请帮忙!
ruby - 尝试在 nanoc 中显示元数据时,nil:NilClass 的未定义方法“[]”
(Ruby noob)我正在使用 nanoc 生成一个站点。这是我的带有元数据的示例页面:
我知道我可以将参数提高一级,但我想在布局文件中访问它们:
但我收到以下错误:
参数被传递给布局,因为当我这样做时:
我可以看到他们。作为一个 Ruby 菜鸟,我认为我的问题有一个简单的解决方案。另外,如果您可以发布一个通过 :parameters hash 迭代的片段,我将不胜感激。
ruby - Nanoc 编译时间长
我正在使用nanoc为我的项目生成文档。我已经创建了几个文件(〜50)和布局,但目前我正在处理一个文件。奇怪的是,它在不到一秒的时间内编译了这个文件,而不是处理需要超过 20 秒的东西!
当我在之后中止该过程时:
与 CTRL+C 一致,nanoc view
我的文件编译得很好。你知道如何加快这个过程吗?nanoc 20 秒在做什么?
nanoc - 使用 nanoc 进行缓存破坏
如何使用 Nanoc 实现缓存清除?
例如,将 MD5 校验和添加到 HTML 和 CSS 文件上的所有 image/font/js/etc 资源链接。例如,如果我有index.html
and images/badger.jpg
,我希望页面上的图片链接更改为类似
假设 12345 是 badger.jpg 的正确 MD5 哈希。
ruby - Nanoc - 在编译/自动编译期间跳过文件
我正在使用 Nanoc 构建一个站点,并拥有一个文件(带有它自己的布局文件),它可以读取所有其他文件的元数据,执行一些魔法并保存文件。不幸的是,这个过程需要很长时间,使用自动编译开发其他视图也需要很长时间。是否可以将一些文件添加到不会被排入编译的忽略列表(并在编译到生产期间将它们从忽略中删除)?还是有其他方法可以实现这一目标?
.htaccess - 通过单独的文件夹和 index.html 文件中的漂亮 URL 或 .htaccess 中的规则
我有 nanoc 生成的静态站点(html + css)。它在 Apache 下工作。
我想在最后使用漂亮的 url 而不是 .html 后缀。像这样:
- http://domain.ru
- http://domain.ru/page/page1/
- http://domain.ru/page/page2/
代替
- http://domain.ru/index.html
- http://domain.ru/page/page1.html
- http://domain.ru/page/page2.html
因此,第一种方法是创建名为 page1 和 page2 的单独文件夹,并放置在 index.html 具有相应内容的文件中。当客户请求时:
http://domain.ru/page/page1/ 加载文件 page1/index.html
第二种方法是拥有这样的文件结构:
page(文件夹)
- page1.html(文件)
- page2.html(文件)
并为站点根目录中的 .htaccess 文件创建规则:
RewriteCond %{SCRIPT_FILENAME}上的
RewriteEngine !-d
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteRule ^(.+)/$ /$1.html
那么,问题是哪种方式更好?使用重写规则或陷阱可能会产生一些额外的成本吗?对于静态生成的网站,可能有一些针对此问题的良好做法。
PS:我以任何方式使用 .htaccess 文件:我需要打开 utf-8 编码,启用 404 错误处理,禁止浏览文件夹
感谢和抱歉英语不好:)
ruby - nanoc:如何将选项传递给 pandoc-ruby?
我正在尝试将 nanoc 3.5.0 与pandoc
使用pandoc-ruby
. 具体来说,我无法从我的Rules
文件中传递几个选项,以便最终调用PandocRuby.convert()
如下所示:
当我将上述调用放在自定义过滤器中时,一切正常。但是,我想指定 pandoc 选项,Rules
这样我就不必为每组选项创建一个特殊的过滤器。
默认 pandoc 过滤器被定义为函数run(content, params={})
并简单地调用PandocRuby.convert(content, params)
. params
我该如何设置才能PandocRuby.convert()
正确调用?以下指令Rules
不起作用:
第一个指令导致 Ruby 错误,第二个指令运行但给了我一个空白页,表明 pandoc 没有被正确调用。我对 Ruby 不是很熟悉,所以我目前的努力只是在黑暗中摸索。