1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
/// Transform a character to it's mathematical bold italic equivalent.
pub fn math_bold_italic(c: char) -> Option<char> {
    match c {
        // Latin capital letters.
        'A' => Some('𝑨'),
        'B' => Some('𝑩'),
        'C' => Some('𝑪'),
        'D' => Some('𝑫'),
        'E' => Some('𝑬'),
        'F' => Some('𝑭'),
        'G' => Some('𝑮'),
        'H' => Some('𝑯'),
        'I' => Some('𝑰'),
        'J' => Some('𝑱'),
        'K' => Some('𝑲'),
        'L' => Some('𝑳'),
        'M' => Some('𝑴'),
        'N' => Some('𝑵'),
        'O' => Some('𝑶'),
        'P' => Some('𝑷'),
        'Q' => Some('𝑸'),
        'R' => Some('𝑹'),
        'S' => Some('𝑺'),
        'T' => Some('𝑻'),
        'U' => Some('𝑼'),
        'V' => Some('𝑽'),
        'W' => Some('𝑾'),
        'X' => Some('𝑿'),
        'Y' => Some('𝒀'),
        'Z' => Some('𝒁'),

        // Latin small letters.
        'a' => Some('𝒂'),
        'b' => Some('𝒃'),
        'c' => Some('𝒄'),
        'd' => Some('𝒅'),
        'e' => Some('𝒆'),
        'f' => Some('𝒇'),
        'g' => Some('𝒈'),
        'h' => Some('𝒉'),
        'i' => Some('𝒊'),
        'j' => Some('𝒋'),
        'k' => Some('𝒌'),
        'l' => Some('𝒍'),
        'm' => Some('𝒎'),
        'n' => Some('𝒏'),
        'o' => Some('𝒐'),
        'p' => Some('𝒑'),
        'q' => Some('𝒒'),
        'r' => Some('𝒓'),
        's' => Some('𝒔'),
        't' => Some('𝒕'),
        'u' => Some('𝒖'),
        'v' => Some('𝒗'),
        'w' => Some('𝒘'),
        'x' => Some('𝒙'),
        'y' => Some('𝒚'),
        'z' => Some('𝒛'),

        // Greek capital letters.
        'Α' => Some('𝜜'),
        'Β' => Some('𝜝'),
        'Γ' => Some('𝜞'),
        'Δ' => Some('𝜟'),
        'Ε' => Some('𝜠'),
        'Ζ' => Some('𝜡'),
        'Η' => Some('𝜢'),
        'Θ' => Some('𝜣'),
        'Ι' => Some('𝜤'),
        'Κ' => Some('𝜥'),
        'Λ' => Some('𝜦'),
        'Μ' => Some('𝜧'),
        'Ν' => Some('𝜨'),
        'Ξ' => Some('𝜩'),
        'Ο' => Some('𝜪'),
        'Π' => Some('𝜫'),
        'Ρ' => Some('𝜬'),
        'ϴ' => Some('𝜭'),
        'Σ' => Some('𝜮'),
        'Τ' => Some('𝜯'),
        'Υ' => Some('𝜰'),
        'Φ' => Some('𝜱'),
        'Χ' => Some('𝜲'),
        'Ψ' => Some('𝜳'),
        'Ω' => Some('𝜴'),
        '∇' => Some('𝜵'),

        // Greek small letters
        'α' => Some('𝜶'),
        'β' => Some('𝜷'),
        'γ' => Some('𝜸'),
        'δ' => Some('𝜹'),
        'ε' => Some('𝜺'),
        'ζ' => Some('𝜻'),
        'η' => Some('𝜼'),
        'θ' => Some('𝜽'),
        'ι' => Some('𝜾'),
        'κ' => Some('𝜿'),
        'λ' => Some('𝝀'),
        'μ' => Some('𝝁'),
        'ν' => Some('𝝂'),
        'ξ' => Some('𝝃'),
        'ο' => Some('𝝄'),
        'π' => Some('𝝅'),
        'ρ' => Some('𝝆'),
        'ς' => Some('𝝇'),
        'σ' => Some('𝝈'),
        'τ' => Some('𝝉'),
        'υ' => Some('𝝊'),
        'φ' => Some('𝝋'),
        'χ' => Some('𝝌'),
        'ψ' => Some('𝝍'),
        'ω' => Some('𝝎'),
        '∂' => Some('𝝏'),
        'ϵ' => Some('𝝐'),
        'ϑ' => Some('𝝑'),
        'ϰ' => Some('𝝒'),
        'ϕ' => Some('𝝓'),
        'ϱ' => Some('𝝔'),
        'ϖ' => Some('𝝕'),
        // No equivalence.
        _ => None,
    }
}