我使用名为“白板”- https://github.com/mpociot/whiteboard的hexo.js开发了一个开源API文档工具。
现在,它的工作方式是克隆存储库,修改source文件夹内容,然后运行hexo serve或hexo generate来创建输出结果。
现在我想提供一个nodeJS模块,这样我就可以像这样使用API文档工具:
var Whiteboard = require('whiteboard-api');
Whiteboard.generate(source_folder, target_folder);我的问题是,hexo希望themes文件夹和source文件夹在同一个目录中。但在我的例子中,主题将位于包含我的包的node-modules文件夹中,而源文件夹可能位于完全不同的位置。
有没有人已经构建了类似的东西?
基本上,我希望能够像这样调用hexo:
var hexo = new Hexo(DIRECTORY_CONTAINING_THE_THEME, {
config: DIRECTORY_CONTAINING_THE_THEME + '_config.yml',
source_dir: CUSTOM_SOURCE_DIRECTORY,
public_dir: CUSTOM_PUBLIC_DIRECTORY
});我尝试在hexo对象上同时设置source_dir和public_dir,但在幕后hexo试图从最初给定的目录加载文件。
有人能帮我一下吗?对于常规的hexojs模块,这是可能的吗?或者我需要派生它并根据我的需要修改它吗?
谢谢,
马塞尔
发布于 2016-04-29 09:23:04
当您执行hexo init <folder>操作时,文件夹将获得一个_config.yml。在这个文件中,您可以在source_dir: source行更改源文件夹,在public_dir: public行更改公共文件夹。我不确定您是否可以提供绝对路径或使用../来退出当前文件夹。我已经能够切换到当前目录中的文件夹。
主题文件夹似乎更深入到代码中,因为它是theme: THEME,而主题位于主题文件夹中。我在这里没有任何建议。
https://stackoverflow.com/questions/36926216
复制相似问题