33

Note: This functionality is presently missing. See: How to add named characters to Mathematica 10?


Mathematica apparently supports the Klingon alphabet:

MemberQ[$CharacterEncodings, "Klingon"]

True

UnicodeFontMapping.tr excerpt:

0xF8D0        N       15      0x41        # \[KlingonA]
0xF8D1        N       15      0x42        # \[KlingonB]
0xF8D2        N       15      0x43        # \[KlingonCH]
0xF8D3        N       15      0x44        # \[KlingonD]
0xF8D4        N       15      0x45        # \[KlingonE]
0xF8D5        N       15      0x47        # \[KlingonGH]
0xF8D6        N       15      0x48        # \[KlingonH]
0xF8D7        N       15      0x49        # \[KlingonI]
0xF8D8        N       15      0x4a        # \[KlingonJ]
0xF8D9        N       15      0x4c        # \[KlingonL]
0xF8DA        N       15      0x4d        # \[KlingonM]
0xF8DB        N       15      0x4e        # \[KlingonN]
0xF8DC        N       15      0x46        # \[KlingonNG]
0xF8DD        N       15      0x4f        # \[KlingonO]
0xF8DE        N       15      0x50        # \[KlingonP]
0xF8DF        N       15      0x4b        # \[KlingonQ]
0xF8E0        N       15      0x51        # \[KlingonQH]
0xF8E1        N       15      0x52        # \[KlingonR]
0xF8E2        N       15      0x53        # \[KlingonS]
0xF8E3        N       15      0x54        # \[KlingonT]
0xF8E4        N       15      0x58        # \[KlingonTLH]
0xF8E5        N       15      0x55        # \[KlingonU]
0xF8E6        N       15      0x56        # \[KlingonV]
0xF8E7        N       15      0x57        # \[KlingonW]
0xF8E8        N       15      0x59        # \[KlingonY]
0xF8E9        N       15      0x27        # \[KlingonGlottalStop]
0xF8F0        N       15      0x29        # \[Klingon0]
0xF8F1        N       15      0x21        # \[Klingon1]
0xF8F2        N       15      0x40        # \[Klingon2]
0xF8F3        N       15      0x23        # \[Klingon3]
0xF8F4        N       15      0x34        # \[Klingon4]
0xF8F5        N       15      0x25        # \[Klingon5]
0xF8F6        N       15      0x5e        # \[Klingon6]
0xF8F7        N       15      0x26        # \[Klingon7]
0xF8F8        N       15      0x2a        # \[Klingon8]
0xF8F9        N       15      0x28        # \[Klingon9]
0xF8FF        N       15      0x5a        # \[KlingonEmpire]

What font and settings do I need to make these visible?


Klingon alphabet:
Klingon alphabet

Klingon numerals:
Klingon numerals

Mr.Wizard
  • 271,378
  • 34
  • 587
  • 1,371
  • I installed a pIqaD font (only these map Unicode private range 0xF8D0..0xF8FF to Klingon characters, but that did not help Mathematica render these characters. Is there a configuration file that maps character range to a particular font? I think Mathematica does not try very earnestly to map code points to available fonts in the system. (This is in Windows 7). – kkm -still wary of SE promises Feb 04 '12 at 02:42
  • 3
    "Note Mathematica not only supports a wide variety of international languages, but it also supports Klingon making it, I believe, the first intergalactic software program." --- from this review of Mma 4.0 in 1999! – JxB Feb 04 '12 at 02:48
  • 2
    You are aiming at Klingon Boggle, right? – Yves Klett Jun 05 '12 at 11:18
  • @Yves oh no my secret is out! – Mr.Wizard Jun 05 '12 at 11:21
  • 1
    I, for one, welcome our new Klingon overlords ;-) – Yves Klett Jun 05 '12 at 11:24
  • how do you write a letter k in klingon –  Sep 17 '12 at 20:29
  • 1
    The same way that you write a letter Щ or ش in the Latin alphabet... – Oleksandr R. Sep 17 '12 at 20:46
  • @davidpatterson by typing the literal character name e.g. \[KlingonV]; you could add input aliases, e.g. local to a new Notebook: CreateDocument[{}, InputAliases -> {"kv" -> \[KlingonV]}] then [Esc]kv[Esc] – Mr.Wizard Sep 18 '12 at 20:22
  • Ok, so you are telling me, that the MATHEMATICAL software supports Klingon characters, but not irreducible characters... – Per Alexandersson Aug 08 '14 at 20:01
  • @PerAlexandersson It no longer does if that makes you feel better. Incidentally which characters are you missing? Could you give an example of the representation you wish to implement? – Mr.Wizard Aug 08 '14 at 20:06
  • @Mr.Wizard: Well, I play around a lot with Schur polynomials, which are characters of GLn, and also irreducible characters of Sn. In general, I would like access to structure constants, such as Littlewood-Richardson coefficients, Kostka coefficients and Kronecker coefficients.

    My question about generating Gelfand-Tsetlin patterns on this site can be used to compute Kostka numbers, for example. LR-coefficients can be computed by counting lattice points in polytopes, another thing I really think Mathematica could be better at.

    – Per Alexandersson Aug 08 '14 at 20:17

2 Answers2

18

I found the solution. Mathematica is set up to use the font KLIpIqaDmey. The tip-off is in the UnicodeFontMapping.tr file referenced in the question. The header reads:

@@resource UnicodeFontMapping
Mathematica: Times Automatic
Mathematica: (Times Courier) Automatic
Mathematica: (Mathematica1 Mathematica1Mono) Automatic
Mathematica: (Mathematica2 Mathematica2Mono) Automatic
Mathematica: (Mathematica3 Mathematica3Mono) Automatic
Mathematica: (Mathematica4 Mathematica4Mono) Automatic
Mathematica: (Mathematica5 Mathematica5Mono) Automatic
Mathematica: (Mathematica6 Mathematica6Mono) Automatic
Mathematica: (Mathematica7 Mathematica7Mono) Automatic
Mathematica: MathematicaInternal Automatic
Mathematica: Zapf_Dingbats Automatic
Mathematica: (DefaultKanjiFont DefaultMonoKanjiFont) Japanese
Mathematica: (DefaultKoreanFont DefaultMonoKoreanFont) Korean
Mathematica: (DefaultChineseSimplifiedFont DefaultMonoChineseSimplifiedFont) ChineseSimplified
Mathematica: (DefaultChineseTraditionalFont DefaultMonoChineseTraditionalFont) ChineseTraditional
Mathematica: KLIpIqaDmey Klingon



#  0  =  special: dynamically assigned
#  1  =  base font
#  2  =  Mathematica1: Greek letters and common operators
#  3  =  Mathematica2: Radicals, brackets, integrals, arrows
#  4  =  Mathematica3: Operators and shapes
#  5  =  Mathematica4: Arrows, vectors, over/under brackets, keys, icons
#  6  =  Mathematica5: the archaic alphabets, Script
#  7  =  Mathematica6: Gothic
#  8  =  Mathematica7: DoubleStruck
#  9  =  FE Internal
#  10  =  Zapf Dingbats
#  11  =  Kanji (if present)
#  12  =  Korean (if present)
#  13  =  Chinese Simplified (if present)
#  14  =  Chinese Traditional (if present)
#  15  =  Klingon (if present)

At first glance I overlooked the significance of the Mathematica: lines, but then I realized their relation to 0 - 15 below.

Image captured from Mathematica with the font installed:

Mathematica graphics

Mr.Wizard
  • 271,378
  • 34
  • 587
  • 1,371
2

The way to get those characters is to type their long name in the form specified in the right hand column of that table. I don't know what it's supposed to look like, but to me they look just like a smaller variant of the latin alphabet.

In[39]:= ToCharacterCode["\[KlingonA]\[KlingonB]\[KlingonCH]\
\[KlingonD]\[KlingonGlottalStop]\[Klingon4]\[KlingonEmpire]"]

Out[39]= {63696, 63697, 63698, 63699, 63721, 63732, 63743}
ragfield
  • 1,365
  • 7
  • 11