Skip to content

Linting rules

This page explains linting color codes and validation rules.

Color codes

Bright red background + white text (critical)

  • Meaning: Translation column A does not match the source sheet.
  • Where: Translation sheets, column A.
  • Why it matters: Translation lookup fails and generation will fail.
  • Fix: Restore the formula in column A (see Translation sheet formulas).

Yellow background

  • Meaning: Required data missing or warnings.
  • Examples: Empty category name, missing icon, unused fields, row count mismatch.

Red text

  • Meaning: Invalid reference or URL.
  • Examples: Icon link not accessible; Fields column references a missing field.

Light red background

  • Meaning: Invalid or duplicate values.
  • Examples: Invalid field type, missing options, duplicate names, invalid translation headers, option count mismatches.

Orange text

  • Meaning: HTTP icon URL warning.
  • Fix: Switch to HTTPS when possible.

Categories sheet validation

  1. Name (A):
  2. Required; must be unique.
  3. Auto-capitalized.

  4. Icon (B):

  5. Required; any non-empty valid icon reference.
  6. Red text indicates invalid or inaccessible URLs.

  7. Fields (C):

  8. Each field name must exist in the Details sheet.
  9. Red text indicates missing or misspelled fields.
  10. Comma-separated lists are auto-formatted.

  11. Applies (D):

  12. Accepts observation, track, or both (comma-separated).
  13. Abbreviations o, t are accepted.
  14. At least one category must include track.
  15. Invalid values are treated as empty and default to observation.

  16. Category ID (E):

  17. Auto-generated.

Details sheet validation

  1. Name (A):
  2. Required; must be unique.
  3. Yellow highlight if unused by any category.
  4. Auto-capitalized.

  5. Helper Text (B):

  6. Optional.
  7. Auto-capitalized.

  8. Type (C):

  9. Accepts t, n, m, s (case-insensitive).
  10. Blank defaults to select-one.
  11. Invalid values are highlighted.

  12. Options (D):

  13. Required for select and multiple types.
  14. Optional for text and number types.
  15. Comma-separated lists are auto-formatted.

  16. Universal (F):

  17. Must be TRUE, FALSE, or blank.

Translation sheet validation

  1. Column A (primary column):
  2. Must match the source sheet exactly.
  3. Bright red + white text indicates a mismatch.

  4. Headers (row 1):

  5. Must be a valid language name, ISO code, BCP-47 tag, or "Name - ISO" format.

  6. Row counts:

  7. Translation sheets should match the source row count.

  8. Option counts (Detail Option Translations):

  9. Each translation must have the same number of comma-separated options as the source.

  10. General formatting:

  11. Cells are auto-capitalized.
  12. Whitespace-only cells are cleared.

See Translation sheets for header formats and legacy layouts.

Common scenarios

Fresh spreadsheet

  • Yellow highlights on empty required fields.
  • Action: Fill required data.

After adding icons

  • Red text on invalid icon references.
  • Action: Fix or replace invalid icon references.

After auto-translation

  • Possible light red if option counts do not match.
  • Action: Ensure option lists have matching counts.

After import

  • Bright red translation mismatches if formulas broke.
  • Yellow highlights for unused fields.

Fixing translation sheet mismatches

  1. Open the translation sheet with bright red column A.
  2. Clear column A values (rows below the header).
  3. In cell A2, re-enter the formula that matches the source sheet:

  4. Category Translations: =Categories!A2:A[lastRow]

  5. Detail Label Translations: =Details!A2:A[lastRow]
  6. Detail Helper Text Translations: =Details!B2:B[lastRow]
  7. Detail Option Translations: =Details!D2:D[lastRow]

Then re-run Lint Sheets. If available, you can also use the Debug menu to fix translation mismatches automatically.

Best practices

  • Lint early and often.
  • Fix errors in priority order:
  • Bright red (critical)
  • Light red
  • Yellow
  • Red text
  • Orange text
  • Keep names consistent and unique.
  • Review auto-translations with native speakers.

When errors are unclear

  • Hover over red-text cells for notes.
  • Check the browser console for errors (View → Developer → JavaScript Console).
  • See Troubleshooting.