LATIN SMALL LETTER O WITH MACRON AND GRAVE·U+1E51

Character Information

Code Point
U+1E51
HEX
1E51
Unicode Plane
Basic Multilingual Plane
Category
Lowercase Letter

Character Representations

Click elements to copy
EncodingHexBinary
UTF8
E1 B9 91
11100001 10111001 10010001
UTF16 (big Endian)
1E 51
00011110 01010001
UTF16 (little Endian)
51 1E
01010001 00011110
UTF32 (big Endian)
00 00 1E 51
00000000 00000000 00011110 01010001
UTF32 (little Endian)
51 1E 00 00
01010001 00011110 00000000 00000000
HTML Entity
ṑ
URI Encoded
%E1%B9%91

Description

U+1E51 is a specialized Unicode character that represents the Latin small letter O with both macron and grave accents (Ō). This character is used in digital text to represent an accented vowel sound, typically found in certain dialects of French and other Romance languages. The combination of a macron and grave accent indicates a long, open-mid back rounded vowel sound, which differs from the standard O or Õ (LATIN SMALL LETTER O WITH MACRON) and Ō (LATIN SMALL LETTER O WITH GRAVE AND MACRON). In digital typography, U+1E51 ensures accurate representation of this specific accented vowel sound in various text encodings. While it may not be commonly used, the character serves an essential role for linguists and those working with lesser-known dialects or historical languages where such distinct phonetic nuances are crucial.

How to type the symbol on Windows

Hold Alt and type 7761 on the numpad. Or use Character Map.

  1. Step 1: Determine the UTF-8 encoding bit layout

    The character has the Unicode code point U+1E51. In UTF-8, it is encoded using 3 bytes because its codepoint is in the range of 0x0800 to 0xffff.

    Therefore we know that the UTF-8 encoding will be done over 16 bits within the final 24 bits and that it will have the format: 1110xxxx 10xxxxxx 10xxxxxx
    Where the x are the payload bits.

    UTF-8 Encoding bit layout by codepoint range
    Codepoint RangeBytesBit patternPayload length
    U+0000 - U+007F10xxxxxxx7 bits
    U+0080 - U+07FF2110xxxxx 10xxxxxx11 bits
    U+0800 - U+FFFF31110xxxx 10xxxxxx 10xxxxxx16 bits
    U+10000 - U+10FFFF411110xxx 10xxxxxx 10xxxxxx 10xxxxxx21 bits
  2. Step 2: Obtain the payload bits:

    Convert the hexadecimal code point U+1E51 to binary: 00011110 01010001. Those are the payload bits.

  3. Step 3: Fill in the bits to match the bit pattern:

    Obtain the final bytes by arranging the paylod bits to match the bit layout:
    11100001 10111001 10010001