| # This table contains braille codes and rules for Devanagari script. |
| # |
| # Copyright (C) 2026 National Institute for Empowerment of Persons with Visual Disabilities (NIEPVD) |
| # (under Department of Empowerment of Persons with Disabilities (DEPwD), Ministry of Social |
| # Justice & Empowerment, Government of India),116, Rajpur Road, Dehradun – 248001 |
| # |
| # This file is part of liblouis. |
| # |
| # liblouis is free software: you can redistribute it and/or modify it |
| # under the terms of the GNU Lesser General Public License as |
| # published by the Free Software Foundation, either version 2.1 of the |
| # License, or (at your option) any later version. |
| # |
| # liblouis is distributed in the hope that it will be useful, but |
| # WITHOUT ANY WARRANTY; without even the implied warranty of |
| # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
| # Lesser General Public License for more details. |
| # |
| # You should have received a copy of the GNU Lesser General Public |
| # License along with liblouis. If not, see |
| # <http://www.gnu.org/licenses/>. |
| |
| # This table was built and maintained under an activity of Braille Council of India and then modified after release of new Bharti braille 2.1 which was released on January 4, 2026 for public review |
| # Contributors: Dipendra Manocha, Jake Kyle, Sreeja, Dinesh Kaushal, Mesar Hameed |
| # Last updated on February 26, 2026 |
| # To report any bugs or any suggestion, please write to dipendra@saksham.org and sreeja@saksham.org |
| |
| include braille-patterns.cti |
| |
| # To ensure punctuation back-translated properly |
| prepunc \x201C 236 |
| postpunc \x201D 356 |
| postpunc .] 256-2356-3 |
| noback prepunc ' 6-236 |
| prepunc ‘ 6-236 |
| noback postpunc ' 356-3 |
| postpunc ’ 356-3 |
| |
| |
| letter \x0901 3 # devanagari chandra bindu |
| letter \x0902 56 # devanagari anuswar |
| letter \x0903 6 # devanagari visarg |
| |
| letter \x0905 1 #"a" |
| letter \x0906 345 #baraa aa" |
| letter \x0907 24 #"chhoTi ii" |
| letter \x0908 35 #"baRii ii" |
| letter \x0909 136 #"chhoTaa u" |
| letter \x090A 1256 #"baRaa uu" |
| noback letter \x090B 5-1235 #"RRi" - need noback because multicell |
| noback letter \x090C 5-123 #"lri" - need noback because multicell |
| noback letter \x090D 34 #"Candra e" - not in Bharti 2.1 doc |
| noback letter \x090E 26 #"short e for dravidian" - not in Bharti 2.1 doc |
| letter \x090F 15 #"e" |
| letter \x0910 34 #"ai" |
| letter \x0911 1346 #"o as in office" |
| noback letter \x0912 1346 #"short o" - not often in Hindi |
| letter \x0913 135 #"o" |
| letter \x0914 246 #"au" |
| |
| replace \x200D |
| |
| letter \x0915 13 # devanagari ka |
| letter \x0916 46 # devanagari kha |
| letter \x0917 1245 # devanagari ga |
| letter \x0918 126 # devanagari gha |
| letter \x0919 346 #devanagari aNgaa |
| |
| letter \x091A 14 # devanagari cha |
| letter \x091B 16 # devanagari cha |
| letter \x091C 245 # devanagari ja |
| letter \x091D 356 # devanagari jha |
| letter \x091E 25 #devanagari yangaa |
| |
| letter \x091F 23456 # devanagari ta |
| letter \x0920 2456 # devanagari tha |
| letter \x0921 1246 # devanagari da |
| letter \x0922 123456 # devanagari dha |
| letter \x0923 3456 #devanagari nna |
| |
| letter \x0924 2345 # devanagari ta |
| letter \x0925 1456 # devanagari tha |
| letter \x0926 145 # devanagari da |
| letter \x0927 2346 # devanagari dha |
| letter \x0928 1345 #devanagari na |
| |
| letter \x0929 5-1345 #devanagari na nukta |
| |
| letter \x092A 1234 # devanagari pa |
| letter \x092B 124 # devanagari pha |
| letter \x092C 12 # devanagari ba |
| letter \x092D 45 # devanagari bha |
| letter \x092E 134 #devanagari ma |
| |
| letter \x092F 13456 # devanagari yaa |
| letter \x0930 1235 # devanagari ra |
| noback letter \x0931 5-1235 # devanagari rra - not often used in Hindi |
| letter \x0932 123 # devanagari la |
| letter \x0933 456 #devanagari la |
| noback letter \x0934 5-12356 #devanagari la - not often used in Hindi |
| letter \x0935 1236 #devanagari va |
| letter \x0936 146 #devanagari sha |
| letter \x0937 12346 #devanagari ssha |
| letter \x0938 234 #devanagari sa |
| letter \x0939 125 #devanagari ha |
| |
| letter \x093c 5 #devanagari Nukhta |
| letter \x093d 2 #devanagari avagrah |
| |
| #-------- |
| # matras |
| |
| letter \x093E 345 #baraa aa ki matra |
| letter \x093F 24 #"chhoTi ii matra |
| letter \x0940 35 #"baRii ii matra |
| letter \x0941 136 #chhoTaa u matra |
| letter \x0942 1256 #"baRaa uu matra" |
| letter \x0943 5-1235 #"RRi matra" |
| letter \x0944 6-1235 #"lri matra" |
| noback letter \x0945 1346 #"e matra" - not often used in Hindi |
| letter \x0946 26 #"ai matra" |
| letter \x0947 15 #"e matra" |
| letter \x0948 34 #"ai matra" |
| letter \x0949 1346 #"o" |
| letter \x094A 1346 #"au" |
| letter \x094B 135 #"o matra" |
| letter \x094C 246 #"au matra" |
| |
| letter \x094D 4 # Halant |
| letter \x0950 5-1256 #"devanagari sign for om" |
| letter \x1CDA 1356 #"strress sign swarita used in vedic text" |
| noback letter \x0951 1356 #"stress sign Uddatta used in vedic text" - not often used in Hindi |
| letter \x0952 12356 #"strress sign Anudatta used in vedic text" |
| |
| letter \x0960 6-1235 #"vocalic rr" |
| letter \x0961 6-123 #"vocalic lla" |
| letter \x0962 5-123 #"vocalic la" |
| letter \x0963 6-123 #"vocalic ll" |
| |
| #Nukhta |
| |
| letter \x0958 5-13 #"Ka with Nukhta" |
| letter \x0959 5-46 #"kha with nukhta" |
| letter \x095A 5-1245 #"ga with nukhta" |
| letter \x095B 5-245 #"ja with nukhta" |
| letter \x095C 12456 #"da with nukhta" |
| letter \x095D 5-12456 #"dhaa with nukhta" |
| letter \x095E 5-124 #"fa with nukhta" |
| letter \x095F 5-13456 #"ya with nukhta" |
| |
| always \x0915\x093C 5-13 #"ka with nukhta" |
| always \x0916\x093C 5-46 #"kha with nukhta" |
| always \x0917\x093C 5-1245 #"ga with nukhta" |
| always \x091c\x093C 5-245 #"ja with nukhta" |
| always \x0921\x093C 12456 #"da with nukhta" |
| always \x0922\x093C 5-12456 #"dhaa with nukhta" |
| always \x092B\x093C 5-124 #"fa with nukhta" |
| always \x092F\x093C 5-13456 #"ya with nukhta" |
| |
| # poorn Viram and double poorn Viraam |
| punctuation \x0964 256 # "Poorn Viraam" |
| punctuation \x0965 256-256 # "Double Poorn Viraam" |
| punctuation \x0970 256 # "abbreviation sign" |
| |
| # 3456 is letter 'NNA' and the number sign. |
| nofor midendword \x0923 3456 # Devanagari LETTER NNA |
| |
| #-------- |
| # digits |
| |
| litdigit \x0966 245 # devanagari 0 |
| litdigit \x0967 1 # devanagari 1 |
| litdigit \x0968 12 # devanagari 2 |
| litdigit \x0969 14 # devanagari 3 |
| litdigit \x096A 145 # devanagari 4 |
| litdigit \x096B 15 # devanagari 5 |
| litdigit \x096C 124 # devanagari 6 |
| litdigit \x096D 1245 # devanagari 7 |
| litdigit \x096E 125 # devanagari 8 |
| litdigit \x096F 24 # devanagari 9 |
| |
| digit \x0966 245 # devanagari 0 |
| digit \x0967 1 # devanagari 1 |
| digit \x0968 12 # devanagari 2 |
| digit \x0969 14 # devanagari 3 |
| digit \x096A 145 # devanagari 4 |
| digit \x096B 15 # devanagari 5 |
| digit \x096C 124 # devanagari 6 |
| digit \x096D 1245 # devanagari 7 |
| digit \x096E 125 # devanagari 8 |
| digit \x096F 24 # devanagari 9 |
| |
| # ksha and gya |
| |
| always \x0915\x094D\x0937\x094D 4-12345 #"ksha" |
| always \x091C\x094D\x091E 156 #"gyan" |
| always \x0915\x094D\x0937 12345 #"ksha" |
| |
| |
| #-------- |
| # half characters |
| |
| always \x0915\x094D 4-13 # devanagari ka |
| always \x0916\x094D 4-46 # devanagari kha |
| always \x0917\x094D 4-1245 # devanagari ga |
| always \x0918\x094D 4-126 # devanagari gha |
| always \x0919\x094D 4-346 #devanagari aNgaa |
| |
| always \x091A\x094D 4-14 # devanagari ca |
| always \x091B\x094D 4-16 # devanagari cha |
| always \x091C\x094D 4-245 # devanagari ja |
| always \x091D\x094D 4-356 # devanagari jha |
| always \x091E\x094D 4-25 #devanagari yangaa |
| |
| always \x091F\x094d 4-23456 # devanagari ta |
| always \x0920\x094D 4-2456 # devanagari tha |
| always \x0921\x094D 4-1246 # devanagari da |
| always \x0922\x094D 4-123456 # devanagari dha |
| always \x0923\x094D 4-3456 #devanagari nna |
| |
| always \x0924\x094D 4-2345 # devanagari ta |
| always \x0925\x094D 4-1456 # devanagari tha |
| always \x0926\x094D 4-145 # devanagari da |
| always \x0927\x094D 4-2346 # devanagari dha |
| always \x0928\x094D 4-1345 #devanagari na |
| always \x0929\x094D 4-5-1345 #devanagari nnna dravidian character |
| |
| always \x092A\x094D 4-1234 # devanagari pa |
| always \x092B\x094D 4-124 # devanagari pha |
| always \x092C\x094D 4-12 # devanagari ba |
| always \x092D\x094D 4-45 # devanagari bha |
| always \x092E\x094D 4-134 #devanagari ma |
| |
| always \x092F\x094D 4-13456 # devanagari yaa |
| always \x0930\x094D 4-1235 # devanagari ra |
| always \x0931\x094D 4-12456 # devanagari rra |
| always \x0932\x094D 4-123 # devanagari la |
| always \x0933\x094D 4-456 #devanagari la |
| always \x0934\x094D 4-123 #devanagari la |
| always \x0935\x094D 4-1236 #devanagari va |
| always \x0936\x094D 4-146 #devanagari sha |
| always \x0937\x094D 4-12346 #devanagari ssha |
| always \x0938\x094D 4-234 #devanagari sa |
| always \x0939\x094D 4-125 #devanagari ha |
| |
| always \x0958\x094D 4-5-13 #"Ka with Nukhta" |
| always \x0959\x094D 4-5-46 #"kha with nukhta" |
| always \x095A\x094D 4-5-1245 #"ga with nukhta" |
| always \x095B\x094D 4-5-245 #"ja with nukhta" |
| always \x095C\x094D 4-12456 #"da with nukhta" |
| always \x095D\x094D 4-5-12456 #"dhaa with nukhta" |
| always \x095E\x094D 4-5-124 #"fa with nukhta" |
| always \x095F\x094D 4-5-13456 #"ya with nukhta" |
| |
| replace \x093C |
| |
| always \x0915\x093C\x094D 4-5-13 #"ka with nukhta" |
| always \x0916\x093C\x094D 4-5-46 #"kha with nukhta" |
| always \x0917\x093C\x094D 4-5-1245 #"ga with nukhta" |
| always \x091c\x093C\x094D 4-5-245 #"ja with nukhta" |
| always \x0921\x093C\x094D 4-12456 #"da with nukhta" |
| always \x0922\x093C\x094D 4-5-12456 #"dhaa with nukhta" |
| always \x092B\x093C\x094D 4-5-124 #"fa with nukhta" |
| always \x092F\x093C\x094D 4-5-13456 #"ya with nukhta" |
| |
| |
| always \x0960\x094D 4-6-1235 #"vocalic rr" |
| always \x0961\x094D 4-6-123 #"vocalic lla" |
| always \x0962\x094D 4-5-123 #"vocalic la" |
| always \x0963\x094D 4-6-123 #"vocalic ll" |
| |
| #------------ |
| |
| attribute ConsonantLetter \x0915\x0916\x0917\x0918\x0919\x091A\x091B\x091C\x091D\x091E\x091F\x0920\x0921\x0922\x0923\x0924\x0925\x0926\x0927\x0928\x092A\x092B\x092C\x092D\x092E\x092F\x0930\x0931\x0932\x0933\x0934\x0935\x0936\x0937\x0938\x0939\x093C |
| |
| attribute DevanagariCharacters \x0902\x0906\x0907\x0908\x0909\x090A\x090D\x090E\x090F\x0910\x0911\x0912\x0913\x0914\x093E\x093F\x0940\x0941\x0942\x0943\x0944\x0945\x0946\x0947\x0948\x0949\x094A\x094B\x094C\x0915\x0916\x0917\x0918\x0919\x091A\x091B\x091C\x091D\x091E\x091F\x0920\x0921\x0922\x0923\x0924\x0925\x0926\x0927\x0928\x092A\x092B\x092C\x092D\x092E\x092F\x0930\x0931\x0932\x0933\x0934\x0935\x0936\x0937\x0938\x0939\x093C\x0964\x0965 |
| |
| |
| # consonent followed by vowel but not matra |
| after ConsonantLetter always \x0906 1-345 #"baraa aa" |
| after ConsonantLetter always \x0907 1-24 #"chhoTi ii" |
| after ConsonantLetter always \x0908 1-35 #"baRii ii" |
| after ConsonantLetter always \x0909 1-136 #"chhoTaa u" |
| after ConsonantLetter always \x090A 1-1256 #"baRaa uu" |
| after ConsonantLetter always \x090B 1-5-1235 #"RRi" |
| after ConsonantLetter always \x090C 1-5-123 #"lri" |
| noback after ConsonantLetter always \x090D 1-34 #"Candra e" - not in Bharti 2.1 doc |
| noback after ConsonantLetter always \x090E 1-26 #"short e for dravidian" - not in Bharti 2.1 doc |
| after ConsonantLetter always \x090F 1-15 #"e" |
| after ConsonantLetter always \x0910 1-34 #"ai" |
| after ConsonantLetter always \x0911 1-1346 #"o as in office" |
| noback after ConsonantLetter always \x0912 1-1346 #"short o" - not often in Hindi |
| after ConsonantLetter always \x0913 1-135 #"o" |
| after ConsonantLetter always \x0914 1-246 #"au" |
| |
| # Vowels in backtranslation |
| # For back translation, vowel after consonant is matra |
| after ConsonantLetter always \x093E 345 #baraa aa ki matra |
| after ConsonantLetter always \x093F 24 #"chhoTi ii matra |
| after ConsonantLetter always \x0940 35 #"baRii ii matra |
| after ConsonantLetter always \x0941 136 #chhoTaa u matra |
| after ConsonantLetter always \x0942 1256 #"baRaa uu matra" |
| after ConsonantLetter always \x0943 5-1235 #"RRi matra" |
| after ConsonantLetter always \x0944 6-1235 #"lri matra" |
| after ConsonantLetter always \x0946 26 #"ai matra" |
| after ConsonantLetter always \x0947 15 #"e matra" |
| after ConsonantLetter always \x0948 34 #"ai matra" |
| after ConsonantLetter always \x0949 1346 #"o" |
| after ConsonantLetter always \x094B 135 #"o matra" |
| after ConsonantLetter always \x094C 246 #"au matra" |
| |
| #for back translation of poornViram or Devanagari danda. dot 256 after Devanagari characters will be Danda and not dot. |
| |
| after DevanagariCharacters always \x0964 256 # Devanagari Danda/Poornviram |
| |
| # Following needed in backtranslation to override rules in tables which may be included with this table |
| always \x092D\x0930 45-1235 # BHA + RA - needed to override ® in en-in-g1.ctb table |
| always \x0916 46 # KHA - needed to override . (period) in en-in-g1.ctb table |
| always \x091D 356 # JHA - needed to override " (close quotes) in en-in-g1.ctb table |
| always \x0916\x002C 46-2 # needed to override > (less-than sign) in en-in-g1.ctb table |
| always \x0916\x092E 46-134 # needed to override µ (micro sign) in en-in-g1.ctb table |
| always \x0916\x0915 46-13 # to override = (equals sign) in en-in-g1.ctb table |
| punctuation \x2019 356-3 # to override noback prefix in en-chardefs.cti table |
| punctuation \x2018 6-236 # to override noback prefix in en-chardefs.cti table |
| punctuation ! 235 # to override digit 6 in loweredDigits6Dots.uti table |