Asciidoc.js - 从已解析的文档中获取 AsciiDoc 源
Asciidoc.js - Get AsciiDoc Source from parsed Document
我正在尝试用 asciidoc.js 解析 AsciiDoc 文件,找到一些部分并将它们应用到重新排列的新文件中。
我能够解析文件,找到我想要的部分,但我无法检索该部分的原始 AscciDoc 代码或从 AST 重新生成它。
package.json
dependencies": {
[...]
"asciidoctor.js": "^1.5.9"
[...]
script.ts
const asciidoctor = require("asciidoctor.js")();
const changelogDoc = asciidoctor.loadFile(
"../user-manual/src/main/asciidoc/Changelog.adoc"
);
[...]
for (const sec of changelogDoc.getSections()) {
for (const subsec of sec.getSections()) {
for (const subsubsec of subsec.getSections()) {
if (subsubsec.hasTitle()) {
const key = subsubsec.getTitle().match(/X[A-Z]+-[0-9]+/);
if(key) {
// Here it returns the rendered HTML content. How to get the AsciiDoc?
return subsubsec.getContent();
}
}
}
}
}
这对我来说很好用:
for(const b of subsubsec.blocks) {
for(const line of b.lines) {
asciiDocSource += line + '\n';
} asciiDocSource += '\n';
}
console.log(asciiDocSource);
return asciiDocSource;
我正在尝试用 asciidoc.js 解析 AsciiDoc 文件,找到一些部分并将它们应用到重新排列的新文件中。
我能够解析文件,找到我想要的部分,但我无法检索该部分的原始 AscciDoc 代码或从 AST 重新生成它。
package.json
dependencies": {
[...]
"asciidoctor.js": "^1.5.9"
[...]
script.ts
const asciidoctor = require("asciidoctor.js")();
const changelogDoc = asciidoctor.loadFile(
"../user-manual/src/main/asciidoc/Changelog.adoc"
);
[...]
for (const sec of changelogDoc.getSections()) {
for (const subsec of sec.getSections()) {
for (const subsubsec of subsec.getSections()) {
if (subsubsec.hasTitle()) {
const key = subsubsec.getTitle().match(/X[A-Z]+-[0-9]+/);
if(key) {
// Here it returns the rendered HTML content. How to get the AsciiDoc?
return subsubsec.getContent();
}
}
}
}
}
这对我来说很好用:
for(const b of subsubsec.blocks) {
for(const line of b.lines) {
asciiDocSource += line + '\n';
} asciiDocSource += '\n';
}
console.log(asciiDocSource);
return asciiDocSource;