From ff56ff5f3e0cfae1bec8299cd312d66db27c906c Mon Sep 17 00:00:00 2001 From: Alexis Osorio <113266346+The-Nice-One@users.noreply.github.com> Date: Fri, 29 May 2026 18:27:20 +0000 Subject: [PATCH 01/10] Change to active voice --- .../configurations/condition/constant_codepoint_count.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/snippets/character_table/configurations/condition/constant_codepoint_count.md b/snippets/character_table/configurations/condition/constant_codepoint_count.md index 77089a2..c7771ed 100644 --- a/snippets/character_table/configurations/condition/constant_codepoint_count.md +++ b/snippets/character_table/configurations/condition/constant_codepoint_count.md @@ -1 +1 @@ -If `use_constant_codepoint_count` is enabled. \ No newline at end of file +If `use_constant_codepoint_count` enabled. \ No newline at end of file From 656077e81dac4bc87a4189f9eb743eb58e540bc3 Mon Sep 17 00:00:00 2001 From: Alexis Osorio <113266346+The-Nice-One@users.noreply.github.com> Date: Fri, 5 Jun 2026 14:26:56 +0000 Subject: [PATCH 02/10] Add missing snippet files and polish field names --- package.json | 3 +- scripts/snippet-tool.ts | 14 +- .../brief/constant_code_point_count.md | 1 + .../brief/constant_codepoint_count.md | 1 - .../condition/constant_code_point_count.md | 1 + .../condition/constant_codepoint_count.md | 1 - .../flag/use_constant_code_point_count.md | 1 + .../flag/use_constant_codepoint_count.md | 1 - .../brief/{codepoints.md => code_points.md} | 0 .../{codepoints.md => code_points.md} | 2 +- snippets/color_table/brief.md | 7 +- .../configurations/brief/constant_alpha.md | 3 - .../condition/constant_alpha.md | 0 .../configurations/flag/use_constant_alpha.md | 0 .../color_table/records/condition/alpha.md | 3 + .../color_table/records/condition/blue.md | 3 + .../records/condition/color_type.md | 3 + .../color_table/records/condition/green.md | 3 + snippets/color_table/records/condition/red.md | 3 + .../links/condition/character_tables.md | 0 .../links/flag/link_character_tables.md | 0 .../font_table/records/condition/author.md | 3 + .../condition/character_table_indexes.md | 3 + .../font_table/records/condition/font_type.md | 3 + snippets/font_table/records/condition/name.md | 3 + .../font_table/records/condition/version.md | 3 + .../condition/constant_bits_per_pixel.md | 3 + .../condition/constant_height.md | 3 + .../condition/constant_width.md | 3 + .../flag/use_constant_bits_per_pixel.md | 3 + .../flag/use_constant_height.md | 3 + .../configurations/flag/use_constant_width.md | 3 + .../links/condition/color_tables.md | 0 .../links/flag/link_color_tables.md | 0 .../records/condition/bits_per_pixel.md | 3 + .../pixmap_table/records/condition/data.md | 3 + .../pixmap_table/records/condition/height.md | 3 + .../pixmap_table/records/condition/width.md | 3 + src/Character Table.md | 8 +- src/Color Table.md | 70 ++++++ vale.log | 204 ++++++++++++++++++ 41 files changed, 359 insertions(+), 18 deletions(-) create mode 100644 snippets/character_table/configurations/brief/constant_code_point_count.md delete mode 100644 snippets/character_table/configurations/brief/constant_codepoint_count.md create mode 100644 snippets/character_table/configurations/condition/constant_code_point_count.md delete mode 100644 snippets/character_table/configurations/condition/constant_codepoint_count.md create mode 100644 snippets/character_table/configurations/flag/use_constant_code_point_count.md delete mode 100644 snippets/character_table/configurations/flag/use_constant_codepoint_count.md rename snippets/character_table/records/brief/{codepoints.md => code_points.md} (100%) rename snippets/character_table/records/condition/{codepoints.md => code_points.md} (68%) create mode 100644 snippets/color_table/configurations/condition/constant_alpha.md create mode 100644 snippets/color_table/configurations/flag/use_constant_alpha.md create mode 100644 snippets/color_table/records/condition/alpha.md create mode 100644 snippets/color_table/records/condition/blue.md create mode 100644 snippets/color_table/records/condition/color_type.md create mode 100644 snippets/color_table/records/condition/green.md create mode 100644 snippets/color_table/records/condition/red.md create mode 100644 snippets/font_table/links/condition/character_tables.md create mode 100644 snippets/font_table/links/flag/link_character_tables.md create mode 100644 snippets/font_table/records/condition/author.md create mode 100644 snippets/font_table/records/condition/character_table_indexes.md create mode 100644 snippets/font_table/records/condition/font_type.md create mode 100644 snippets/font_table/records/condition/name.md create mode 100644 snippets/font_table/records/condition/version.md create mode 100644 snippets/pixmap_table/configurations/condition/constant_bits_per_pixel.md create mode 100644 snippets/pixmap_table/configurations/condition/constant_height.md create mode 100644 snippets/pixmap_table/configurations/condition/constant_width.md create mode 100644 snippets/pixmap_table/configurations/flag/use_constant_bits_per_pixel.md create mode 100644 snippets/pixmap_table/configurations/flag/use_constant_height.md create mode 100644 snippets/pixmap_table/configurations/flag/use_constant_width.md create mode 100644 snippets/pixmap_table/links/condition/color_tables.md create mode 100644 snippets/pixmap_table/links/flag/link_color_tables.md create mode 100644 snippets/pixmap_table/records/condition/bits_per_pixel.md create mode 100644 snippets/pixmap_table/records/condition/data.md create mode 100644 snippets/pixmap_table/records/condition/height.md create mode 100644 snippets/pixmap_table/records/condition/width.md create mode 100644 src/Color Table.md create mode 100644 vale.log diff --git a/package.json b/package.json index cc32b82..09011a9 100644 --- a/package.json +++ b/package.json @@ -5,7 +5,8 @@ "scripts": { "snippet:generate": "tsx scripts/snippet-tool.ts generate", "snippet:collapse": "tsx scripts/snippet-tool.ts collapse", - "snippet:expand": "tsx scripts/snippet-tool.ts expand" + "snippet:expand": "tsx scripts/snippet-tool.ts expand", + "snippet:document": "tsx scripts/snippet-tool.ts document" }, "devDependencies": { "@types/node": "^25.9.1", diff --git a/scripts/snippet-tool.ts b/scripts/snippet-tool.ts index 0862d63..8e791cf 100644 --- a/scripts/snippet-tool.ts +++ b/scripts/snippet-tool.ts @@ -89,9 +89,13 @@ async function generateStructure(options: Record) { for (const name of configurations) { await writePlaceholder(path.join(root, "configurations", "brief", toFileName(name)), name); + await writePlaceholder(path.join(root, "configurations", "condition", toFileName(name)), `${name} condition`); + await writePlaceholder(path.join(root, "configurations", "flag", toFileName(`use_${name}`)), `use_${name}`); } for (const name of links) { await writePlaceholder(path.join(root, "links", "brief", toFileName(name)), name); + await writePlaceholder(path.join(root, "links", "condition", toFileName(name)), `${name} condition`); + await writePlaceholder(path.join(root, "links", "flag", toFileName(`link_${name}`)), `link_${name}`); } for (const name of modifiers) { await writePlaceholder(path.join(root, "modifiers", "brief", toFileName(name)), name); @@ -99,6 +103,7 @@ async function generateStructure(options: Record) { } for (const name of records) { await writePlaceholder(path.join(root, "records", "brief", toFileName(name)), name); + await writePlaceholder(path.join(root, "records", "condition", toFileName(name)), `${name} condition`); } console.log(`Generated snippet structure for table '${tableName}' at snippets/${tableName}`); @@ -234,8 +239,8 @@ function generateConfigurationsSection( lines.push("| --- | ---- | ----------- |"); for (let i = 0; i < configs.length; i++) { - const configBriefName = configs[i]; // e.g., "constant_codepoint_count" - const flagName = "use_" + configBriefName; // e.g., "use_constant_codepoint_count" + const configBriefName = configs[i]; // e.g., "constant_code_point_count" + const flagName = "use_" + configBriefName; // e.g., "use_constant_code_point_count" const flagPath = getRelativeSnippetPath(snippetType, "configurations/flag", flagName); lines.push( `| ${i} | \`${flagName}\` | \\textinput{${flagPath}} |` @@ -370,7 +375,7 @@ async function generateDocument(options: Record) { const tableDir = path.join(process.cwd(), "snippets", tableName); const outputPath = path.resolve( - options.output || path.join(process.cwd(), `${tableName}.md`) + options.output || path.join(process.cwd(), `src/${tableName}.md`) ); // Check if table directory exists @@ -424,7 +429,8 @@ async function generateDocument(options: Record) { await fs.writeFile(outputPath, doc, "utf8"); console.log( - `Generated document for table '${tableName}' at ${path.relative(process.cwd(), outputPath)}` + `Generated document for table '${tableName}' at ${path.relative(process.cwd(), outputPath)} + Make sure to reorder fields accordingly!` ); } diff --git a/snippets/character_table/configurations/brief/constant_code_point_count.md b/snippets/character_table/configurations/brief/constant_code_point_count.md new file mode 100644 index 0000000..09af662 --- /dev/null +++ b/snippets/character_table/configurations/brief/constant_code_point_count.md @@ -0,0 +1 @@ +The exact codepoint length of each `code_points` field in this table \ No newline at end of file diff --git a/snippets/character_table/configurations/brief/constant_codepoint_count.md b/snippets/character_table/configurations/brief/constant_codepoint_count.md deleted file mode 100644 index ecb49b4..0000000 --- a/snippets/character_table/configurations/brief/constant_codepoint_count.md +++ /dev/null @@ -1 +0,0 @@ -The exact codepoint length of each `codepoints` field in this table \ No newline at end of file diff --git a/snippets/character_table/configurations/condition/constant_code_point_count.md b/snippets/character_table/configurations/condition/constant_code_point_count.md new file mode 100644 index 0000000..ec5f1d6 --- /dev/null +++ b/snippets/character_table/configurations/condition/constant_code_point_count.md @@ -0,0 +1 @@ +If `use_constant_code_point_count` is enabled. \ No newline at end of file diff --git a/snippets/character_table/configurations/condition/constant_codepoint_count.md b/snippets/character_table/configurations/condition/constant_codepoint_count.md deleted file mode 100644 index c7771ed..0000000 --- a/snippets/character_table/configurations/condition/constant_codepoint_count.md +++ /dev/null @@ -1 +0,0 @@ -If `use_constant_codepoint_count` enabled. \ No newline at end of file diff --git a/snippets/character_table/configurations/flag/use_constant_code_point_count.md b/snippets/character_table/configurations/flag/use_constant_code_point_count.md new file mode 100644 index 0000000..3d72541 --- /dev/null +++ b/snippets/character_table/configurations/flag/use_constant_code_point_count.md @@ -0,0 +1 @@ +All characters in this table have the same number of code points. \ No newline at end of file diff --git a/snippets/character_table/configurations/flag/use_constant_codepoint_count.md b/snippets/character_table/configurations/flag/use_constant_codepoint_count.md deleted file mode 100644 index 5541d3f..0000000 --- a/snippets/character_table/configurations/flag/use_constant_codepoint_count.md +++ /dev/null @@ -1 +0,0 @@ -All characters in this table have the same number of codepoints. \ No newline at end of file diff --git a/snippets/character_table/records/brief/codepoints.md b/snippets/character_table/records/brief/code_points.md similarity index 100% rename from snippets/character_table/records/brief/codepoints.md rename to snippets/character_table/records/brief/code_points.md diff --git a/snippets/character_table/records/condition/codepoints.md b/snippets/character_table/records/condition/code_points.md similarity index 68% rename from snippets/character_table/records/condition/codepoints.md rename to snippets/character_table/records/condition/code_points.md index eb77441..cb7cf4c 100644 --- a/snippets/character_table/records/condition/codepoints.md +++ b/snippets/character_table/records/condition/code_points.md @@ -1 +1 @@ -UTF-8 encoded codepoint sequence (null-terminated unless `constant_codepoint_count` is set). \ No newline at end of file +UTF-8 encoded codepoint sequence (null-terminated unless `constant_code_point_count` is set). \ No newline at end of file diff --git a/snippets/color_table/brief.md b/snippets/color_table/brief.md index 107e876..9f5e6c4 100644 --- a/snippets/color_table/brief.md +++ b/snippets/color_table/brief.md @@ -1,3 +1,6 @@ -# color_table table +Stores RGBA color values that can be referenced by pixmap data. -Write the documentation content for color_table table here. \ No newline at end of file +## Use Cases + +- **Pixmap palettes** - When linked to a Pixmap Table, provides the color palette for indexed pixel data. +- **Color storage** - Can store color sets independently for other purposes. \ No newline at end of file diff --git a/snippets/color_table/configurations/brief/constant_alpha.md b/snippets/color_table/configurations/brief/constant_alpha.md index 7f826b6..e69de29 100644 --- a/snippets/color_table/configurations/brief/constant_alpha.md +++ b/snippets/color_table/configurations/brief/constant_alpha.md @@ -1,3 +0,0 @@ -# constant_alpha - -Write the documentation content for constant_alpha here. \ No newline at end of file diff --git a/snippets/color_table/configurations/condition/constant_alpha.md b/snippets/color_table/configurations/condition/constant_alpha.md new file mode 100644 index 0000000..e69de29 diff --git a/snippets/color_table/configurations/flag/use_constant_alpha.md b/snippets/color_table/configurations/flag/use_constant_alpha.md new file mode 100644 index 0000000..e69de29 diff --git a/snippets/color_table/records/condition/alpha.md b/snippets/color_table/records/condition/alpha.md new file mode 100644 index 0000000..ef43a25 --- /dev/null +++ b/snippets/color_table/records/condition/alpha.md @@ -0,0 +1,3 @@ +# alpha + +Write the documentation content for alpha here. \ No newline at end of file diff --git a/snippets/color_table/records/condition/blue.md b/snippets/color_table/records/condition/blue.md new file mode 100644 index 0000000..b8af9da --- /dev/null +++ b/snippets/color_table/records/condition/blue.md @@ -0,0 +1,3 @@ +# blue + +Write the documentation content for blue here. \ No newline at end of file diff --git a/snippets/color_table/records/condition/color_type.md b/snippets/color_table/records/condition/color_type.md new file mode 100644 index 0000000..67ef467 --- /dev/null +++ b/snippets/color_table/records/condition/color_type.md @@ -0,0 +1,3 @@ +# color_type + +Write the documentation content for color_type here. \ No newline at end of file diff --git a/snippets/color_table/records/condition/green.md b/snippets/color_table/records/condition/green.md new file mode 100644 index 0000000..21c49bd --- /dev/null +++ b/snippets/color_table/records/condition/green.md @@ -0,0 +1,3 @@ +# green + +Write the documentation content for green here. \ No newline at end of file diff --git a/snippets/color_table/records/condition/red.md b/snippets/color_table/records/condition/red.md new file mode 100644 index 0000000..201aceb --- /dev/null +++ b/snippets/color_table/records/condition/red.md @@ -0,0 +1,3 @@ +# red + +Write the documentation content for red here. \ No newline at end of file diff --git a/snippets/font_table/links/condition/character_tables.md b/snippets/font_table/links/condition/character_tables.md new file mode 100644 index 0000000..e69de29 diff --git a/snippets/font_table/links/flag/link_character_tables.md b/snippets/font_table/links/flag/link_character_tables.md new file mode 100644 index 0000000..e69de29 diff --git a/snippets/font_table/records/condition/author.md b/snippets/font_table/records/condition/author.md new file mode 100644 index 0000000..72cc428 --- /dev/null +++ b/snippets/font_table/records/condition/author.md @@ -0,0 +1,3 @@ +# author + +Write the documentation content for author here. \ No newline at end of file diff --git a/snippets/font_table/records/condition/character_table_indexes.md b/snippets/font_table/records/condition/character_table_indexes.md new file mode 100644 index 0000000..606449c --- /dev/null +++ b/snippets/font_table/records/condition/character_table_indexes.md @@ -0,0 +1,3 @@ +# character_table_indexes + +Write the documentation content for character_table_indexes here. \ No newline at end of file diff --git a/snippets/font_table/records/condition/font_type.md b/snippets/font_table/records/condition/font_type.md new file mode 100644 index 0000000..5361012 --- /dev/null +++ b/snippets/font_table/records/condition/font_type.md @@ -0,0 +1,3 @@ +# font_type + +Write the documentation content for font_type here. \ No newline at end of file diff --git a/snippets/font_table/records/condition/name.md b/snippets/font_table/records/condition/name.md new file mode 100644 index 0000000..44891f8 --- /dev/null +++ b/snippets/font_table/records/condition/name.md @@ -0,0 +1,3 @@ +# name + +Write the documentation content for name here. \ No newline at end of file diff --git a/snippets/font_table/records/condition/version.md b/snippets/font_table/records/condition/version.md new file mode 100644 index 0000000..eb818fb --- /dev/null +++ b/snippets/font_table/records/condition/version.md @@ -0,0 +1,3 @@ +# version + +Write the documentation content for version here. \ No newline at end of file diff --git a/snippets/pixmap_table/configurations/condition/constant_bits_per_pixel.md b/snippets/pixmap_table/configurations/condition/constant_bits_per_pixel.md new file mode 100644 index 0000000..32df24b --- /dev/null +++ b/snippets/pixmap_table/configurations/condition/constant_bits_per_pixel.md @@ -0,0 +1,3 @@ +# constant_bits_per_pixel + +Write the documentation content for constant_bits_per_pixel here. \ No newline at end of file diff --git a/snippets/pixmap_table/configurations/condition/constant_height.md b/snippets/pixmap_table/configurations/condition/constant_height.md new file mode 100644 index 0000000..936e729 --- /dev/null +++ b/snippets/pixmap_table/configurations/condition/constant_height.md @@ -0,0 +1,3 @@ +# constant_height + +Write the documentation content for constant_height here. \ No newline at end of file diff --git a/snippets/pixmap_table/configurations/condition/constant_width.md b/snippets/pixmap_table/configurations/condition/constant_width.md new file mode 100644 index 0000000..eda1ddc --- /dev/null +++ b/snippets/pixmap_table/configurations/condition/constant_width.md @@ -0,0 +1,3 @@ +# constant_width + +Write the documentation content for constant_width here. \ No newline at end of file diff --git a/snippets/pixmap_table/configurations/flag/use_constant_bits_per_pixel.md b/snippets/pixmap_table/configurations/flag/use_constant_bits_per_pixel.md new file mode 100644 index 0000000..32df24b --- /dev/null +++ b/snippets/pixmap_table/configurations/flag/use_constant_bits_per_pixel.md @@ -0,0 +1,3 @@ +# constant_bits_per_pixel + +Write the documentation content for constant_bits_per_pixel here. \ No newline at end of file diff --git a/snippets/pixmap_table/configurations/flag/use_constant_height.md b/snippets/pixmap_table/configurations/flag/use_constant_height.md new file mode 100644 index 0000000..936e729 --- /dev/null +++ b/snippets/pixmap_table/configurations/flag/use_constant_height.md @@ -0,0 +1,3 @@ +# constant_height + +Write the documentation content for constant_height here. \ No newline at end of file diff --git a/snippets/pixmap_table/configurations/flag/use_constant_width.md b/snippets/pixmap_table/configurations/flag/use_constant_width.md new file mode 100644 index 0000000..eda1ddc --- /dev/null +++ b/snippets/pixmap_table/configurations/flag/use_constant_width.md @@ -0,0 +1,3 @@ +# constant_width + +Write the documentation content for constant_width here. \ No newline at end of file diff --git a/snippets/pixmap_table/links/condition/color_tables.md b/snippets/pixmap_table/links/condition/color_tables.md new file mode 100644 index 0000000..e69de29 diff --git a/snippets/pixmap_table/links/flag/link_color_tables.md b/snippets/pixmap_table/links/flag/link_color_tables.md new file mode 100644 index 0000000..e69de29 diff --git a/snippets/pixmap_table/records/condition/bits_per_pixel.md b/snippets/pixmap_table/records/condition/bits_per_pixel.md new file mode 100644 index 0000000..7091d01 --- /dev/null +++ b/snippets/pixmap_table/records/condition/bits_per_pixel.md @@ -0,0 +1,3 @@ +# bits_per_pixel + +Write the documentation content for bits_per_pixel here. \ No newline at end of file diff --git a/snippets/pixmap_table/records/condition/data.md b/snippets/pixmap_table/records/condition/data.md new file mode 100644 index 0000000..bd849a7 --- /dev/null +++ b/snippets/pixmap_table/records/condition/data.md @@ -0,0 +1,3 @@ +# data + +Write the documentation content for data here. \ No newline at end of file diff --git a/snippets/pixmap_table/records/condition/height.md b/snippets/pixmap_table/records/condition/height.md new file mode 100644 index 0000000..154ea86 --- /dev/null +++ b/snippets/pixmap_table/records/condition/height.md @@ -0,0 +1,3 @@ +# height + +Write the documentation content for height here. \ No newline at end of file diff --git a/snippets/pixmap_table/records/condition/width.md b/snippets/pixmap_table/records/condition/width.md new file mode 100644 index 0000000..28f6238 --- /dev/null +++ b/snippets/pixmap_table/records/condition/width.md @@ -0,0 +1,3 @@ +# width + +Write the documentation content for width here. \ No newline at end of file diff --git a/src/Character Table.md b/src/Character Table.md index b1cfa5f..4376c49 100644 --- a/src/Character Table.md +++ b/src/Character Table.md @@ -24,14 +24,14 @@ | Bit | Name | Description | | --- | ------------------------------ | --------------------------------------------------------------- | -| 0 | `use_constant_codepoint_count` | \textinput{../snippets/character_table/configurations/flag/use_constant_codepoint_count.md} | +| 0 | `use_constant_code_point_count` | \textinput{../snippets/character_table/configurations/flag/use_constant_code_point_count.md} | | 1-7 | — | \textinput{../snippets/phrase/reserved.md} | #### Configuration Values | Name | Type | Condition | Description | | -------------------------- | ---- | -------------------------------------------- | ------------------------------------------------------------------- | -| `constant_codepoint_count` | `u8` | \textinput{../snippets/character_table/configurations/condition/constant_codepoint_count.md} | \textinput{../snippets/character_table/configurations/brief/constant_codepoint_count.md} | +| `constant_code_point_count` | `u8` | \textinput{../snippets/character_table/configurations/condition/constant_code_point_count.md} | \textinput{../snippets/character_table/configurations/brief/constant_code_point_count.md} | ### Table Links @@ -54,8 +54,8 @@ Each character record contains the following fields in order: | -------------------- | -------------------- | ----------------------------------------------- | ------------------------------------------------------------------------------------------- | | `advance_x` | `u8` | \textinput{../snippets/character_table/records/condition/advance_x.md} | \textinput{../snippets/character_table/records/brief/advance_x.md} | | `pixmap_index` | `u8` | \textinput{../snippets/character_table/records/condition/pixmap_index.md} | \textinput{../snippets/character_table/records/brief/pixmap_index.md} | -| `pixmap_table_index` | `Index` | \textinput{../snippets/character_table/records/condition/pixmap_table_index.md} | \textinput{../snippets/character_table/records/brief/pixmap_table_index.md} | -| `codepoints` | `str` | \textinput{../snippets/character_table/records/condition/codepoints.md} | \textinput{../snippets/character_table/records/brief/codepoints.md} | +| `pixmap_table_index` | `u8` | \textinput{../snippets/character_table/records/condition/pixmap_table_index.md} | \textinput{../snippets/character_table/records/brief/pixmap_table_index.md} | +| `code_points` | `String` | \textinput{../snippets/character_table/records/condition/code_points.md} | \textinput{../snippets/character_table/records/brief/codepoints.md} | ### Record Layout Examples diff --git a/src/Color Table.md b/src/Color Table.md new file mode 100644 index 0000000..4b0968a --- /dev/null +++ b/src/Color Table.md @@ -0,0 +1,70 @@ +\textinput{../snippets/color_table/brief.md} + +## Table Structure + +### Identifier +- **Value**: `0x03` + + +## Modifier Flags + +| Bit | Name | Description | +| --- | ---- | ----------- | +| 0 | `use_color_type` | \textinput{../snippets/color_table/modifiers/brief/use_color_type.md} | +| 1-7 | — | \textinput{../snippets/phrase/reserved.md} | + +### Flag Details + +- **`use_color_type`**: \textinput{../snippets/color_table/modifiers/details/use_color_type.md} + +## Configuration Flags + +| Bit | Name | Description | +| --- | ---- | ----------- | +| 0 | `use_constant_alpha` | \textinput{../snippets/color_table/configurations/flag/use_constant_alpha.md} | +| 1-7 | — | \textinput{../snippets/phrase/reserved.md} | + +### Configuration Values + +| Name | Type | Condition | Description | +| ---- | ---- | --------- | ----------- | +| `constant_alpha` | `u8` | \textinput{../snippets/color_table/configurations/condition/constant_alpha.md} | \textinput{../snippets/color_table/configurations/brief/constant_alpha.md} | + +## Record Fields + + +Each record contains the following fields in order: + +| Field | Type | Condition | Description | +| ----- | ---- | --------- | ----------- | +| `color_type` | `[TYPE_PLACEHOLDER]` | \textinput{../snippets/color_table/records/condition/color_type.md} | \textinput{../snippets/color_table/records/brief/color_type.md} | +| `alpha` | `[TYPE_PLACEHOLDER]` | \textinput{../snippets/color_table/records/condition/alpha.md} | \textinput{../snippets/color_table/records/brief/alpha.md} | +| `red` | `[TYPE_PLACEHOLDER]` | \textinput{../snippets/color_table/records/condition/red.md} | \textinput{../snippets/color_table/records/brief/red.md} | +| `green` | `[TYPE_PLACEHOLDER]` | \textinput{../snippets/color_table/records/condition/green.md} | \textinput{../snippets/color_table/records/brief/green.md} | +| `blue` | `[TYPE_PLACEHOLDER]` | \textinput{../snippets/color_table/records/condition/blue.md} | \textinput{../snippets/color_table/records/brief/blue.md} | + +## Examples + + +Provide example records demonstrating various field combinations: + +**Example 1: Minimal record** (no optional fields) +``` +[EXAMPLE_PLACEHOLDER] +``` + +**Example 2: With optional fields** +``` +[EXAMPLE_PLACEHOLDER] +``` + + +## Complete Table Example + + +The following byte sequence defines a minimal table with example records: + +| Byte(s) | Binary | Hex | Description | +| ------- | ------ | --- | ----------- | +| 1 | `[BINARY_PLACEHOLDER]` | `[HEX_PLACEHOLDER]` | Table identifier | +| ... | ... | ... | [DESCRIPTION_PLACEHOLDER] | \ No newline at end of file diff --git a/vale.log b/vale.log new file mode 100644 index 0000000..db1f761 --- /dev/null +++ b/vale.log @@ -0,0 +1,204 @@ + {"message": "[write-good.Passive] 'is enabled' may be passive voice. Use active voice if you can.", "location": {"path": "snippets/character_table/configurations/condition/constant_codepoint_count.md", "range": {"start": {"line": 1, "column": 35}}}, "severity": "WARNING"} + {"message": "[Google.Passive] In general, use active voice instead of passive voice ('is enabled').", "location": {"path": "snippets/character_table/configurations/condition/constant_codepoint_count.md", "range": {"start": {"line": 1, "column": 35}}}, "severity": "INFO"} + {"message": "[write-good.E-Prime] Try to avoid using 'is'.", "location": {"path": "snippets/character_table/configurations/condition/constant_codepoint_count.md", "range": {"start": {"line": 1, "column": 35}}}, "severity": "INFO"} + {"message": "[Vale.Spelling] Did you really mean 'codepoint'?", "location": {"path": "snippets/character_table/configurations/brief/constant_codepoint_count.md", "range": {"start": {"line": 1, "column": 11}}}, "severity": "ERROR"} + {"message": "[Vale.Spelling] Did you really mean 'codepoints'?", "location": {"path": "snippets/character_table/configurations/flag/use_constant_codepoint_count.md", "range": {"start": {"line": 1, "column": 54}}}, "severity": "ERROR"} + {"message": "[Vale.Spelling] Did you really mean 'Pixmap'?", "location": {"path": "snippets/character_table/links/brief/pixmap_tables.md", "range": {"start": {"line": 1, "column": 11}}}, "severity": "ERROR"} + {"message": "[Google.Passive] In general, use active voice instead of passive voice ('is enabled').", "location": {"path": "snippets/character_table/links/condition/pixmap_tables.md", "range": {"start": {"line": 1, "column": 25}}}, "severity": "INFO"} + {"message": "[write-good.E-Prime] Try to avoid using 'is'.", "location": {"path": "snippets/character_table/links/condition/pixmap_tables.md", "range": {"start": {"line": 1, "column": 25}}}, "severity": "INFO"} + {"message": "[write-good.Passive] 'is enabled' may be passive voice. Use active voice if you can.", "location": {"path": "snippets/character_table/links/condition/pixmap_tables.md", "range": {"start": {"line": 1, "column": 25}}}, "severity": "WARNING"} + {"message": "[Vale.Spelling] Did you really mean 'codepoint'?", "location": {"path": "snippets/character_table/brief.md", "range": {"start": {"line": 1, "column": 32}}}, "severity": "ERROR"} + {"message": "[Google.Parens] Use parentheses judiciously.", "location": {"path": "snippets/character_table/brief.md", "range": {"start": {"line": 1, "column": 52}}}, "severity": "INFO"} + {"message": "[Vale.Spelling] Did you really mean 'pixmaps'?", "location": {"path": "snippets/character_table/brief.md", "range": {"start": {"line": 1, "column": 99}}}, "severity": "ERROR"} + {"message": "[Google.Headings] 'Use Cases' should use sentence-style capitalization.", "location": {"path": "snippets/character_table/brief.md", "range": {"start": {"line": 3, "column": 4}}}, "severity": "WARNING"} + {"message": "[Vale.Spelling] Did you really mean 'codepoints'?", "location": {"path": "snippets/character_table/brief.md", "range": {"start": {"line": 5, "column": 86}}}, "severity": "ERROR"} + {"message": "[Vale.Spelling] Did you really mean 'pixmap'?", "location": {"path": "snippets/character_table/brief.md", "range": {"start": {"line": 5, "column": 143}}}, "severity": "ERROR"} + {"message": "[Vale.Spelling] Did you really mean 'Pixmap'?", "location": {"path": "snippets/character_table/links/flag/link_pixmap_tables.md", "range": {"start": {"line": 1, "column": 33}}}, "severity": "ERROR"} + {"message": "[Vale.Spelling] Did you really mean 'pixmap'?", "location": {"path": "snippets/character_table/modifiers/brief/use_pixmap_index.md", "range": {"start": {"line": 1, "column": 71}}}, "severity": "ERROR"} + {"message": "[Vale.Spelling] Did you really mean 'Pixmap'?", "location": {"path": "snippets/character_table/modifiers/brief/use_pixmap_table_index.md", "range": {"start": {"line": 1, "column": 75}}}, "severity": "ERROR"} + {"message": "[Google.WordList] Use 'turn off' or 'off' instead of 'disabled'.", "location": {"path": "snippets/character_table/modifiers/details/use_pixmap_index.md", "range": {"start": {"line": 1, "column": 6}}}, "severity": "WARNING"} + {"message": "[Vale.Spelling] Did you really mean 'pixmap'?", "location": {"path": "snippets/character_table/modifiers/details/use_pixmap_index.md", "range": {"start": {"line": 1, "column": 20}}}, "severity": "ERROR"} + {"message": "[Google.Parens] Use parentheses judiciously.", "location": {"path": "snippets/character_table/modifiers/details/use_pixmap_index.md", "range": {"start": {"line": 1, "column": 78}}}, "severity": "INFO"} + {"message": "[Google.WordList] Use 'turn off' or 'off' instead of 'disabled'.", "location": {"path": "snippets/character_table/modifiers/details/use_advance_x.md", "range": {"start": {"line": 1, "column": 6}}}, "severity": "WARNING"} + {"message": "[write-good.E-Prime] Try to avoid using 'is'.", "location": {"path": "snippets/character_table/modifiers/details/use_advance_x.md", "range": {"start": {"line": 1, "column": 36}}}, "severity": "INFO"} + {"message": "[Vale.Spelling] Did you really mean 'pixmap's'?", "location": {"path": "snippets/character_table/modifiers/details/use_advance_x.md", "range": {"start": {"line": 1, "column": 43}}}, "severity": "ERROR"} + {"message": "[write-good.Passive] 'is added' may be passive voice. Use active voice if you can.", "location": {"path": "snippets/character_table/modifiers/details/use_advance_x.md", "range": {"start": {"line": 1, "column": 83}}}, "severity": "WARNING"} + {"message": "[Google.Passive] In general, use active voice instead of passive voice ('is added').", "location": {"path": "snippets/character_table/modifiers/details/use_advance_x.md", "range": {"start": {"line": 1, "column": 83}}}, "severity": "INFO"} + {"message": "[write-good.E-Prime] Try to avoid using 'is'.", "location": {"path": "snippets/character_table/modifiers/details/use_advance_x.md", "range": {"start": {"line": 1, "column": 83}}}, "severity": "INFO"} + {"message": "[write-good.E-Prime] Try to avoid using 'is'.", "location": {"path": "snippets/character_table/records/brief/pixmap_index.md", "range": {"start": {"line": 1, "column": 32}}}, "severity": "INFO"} + {"message": "[write-good.Passive] 'is enabled' may be passive voice. Use active voice if you can.", "location": {"path": "snippets/character_table/records/brief/pixmap_index.md", "range": {"start": {"line": 1, "column": 32}}}, "severity": "WARNING"} + {"message": "[Google.Passive] In general, use active voice instead of passive voice ('is enabled').", "location": {"path": "snippets/character_table/records/brief/pixmap_index.md", "range": {"start": {"line": 1, "column": 32}}}, "severity": "INFO"} + {"message": "[Google.Passive] In general, use active voice instead of passive voice ('is enabled').", "location": {"path": "snippets/character_table/records/brief/pixmap_table_index.md", "range": {"start": {"line": 1, "column": 38}}}, "severity": "INFO"} + {"message": "[write-good.E-Prime] Try to avoid using 'is'.", "location": {"path": "snippets/character_table/records/brief/pixmap_table_index.md", "range": {"start": {"line": 1, "column": 38}}}, "severity": "INFO"} + {"message": "[write-good.Passive] 'is enabled' may be passive voice. Use active voice if you can.", "location": {"path": "snippets/character_table/records/brief/pixmap_table_index.md", "range": {"start": {"line": 1, "column": 38}}}, "severity": "WARNING"} + {"message": "[Google.WordList] Use 'turn off' or 'off' instead of 'disabled'.", "location": {"path": "snippets/character_table/modifiers/details/use_pixmap_table_index.md", "range": {"start": {"line": 1, "column": 6}}}, "severity": "WARNING"} + {"message": "[Vale.Spelling] Did you really mean 'Pixmap'?", "location": {"path": "snippets/character_table/modifiers/details/use_pixmap_table_index.md", "range": {"start": {"line": 1, "column": 45}}}, "severity": "ERROR"} + {"message": "[Vale.Spelling] Did you really mean 'pixmap'?", "location": {"path": "snippets/character_table/modifiers/details/use_pixmap_table_index.md", "range": {"start": {"line": 1, "column": 90}}}, "severity": "ERROR"} + {"message": "[Vale.Spelling] Did you really mean 'pixmap'?", "location": {"path": "snippets/character_table/modifiers/details/use_pixmap_table_index.md", "range": {"start": {"line": 1, "column": 133}}}, "severity": "ERROR"} + {"message": "[Google.Will] Avoid using 'will'.", "location": {"path": "snippets/character_table/modifiers/details/use_pixmap_table_index.md", "range": {"start": {"line": 1, "column": 147}}}, "severity": "WARNING"} + {"message": "[write-good.E-Prime] Try to avoid using 'is'.", "location": {"path": "snippets/character_table/records/condition/advance_x.md", "range": {"start": {"line": 1, "column": 29}}}, "severity": "INFO"} + {"message": "[write-good.Passive] 'is enabled' may be passive voice. Use active voice if you can.", "location": {"path": "snippets/character_table/records/condition/advance_x.md", "range": {"start": {"line": 1, "column": 29}}}, "severity": "WARNING"} + {"message": "[Google.Passive] In general, use active voice instead of passive voice ('is enabled').", "location": {"path": "snippets/character_table/records/condition/advance_x.md", "range": {"start": {"line": 1, "column": 29}}}, "severity": "INFO"} + {"message": "[Google.Parens] Use parentheses judiciously.", "location": {"path": "snippets/character_table/records/condition/codepoints.md", "range": {"start": {"line": 1, "column": 1}}}, "severity": "INFO"} + {"message": "[Vale.Spelling] Did you really mean 'codepoint'?", "location": {"path": "snippets/character_table/records/condition/codepoints.md", "range": {"start": {"line": 1, "column": 15}}}, "severity": "ERROR"} + {"message": "[Google.Passive] In general, use active voice instead of passive voice ('is set').", "location": {"path": "snippets/character_table/records/condition/codepoints.md", "range": {"start": {"line": 1, "column": 85}}}, "severity": "INFO"} + {"message": "[write-good.E-Prime] Try to avoid using 'is'.", "location": {"path": "snippets/character_table/records/condition/codepoints.md", "range": {"start": {"line": 1, "column": 85}}}, "severity": "INFO"} + {"message": "[write-good.Passive] 'is set' may be passive voice. Use active voice if you can.", "location": {"path": "snippets/character_table/records/condition/codepoints.md", "range": {"start": {"line": 1, "column": 85}}}, "severity": "WARNING"} + {"message": "[Vale.Spelling] Did you really mean 'pixmap'?", "location": {"path": "snippets/character_table/records/condition/pixmap_index.md", "range": {"start": {"line": 1, "column": 14}}}, "severity": "ERROR"} + {"message": "[Vale.Spelling] Did you really mean 'Pixmap'?", "location": {"path": "snippets/character_table/records/condition/pixmap_index.md", "range": {"start": {"line": 1, "column": 43}}}, "severity": "ERROR"} + {"message": "[Google.OptionalPlurals] Don't use plurals in parentheses such as in 'Table(s)'.", "location": {"path": "snippets/character_table/records/condition/pixmap_index.md", "range": {"start": {"line": 1, "column": 50}}}, "severity": "ERROR"} + {"message": "[Google.Parens] Use parentheses judiciously.", "location": {"path": "snippets/character_table/records/condition/pixmap_index.md", "range": {"start": {"line": 1, "column": 55}}}, "severity": "INFO"} + {"message": "[Vale.Spelling] Did you really mean 'Pixmap'?", "location": {"path": "snippets/character_table/records/condition/pixmap_table_index.md", "range": {"start": {"line": 1, "column": 23}}}, "severity": "ERROR"} + {"message": "[Google.Headings] 'constant_alpha' should use sentence-style capitalization.", "location": {"path": "snippets/color_table/configurations/brief/constant_alpha.md", "range": {"start": {"line": 1, "column": 3}}}, "severity": "WARNING"} + {"message": "[Vale.Spelling] Did you really mean 'constant_alpha'?", "location": {"path": "snippets/color_table/configurations/brief/constant_alpha.md", "range": {"start": {"line": 1, "column": 3}}}, "severity": "ERROR"} + {"message": "[Vale.Spelling] Did you really mean 'constant_alpha'?", "location": {"path": "snippets/color_table/configurations/brief/constant_alpha.md", "range": {"start": {"line": 3, "column": 37}}}, "severity": "ERROR"} + {"message": "[Google.Headings] 'color_table table' should use sentence-style capitalization.", "location": {"path": "snippets/color_table/brief.md", "range": {"start": {"line": 1, "column": 3}}}, "severity": "WARNING"} + {"message": "[Vale.Spelling] Did you really mean 'color_table'?", "location": {"path": "snippets/color_table/brief.md", "range": {"start": {"line": 1, "column": 3}}}, "severity": "ERROR"} + {"message": "[Vale.Spelling] Did you really mean 'color_table'?", "location": {"path": "snippets/color_table/brief.md", "range": {"start": {"line": 3, "column": 37}}}, "severity": "ERROR"} + {"message": "[Vale.Spelling] Did you really mean 'use_color_type'?", "location": {"path": "snippets/color_table/modifiers/brief/use_color_type.md", "range": {"start": {"line": 1, "column": 3}}}, "severity": "ERROR"} + {"message": "[Google.Headings] 'use_color_type' should use sentence-style capitalization.", "location": {"path": "snippets/color_table/modifiers/brief/use_color_type.md", "range": {"start": {"line": 1, "column": 3}}}, "severity": "WARNING"} + {"message": "[Vale.Spelling] Did you really mean 'use_color_type'?", "location": {"path": "snippets/color_table/modifiers/brief/use_color_type.md", "range": {"start": {"line": 3, "column": 37}}}, "severity": "ERROR"} + {"message": "[Vale.Spelling] Did you really mean 'use_color_type'?", "location": {"path": "snippets/color_table/modifiers/details/use_color_type.md", "range": {"start": {"line": 1, "column": 3}}}, "severity": "ERROR"} + {"message": "[Google.Headings] 'use_color_type details' should use sentence-style capitalization.", "location": {"path": "snippets/color_table/modifiers/details/use_color_type.md", "range": {"start": {"line": 1, "column": 3}}}, "severity": "WARNING"} + {"message": "[Vale.Spelling] Did you really mean 'use_color_type'?", "location": {"path": "snippets/color_table/modifiers/details/use_color_type.md", "range": {"start": {"line": 3, "column": 37}}}, "severity": "ERROR"} + {"message": "[Google.Headings] 'alpha' should use sentence-style capitalization.", "location": {"path": "snippets/color_table/records/brief/alpha.md", "range": {"start": {"line": 1, "column": 3}}}, "severity": "WARNING"} + {"message": "[Google.Headings] 'blue' should use sentence-style capitalization.", "location": {"path": "snippets/color_table/records/brief/blue.md", "range": {"start": {"line": 1, "column": 3}}}, "severity": "WARNING"} + {"message": "[Google.Headings] 'color_type' should use sentence-style capitalization.", "location": {"path": "snippets/color_table/records/brief/color_type.md", "range": {"start": {"line": 1, "column": 3}}}, "severity": "WARNING"} + {"message": "[Vale.Spelling] Did you really mean 'color_type'?", "location": {"path": "snippets/color_table/records/brief/color_type.md", "range": {"start": {"line": 1, "column": 3}}}, "severity": "ERROR"} + {"message": "[Vale.Spelling] Did you really mean 'color_type'?", "location": {"path": "snippets/color_table/records/brief/color_type.md", "range": {"start": {"line": 3, "column": 37}}}, "severity": "ERROR"} + {"message": "[Google.Headings] 'green' should use sentence-style capitalization.", "location": {"path": "snippets/color_table/records/brief/green.md", "range": {"start": {"line": 1, "column": 3}}}, "severity": "WARNING"} + {"message": "[Google.Headings] 'red' should use sentence-style capitalization.", "location": {"path": "snippets/color_table/records/brief/red.md", "range": {"start": {"line": 1, "column": 3}}}, "severity": "WARNING"} + {"message": "[Google.Headings] 'font_table table' should use sentence-style capitalization.", "location": {"path": "snippets/font_table/brief.md", "range": {"start": {"line": 1, "column": 3}}}, "severity": "WARNING"} + {"message": "[Vale.Spelling] Did you really mean 'font_table'?", "location": {"path": "snippets/font_table/brief.md", "range": {"start": {"line": 1, "column": 3}}}, "severity": "ERROR"} + {"message": "[Vale.Spelling] Did you really mean 'font_table'?", "location": {"path": "snippets/font_table/brief.md", "range": {"start": {"line": 3, "column": 37}}}, "severity": "ERROR"} + {"message": "[Google.Headings] 'author' should use sentence-style capitalization.", "location": {"path": "snippets/font_table/records/brief/author.md", "range": {"start": {"line": 1, "column": 3}}}, "severity": "WARNING"} + {"message": "[Google.Headings] 'character_tables' should use sentence-style capitalization.", "location": {"path": "snippets/font_table/links/brief/character_tables.md", "range": {"start": {"line": 1, "column": 3}}}, "severity": "WARNING"} + {"message": "[Vale.Spelling] Did you really mean 'character_tables'?", "location": {"path": "snippets/font_table/links/brief/character_tables.md", "range": {"start": {"line": 1, "column": 3}}}, "severity": "ERROR"} + {"message": "[Vale.Spelling] Did you really mean 'character_tables'?", "location": {"path": "snippets/font_table/links/brief/character_tables.md", "range": {"start": {"line": 3, "column": 37}}}, "severity": "ERROR"} + {"message": "[Vale.Spelling] Did you really mean 'character_table_indexes'?", "location": {"path": "snippets/font_table/records/brief/character_table_indexes.md", "range": {"start": {"line": 1, "column": 3}}}, "severity": "ERROR"} + {"message": "[Google.Headings] 'character_table_indexes' should use sentence-style capitalization.", "location": {"path": "snippets/font_table/records/brief/character_table_indexes.md", "range": {"start": {"line": 1, "column": 3}}}, "severity": "WARNING"} + {"message": "[Vale.Spelling] Did you really mean 'character_table_indexes'?", "location": {"path": "snippets/font_table/records/brief/character_table_indexes.md", "range": {"start": {"line": 3, "column": 37}}}, "severity": "ERROR"} + {"message": "[Google.Headings] 'font_type' should use sentence-style capitalization.", "location": {"path": "snippets/font_table/records/brief/font_type.md", "range": {"start": {"line": 1, "column": 3}}}, "severity": "WARNING"} + {"message": "[Vale.Spelling] Did you really mean 'font_type'?", "location": {"path": "snippets/font_table/records/brief/font_type.md", "range": {"start": {"line": 1, "column": 3}}}, "severity": "ERROR"} + {"message": "[Vale.Spelling] Did you really mean 'font_type'?", "location": {"path": "snippets/font_table/records/brief/font_type.md", "range": {"start": {"line": 3, "column": 37}}}, "severity": "ERROR"} + {"message": "[Google.Headings] 'version' should use sentence-style capitalization.", "location": {"path": "snippets/font_table/records/brief/version.md", "range": {"start": {"line": 1, "column": 3}}}, "severity": "WARNING"} + {"message": "[Vale.Spelling] Did you really mean 'pixmap_table'?", "location": {"path": "snippets/pixmap_table/brief.md", "range": {"start": {"line": 1, "column": 3}}}, "severity": "ERROR"} + {"message": "[Google.Headings] 'pixmap_table table' should use sentence-style capitalization.", "location": {"path": "snippets/pixmap_table/brief.md", "range": {"start": {"line": 1, "column": 3}}}, "severity": "WARNING"} + {"message": "[Vale.Spelling] Did you really mean 'pixmap_table'?", "location": {"path": "snippets/pixmap_table/brief.md", "range": {"start": {"line": 3, "column": 37}}}, "severity": "ERROR"} + {"message": "[Google.Headings] 'name' should use sentence-style capitalization.", "location": {"path": "snippets/font_table/records/brief/name.md", "range": {"start": {"line": 1, "column": 3}}}, "severity": "WARNING"} + {"message": "[Vale.Spelling] Did you really mean 'constant_bits_per_pixel'?", "location": {"path": "snippets/pixmap_table/configurations/brief/constant_bits_per_pixel.md", "range": {"start": {"line": 1, "column": 3}}}, "severity": "ERROR"} + {"message": "[Google.Headings] 'constant_bits_per_pixel' should use sentence-style capitalization.", "location": {"path": "snippets/pixmap_table/configurations/brief/constant_bits_per_pixel.md", "range": {"start": {"line": 1, "column": 3}}}, "severity": "WARNING"} + {"message": "[Vale.Spelling] Did you really mean 'constant_bits_per_pixel'?", "location": {"path": "snippets/pixmap_table/configurations/brief/constant_bits_per_pixel.md", "range": {"start": {"line": 3, "column": 37}}}, "severity": "ERROR"} + {"message": "[Vale.Spelling] Did you really mean 'constant_height'?", "location": {"path": "snippets/pixmap_table/configurations/brief/constant_height.md", "range": {"start": {"line": 1, "column": 3}}}, "severity": "ERROR"} + {"message": "[Google.Headings] 'constant_height' should use sentence-style capitalization.", "location": {"path": "snippets/pixmap_table/configurations/brief/constant_height.md", "range": {"start": {"line": 1, "column": 3}}}, "severity": "WARNING"} + {"message": "[Vale.Spelling] Did you really mean 'constant_height'?", "location": {"path": "snippets/pixmap_table/configurations/brief/constant_height.md", "range": {"start": {"line": 3, "column": 37}}}, "severity": "ERROR"} + {"message": "[Vale.Spelling] Did you really mean 'bits_per_pixel'?", "location": {"path": "snippets/pixmap_table/records/brief/bits_per_pixel.md", "range": {"start": {"line": 1, "column": 3}}}, "severity": "ERROR"} + {"message": "[Google.Headings] 'bits_per_pixel' should use sentence-style capitalization.", "location": {"path": "snippets/pixmap_table/records/brief/bits_per_pixel.md", "range": {"start": {"line": 1, "column": 3}}}, "severity": "WARNING"} + {"message": "[Vale.Spelling] Did you really mean 'bits_per_pixel'?", "location": {"path": "snippets/pixmap_table/records/brief/bits_per_pixel.md", "range": {"start": {"line": 3, "column": 37}}}, "severity": "ERROR"} + {"message": "[Google.Headings] 'constant_width' should use sentence-style capitalization.", "location": {"path": "snippets/pixmap_table/configurations/brief/constant_width.md", "range": {"start": {"line": 1, "column": 3}}}, "severity": "WARNING"} + {"message": "[Vale.Spelling] Did you really mean 'constant_width'?", "location": {"path": "snippets/pixmap_table/configurations/brief/constant_width.md", "range": {"start": {"line": 1, "column": 3}}}, "severity": "ERROR"} + {"message": "[Vale.Spelling] Did you really mean 'constant_width'?", "location": {"path": "snippets/pixmap_table/configurations/brief/constant_width.md", "range": {"start": {"line": 3, "column": 37}}}, "severity": "ERROR"} + {"message": "[Google.Headings] 'data' should use sentence-style capitalization.", "location": {"path": "snippets/pixmap_table/records/brief/data.md", "range": {"start": {"line": 1, "column": 3}}}, "severity": "WARNING"} + {"message": "[Google.Headings] 'height' should use sentence-style capitalization.", "location": {"path": "snippets/pixmap_table/records/brief/height.md", "range": {"start": {"line": 1, "column": 3}}}, "severity": "WARNING"} + {"message": "[Vale.Spelling] Did you really mean 'color_tables'?", "location": {"path": "snippets/pixmap_table/links/brief/color_tables.md", "range": {"start": {"line": 1, "column": 3}}}, "severity": "ERROR"} + {"message": "[Google.Headings] 'color_tables' should use sentence-style capitalization.", "location": {"path": "snippets/pixmap_table/links/brief/color_tables.md", "range": {"start": {"line": 1, "column": 3}}}, "severity": "WARNING"} + {"message": "[Vale.Spelling] Did you really mean 'color_tables'?", "location": {"path": "snippets/pixmap_table/links/brief/color_tables.md", "range": {"start": {"line": 3, "column": 37}}}, "severity": "ERROR"} + {"message": "[Google.Headings] 'width' should use sentence-style capitalization.", "location": {"path": "snippets/pixmap_table/records/brief/width.md", "range": {"start": {"line": 1, "column": 3}}}, "severity": "WARNING"} + {"message": "[Vale.Spelling] Did you really mean 'Suchow'?", "location": {"path": ".ci/styles/proselint/README.md", "range": {"start": {"line": 1, "column": 31}}}, "severity": "ERROR"} + {"message": "[Google.OxfordComma] Use the Oxford comma in 'Redistribution and use in source and binary forms, with or'.", "location": {"path": ".ci/styles/proselint/README.md", "range": {"start": {"line": 4, "column": 1}}}, "severity": "WARNING"} + {"message": "[write-good.Passive] 'are permitted' may be passive voice. Use active voice if you can.", "location": {"path": ".ci/styles/proselint/README.md", "range": {"start": {"line": 4, "column": 82}}}, "severity": "WARNING"} + {"message": "[Google.Passive] In general, use active voice instead of passive voice ('are permitted').", "location": {"path": ".ci/styles/proselint/README.md", "range": {"start": {"line": 4, "column": 82}}}, "severity": "INFO"} + {"message": "[write-good.E-Prime] Try to avoid using 'are'.", "location": {"path": ".ci/styles/proselint/README.md", "range": {"start": {"line": 4, "column": 82}}}, "severity": "INFO"} + {"message": "[write-good.TooWordy] 'provided that' is too wordy.", "location": {"path": ".ci/styles/proselint/README.md", "range": {"start": {"line": 4, "column": 96}}}, "severity": "WARNING"} + {"message": "[write-good.Passive] 'are met' may be passive voice. Use active voice if you can.", "location": {"path": ".ci/styles/proselint/README.md", "range": {"start": {"line": 4, "column": 135}}}, "severity": "WARNING"} + {"message": "[Google.Passive] In general, use active voice instead of passive voice ('are met').", "location": {"path": ".ci/styles/proselint/README.md", "range": {"start": {"line": 4, "column": 135}}}, "severity": "INFO"} + {"message": "[write-good.E-Prime] Try to avoid using 'are'.", "location": {"path": ".ci/styles/proselint/README.md", "range": {"start": {"line": 4, "column": 135}}}, "severity": "INFO"} + {"message": "[Vale.Spelling] Did you really mean 'Redistributions'?", "location": {"path": ".ci/styles/proselint/README.md", "range": {"start": {"line": 6, "column": 4}}}, "severity": "ERROR"} + {"message": "[write-good.TooWordy] 'retain' is too wordy.", "location": {"path": ".ci/styles/proselint/README.md", "range": {"start": {"line": 6, "column": 40}}}, "severity": "WARNING"} + {"message": "[Google.WordList] Use 'preceding' instead of 'above'.", "location": {"path": ".ci/styles/proselint/README.md", "range": {"start": {"line": 6, "column": 51}}}, "severity": "WARNING"} + {"message": "[Vale.Spelling] Did you really mean 'Redistributions'?", "location": {"path": ".ci/styles/proselint/README.md", "range": {"start": {"line": 8, "column": 4}}}, "severity": "ERROR"} + {"message": "[Google.WordList] Use 'preceding' instead of 'above'.", "location": {"path": ".ci/styles/proselint/README.md", "range": {"start": {"line": 8, "column": 54}}}, "severity": "WARNING"} + {"message": "[write-good.Passive] 'be used' may be passive voice. Use active voice if you can.", "location": {"path": ".ci/styles/proselint/README.md", "range": {"start": {"line": 10, "column": 83}}}, "severity": "WARNING"} + {"message": "[write-good.E-Prime] Try to avoid using 'be'.", "location": {"path": ".ci/styles/proselint/README.md", "range": {"start": {"line": 10, "column": 83}}}, "severity": "INFO"} + {"message": "[Google.Passive] In general, use active voice instead of passive voice ('be used').", "location": {"path": ".ci/styles/proselint/README.md", "range": {"start": {"line": 10, "column": 83}}}, "severity": "INFO"} + {"message": "[Google.Acronyms] Spell out 'THIS', if it's unfamiliar to the audience.", "location": {"path": ".ci/styles/proselint/README.md", "range": {"start": {"line": 12, "column": 1}}}, "severity": "INFO"} + {"message": "[write-good.Passive] 'IS PROVIDED' may be passive voice. Use active voice if you can.", "location": {"path": ".ci/styles/proselint/README.md", "range": {"start": {"line": 12, "column": 15}}}, "severity": "WARNING"} + {"message": "[Google.Passive] In general, use active voice instead of passive voice ('IS PROVIDED').", "location": {"path": ".ci/styles/proselint/README.md", "range": {"start": {"line": 12, "column": 15}}}, "severity": "INFO"} + {"message": "[write-good.E-Prime] Try to avoid using 'IS'.", "location": {"path": ".ci/styles/proselint/README.md", "range": {"start": {"line": 12, "column": 15}}}, "severity": "INFO"} + {"message": "[Google.Acronyms] Spell out 'THE', if it's unfamiliar to the audience.", "location": {"path": ".ci/styles/proselint/README.md", "range": {"start": {"line": 12, "column": 30}}}, "severity": "INFO"} + {"message": "[Google.Acronyms] Spell out 'AND', if it's unfamiliar to the audience.", "location": {"path": ".ci/styles/proselint/README.md", "range": {"start": {"line": 12, "column": 52}}}, "severity": "INFO"} + {"message": "[Google.Acronyms] Spell out 'AND', if it's unfamiliar to the audience.", "location": {"path": ".ci/styles/proselint/README.md", "range": {"start": {"line": 12, "column": 77}}}, "severity": "INFO"} + {"message": "[Google.Acronyms] Spell out 'ANY', if it's unfamiliar to the audience.", "location": {"path": ".ci/styles/proselint/README.md", "range": {"start": {"line": 12, "column": 81}}}, "severity": "INFO"} + {"message": "[Google.Acronyms] Spell out 'BUT', if it's unfamiliar to the audience.", "location": {"path": ".ci/styles/proselint/README.md", "range": {"start": {"line": 12, "column": 127}}}, "severity": "INFO"} + {"message": "[Google.Acronyms] Spell out 'NOT', if it's unfamiliar to the audience.", "location": {"path": ".ci/styles/proselint/README.md", "range": {"start": {"line": 12, "column": 131}}}, "severity": "INFO"} + {"message": "[Google.Acronyms] Spell out 'THE', if it's unfamiliar to the audience.", "location": {"path": ".ci/styles/proselint/README.md", "range": {"start": {"line": 12, "column": 147}}}, "severity": "INFO"} + {"message": "[Google.Acronyms] Spell out 'AND', if it's unfamiliar to the audience.", "location": {"path": ".ci/styles/proselint/README.md", "range": {"start": {"line": 12, "column": 189}}}, "severity": "INFO"} + {"message": "[Google.Acronyms] Spell out 'FOR', if it's unfamiliar to the audience.", "location": {"path": ".ci/styles/proselint/README.md", "range": {"start": {"line": 12, "column": 201}}}, "severity": "INFO"} + {"message": "[Google.Passive] In general, use active voice instead of passive voice ('ARE DISCLAIMED').", "location": {"path": ".ci/styles/proselint/README.md", "range": {"start": {"line": 12, "column": 226}}}, "severity": "INFO"} + {"message": "[write-good.E-Prime] Try to avoid using 'ARE'.", "location": {"path": ".ci/styles/proselint/README.md", "range": {"start": {"line": 12, "column": 226}}}, "severity": "INFO"} + {"message": "[write-good.Passive] 'ARE DISCLAIMED' may be passive voice. Use active voice if you can.", "location": {"path": ".ci/styles/proselint/README.md", "range": {"start": {"line": 12, "column": 226}}}, "severity": "WARNING"} + {"message": "[Google.Acronyms] Spell out 'ARE', if it's unfamiliar to the audience.", "location": {"path": ".ci/styles/proselint/README.md", "range": {"start": {"line": 12, "column": 226}}}, "severity": "INFO"} + {"message": "[Google.Acronyms] Spell out 'EVENT', if it's unfamiliar to the audience.", "location": {"path": ".ci/styles/proselint/README.md", "range": {"start": {"line": 12, "column": 248}}}, "severity": "INFO"} + {"message": "[write-good.TooWordy] 'SHALL' is too wordy.", "location": {"path": ".ci/styles/proselint/README.md", "range": {"start": {"line": 12, "column": 254}}}, "severity": "WARNING"} + {"message": "[Google.Acronyms] Spell out 'SHALL', if it's unfamiliar to the audience.", "location": {"path": ".ci/styles/proselint/README.md", "range": {"start": {"line": 12, "column": 254}}}, "severity": "INFO"} + {"message": "[Google.Acronyms] Spell out 'THE', if it's unfamiliar to the audience.", "location": {"path": ".ci/styles/proselint/README.md", "range": {"start": {"line": 12, "column": 260}}}, "severity": "INFO"} + {"message": "[write-good.E-Prime] Try to avoid using 'BE'.", "location": {"path": ".ci/styles/proselint/README.md", "range": {"start": {"line": 12, "column": 297}}}, "severity": "INFO"} + {"message": "[Google.Acronyms] Spell out 'FOR', if it's unfamiliar to the audience.", "location": {"path": ".ci/styles/proselint/README.md", "range": {"start": {"line": 12, "column": 307}}}, "severity": "INFO"} + {"message": "[Google.Acronyms] Spell out 'ANY', if it's unfamiliar to the audience.", "location": {"path": ".ci/styles/proselint/README.md", "range": {"start": {"line": 12, "column": 311}}}, "severity": "INFO"} + {"message": "[Google.Parens] Use parentheses judiciously.", "location": {"path": ".ci/styles/proselint/README.md", "range": {"start": {"line": 12, "column": 390}}}, "severity": "INFO"} + {"message": "[Google.Acronyms] Spell out 'NOT', if it's unfamiliar to the audience.", "location": {"path": ".ci/styles/proselint/README.md", "range": {"start": {"line": 12, "column": 406}}}, "severity": "INFO"} + {"message": "[Google.Acronyms] Spell out 'GOODS', if it's unfamiliar to the audience.", "location": {"path": ".ci/styles/proselint/README.md", "range": {"start": {"line": 12, "column": 448}}}, "severity": "INFO"} + {"message": "[Google.Semicolons] Use semicolons judiciously.", "location": {"path": ".ci/styles/proselint/README.md", "range": {"start": {"line": 12, "column": 465}}}, "severity": "INFO"} + {"message": "[Google.Acronyms] Spell out 'LOSS', if it's unfamiliar to the audience.", "location": {"path": ".ci/styles/proselint/README.md", "range": {"start": {"line": 12, "column": 467}}}, "severity": "INFO"} + {"message": "[Google.Acronyms] Spell out 'USE', if it's unfamiliar to the audience.", "location": {"path": ".ci/styles/proselint/README.md", "range": {"start": {"line": 12, "column": 475}}}, "severity": "INFO"} + {"message": "[Google.Acronyms] Spell out 'DATA', if it's unfamiliar to the audience.", "location": {"path": ".ci/styles/proselint/README.md", "range": {"start": {"line": 12, "column": 480}}}, "severity": "INFO"} + {"message": "[Google.Semicolons] Use semicolons judiciously.", "location": {"path": ".ci/styles/proselint/README.md", "range": {"start": {"line": 12, "column": 496}}}, "severity": "INFO"} + {"message": "[write-good.TooWordy] 'HOWEVER' is too wordy.", "location": {"path": ".ci/styles/proselint/README.md", "range": {"start": {"line": 12, "column": 524}}}, "severity": "WARNING"} + {"message": "[Google.Acronyms] Spell out 'AND', if it's unfamiliar to the audience.", "location": {"path": ".ci/styles/proselint/README.md", "range": {"start": {"line": 12, "column": 539}}}, "severity": "INFO"} + {"message": "[Google.Acronyms] Spell out 'ANY', if it's unfamiliar to the audience.", "location": {"path": ".ci/styles/proselint/README.md", "range": {"start": {"line": 12, "column": 546}}}, "severity": "INFO"} + {"message": "[Google.Acronyms] Spell out 'TORT', if it's unfamiliar to the audience.", "location": {"path": ".ci/styles/proselint/README.md", "range": {"start": {"line": 12, "column": 613}}}, "severity": "INFO"} + {"message": "[Google.Acronyms] Spell out 'ANY', if it's unfamiliar to the audience.", "location": {"path": ".ci/styles/proselint/README.md", "range": {"start": {"line": 12, "column": 665}}}, "severity": "INFO"} + {"message": "[Google.Acronyms] Spell out 'WAY', if it's unfamiliar to the audience.", "location": {"path": ".ci/styles/proselint/README.md", "range": {"start": {"line": 12, "column": 669}}}, "severity": "INFO"} + {"message": "[Google.Acronyms] Spell out 'OUT', if it's unfamiliar to the audience.", "location": {"path": ".ci/styles/proselint/README.md", "range": {"start": {"line": 12, "column": 673}}}, "severity": "INFO"} + {"message": "[Google.Acronyms] Spell out 'THE', if it's unfamiliar to the audience.", "location": {"path": ".ci/styles/proselint/README.md", "range": {"start": {"line": 12, "column": 680}}}, "severity": "INFO"} + {"message": "[Google.Acronyms] Spell out 'USE', if it's unfamiliar to the audience.", "location": {"path": ".ci/styles/proselint/README.md", "range": {"start": {"line": 12, "column": 684}}}, "severity": "INFO"} + {"message": "[Google.Acronyms] Spell out 'THIS', if it's unfamiliar to the audience.", "location": {"path": ".ci/styles/proselint/README.md", "range": {"start": {"line": 12, "column": 691}}}, "severity": "INFO"} + {"message": "[Google.Acronyms] Spell out 'EVEN', if it's unfamiliar to the audience.", "location": {"path": ".ci/styles/proselint/README.md", "range": {"start": {"line": 12, "column": 706}}}, "severity": "INFO"} + {"message": "[Google.Acronyms] Spell out 'SUCH', if it's unfamiliar to the audience.", "location": {"path": ".ci/styles/proselint/README.md", "range": {"start": {"line": 12, "column": 744}}}, "severity": "INFO"} + {"message": "[Vale.Spelling] Did you really mean 'bitflags'?", "location": {"path": "src/Specification Glossary.md", "range": {"start": {"line": 3, "column": 31}}}, "severity": "ERROR"} + {"message": "[Vale.Spelling] Did you really mean 'Serializer'?", "location": {"path": "src/Specification Glossary.md", "range": {"start": {"line": 5, "column": 3}}}, "severity": "ERROR"} + {"message": "[Google.WordList] Use 'capability' or 'feature' instead of 'functionality'.", "location": {"path": "src/Specification Glossary.md", "range": {"start": {"line": 5, "column": 30}}}, "severity": "WARNING"} + {"message": "[Google.WordList] Use 'app' instead of 'application'.", "location": {"path": "src/Specification Glossary.md", "range": {"start": {"line": 5, "column": 50}}}, "severity": "WARNING"} + {"message": "[Vale.Spelling] Did you really mean 'Deserializer'?", "location": {"path": "src/Specification Glossary.md", "range": {"start": {"line": 7, "column": 3}}}, "severity": "ERROR"} + {"message": "[Google.WordList] Use 'capability' or 'feature' instead of 'functionality'.", "location": {"path": "src/Specification Glossary.md", "range": {"start": {"line": 7, "column": 32}}}, "severity": "WARNING"} + {"message": "[Google.WordList] Use 'app' instead of 'application'.", "location": {"path": "src/Specification Glossary.md", "range": {"start": {"line": 7, "column": 52}}}, "severity": "WARNING"} + {"message": "[Google.Headings] 'Table Structure' should use sentence-style capitalization.", "location": {"path": "src/Character Table.md", "range": {"start": {"line": 3, "column": 4}}}, "severity": "WARNING"} + {"message": "[Google.Headings] 'Modifier Flags' should use sentence-style capitalization.", "location": {"path": "src/Character Table.md", "range": {"start": {"line": 8, "column": 5}}}, "severity": "WARNING"} + {"message": "[Google.Headings] 'Flag Details' should use sentence-style capitalization.", "location": {"path": "src/Character Table.md", "range": {"start": {"line": 17, "column": 6}}}, "severity": "WARNING"} + {"message": "[Google.Headings] 'Configuration Flags' should use sentence-style capitalization.", "location": {"path": "src/Character Table.md", "range": {"start": {"line": 23, "column": 5}}}, "severity": "WARNING"} + {"message": "[Google.Headings] 'Configuration Values' should use sentence-style capitalization.", "location": {"path": "src/Character Table.md", "range": {"start": {"line": 30, "column": 6}}}, "severity": "WARNING"} + {"message": "[Google.Headings] 'Table Links' should use sentence-style capitalization.", "location": {"path": "src/Character Table.md", "range": {"start": {"line": 36, "column": 5}}}, "severity": "WARNING"} + {"message": "[Google.Headings] 'Link Arrays' should use sentence-style capitalization.", "location": {"path": "src/Character Table.md", "range": {"start": {"line": 43, "column": 6}}}, "severity": "WARNING"} + {"message": "[Google.Headings] 'Character Record' should use sentence-style capitalization.", "location": {"path": "src/Character Table.md", "range": {"start": {"line": 49, "column": 4}}}, "severity": "WARNING"} + {"message": "[Google.Headings] 'Record Layout Examples' should use sentence-style capitalization.", "location": {"path": "src/Character Table.md", "range": {"start": {"line": 60, "column": 5}}}, "severity": "WARNING"} + {"message": "[Google.Colons] ': M' should be in lowercase.", "location": {"path": "src/Character Table.md", "range": {"start": {"line": 62, "column": 12}}}, "severity": "WARNING"} + {"message": "[Google.Parens] Use parentheses judiciously.", "location": {"path": "src/Character Table.md", "range": {"start": {"line": 62, "column": 31}}}, "severity": "INFO"} + {"message": "[Google.Colons] ': W' should be in lowercase.", "location": {"path": "src/Character Table.md", "range": {"start": {"line": 72, "column": 12}}}, "severity": "WARNING"} + {"message": "[Google.Colons] ': W' should be in lowercase.", "location": {"path": "src/Character Table.md", "range": {"start": {"line": 82, "column": 12}}}, "severity": "WARNING"} + {"message": "[Vale.Spelling] Did you really mean 'pixmap'?", "location": {"path": "src/Character Table.md", "range": {"start": {"line": 82, "column": 19}}}, "severity": "ERROR"} + {"message": "[Google.Colons] ': W' should be in lowercase.", "location": {"path": "src/Character Table.md", "range": {"start": {"line": 92, "column": 12}}}, "severity": "WARNING"} + {"message": "[Google.Colons] ': W' should be in lowercase.", "location": {"path": "src/Character Table.md", "range": {"start": {"line": 102, "column": 12}}}, "severity": "WARNING"} + {"message": "[Vale.Spelling] Did you really mean 'codepoints'?", "location": {"path": "src/Character Table.md", "range": {"start": {"line": 102, "column": 36}}}, "severity": "ERROR"} + {"message": "[Google.Headings] 'Complete Table Example' should use sentence-style capitalization.", "location": {"path": "src/Character Table.md", "range": {"start": {"line": 113, "column": 4}}}, "severity": "WARNING"} + {"message": "[Google.Parens] Use parentheses judiciously.", "location": {"path": "src/Character Table.md", "range": {"start": {"line": 115, "column": 83}}}, "severity": "INFO"} + {"message": "[Vale.Spelling] Did you really mean 'Pixmap'?", "location": {"path": "src/Character Table.md", "range": {"start": {"line": 115, "column": 145}}}, "severity": "ERROR"} + {"message": "[Google.OptionalPlurals] Don't use plurals in parentheses such as in 'Byte(s)'.", "location": {"path": "src/Character Table.md", "range": {"start": {"line": 117, "column": 3}}}, "severity": "ERROR"} + {"message": "[Google.Parens] Use parentheses judiciously.", "location": {"path": "src/Character Table.md", "range": {"start": {"line": 117, "column": 7}}}, "severity": "INFO"} + {"message": "[Vale.Spelling] Did you really mean 'Pixmap'?", "location": {"path": "src/Character Table.md", "range": {"start": {"line": 124, "column": 33}}}, "severity": "ERROR"} + {"message": "[Vale.Spelling] Did you really mean 'Pixmap'?", "location": {"path": "src/Character Table.md", "range": {"start": {"line": 125, "column": 41}}}, "severity": "ERROR"} + {"message": "[Vale.Spelling] Did you really mean 'advance_x'?", "location": {"path": "src/Character Table.md", "range": {"start": {"line": 127, "column": 43}}}, "severity": "ERROR"} + {"message": "[Vale.Spelling] Did you really mean 'pixmap_index'?", "location": {"path": "src/Character Table.md", "range": {"start": {"line": 128, "column": 43}}}, "severity": "ERROR"} + {"message": "[Vale.Spelling] Did you really mean 'codepoints'?", "location": {"path": "src/Character Table.md", "range": {"start": {"line": 129, "column": 43}}}, "severity": "ERROR"} + {"message": "[Vale.Spelling] Did you really mean 'advance_x'?", "location": {"path": "src/Character Table.md", "range": {"start": {"line": 130, "column": 43}}}, "severity": "ERROR"} + {"message": "[Vale.Spelling] Did you really mean 'pixmap_index'?", "location": {"path": "src/Character Table.md", "range": {"start": {"line": 131, "column": 43}}}, "severity": "ERROR"} + {"message": "[Vale.Spelling] Did you really mean 'codepoints'?", "location": {"path": "src/Character Table.md", "range": {"start": {"line": 132, "column": 43}}}, "severity": "ERROR"} From c38768de9d08fd7c8031e9f770a71f5f592f3ada Mon Sep 17 00:00:00 2001 From: Alexis Osorio <113266346+The-Nice-One@users.noreply.github.com> Date: Thu, 11 Jun 2026 16:17:22 +0000 Subject: [PATCH 03/10] Allow running workflow in documentation branch for debugging. --- .github/workflows/wiki.yml | 1 + snippets/color_table/modifiers/brief/use_color_type.md | 3 --- src/Character Table.md | 2 +- 3 files changed, 2 insertions(+), 4 deletions(-) diff --git a/.github/workflows/wiki.yml b/.github/workflows/wiki.yml index b2d38ef..b59e3cd 100644 --- a/.github/workflows/wiki.yml +++ b/.github/workflows/wiki.yml @@ -4,6 +4,7 @@ on: push: branches: - main + - documentation jobs: sync-wiki: diff --git a/snippets/color_table/modifiers/brief/use_color_type.md b/snippets/color_table/modifiers/brief/use_color_type.md index 157cd30..e69de29 100644 --- a/snippets/color_table/modifiers/brief/use_color_type.md +++ b/snippets/color_table/modifiers/brief/use_color_type.md @@ -1,3 +0,0 @@ -# use_color_type - -Write the documentation content for use_color_type here. \ No newline at end of file diff --git a/src/Character Table.md b/src/Character Table.md index 4376c49..03fc508 100644 --- a/src/Character Table.md +++ b/src/Character Table.md @@ -1,4 +1,4 @@ -\textinput{../snippets/character_table/breif.md} +\textinput{snippets/character_table/breif.md} ## Table Structure From 42fdd287bed02fe2092b57fe07efa0b2ea4db255 Mon Sep 17 00:00:00 2001 From: Alexis Osorio <113266346+The-Nice-One@users.noreply.github.com> Date: Thu, 11 Jun 2026 16:19:26 +0000 Subject: [PATCH 04/10] Fix relative markdown links in Character Table --- src/Character Table.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Character Table.md b/src/Character Table.md index 03fc508..4376c49 100644 --- a/src/Character Table.md +++ b/src/Character Table.md @@ -1,4 +1,4 @@ -\textinput{snippets/character_table/breif.md} +\textinput{../snippets/character_table/breif.md} ## Table Structure From e4ba5c32da115f1766707d16b831688433b08139 Mon Sep 17 00:00:00 2001 From: Alexis Osorio <113266346+The-Nice-One@users.noreply.github.com> Date: Thu, 11 Jun 2026 16:23:42 +0000 Subject: [PATCH 05/10] Fix markdown inclusion path --- src/Character Table.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Character Table.md b/src/Character Table.md index 4376c49..537a0ce 100644 --- a/src/Character Table.md +++ b/src/Character Table.md @@ -1,4 +1,4 @@ -\textinput{../snippets/character_table/breif.md} +\textinput{../snippets/character_table/brief.md} ## Table Structure From cfb217977a5a0479c1a84c5b0fc0b5a1ff97c1be Mon Sep 17 00:00:00 2001 From: Alexis Osorio <113266346+The-Nice-One@users.noreply.github.com> Date: Thu, 11 Jun 2026 16:31:18 +0000 Subject: [PATCH 06/10] Fix tooling to output correct paths for table link flags --- scripts/snippet-tool.ts | 2 +- src/Character Table.md | 4 +++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/scripts/snippet-tool.ts b/scripts/snippet-tool.ts index 8e791cf..a260a89 100644 --- a/scripts/snippet-tool.ts +++ b/scripts/snippet-tool.ts @@ -286,7 +286,7 @@ function generateLinksSection( const linkBriefName = links[i]; // e.g., "pixmap_tables" const flagName = "link_" + linkBriefName; // e.g., "link_pixmap_tables" // Note: Template shows looking in condition directory for the flag description - const flagPath = getRelativeSnippetPath(snippetType, "links/condition", flagName); + const flagPath = getRelativeSnippetPath(snippetType, "links/flag", flagName); lines.push( `| ${i} | \`${flagName}\` | \\textinput{${flagPath}} |` ); diff --git a/src/Character Table.md b/src/Character Table.md index 537a0ce..8d3098d 100644 --- a/src/Character Table.md +++ b/src/Character Table.md @@ -1,5 +1,7 @@ \textinput{../snippets/character_table/brief.md} +Specification/snippets/character_table/links/condition/link_pixmap_tables.md + ## Table Structure ### Identifier @@ -37,7 +39,7 @@ | Bit | Name | Description | | --- | -------------------- | --------------------------------------------- | -| 0 | `link_pixmap_tables` | \textinput{../snippets/character_table/links/condition/link_pixmap_tables.md} | +| 0 | `link_pixmap_tables` | \textinput{../snippets/character_table/links/flag/link_pixmap_tables.md} | | 1-7 | — | \textinput{../snippets/phrase/reserved.md} | #### Link Arrays From ce4a064705e0f67fd3deb0e4e704290099a83321 Mon Sep 17 00:00:00 2001 From: Alexis Osorio <113266346+The-Nice-One@users.noreply.github.com> Date: Thu, 11 Jun 2026 16:37:19 +0000 Subject: [PATCH 07/10] Fix remaining out-dated field names in Character Table document. --- src/Character Table.md | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/Character Table.md b/src/Character Table.md index 8d3098d..1cb8ea0 100644 --- a/src/Character Table.md +++ b/src/Character Table.md @@ -57,7 +57,7 @@ Each character record contains the following fields in order: | `advance_x` | `u8` | \textinput{../snippets/character_table/records/condition/advance_x.md} | \textinput{../snippets/character_table/records/brief/advance_x.md} | | `pixmap_index` | `u8` | \textinput{../snippets/character_table/records/condition/pixmap_index.md} | \textinput{../snippets/character_table/records/brief/pixmap_index.md} | | `pixmap_table_index` | `u8` | \textinput{../snippets/character_table/records/condition/pixmap_table_index.md} | \textinput{../snippets/character_table/records/brief/pixmap_table_index.md} | -| `code_points` | `String` | \textinput{../snippets/character_table/records/condition/code_points.md} | \textinput{../snippets/character_table/records/brief/codepoints.md} | +| `code_points` | `String` | \textinput{../snippets/character_table/records/condition/code_points.md} | \textinput{../snippets/character_table/records/brief/code_points.md} | ### Record Layout Examples @@ -65,7 +65,7 @@ Each character record contains the following fields in order: ``` Character 'A' with default pixmap index 0 and default advance -Byte layout: [codepoints] [null] +Byte layout: [code_points] [null] Binary: 01000001 00000000 Hex: 41 00 Represents: 'A' (U+0041) @@ -75,7 +75,7 @@ Represents: 'A' (U+0041) ``` Character 'W' with custom 12-pixel advance -Byte layout: [advance_x] [codepoints] [null] +Byte layout: [advance_x] [code_points] [null] Binary: 00001100 01010111 00000000 Hex: 0C 57 00 Represents: advance=12, 'W' (U+0057) @@ -85,7 +85,7 @@ Represents: advance=12, 'W' (U+0057) ``` Character 'é' using pixmap at index 5 -Byte layout: [pixmap_index] [codepoints] [null] +Byte layout: [pixmap_index] [code_points] [null] Binary: 00000101 11000011 10101001 00000000 Hex: 05 C3 A9 00 Represents: pixmap_index=5, 'é' (U+00E9, UTF-8: 0xC3 0xA9) @@ -95,7 +95,7 @@ Represents: pixmap_index=5, 'é' (U+00E9, UTF-8: 0xC3 0xA9) ``` Character '👍' with advance=16, pixmap_index=42, pixmap_table_index=1 -Byte layout: [advance_x] [pixmap_index] [table_index] [codepoints (4 bytes)] [null] +Byte layout: [advance_x] [pixmap_index] [table_index] [code_points (4 bytes)] [null] Binary: 00010000 00101010 00000001 11110000 10011111 10010001 10001101 00000000 Hex: 10 2A 01 F0 9F 91 8D 00 Represents: advance=16, pixmap=42, table=1, '👍' (U+1F44D, UTF-8: 0xF0 0x9F 0x91 0x8D) @@ -103,7 +103,7 @@ Represents: advance=16, pixmap=42, table=1, '👍' (U+1F44D, UTF-8: 0xF0 0x9F **Example 5: With constant cluster codepoints** ``` -Configuration: constant_cluster_codepoints = 1 (all ASCII) +Configuration: constant_cluster_code_points = 1 (all ASCII) Character 'B' with fixed 1-byte length Byte layout: [grapheme_cluster] @@ -120,7 +120,7 @@ The following byte sequence defines a minimal Character Table with two character | ------- | ---------- | ---- | -------------------------------------------------------------- | | 1 | `00000001` | `01` | Table identifier for Character Table | | 2 | `00000011` | `03` | Modifier flags: `use_advance_x` and `use_pixmap_index` enabled | -| 3 | `00000001` | `01` | Configuration flags: `constant_codepoint_count` enabled | +| 3 | `00000001` | `01` | Configuration flags: `constant_code_point_count` enabled | | 4 | `00000001` | `01` | Configuration value: cluster length = 1 byte | | 5 | `00000001` | `01` | Table links: `pixmap_tables` enabled | | 6 | `00000001` | `01` | Pixmap table array length = 1 | From 5093cd0cab9976a347126db14793d2ef3ae12abe Mon Sep 17 00:00:00 2001 From: Alexis Osorio <113266346+The-Nice-One@users.noreply.github.com> Date: Thu, 11 Jun 2026 16:45:46 +0000 Subject: [PATCH 08/10] Add Color Table documentation --- .../configurations/brief/constant_alpha.md | 1 + .../condition/constant_alpha.md | 1 + .../configurations/flag/use_constant_alpha.md | 1 + .../modifiers/brief/use_color_type.md | 1 + .../modifiers/details/use_color_type.md | 4 +--- snippets/color_table/records/brief/alpha.md | 4 +--- snippets/color_table/records/brief/blue.md | 4 +--- .../color_table/records/brief/color_type.md | 4 +--- snippets/color_table/records/brief/green.md | 4 +--- snippets/color_table/records/brief/red.md | 4 +--- .../color_table/records/condition/alpha.md | 4 +--- .../color_table/records/condition/blue.md | 4 +--- .../records/condition/color_type.md | 4 +--- .../color_table/records/condition/green.md | 4 +--- snippets/color_table/records/condition/red.md | 4 +--- src/Color Table.md | 24 ++++++++++++++----- 16 files changed, 33 insertions(+), 39 deletions(-) diff --git a/snippets/color_table/configurations/brief/constant_alpha.md b/snippets/color_table/configurations/brief/constant_alpha.md index e69de29..47b8835 100644 --- a/snippets/color_table/configurations/brief/constant_alpha.md +++ b/snippets/color_table/configurations/brief/constant_alpha.md @@ -0,0 +1 @@ +The alpha channel value applied to all colors in this table. \ No newline at end of file diff --git a/snippets/color_table/configurations/condition/constant_alpha.md b/snippets/color_table/configurations/condition/constant_alpha.md index e69de29..adf9daf 100644 --- a/snippets/color_table/configurations/condition/constant_alpha.md +++ b/snippets/color_table/configurations/condition/constant_alpha.md @@ -0,0 +1 @@ +If `use_constant_alpha` is enabled. \ No newline at end of file diff --git a/snippets/color_table/configurations/flag/use_constant_alpha.md b/snippets/color_table/configurations/flag/use_constant_alpha.md index e69de29..eecd81e 100644 --- a/snippets/color_table/configurations/flag/use_constant_alpha.md +++ b/snippets/color_table/configurations/flag/use_constant_alpha.md @@ -0,0 +1 @@ +All colors in this table share the same alpha value. \ No newline at end of file diff --git a/snippets/color_table/modifiers/brief/use_color_type.md b/snippets/color_table/modifiers/brief/use_color_type.md index e69de29..a034088 100644 --- a/snippets/color_table/modifiers/brief/use_color_type.md +++ b/snippets/color_table/modifiers/brief/use_color_type.md @@ -0,0 +1 @@ +Each record includes a `color_type` field indicating the color mutability type. \ No newline at end of file diff --git a/snippets/color_table/modifiers/details/use_color_type.md b/snippets/color_table/modifiers/details/use_color_type.md index de312b3..aa8785e 100644 --- a/snippets/color_table/modifiers/details/use_color_type.md +++ b/snippets/color_table/modifiers/details/use_color_type.md @@ -1,3 +1 @@ -# use_color_type details - -Write the documentation content for use_color_type details here. \ No newline at end of file +When disabled, the default color type is dynamic. The rendering engine may change the RGBA color to support features such as, but not limited to; text color, and/or palette theming. \ No newline at end of file diff --git a/snippets/color_table/records/brief/alpha.md b/snippets/color_table/records/brief/alpha.md index ef43a25..d18c10f 100644 --- a/snippets/color_table/records/brief/alpha.md +++ b/snippets/color_table/records/brief/alpha.md @@ -1,3 +1 @@ -# alpha - -Write the documentation content for alpha here. \ No newline at end of file +Alpha channel value (0 = fully transparent, 255 = fully opaque). \ No newline at end of file diff --git a/snippets/color_table/records/brief/blue.md b/snippets/color_table/records/brief/blue.md index b8af9da..97f092d 100644 --- a/snippets/color_table/records/brief/blue.md +++ b/snippets/color_table/records/brief/blue.md @@ -1,3 +1 @@ -# blue - -Write the documentation content for blue here. \ No newline at end of file +Blue channel value. \ No newline at end of file diff --git a/snippets/color_table/records/brief/color_type.md b/snippets/color_table/records/brief/color_type.md index 67ef467..d8bf647 100644 --- a/snippets/color_table/records/brief/color_type.md +++ b/snippets/color_table/records/brief/color_type.md @@ -1,3 +1 @@ -# color_type - -Write the documentation content for color_type here. \ No newline at end of file +Color Type value (0 = Dynamic, 1 = Absolute). \ No newline at end of file diff --git a/snippets/color_table/records/brief/green.md b/snippets/color_table/records/brief/green.md index 21c49bd..d8c8819 100644 --- a/snippets/color_table/records/brief/green.md +++ b/snippets/color_table/records/brief/green.md @@ -1,3 +1 @@ -# green - -Write the documentation content for green here. \ No newline at end of file +Green channel value. \ No newline at end of file diff --git a/snippets/color_table/records/brief/red.md b/snippets/color_table/records/brief/red.md index 201aceb..27c40df 100644 --- a/snippets/color_table/records/brief/red.md +++ b/snippets/color_table/records/brief/red.md @@ -1,3 +1 @@ -# red - -Write the documentation content for red here. \ No newline at end of file +Red channel value. \ No newline at end of file diff --git a/snippets/color_table/records/condition/alpha.md b/snippets/color_table/records/condition/alpha.md index ef43a25..502041c 100644 --- a/snippets/color_table/records/condition/alpha.md +++ b/snippets/color_table/records/condition/alpha.md @@ -1,3 +1 @@ -# alpha - -Write the documentation content for alpha here. \ No newline at end of file +If `constant_alpha` configuration is **not** set \ No newline at end of file diff --git a/snippets/color_table/records/condition/blue.md b/snippets/color_table/records/condition/blue.md index b8af9da..439dd4b 100644 --- a/snippets/color_table/records/condition/blue.md +++ b/snippets/color_table/records/condition/blue.md @@ -1,3 +1 @@ -# blue - -Write the documentation content for blue here. \ No newline at end of file +Always present \ No newline at end of file diff --git a/snippets/color_table/records/condition/color_type.md b/snippets/color_table/records/condition/color_type.md index 67ef467..85be9fd 100644 --- a/snippets/color_table/records/condition/color_type.md +++ b/snippets/color_table/records/condition/color_type.md @@ -1,3 +1 @@ -# color_type - -Write the documentation content for color_type here. \ No newline at end of file +If `use_color_type` modifier is enabled. \ No newline at end of file diff --git a/snippets/color_table/records/condition/green.md b/snippets/color_table/records/condition/green.md index 21c49bd..439dd4b 100644 --- a/snippets/color_table/records/condition/green.md +++ b/snippets/color_table/records/condition/green.md @@ -1,3 +1 @@ -# green - -Write the documentation content for green here. \ No newline at end of file +Always present \ No newline at end of file diff --git a/snippets/color_table/records/condition/red.md b/snippets/color_table/records/condition/red.md index 201aceb..439dd4b 100644 --- a/snippets/color_table/records/condition/red.md +++ b/snippets/color_table/records/condition/red.md @@ -1,3 +1 @@ -# red - -Write the documentation content for red here. \ No newline at end of file +Always present \ No newline at end of file diff --git a/src/Color Table.md b/src/Color Table.md index 4b0968a..ff89d92 100644 --- a/src/Color Table.md +++ b/src/Color Table.md @@ -43,19 +43,31 @@ Each record contains the following fields in order: | `green` | `[TYPE_PLACEHOLDER]` | \textinput{../snippets/color_table/records/condition/green.md} | \textinput{../snippets/color_table/records/brief/green.md} | | `blue` | `[TYPE_PLACEHOLDER]` | \textinput{../snippets/color_table/records/condition/blue.md} | \textinput{../snippets/color_table/records/brief/blue.md} | -## Examples +### Record Layout Examples -Provide example records demonstrating various field combinations: +**Example 1: Minimal record** (no modifiers or configurations) +``` +Byte layout: [red] [green] [blue] +Binary: 11111111 00000000 10101010 +Hex: FF 00 AA +Color: rgb(255, 0, 170) - fully opaque magenta +``` -**Example 1: Minimal record** (no optional fields) +**Example 2: With custom alpha** (constant_alpha not set) ``` -[EXAMPLE_PLACEHOLDER] +Byte layout: [alpha] [red] [green] [blue] +Binary: 10000000 11111111 11111111 11111111 +Hex: 80 FF FF FF +Color: rgba(255, 255, 255, 128) - 50% transparent white ``` -**Example 2: With optional fields** +**Example 3: With all optional fields** ``` -[EXAMPLE_PLACEHOLDER] +Byte layout: [color_type] [alpha] [red] [green] [blue] +Binary: 00000001 11111111 00000000 00000000 00000000 +Hex: 01 FF 00 00 00 +Color: rgba(0, 0, 0, 255) - absolute black (cannot / should not be modified by renderer) ``` From e9f43de864aa3817e3098923ddbb5f3d5fe399ca Mon Sep 17 00:00:00 2001 From: Alexis Osorio <113266346+The-Nice-One@users.noreply.github.com> Date: Thu, 11 Jun 2026 16:47:57 +0000 Subject: [PATCH 09/10] Update Record Examples generated header --- scripts/snippet-tool.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/snippet-tool.ts b/scripts/snippet-tool.ts index a260a89..8226f0f 100644 --- a/scripts/snippet-tool.ts +++ b/scripts/snippet-tool.ts @@ -342,7 +342,7 @@ function generateRecordsSection( function generateExamplesSection(tableName: string): string { const lines: string[] = []; - lines.push(addTableHeader("Examples\n")); + lines.push(addTableHeader("Record Layout Examples\n")); lines.push( "Provide example records demonstrating various field combinations:\n" ); From 0f9204ef5fa87ec360a4c494cd93febdf8cf628e Mon Sep 17 00:00:00 2001 From: Alexis Osorio <113266346+The-Nice-One@users.noreply.github.com> Date: Thu, 11 Jun 2026 16:58:22 +0000 Subject: [PATCH 10/10] Add Pixmap Table (incomplete). --- .../brief/constant_bits_per_pixel.md | 4 +- .../configurations/brief/constant_height.md | 4 +- .../configurations/brief/constant_width.md | 4 +- .../condition/constant_bits_per_pixel.md | 4 +- .../condition/constant_height.md | 4 +- .../condition/constant_width.md | 4 +- .../flag/use_constant_bits_per_pixel.md | 4 +- .../flag/use_constant_height.md | 4 +- .../configurations/flag/use_constant_width.md | 4 +- src/Pixmap Table.md | 143 ++++++++++++++++++ 10 files changed, 152 insertions(+), 27 deletions(-) create mode 100644 src/Pixmap Table.md diff --git a/snippets/pixmap_table/configurations/brief/constant_bits_per_pixel.md b/snippets/pixmap_table/configurations/brief/constant_bits_per_pixel.md index 32df24b..b35cb2d 100644 --- a/snippets/pixmap_table/configurations/brief/constant_bits_per_pixel.md +++ b/snippets/pixmap_table/configurations/brief/constant_bits_per_pixel.md @@ -1,3 +1 @@ -# constant_bits_per_pixel - -Write the documentation content for constant_bits_per_pixel here. \ No newline at end of file +The bits per pixel shared by all pixmaps in this table (only 1-8 supported). \ No newline at end of file diff --git a/snippets/pixmap_table/configurations/brief/constant_height.md b/snippets/pixmap_table/configurations/brief/constant_height.md index 936e729..70a5e0f 100644 --- a/snippets/pixmap_table/configurations/brief/constant_height.md +++ b/snippets/pixmap_table/configurations/brief/constant_height.md @@ -1,3 +1 @@ -# constant_height - -Write the documentation content for constant_height here. \ No newline at end of file +The height in pixels shared by all pixmaps in this table. \ No newline at end of file diff --git a/snippets/pixmap_table/configurations/brief/constant_width.md b/snippets/pixmap_table/configurations/brief/constant_width.md index eda1ddc..fa126c4 100644 --- a/snippets/pixmap_table/configurations/brief/constant_width.md +++ b/snippets/pixmap_table/configurations/brief/constant_width.md @@ -1,3 +1 @@ -# constant_width - -Write the documentation content for constant_width here. \ No newline at end of file +The width in pixels shared by all pixmaps in this table. \ No newline at end of file diff --git a/snippets/pixmap_table/configurations/condition/constant_bits_per_pixel.md b/snippets/pixmap_table/configurations/condition/constant_bits_per_pixel.md index 32df24b..4243c8d 100644 --- a/snippets/pixmap_table/configurations/condition/constant_bits_per_pixel.md +++ b/snippets/pixmap_table/configurations/condition/constant_bits_per_pixel.md @@ -1,3 +1 @@ -# constant_bits_per_pixel - -Write the documentation content for constant_bits_per_pixel here. \ No newline at end of file +If `use_constant_bits_per_pixel` is enabled \ No newline at end of file diff --git a/snippets/pixmap_table/configurations/condition/constant_height.md b/snippets/pixmap_table/configurations/condition/constant_height.md index 936e729..71e5197 100644 --- a/snippets/pixmap_table/configurations/condition/constant_height.md +++ b/snippets/pixmap_table/configurations/condition/constant_height.md @@ -1,3 +1 @@ -# constant_height - -Write the documentation content for constant_height here. \ No newline at end of file +If `use_constant_height` is enabled. \ No newline at end of file diff --git a/snippets/pixmap_table/configurations/condition/constant_width.md b/snippets/pixmap_table/configurations/condition/constant_width.md index eda1ddc..728f9ad 100644 --- a/snippets/pixmap_table/configurations/condition/constant_width.md +++ b/snippets/pixmap_table/configurations/condition/constant_width.md @@ -1,3 +1 @@ -# constant_width - -Write the documentation content for constant_width here. \ No newline at end of file +If `use_constant_width` is enabled. \ No newline at end of file diff --git a/snippets/pixmap_table/configurations/flag/use_constant_bits_per_pixel.md b/snippets/pixmap_table/configurations/flag/use_constant_bits_per_pixel.md index 32df24b..cb935c5 100644 --- a/snippets/pixmap_table/configurations/flag/use_constant_bits_per_pixel.md +++ b/snippets/pixmap_table/configurations/flag/use_constant_bits_per_pixel.md @@ -1,3 +1 @@ -# constant_bits_per_pixel - -Write the documentation content for constant_bits_per_pixel here. \ No newline at end of file +All pixmaps in this table use the same number of bits to represent a pixel. \ No newline at end of file diff --git a/snippets/pixmap_table/configurations/flag/use_constant_height.md b/snippets/pixmap_table/configurations/flag/use_constant_height.md index 936e729..f3e4a08 100644 --- a/snippets/pixmap_table/configurations/flag/use_constant_height.md +++ b/snippets/pixmap_table/configurations/flag/use_constant_height.md @@ -1,3 +1 @@ -# constant_height - -Write the documentation content for constant_height here. \ No newline at end of file +All pixmaps in this table share the same height. \ No newline at end of file diff --git a/snippets/pixmap_table/configurations/flag/use_constant_width.md b/snippets/pixmap_table/configurations/flag/use_constant_width.md index eda1ddc..de552bb 100644 --- a/snippets/pixmap_table/configurations/flag/use_constant_width.md +++ b/snippets/pixmap_table/configurations/flag/use_constant_width.md @@ -1,3 +1 @@ -# constant_width - -Write the documentation content for constant_width here. \ No newline at end of file +All pixmaps in this table share the same width. \ No newline at end of file diff --git a/src/Pixmap Table.md b/src/Pixmap Table.md new file mode 100644 index 0000000..175ff0e --- /dev/null +++ b/src/Pixmap Table.md @@ -0,0 +1,143 @@ +\textinput{../snippets/pixmap_table/brief.md} + +## Table Structure + +### Identifier +- **Value**: `[IDENTIFIER_PLACEHOLDER]` + + +## Configuration Flags + +| Bit | Name | Description | +| --- | ---- | ----------- | +| 0 | `use_constant_width` | \textinput{../snippets/pixmap_table/configurations/flag/use_constant_width.md} | +| 1 | `use_constant_height` | \textinput{../snippets/pixmap_table/configurations/flag/use_constant_height.md} | +| 2 | `use_constant_bits_per_pixel` | \textinput{../snippets/pixmap_table/configurations/flag/use_constant_bits_per_pixel.md} | +| 3-7 | — | \textinput{../snippets/phrase/reserved.md} | + +### Configuration Values + +| Name | Type | Condition | Description | +| ---- | ---- | --------- | ----------- | +| `constant_width` | `u8` | \textinput{../snippets/pixmap_table/configurations/condition/constant_width.md} | \textinput{../snippets/pixmap_table/configurations/brief/constant_width.md} | +| `constant_height` | `u8` | \textinput{../snippets/pixmap_table/configurations/condition/constant_height.md} | \textinput{../snippets/pixmap_table/configurations/brief/constant_height.md} | +| `constant_bits_per_pixel` | `u8` | \textinput{../snippets/pixmap_table/configurations/condition/constant_bits_per_pixel.md} | \textinput{../snippets/pixmap_table/configurations/brief/constant_bits_per_pixel.md} | + +## Table Links + +| Bit | Name | Description | +| --- | ---- | ----------- | +| 0 | `link_color_tables` | \textinput{../snippets/pixmap_table/links/flag/link_color_tables.md} | +| 1-7 | — | \textinput{../snippets/phrase/reserved.md} | + +### Link Arrays + +| Name | Type | Condition | Description | +| ---- | ---- | --------- | ----------- | +| `color_tables` | `Vec` | \textinput{../snippets/pixmap_table/links/condition/color_tables.md} | \textinput{../snippets/pixmap_table/links/brief/color_tables.md} | + +## Record Fields + + +Each record contains the following fields in order: + +| Field | Type | Condition | Description | +| ----- | ---- | --------- | ----------- | +| `width` | `[TYPE_PLACEHOLDER]` | \textinput{../snippets/pixmap_table/records/condition/width.md} | \textinput{../snippets/pixmap_table/records/brief/width.md} | +| `height` | `[TYPE_PLACEHOLDER]` | \textinput{../snippets/pixmap_table/records/condition/height.md} | \textinput{../snippets/pixmap_table/records/brief/height.md} | +| `bits_per_pixel` | `[TYPE_PLACEHOLDER]` | \textinput{../snippets/pixmap_table/records/condition/bits_per_pixel.md} | \textinput{../snippets/pixmap_table/records/brief/bits_per_pixel.md} | +| `data` | `[TYPE_PLACEHOLDER]` | \textinput{../snippets/pixmap_table/records/condition/data.md} | \textinput{../snippets/pixmap_table/records/brief/data.md} | + +## Record Layout Examples + +**Example 1: Minimal pixmap** (all constants set) +``` +Configuration: constant_width=8, constant_height=8, constant_bits_per_pixel=1 +Pixmap: 8×8 monochrome bitmap + +Byte layout: [data (8 bytes)] +Binary: 11111111 10000001 10000001 10000001 10000001 10000001 10000001 11111111 +Hex: FF 81 81 81 81 81 81 FF +Represents: 8×8 square outline (64 pixels, 1 bit each = 8 bytes) +``` + +**Example 2: Custom dimensions** +``` +Configuration: constant_bits_per_pixel=1 +Pixmap: 5×3 monochrome bitmap + +Byte layout: [width] [height] [data (2 bytes)] +Binary: 00000101 00000011 11111000 01110000 +Hex: 05 03 F8 70 +Calculation: 5×3 = 15 pixels × 1 bit = 15 bits = 2 bytes (1 unused bit) +Data: 11111 (row 1) + 000 01 (partial row 2) + 110 00 (partial row 3) + 00 (padding) +``` + +**Example 3: Custom bits per pixel** +``` +Configuration: constant_width=4, constant_height=4 +Pixmap: 4×4 bitmap with 4 colors (2 bits per pixel) + +Byte layout: [bits_per_pixel] [data (4 bytes)] +Binary: 00000010 00011011 00011011 00011011 00011011 +Hex: 02 1B 1B 1B 1B +Calculation: 4×4 = 16 pixels × 2 bits = 32 bits = 4 bytes +Data: 00 01 10 11 | 00 01 10 11 | 00 01 10 11 | 00 01 10 11 + (Each group of 2 bits is a color index: 0, 1, 2, 3) +``` + +**Example 4: Full custom record** +``` +Pixmap: 3×3 bitmap with 8-bit color (256 colors per pixel) + +Byte layout: [width] [height] [bits_per_pixel] [data (9 bytes)] +Binary: 00000011 00000011 00001000 + 11111111 00000000 00000000 + 00000000 11111111 00000000 + 00000000 00000000 11111111 +Hex: 03 03 08 + FF 00 00 + 00 FF 00 + 00 00 FF +Calculation: 3×3 = 9 pixels × 8 bits = 72 bits = 9 bytes +Data: Red (255,0,0), Green (0,255,0), Blue (0,0,255), repeated 3 times +``` + +**Example 5: Multi-bit packing detail** +``` +Pixmap: 6×1 with 2 bits per pixel (4 colors) + +Configuration: constant_height=1, constant_bits_per_pixel=2 +Byte layout: [width] [data (2 bytes)] +Binary: 00000110 11100100 01000000 +Hex: 06 E4 40 +Calculation: 6 pixels × 2 bits = 12 bits = 2 bytes (4 unused bits) + +Bit breakdown: +Byte 0: 11 10 01 00 + ││ ││ ││ ││ + ││ ││ ││ └└─ Pixel 3: color index 0 + ││ ││ └└──── Pixel 2: color index 1 + ││ └└─────── Pixel 1: color index 2 + └└────────── Pixel 0: color index 3 + +Byte 1: 01 00 00 00 + ││ ││ ││ ││ + ││ └└─└└─└└─ Unused padding bits + └└────────── Pixel 5: color index 1 + (Pixel 4: 00 = color index 0, spans bytes) +``` + + +## Complete Table Example + + +The following byte sequence defines a minimal table with example records: + +| Byte(s) | Binary | Hex | Description | +| ------- | ------ | --- | ----------- | +| 1 | `[BINARY_PLACEHOLDER]` | `[HEX_PLACEHOLDER]` | Table identifier | +| ... | ... | ... | [DESCRIPTION_PLACEHOLDER] | \ No newline at end of file