Skip to content

Main content

Public Source Tone Mark Order Tool

Order supplied mark tokens according to an identified source convention; no orthography or Unicode canonical order is inferred.

Loading tool…

Description

Sort marks by their supplied ranks and append them to base for display.

Text may encode a visible mark as a combining code point or within a precomposed character. Unicode decomposition and a source-specific ordering list address different representation questions. Counting supplied tone-mark symbols does not infer a language’s tones, pronunciation or appropriate orthography.

Sort marks by their supplied ranks and append them to base for display.

When to use this tool

Use Public Source Tone Mark Order when checking the stated supplied mark-counting or ordering convention.

How to use the tool and how it works

  1. Enter base, marks, suppliedOrder. Follow any array-alignment requirements below. Use the units and conventions below.
  2. Run the tool. Correct any format, range, or cross-field input error before interpreting the output.
  3. Read orderedMarks, display. Use the output convention below.

Require unique suppliedOrder entries and every mark listed in that order. Sort marks by their supplied ranks and append them to base for display.1

Code points, UTF-16 code units, canonical decomposition and case conversion are different operations. This helper follows its explicit local convention rather than linguistic analysis or rendered-text measurement.2

Input fieldMeaning and unitsAccepted input
baseBaseRequired. Text; maximum UTF-16 length 8192.
marksMarksRequired. Array of text; maximum UTF-16 length 8192; maximum items 256.
suppliedOrderDistinct caller-ranked mark tokens; not Unicode canonical combining-class order unless supplied that way.Required. Array of text; maximum UTF-16 length 8192; maximum items 256.
Output fieldInterpretationReturned shape
orderedMarksOrdered MarksRequired. Array of text; maximum UTF-16 length 8192; maximum items 256.
displayDisplayRequired. Text; maximum UTF-16 length 8192.
json
{
  "input": {
    "base": "a",
    "marks": [
      "acute",
      "dot"
    ],
    "suppliedOrder": [
      "dot",
      "acute"
    ]
  },
  "output": {
    "orderedMarks": [
      "dot",
      "acute"
    ],
    "display": "adotacute"
  }
}

Limitations and assumptions

  • Duplicate marks are retained; this is a caller-defined ordering, not automatic Unicode normalization or linguistic tone analysis.
  • Inputs must satisfy both the field types and the cross-field conditions above. Invalid input causes an error; a successful false flag or documented placeholder is a different result.

Alternative or Complementary methods

Use the source’s orthographic policy and appropriate Unicode normalization or language-aware analysis when linguistic interpretation or text equivalence matters.

References

  1. Calculation and input contract: african-studies/public-source-tone-mark-order — tool.io

  2. Unicode 17.0: encoding and normalization conventions — Unicode Consortium

Similar or alternative tools