Updated 4 March, 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.
|stop||p b||t d||c ɟ||k ɡ||ʔ|
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.
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_vowels), and one more to indicate long vowels (see vowellength).
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
Finally, q is written in an idiosyncratic way.rsr,14
In older versions of the script the comma-like glyph appeared over the squiggle, rather than over the consonant.
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.
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.
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
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 10D4D 10D4C
10D69 10D4D after most consonants
10D4D 10D4D after a consonant that can be prenasalised
10D70 10D4D 10D69 10D4D
10D4D 10D4D 10D4E
10D70 10D4C 10D4D
10D4C 10D4D 10D4E
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.
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.
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.
10D70 before word-initial vowels.
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.
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.
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.
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.
: [U+003A COLON]
. [U+002E FULL STOP]
Apparently, both question marks are used.rsr,7
Wolof commonly uses ASCII parentheses to insert parenthetical information into text.
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.
|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.
Garay uses … to indicate ellipsis.
Garay uses 10D6F to double the word it follows.
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.
Wolof uses the 'alphabetic' baseline.
Wolof uses ASCII digits as counters.
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.