Random Unicode Format Control Generator
Unicode 17.0.0 assigned repertoire: GeneralCategoryCf format controls, including invisible and bidi-affecting values. Sources https://www.unicode.org/Public/17.0.0/ucd/UnicodeData.txt and Scripts.txt; no font/rendering or language-validity guarantee. Invisible/control/combining values are intentional test data, not safe UI text. Uniform pinned repertoire-entry sampling; without replacement means distinct entry indices, not guaranteed distinct rendered glyphs. Reproducible seed or one advancing caller source; not secure randomness.
Description
Format-control characters can affect layout or bidirectional interpretation while remaining invisible.
Format-control characters can affect layout or bidirectional interpretation while remaining invisible.1
This generator supplies explicit Cf test entries whose effects should be inspected in the intended text environment.
When to use Random Unicode Format Control Generator
Use this tool when you need to sample the fixed repertoire for recognition or text fixtures. Prepare the seed and the exact inventory or scenario inputs described below. Keep units, reference edition, and sampling convention explicit.
How to use Random Unicode Format Control Generator and understand its results
- Prepare the seed and the exact inventory or scenario inputs described below. Keep units, reference edition, and sampling convention explicit.
- Enter seed, count, withoutReplacement, following the field table and calculation rules below, then run the tool.
- Read result. Inspect the nested fields in the output table below and keep any missing evidence or selected indices visible.
- Correct any input issues and run again. Before using a successful result, review its units, signs, evidence coverage, and stated model or reference assumptions.
| Input field | Meaning | Value type | Requirement |
|---|---|---|---|
| seed | Nonblank reproducibility seed; default seeded runs restart for each request | string | Required |
| count | Number of sampled entry positions | safe integer from 1 to 64 | Required |
| withoutReplacement | True draws distinct entry positions; false permits repeated positions | boolean | Required |
Sample from the fixed implementation inventory of 170 entries. Return values, zero-based selectedEntryIndices, and repertoireSize. Range inventories resolve an entry index through inclusive code-point ranges; explicit inventories retrieve the stored string in order. The pinned repertoire is not downloaded or updated during a run.2, 3
Use a nonblank seed of at most 256 UTF-16 units and a safe-integer count from 1 to 64. By default the seed is hashed into a deterministic pseudorandom state; each run restarts that state, so identical full inputs and implementation reproduce the result. The SDK may provide context.random, which replaces the seeded source and advances across the request; the seed remains required. Every source value must be finite in [0,1), with a request limit of 100000 source calls. Draw an index as floor(U×remainingSize). With replacement draw from the full inventory each time; without replacement remove each chosen position from an ordered pool and reject counts exceeding the inventory size. Uniform-source draws are over positions, not necessarily distinct values. This is not secure randomness.
Pinned Unicode 17.0.0 scope: GeneralCategoryCf format controls, including invisible and bidi-affecting values. Character names, script properties, and assigned categories describe repertoire selection, not language validity or rendering support.
selectedIndex=floor(U×availablePositions); remove chosen position when withoutReplacement=true Read these symbols with the field meanings and branch or reference rules above.
| Output field | Meaning | Value type |
|---|---|---|
| result | Object containing the fields below | object |
| result.values | Sampled strings, or converted strings when a converter is applied | list |
| result.selectedEntryIndices | Zero-based source inventory positions, in draw order | list |
| result.repertoireSize | Number of available entry positions in the sampled inventory | number |
{
"input": {
"seed": "tool.io/batch42",
"count": 1,
"withoutReplacement": false
},
"output": {
"result": {
"values": [
""
],
"selectedEntryIndices": [
154
],
"repertoireSize": 170
}
}
} Limitations and assumptions
The default source is deterministic pseudorandomness, not an independently audited or secure draw. Replacement applies to inventory positions; distinct positions may render identically or yield equal answers. Review the supplied inventory or scenario domain independently before interpreting the sample. A sampled character does not guarantee a visible or distinct glyph, correct shaping, a valid linguistic combination, or a particular font feature.
Missing required fields, unknown fields, wrong types, and violated calculation rules return input issues. Numeric values must be finite; nonfinite numeric outputs are rejected. Extremely large composite outputs are rejected.
Alternative or Complementary methods
For a related task, use Random Unicode Variation Selector Generator: Variation selectors are characters intended to modify a compatible preceding character’s presentation. Sampling standalone selectors provides test data and does not establish a valid base-selector sequence. For a complementary step, use Random Unicode Space Character Generator: Unicode space separators can differ in width and text-processing behavior. This inventory samples assigned Zs characters, excluding line and paragraph separators.
References
-
Random Unicode Format Control Generator — tool.io
-
Calculation or validation: random/number — tool.io
Similar or alternative tools
- Random Unicode Variation Selector Generator
Variation selectors are characters intended to modify a compatible preceding character’s presentation. Sampling standalone selectors provides test data and does not establish a valid base-selector sequence.
- Random Unicode Space Character Generator
Unicode space separators can differ in width and text-processing behavior. This inventory samples assigned Zs characters, excluding line and paragraph separators.