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

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)

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

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

Superscripts

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

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

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
julia> CTBase.Unicode.ctindice(12)
IncorrectArgument  top-level scope, REPL[1]:2

│  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
ctindiceChar (single subscript digit)0–9
ctindicesString (multi-digit subscripts)≥ 0
ctupperscriptChar (single superscript digit)0–9
ctupperscriptsString (multi-digit superscripts)≥ 0

See Also