现在有这样一个需求,这里的所有文件包括html、css、js、md等等任何一种文件。我需要的仅仅是希望hexo在generator的时候简单的将这个目录copy到public目录中而不做任何处理。
在官网上有看到skip_render这个配置,但是毫无示例,不知如何下手。
望知道如何做的告知。 @tommy351
http://xuanwo.org/2014/08/14/hexo-usual-problem/
通过另外一种方法实现了,你可以Ctrl+F搜索在主目录下添加README.md文件或者html文件
@Xuanwo 这方法我知道,不过太搓太猥琐。还是想要一种比较normal的方法来做。
skip_render这个参数,我看了下源码,发现做的事仅仅是跳过检测,除此之外貌似没有做其他的事情。
我去看了一下官网的配置,猜测应该是source/norender这个样子,你试试看?
@Xuanwo 我在主题的source目录下添加了README.md,但还是渲染成了README.html,并删除了README.md
尝试了X种可能之后,我总算研究出来了= =。
比如说现在source下有两个文件夹,一个是_post,一个是haha,里面各有一个名为hello-world.md的文档,然后我的skip_render参数为:
skip_render: haha/*.md
那么,hexo g之后的结果为:
INFO Files loaded in 503 ms
INFO Generated: js/script.js
INFO Generated: fancybox/jquery.fancybox.pack.js
INFO Generated: fancybox/jquery.fancybox.js
INFO Generated: fancybox/jquery.fancybox.css
INFO Generated: fancybox/helpers/jquery.fancybox-thumbs.js
INFO Generated: fancybox/helpers/jquery.fancybox-thumbs.css
INFO Generated: fancybox/helpers/jquery.fancybox-media.js
INFO Generated: fancybox/helpers/jquery.fancybox-buttons.js
INFO Generated: fancybox/helpers/jquery.fancybox-buttons.css
INFO Generated: fancybox/helpers/fancybox_buttons.png
INFO Generated: fancybox/[email protected]
INFO Generated: fancybox/fancybox_sprite.png
INFO Generated: fancybox/fancybox_overlay.png
INFO Generated: fancybox/[email protected]
INFO Generated: fancybox/fancybox_loading.gif
INFO Generated: fancybox/blank.gif
INFO Generated: css/style.css
INFO Generated: css/images/banner.jpg
INFO Generated: css/fonts/fontawesome-webfont.woff
INFO Generated: css/fonts/fontawesome-webfont.ttf
INFO Generated: css/fonts/fontawesome-webfont.svg
INFO Generated: css/fonts/fontawesome-webfont.eot
INFO Generated: css/fonts/FontAwesome.otf
INFO Generated: haha/hello-world.md //看这里!看这里!
INFO Generated: 2015/03/26/hello-world/index.html
INFO Generated: archives/index.html
INFO Generated: archives/2015/index.html
INFO Generated: archives/2015/03/index.html
INFO Generated: index.html
INFO 29 files generatd in 1.28 s
也就是说,skip_render参数的使用需要注意两点:
source_dir的位置,一般来说,就是以source为根的位置*.html可以忽略所有html文档,hello-wordl.md的话,就能忽略掉名字为hello-wordl.md的文件。以上。
updated1:
skip_render使用了minimatch,开始匹配的位置是基于你的source_dir的,一般来说,是你的source文件夹下。下面我分别列举几种常见的情况进行说明:
_请注意yml中的文件格式,输入单个数据请注意空格,输入数组请进行缩进_
skip_render: test/*skip_render: test/*.htmlskip_render: test/**skip_render:
- `test1/*.html`
- `test2/**`
Thanks!
我下班回去试试,不过skip_render参数好像3.0.0之后才支持吧,目前我还是用的2.8.3。
@Xuanwo 官网文档太简略的锅。
解决了就close掉吧,遇到相似问题再ref就是。
其实,也不能怪官方文档,这玩意儿想说清楚确实有点。。。费劲。。
@Xuanwo 您好,我也遇到这个问题。我的需求是:展示一些前端小项目,所以我需要跳过全部source一整个文件夹。
但是skip_render: project 这个怎么配置都不行,试了:source/project project project/* project/*.*等各种配置,都提示404错误。 然后把文件夹下html文件 开头添加一个layout:false反而管用。
有什么办法不? :blush:
你可以尝试一下project/**
我之前的回复已经更新了~
更新最新版hexo 后,需要跳过多个目录或者文件:
skip_render: ['*.html', demo/**, test/*]
亲测可用,自用~
怎样跳过 任何以 "abc"开头的文件和文件夹
_posts/**/abc** 不起作用
Most helpful comment
尝试了X种可能之后,我总算研究出来了= =。
比如说现在
source下有两个文件夹,一个是_post,一个是haha,里面各有一个名为hello-world.md的文档,然后我的skip_render参数为:skip_render: haha/*.md那么,hexo g之后的结果为:
也就是说,skip_render参数的使用需要注意两点:
source_dir的位置,一般来说,就是以source为根的位置*.html可以忽略所有html文档,hello-wordl.md的话,就能忽略掉名字为hello-wordl.md的文件。以上。
updated1:
skip_render使用了minimatch,开始匹配的位置是基于你的source_dir的,一般来说,是你的source文件夹下。下面我分别列举几种常见的情况进行说明:_请注意yml中的文件格式,输入单个数据请注意空格,输入数组请进行缩进_
skip_render: test/*skip_render: test/*.htmlskip_render: test/**