Giter Club home page Giter Club logo

Comments (14)

x-cold avatar x-cold commented on May 26, 2024

暂时没有计划。可以具体说说你的需求~

from yuque-hexo.

ichizi avatar ichizi commented on May 26, 2024

是这样的,我们团队 在语雀 维护了不同的知识库。
但是现在hexo 只能同步一个知识库的内容,而现在想不同知识库的内容输出到hexo不同的分类下。

from yuque-hexo.

x-cold avatar x-cold commented on May 26, 2024

2.0 版本可以支持一下,可能会换一个仓库名字,以更好的支持扩展

from yuque-hexo.

xxb avatar xxb commented on May 26, 2024

这竟然是个小众需求吗?

from yuque-hexo.

wztlink1013 avatar wztlink1013 commented on May 26, 2024

@x-cold 哈哈,需求加一

from yuque-hexo.

CCKNBC avatar CCKNBC commented on May 26, 2024

需求+2

from yuque-hexo.

yizhichangyuan avatar yizhichangyuan commented on May 26, 2024

需求+3

from yuque-hexo.

qdwds avatar qdwds commented on May 26, 2024

需求+4

from yuque-hexo.

xinc-it avatar xinc-it commented on May 26, 2024

需求+5

from yuque-hexo.

lonbaw avatar lonbaw commented on May 26, 2024

需求+6

from yuque-hexo.

wxharry avatar wxharry commented on May 26, 2024

请问还会更新这个功能吗?我非常愿意为2.0版本贡献代码

from yuque-hexo.

earthaYan avatar earthaYan commented on May 26, 2024

需求+10086

from yuque-hexo.

bazijun avatar bazijun commented on May 26, 2024

需求 + 10087

from yuque-hexo.

bazijun avatar bazijun commented on May 26, 2024

我写了个简陋的脚本,可以解决这个问题,将该脚本加入你的构建过程中即可。
@x-cold

syncAllYuqueRepo.js

多仓库肯定意味着多个缓存文件,所有缓存可以装在一个文件夹中。但需要先创建yuqueCache文件夹不然会报错。

const FS = require('fs');
const spawn = require('cross-spawn');
const packageJson = require('./package.json')
// 扩展该列表即可实现多仓库同步
const yuqueConfigList = [
    {
        name: "仓库A",
        postPath: "source/_posts/repoA",
        cachePath: "yuqueCache/repoA.json",
        repo: "仓库A的repo",
    },
    {
        name: "仓库B",
        postPath: "source/_posts/repoB",
        cachePath: "yuqueCache/repoB.json",
        repo: "仓库B的repo",
    },
]

// 按照 yuqueConfigList 替换 yuqueConfig中的地址,仓库名,缓存地址。并逐个触发语雀文档同步。
for (const repo of yuqueConfigList) {
    packageJson.yuqueConfig.postPath = repo.postPath
    packageJson.yuqueConfig.cachePath = repo.cachePath
    packageJson.yuqueConfig.repo = repo.repo
    FS.writeFileSync('./package.json', JSON.stringify(packageJson, null, 2));
    console.log('\n[sync]===>', repo.name, '<===[sync]');
    spawn.sync('yarn', ['sync'], { stdio: 'inherit' })
}

package.json

"scripts": {
    "sync": "yuque-hexo sync",
    "clean:yuque": "rimraf yuqueCache/*",
    "clean:yuque:linux": "rm -rf yuqueCache/*",
    "build": "node syncAllYuqueRepo.js && hexo clean && hexo g -d",
    "server": "node syncAllYuqueRepo.js && hexo clean && hexo g && hexo s",
  },
  ...
  "yuqueConfig": {
    "postPath": "source/_posts/xxx",
    "cachePath": "yuqueCache/yuque_xxx.json",
    "mdNameFormat": "title",
    "adapter": "hexo",
    "concurrency": 5,
    "baseUrl": "https://www.yuque.com/api/v2",
    "login": "你的login",
    "repo": "你的repo",
    "token": "你的token"
  }

from yuque-hexo.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.