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 77089a2..0000000 --- a/snippets/character_table/configurations/condition/constant_codepoint_count.md +++ /dev/null @@ -1 +0,0 @@ -If `use_constant_codepoint_count` is 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"}