Skip to content

Unicode Helpers

The CTBase.Unicode submodule provides functions for converting integers to Unicode subscript and superscript characters. These are useful for generating mathematical notation in display code (e.g. variable names like x₁, ).

Subscripts

CTBase.Unicode.ctindice returns a single subscript digit (0–9) as a Char:

julia
julia> using CTBase

julia> CTBase.Unicode.ctindice(3)
'₃': Unicode U+2083 (category No: Number, other)

CTBase.Unicode.ctindices converts a multi-digit non-negative integer to a String of subscript characters:

julia
julia> CTBase.Unicode.ctindices(123)
"₁₂₃"

Superscripts

CTBase.Unicode.ctupperscript returns a single superscript digit (0–9) as a Char:

julia
julia> CTBase.Unicode.ctupperscript(2)
'²': Unicode U+00B2 (category No: Number, other)

CTBase.Unicode.ctupperscripts converts a multi-digit non-negative integer to a String of superscript characters:

julia
julia> CTBase.Unicode.ctupperscripts(123)
"¹²³"

Error Handling

Passing a negative integer or a value outside 0–9 to the single-digit functions raises CTBase.Exceptions.IncorrectArgument:

julia> CTBase.Unicode.ctindice(12)
ERROR: IncorrectArgument

  the subscript must be a single digit

  Got       12
  Expected  0-9

  Context   Unicode subscript generation
  Hint      Use ctindices() for numbers with multiple digits
└─

Function Reference

FunctionReturnsRange
CTBase.Unicode.ctindiceChar (single subscript digit)0–9
CTBase.Unicode.ctindicesString (multi-digit subscripts)≥ 0
CTBase.Unicode.ctupperscriptChar (single superscript digit)0–9
CTBase.Unicode.ctupperscriptsString (multi-digit superscripts)≥ 0

See Also