Main Page.

Diacritical markings.

Unicode allows adding diacritical markings to ordinary characters, primarily to support the letters 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 centered over or under the primary character's glyph, but sometimes it 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" (&#x59;), "y" (&#x79;), and "o" (&#x6F;) characters are 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.

In Unicode documentation, it is customary to use a dotted circle ◌ (&#x25CC;) as a foundation when giving examples of combining marks. However, this circle does not have a descender, and it may not rise to the full height of an ascender. The characters "Y" and "y" were chosen because they do satisfy these needs.

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
Y&#x308; Ÿ &#x178;
&Yuml;
y&#x308; ÿ &#xFF;
&yuml;

All the official Unicode names of combining characters in the tables below begin with the word "combining", so it 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 ooY&#x307;y&#x307;oo ooẎẏoo ooỴỵoo ooY&#x323;y&#x323;oo c. dot below
c. diaeresis ooY&#x308;y&#x308;oo ooŸÿoo ooY̤y̤oo ooY&#x324;y&#x324;oo c. diaeresis below
c. three dots above ooY&#x20DB;y&#x20DB;oo ooY⃛y⃛oo ooY⃨y⃨oo ooY&#x20E8;y&#x20E8;oo c. triple underdot
c. left arrow above ooY&#x20D6;y&#x20D6;oo ooY⃖y⃖oo ooY⃮y⃮oo ooY&#x20EE;y&#x20EE;oo c. left arrow below
c. right arrow above ooY&#x20D7;y&#x20D7;oo ooY⃗y⃗oo ooY⃯y⃯oo ooY&#x20EF;y&#x20EF;oo c. right arrow below
c. left harpoon above ooY&#x20D0;y&#x20D0;oo ooY⃐y⃐oo ooY⃭y⃭oo ooY&#x20ED;y&#x20ED;oo c. leftwards harpoon with barb downwards
c. right harpoon above ooY&#x20D1;y&#x20D1;oo ooY⃑y⃑oo ooY⃬y⃬oo ooY&#x20EC;y&#x20EC;oo c. rightwards harpoon with barb downwards
c. vertical line above ooY&#x30D;y&#x30D;oo ooY̍y̍oo ooY̩y̩oo ooY&#x329;y&#x329;oo c. vertical line below
c. double vertical line above ooY&#x30E;y&#x30E;oo ooY̎y̎oo ooY͈y͈oo ooY&#x348;y&#x348;oo c. double vertical line below
c. caron ooY&#x30C;y&#x30C;oo ooY̌y̌oo ooY̬y̬oo ooY&#x32C;y&#x32C;oo c. caron below
c. circumflex accent ooY&#x302;y&#x302;oo ooŶŷoo ooY̭y̭oo ooY&#x32D;y&#x32D;oo c. circumflex accent below
c. breve ooY&#x306;y&#x306;oo ooY̆y̆oo ooY̮y̮oo ooY&#x32E;y&#x32E;oo c. breve below
c. inverted breve ooY&#x311;y&#x311;oo ooY̑y̑oo ooY̯y̯oo ooY&#x32F;y&#x32F;oo c. inverted breve below
c. grave accent ooY&#x300;y&#x300;oo ooỲỳoo ooY̖y̖oo ooY&#x316;y&#x316;oo c. grave accent below
c. acute accent ooY&#x301;y&#x301;oo ooÝýoo ooY̗y̗oo ooY&#x317;y&#x317;oo c. acute accent below
c. x above ooY&#x33D;y&#x33D;oo ooY̽y̽oo ooY͓y͓oo ooY&#x353;y&#x353;oo c. x below
c. ring above ooY&#x30A;y&#x30A;oo ooY̊ẙoo ooY̥y̥oo ooY&#x325;y&#x325;oo c. ring below
c. tilde ooY&#x303;y&#x303;oo ooỸỹoo ooY̰y̰oo ooY&#x330;y&#x330;oo c. tilde below
c. macron ooY&#x304;y&#x304;oo ooȲȳoo ooY̱y̱oo ooY&#x331;y&#x331;oo c. macron below
c. bridge above ooY&#x346;y&#x346;oo ooY͆y͆oo ooY̪y̪oo ooY&#x32A;y&#x32A;oo c. bridge below
c. plus sign above ooY&#x1AC8;y&#x1AC8;oo ooY᫈y᫈oo ooY̟y̟oo ooY&#x31F;y&#x31F;oo c. plus sign below
c. double plus sign above ooY&#x1AC9;y&#x1AC9;oo ooY᫉y᫉oo ooY᫊y᫊oo ooY&#x1ACA;y&#x1ACA;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&#x34C;y&#x34C;oo ooY͌y͌oo
c. four dots above ooY&#x20DC;y&#x20DC;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&#x318;y&#x318;oo ooY̘y̘oo ooY̙y̙oo ooY&#x319;y&#x319;oo c. right tack below
c. up tack below ooY&#x31D;y&#x31D;oo ooY̝y̝oo ooY̞y̞oo ooY&#x31E;y&#x31E;oo c. down tack below
c. left arrowhead below ooY&#x354;y&#x354;oo ooY͔y͔oo ooY͕y͕oo ooY&#x355;y&#x355;oo c. right arrowhead below
c. equals sign below ooY&#x347;y&#x347;oo ooY͇y͇oo
c. asterisk below ooY&#x359;y&#x359;oo ooY͙y͙oo
c. inverted bridge below ooY&#x33A;y&#x33A;oo ooY̺y̺oo
c. square below ooY&#x33B;y&#x33B;oo ooY̻y̻oo
c. minus sign below ooY&#x320;y&#x320;oo ooY̠y̠oo
c. left right arrow below ooY&#x34D;y&#x34D;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&#x337;y&#x337;oo ooY̷y̷oo ooY̸y̸oo ooY&#x338;y&#x338;oo c. long solidus overlay
c. short stroke overlay ooY&#x335;y&#x335;oo ooY̵y̵oo
c. enclosing circle backslash ooY&#x20E0;y&#x20E0;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&#x305;Y&#x305;Y&#x305;y&#x305;y&#x305;y&#x305;oo ooY̅Y̅Y̅y̅y̅y̅oo
c. low line ooY&#x332;Y&#x332;Y&#x332;y&#x332;y&#x332;y&#x332;oo ooY̲Y̲Y̲y̲y̲y̲oo
c. long stroke overlay ooY&#x336;Y&#x336;Y&#x336;y&#x336;y&#x336;y&#x336;oo ooY̶Y̶Y̶y̶y̶y̶oo
c. double overline ooY&#x33F;Y&#x33F;Y&#x33F;y&#x33F;y&#x33F;y&#x33F;oo ooY̿Y̿Y̿y̿y̿y̿oo
c. double low line ooY&#x333;Y&#x333;Y&#x333;y&#x333;y&#x333;y&#x333;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&#x308;&#x306; Ÿ̆
Y&#x306;&#x308; Y̆̈
Y&#x30A;&#x359; Y͙̊ ẙ͙ y&#x30A;&#x359;
y̩̻ y&#x329;&#x33B;

Cascading to the point of abuse leads to Zalgo text.