Separate README into doc files

This commit is contained in:
be5invis 2021-11-01 22:14:32 -07:00
parent a8c49b8223
commit 9231ce994f
7 changed files with 3059 additions and 3033 deletions

3014
README.md

File diff suppressed because one or more lines are too long

2283
doc/character-variants.md Normal file

File diff suppressed because it is too large Load diff

515
doc/custom-build.md Normal file

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1,79 @@
# List of Language-specific Ligation Sets of Iosevka
<!-- BEGIN Section-OT-Ligation-Tags-2 -->
<!-- THIS SECTION IS AUTOMATICALLY GENERATED. DO NOT EDIT. -->
<table>
<tr>
<td><code>dlig</code></td>
<td>Discretionary ligatures</td>
</tr>
<tr>
<td colspan="2"><img src="../images/ligset-dlig-1.png"/></td>
</tr>
<tr>
<td><code>CLIK</code>; <code>JSPT</code>; <code>PHPX</code></td>
<td>C-Like, JavaScript, PHP</td>
</tr>
<tr>
<td colspan="2"><img src="../images/ligset-CLIK-1.png"/></td>
</tr>
<tr>
<td><code>MLXX</code>; <code>FSHP</code></td>
<td>ML, F#</td>
</tr>
<tr>
<td colspan="2"><img src="../images/ligset-MLXX-1.png"/></td>
</tr>
<tr>
<td><code>FSTA</code></td>
<td>F*</td>
</tr>
<tr>
<td colspan="2"><img src="../images/ligset-FSTA-1.png"/></td>
</tr>
<tr>
<td><code>HSKL</code>; <code>IDRS</code>; <code>ELMX</code>; <code>PURS</code></td>
<td>Haskell, Idris, Elm, PureScript</td>
</tr>
<tr>
<td colspan="2"><img src="../images/ligset-HSKL-1.png"/></td>
</tr>
<tr>
<td><code>SWFT</code></td>
<td>Swift</td>
</tr>
<tr>
<td colspan="2"><img src="../images/ligset-SWFT-1.png"/></td>
</tr>
<tr>
<td><code>COQX</code></td>
<td>Coq</td>
</tr>
<tr>
<td colspan="2"><img src="../images/ligset-COQX-1.png"/></td>
</tr>
<tr>
<td><code>MTLB</code></td>
<td>Matlab</td>
</tr>
<tr>
<td colspan="2"><img src="../images/ligset-MTLB-1.png"/></td>
</tr>
<tr>
<td><code>VRLG</code></td>
<td>Verilog</td>
</tr>
<tr>
<td colspan="2"><img src="../images/ligset-VRLG-1.png"/></td>
</tr>
<tr>
<td><code>WFLM</code></td>
<td>Wolfram Language (Mathematica)</td>
</tr>
<tr>
<td colspan="2"><img src="../images/ligset-WFLM-1.png"/></td>
</tr>
</table>
<!-- END Section-OT-Ligation-Tags-2 -->

142
doc/stylistic-sets.md Normal file
View file

@ -0,0 +1,142 @@
# List of Stylistic Sets of Iosevka
<!-- BEGIN Section-OT-Stylistic-Sets -->
<!-- THIS SECTION IS AUTOMATICALLY GENERATED. DO NOT EDIT. -->
<table>
<tr>
<td colspan="2"><code>ss01</code> — Andale Mono Style</td>
</tr>
<tr>
<td><img src="../images/stylistic-set-u-ss01-1.png"/></td>
<td><img src="../images/stylistic-set-i-ss01-1.png"/></td>
</tr>
<tr>
<td colspan="2"><code>ss02</code> — Anonymous Pro Style</td>
</tr>
<tr>
<td><img src="../images/stylistic-set-u-ss02-1.png"/></td>
<td><img src="../images/stylistic-set-i-ss02-1.png"/></td>
</tr>
<tr>
<td colspan="2"><code>ss03</code> — Consolas Style</td>
</tr>
<tr>
<td><img src="../images/stylistic-set-u-ss03-1.png"/></td>
<td><img src="../images/stylistic-set-i-ss03-1.png"/></td>
</tr>
<tr>
<td colspan="2"><code>ss04</code> — Menlo Style</td>
</tr>
<tr>
<td><img src="../images/stylistic-set-u-ss04-1.png"/></td>
<td><img src="../images/stylistic-set-i-ss04-1.png"/></td>
</tr>
<tr>
<td colspan="2"><code>ss05</code> — Fira Mono Style</td>
</tr>
<tr>
<td><img src="../images/stylistic-set-u-ss05-1.png"/></td>
<td><img src="../images/stylistic-set-i-ss05-1.png"/></td>
</tr>
<tr>
<td colspan="2"><code>ss06</code> — Liberation Mono Style</td>
</tr>
<tr>
<td><img src="../images/stylistic-set-u-ss06-1.png"/></td>
<td><img src="../images/stylistic-set-i-ss06-1.png"/></td>
</tr>
<tr>
<td colspan="2"><code>ss07</code> — Monaco Style</td>
</tr>
<tr>
<td><img src="../images/stylistic-set-u-ss07-1.png"/></td>
<td><img src="../images/stylistic-set-i-ss07-1.png"/></td>
</tr>
<tr>
<td colspan="2"><code>ss08</code> — Pragmata Pro Style</td>
</tr>
<tr>
<td><img src="../images/stylistic-set-u-ss08-1.png"/></td>
<td><img src="../images/stylistic-set-i-ss08-1.png"/></td>
</tr>
<tr>
<td colspan="2"><code>ss09</code> — Source Code Pro Style</td>
</tr>
<tr>
<td><img src="../images/stylistic-set-u-ss09-1.png"/></td>
<td><img src="../images/stylistic-set-i-ss09-1.png"/></td>
</tr>
<tr>
<td colspan="2"><code>ss10</code> — Envy Code R Style</td>
</tr>
<tr>
<td><img src="../images/stylistic-set-u-ss10-1.png"/></td>
<td><img src="../images/stylistic-set-i-ss10-1.png"/></td>
</tr>
<tr>
<td colspan="2"><code>ss11</code> — X Window Style</td>
</tr>
<tr>
<td><img src="../images/stylistic-set-u-ss11-1.png"/></td>
<td><img src="../images/stylistic-set-i-ss11-1.png"/></td>
</tr>
<tr>
<td colspan="2"><code>ss12</code> — Ubuntu Mono Style</td>
</tr>
<tr>
<td><img src="../images/stylistic-set-u-ss12-1.png"/></td>
<td><img src="../images/stylistic-set-i-ss12-1.png"/></td>
</tr>
<tr>
<td colspan="2"><code>ss13</code> — Lucida Style</td>
</tr>
<tr>
<td><img src="../images/stylistic-set-u-ss13-1.png"/></td>
<td><img src="../images/stylistic-set-i-ss13-1.png"/></td>
</tr>
<tr>
<td colspan="2"><code>ss14</code> — JetBrains Mono Style</td>
</tr>
<tr>
<td><img src="../images/stylistic-set-u-ss14-1.png"/></td>
<td><img src="../images/stylistic-set-i-ss14-1.png"/></td>
</tr>
<tr>
<td colspan="2"><code>ss15</code> — IBM Plex Mono Style</td>
</tr>
<tr>
<td><img src="../images/stylistic-set-u-ss15-1.png"/></td>
<td><img src="../images/stylistic-set-i-ss15-1.png"/></td>
</tr>
<tr>
<td colspan="2"><code>ss16</code> — PT Mono Style</td>
</tr>
<tr>
<td><img src="../images/stylistic-set-u-ss16-1.png"/></td>
<td><img src="../images/stylistic-set-i-ss16-1.png"/></td>
</tr>
<tr>
<td colspan="2"><code>ss17</code> — Recursive Mono Style</td>
</tr>
<tr>
<td><img src="../images/stylistic-set-u-ss17-1.png"/></td>
<td><img src="../images/stylistic-set-i-ss17-1.png"/></td>
</tr>
<tr>
<td colspan="2"><code>ss18</code> — Input Mono Style</td>
</tr>
<tr>
<td><img src="../images/stylistic-set-u-ss18-1.png"/></td>
<td><img src="../images/stylistic-set-i-ss18-1.png"/></td>
</tr>
<tr>
<td colspan="2"><code>ss20</code> — Curly Style</td>
</tr>
<tr>
<td><img src="../images/stylistic-set-u-ss20-1.png"/></td>
<td><img src="../images/stylistic-set-i-ss20-1.png"/></td>
</tr>
</table>
<!-- END Section-OT-Stylistic-Sets -->

View file

@ -9,22 +9,24 @@ const { getCharMapAndSupportedLanguageList } = require("../export-data/supported
///////////////////////////////////////////////////////////////////////////////////////////////////
module.exports = async function main(argv) {
const readmePath = path.resolve(__dirname, "../../README.md");
let readme = await fs.readFile(readmePath, "utf-8");
readme = (await processSsOt()).apply(readme);
readme = (await processCherryPickingStyles()).apply(readme);
let readme = await fs.readFile(argv.mdFilePath, "utf-8");
const dirs = {
images: path.posix.relative(path.dirname(argv.mdFilePath), "images")
};
readme = (await processSsOt(dirs)).apply(readme);
readme = (await processCherryPickingStyles(dirs)).apply(readme);
readme = (await processSsStyles()).apply(readme);
readme = (await processCvOt()).apply(readme);
readme = (await processCvOt(dirs)).apply(readme);
readme = (await processLigSetCherryPicking()).apply(readme);
readme = (await processLigSetPreDef()).apply(readme);
readme = (await processLigSetOt(1, g => g.tag === "calt")).apply(readme);
readme = (await processLigSetOt(2, g => g.tag !== "calt")).apply(readme);
readme = (await processLigSetOt(dirs, 1, g => g.tag === "calt")).apply(readme);
readme = (await processLigSetOt(dirs, 2, g => g.tag !== "calt")).apply(readme);
readme = (await processLangList(argv)).apply(readme);
readme = (await processPrivateBuildPlans()).apply(readme);
await fs.writeFile(readmePath, readme);
await fs.writeFile(argv.mdFilePath, readme);
};
async function processSsOt() {
async function processSsOt(dirs) {
const variantsData = await parseVariantsData();
const md = new MdCol("Section-OT-Stylistic-Sets");
md.log(`<table>`);
@ -37,15 +39,15 @@ async function processSsOt() {
}
{
md.log(`<tr>`);
md.log(`<td><img src="images/stylistic-set-u-${ss.tag}-${ss.rank}.png"/></td>`);
md.log(`<td><img src="images/stylistic-set-i-${ss.tag}-${ss.rank}.png"/></td>`);
md.log(`<td><img src="${dirs.images}/stylistic-set-u-${ss.tag}-${ss.rank}.png"/></td>`);
md.log(`<td><img src="${dirs.images}/stylistic-set-i-${ss.tag}-${ss.rank}.png"/></td>`);
md.log(`</tr>`);
}
}
md.log(`</table>`);
return md;
}
async function processCvOt() {
async function processCvOt(dirs) {
const variantsData = await parseVariantsData();
const md = new MdCol("Section-OT-Character-Variants");
const TableColumns = 12;
@ -74,7 +76,7 @@ async function processCvOt() {
const iCvv = rid * entriesPerRow + cid;
if (iCvv >= effVariants.length) continue;
const cvv = effVariants[iCvv];
const imageUrl = `images/character-variant-${cv.tag}-${cvv.rank}.png`;
const imageUrl = `${dirs.images}/character-variant-${cv.tag}-${cvv.rank}.png`;
md.log(`<td${itemColSpanHtml}><img src="${imageUrl}" width="${imgWidth}"/></td>`);
}
if (tailBlankColumnsCount > 0) md.log(`<td colspan="${tailBlankColumnsCount}"> </td>`);
@ -107,14 +109,14 @@ async function processSsStyles() {
}
return md;
}
async function processCherryPickingStyles() {
async function processCherryPickingStyles(dirs) {
const variantsData = await parseVariantsData();
const md = new MdCol("Section-Cherry-Picking-Styles");
const headerPath = path.resolve(__dirname, "fragments/description-cheery-picking-styles.md");
md.log(await fs.readFile(headerPath, "utf-8"));
formatCv(md, {
formatCv(md, dirs, {
introMD: `Default digit form`,
sampleImageCountEm: 10,
alternatives: [
@ -131,7 +133,7 @@ async function processCherryPickingStyles() {
]
});
formatCv(md, {
formatCv(md, dirs, {
introMD: `APL form`,
sampleImageCountEm: 7,
alternatives: [
@ -169,7 +171,7 @@ async function processCherryPickingStyles() {
description: formatDescription(cvv.description) + formatDefaults(cvv.key, defaults)
});
}
formatCv(md, info);
formatCv(md, dirs, info);
}
return md;
}
@ -178,12 +180,12 @@ function sampleImageCountEmOfCv(cv) {
return cv.hotChars.length * (cv.slopeDependent ? 2 : 1);
}
function formatCv(md, info) {
function formatCv(md, dirs, info) {
md.log(` - ${info.introMD}:`);
const imgWidth = 32 * info.sampleImageCountEm;
let sTable = " <table>";
for (const alt of info.alternatives) {
const imageUrl = `images/character-variant-${alt.imageId}.png`;
const imageUrl = `${dirs.images}/character-variant-${alt.imageId}.png`;
const image = `<img src="${imageUrl}" width="${imgWidth}"/>`;
const selectorText = alt.selectors.map(x => `<code>${x}</code>`).join(", ");
sTable +=
@ -295,7 +297,7 @@ async function processLigSetPreDef() {
return md;
}
async function processLigSetOt(index, fn) {
async function processLigSetOt(dirs, index, fn) {
const ligData = await parseLigationData();
const md = new MdCol(`Section-OT-Ligation-Tags-${index}`);
md.log(`<table>`);
@ -311,7 +313,9 @@ async function processLigSetOt(index, fn) {
}
{
md.log(`<tr>`);
md.log(`<td colspan="2"><img src="images/ligset-${ls.tag}-${ls.rank}.png"/></td>`);
md.log(
`<td colspan="2"><img src="${dirs.images}/ligset-${ls.tag}-${ls.rank}.png"/></td>`
);
md.log(`</tr>`);
}
}

View file

@ -702,12 +702,21 @@ const SnapShotHtml = file(`${SNAPSHOT_TMP}/index.html`, async (target, out) => {
outputPath: out.full,
outputDataPath: `${out.dir}/${out.name}.data.json`
});
await node(`utility/amend-readme/index`, {
await amendReadmeFor("README.md", cm, cmi, cmo);
await amendReadmeFor("doc/stylistic-sets.md", cm, cmi, cmo);
await amendReadmeFor("doc/character-variants.md", cm, cmi, cmo);
await amendReadmeFor("doc/custom-build.md", cm, cmi, cmo);
await amendReadmeFor("doc/language-specific-ligation-sets.md", cm, cmi, cmo);
});
async function amendReadmeFor(md, cm, cmi, cmo) {
return node(`utility/amend-readme/index`, {
mdFilePath: md,
charMapPath: cm.full,
charMapItalicPath: cmi.full,
charMapObliquePath: cmo.full
});
});
}
const SnapShotStatic = file.make(
x => `${SNAPSHOT_TMP}/${x}`,
async (target, out) => {