This is an automated email from the ASF dual-hosted git repository.

tison pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/pulsar-site.git


The following commit(s) were added to refs/heads/main by this push:
     new d671555ace4 Delete site2/website-next/migrate directory (#287)
d671555ace4 is described below

commit d671555ace465c62ea16e6876f43e7fcd360201c
Author: tison <[email protected]>
AuthorDate: Tue Nov 15 15:02:14 2022 +0800

    Delete site2/website-next/migrate directory (#287)
    
    These files are used during the migration stage. We've finished the 
migration already.
---
 site2/website-next/migrate/.gitignore              |   3 -
 site2/website-next/migrate/README.md               |   3 -
 site2/website-next/migrate/const.js                |  14 --
 site2/website-next/migrate/migrate-blogs.js        |  40 ----
 site2/website-next/migrate/migrate-change.js       |   0
 site2/website-next/migrate/migrate-chapter.js      | 180 -----------------
 site2/website-next/migrate/migrate-docs.js         |  59 ------
 site2/website-next/migrate/migrate-ext.js          |  10 -
 site2/website-next/migrate/migrate-full.js         |  19 --
 site2/website-next/migrate/migrate-version.js      | 100 ----------
 site2/website-next/migrate/tool/del-duplicate.js   |  37 ----
 site2/website-next/migrate/tool/find-md.js         | 126 ------------
 site2/website-next/migrate/tool/fix-code.js        |  41 ----
 site2/website-next/migrate/tool/fix-jsx.js         |   7 -
 site2/website-next/migrate/tool/fix-md.js          |  58 ------
 site2/website-next/migrate/tool/fix-space.js       |  54 -----
 site2/website-next/migrate/tool/fix-tab.js         |  97 ---------
 site2/website-next/migrate/tool/fix-table.js       |  72 -------
 .../migrate/tool/fix-tip-note-in-list.js           |  27 ---
 site2/website-next/migrate/tool/fix-tip-note.js    |  81 --------
 site2/website-next/migrate/tool/left-md.js         | 217 ---------------------
 21 files changed, 1245 deletions(-)

diff --git a/site2/website-next/migrate/.gitignore 
b/site2/website-next/migrate/.gitignore
deleted file mode 100644
index 074d0080879..00000000000
--- a/site2/website-next/migrate/.gitignore
+++ /dev/null
@@ -1,3 +0,0 @@
-.cache
-/node_modules
-/log
\ No newline at end of file
diff --git a/site2/website-next/migrate/README.md 
b/site2/website-next/migrate/README.md
deleted file mode 100644
index 1199cb35aa1..00000000000
--- a/site2/website-next/migrate/README.md
+++ /dev/null
@@ -1,3 +0,0 @@
-1. fix docs md
-2. fix missing docs
-3. fix duplicate docs
\ No newline at end of file
diff --git a/site2/website-next/migrate/const.js 
b/site2/website-next/migrate/const.js
deleted file mode 100644
index 6c512921d9a..00000000000
--- a/site2/website-next/migrate/const.js
+++ /dev/null
@@ -1,14 +0,0 @@
-module.exports = {
-  old: {
-    // docsDir: "docs-old",
-    // baseDir: "website-old",
-    docsDir: "docs",
-    baseDir: "website",
-  },
-  next: {
-    // docsDir: "docs",
-    // baseDir: "website",
-    docsDir: "website-next/docs",
-    baseDir: "website-next",
-  },
-};
diff --git a/site2/website-next/migrate/migrate-blogs.js 
b/site2/website-next/migrate/migrate-blogs.js
deleted file mode 100644
index f4564440d4d..00000000000
--- a/site2/website-next/migrate/migrate-blogs.js
+++ /dev/null
@@ -1,40 +0,0 @@
-const fs = require("fs");
-const path = require("path");
-const _ = require("lodash");
-const fixMd = require("./tool/fix-md");
-const findMd = require("./tool/find-md");
-const CONST = require("./const");
-const { old, next } = CONST;
-
-function travel(dir, callback) {
-  fs.readdirSync(dir).forEach((file) => {
-    var pathname = path.join(dir, file);
-    if (fs.statSync(pathname).isDirectory()) {
-      travel(pathname, callback);
-    } else {
-      callback(pathname);
-    }
-  });
-}
-
-function migrate(mdpath) {
-  let data = fs.readFileSync(mdpath, "utf8");
-  data = fixMd(data)
-    .replace(/title:\s*(.*)/, 'title: "$1"')
-    .replace(/title:\s*""(.*)""/, 'title: "$1"')
-    .replace(/\.\.\/img\//g, "/img/");
-  if (!/<!--truncate-->/.test(data)) {
-    data = data.replace(/\.\n/, ".\n\n<!--truncate-->\n");
-  }
-  fs.writeFileSync(mdpath, data);
-  console.log(mdpath + " fixed");
-}
-
-module.exports = (dir) => {
-  travel(dir, migrate);
-};
-
-//Test
-if (typeof require !== "undefined" && require.main === module) {
-  travel(path.join(__dirname, "../blog"), migrate);
-}
diff --git a/site2/website-next/migrate/migrate-change.js 
b/site2/website-next/migrate/migrate-change.js
deleted file mode 100644
index e69de29bb2d..00000000000
diff --git a/site2/website-next/migrate/migrate-chapter.js 
b/site2/website-next/migrate/migrate-chapter.js
deleted file mode 100644
index dda51e69884..00000000000
--- a/site2/website-next/migrate/migrate-chapter.js
+++ /dev/null
@@ -1,180 +0,0 @@
-const fs = require("fs");
-const path = require("path");
-const _ = require("lodash");
-const migrateDocs = require("./migrate-docs");
-const migrateExt = require("./migrate-ext");
-const CONST = require("./const");
-const { old, next } = CONST;
-
-function _log(msg) {
-  if (typeof require !== "undefined" && require.main === module) {
-    console.log(msg);
-  }
-}
-
-const migrate = (version, category, cb) => {
-  let version_full = "version-" + version;
-  let src = `../../${old.baseDir}/versioned_docs/` + version_full;
-  let dest = `../../${next.baseDir}/versioned_docs/` + version_full;
-  if (version == "next") {
-    src = "../../" + old.docsDir;
-    dest = "../../" + next.docsDir;
-  }
-  src = path.join(__dirname, src);
-  dest = path.join(__dirname, dest);
-
-  let sidebar_file = path.join(
-    __dirname,
-    `../../${old.baseDir}/versioned_sidebars/` + version_full + 
"-sidebars.json"
-  );
-  if (version == "next") {
-    sidebar_file = path.join(__dirname, `../../${old.baseDir}/sidebars.json`);
-  }
-  let sidebar = fs.readFileSync(sidebar_file, "utf8");
-  sidebar = JSON.parse(sidebar);
-
-  const _key = version == "next" ? "docs" : version_full + "-docs";
-  sidebar = sidebar[_key][category];
-  if (version != "next") {
-    sidebar = sidebar.map((item) => {
-      return item.substr(version_full.length + 1);
-    });
-  }
-  if (!sidebar) {
-    return;
-  }
-
-  console.log("     [" + version + ":" + category + "]migrate...");
-  let existsSidebar = [];
-  for (let docsId of sidebar) {
-    let mdpath = migrateDocs(version, category, docsId, cb);
-    if (mdpath) {
-      existsSidebar.push(docsId);
-    }
-  }
-  sidebar = existsSidebar;
-
-  let new_sidebar_file = "";
-  let new_sidebar = {};
-
-  if (version == "next") {
-    new_sidebar_file = path.join(
-      __dirname,
-      `../../${next.baseDir}/sidebars.json`
-    );
-    try {
-      new_sidebar = fs.readFileSync(new_sidebar_file, "utf8");
-      new_sidebar = JSON.parse(new_sidebar);
-    } catch {
-      new_sidebar = {
-        docsSidebar: [],
-      };
-    }
-    let categoryMap = _.keyBy(new_sidebar.docsSidebar, "label");
-    if (!categoryMap[category]) {
-      new_sidebar.docsSidebar.push({
-        type: "category",
-        label: category,
-        items: sidebar,
-      });
-    } else {
-      categoryMap[category].items = sidebar;
-      if (migrateExt.sidebar[category]) {
-        categoryMap[category].items = categoryMap[category].items.concat(
-          migrateExt.sidebar[category].map((it) => it.id)
-        );
-      }
-
-      // categoryMap[category].items = categoryMap[category].items.concat(
-      //   sidebar.filter((item) => {
-      //     return !categoryMap[category].items.includes(item);
-      //   })
-      // );
-
-      new_sidebar.docsSidebar = _.values(categoryMap);
-    }
-  } else {
-    new_sidebar_file = path.join(
-      __dirname,
-      `../../${next.baseDir}/versioned_sidebars/` +
-        version_full +
-        "-sidebars.json"
-    );
-    try {
-      new_sidebar = fs.readFileSync(new_sidebar_file, "utf8");
-      new_sidebar = JSON.parse(new_sidebar);
-    } catch {
-      new_sidebar = {
-        [version_full + "/docsSidebar"]: [],
-      };
-    }
-    let categoryMap = _.keyBy(
-      new_sidebar[version_full + "/docsSidebar"],
-      "label"
-    );
-    if (!categoryMap[category]) {
-      new_sidebar[version_full + "/docsSidebar"].push({
-        type: "category",
-        label: category,
-        items: sidebar.map((item) => {
-          return {
-            type: "doc",
-            id:
-              version_full +
-              "/" +
-              (item == "deploy-docs" ? "deploy-dcos" : item),
-          };
-        }),
-        // collapsible: true,
-        // collapsed: true,
-      });
-    } else {
-      categoryMap[category].items = sidebar.map((item) => {
-        return {
-          type: "doc",
-          id:
-            version_full + "/" + (item == "deploy-docs" ? "deploy-dcos" : 
item),
-        };
-      });
-      if (migrateExt.sidebar[category]) {
-        categoryMap[category].items = categoryMap[category].items.concat(
-          migrateExt.sidebar[category].map((item) => {
-            return {
-              ...item,
-              id: version_full + "/" + item.id,
-            };
-          })
-        );
-      }
-
-      // let _sbExists = _.keyBy(categoryMap[category].items, "id");
-      // let _sb = sidebar
-      //   .map((item) => {
-      //     return {
-      //       type: "doc",
-      //       id:
-      //         version_full +
-      //         "/" +
-      //         (item == "deploy-docs" ? "deploy-dcos" : item),
-      //     };
-      //   })
-      //   .filter((item) => {
-      //     return !_sbExists[item.id];
-      //   });
-      // if (_sb.length > 0) {
-      //   categoryMap[category].items = 
categoryMap[category].items.concat(_sb);
-      // }
-
-      new_sidebar[version_full + "/docsSidebar"] = _.values(categoryMap);
-    }
-  }
-  fs.writeFileSync(new_sidebar_file, JSON.stringify(new_sidebar, null, 2));
-};
-
-module.exports = migrate;
-
-//Test
-if (typeof require !== "undefined" && require.main === module) {
-  //   migrate("next", "Pulsar IO");
-  migrate("2.8.0", "Pulsar IO");
-}
diff --git a/site2/website-next/migrate/migrate-docs.js 
b/site2/website-next/migrate/migrate-docs.js
deleted file mode 100644
index 9b727c026b9..00000000000
--- a/site2/website-next/migrate/migrate-docs.js
+++ /dev/null
@@ -1,59 +0,0 @@
-const fs = require("fs");
-const path = require("path");
-const _ = require("lodash");
-const fixMd = require("./tool/fix-md");
-const findMd = require("./tool/find-md");
-const CONST = require("./const");
-const { old, next } = CONST;
-
-function migrate(version, chapter, docsId, cb) {
-  let dest = `../../${next.baseDir}/versioned_docs/version-` + version;
-  if (version == "next") {
-    dest = "../../" + next.docsDir;
-  }
-  let destDir = path.join(__dirname, dest);
-  dest = path.join(__dirname, dest, docsId + ".md");
-  let mdpath = findMd(version, docsId);
-  if (mdpath) {
-    console.log(
-      "         [" +
-        version +
-        ":" +
-        chapter +
-        ":" +
-        docsId +
-        "] from " +
-        mdpath +
-        " migrate..."
-    );
-    let data = fs.readFileSync(mdpath, "utf8");
-    data = fixMd(data, version);
-    if (!fs.existsSync(destDir)) {
-      fs.mkdirSync(destDir);
-    }
-    fs.writeFileSync(dest, data);
-    cb && cb(docsId);
-  } else {
-    console.log(
-      "         [" +
-        version +
-        ":" +
-        chapter +
-        ":" +
-        docsId +
-        "] from " +
-        mdpath +
-        " was not fund, skip..."
-    );
-  }
-  return mdpath;
-}
-
-module.exports = migrate;
-
-//Test
-if (typeof require !== "undefined" && require.main === module) {
-  // migrate("next", "Deployment", "deploy-dcos");
-  migrate("2.9.1", "Development", "develop-schema");
-  // migrate("2.8.0", "", "adaptors-kafka");
-}
diff --git a/site2/website-next/migrate/migrate-ext.js 
b/site2/website-next/migrate/migrate-ext.js
deleted file mode 100644
index b2879637adc..00000000000
--- a/site2/website-next/migrate/migrate-ext.js
+++ /dev/null
@@ -1,10 +0,0 @@
-module.exports = {
-  sidebar: {
-    Reference: [
-      {
-        type: "doc",
-        id: "reference-rest-api-overview",
-      },
-    ],
-  },
-};
diff --git a/site2/website-next/migrate/migrate-full.js 
b/site2/website-next/migrate/migrate-full.js
deleted file mode 100644
index dbbaf45d69e..00000000000
--- a/site2/website-next/migrate/migrate-full.js
+++ /dev/null
@@ -1,19 +0,0 @@
-const migrateVersion = require("./migrate-version");
-const _ = require("lodash");
-let versions = require("../versions.json");
-let stageVersions = require("../stage-versions.json");
-versions = ["next"].concat(stageVersions).concat(versions);
-versions = _.uniq(versions);
-
-const migrate = (vs) => {
-  (vs || versions).forEach((v) => {
-    migrateVersion(v);
-  });
-};
-
-module.exports = migrate;
-
-//Test
-if (typeof require !== "undefined" && require.main === module) {
-  migrate();
-}
diff --git a/site2/website-next/migrate/migrate-version.js 
b/site2/website-next/migrate/migrate-version.js
deleted file mode 100644
index e9d9955910d..00000000000
--- a/site2/website-next/migrate/migrate-version.js
+++ /dev/null
@@ -1,100 +0,0 @@
-const fs = require("fs");
-const path = require("path");
-const _ = require("lodash");
-const leftMd = require("./tool/left-md");
-const fixMd = require("./tool/fix-md");
-const migrateChapter = require("./migrate-chapter");
-const delDuplicate = require("./tool/del-duplicate");
-const CONST = require("./const");
-const { old, next } = CONST;
-const versions = require("../versions.json");
-const latestVersion = versions[0];
-
-const migrate = (version) => {
-  let version_full = "version-" + version;
-  let src = `../../${old.baseDir}/versioned_docs/` + version_full;
-  let dest = `../../${next.baseDir}/versioned_docs/` + version_full;
-  if (version == "next") {
-    src = "../../" + old.docsDir;
-    dest = "../../" + next.docsDir;
-  }
-  src = path.join(__dirname, src);
-  dest = path.join(__dirname, dest);
-
-  let sidebar_file = path.join(
-    __dirname,
-    `../../${old.baseDir}/versioned_sidebars/` + version_full + 
"-sidebars.json"
-  );
-  if (version == "next") {
-    sidebar_file = path.join(__dirname, `../../${old.baseDir}/sidebars.json`);
-  }
-  let sidebar = fs.readFileSync(sidebar_file, "utf8");
-  sidebar = JSON.parse(sidebar);
-
-  const _key = version == "next" ? "docs" : version_full + "-docs";
-  let chapterList = _.keys(sidebar[_key]);
-
-  let migratedList = [];
-  for (let chapter of chapterList) {
-    migrateChapter(version, chapter, (docsId) => {
-      migratedList.push(docsId);
-    });
-  }
-  let leftMdList = leftMd(version, migratedList);
-  for (let mdfile of leftMdList) {
-    console.log(
-      "     [" + version + ":left:" + path.basename(mdfile) + "]migrate..."
-    );
-    let data = fixMd(fs.readFileSync(mdfile, "utf8"));
-    fs.writeFileSync(path.join(dest, path.basename(mdfile)), data);
-  }
-  delDuplicate(dest, version);
-
-  //copy about.md from next version dir
-  let aboutDocPath = path.join(__dirname, `../../${next.docsDir}/about.md`);
-  let destSidebarPath = path.join(
-    __dirname,
-    `../../${next.baseDir}/versioned_sidebars/${version_full}-sidebars.json`
-  );
-  if (version == "next") {
-    destSidebarPath = path.join(
-      __dirname,
-      `../../${next.baseDir}/sidebars.json`
-    );
-  } else {
-    let _about = fs.readFileSync(aboutDocPath, "utf8");
-    let _replace = `url="/docs/${version}/`;
-    if (version == latestVersion) {
-      _replace = `url="/docs/`;
-    }
-    _about = _about.replace(/url="\/docs\/next\//g, _replace);
-    fs.writeFileSync(path.join(dest, "about.md"), _about);
-  }
-
-  sidebar = fs.readFileSync(destSidebarPath, "utf8");
-  sidebar = JSON.parse(sidebar);
-  let items = Object.values(sidebar)[0];
-  let aboutId = version == "next" ? "about" : `${version_full}/about`;
-  let _items = [
-    {
-      type: "doc",
-      id: aboutId,
-    },
-  ];
-  for (let item of items) {
-    if (item.type == "doc" && item.id == aboutId) {
-      continue;
-    }
-    _items.push(item);
-  }
-  sidebar[Object.keys(sidebar)[0]] = _items;
-  fs.writeFileSync(destSidebarPath, JSON.stringify(sidebar, null, 2), "utf8");
-};
-
-module.exports = migrate;
-
-//Test
-if (typeof require !== "undefined" && require.main === module) {
-  const args = process.argv.slice(2);
-  migrate(args[0]);
-}
diff --git a/site2/website-next/migrate/tool/del-duplicate.js 
b/site2/website-next/migrate/tool/del-duplicate.js
deleted file mode 100644
index 54fad8bfc6e..00000000000
--- a/site2/website-next/migrate/tool/del-duplicate.js
+++ /dev/null
@@ -1,37 +0,0 @@
-const fs = require("fs");
-const path = require("path");
-
-module.exports = (dest, version) => {
-  let duplicateMap = {};
-  let allDocs = fs.readdirSync(dest);
-  for (let filename of allDocs) {
-    let pathname = path.join(dest, filename);
-    if (fs.statSync(pathname).isDirectory()) {
-      continue;
-    }
-    if (!pathname.endsWith(".md")) {
-      continue;
-    }
-    let data = fs.readFileSync(pathname, "utf8");
-    try {
-      let id = /id:\s*(.*)/.exec(data)[1];
-      duplicateMap[id] = duplicateMap[id] || [];
-      duplicateMap[id].push(pathname);
-    } catch (error) {
-      console.log("...error path: ", pathname);
-      throw error;
-    }
-  }
-  for (let [key, duplicateFiles] of Object.entries(duplicateMap)) {
-    if (duplicateFiles.length > 1) {
-      for (let file of duplicateFiles) {
-        if (key + ".md" != path.basename(file)) {
-          console.log(
-            "     [" + version + ":duplicate:" + key + "]del " + file
-          );
-          fs.unlinkSync(file);
-        }
-      }
-    }
-  }
-};
diff --git a/site2/website-next/migrate/tool/find-md.js 
b/site2/website-next/migrate/tool/find-md.js
deleted file mode 100644
index 98b5268f41a..00000000000
--- a/site2/website-next/migrate/tool/find-md.js
+++ /dev/null
@@ -1,126 +0,0 @@
-const fs = require("fs");
-const path = require("path");
-const CONST = require("../const");
-const { old, next } = CONST;
-
-function _logMissing(version, docsId, pathname) {
-  if (!pathname) {
-    let log = "{}";
-    let logdir = path.join(__dirname, "../log");
-    let logpath = path.join(__dirname, "../log", version + ".missing");
-    if (!fs.existsSync(logdir)) {
-      fs.mkdirSync(logdir);
-    }
-    if (fs.existsSync(logpath)) {
-      log = fs.readFileSync(logpath, "utf8");
-    }
-    log = JSON.parse(log);
-    log[docsId] = pathname ? pathname : "";
-    fs.writeFileSync(path.join(logpath), JSON.stringify(log));
-
-    console.log(
-      "         ######[" +
-        version +
-        ":" +
-        docsId +
-        "]not fund and fix missing fail"
-    );
-  }
-}
-
-const _search = (dir, version, docsId, reg) => {
-  let pathname = path.join(dir, docsId + ".md");
-  if (fs.existsSync(pathname)) {
-    let data = fs.readFileSync(pathname, "utf8");
-    if (reg.test(data)) {
-      console.log(
-        "         ******[" + version + ":" + docsId + "]fund: " + pathname
-      );
-      return pathname;
-    }
-  }
-  let docsList = fs.readdirSync(dir);
-  for (let filename of docsList) {
-    let pathname = path.join(dir, filename);
-    if (fs.statSync(pathname).isDirectory()) {
-      continue;
-    }
-    if (!pathname.endsWith(".md")) {
-      continue;
-    }
-    let data = fs.readFileSync(pathname, "utf8");
-    if (reg.test(data)) {
-      console.log("         ******[" + version + ":" + docsId + "]fund: " + 
pathname);
-      return pathname;
-    }
-  }
-  console.log(
-    "         ######[" + version + ":" + docsId + "]not fund in: " + dir
-  );
-  return null;
-};
-
-const find = (version, docsId) => {
-  let vReg = new RegExp(
-    "^id:\\s*version-(\\d\\.?)+-(incubating-)?" + docsId + "\\s*$",
-    "m"
-  );
-  let nextReg = new RegExp("^id:\\s*" + docsId + "\\s*$", "m");
-
-  let version_full = "version-" + version;
-  let src = `../../../${old.baseDir}/versioned_docs/` + version_full;
-  if (version == "next") {
-    src = "../../../" + old.docsDir;
-  }
-  src = path.join(__dirname, src);
-  nextDir = path.join(__dirname, "../../../" + old.docsDir);
-  vDocsDir = path.join(__dirname, `../../../${old.baseDir}/versioned_docs`);
-
-  let pathname = _search(
-    src,
-    version,
-    docsId,
-    version == "next" ? nextReg : vReg
-  );
-  if (pathname || version == "next") {
-    _logMissing(version, docsId, pathname);
-    return pathname;
-  }
-
-  if (!pathname) {
-    console.log(
-      "         ######[" +
-        version +
-        ":" +
-        docsId +
-        "]not fund, will auto fix missing"
-    );
-    pathname = _search(nextDir, version, docsId, nextReg);
-    if (!pathname) {
-      let vDocsDirList = fs.readdirSync(vDocsDir);
-      vDocsDirList = vDocsDirList.sort((a, b) => {
-        let aVersion = /((\d\.?)+)/.exec(a)[1];
-        let bVersion = /((\d\.?)+)/.exec(b)[1];
-        aVersion = parseInt(aVersion.replace(/\./g, ""));
-        bVersion = parseInt(bVersion.replace(/\./g, ""));
-        return bVersion - aVersion;
-      });
-      for (let vDir of vDocsDirList) {
-        pathname = _search(path.join(vDocsDir, vDir), version, docsId, vReg);
-        if (pathname) {
-          break;
-        }
-      }
-    }
-  }
-  _logMissing(version, docsId, pathname);
-  return pathname;
-};
-
-module.exports = find;
-
-//Test
-if (typeof require !== "undefined" && require.main === module) {
-  // find("2.6.0", "adaptors-kafka");
-  find("next", "deploy-dcos");
-}
diff --git a/site2/website-next/migrate/tool/fix-code.js 
b/site2/website-next/migrate/tool/fix-code.js
deleted file mode 100644
index b2974738198..00000000000
--- a/site2/website-next/migrate/tool/fix-code.js
+++ /dev/null
@@ -1,41 +0,0 @@
-module.exports = (data) => {
-  let nData = data;
-
-  let reg = /^([\t ]*)(>*)([\t ]*)(```.*)((((?!```).)*\n*)+)```/gm; //代码块
-  while ((codeGroup = reg.exec(data))) {
-    let _match = codeGroup[0];
-    let space1 = codeGroup[1];
-    let arrow = codeGroup[2];
-    let space2 = codeGroup[3];
-    let begin = codeGroup[4];
-    let code = codeGroup[5];
-    let prefix = space1 + arrow + space2;
-    if ((code = /[\t ]*(.+\n*)*\S/.exec(code))) {
-      code = code[0]; //剔除纯空白的行首和行尾, 得到纯代码
-      if (code.substr(0, prefix.length) != prefix) {
-        code = prefix + code.replace(/\n(.*)/g, "\n" + prefix + "$1"); //行对齐
-      }
-    }
-    let newCodeBlock =
-      "\n" +
-      prefix +
-      begin +
-      "\n" +
-      prefix +
-      "\n" +
-      code +
-      "\n" +
-      prefix +
-      "\n" +
-      prefix +
-      "```" +
-      "\n";
-    nData = nData.replace(_match, newCodeBlock);
-  }
-  return nData
-    .replace(
-      /(.*)(\s*\n){3,}(\s*```.*)((((?!```).)*\n*)+)```.*(\s*\n)+/g,
-      "$1\n\n$3$4```\n\n"
-    ) //解决多个空行
-    .replace(/^(\s*```.*(((?!```).)*\n*)+)```.*\n+/gm, "$1```\n\n"); //解决多个空行 
//解决代码块结束标识符后无空行
-};
diff --git a/site2/website-next/migrate/tool/fix-jsx.js 
b/site2/website-next/migrate/tool/fix-jsx.js
deleted file mode 100644
index 48bce1ca425..00000000000
--- a/site2/website-next/migrate/tool/fix-jsx.js
+++ /dev/null
@@ -1,7 +0,0 @@
-module.exports = (data) => {
-  return data
-    .replace(/(import Tabs from '@theme\/Tabs';)/g, "````mdx-code-block\n$1")
-    .replace(/(import TabItem from '@theme\/TabItem';)/g, "$1\n````")
-    .replace(/(<Tabs>?)/g, "````mdx-code-block\n$1")
-    .replace(/(<\/Tabs>)/g, "$1\n````");
-};
diff --git a/site2/website-next/migrate/tool/fix-md.js 
b/site2/website-next/migrate/tool/fix-md.js
deleted file mode 100644
index c4fcaa16754..00000000000
--- a/site2/website-next/migrate/tool/fix-md.js
+++ /dev/null
@@ -1,58 +0,0 @@
-const fixTab = require("./fix-tab");
-const fixTipNote = require("./fix-tip-note");
-const fixTable = require("./fix-table");
-const fixCode = require("./fix-code");
-const fixTipNoteInList = require("./fix-tip-note-in-list");
-const fixJSX = require("./fix-jsx");
-
-function fix(data, version) {
-  // let reg = new RegExp("id:\\s*version-" + version + "-(incubating-)?");
-  let reg = new RegExp("id:\\s*version-(\\d\\.?)+-(incubating-)?");
-  data = fixTable(data);
-  data = fixTab(data);
-  data = data.replace(/(<TabItem.*)\n(.*{@inject:\s*.+?})/g, "$1\n\n$2");
-  data = data.replace(/^(>\s*```\w*)(\s*\n){2,}>/gm, "$1\n>\n>");
-  data = fixTipNote(data);
-  data = fixTipNoteInList(data);
-  data = fixCode(data);
-  data = data
-    .replace(reg, "id: ")
-    .replace("id: deploy-docs", "id: deploy-dcos")
-    .replace(/`{4,}/g, "```")
-    // .replace(/^(id:\sstandalone)\s*$/gm, "slug: /\n$1")
-    .replace(/<style[\s\S]*?<\/style>/g, "")
-    .replace(/\[(.*)\]\s*\((.*)\.md\)/g, "[$1]($2)")
-    .replace(/\*\*(((?!\*).)+)\*/g, "**$1**") //**macOS* => **macOS**
-    .replace(/\*\*(((?!\*).)+)\*{3}/g, "**$1**") //**macOS*** => **macOS**
-    .replace(/(\w)[\t ]*\n\[/g, "$1 [")
-    .replace(/sidebar_label:\s*(.*)/, 'sidebar_label: "$1"')
-    .replace(/""(.*)""/, '"$1"')
-    .replace(/\[\[pulsar:version_number\]\]/g, "@pulsar:version_number@")
-    .replace(/{{(pulsar:.*?)}}/g, "@$1@")
-    .replace(/(@inject:\s*\w+:)`(\w+)`/g, "$1$2")
-    .replace(/<empty string>/g, "|")
-    .replace(/<li>(((?!<\/?li>|\|).)+)/g, "<li>$1</li>")
-    .replace(/<\/li>\s*<\/li>/g, "</li>")
-    .replace(/\|(((?!<\/?li>|\|).)+)<\/li>/g, "|<li>$1</li>")
-    .replace(/<\/li>\s*<\/li>/g, "</li>") //sometimes needed, no idea for 
now...
-    .replace(/<\/br>/g, "@AAA@")
-    .replace(/<br>/g, "@AAA@")
-    .replace(/<br\/>/g, "@AAA@")
-    .replace(/<>/g, "")
-    .replace(/@AAA@/g, "<br />")
-    .replace(
-      /<span style="(((?!:).)+):(((?!>).)+);"/g,
-      '<span style={{color: "$3"}}'
-    )
-    .replace(/\s?style=".*?"/g, "")
-    .replace(/\]\(assets\//g, "](/assets/");
-
-  // return data;
-  return fixJSX(data);
-}
-
-module.exports = fix;
-
-//Test
-if (typeof require !== "undefined" && require.main === module) {
-}
diff --git a/site2/website-next/migrate/tool/fix-space.js 
b/site2/website-next/migrate/tool/fix-space.js
deleted file mode 100644
index 56dfd990267..00000000000
--- a/site2/website-next/migrate/tool/fix-space.js
+++ /dev/null
@@ -1,54 +0,0 @@
-const fs = require("fs");
-const path = require("path");
-
-const code_map = {};
-let index = 0;
-
-function fixSpace(data) {
-  const code_reg = /(```\w*)((((?!```).)*\n*)+)```/;
-  const _match = code_reg.exec(data);
-  if (_match) {
-    const code = _match[0];
-    const TMP_KEY = "_TMP_CODE_KEY_" + index + "_";
-    code_map[TMP_KEY] = code;
-    index++;
-    data = data.replace(code_reg, TMP_KEY);
-    return fixSpace(data);
-  } else {
-    return data;
-  }
-}
-
-function fixTmp(data) {
-  const tmp_reg = /_TMP_CODE_KEY_(\d+)_/;
-  const _match = tmp_reg.exec(data);
-  if (_match) {
-    data = data.replace(tmp_reg, code_map[_match[0]]);
-    return fixTmp(data);
-  } else {
-    return data;
-  }
-}
-
-function fix(data) {
-  data = fixSpace(data);
-  data = data.replace(/^[\t ]+/gm, "");
-  data = fixTmp(data);
-  return data;
-}
-
-function test() {
-  let data = fs.readFileSync(
-    path.join(__dirname, "../bak/io-quickstart.md"),
-    "utf8"
-  );
-  data = fixSpace(data);
-  data = data.replace(/^[\t ]+/gm, "");
-  data = fixTmp(data);
-  // console.log(data);
-  fs.writeFileSync(path.join(__dirname, "../bak/io-quickstart-fixed.md"), 
data);
-}
-
-// test();
-
-module.exports = fix;
diff --git a/site2/website-next/migrate/tool/fix-tab.js 
b/site2/website-next/migrate/tool/fix-tab.js
deleted file mode 100644
index 3dd751ad420..00000000000
--- a/site2/website-next/migrate/tool/fix-tab.js
+++ /dev/null
@@ -1,97 +0,0 @@
-const fs = require("fs");
-const path = require("path");
-const lodash = require("lodash");
-const TAB_REG =
-  /([\t 
]*)<!--DOCUSAURUS_CODE_TABS-->(((?!<!--END_DOCUSAURUS_CODE_TABS-->).)*\n*)*<!--END_DOCUSAURUS_CODE_TABS-->/;
-
-function removeTabTag(tab) {
-  return tab
-    .replace(/<!--DOCUSAURUS_CODE_TABS-->/, "")
-    .replace(/<!--END_DOCUSAURUS_CODE_TABS-->/, "");
-}
-
-function findTabItemNameList(tab) {
-  const _match = tab.match(/<!--(.*)-->/g);
-  return _match.map((item) => {
-    return item.replace("<!--", "").replace("-->", "");
-  });
-}
-
-function replaceTabItemTag(tab) {
-  const tab_item_reg = /([\t ]*)<!--(.*)-->((((?![\t ]*<!--).)*\n*)*)/;
-  const _match = tab_item_reg.exec(tab);
-  if (_match) {
-    const space = _match[1];
-    const tab_item_name = _match[2];
-    const tab_item_content = lodash.trimEnd(_match[3]);
-    let tab_item_str = space + '<TabItem value="';
-    tab_item_str +=
-      tab_item_name + '">' + tab_item_content + "\n\n" + space + 
"</TabItem>\n";
-    tab = tab.replace(tab_item_reg, tab_item_str);
-    return replaceTabItemTag(tab);
-  } else {
-    return tab;
-  }
-}
-
-function importTabComponent(data) {
-  if (!/import Tabs from '@theme\/Tabs';/g.exec(data)) {
-    return data.replace(
-      /---((((?!---).)*\n*)*)---/,
-      "---$1---" +
-        "\n\nimport Tabs from '@theme/Tabs';\nimport TabItem from 
'@theme/TabItem';\n"
-    );
-  }
-  return data;
-}
-
-function fixTab(data) {
-  const _match = TAB_REG.exec(data);
-  if (_match) {
-    data = importTabComponent(data);
-    let tab = _match[0];
-    tab = removeTabTag(tab);
-    const names = findTabItemNameList(tab);
-    tab = replaceTabItemTag(tab);
-    const names_map = names.map((item) => {
-      return {
-        label: item,
-        value: item,
-      };
-    });
-
-    const space = _match[1];
-    const tab_tag_begin =
-      space +
-      "<Tabs \n" +
-      space +
-      '  defaultValue="' +
-      names[0] +
-      '"\n' +
-      space +
-      "  values={" +
-      JSON.stringify(names_map) +
-      "}>";
-
-    const tab_tag_end = "\n" + space + "</Tabs>";
-    tab = tab_tag_begin + tab + tab_tag_end;
-    return fixTab(data.replace(TAB_REG, tab));
-  } else {
-    return data
-      .replace(/(<TabItem.*)\n[\t ]*\n/g, "$1\n")
-      .replace(/(<TabItem.*)/g, "$1\n");
-  }
-}
-
-function test() {
-  let data = fs.readFileSync(
-    path.join(__dirname, "../bak/schema-manage.md"),
-    "utf8"
-  );
-  data = fixTab(data);
-  console.log(data);
-}
-
-// test()
-
-module.exports = fixTab;
diff --git a/site2/website-next/migrate/tool/fix-table.js 
b/site2/website-next/migrate/tool/fix-table.js
deleted file mode 100644
index 6d436590803..00000000000
--- a/site2/website-next/migrate/tool/fix-table.js
+++ /dev/null
@@ -1,72 +0,0 @@
-const fs = require("fs");
-const path = require("path");
-const NL = "\n";
-
-//Convert HTML table to markdown table
-function convertTableElementToMarkdown(table) {
-  let rows = [];
-  let trEls = table.match(/[<]tr[\s\S]*?[/]tr[>]/g);
-  for (let i = 0; i < trEls.length; i++) {
-    let tableRow = trEls[i];
-    let markdownRow = convertTableRowElementToMarkdown(tableRow, i);
-    rows.push(markdownRow);
-  }
-  return rows.join(NL);
-}
-
-//Convert the rows of the HTML table to the rows of the markdown table
-function convertTableRowElementToMarkdown(tableRow, rowNumber) {
-  let cells = [];
-  let cellEls = [];
-  cellEls = tableRow.match(/[<]th[\s\S]*?[/]th[>]/g);
-  if (!cellEls || cellEls.length == 0) {
-    cellEls = tableRow.match(/[<]td[\s\S]*?[/]td[>]/g);
-  }
-  let dividerCells = [];
-  if (rowNumber == 0) {
-    for (i = 0; i < cellEls.length; i++) {
-      dividerCells.push("---" + " |");
-    }
-    dividerCells = "| " + dividerCells.join(" ");
-  }
-  for (let i = 0; i < cellEls.length; i++) {
-    let cell = cellEls[i];
-    cell.indexOf(">") + 1;
-
-    cells.push(
-      cell
-        .substring(cell.indexOf(">") + 1, cell.indexOf("<", cell.indexOf(">")))
-        .replace(/\*\s+([^\|\*]*)/g, "<li>$1</li>") + " | "
-    );
-  }
-  let row = "| " + cells.join(" ");
-  if (rowNumber == 0) {
-    row = row + NL + dividerCells;
-  }
-
-  return row;
-}
-
-function fix(data) {
-  let content = data;
-  let patt1 = /[<]table[\s\S]*?[/]table[>]/g;
-  let tables = content.match(patt1);
-  if (tables) {
-    for (let e of tables) {
-      let et = e.replace(/\s+/g, " ");
-      let markdownTable = convertTableElementToMarkdown(et);
-      content = content.replace(e, markdownTable);
-    }
-  }
-  return content;
-}
-
-// function test() {
-//   let data = fs.readFileSync(path.join(__dirname, "../bak/txn-how.md"), 
"utf8");
-//   data = fix(data);
-//   fs.writeFileSync(path.join(__dirname, "../bak/txn-how-fixed.md"), data);
-// }
-
-// test();
-
-module.exports = fix;
diff --git a/site2/website-next/migrate/tool/fix-tip-note-in-list.js 
b/site2/website-next/migrate/tool/fix-tip-note-in-list.js
deleted file mode 100644
index 81a3cba8123..00000000000
--- a/site2/website-next/migrate/tool/fix-tip-note-in-list.js
+++ /dev/null
@@ -1,27 +0,0 @@
-module.exports = (data) => {
-  let nData = data;
-  let block = null;
-
-  let uListReg = /^([\*-][\t ]+.*)\n+((\n*[\t ]+.*)*)*/gm;
-
-  while ((block = uListReg.exec(data))) {
-    let content = block[2];
-    if (!content) {
-      continue;
-    }
-    let nContent = content.replace(/^    (?= *)/gm, "  ");
-    nData = nData.replace(content, nContent);
-  }
-
-  let listReg = /^(\d+\.[\t ]+.*)\n+((\n*[\t ]+.*)*)*/gm;
-  while ((block = listReg.exec(data))) {
-    let content = block[2];
-    if (!content) {
-      continue;
-    }
-    let nContent = content.replace(/^    (?= *)/gm, "   ");
-    nData = nData.replace(content, nContent);
-  }
-
-  return nData;
-};
diff --git a/site2/website-next/migrate/tool/fix-tip-note.js 
b/site2/website-next/migrate/tool/fix-tip-note.js
deleted file mode 100644
index 6becf1a5ea7..00000000000
--- a/site2/website-next/migrate/tool/fix-tip-note.js
+++ /dev/null
@@ -1,81 +0,0 @@
-const fs = require("fs");
-const path = require("path");
-
-function fixTip(data) {
-  const _reg =
-    /^([\t ]*)>[\t ]*#*[\t ]*\**(Note|Tip)+s?:?\**[\t ]*\n(([\t ]*)>[\t 
]*[^><].*\n)+/gm;
-  const _type_reg = /#*[\t ]*\**(Note|Tip)+s?:?\**[\t ]*/i;
-
-  let type = "note";
-  let _tips = data.match(_reg);
-  if (!_tips) {
-    return data;
-  }
-  for (let _tip of _tips) {
-    let tip = _tip.replace(/^[ ]>/gm, ">").replace(/^([\t ]*>)[\t ]*/gm, "$1");
-    let type_match = _type_reg.exec(tip);
-    if (type_match) {
-      type = type_match[1] + "";
-      type = type.toLowerCase();
-    }
-    let space = /^([\t ]*)>/.exec(tip)[1];
-    // if (space.length % 2 == 1) {
-    //   space = space.substr(1);
-    // }
-    tip = tip
-      .replace(_type_reg, "")
-      .replace(/^([\t ]*)>[\t ]*/gm, space)
-      .replace(/^\s*\n/gm, "");
-    tip = space + ":::" + type + "\n\n" + tip + "\n" + space + ":::\n";
-    data = data.replace(_tip, tip);
-  }
-  return data
-    .replace(
-      /(.*)(\s*\n){3,}(\s*:::.*)((((?!:::).)*\n*)+):::.*(\s*\n)+/g,
-      "$1\n\n$3$4:::\n\n"
-    ) //解决多个空行
-    .replace(/(\s*:::.*(((?!:::).)*\n*)+):::.*\n+/g, "$1:::\n\n"); //解决多个空行 
//解决代码块结束标识符后无空行
-}
-
-// function fixListWithTip(data) {
-//   const _reg = /^([*-]\s+.*)([\s\S]*?)(:::[\s\S]*?:::)/gm;
-//   let _match = data.match(_reg);
-//   if (!_match) {
-//     return data;
-//   }
-//   for (let _m of _match) {
-//     let __m = _m.match(/^([*-]\s+.*)([\s\S]*?)(:::[\s\S]*?:::)/m);
-//     let top = __m[1];
-//     let seconds = __m[2];
-//     let tip = __m[3];
-//     // seconds = seconds.replace(/^([\t ]*)(\w+)/gm, "$1* $2");
-//     tip = tip.replace(/^[\t ]+/gm, "");
-//     data = data
-//       .replace(_m, top + seconds + "\n" + tip)
-//       .replace(/(\s*\n){3,}:::/g, "\n\n:::")
-//       .replace(/:::(\s*\n){3,}/g, ":::\n\n");
-//   }
-//   return data;
-// }
-
-function fix(data) {
-  data = fixTip(data);
-  // data = fixListWithTip(data);
-  return data;
-}
-
-function test() {
-  let data = fs.readFileSync(
-    path.join(__dirname, "../bak/tiered-storage-overview.md"),
-    "utf8"
-  );
-  data = fix(data);
-  fs.writeFileSync(
-    path.join(__dirname, "../bak/tiered-storage-overview-fixed.md"),
-    data
-  );
-}
-
-// test();
-
-module.exports = fix;
diff --git a/site2/website-next/migrate/tool/left-md.js 
b/site2/website-next/migrate/tool/left-md.js
deleted file mode 100644
index 356160a1f02..00000000000
--- a/site2/website-next/migrate/tool/left-md.js
+++ /dev/null
@@ -1,217 +0,0 @@
-const fs = require("fs");
-const path = require("path");
-const CONST = require("../const");
-const { old, next } = CONST;
-
-function _log(msg) {
-  if (typeof require !== "undefined" && require.main === module) {
-    console.log(msg);
-  }
-}
-
-const left = (version, migratedList) => {
-  let vReg = /id:\s*version-(\d\.?)+-(incubating-)?(.*)/;
-  let nextReg = /id:\s*(.*)/;
-  let list = [];
-
-  let version_full = "version-" + version;
-  let src = `../../../${old.baseDir}/versioned_docs/` + version_full;
-  if (version == "next") {
-    src = "../../../" + old.docsDir;
-  }
-  src = path.join(__dirname, src);
-  let docsList = fs.readdirSync(src);
-  for (let filename of docsList) {
-    let pathname = path.join(src, filename);
-    if (fs.statSync(pathname).isDirectory()) {
-      continue;
-    }
-    let data = fs.readFileSync(pathname, "utf8");
-    let id = "";
-    if (vReg.test(data)) {
-      id = vReg.exec(data)[3];
-    } else if (nextReg.test(data)) {
-      id = nextReg.exec(data)[1];
-    }
-    if (migratedList.includes(id)) {
-      continue;
-    }
-    // list.push(filename.replace(".md", ""));
-    list.push(pathname);
-  }
-  return list;
-};
-
-module.exports = left;
-
-//Test
-if (typeof require !== "undefined" && require.main === module) {
-  let list = left("2.9.1", [
-    "adaptors-kafka",
-    "adaptors-spark",
-    "adaptors-storm",
-    "admin-api-brokers",
-    "admin-api-clusters",
-    "admin-api-functions",
-    "admin-api-namespaces",
-    "admin-api-non-partitioned-topics",
-    "admin-api-non-persistent-topics",
-    "admin-api-overview",
-    "admin-api-packages",
-    "admin-api-partitioned-topics",
-    "admin-api-permissions",
-    "admin-api-persistent-topics",
-    "admin-api-schemas",
-    "admin-api-tenants",
-    "admin-api-topics",
-    "administration-dashboard",
-    "administration-geo",
-    "administration-isolation",
-    "administration-load-balance",
-    "administration-proxy",
-    "administration-pulsar-manager",
-    "administration-stats",
-    "administration-upgrade",
-    "administration-zk-bk",
-    "client-libraries-cgo",
-    "client-libraries-cpp",
-    "client-libraries-dotnet",
-    "client-libraries-go",
-    "client-libraries-java",
-    "client-libraries-node",
-    "client-libraries-python",
-    "client-libraries-websocket",
-    "concepts-architecture-overview",
-    "concepts-authentication",
-    "concepts-clients",
-    "concepts-messaging",
-    "concepts-multi-tenancy",
-    "concepts-multiple-advertised-listeners",
-    "concepts-overview",
-    "concepts-proxy-sni-routing",
-    "concepts-replication",
-    "concepts-tiered-storage",
-    "concepts-topic-compaction",
-    "concepts-transactions",
-    "cookbooks-bookkeepermetadata",
-    "cookbooks-compaction",
-    "cookbooks-deduplication",
-    "cookbooks-encryption",
-    "cookbooks-message-queue",
-    "cookbooks-non-persistent",
-    "cookbooks-partitioned",
-    "cookbooks-retention-expiry",
-    "cookbooks-tiered-storage",
-    "deploy-aws",
-    "deploy-bare-metal-multi-cluster",
-    "deploy-bare-metal",
-    "deploy-dcos",
-    "deploy-docker",
-    "deploy-kubernetes",
-    "deploy-monitoring",
-    "developing-binary-protocol",
-    "developing-load-manager",
-    "developing-tools",
-    "functions-cli",
-    "functions-debug",
-    "functions-deploy",
-    "functions-develop",
-    "functions-metrics",
-    "functions-overview",
-    "functions-package",
-    "functions-runtime",
-    "functions-worker",
-    "getting-started-clients",
-    "getting-started-concepts-and-architecture",
-    "getting-started-docker",
-    "getting-started-helm",
-    "getting-started-pulsar",
-    "getting-started-standalone",
-    "helm-deploy",
-    "helm-install",
-    "helm-overview",
-    "helm-prepare",
-    "helm-tools",
-    "helm-upgrade",
-    "io-aerospike-sink",
-    "io-canal-source",
-    "io-cassandra-sink",
-    "io-cdc-debezium",
-    "io-cdc",
-    "io-cli",
-    "io-connectors",
-    "io-debezium-source",
-    "io-debug",
-    "io-develop",
-    "io-dynamodb-source",
-    "io-elasticsearch-sink",
-    "io-file-source",
-    "io-flume-sink",
-    "io-flume-source",
-    "io-hbase-sink",
-    "io-hdfs2-sink",
-    "io-hdfs3-sink",
-    "io-influxdb-sink",
-    "io-jdbc-sink",
-    "io-kafka-sink",
-    "io-kafka-source",
-    "io-kinesis-sink",
-    "io-kinesis-source",
-    "io-mongo-sink",
-    "io-netty-source",
-    "io-nsq-source",
-    "io-overview",
-    "io-quickstart",
-    "io-rabbitmq-sink",
-    "io-rabbitmq-source",
-    "io-redis-sink",
-    "io-solr-sink",
-    "io-twitter-source",
-    "io-twitter",
-    "io-use",
-    "performance-pulsar-perf",
-    "reference-cli-tools",
-    "reference-configuration",
-    "reference-connector-admin",
-    "reference-metrics",
-    "reference-pulsar-admin",
-    "reference-terminology",
-    "schema-evolution-compatibility",
-    "schema-get-started",
-    "schema-manage",
-    "schema-understand",
-    "security-athenz",
-    "security-authorization",
-    "security-bouncy-castle",
-    "security-encryption",
-    "security-extending",
-    "security-jwt",
-    "security-kerberos",
-    "security-oauth2",
-    "security-overview",
-    "security-tls-authentication",
-    "security-tls-keystore",
-    "security-tls-transport",
-    "security-token-admin",
-    "sql-deployment-configurations",
-    "sql-getting-started",
-    "sql-overview",
-    "sql-rest-api",
-    "tiered-storage-aliyun",
-    "tiered-storage-aws",
-    "tiered-storage-azure",
-    "tiered-storage-filesystem",
-    "tiered-storage-gcs",
-    "tiered-storage-overview",
-    "transaction-api",
-    "transaction-guarantee",
-    "txn-how",
-    "txn-monitor",
-    "txn-use",
-    "txn-what",
-    "txn-why",
-    "window-functions-context",
-  ]);
-  // fs.writeFileSync(path.join(__dirname, "bak.json"), JSON.stringify(list, 
null, 2));
-  console.log(list);
-}


Reply via email to