Suggestion: Add double-struck R and C
The five essential double-struck letters in mathematics are ℕ, ℤ, ℚ, ℝ and ℂ (representing the natural, integral, rational, real, and complex numbers respectively).[^1] The Monaspace fonts usually don’t have glyphs for double-struck letters, but they were added for ℕ, ℤ and ℚ in version 1.3. I’d therefore suggest that glyphs for ℝ (U+211D) and ℂ (U+2102) are also added, so that all five essential letters are covered.
(I also looked through all other fonts installed on my system, and all of them that have glyphs for ℕ, ℤ and ℚ also have glyphs for ℝ and ℂ.[^2])
[^1]: There are also other important double-struck letters and digits, arguably 𝔸, 𝔻, 𝔼, 𝔽, ℍ, 𝕀, 𝕂, 𝕃, ℙ, 𝕊, 𝕋, 𝕜, 𝟙, but the above five are distinctively above these in importance. [^2]: As well as ℍ and ℙ, probably because these are the seven double-struck uppercase letters contained in the Unicode block “Letterlike Symbols”.
Sure, I can definitely add these for the next release! I know there are Unicode codepoints for doublestruck versions of the full Latin alphabet, so is there a point at which the full set would be a useful addition?
I thought about this for a bit and I think that there isn’t necessarily one specific point. Instead, I’d say that double-struck characters may come in coverage groups of increasing size.
As far as I’m aware, Unicode currently contains the following double-struck letters:
Double-struck Unicode characters (grouping and labelling by me)
| Label | Block | Characters / description | Unicode version | Unicode codepoints |
|---|---|---|---|---|
| L1 | Letterlike Symbols | ℂ, ℍ, ℕ, ℙ, ℚ, ℝ, ℤ | 1.x | 2102, 210D, 2115, 2119, 211A, 211D, 2124 |
| L2 | ℽ (gamma), ℾ (Gamma), ℿ (Pi) | 3.2 | 213D–213F |
|
| L3 | ⅅ, ⅆ, ⅇ, ⅈ, ⅉ (italic) | — | 2145–2149 |
|
| L4 | ⅀ (summation sign) | — | 2140 |
|
| L5 | ℼ (pi) | 4.1 | 213C |
|
| M1 | Mathematical Alphanumeric Symbols | Remaining Capital Latin | 3.1 | 1D538–1D550 |
| M2 | Small Latin | — | 1D552–1D56B |
|
| M3 | Digits | — | 1D7D8–17DE1 |
|
| A1 | Arabic Mathematical Alphabetic Symbols | Arabic Letters | 6.1 | 1EEA1–1EEBB |
I think that the following would be natural groups of characters that a (non-Arabic) font could cover:
Possible coverage groups
| Characters | Coverage | covered Unicode version |
|---|---|---|
| (None) | ||
| Essential letters ℕ, ℤ, ℚ, ℝ, ℂ | partially L1 | partially 1.x |
| Upright capital Latin letters in LetterLike Symbols: ℕ, ℤ, ℚ, ℝ, ℂ, ℍ, ℙ | L1 | 1.x |
| Capital Latin letters | L1, M1 | 1.x, partially 3.1 |
| Capital Latin letters, digits | L1, M1, M3 | 1.x, partially 3.1 |
| Capital Latin letters, small Latin letters, digits | L1, M1–M3 | 3.1 |
| Non-Arabic | L1–L5, M1–M3 | 4.1 |
- One could argue that L2–L5 should be included earlier since they are in the block LetterLike Symbols, which is “more fundamental” than Mathematical Alphanumeric Symbols. But these characters have been added only after M1–M3, and also don’t seem to be particularly important: Unicode 3.2 and 4.1 came out in 2000 and 2002 respectively, and no further double-struck Greek letters (L2, L5) or italic double-struck letters (L3) have been added since them.
- Both small Latin letters and digits contain only one actually significant character (𝕜 and 𝟙 respectively). So it’s a bit hard to say which one is more important. I’d say digits because 𝟙 has a wider range of usage.
- Another approach would be to add both 𝟙 and 𝕜 after the capital Latin letters, even if no other small Latin letters or digits are added.
Which of these groups to implement probably depends on the intended usage of a font, as well as the amount of work that one can put into it.
PS.
For the Monaspace fonts, a possibly interesting point of reference is Lean’s mathlib4 library.
Frequencies of double-struck letters in mathlib4 (counted by lines in which they appear)
𝔸 544
𝔹 11
ℂ 5678
𝔻 62
𝔼 208
𝔽 14
𝔾 1
ℍ 640
𝕀 16
𝕁 0
𝕂 511
𝕃 0
𝕄 22
ℕ 26159
𝕆 78
ℙ 306
ℚ 3383
ℝ 25686
𝕊 101
𝕋 3
𝕌 9
𝕍 0
𝕎 299
𝕏 0
𝕐 0
ℤ 9814
𝕒 0
𝕓 0
𝕔 0
𝕕 0
𝕖 4
𝕗 0
𝕘 0
𝕙 0
𝕚 0
𝕛 0
𝕜 19953
𝕝 141
𝕞 4
𝕟 0
𝕠 0
𝕡 0
𝕢 29
𝕣 0
𝕤 0
𝕥 0
𝕦 0
𝕧 0
𝕨 0
𝕩 0
𝕪 0
𝕫 0
𝟘 0
𝟙 4444
𝟚 0
𝟛 0
𝟜 0
𝟝 0
𝟞 0
𝟟 0
𝟠 0
𝟡 0
ℽ 0
ℾ 0
ℿ 0
ⅅ 0
ⅆ 0
ⅇ 0
ⅈ 0
ⅉ 0
⅀ 0
ℼ 0
The following can be seen:
- Out of the capital Latin letters, 21/26 are in use, with 12/26 appearing more than a hundred times. The five essential letters are also by far the most used ones.
- Out of the small capital letters, only five are used: 𝕖 (4 times), 𝕜 (19953 times), 𝕝 (414 times), 𝕞 (4 times), 𝕢 (29 times).
- Out of the digits, only 𝟙 is used (4444 times).
- The characters in L2–L5 are never used.
very interesting! thanks so much, this is really useful information.