Unicode allows adding diacritical markings to ordinary characters, primarily to support the texts of many languages. In most cases these indicate details of pronunciation, but mathematicians sometimes find it convenient to employ the markings for entirely different purposes. Unicode has a code range (0300-036F) of various diacritical marks that combine with other characters. Many of them are shown here, with a few markings from other code ranges. They are not intended to be an orthogonal set.
Unfortunately, many implementations do not yet support these well. In most cases, a marking should be ordinarily be centered over or under the primary character's glyph, but sometimes appears elsewhere, or is missing entirely. Sometimes the extra marking overlaps the main character when it ought to be completely separate.
In the examples below, the "Y" (Y), "y" (y), and "o" (o) characters are the ordinary letters from page zero of Unicode, as inherited from long-established ASCII. The "o" is included merely to to give the diacriticized "Y" and "y" a typographical context for better understanding. Surrounding all that in the source code are the <tt> and </tt> markup symbols of HTML, in order to effect a monospace font. On the author's computer, this gave better results than a variable-pitch font.
Authors should remember that some Unicode characters have diacritical marks "built in"; The choice between combinings and built-ins requires consideration of the context. Example:
combining | built-in | ||
---|---|---|---|
Ÿ | Ÿ | Ÿ | Ÿ or Ÿ |
ÿ | ÿ | ÿ | ÿ or ÿ |
All the official Unicode names begin with the word "combining", which is here abbreviated as "c.".
In table D-1, each row has markings in above-below pairs:
Table D-1 | |||||
above | below | ||||
---|---|---|---|---|---|
Unicode name | source | result | result | source | Unicode name |
c. dot above | ooẎẏoo | ooẎẏoo | ooỴỵoo | ooỴỵoo | c. dot below |
c. diaeresis | ooŸÿoo | ooŸÿoo | ooY̤y̤oo | ooY̤y̤oo | c. diaeresis below |
c. three dots above | ooY⃛y⃛oo | ooY⃛y⃛oo | ooY⃨y⃨oo | ooY⃨y⃨oo | c. triple underdot |
c. left arrow above | ooY⃖y⃖oo | ooY⃖y⃖oo | ooY⃮y⃮oo | ooY⃮y⃮oo | c. left arrow below |
c. right arrow above | ooY⃗y⃗oo | ooY⃗y⃗oo | ooY⃯y⃯oo | ooY⃯y⃯oo | c. right arrow below |
c. left harpoon above | ooY⃐y⃐oo | ooY⃐y⃐oo | ooY⃭y⃭oo | ooY⃭y⃭oo | c. leftwards harpoon with barb downwards |
c. right harpoon above | ooY⃑y⃑oo | ooY⃑y⃑oo | ooY⃬y⃬oo | ooY⃬y⃬oo | c. rightwards harpoon with barb downwards |
c. vertical line above | ooY̍y̍oo | ooY̍y̍oo | ooY̩y̩oo | ooY̩y̩oo | c. vertical line below |
c. double vertical line above | ooY̎y̎oo | ooY̎y̎oo | ooY͈y͈oo | ooY͈y͈oo | c. double vertical line below |
c. caron | ooY̌y̌oo | ooY̌y̌oo | ooY̬y̬oo | ooY̬y̬oo | c. caron below |
c. circumflex accent | ooŶŷoo | ooŶŷoo | ooY̭y̭oo | ooY̭y̭oo | c. circumflex accent below |
c. breve | ooY̆y̆oo | ooY̆y̆oo | ooY̮y̮oo | ooY̮y̮oo | c. breve below |
c. inverted breve | ooY̑y̑oo | ooY̑y̑oo | ooY̯y̯oo | ooY̯y̯oo | c. inverted breve below |
c. grave accent | ooỲỳoo | ooỲỳoo | ooY̖y̖oo | ooY̖y̖oo | c. grave accent below |
c. acute accent | ooÝýoo | ooÝýoo | ooY̗y̗oo | ooY̗y̗oo | c. acute accent below |
c. x above | ooY̽y̽oo | ooY̽y̽oo | ooY͓y͓oo | ooY͓y͓oo | c. x below |
c. ring above | ooY̊ẙoo | ooY̊ẙoo | ooY̥y̥oo | ooY̥y̥oo | c. ring below |
c. tilde | ooỸỹoo | ooỸỹoo | ooY̰y̰oo | ooY̰y̰oo | c. tilde below |
c. macron | ooȲȳoo | ooȲȳoo | ooY̱y̱oo | ooY̱y̱oo | c. macron below |
c. bridge above | ooY͆y͆oo | ooY͆y͆oo | ooY̪y̪oo | ooY̪y̪oo | c. bridge below |
c. plus sign above | ooY᫈y᫈oo | ooY᫈y᫈oo | ooY̟y̟oo | ooY̟y̟oo | c. plus sign below |
c. double plus sign above | ooY᫉y᫉oo | ooY᫉y᫉oo | ooY᫊y᫊oo | ooY᫊y᫊oo | c. double plus sign below |
Table D-2 has some above markings:
Table D-2 | ||
Unicode name | source | result |
---|---|---|
c. almost equal above | ooY͌y͌oo | ooY͌y͌oo |
c. four dots above | ooY⃜y⃜oo | ooY⃜y⃜oo |
Table D-3 has some below markings, with related markings in the same row:
Table D-3 | |||||
Unicode name | source | result | result | source | Unicode name |
---|---|---|---|---|---|
c. left tack below | ooY̘y̘oo | ooY̘y̘oo | ooY̙y̙oo | ooY̙y̙oo | c. right tack below |
c. up tack below | ooY̝y̝oo | ooY̝y̝oo | ooY̞y̞oo | ooY̞y̞oo | c. down tack below |
c. left arrowhead below | ooY͔y͔oo | ooY͔y͔oo | ooY͕y͕oo | ooY͕y͕oo | c. right arrowhead below |
c. equals sign below | ooY͇y͇oo | ooY͇y͇oo | |||
c. asterisk below | ooY͙y͙oo | ooY͙y͙oo | |||
c. inverted bridge below | ooY̺y̺oo | ooY̺y̺oo | |||
c. square below | ooY̻y̻oo | ooY̻y̻oo | |||
c. minus sign below | ooY̠y̠oo | ooY̠y̠oo | |||
c. left right arrow below | ooY͍y͍oo | ooY͍y͍oo |
Table D-4 has some overlay markings:
Table D-4 | |||||
Unicode name | source | result | result | source | Unicode name |
---|---|---|---|---|---|
c. short solidus overlay | ooY̷y̷oo | ooY̷y̷oo | ooY̸y̸oo | ooY̸y̸oo | c. long solidus overlay |
c. short stroke overlay | ooY̵y̵oo | ooY̵y̵oo | |||
c. enclosing circle backslash | ooY⃠y⃠oo | ooY⃠y⃠oo |
If the markings of table D-5 are properly implemented, the lines will connect from one character to the next, and be centered on the whole group:
Table D-5 | |||||
Unicode name | source | result | |||
---|---|---|---|---|---|
c. overline | ooY̅Y̅Y̅y̅y̅y̅oo | ooY̅Y̅Y̅y̅y̅y̅oo | |||
c. low line | ooY̲Y̲Y̲y̲y̲y̲oo | ooY̲Y̲Y̲y̲y̲y̲oo | |||
c. long stroke overlay | ooY̶Y̶Y̶y̶y̶y̶oo | ooY̶Y̶Y̶y̶y̶y̶oo | |||
c. double overline | ooY̿Y̿Y̿y̿y̿y̿oo | ooY̿Y̿Y̿y̿y̿y̿oo | |||
c. double low line | ooY̳Y̳Y̳y̳y̳y̳oo | ooY̳Y̳Y̳y̳y̳y̳oo |
Markings can be cascaded, with examples below. However, the risk of incorrect rendering increases with the number of markings.
Table D-6 | |||
source | result | result | source |
---|---|---|---|
Ÿ̆ | Ÿ̆ | ||
Y̆̈ | Y̆̈ | ||
Y͙̊ | Y͙̊ | ẙ͙ | ẙ͙ |
y̩̻ | y̩̻ |
Cascading to the point of abuse leads to Zalgo text.