Updated 7 June, 2023
This page brings together basic information about the Garay script and its use for the Wolof language. It aims to provide a brief, descriptive summary of the modern, printed orthography and typographic features, and to advise how to write Wolof using Unicode.
Garay is scheduled for inclusion into the Unicode repertoire in version 16. This page uses the code points that are expected to be used for version 16. Because Garay is not yet encoded in Unicode, some links may not produce results.
The Garay font used for this page was not really designed for use with running text. It doesn't place diacritics above base characters, and there is an overlarge gap before šµ, but gaps are missing around several other letters when side by side. Allowances need to be made for the fact that this is a very early implementation when looking at examples.
šµšµšµšµ²šµ šµ°šµšµšµŗšµšµ²šµ šµ¼šµ©šµš¶šµŖ šµŗšµš¶šµšµšµ¼ šµµšµšµšµŗšµŖšµšµŲ šµ¼šµšµ² šµ±šµ šµ½šµšµ·š¶šµ©šµšµ» šµ±šµ šµ¶šµšµ¹ šµ°šµšµ³ šµ¶šµšµæšµÆ. šµ”šµ©šµ³šµŖ š¶šµ šµ°šµšµ½ šµ³šµšµ šµ»šµšµ² šµŗšµšµšµ¹šµŖ šµ½šµ© šµ°šµšµš¶šµŗ š¶šµ šµ°šµšµ³ šµ»šµ©šµøšµšµ²Ų šµ½šµ© šµ·šµšµ¾ š¶šµšµ šµµšµšµš¶šµøšµš¶šµ½šµ© šµšµ³ š¶šµšµ·šµøšµ©šµš¶Ų šµ½šµ© šµ½šµ©šµ¹ šµ³šµ šµ±šµ šµ·šµšµšµøšµŖšµšµ šµ“šµ©šµšµ³šµŖ.
šµšµšµ š¶šµ© šµ²šµšµš¶ š¶šµšµ šµ·šµšµ» š¶šµ© šµ°šµšµ² š¶šµ šµ°šµšµ¼ šµ¶šµšµæšµÆ šµ°šµšµ³ šµ°šµšµ¼ šµ½šµšµ·š¶šµ©šµšµ» šµ¼šµšµ šµ¶šµšµ¶šµšµ šµ±šµ šµ“šµšµ½šµšµšµ»šµšµø šµ“šµšµ šµ½šµ© šµšµ²šµšµšµø šµ»šµ©šµšµ¼ šµ°šµšµ³ šµ¶šµ©šµš¶Ų šµ¾šµšµ·šµšµ½šµš¶šµ šµ±šµ šµ·šµšµšµøšµŖšµšµ šµ»šµ©šµšµ½Ų šµ²šµ©šµøšµŲ šµ°šµšµ·šµ¾šµŲ šµøšµšµšµ³šµŖŲ šµŗšµšµš¶šµ©šµŲ š¶šµ©šµšµ½šµ© šµ±šµ šµ·šµšµšµøšµŖšµšµ š¶šµšµøšµšµ½šµšµ¹Ų šµ»šµšµøšµšµšµ½Ų šµ¾šµ©šµšµšµ· šµ“šµ©šµšµ šµ°šµšµ¶šµ³šµš¶ šµ·šµšµ šµ²šµšµš¶ šµ½šµ šµ¶šµšµ¶šµšµŲ šµ±šµ šµ°šµšµ½ šµ·šµšµšµøšµŖšµšµ šµµšµšµšµŗšµŖšµšµ šµ°šµšµøšµšµø šµ°šµšµ³ šµøšµšµ šµ²šµšµ šµ²šµšµš¶ šµ½šµ šµŗšµšµš¶. šµšµšµ» šµ¶šµ šµŗšµšµøšµŖšµ šµ°šµšµ²šµšµšµø šµ»šµ©šµšµµ šµ°šµšµ³ šµ¶šµ©šµš¶ šµ±šµ š¶šµšµøšµšµ½šµšµ¹Ų šµ¼šµšµš¶Ų šµ“šµ©šµšµ šµŗšµšµ»šµšµøšµš¶ šµ·šµšµ šµ°šµšµµšµšµ šµ±šµ šµ“šµšµ½šµšµ² šµ¾šµ©šµšµšµ· šµ“šµ©šµšµ šµ¶šµšµšµš¶ šµ¶šµšµ šµ»šµšµ²š¶šµ© š¶šµšµ½ šµ³šµ š¶šµ šµøšµ šµ±šµšµ¶šµšµš¶šµšµŲ šµ¾šµ©šµšµ· šµ²šµšµšµ²šµšµ šµ“šµ©šµšµ šµ¶šµšµšµš¶ šµ¶šµšµšµ¶šµšµ šµ²šµšµšµ² š¶šµ šµ“šµš¶šµŖšµšµ² šµ·šµšµøšµŖšµ šµŗšµ©šµšµ½Ų šµ“šµ©šµšµ šµæšµšµ šµ¼šµšµ²šµšµøšµ© šµ¼šµ©š¶šµ¹šµšµ-šµ¼šµšµš¶šµ¹šµšµšµ².
The Wolof language is spoken by around 40% of Senegalese, and others in Mauritania and The Gambia. There are around 5.5 million native speakers in Senegal, and the total number of speakers is a little over 12 million.
The Garay script was created by Assane Faye in Senegal and published in January 1961. The official script in Senegal for Wolof is Latin, although the Wolofal script (an Arabic-based script written in the ajami style) is also used. The user community for Garay is small, including womenās groups and adult literacy for Mandinka as well as for Wolof. The script has been taught informally for more than fifty years since its invention. Faye has written manuscripts including textbooks, folktales, and maps; there also exists a Quran with interlinear translations into Wolof using the Garay script.e
šµ¹šµšµ¾šµšµ¼ É”araj the Garay script
Faye designed Garay to be easy to learn, familiar to anyone who had learned some of the Arabic script, but gave it a simpler design.e
The Garay script is an alphabet. This means that it is largely phonetic in nature, where each letter represents a basic sound. See the table to the right for a brief overview of features for the modern Wolof orthography using the Latin script.
Garay text runs right-to-left in horizontal lines.
Words are separated by spaces.
The orthography is not fully bicameral. Consonant letters, including the vowel support, have upper- and lowercase forms, but characters used to write vowels do not have casing forms.
Garay uses 19 consonant letters to write 21 basic consonant sounds ā the difference is made up by one digraph and one diacritic. All this duplicated in upper- and lowercase. One more digraph and 3 letters with diacritics add 4 extra consonant sounds for use with other languages. ⯠consonants
Four additional pre-nasalised stop sounds are indicated using an attached diacritic, which also doubles as a vowel. ⯠prenasalisation
Consonant gemination is common and phonetically distinctive, and is written using a dedicated combining mark. Another combining mark indicates nasalisation. ⯠gemination
Garay uses 5 vowel code points, including 1 combining mark, to write 9 vowel sounds. The shortfall is made up by combining vowel code points into digraphs. Long vowels are indicated by following the vowel character(s) with 10D4E. ⯠vowels
Because the sign for the vowel É is identical to the sign that indicates prenasalisation, 10D69 is used in both cases. When the prenasalised stops are followed by the sound É they use 10D4D, rather than the normal combining mark.
Words that begin with a vowel sound precede the vowel characters with a bicameral 'vowel carrier' (10D70), much like the alef in Arabic.
Languages in the Atlantic group of the Niger-Congo family, of which Wolof is one, are unusual in that they are not tonal.
A set of Garay digits is used, as well as a few Garay mathematical symbols.
Line-breaking and justification are primarily based on inter-word spaces, but Garay uses a special character as a hyphen when a word is broken by a line break.
The following represents the general repertoire of the Wolof languages and dialects.
Click on the sounds to reveal locations in this document where they are mentioned.
Phones in a lighter colour are non-native or allophones. Source Wikipedia.
Long vowel sounds are distinctive.
labial | alveolar | palatal | velar | glottal | |
---|---|---|---|---|---|
stop | p b | t d | c É | k É” | Ź |
pre-nasalised | įµb | āæd | į¶®É | įµÉ” | |
fricative | f | s | x | ||
nasal | m | n | ɲ | Š| |
approximant | w | l | j | ||
trill/flap | r | ||||
![]() |
![]() |
![]() |
![]() |
![]() |
Vowels in suffixes tend to be altered due to vowel harmony, based on the advanced tongue retraction (ATR) of the word-initial vowel. There are some exceptions.
+ATR vowels are: i u é ó ë.
-ATR vowels are: e o a.
Authors differ in whether they reflect the vowel harmony in writing.
There is no tone in Wolof.
Gemination is common and occurs with all consonants except q, Ź, f, s, and x.
Gemination and consonant clusters do not occur in word-initial position, but can occur medially and in final position, where they may be followed by a faint epenthetic schwa.
p, d, c, and k only occur formally in word-initial position, unless geminated (which is common), or following a nasal. However, word final b, j, and g are typically devoiced and become allophones of those consonants.
Simple: | ||
---|---|---|
Standalone: | ||
For additional details see vowel_mappings.
Garay uses 5 vowel characters, one of which is a combining mark, to write 9 vowel sounds. Five of the vowel sounds are written using a combination of characters. None of these characters are bicameral.
Another (bicameral) symbol is used to write standalone vowels (see standalone), and one more to indicate long vowels (see vlength).
The combinations of characters used can be seen in vowel_mappings, but we also list them here for quick reference.
The iʰ is a so-called 'strong' articulation of i, which is not reflected in the Latin orthography and is dialectal. In the past it was, incorrectly, romanised as ü.rsr,4
The vowel É is usually written using the combining mark, [U+10D69 GARAY VOWEL SIGN E].
š¶šµ©š¶šµ³šµšµ
However, the same mark is also used to indicate prenasalisation of 4 consonants.
Therefore, to avoid ambiguity, [U+10D4D GARAY VOWEL SIGN EE] is used, instead, for those consonants. The following list shows the 4 consonants followed by the sound É.
Prenasalised consonants followed by É are followed by both characters.
The same applies to e, except that the default is 10D69 10D4D, and after prenasalised consonants this becomes 10D4D 10D4D. (In other words, it is the same as É except that it adds an extra 'squiggle' in each case.)
In addition to consonants that may be prenasalised, this alternative approach applies to all letters which have a diacritic above their standard form.rsr,14
Consonant+e | Consonant+É | Consonant |
---|---|---|
šµ¶šµ«šµšµ | šµ¶šµ«šµ | šµ¶šµ« |
šµ¶šµ¬šµšµ | šµ¶šµ¬šµ | šµ¶šµ¬ |
šµ¹šµ©šµšµ | šµ¹šµ©šµ | šµ¹šµ© |
Finally, q is written in an idiosyncratic way.rsr,14
Consonant+e | Consonant+É | Consonant |
---|---|---|
šµ»šµ°šµšµ©šµ | šµ»šµ°šµšµ© | šµ»šµ° |
In older versions of the script the comma-like glyph appeared over the squiggle, rather than over the consonant.
For words that begin with a standalone vowel in the Garay orthography the vowel letter needs to be preceded by one of 10D70 or 10D50. This is analogous to the letter alef in Arabic.
šµ°šµšµ³šµšµ¾šµ
There are 2 special cases. Word-initial É, normally rendered using just a diacritic, is 10D70 10D4D 10D69. And word-initial e is 10D70 10D4D 10D69 10D4Drsr,5.
Standalone vowels don't really occur in Wolof in word-medial position. Usually an epenthetic consonant is slipped in before the vowel, like the j between the i and the a at the end of the word Australiarsr,7.
šµšµšµ¶šµ½šµ©šµ¾šµ©šµøšµšµ¼šµ
Long vowel sounds are written by following the vowel character(s) with [U+10D4E GARAY VOWEL LENGTH MARK].
šµ°šµšµšµ½šµ©šµšµ³šµšµ½
Long and short vowel sounds are phonemically distinctive.
tbd
Wolof is not a tonal language.
This section maps Wolof vowel sounds to common graphemes in the Latin orthography. Uppercase is not shown. Click on a grapheme to find other mentions on this page (links appear at the bottom of the page). Click on the character name to see examples and for detailed descriptions of the character(s) shown.
Uppercase only affects the vowel-carrier for word-initial standalone positions; that form is not shown in the table, but it is šµ. Long word-initial forms are not shown, but they are produced in the same way as for standard vowels.
šµ
10D70 10D4B
šµšµ
šµšµ
10D70 10D4D 10D4C
šµšµšµ
10D69 10D4D after most consonants
10D4D 10D4D after a consonant that can be prenasalised
10D70 10D4D 10D69 10D4D
10D4D 10D4D 10D4E
10D4C 10D4D
10D70 10D4C 10D4D
10D4C 10D4D 10D4E
10D4D 10D4A
10D70 10D4D 10D4A
10D4D 10D4A 10D4E
10D69 after most consonants.
10D4D after a consonant that can be prenasalised.
10D70 10D4D 10D69
10D69 10D4E above most consonants.
10D4D 10D4E after a consonant that can be prenasalised.
10D4C
10D70 10D4C
10D4C 10D4E
10D4A
10D70 10D4A
10D4A 10D4E
All: | ||
---|---|---|
For additional details see consonant_mappings.
As can be seen above, one sound is represented by a digraph, and another by adding a combining mark.
Pre-nasalised sounds are marked using the diacritic 10D69, and frequently occur word-initially as well as within a word.
šµ“šµ©šµšµšµ²
šµ²šµšµšµ¹šµ©šµ
šµŗšµ©šµšµ²
Garay adds diacritics to regular consonant letters or forms digraphs in order to represent non-native sounds.
The Garay orthography has šµ to signal that no vowel appears after a consonant. It is a spacing letter. According to Rovenchak, Faye, and Riley, it is now obsolete.rsr,10
tbd
tbd
tbd
Consonant gemination is common and is phonemically distinctive in Wolof. Gemination is written by adding [U+10D6A GARAY CONSONANT GEMINATION MARK] over the geminated consonant.
šµ“šµšµšµ½
šµ“šµšµšµ½šµŖ
The gemination mark code point should be typed and stored after [U+10D69 GARAY VOWEL SIGN E] if that character is being used on the same base.
šµ²šµ©šµæšµ©šµŖšµš¶
The letters in the list above are now obsoleted, but separate code points are available in Unicode for digitisation of legacy text.
This section maps Wolof consonant sounds to common graphemes in the Latin orthography. Uppercase is not shown. Click on a grapheme to find other mentions on this page (links appear at the bottom of the page). Click on the character name to see examples and for detailed descriptions of the character(s) shown.
Sounds listed as 'infrequent' are allophones, or sounds used for foreign words, etc.
10D82
10D62
10D74
10D54
10D7D
10D5D
10D7A
10D5A
10D73
10D53
10D79
10D59
10D7B 10D70
10D5B 10D70
10D70 before word-initial vowels.
10D50
10D74 10D69
10D54 10D69
10D7A 10D69
10D5A 10D69
10D75 10D69
10D55 10D69
10D79 10D69
10D59 10D69
10D71
10D51
10D75
10D55
10D80
10D60
10D70 10D77
10D76
10D56
10D76 10D6C
10D70 10D76
10D76 10D69
10D7B
10D5B
10D72
10D52
10D81
10D61
10D7F
10D5F
10D79 10D6B
10D59 10D6B
10D77
10D57
10D7E
10D5E
10D78
10D58
10D7C
10D5C
Garay has its own set of digits. A number with multiple digits is read left-to-right within the right-to-left flow of the text.
In expressions and ranges the items flow from right to left.
Numeric values are assigned to various Garay letters as shown below.rsr,3
Observation: Need more information about how and when these are used.
Garay text is written horizontally and right-to-left in the main but, as in most right-to-left scripts, numbers and embedded text in other scripts are written left-to-right (producing 'bidirectional' text).
The Unicode Bidirectional Algorithm automatically takes care of the ordering for all the text in fig_bidi, as long as the 'base direction' is set to RTL. In HTML this can be set using the dir
attribute, or in plain text using formatting controls.
If the base direction is not set appropriately, the directional runs will be ordered incorrectly , making it very difficult to get the meaning.
Show default bidi_class
properties for characters in the Garay script.
For other aspects of dealing with right-to-left writing systems see the following sections:
For more information about how directionality and base direction work, see Unicode Bidirectional Algorithm basics. For information about plain text formatting characters see How to use Unicode controls for bidi text. And for working with markup in HTML, see Creating HTML Pages in Arabic, Hebrew and Other Right-to-left Scripts.
For authoring HTML pages, one of the most important things to remember is to use <html dir="rtl" ⦠>
at the top of the page. Also, use markup to manage direction, and do not use CSS styling.
Unicode provides a set of 10 formatting characters that can be used to control the direction of text when displayed. These characters have no visual form in the rendered text, however text editing applications may have a way to show their location.
[U+202B RIGHT-TO-LEFT EMBEDDING] (RLE),
[U+202A LEFT-TO-RIGHT EMBEDDING] (LRE), and
[U+202C POP DIRECTIONAL FORMATTING] (PDF) are in widespread use to set the base direction of a range of characters. RLE/LRE comes at the start, and PDF at the end of a range of characters for which the base direction is to be set.
In Unicode 6.1, the Unicode Standard added a set of characters which do the same thing but also isolate the content from surrounding characters, in order to avoid spillover effects. They are [U+2067 RIGHT-TO-LEFT ISOLATE] (RLI),
[U+2066 LEFT-TO-RIGHT ISOLATE] (LRI), and
[U+2069 POP DIRECTIONAL ISOLATE] (PDI). The Unicode Standard recommends that these be used instead.
There is also [U+2068 FIRST STRONG ISOLATE] (FSI), used initially to set the base direction according to the first recognised strongly-directional character.
[U+061C ARABIC LETTER MARK] (ALM) is used to produce correct sequencing of numeric data. Follow the link and see expressions for details.
[U+200F RIGHT-TO-LEFT MARK] (RLM) and
[U+200E LEFT-TO-RIGHT MARK] (LRM) are invisible characters with strong directional properties that are also sometimes used to produce the correct ordering of text.
For more information about how to use these formatting characters see How to use Unicode controls for bidi text. Note, however, that when writing HTML you should generally use markup rather than these control codes. For information about that, see Creating HTML Pages in Arabic, Hebrew and Other Right-to-left Scripts.
This section brings together information about the following topics: writing styles; cursive text; context-based shaping; context-based positioning; font styles; case & other character transforms.
You can experiment with examples using the Garay character app.
Unlike Arabic, Garay letters are not joined.
Handwritten Garay typically features a swash at the end of a word which bends below the last letter, and may extend the whole length of the word. It purely ornamental and has no semantic significance.
Diacritic placement tends to vary, based on the shape of the base consonant to which it is attached. See fig_gpos for an example.
tbd
The consonant letters used for Garay are bicameral, and applications may need to provide transforms to allow the user to switch between cases. Capital letters are used at the beginning of sentences or titles, and for proper nouns.
Characters used to write vowel sounds (apart from the vowel carrier, 10D50 and 10D70) are not cased.
In normal Wolof text, grapheme clusters correspond to individual characters. Where combining marks appear, the combination of base and combining mark still fits within the definition of a grapheme cluster.
Base (Mark?)
Each letter is a grapheme cluster, as is each combination of a base letter with combining marks.
Click on the text version of this word to see more detail about the composition.
![]() | šµ°šµšµ³šµšµ¾šµ |
![]() | šµµšµšµ³šµ©šµŖšµ¾ |
Words are separated by spaces.
Basic phrase and section boundaries in Wolof use a mixture of ASCII and Arabic punctuation.
phrase |
Ų Ų : [U+003A COLON] |
---|---|
sentence | . [U+002E FULL STOP] Ų |
Apparently, both question marks are used.rsr,7
Wolof commonly uses ASCII parentheses to insert parenthetical information into text.
start | end | |
---|---|---|
standard |
The words 'left' and 'right' in the Unicode names for parentheses, brackets, and other paired characters should be ignored. LEFT should be read as if it said START, and RIGHT as END. The direction in which the glyphs point will be automatically determined according to the base direction of the text.
The number of characters that are mirrored in this way is around 550, most of which are mathematical symbols. Some are single characters, rather than pairs. The following are some of the more common ones.
Wolof texts may use quotation marks around quotations. Of course, due to keyboard design, quotations may also be surrounded by ASCII double and single quote marks.
start | end | |
---|---|---|
initial | ” [U+201D RIGHT DOUBLE QUOTATION MARK] | |
nested | ’ [U+2019 RIGHT SINGLE QUOTATION MARK] |
Unlike the bracketing quotation marks, these characters are not mirrored during display. This means that LEFT means use on the left, and RIGHT means use on the right.
tbd
tbd
Garay uses ⦠to indicate ellipsis.
Garay uses 10D6F to double the word it follows.
šµ¼šµšµšµ³šµŖšµšµÆ
tbd
tbd
tbd
Lines are generally broken between words.e,5
Garay uses 10D6E at the end of a line to indicate that a word was broken.rsr,7
When a line break occurs in the middle of an embedded left-to-right sequence, the items in that sequence need to be rearranged visually so that it isn't necessary to read lines from top to bottom.
latin-line-breaks shows how two Latin words are apparently reordered in the flow of text to accommodate this rule. This is an Arabic text, but the same principles apply for Garay. Of course, the rearragement is only that of the visual glyphs: nothing affects the order of the characters in memory.
The principal line-break opportunities are inter-word spaces.
tbd
tbd
Wolof uses the 'alphabetic' baseline.
Wolof uses ASCII digits as counters.
tbd
This section is for any features that are specific to Wolof and that relate to the following topics: general page layout & progression; grids & tables; notes, footnotes, etc; forms & user interaction; page numbering, running headers, etc.
Garay books, magazines, etc., are bound on the right-hand side, and pages progress from right to left.
Columns are vertical but run right-to-left across the page.
tbd
tbd
tbd
tbd