mirror of
https://github.com/facebook/docusaurus.git
synced 2025-04-30 18:58:36 +02:00
Add new translate functionality to dev server
This commit is contained in:
parent
099a13a264
commit
2d2f324c7d
2 changed files with 12 additions and 1 deletions
|
@ -21,6 +21,7 @@ function execute(port) {
|
||||||
const toSlug = require("../core/toSlug.js");
|
const toSlug = require("../core/toSlug.js");
|
||||||
const mkdirp = require("mkdirp");
|
const mkdirp = require("mkdirp");
|
||||||
const glob = require("glob");
|
const glob = require("glob");
|
||||||
|
const translate = require("./translate.js");
|
||||||
let siteConfig = require(CWD + "/siteConfig.js");
|
let siteConfig = require(CWD + "/siteConfig.js");
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
@ -289,6 +290,13 @@ function execute(port) {
|
||||||
language = parts[i];
|
language = parts[i];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
let englishFile = CWD + "/pages/" + file;
|
||||||
|
if (language !== "en") {
|
||||||
|
englishFile = englishFile.replace("/" + language + "/", "/en/");
|
||||||
|
}
|
||||||
|
|
||||||
|
/* check for: a file for the page, an english file for page with unspecified language,
|
||||||
|
english file for the page */
|
||||||
if (
|
if (
|
||||||
fs.existsSync(userFile) ||
|
fs.existsSync(userFile) ||
|
||||||
fs.existsSync(
|
fs.existsSync(
|
||||||
|
@ -296,7 +304,8 @@ function execute(port) {
|
||||||
path.basename(userFile),
|
path.basename(userFile),
|
||||||
"en/" + path.basename(userFile)
|
"en/" + path.basename(userFile)
|
||||||
))
|
))
|
||||||
)
|
) ||
|
||||||
|
fs.existsSync((userFile = englishFile))
|
||||||
) {
|
) {
|
||||||
/* copy into docusaurus so require paths work */
|
/* copy into docusaurus so require paths work */
|
||||||
let parts = userFile.split("pages/");
|
let parts = userFile.split("pages/");
|
||||||
|
@ -313,6 +322,7 @@ function execute(port) {
|
||||||
const ReactComp = require(tempFile);
|
const ReactComp = require(tempFile);
|
||||||
purgeCache("../core/Site.js");
|
purgeCache("../core/Site.js");
|
||||||
const Site = require("../core/Site.js");
|
const Site = require("../core/Site.js");
|
||||||
|
translate.setLanguage(language);
|
||||||
const str = renderToStaticMarkup(
|
const str = renderToStaticMarkup(
|
||||||
<Site language={language} config={siteConfig}>
|
<Site language={language} config={siteConfig}>
|
||||||
<ReactComp language={language} />
|
<ReactComp language={language} />
|
||||||
|
|
|
@ -11,6 +11,7 @@
|
||||||
|
|
||||||
require("babel-register")({
|
require("babel-register")({
|
||||||
ignore: false,
|
ignore: false,
|
||||||
|
plugins: [require("./server/translate-plugin.js")],
|
||||||
presets: ["react"]
|
presets: ["react"]
|
||||||
});
|
});
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue