Updated 15 December, 2022
This page brings together basic information about the Bengali script and its use for the Bangla language. It aims to provide a brief, descriptive summary of the modern, printed orthography and typographic features, and to advise how to write Bengali using Unicode.
ধারা ১ সমস্ত মানুষ স্বাধীনভাবে সমান মর্যাদা এবং অধিকার নিয়ে জন্মগ্রহণ করে। তাঁদের বিবেক এবং বুদ্ধি আছে; সুতরাং সকলেরই একে অপরের প্রতি ভ্রাতৃত্বসুলভ মনোভাব নিয়ে আচরণ করা উচিত।
ধারা ২ এ ঘোষণায় উল্লেখিত স্বাধীনতা এবং অধিকারসমূহে গোত্র, ধর্ম, বর্ণ, শিক্ষা, ভাষা, রাজনৈতিক বা অন্যবিধ মতামত, জাতীয় বা সামাজিক উত্পত্তি, জন্ম, সম্পত্তি বা অন্য কোন মর্যাদা নির্বিশেষে প্রত্যেকেরই সমান অধিকার থাকবে। কোন দেশ বা ভূখণ্ডের রাজনৈতিক, সীমানাগত বা আন্তর্জাতিক মর্যাদার ভিত্তিতে তার কোন অধিবাসীর প্রতি কোনরূপ বৈষম্য করা হবেনা; সে দেশ বা ভূখণ্ড স্বাধীনই হোক, হোক অছিভূক্ত, অস্বায়ত্বশাসিত কিংবা সার্বভৌমত্বের অন্য কোন সীমাবদ্ধতায় বিরাজমান।
The Bengali or Bangla script is used by over 180 million people in Bangladesh and India to write the Bengali language, and a number of other Indian languages including Sylheti, Meithei, Bishnupriya Manipuri, and, with one or two modifications, Assamese. It has historically been used to write Sanskrit within Bengal. It ranks 5th in the world for writing system usage.
বাংলা বর্ণমালা bɑŋ̽lɑ br͓n̈mɑlɑ (bangla bôrnômala) Bengali/Bangla alphabet বাংলা লিপি bɑŋ̽lɑ lipi (bangla lipi) Bangla script
The script is descended from Brahmi, but there is some dispute about its derivation, since it shares shapes with both Dravidian and Aryan scripts.
Sources: Scriptsource, Wikipedia
The Bengali script is an abugida. Consonants carry an inherent vowel which can be modified by appending vowel signs to the consonant. See the table to the right for a brief overview of features for Bangla.
The orthographic letters of the Bengali script are derived from Sanskrit, and in some cases don't quite fit the needs of modern Bangla (eg. lack of simple vowels for the sounds ɛ and æ, letters for only 2 of many diphthongs, long and short letters where pronunciation no longer distinguishes those sounds, etc.)
Bengali runs left to right in horizontal lines.
Words are separated by spaces.
The 33 consonant letters used for Bangla are supplemented by repertoire extensions for 3 more sounds by applying the nukta diacritic to characters. ❯ consonants
Consonant clusters at any location are normally indicated using a virama (hasant) between consonants. This results in a large number of conjunct forms expressed using stacked consonants, conjoined consonants, and ligated glyphs. Conjuncts often have different pronunciations than might be expected from the letters involved, and in particular gemination is very common. Occasionally, a visible virama is used. However, clusters are often not marked at all. ❯ clusters
As part of a cluster, RA has special forms, for both cluster-initial and post-base positions.
Word-final consonant sounds may be represented by a special letter, ৎ, or by 2 dedicated combining marks (anusvara & visarga), but are generally ordinary consonants that are not marked by a virama. ❯ finals
Vowel harmony plays a significant role in the pronunciation of vowel-related code points. ❯ vowelharmonydesc
The Bangla orthography has 2 inherent vowels, and represents other vowels using 9 vowel signs, including 3 pre-base and 2 circumgraph vowel signs. All vowel signs are combining marks, and are stored after the base character. Other vowels are represented by adaptations of the y consonant. The final sound of numerous diphthongs is represented using independent vowels. ❯ vowels
There are 10 independent vowels, one for each vowel sound, including the inherent vowel, and these are used to write all standalone vowel sounds. ❯ standalone
There are no composite vowels, in principle, however the 2 circumgraphs are decomposed into 2 parts each.
Vowels may be nasalised, using the candrabindu diacritic. ❯ nasalisation
Bengali has native digit shapes. ❯ numbers
The effective unit of the Bengali writing systems is the orthographic syllable.
An orthographic syllable can be defined in one of the code point sequences described below. Lowercase letters represent combining characters. Some vowel signs may be displayed at the start of the sequence, although the code points representing them always appear after the base consonant
[C[n]h] [C[n]h] C[n] [h | v (n)] [f]
C
Cn
h
v
n
f
The core of a consonant-based syllable is a base consonant character, which may or may not additionally represent an inherent vowel if it stands alone.
There is no inherent vowel if it is followed by a vowel sign, eg. কী kī কি ki কো ko or hasant, eg. ক্ k͓ At the end of a word, there may or may not be an inherent vowel, even if there is no hasant.
Any base consonant may be a combination of consonant code point plus nukta.
The base consonant can be preceded by up to two consonant+hasant pairs (where the consonant may also be a combination of consonant+nukta), but only if those consonants form conjuncts (ie. the hasant is invisible), eg. ক্ক k͓k ম্প m͓p ক্ষ k͓ʃ̇ ন্ত্র n͓t͓r If the preceding consonants carry visible hasant symbols, those are treated as separate orthographic syllables.
Likewise, the variable use of the hasant in Bengali means that a phonetic cluster of consonants can constitute a larger series of orthographic syllables. For example, this word for cymbal has two phonetic syllables, but 3 orthographic since the rt combination is not combined: করতাল
A vowel sign may optionally be followed by a nasalisation diacritic.
Unless the base consonant is followed by a hasant, the syllable may be terminated by a final consonant repesented by khanda ta, anusvara, or visarga.
Native Bengali words do not allow initial consonant clusters, and word-final clusters are rare. However, words borrowed from Sanskrit, English, etc. have introduced many such features.
Many Bengali speakers, however, retain the native phonology, even when using Sanskrit or English borrowings, such as গেরাম gerɑm (CV.CVC) for গ্রাম g͓rɑm village (CCVC), or ইস্কুল ịʃ͓̈kul (VC.CVC) forস্কুল ʃ͓̈kul school.wp,#Consonant_clusters
Most word-final clusters were introduced from English, eg. লিফ্ট lipʰ͓ʈ lift, elevator or ব্যাংক b͓ʲɑŋ̽k bank. In some dialects, a final nasal+stop is written as a cluster, whereas in standard Bengali it would use nasalisation, eg. চান্দ cɑn͓d vs. চাঁদ cɑm̽d moon.wp,#Consonant_clusters
For more information, see Wikipediawp,#Consonant_clusters.
Vowel-based syllables begin with a standalone vowel, which is represented by a single independent vowel or vocalic.
An independent vowel may be followed by an anusvara, visarga or candrabindu (nasalisation), eg. উঃ, আঁ ụh̽, ɑm̽
Click on the sound groups to see where else in the document each of the sounds are referred to.
Phones in a lighter colour are non-native or allophones. Source Wikipedia.
There are a large number of diphthongs in Bangla, and the chart below shows an incomplete set.wp
The pronunciation of a vowel can be affected by the vowel in the following syllable. Radice provides the following table, though this is a simplification and there are many exceptions.
Followed by i or u | Followed by ɔ, o, e or a |
---|---|
o → u | o → ɔ |
ɔ → o | u → o |
e → i | e → æ |
æ → e | i → e |
For example, the verb শোনা ʃonɑ to hear with an i ending becomes ʃuni, দেখা dækʰa to see becomes dekʰi, etc. This sometimes accounts for the pronunciation of the inherent vowel, eg. অতিথি otitʰi guest and অনুবাদ onubad translation start with o rather than ɔ.
pf, pʰ and f are alternative pronunciations for the same phoneme, depending on where the speaker is from, and all are written using ফ [U+09AB BENGALI LETTER PHA],
True retroflex (murdhonno) consonants are not found in Bengali. They are apical postalveolar in Western Dialects. In other dialects, they are fronted to apical alveolar.wp
r occurs word-initially, whereas ɾ occurs medially and finally. Both sounds are written using র [U+09B0 BENGALI LETTER RA].wp
s and ʃ are often merged. z is found mainly in foreign words.wp
In the Bangla spoken in Dhaka, ɾ and ɽ are often indistinct phonemically,wp eg. the following two words can be homophonous: করা কড়া
j and w are pronunciations of য় [U+09AF BENGALI LETTER YA + U+09BC BENGALI SIGN NUKTA] when it appears between certain vowels.
Vowel harmony plays a significant role in the pronunciation of vowel-related code points.
The Bangla orthography has 2 inherent vowels, and represents other vowels using 9 vowel signs, including 3 pre-base and 2 circumgraph vowel signs. All vowel signs are combining marks, and are stored after the base character. Other vowels are represented by adaptations of the y consonant. The final sound of numerous diphthongs is represented using independent vowels.
There are 10 independent vowels, one for each vowel sound, including the inherent vowel, and these are used to write all standalone vowel sounds.
There are no composite vowels, in principle, however the 2 circumgraphs are decomposed into 2 parts each.
Vowels may be nasalised, using the candrabindu diacritic.
The inherent vowel is typically transcribed as a, and pronounced as ɔ or o. (And sometimes halfway between these two, when influenced by surrounding sounds.) Bengalis are not always aware of these sound differences – thinking of this as one sound. So kɔ or ko are written by simply using the consonant letter.
ক kɔ or ko [U+0995 BENGALI LETTER KA]
There is also a vowel sign pronounced o. This can lead to inconsistent spellings, eg. bhalo, good, well, can be spelled either ভালো or ভাল. Verb forms tend to be particularly inconsistent, sometimes basing the rationale on what looks good in a particular context.
The rules for determining the sound of the inherent vowel are not simple. Partly it is a question of vowel harmony. The following two tendencies can help:
In words with inherent vowels in two consecutive syllables, the sound will usually be ɔ..o, not o..ɔ, eg. গরম However, exceptions occur for prefixes, such as prɔ-, ɔ-, and sɔ-.r,8
When pronounced at the end of a word after a conjunct consonant, the inherent vowel is always o,r,8 eg. যুদ্ধ
The pronunciation tends to be o when followed by a one of i, j, u, w either immediately or in the next syllable, but ɔ otherwise.d,400
Non-inherent vowel sounds that follow a consonant are represented using vowel signs, eg.
কী ki [U+0995 BENGALI LETTER KA + U+09C0 BENGALI VOWEL SIGN II]
Bengali vowel signs are nearly all combining characters. One consonant is also used in a special configuration described below. In principle a single character is used per base consonant, but 2 vowel signs decompose to more than one character (see circumgraphs). All vowel signs are typed and stored after the base consonant, whether or not they precede it when displayed. The glyph rendering system takes care of the positioning at display time.
An orthography that uses vowel signs is different from one that uses simple diacritics or letters for vowels, in that the vowel signs are generally rendered relative to an orthographic syllable, rather than just applied to the letter of the immediately preceding consonant (see prebase_vowels for an example).
Almost all of the vowel signs are spacing combining characters, meaning that they consume horizontal space when added to a base consonant.
See also vowelligatures and vocalics.
Bangla uses the following dedicated combining marks for vowels.
Bengali has lost the distinction between short and long vowels in pronunciation, but retains the difference in spelling.
The variation in pronunciation for the vowel signs can often be explained by vowel harmony.
ো [U+09CB BENGALI VOWEL SIGN O] was originally pronounced ʊ, and that pronunciation sometimes persists alongside the o that came from Sanskrit, eg. নোংরা
When it occurs as the last member of a consonant cluster য [U+09AF BENGALI LETTER YA] has a special shape seen in orange in fig_yophala, and is called ʤɔ-pfɔlɑ (য-ফলা). One of its functions is to create the sound æ.
There are exceptions to the previous rule, when the a-kar produces its normal value, eg. ব্যাখ্যা
সন্ধ্যা
The sound æ can also be produced when there is no vowel sign, eg. ব্যথা bætʰɑ pain
According to Radice, vowel harmony may phonetically produce e when the following syllable is i.
Unusually for Indian scripts, y̌ɔ-phɔla can also be used after independent vowels to create the standalone sound æ. The sequences অ্যা [U+0985 BENGALI LETTER A + U+09CD SIGN VIRAMA + U+09AF LETTER YA + U+09BE VOWEL SIGN AA] and এ্যা [U+098F BENGALI LETTER E + U+09CD SIGN VIRAMA + U+09AF LETTER YA + U+09BE VOWEL SIGN AA] are used mostly in transliterations of borrowed words, eg. অ্যাটর্নি এ্যাডভোকেট
See also composite_vowels, which explains how independent vowels are used for the off-glide of diphthongs.
Three vowel signs appear to the left of the base consonant letter or cluster, eg. বাকি
These combining marks are always stored after the base consonant, ie. the codepoints follow the order in which the items are pronounced. The rendering process places the glyph before the base consonant without changing the code points.
The vowel sign is actually placed before the start of an orthographic syllable. In fig_prebase the sequence of glyphs for the orthographic syllable is rendered VCC, whereas the pronunciation is CCV. In conjuncts with 3 consonants, it will still be rendered before all the consonants.
However, if the cluster doesn't form a conjunct, or is split by a visible virama, the cluster becomes two orthographic syllables and the pre-base vowel sign appears after the last consonant with the virama. The sequence of displayed glyphs is now CVC. If the conjunct contains 3 consonants, the displayed order will be CCVC.
Two vowels are represented by circumgraphs, producing glyphs on opposite sides of the consonant onset.
These circumgraph vowel signs are normally a single code point, but in decomposed text the base consonant can be followed by two code points , eg. compare the following equivalent ways of writing ko:
Composite vowels in Bengali may occur when ো [U+09CB BENGALI VOWEL SIGN O] and ৌ [U+09CC BENGALI VOWEL SIGN AU] are decomposed, however this is not common. See encoding for more details.
Although 2 of the vowel signs (and independent vowels) represent diphthongs (oi̯ and ou̯) with a single code point, most of the many diphthongs are represented by a sequence of vowels,wa,#Vowels eg. কেউ
Diphthongs typically represent the off-glide using one of the following:
The following are examples of diphthongs. Hyphens indicate a consonant with inherent vowel. The detailed character notes contain examples of Bangla words containing the diphthongs shown.
Bengali represents syllable-initial vowels using a set of independent vowel letters, eg. ওস্তাদ উট ঔষুধ
Standalone æ appears mostly in loan words. It involves the use of য [U+09AF BENGALI LETTER YA]. See consonant_vowels for more details.
ঽ [U+09BD BENGALI SIGN AVAGRAHA] is a Sanskrit-derived symbol that is used in modern Bengali to lengthen vowel soundsws, eg. কিঽঽঽ? kiiii Whaaatt? শুনঽঽঽ ʃunooo Listennn
ঁ [U+0981 BENGALI SIGN CANDRABINDU] nasalises the vowel in a syllable, eg. হ্যাঁ হাঁপান Nasalised vowels include ĩ ũ ẽ õ ɛ̃ ɔ̃ ã.
The candrabindu should be placed over the top of an independent vowel, but over the base consonant when a vowel sign is attached – not over the vowel sign. In the code point sequence, however, this should occur after any combining vowel sign associated with the same syllable. Note how the base consonant is identified correctly in the second word of fig_candrabindu, even though the candrabindu is 4 code points away. Some fonts do not position the candrabindu correctly.
Bengali uses ্ [U+09CD BENGALI SIGN VIRAMA] (called হসন্ত hʃ̈n͓t hasant hɔsonto in Bengali) to indicate that the inherent vowel is not pronounced after a consonant, eg. the following explicitly represents just the sound k.ক্ k͓
The hasant is rarely seen. It is not used at the end of a word even though the inherent vowel is pronounced at the end of some words and not others, eg. গরম gɔrôm, hot vs. গড়ান gɔɽɑnô, to roll. There is no real way to tell when the inherent vowel is pronounced and when not in this position, except that it is usually pronounced following a word-final consonant cluster.
Within a word also, some clusters don't use the hasant in Bengali, and the reader simply has to know that the inherent vowel is not pronounced, eg. করতাল
This is particularly common at morpheme boundaries, for example in verb forms.
Consonant clusters that are represented by conjunct forms use the hasant between consonants to invoke the shape changes. If the font has the glyphs needed to produce the conjunct the hasant is hidden (see clusters).
Refs: Radice 3, 7-8, 21, 148; Daniels 400
This section maps Bengali vowel sounds to common graphemes in the Bengali orthography, grouped by whether they are vowel signs ( vs ), or standalone ( s ). 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.
Hyphens indicate a consonant with inherent vowel.
ি [U+09BF BENGALI VOWEL SIGN I]
ী [U+09C0 BENGALI VOWEL SIGN II]
ৃ [U+09C3 BENGALI VOWEL SIGN VOCALIC R] as part of the vocalic ri
ু [U+09C1 BENGALI VOWEL SIGN U]
ূ [U+09C2 BENGALI VOWEL SIGN UU]
ো [U+09CB BENGALI VOWEL SIGN O] with vowel harmony before one of i u
ে [U+09C7 BENGALI VOWEL SIGN E], with vowel harmony before one of i u
ি [U+09BF BENGALI VOWEL SIGN I] with vowel harmony before one of ɔ o e a
্য [U+09CD BENGALI SIGN VIRAMA + U+09AF BENGALI LETTER YA] with the inherent vowel before i
এ [U+098F BENGALI LETTER E], with vowel harmony before one of i u
ই [U+0987 BENGALI LETTER I] with vowel harmony before one of ɔ o e a.
য় [U+09AF BENGALI LETTER YA + U+09BC BENGALI SIGN NUKTA] as part of a diphthong, esp after ɔ a o
Inherent vowel
ো [U+09CB BENGALI VOWEL SIGN O]
ু [U+09C1 BENGALI VOWEL SIGN U] with vowel harmony before one of ɔ o e a
অ [U+0985 BENGALI LETTER A] with vowel harmony before one of i u
উ [U+0989 BENGALI LETTER U], with vowel harmony before one of ɔ o e a
া [U+09BE BENGALI VOWEL SIGN AA] after জ্ঞ [U+099C BENGALI LETTER JA + U+09CD BENGALI SIGN VIRAMA + U+099E BENGALI LETTER NYA]
্যা [U+09CD BENGALI SIGN VIRAMA + U+09AF BENGALI LETTER YA + U+09BE BENGALI VOWEL SIGN AA] sometimes
্য [U+09CD BENGALI SIGN VIRAMA + U+09AF BENGALI LETTER YA] with the inherent vowel and not followed by i
ে [U+09C7 BENGALI VOWEL SIGN E], with vowel harmony before one of ɔ o e a
Only one vocalic is in common use for modern Bangla. It is used in standalone and vowel sign forms, eg. বৃহৎ ঋতু
Three more vocalics, ঌ [U+098C BENGALI LETTER VOCALIC L], ৠ [U+09E0 BENGALI LETTER VOCALIC RR] and ৡ [U+09E1 BENGALI LETTER VOCALIC LL], are historic and only used to write Sanskrit in Bengali.
The 33 consonant letters used for Bangla are supplemented by repertoire extensions for 3 more sounds by applying the nukta diacritic to characters.
Consonant clusters at any location are normally indicated using a virama (hasant) between consonants. This results in a large number of conjunct forms expressed using stacked consonants, conjoined consonants, and ligated glyphs. Conjuncts often have different pronunciations than might be expected from the letters involved, and in particular gemination is very common. Occasionally, a visible virama is used. However, clusters are often not marked at all.
As part of a cluster, RA has special forms, for both cluster-initial and post-base positions.
Word-final consonant sounds may be represented by a special letter, ৎ, or by 2 dedicated combining marks (anusvara & visarga), but are generally ordinary consonants that are not marked by a virama.
ক্ষ [U+0995 BENGALI LETTER KA + U+09CD SIGN VIRAMA + U+09B7 LETTER SSA] is called khiyɔ and is often treated as a letter of the alphabet in that some dictionaries give it it's own section, eg. ক্ষুদ্র
় [U+09BC BENGALI SIGN NUKTA] is used to create 3 additional letters, eg. the dot changes ড ɖ to ড় ɽ. Here is a list of graphemes that combine nukta with an existing consonant.
To reveal detailed notes about usage see the list of precomposed characters a little lower.
য় [U+09AF BENGALI LETTER YA + U+09BC SIGN NUKTA] represents j, w or e̯, depending on what vowels occur alongside it. See the character notes for details.
The nukta should always be typed and stored immediately after the consonant it modifies, and before any combining vowels or diacritics.
The Unicode Standard recommends that content authors use decomposed sequences for these letters. However, the Unicode block also contains the precomposed code points shown below.
Decomposed sequences are not recomposed by Unicode Normalisation Form C (NFC).
Two more letters in the Unicode Bengali block are specifically for Assamese.
One letter and 2 diacritics represent syllable-final consonant sounds.
In a sequence of characters, these should all occur after any combining vowel sign associated with the same syllable. None carry vowel signs.
ৎ [U+09CE BENGALI LETTER KHANDA TA], pronounced t̪, is a variant form of ত [U+09A4 BENGALI LETTER TA] that was added to Unicode 4.1 as a separate character. This shape occurs in words where the consonant is not followed by an inherent or other vowel sound. It either comes at the end of words, or before a consonant that doesn't naturally combine with tɔ, eg. হঠাৎ উৎসব
This character replaces and obsoletes an earlier approach that required the use of the sequence ত্ [U+09A4 BENGALI LETTER TA + U+09CD BENGALI SIGN VIRAMA + U+200D ZERO WIDTH JOINER].
Many words, however, use ত [U+09A4 BENGALI LETTER TA] in the same situations, and it's not possible to guess which will be used for a given word, eg. হঠাত্
ং [U+0982 BENGALI SIGN ANUSVARA] is a final nasal ŋ, eg. বাংলা
Sometimes spelling is inconsistent, especially when this or ঙ [U+0999 BENGALI LETTER NGA] are used in a conjunct, eg. compare these pairs: সাঙঘাতিক সাংঘাতিক রঙ রং
However, in certain words the spelling is fixed. One such word is বাংলা But, since this cannot support vowel signs, the word for Bengali nation (rather than language) has to be spelled with ঙ [U+0999 BENGALI LETTER NGA], ie. বাঙালী bɑŋɑlī bɑŋgɑlī
See also the candrabindu diacritic, which nasalises a vowel.
When used to represent a word-final consonant, ঃ [U+0983 BENGALI SIGN VISARGA] produces vigorous final aspiration ɦ, eg. বাঃ
It doesn't appear in many common words.
One of the other uses of the visarga is to lengthen a following consonant, in which case there is no aspiration, eg. নিঃশব্দ
Consonant clusters are written using:
See also consonant_length.
Unlike languages written in the Devanagari script, consonant clusters are often not represented as conjuncts in Bengali. It is necessary to just know that the vowel should not be pronounced, eg. রিকশা
Morphological boundaries, such as grammatical suffixes and endings are typically written without conjuncts, eg. the present tense form of khan plus negative suffix which is na is written খাননা
The stem kôr from kôra plus present continuous ending chô is written করছ
See a table of 2-consonant clusters.
The table allows you to test results for various fonts.
To produce a conjunct, ্ [U+09CD BENGALI SIGN VIRAMA] is added between the consonants in the cluster. There are exceptions, but this type of virama is usually not displayed, eg. the sequence ক + ্ + ষ [U+0995 BENGALI LETTER KA + U+09CD SIGN VIRAMA + U+09B7 LETTER SSA] produces ক্ষ k͓ʃ̇
The font usually determines how a cluster is rendered, although it is possible to influence this (see formatting).
Different fonts may combine the same letters in different ways. The following figures shows characters that are combined in different ways by different fonts.
Quite often, clustered consonants are pronounced differently than you would expect. In particular, conjuncts ending with ব [U+09AC BENGALI LETTER BA] or ম [U+09AE BENGALI LETTER MA] tend to not pronounce the latter, but double the length of the consonant before it (see consonant_length).
Nasals in conjuncts tend to conform to phonological patterns. Velar consonants (k, kh, g, etc) combine with ঙ ŋɔ, palatal consonants (c, ch, ..) combine with ঞ ñɔ, retroflex ণ ɳɔ, dental ন nɔ, and labial ম mɔ.
The sections below show examples of the various types of conjunct forms. The lists are not exhaustive. The shapes shown are by default those contained in the Noto Sans Bengali webfont. Other fonts may combine components in different ways. Click on the characters if you want to see the components.
Conjunct shapes are most commonly formed by arranging the components vertically, reducing and combining the shapes of the individual components as needed.
The conjuncts in fig_conjunct_vertical used in words: আস্থা ঝিল্লি
Examples of components arranged vertically.
Many conjuncts are formed by combining components horizontally.
The conjuncts in fig_conjoined used in words: ক্যম্পাস উচ্চারণ
Other examples of components arranged side-by-side, frequently with simplification of the initial consonant.
A small set of conjuncts combine the consonants into a ligated shape, where individual components can't always be easily discerned.
The conjuncts in fig_conjunct_ligated used in words: খ্রিষ্টান ক্ষণ
Examples of conjuncts arranged in a way that involves ligation, significantly altering one or more of the components.
Cluster-initial RA র [U+09B0 BENGALI LETTER RA] at the start of a cluster is normally displayed as a mark above the following consonant(s), eg. rt in গর্ত gɔrtô hole. Unlike Devanagari, it doesn't appear to be displayed above the vowel sign of the orthographic syllable, eg. কুর্তা
Like other consonant clusters, the sound may also be written without a conjunct at all, eg. কারসাজি
In some cases, it may be preferred to render a RA + YA cluster using the y̌ɔ-phɔla form for the latter. In this case the RA retains its full shape. Add a ZWJ character before the hasant, in order to apply the special shaping rules.
Cluster-final RA A trailing র [U+09B0 BENGALI LETTER RA] is displayed as a wavy line below the other consonants, eg. gr in গ্রাম
Examples of clusters with a trailing r.
Cluster-final MA A cluster-final ম [U+09AE BENGALI LETTER MA] is also displayed in a characteristic way. The initial consonant is reduced, and the m is rendered as a long vertical line to the right with an appendage to the left at the bottom, producing a kind of diagonal grouping, eg. উন্মত্ত
Examples of cluster-final MA.
y̌ɔ-phɔla Bengali also has a particular way of representing a cluster-final j semi-vowel. This is typically represented using the full form of the preceding consonant followed by a special form of য [U+09AF BENGALI LETTER YA], ্য, known as y̌ɔ-phɔla, eg. হ্যাঁ
The effect of yo-phola at the end of a conjunct is generally (a) to double the length of the preceding consonant, and (b) to change the value of the following vowel if it is inherent or a. For more details, see the character notes.
When the virama is used it may be because the font doesn't have a particular conjunct ligature, but it may also be visible in places where the phonology is unusual, eg. ফ্ল্যাট লান্চ although these may also be spelled with conjuncts, eg. ফ্ল্যাট
It is also quite common to see it used to distinguish words such as the following, which are etymologically related, but phonetically distinct:উদ্যাপন ụd͓ýɑpnউদ্যান ụd͓ýɑn
If a visible virama is wanted but not what the font does by default, it is possible to force it by inserting a ZWNJ character after the virama (see formatting).
U+200C ZERO WIDTH NON-JOINER] ( [ZWNJ) can be used to force the production of a visible virama, rather than a half-form (see visiblevirama). It can also be used to prevent the formation of vowel ligatures (see vowelligatures).
U+200D ZERO WIDTH JOINER] ( [ZWJ) is used to produce special joining forms for RA + YA (see consonant_syllable).
There are a number of ways of producing a lengthened consonant sound in Bangla.
A straightforward approach is to duplicate the consonant sound in conjunct form. For example, a long l can be written ল্ল [U+09B2 BENGALI LETTER LA + U+09CD SIGN VIRAMA + U+09B2 LETTER LA], eg. ঝিল্লি
Another common way of doubling the length of a consonant is to use a conjunct ending with ব [U+09AC BENGALI LETTER BA] or ম [U+09AE BENGALI LETTER MA], eg. ভস্ম বিশ্ব
The y̌ɔ-phɔla (্য [U+09CD BENGALI SIGN VIRAMA + U+09AF BENGALI LETTER YA]) can also lengthen the consonant it follows, eg. জন্য
ঃ [U+0983 BENGALI SIGN VISARGA] can also lengthen the following consonant, with no aspiration, eg. নিঃশব্দ
This section maps Bengali consonant sounds to common graphemes in the Bengali orthography, grouped according to whether they are regular ( r ), conjuncts ( c ), or final ( f ). 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.
ত্ম [U+09A4 BENGALI LETTER TA + U+09CD BENGALI SIGN VIRAMA + U+09AE BENGALI LETTER MA]
ত্ব [U+09A4 BENGALI LETTER TA + U+09CD BENGALI SIGN VIRAMA + U+09AC BENGALI LETTER BA]
ত্ম্য [U+09A4 BENGALI LETTER TA + U+09CD BENGALI SIGN VIRAMA + U+09AE BENGALI LETTER MA + U+09CD BENGALI SIGN VIRAMA + U+09AF BENGALI LETTER YA]
দ্ম [U+09A6 BENGALI LETTER DA + U+09CD BENGALI SIGN VIRAMA + U+09AE BENGALI LETTER MA]
দ্ব [U+09A6 BENGALI LETTER DA + U+09CD BENGALI SIGN VIRAMA + U+09AC BENGALI LETTER BA]
দ্ব্য [U+09A6 BENGALI LETTER DA + U+09CD BENGALI SIGN VIRAMA + U+09AC BENGALI LETTER BA + U+09CD BENGALI SIGN VIRAMA + U+09AF BENGALI LETTER YA]
ক্ষ [U+0995 BENGALI LETTER KA + U+09CD BENGALI SIGN VIRAMA + U+09B7 BENGALI LETTER SSA] when initial
ক্ষ [U+0995 BENGALI LETTER KA + U+09CD BENGALI SIGN VIRAMA + U+09B7 BENGALI LETTER SSA] when non-initial
ক্ষ্ম [U+0995 BENGALI LETTER KA + U+09CD BENGALI SIGN VIRAMA + U+09B7 BENGALI LETTER SSA + U+09CD BENGALI SIGN VIRAMA + U+09AE BENGALI LETTER MA] ditto
ক্ষ্য [U+0995 BENGALI LETTER KA + U+09CD BENGALI SIGN VIRAMA + U+09B7 BENGALI LETTER SSA + U+09CD BENGALI SIGN VIRAMA + U+09AF BENGALI LETTER YA] ditto
জ্ঞ [U+099C BENGALI LETTER JA + U+09CD BENGALI SIGN VIRAMA + U+099E BENGALI LETTER NYA] when word-initial
জ্ঞ [U+099C BENGALI LETTER JA + U+09CD BENGALI SIGN VIRAMA + U+099E BENGALI LETTER NYA] when between vowels
See pʰ/pf.
As the initial sound in the following conjuncts:
স্ত [U+09B8 BENGALI LETTER SA + U+09CD BENGALI SIGN VIRAMA + U+09A4 BENGALI LETTER TA] st
স্থ [U+09B8 BENGALI LETTER SA + U+09CD BENGALI SIGN VIRAMA + U+09A5 BENGALI LETTER THA] stʰ
স্ন [U+09B8 BENGALI LETTER SA + U+09CD BENGALI SIGN VIRAMA + U+09A8 BENGALI LETTER NA] sn
স্ত্র [U+09B8 BENGALI LETTER SA + U+09CD BENGALI SIGN VIRAMA + U+09A4 BENGALI LETTER TA + U+09CD BENGALI SIGN VIRAMA + U+09B0 BENGALI LETTER RA] str
শ্ব [U+09B6 BENGALI LETTER SHA + U+09CD BENGALI SIGN VIRAMA + U+09AC BENGALI LETTER BA]
শ্ম [U+09B6 BENGALI LETTER SHA + U+09CD BENGALI SIGN VIRAMA + U+09AE BENGALI LETTER MA]
ষ্ম [U+09B7 BENGALI LETTER SSA + U+09CD BENGALI SIGN VIRAMA + U+09AE BENGALI LETTER MA]
স্ম [U+09B8 BENGALI LETTER SA + U+09CD BENGALI SIGN VIRAMA + U+09AE BENGALI LETTER MA]
ওয় [U+0993 BENGALI LETTER O + U+09AF BENGALI LETTER YA + U+09BC BENGALI SIGN NUKTA], (light, like French 'oui') between o...a
ৃ [U+09C3 BENGALI VOWEL SIGN VOCALIC R] as part of the vocalic ri
ঋ [U+098B BENGALI LETTER VOCALIC R] as part of the standalone vocalic ri
This section looks at alternative strategies for typing and storing vowel signs and independent vowels used by Bangla, taking into consideration the effects of normalising the text using Unicode Normalisation Form D (NFD), and Normalisation Form C (NFC).
The 2 circumgraphs can be written as a single character, or as two characters (in decomposed text).
The single code point per vowel sign is the form preferred by the Unicode Standard and the form in common use for Bengali. The parts are separated, however, in Unicode Normalisation Form D (NFD), and recomposed in Unicode Normalisation Form C (NFC), so both approaches are canonically equivalent.
Whichever approach is used, the vowel signs must be typed and stored after the consonant characters they surround. In the case of decomposed vowel signs, the order is also important and must be as shown above.
Precomposed | Decomposed |
---|---|
ো [U+09CB BENGALI VOWEL SIGN O] | ো [U+09C7 BENGALI VOWEL SIGN E + U+09BE BENGALI VOWEL SIGN AA] |
ৌ [U+09CC BENGALI VOWEL SIGN AU] | ৌ [U+09C7 BENGALI VOWEL SIGN E + U+09D7 BENGALI AU LENGTH MARK] |
The single code point on the left should be used, and not the sequence on the right, because they are not made the same by normalisation, and they are not semantically equivalent. Using the right-hand sequence will cause searches and machine understanding of the data to fail.
Use | Do not use |
---|---|
আ [U+0986 BENGALI LETTER AA] | অ + া [U+0985 BENGALI LETTER A + U+09BE BENGALI VOWEL SIGN AA] |
The way the Unicode Standard recommends to type and store graphemes with nuktas is slightly inconsistent for Bengali. Here we look at alternative strategies for all uses of the nukta in the Bengali block (usage recommendations for Bangla are given in the section extendedC), and consider the effects of normalising the text using Unicode Normalisation Form D (NFD), and Normalisation Form C (NFC).
For the following alternatives the decomposed form is recommended by the Unicode Standard. NFC does not recombine the parts into precomposed characters. Instead, both NFC and NFD normalisation produces decomposed forms.
Precomposed | Decomposed (recommended) |
---|---|
ড় [U+09DC BENGALI LETTER RRA] | ড় [U+09A1 BENGALI LETTER DDA + U+09BC BENGALI SIGN NUKTA] |
ঢ় [U+09DD BENGALI LETTER RHA] | ঢ় [U+09A2 BENGALI LETTER DDHA + U+09BC BENGALI SIGN NUKTA] |
য় [U+09DF BENGALI LETTER YYA] | য় [U+09AF BENGALI LETTER YA + U+09BC BENGALI SIGN NUKTA] |
In the next case, the Unicode Standard recommends using the precomposed form. Neither form is converted into the other by normalisation, so they are not equivalent. It is therefore best to use the precomposed form only, so that text matches other text as expected.
Use | Do not use |
---|---|
র [U+09B0 BENGALI LETTER RA] | ব় [U+09AC BENGALI LETTER BA + U+09BC BENGALI SIGN NUKTA] |
In practise, it's hard to envisage content authors being aware of, let alone respecting, rules about whether they should use precomposed or decomposed forms. Keyboards or other input mechanisms, or perhaps sometimes applications that automatically normalise can perhaps guide users to the recommended practise, but it's likely that Bengali text will always contain a mixture of forms for these graphemes, and matching algorithms will need to be prepared to equate them all.
Nuktas must immediately follow the base consonant they modify.
When 2 vowel signs are used for a circumgraph, the encoded order of the combining marks should match the displayed order, left to right.
Besides the vowels and consonants described above, the Unicode Bengali block contains the following letters. They don't appear to be commonly used in Bangla.
Bengali has a set of native digits, which are used regularly in text. They are decimal-based.
See also the section Counters below.
৳ [U+09F3 BENGALI RUPEE SIGN] is the Bengali rupee sign.
There are also a number of currency symbols, used in older texts, including ৲ [U+09F2 BENGALI RUPEE MARK] and the following currency denominator signs.
These were used in an additive/subtractive system for specifying the number of ānā in the Bengali notation for currency used up to 1957, eg. ৷৷৶৹ 11 ānā (11 ana); ৸৶৹ 15 ānā (15 ana). There are 16 ana in one rupee, and the system works in multiples of 4. For a detailed explanation of usage, see [Pandey].
Text is normally written horizontally, left to right.
Show default bidi_class
properties for characters by the modern Bangla orthography.
This section brings together information about the following topics: writing styles; cursive text; context-based shaping; context-based positioning; baselines, line height, etc.; font styles; case & other character transforms.
You can experiment with examples using the Bengali character app.
Bengali text is not cursive (ie. joined up like Arabic), however there is a significant amount of interaction between glyphs, and some joining, around consonant clusters.
The orthography has no case distinction, and no special transforms are needed to convert between characters.
Sometimes vowel signs (particularly U) form ligatures with a preceding base consonant. fig_lig shows ligated (top) and non-ligated (bottom) forms for several combinations. In certain contexts it may be less appropriate to ligate (eg. newspapers and modern typefaces). Both forms are equivalent in every way but visually.
The default behaviour of a given font can be modified using the zero-width non-joiner character before the vowel to produce the simple form. See fig_ligated_simplified.
See a matrix of consonants followed by vowel signs for Bengali. A few clusters that are often ligated are pre-highlighted.
tbd
This section is still undergoing research and development.
Grapheme clusters alone are not sufficient to represent typographic units in Bengali in all circumstances. Conjuncts are common and must not be split apart by edit operations that visually change the text (such as letter-spacing, first-letter highlighting, and in-word line breaking). For those operations one needs to segment the text using orthographic syllables, which string grapheme clusters together with a virama.
The Bengali virama (hasant) is ্ [U+09CD BENGALI SIGN VIRAMA],
which has an Indic Syllabic Category of Virama
.
Base ZW(N)J? Combining_mark* ZW(N)J?
Combining marks may include zero or more of the following types of character.
In some cases, a ZWJ is inserted between RA + hasant followed by YA in order to specify special shaping rules (see special_forms).
A base consonant may be followed by ZWNJ before vowel sign code points where the author wants to prevent ligation of the following vowel sign (see vowelligatures). A ZWNJ may also be used after a virama to prevent conjunct formation and force the virama to be rendered visibly to the reader (see visiblevirama).
The following examples show a variety of grapheme clusters:
Click on the text version of these words to see more detail about the composition.
বালতি | |
ইংরেজ | |
নিঃশব্দ | |
ঝিল্লি | |
ক্যম্পাস |
Note how grapheme clusters segment the parts of a conjunct after the virama. This is not always desirable (see orthographicS just below).
(Consonant Nukta? Virama)* Grapheme_cluster
Bengali commonly stacks or conjoins glyphs, to form conjuncts (see clusters). The conjuncts represent consonant clusters or gemination.
Grapheme clusters terminate after a sequence of marks that includes a hasant, but editorial operations that change the visual appearance of the text, such as letter-spacing, first-letter highlighting, line-breaking, and justification, should never split conjunct forms apart. For this reason, an alternative way of segmenting graphemes is needed. This may not apply, however, for some other operations such as cursor movement or backwards delete.
Where conjuncts appear, a typographic unit contains multiple grapheme clusters. The non-final grapheme clusters all end with ্ [U+09CD BENGALI SIGN VIRAMA], and the final grapheme cluster begins with a consonant.
The following are examples. Some examples were shown in the previous section: here the conjunct is treated as a single typographic unit.
Click on the text version of these words to see more detail about the composition.
ঝিল্লি | |
ক্যম্পাস | |
ক্ষণ | |
কুর্তা |
Note that consonant clusters aren't always rendered as conjuncts, and in those cases the individual letters remain as separate graphemes. For example, consonants without an inherent vowel may be written using a consonant letter on its own at the end of a word or in other locations (see novowel).
Click on the text version of these words to see more detail about the composition.
রিকশা | |
খাননা |
On the occasions when a virama needs to be visible even though it is followed by another base, an invisible character must be added to prevent it joining with the following base. U+200C ZERO WIDTH NON-JOINER can achieve that.
ফ্ল্যাট | |
লান্চ |
Behaviour is font-dependent. If a font doesn't have a conjunct form for a particular combination of characters it will make the virama visible.
What's important to note here is that it is normally possible to break a line after the grapheme cluster containing the virama when the virama is visible. This is currently difficult to manage because the decision as to whether the text is segmented into 2 graphemes or one depends only on the capabilities of the font used (ie. the rendered result); the code point sequence is identical for both cases, and gives no clues to which approach to segmentation is applicable.
Visible viramas can also affect vowel sign positioning. For the purposes of illustration, see fig_prebase_position, where the placement of the pre-base vowel varies. In the conjunct form on the left, the vowel sign is rendered to the left of the whole conjunct. If the sequence is not rendered as a conjunct, as in the second example, the pre-base glyph precedes the TA, not the SA.
Test in your browser. The words test units that equate to grapheme clusters only, and others that include conjuncts. First, the text is displayed in a contenteditable paragraph, then in a textarea. Results are reported for Gecko (Firefox), Blink (Chrome), and WebKit (Safari) on a Mac.
ইংরেজ ক্যম্পাস ফ্ল্যাট কুর্তা
Cursor movement. Move the cursor through the text.
Gecko steps through the text using grapheme clusters with one exception. It takes 2 or more steps (depending on the number of GCs) to get through the conjuncts, one grapheme cluster at a time. In some cases, especially with RA, the cursor may look as if it is in the wrong position. The exception is the sequences with yo-phala (eg. ল্যা), which are skipped over as if they were a single grapheme cluster. Blink and WebKit step through all words using the orthographic syllables as described here (ie. they step over a stack and all associated combining characters in one jump), except that WebKit doesn't include the ZWNJ in the grapheme cluster it ends, requiring an extra jump to get past it (although the cursor doesn't move).
Selection. Place the cursor next to a character and hold down shift while pressing an arrow key.
The behaviour is the same as for cursor movement.
Deletion. Forward deletion works in the same way as cursor movement. The backspace key deletes code point by code point, for all browsers.
Line-break. See this test. The CSS sets the value of the line-break
property to anywhere
. Change the size of the box to slowly move the line break point.
Gecko sets break opportunities in the same places as cursor stops. WebKit and Blink both wrap on orthographic syllable boundaries.
Words are separated by spaces.
Bangla uses a mixture of ASCII and Bengali punctuation.
phrase |
, [U+002C COMMA] ; [U+003B SEMICOLON] : [U+003A COLON] |
---|---|
sentence |
. [U+002E FULL STOP] |
The danda, । [U+0964 DEVANAGARI DANDA], is used for sentence final punctuation.
Observation: I haven't seen much evidence for the use of the double danda, ॥ [U+0965 DEVANAGARI DOUBLE DANDA].
Western punctuation, such as commas, semicolons, colons, quotation marks and hyphens are also used quite commonly.
Bengali commonly uses ASCII parentheses to insert parenthetical information into text.
start | end | |
---|---|---|
standard |
Bengali texts typically use quotation marks. 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] |
Italicisation, bolding, and underlining are not traditionally features of Bengali text.
The bisɔrgô ঃ [U+0983 BENGALI SIGN VISARGA] is sometimes used to mark initial abbreviations.
A sign called urdha-comma can be used to indicate truncation of words, eg. কʼরেʼপরে The Unicode Standard recommends use of ʼ [U+02BC MODIFIER LETTER APOSTROPHE].u,460
Observation: Wikipedia seems to use a normal apostrophe.
The Unicode Bengali block also has the punctuation ৽ [U+09FD BENGALI ABBREVIATION SIGN]. It is possible that … [U+2026 HORIZONTAL ELLIPSIS] is used.
Observation: Information is needed about how it is used. It doesn't appear to be in common use.
tbd
৺ [U+09FA BENGALI ISSHAR] is used alongside the names of deceased persons.
tbd
Bengali is preferably wrapped at word boundaries.
Bengali text can be hyphenated during line wrap, though it is not very common (unlike several south Indian scripts). This is partly because Bengali contains mostly short words.st
Hyphenation adds a hyphen at the end of the line when a word is broken.
As in almost all writing systems, certain punctuation characters should not appear at the end or the start of a line. The Unicode line-break properties help applications decide whether a character should appear at the start or end of a line.
Show line-breaking properties for characters in the modern Bangla orthography.
The following list gives examples of typical behaviours for some of the characters used in modern Bangla. Context may affect the behaviour of some of these and other characters.
Click/tap on the Bangla characters to show what they are.
Line breaking should not move a danda or double danda to the beginning of a new line even if they are preceded by a space character.
tbd
tbd
tbd
Bangla uses the so-called 'alphabetic' baseline, which is the same as for Latin and many other scripts.
It also has a 'hanging baseline', which may be used for text alignment in things such as initial letter highlighting. The hanging baseline is based on the top bar that joins the letters.
Bangla requires slightly more vertical space than Latin text. To give an approximate idea, fig_baselines compares Latin and Bangla glyphs from Noto fonts. The basic height of Bangla letters is typically slightly higher than the Latin x-height, including conjunct stacks, however certain letters and combining marks extend beyond the Latin ascenders, creating a need for larger line spacing.
fig_baselines_other shows similar comparisons for the Bangla MN and Vrinda fonts.
You can experiment with counter styles using the Counter styles converter. Patterns for using these styles in CSS can be found in Ready-made Counter Styles, and we use the names of those patterns here to refer to the various styles.
The modern Bangla orthography uses ASCII digit numbering, but also has a native numeric style.
The bengali numeric style is decimal-based and uses these digits.rmcs
Examples:
Generally, Bangla lists use a full stop plus a space as a suffix.
Examples:
This section is for any features that are specific to Bengali and that relate to the following topics: general page layout & progression; grids & tables; notes, footnotes, etc; forms & user interaction; page numbering, running headers, etc.