summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2021-06-12 21:13:26 +0000
committerKarl Berry <karl@freefriends.org>2021-06-12 21:13:26 +0000
commitae3bb8bde6eb63119eac5deaf3f94d95b8f689dc (patch)
tree2d7f151039625216d6d00ee643584e415a3073eb
parent2ff24d7a40f7eb3a42b54e23f5f6300d9276e557 (diff)
bangla (12jun21)
git-svn-id: svn://tug.org/texlive/trunk@59564 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r--Master/texmf-dist/doc/latex/bangla/README22
-rw-r--r--Master/texmf-dist/doc/latex/bangla/bangla.pdfbin0 -> 89448 bytes
-rw-r--r--Master/texmf-dist/doc/latex/bangla/bangla.tex174
-rw-r--r--Master/texmf-dist/fonts/truetype/public/bangla/doulos.ttfbin0 -> 1582480 bytes
-rw-r--r--Master/texmf-dist/fonts/truetype/public/bangla/fontkalpurush.ttfbin0 -> 314592 bytes
-rw-r--r--Master/texmf-dist/fonts/truetype/public/bangla/fontshimanto.ttfbin0 -> 259680 bytes
-rw-r--r--Master/texmf-dist/tex/latex/bangla/bangla.sty281
-rw-r--r--Master/texmf-dist/tex/latex/bangla/banglamap.tex81
-rwxr-xr-xMaster/tlpkg/bin/tlpkg-ctan-check2
-rwxr-xr-xMaster/tlpkg/libexec/ctan2tds1
-rw-r--r--Master/tlpkg/tlpsrc/bangla.tlpsrc0
-rw-r--r--Master/tlpkg/tlpsrc/collection-langother.tlpsrc1
12 files changed, 561 insertions, 1 deletions
diff --git a/Master/texmf-dist/doc/latex/bangla/README b/Master/texmf-dist/doc/latex/bangla/README
new file mode 100644
index 00000000000..0431e47686a
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/bangla/README
@@ -0,0 +1,22 @@
+ ----------------------------------------------------------------
+ bangla package - A Comprehensive Bangla latex package
+ E-mail: mailbox.nahid@gmail.com / nahid@cse.uiu.ac.bd
+ Released under the LaTeX Project Public License v1.3c or later
+ See http://www.latex-project.org/lppl.txt
+ ----------------------------------------------------------------
+The bangla package is a programming tool geared primarily towards LaTeX
+class and package authors. It provides all necessary LaTeX frontends for Bangla
+language.
+ ------------------------------------------------------------------
+ Copyright (C) 2021 by Nahid Hossain mailbox.nahid@gmail.com
+
+ This work may be distributed and/or modified under the
+ conditions of the LaTeX Project Public License (LPPL), either
+ version 1.3c of this license or (at your option) any later
+ version. The latest version of this license is in the file:
+
+ http://www.latex-project.org/lppl.txt
+
+ This work is "maintained" (as per LPPL maintenance status) by
+ Nahid Hossain
+
diff --git a/Master/texmf-dist/doc/latex/bangla/bangla.pdf b/Master/texmf-dist/doc/latex/bangla/bangla.pdf
new file mode 100644
index 00000000000..fa531971edf
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/bangla/bangla.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/bangla/bangla.tex b/Master/texmf-dist/doc/latex/bangla/bangla.tex
new file mode 100644
index 00000000000..bb680206811
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/bangla/bangla.tex
@@ -0,0 +1,174 @@
+\documentclass{article}
+\usepackage{bangla}
+\usepackage{xcolor}
+\usepackage{listings}
+\usepackage{float}
+\newcommand{\com}[2]{\textcolor{blue}{\textbackslash\texttt{#1}}\texttt{#2}}
+
+\begin{document}
+
+\title{The \texttt{bangla} Package}
+
+\author{Nahid Hossain \\Assistant Professor, United International University\\Bangladesh\\nahid@cse.uiu.ac.bd\\mailbox.nahid@gmail.com\\ \textbf{Version 1.5}}
+
+\date{June 12, 2021}
+\maketitle
+\tableofcontents
+
+\section{Introduction}
+\subsection{About \texttt{bangla} Package}
+The \texttt{bangla} package is a programming tool geared primarily towards LaTeX class and package authors. It provides all necessary LaTeX frontends for Bangla language.
+
+\subsection{Licence}
+Copyright © 2021 Nahid Hossain. Permission is granted to copy, distribute and/or modify this software under the terms of the LaTeX Project Public License, version 1.3c or later.
+\section{Commands}
+\subsection{Use Package}
+The basic command to use the package is-\\ \\
+\com{usepackage}{\{bangla\}}
+
+
+\subsection{Font Selection}
+\textbf{The default font of the \texttt{bangla} package is \texttt{Kalpurush}. If you do not mention any font name in the parameter, the Kalpurush will be your default font.} However, an author can easily change the font using the parameter of the \texttt{usepackage} command.
+\\ \\
+\com{usepackage}{[<font name>]\{bangla\}}
+\\
+
+For example, if an author wants \texttt{Noto Serif Bengali} as the font for the whole article, he can write-
+\\ \\
+\com{usepackage}{[notoserifbengali]\{bangla\}}
+\\
+
+
+The following SIL Open Font Licence(OFL) Bangla fonts are currently associated with the \texttt{bangla} package-
+
+\begin{table}[H]
+\centering
+\begin{tabular}{|c|c|c|}
+\hline
+\textbf{Font Name} & \textbf{Command Keyword} & \textbf{Licence} \\
+\hline
+Kalpurush & \textcolor{blue}{\texttt{kalpurush}} & SIL OFL\\
+\hline
+Shimanto & \textcolor{blue}{\texttt{shimanto}} & SIL OFL \\
+\hline
+Noto Sans Bengali & \textcolor{blue}{\texttt{notosansbengali}} & SIL OFL\\
+\hline
+Noto Serif Bengali & \textcolor{blue}{\texttt{notoserifbengali}} & SIL OFL\\
+\hline
+\end{tabular}
+\end{table}
+
+
+\subsection{With Parameter Definitions}
+In this subsection, we have demonstrated the commands that requires parameters(at least one or more).
+\subsubsection{\com{banglatext}{\{<bangla text here>\}}}
+\texttt{banglatext} displays any Bangla texts provided inside the parameter. Insert Bangla text in the parameter.\\
+\begin{table}[H]
+\centering
+\begin{tabular}{|c|c|}
+\hline
+\textbf{Command} & \textbf{Output} \\
+\hline
+\texttt{\com{banglatext}{\{\banglatext{আমি বাংলায় কথা বলি।}\}}} & \banglatext{আমি বাংলায় কথা বলি।}\\
+\hline
+\end{tabular}
+\end{table}
+
+\subsubsection{\com{banglabold}{\{<bangla text here>\}}}
+\texttt{banglabold} bolds the Bangla texts provided inside the parameter. It can make texts bold automatically of any font that has no bold fonts available.\\
+\begin{table}[H]
+\centering
+\begin{tabular}{|c|c|}
+\hline
+\textbf{Command} & \textbf{Output} \\
+\hline
+\texttt{\com{banglabold}{\{\banglatext{আমি বাংলায় কথা বলি।}\}}} & \banglabold{আমি বাংলায় কথা বলি।}\\
+\hline
+\end{tabular}
+\end{table}
+
+\subsubsection{\com{banglaitalic}{\{<bangla text here>\}}}
+\texttt{banglaitalic} makes the Bangla texts italic provided inside the parameter. It can make texts italic automatically of any font that has no italic fonts available.\\
+\begin{table}[H]
+\centering
+\begin{tabular}{|c|c|}
+\hline
+\textbf{Command} & \textbf{Output} \\
+\hline
+\texttt{\com{banglaitalic}{\{\banglatext{আমি বাংলায় কথা বলি।}\}}} & \banglaitalic{আমি বাংলায় কথা বলি।}\\
+\hline
+\end{tabular}
+\end{table}
+
+\subsubsection{\com{banglatranslit}{\{<bangla text here>\}}}
+\texttt{banglatranslit} generates a comprehensive and sophisticated transliteration of Bangla into Latin based on ISO 15919. \texttt{banglatranslit} works on character, word, and sentences as well.\\
+\begin{table}[H]
+\centering
+\begin{tabular}{|c|c|}
+\hline
+\textbf{Command} & \textbf{Output} \\
+\hline
+\texttt{\com{banglatranslit}{\{\banglatext{আমি বাংলায় কথা বলি।}\}}} & \banglatranslit{আমি বাংলায় কথা বলি।}\\
+\hline
+\end{tabular}
+\end{table}
+
+\subsubsection{\com{banglaipa}{\{<bangla text here>\}}}
+\texttt{banglaipa} generates equivalent International Phonetic Alphabets(IPA) symbols for Bangla alphabets. \texttt{banglaipa} works on character, word, and sentences as well.\\
+\begin{table}[H]
+\centering
+\begin{tabular}{|c|c|}
+\hline
+\textbf{Command} & \textbf{Output} \\
+\hline
+\texttt{\com{banglaipa}{\{\banglatext{আমি বাংলায় কথা বলি।}\}}} & \banglaipa{আমি বাংলায় কথা বলি।}\\
+\hline
+\end{tabular}
+\end{table}
+
+\subsection{Without Parameter Definitions}
+In this subsection, we have demonstrated the commands that require no parameter at all.
+
+\subsubsection{\com{banglapage}{}}
+\texttt{banglapage} produces bangla page numbering. \texttt{banglapage} does not need any parameters.
+Put \texttt{banglapage} command before \textbackslash begin\{document\} command. Such as:\\
+\com{banglapage}{}
+
+
+
+\subsubsection{\com{banglasection}{}}
+\texttt{banglasection} produces bangla numbering for all sections in the article including all subsections. \texttt{banglasection} does not need any parameters.
+Put \texttt{banglasection} command before \textbackslash begin\{document\} command. Such as:\\
+\com{banglasection}{}
+
+
+\subsubsection{\com{banglaenumerate}{}}
+\texttt{banglaenumerate} produces level-2 bangla numbering for enumerate or the list in latex for the whole article. \texttt{banglaenumerate} does not need any parameters.
+Put \texttt{banglaenumerate} command before \textbackslash begin\{document\} command or anywhere above the enumerate. Such as:\\
+\com{banglaenumerate}{}
+
+
+\subsubsection{\com{banglaequation}{}}
+\texttt{banglaequation} produces bangla numbering for all equations in the whole article. \texttt{banglaequation} does not need any parameters.
+Put \texttt{banglaequation} command before \textbackslash begin\{document\} command or anywhere above the equations. Such as:\\
+\com{banglaequation}{}
+
+\subsubsection{\com{banglatable}{}}
+\texttt{banglatable} produces bangla numbering for all tables in the whole article. \texttt{banglatable} does not need any parameters.
+Put \texttt{banglatable} command before \textbackslash begin\{document\} command or anywhere above the tables. Such as:\\
+\com{banglatable}{}
+
+
+\subsubsection{\com{banglafigure}{}}
+\texttt{banglafigure} produces bangla numbering for all figures/images in the whole article. \texttt{banglafigure} does not need any parameters.
+Put \texttt{banglafigure} command before \textbackslash begin\{document\} command or anywhere above the figures. Such as:\\
+\com{banglafigure}{}
+
+
+\section{Reporting issues}
+To report any error or issue please send an email at nahid@cse.uiu.ac.bd or mailbox.nahid@gmail.com.
+\section{Revision History}
+Version 1.5 solved font licence issues and fixed some bugs.\\
+Version 1.0 primary version.\\
+
+\end{document}
diff --git a/Master/texmf-dist/fonts/truetype/public/bangla/doulos.ttf b/Master/texmf-dist/fonts/truetype/public/bangla/doulos.ttf
new file mode 100644
index 00000000000..095e26f4027
--- /dev/null
+++ b/Master/texmf-dist/fonts/truetype/public/bangla/doulos.ttf
Binary files differ
diff --git a/Master/texmf-dist/fonts/truetype/public/bangla/fontkalpurush.ttf b/Master/texmf-dist/fonts/truetype/public/bangla/fontkalpurush.ttf
new file mode 100644
index 00000000000..537cf8da5b7
--- /dev/null
+++ b/Master/texmf-dist/fonts/truetype/public/bangla/fontkalpurush.ttf
Binary files differ
diff --git a/Master/texmf-dist/fonts/truetype/public/bangla/fontshimanto.ttf b/Master/texmf-dist/fonts/truetype/public/bangla/fontshimanto.ttf
new file mode 100644
index 00000000000..12a7edff34d
--- /dev/null
+++ b/Master/texmf-dist/fonts/truetype/public/bangla/fontshimanto.ttf
Binary files differ
diff --git a/Master/texmf-dist/tex/latex/bangla/bangla.sty b/Master/texmf-dist/tex/latex/bangla/bangla.sty
new file mode 100644
index 00000000000..2ad61d1bce9
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/bangla/bangla.sty
@@ -0,0 +1,281 @@
+% Copyright at Nahid Hossain
+% nahid@cse.uiu.ac.bd / mailbox.nahid@gmail.com
+\NeedsTeXFormat{LaTeX2e}[1994/06/01]
+\ProvidesPackage{bangla}[2021/05/13]
+\RequirePackage{fontspec}
+\RequirePackage{etoolbox}
+\RequirePackage{polyglossia}
+
+\setmainlanguage{english}
+\setotherlanguage{bengali}
+\newfontface\translitfont{Noto Serif}
+\newfontface\banglaipafont{Doulos SIL}
+
+\makeatletter
+\def\zztable#1{#1}
+\def\zzrow#1#2{\expandafter\gdef\csname B-#2\endcsname{#1}}
+\def\banglaipa#1{\banglaipafont\xgenerateTransliteration#1@}
+\def\xgenerateTransliteration{\futurelet\tmp\xxgenerateTransliteration}
+\def\xxgenerateTransliteration{%
+\ifx\tmp\@sptoken\space\fi
+\xxxgenerateTransliteration
+}
+\def\xxxgenerateTransliteration#1{%
+\expandafter\ifx\csname B-#1\endcsname\relax?%
+\expandafter\show\csname B-#1\endcsname
+\fi
+\csname B-#1\endcsname
+\xgenerateTransliteration}
+\expandafter\def\csname B-@\endcsname#1{}
+\input{banglamap}
+\makeatother
+
+\makeatletter
+\long\def\@gobbletorelax#1\relax{}
+\newcommand\bengalinum[1]{\expandafter\@bengalinum\csname c@#1\endcsname}
+\newcommand\@bengalinum[1]{\expandafter\@bengalinum@\the#1\relax}
+\newcommand\@bengalinum@[1]
+ {%
+ \@gobbletorelax#1\@bengalinum@end\relax
+ \@bengalinum@digit{#1}%
+ }
+\newcommand\@bengalinum@digit[1]
+ {%
+ \ifcase#1
+ \banglatext{০}\or % 0
+ \banglatext{১}\or % 1
+ \banglatext{২}\or % 2
+ \banglatext{৩}\or % 3
+ \banglatext{৪}\or % 4
+ \banglatext{৫}\or % 5
+ \banglatext{৬}\or % 6
+ \banglatext{৭}\or % 7
+ \banglatext{৮}\or % 8
+ \banglatext{৯}\fi % 9
+ \@bengalinum@
+ }
+\def\@bengalinum@end#1\@bengalinum@digit#2{}
+\makeatother
+\newcommand{\banglapage}{\renewcommand\thepage{\bengalinum{page}}}
+\newcommand{\banglasection}{\renewcommand*\thesection{\bengalinum{section}}
+\renewcommand*\thesubsection{\thesection.\bengalinum{subsection}}}
+
+\newcommand{\banglaequation}{\renewcommand\theequation{\bengalinum{equation}}}
+
+\newcommand{\banglatable}{\renewcommand\thetable{\bengalinum{table}}}
+\newcommand{\banglafigure}{\renewcommand\thefigure{\bengalinum{figure}}}
+
+\makeatletter
+\long\def\@gobbletorelax#1\relax{}
+\newcommand\bengalialpha[1]{\expandafter\@bengalialpha\csname c@#1\endcsname}
+\newcommand\@bengalialpha[1]{\expandafter\@bengalialpha@\the#1\relax}
+\newcommand\@bengalialpha@[1]
+ {%
+ \@gobbletorelax#1\@bengalialpha@end\relax
+ \@bengalialpha@digit{#1}%
+ }
+\newcommand\@bengalialpha@digit[1]
+ {%
+ \ifcase#1
+ \banglatext{ক}\or % 0
+ \banglatext{ক}\or % 0
+ \banglatext{খ}\or % 1
+ \banglatext{গ}\or % 2
+ \banglatext{ঘ}\or % 3
+ \banglatext{ঙ}\or % 4
+ \banglatext{চ}\or % 5
+ \banglatext{ছ}\or % 6
+ \banglatext{জ}\or % 7
+ \banglatext{ঝ}\or % 8
+ \banglatext{ঞ}\fi % 9
+ \@bengalialpha@
+ }
+\def\@bengalialpha@end#1\@bengalialpha@digit#2{}
+\makeatother
+
+\newcommand{\banglaenumerate}{\renewcommand\theenumi{\bengalinum{enumi}}\renewcommand\theenumii{\bengalialpha{enumii}}}
+
+
+%\newcommand{\banglasubsectionnum}{\renewcommand\thesection{\bengalinumeral{section}}}
+
+
+\ExplSyntaxOn
+\tl_new:N \l_mytrans_tl
+
+% transliteration
+\NewDocumentCommand{\indictrans}{ m }
+{
+\tl_set:Nn \l_mytrans_tl { #1 }
+\doindictrans
+ { \translitfont
+ \tl_use:N \l_mytrans_tl
+ }
+}
+
+% text (transliteration)
+\NewDocumentCommand{\banglatranslit}{ m }
+{
+\tl_set:Nn \l_mytrans_tl { #1 }
+\doindictrans
+ { \translitfont
+ \tl_use:N \l_mytrans_tl
+ }
+}
+
+% multi-line environment
+\NewDocumentEnvironment{isoindictranse}{ +b }
+{
+\tl_set:Nn \l_mytrans_tl { #1 }
+\doindictrans
+%\bengalifont
+ { \translitfont
+ \tl_use:N \l_mytrans_tl
+ }
+}
+{ }
+
+% the mapping
+\newcommand\doindictrans{
+\tl_replace_all:Nnn \l_mytrans_tl { ড় } { r^^^^0323a }
+\tl_replace_all:Nnn \l_mytrans_tl { ঢ় } { r^^^^0323ha }
+\tl_replace_all:Nnn \l_mytrans_tl { য় } { y^^^^0307a }
+\tl_replace_all:Nnn \l_mytrans_tl { ক় } { qa }
+\tl_replace_all:Nnn \l_mytrans_tl { খ় } { k͟ha }
+\tl_replace_all:Nnn \l_mytrans_tl { গ় } { g^^^^0307a }
+\tl_replace_all:Nnn \l_mytrans_tl { জ় } { za }
+\tl_replace_all:Nnn \l_mytrans_tl { ফ় } { fa }
+\tl_replace_all:Nnn \l_mytrans_tl { অ } { a }
+\tl_replace_all:Nnn \l_mytrans_tl { আ } { ā }
+\tl_replace_all:Nnn \l_mytrans_tl { ই } { i }
+\tl_replace_all:Nnn \l_mytrans_tl { ঈ } { ī }
+\tl_replace_all:Nnn \l_mytrans_tl { উ } { u }
+\tl_replace_all:Nnn \l_mytrans_tl { ঊ } { ū }
+\tl_replace_all:Nnn \l_mytrans_tl { ঋ } { r̥ }
+\tl_replace_all:Nnn \l_mytrans_tl { ৠ } { r̥̄ }
+\tl_replace_all:Nnn \l_mytrans_tl { ঌ } { l̥ }
+\tl_replace_all:Nnn \l_mytrans_tl { ৡ } { l̥̄ }
+\tl_replace_all:Nnn \l_mytrans_tl { এ } { ē }
+\tl_replace_all:Nnn \l_mytrans_tl { ঐ } { ai }
+\tl_replace_all:Nnn \l_mytrans_tl { ও } { ō }
+\tl_replace_all:Nnn \l_mytrans_tl { ঔ } { au }
+\tl_replace_all:Nnn \l_mytrans_tl { ং } { ṁ }
+\tl_replace_all:Nnn \l_mytrans_tl { ঁ } { m̐ }
+\tl_replace_all:Nnn \l_mytrans_tl { ঃ } { ḥ }
+\tl_replace_all:Nnn \l_mytrans_tl { ক } { ka }
+\tl_replace_all:Nnn \l_mytrans_tl { খ } { kha }
+\tl_replace_all:Nnn \l_mytrans_tl { গ } { ga }
+\tl_replace_all:Nnn \l_mytrans_tl { ঘ } { gha }
+\tl_replace_all:Nnn \l_mytrans_tl { ঙ } { ṅa }
+\tl_replace_all:Nnn \l_mytrans_tl { চ } { ca }
+\tl_replace_all:Nnn \l_mytrans_tl { ছ } { cha }
+\tl_replace_all:Nnn \l_mytrans_tl { জ } { ja }
+\tl_replace_all:Nnn \l_mytrans_tl { ঝ } { jha }
+\tl_replace_all:Nnn \l_mytrans_tl { ঞ } { ña }
+\tl_replace_all:Nnn \l_mytrans_tl { ট } { ṭa }
+\tl_replace_all:Nnn \l_mytrans_tl { ঠ } { ṭha }
+\tl_replace_all:Nnn \l_mytrans_tl { ড } { ḍa }
+\tl_replace_all:Nnn \l_mytrans_tl { ঢ } { ḍha }
+\tl_replace_all:Nnn \l_mytrans_tl { ণ } { ṇa }
+\tl_replace_all:Nnn \l_mytrans_tl { ত } { ta }
+\tl_replace_all:Nnn \l_mytrans_tl { থ } { tha }
+\tl_replace_all:Nnn \l_mytrans_tl { দ } { da }
+\tl_replace_all:Nnn \l_mytrans_tl { ধ } { dha }
+\tl_replace_all:Nnn \l_mytrans_tl { ন } { na }
+\tl_replace_all:Nnn \l_mytrans_tl { প } { pa }
+\tl_replace_all:Nnn \l_mytrans_tl { ফ } { pha }
+\tl_replace_all:Nnn \l_mytrans_tl { ব } { ba }
+\tl_replace_all:Nnn \l_mytrans_tl { ভ } { bha }
+\tl_replace_all:Nnn \l_mytrans_tl { ম } { ma }
+\tl_replace_all:Nnn \l_mytrans_tl { য } { ya }
+\tl_replace_all:Nnn \l_mytrans_tl { র } { ra }
+\tl_replace_all:Nnn \l_mytrans_tl { ৰ } { ra }
+\tl_replace_all:Nnn \l_mytrans_tl { ল } { la }
+\tl_replace_all:Nnn \l_mytrans_tl { ৱ } { va }
+\tl_replace_all:Nnn \l_mytrans_tl { শ } { śa }
+\tl_replace_all:Nnn \l_mytrans_tl { ষ } { ṣa }
+\tl_replace_all:Nnn \l_mytrans_tl { স } { sa }
+\tl_replace_all:Nnn \l_mytrans_tl { হ } { ha }
+\tl_replace_all:Nnn \l_mytrans_tl { ঽ } { ’ }
+\tl_replace_all:Nnn \l_mytrans_tl { । } { . }
+\tl_replace_all:Nnn \l_mytrans_tl { া } { -ā }
+\tl_replace_all:Nnn \l_mytrans_tl { ি } { -i }
+\tl_replace_all:Nnn \l_mytrans_tl { ী } { -ī }
+\tl_replace_all:Nnn \l_mytrans_tl { ু } { -u }
+\tl_replace_all:Nnn \l_mytrans_tl { ূ } { -ū }
+\tl_replace_all:Nnn \l_mytrans_tl { ৃ } { -r }
+\tl_replace_all:Nnn \l_mytrans_tl { ৄ } { -rr }
+\tl_replace_all:Nnn \l_mytrans_tl { ে } { -e }
+\tl_replace_all:Nnn \l_mytrans_tl { ৈ } { -ai }
+\tl_replace_all:Nnn \l_mytrans_tl { ো } { -o }
+\tl_replace_all:Nnn \l_mytrans_tl { ৌ } { -au }
+\tl_replace_all:Nnn \l_mytrans_tl { ্ } { virama }
+\tl_replace_all:Nnn \l_mytrans_tl { ৎ } { t }
+\tl_replace_all:Nnn \l_mytrans_tl { ৗ } { - }
+\tl_replace_all:Nnn \l_mytrans_tl { ০ } { 0 }
+\tl_replace_all:Nnn \l_mytrans_tl { ১ } { 1 }
+\tl_replace_all:Nnn \l_mytrans_tl { ২ } { 2 }
+\tl_replace_all:Nnn \l_mytrans_tl { ৩ } { 3 }
+\tl_replace_all:Nnn \l_mytrans_tl { ৪ } { 4 }
+\tl_replace_all:Nnn \l_mytrans_tl { ৫ } { 5 }
+\tl_replace_all:Nnn \l_mytrans_tl { ৬ } { 6 }
+\tl_replace_all:Nnn \l_mytrans_tl { ৭ } { 7 }
+\tl_replace_all:Nnn \l_mytrans_tl { ৮ } { 8 }
+\tl_replace_all:Nnn \l_mytrans_tl { ৯ } { 9 }
+
+
+% tidy-up: inherent a, etc
+\regex_replace_all:nnN { a\-(ai) } { \1 } \l_mytrans_tl
+\regex_replace_all:nnN { a\-(au) } { \1 } \l_mytrans_tl
+\regex_replace_all:nnN { a\-([āiueoīū]{1}) } { \1 } \l_mytrans_tl
+\regex_replace_all:nnN { a\-(rr) } { \1 } \l_mytrans_tl
+\regex_replace_all:nnN { a\-(r) } { \1 } \l_mytrans_tl
+\tl_replace_all:Nnn \l_mytrans_tl { avirama } { }
+\tl_replace_all:Nnn \l_mytrans_tl { ṁ } { ng }
+\regex_replace_all:nnN { \-([āiueoīū]{1}) } { \1 } \l_mytrans_tl
+%...
+}
+\ExplSyntaxOff
+
+\newtoggle{langen}
+\DeclareOption{shimanto}{\newcommand{\fooA}{font1}}
+\DeclareOption{notosansbengali}{\newcommand{\fooA}{font2}}
+\DeclareOption{notoserifbengali}{\newcommand{\fooA}{font3}}
+\DeclareOption{kalpurush}{\newcommand{\fooA}{font4}}
+\ProcessOptions
+
+\ifdefstring{\fooA}{font1}{
+\newfontface{\banglatext}{fontshimanto.ttf}
+\newfontfamily{\banglabold}{fontshimanto.ttf}[FakeBold=4.0]
+\newfontfamily{\banglaitalic}{fontshimanto.ttf}[FakeSlant=0.2]
+}
+{
+ \ifdefstring{\fooA}{font2}{
+ \newfontface\banglatext{Noto Sans Bengali}
+ \newfontfamily{\banglabold}{Noto Sans Bengali}[FakeBold=4.0]
+ \newfontfamily{\banglaitalic}{Noto Sans Bengali}[FakeSlant=0.2]
+ }
+ {
+ \ifdefstring{\fooA}{font3}{
+ \newfontface\banglatext{Noto Serif Bengali}
+ \newfontfamily{\banglabold}{Noto Serif Bengali}[FakeBold=4.0]
+ \newfontfamily{\banglaitalic}{Noto Serif Bengali}[FakeSlant=0.2]
+ }
+ {
+ \ifdefstring{\fooA}{font4}{
+ \newfontface{\banglatext}{fontkalpurush.ttf}
+ \newfontfamily{\banglabold}{fontkalpurush.ttf}[FakeBold=4.0]
+ \newfontfamily{\banglaitalic}{fontkalpurush.ttf}[FakeSlant=0.2]
+ }
+ {
+ \newfontface{\banglatext}{fontkalpurush.ttf}
+ \newfontfamily{\banglabold}{fontkalpurush.ttf}[FakeBold=4.0]
+ \newfontfamily{\banglaitalic}{fontkalpurush.ttf}[FakeSlant=0.2]
+ }
+
+ }
+ }
+
+}
+
+
+
diff --git a/Master/texmf-dist/tex/latex/bangla/banglamap.tex b/Master/texmf-dist/tex/latex/bangla/banglamap.tex
new file mode 100644
index 00000000000..3c3c1e8c952
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/bangla/banglamap.tex
@@ -0,0 +1,81 @@
+\zztable{
+\zzrow{0}{০}
+\zzrow{1}{১}
+\zzrow{2}{২}
+\zzrow{3}{৩}
+\zzrow{4}{৪}
+\zzrow{5}{৫}
+\zzrow{6}{৬}
+\zzrow{7}{৭}
+\zzrow{8}{৮}
+\zzrow{9}{৯}
+\zzrow{.}{।}
+\zzrow{,}{,}
+\zzrow{a}{া}
+\zzrow{i}{ি}
+\zzrow{i}{ী}
+\zzrow{u}{ু}
+\zzrow{ū}{ূ}
+\zzrow{r̥i}{ৃ}
+\zzrow{ɔo̯}{ো}
+\zzrow{ē}{ে}
+\zzrow{oi̯}{ৈ}
+\zzrow{ou̯}{ৌ}
+\zzrow{ɔ}{অ}
+\zzrow{a}{আ}
+\zzrow{i}{ই}
+\zzrow{i}{ঈ}
+\zzrow{u}{উ}
+\zzrow{u}{ঊ}
+\zzrow{r̥i}{ঋ}
+\zzrow{e}{এ}
+\zzrow{oi̯}{ঐ}
+\zzrow{o}{ও}
+\zzrow{ou̯}{ঔ}
+\zzrow{ŋ}{ং}
+\zzrow{̃}{ঁ}
+\zzrow{ḥ}{ঃ}
+\zzrow{t}{ৎ}
+\zzrow{k}{ক}
+\zzrow{kʰ}{খ}
+\zzrow{ɡ}{গ}
+\zzrow{ɡʱ}{ঘ}
+\zzrow{ŋ}{ঙ}
+\zzrow{tʃ}{চ}
+\zzrow{tʃʰ}{ছ}
+\zzrow{dʒ}{জ}
+\zzrow{dʒʱ}{ঝ}
+\zzrow{n}{ঞ}
+\zzrow{ʈ}{ট}
+\zzrow{ʈʰ}{ঠ}
+\zzrow{ɖ}{ড}
+\zzrow{ɖʱ}{ঢ}
+\zzrow{ɽ}{ড়}\zzrow{ɽ}{ড়}
+\zzrow{ɽ}{ঢ়}\zzrow{ɽ}{ঢ়}
+\zzrow{n}{ণ}
+\zzrow{t}{ত}
+\zzrow{tʰ}{থ}
+\zzrow{d}{দ}
+\zzrow{dʱ}{ধ}
+\zzrow{n}{ন}
+\zzrow{p}{প}
+\zzrow{pʰ}{ফ}
+\zzrow{b}{ব}
+\zzrow{bʱ}{ভ}
+\zzrow{m}{ম}
+\zzrow{dʒ}{য}
+\zzrow{ʲ}{য়}\zzrow{ʲ}{য়}
+\zzrow{r}{র}
+\zzrow{l}{ল}
+\zzrow{ʃ}{শ}
+\zzrow{ʃ}{ষ}
+\zzrow{ʃ}{স}
+\zzrow{ɦ}{হ}
+\zzrow{’}{ঽ}
+\zzrow{q}{ক়}
+\zzrow{k͟h}{খ়}
+\zzrow{ġ}{গ়}
+\zzrow{z}{জ়}
+\zzrow{f}{ফ়}
+}
+
diff --git a/Master/tlpkg/bin/tlpkg-ctan-check b/Master/tlpkg/bin/tlpkg-ctan-check
index cd0cbaa12dc..237f413fa1a 100755
--- a/Master/tlpkg/bin/tlpkg-ctan-check
+++ b/Master/tlpkg/bin/tlpkg-ctan-check
@@ -82,7 +82,7 @@ my @TLP_working = qw(
babel-spanish babel-swedish babel-thai babel-turkish babel-ukrainian
babel-vietnamese babel-welsh
babelbib background backnaur baekmuk
- bagpipe bangorcsthesis bangorexam bangtex bankstatement
+ bagpipe bangla bangorcsthesis bangorexam bangtex bankstatement
barcodes bardiag barr barracuda bartel-chess-fonts bashful basicarith
baskervald baskervaldx baskervillef
basque-book basque-date bath-bst
diff --git a/Master/tlpkg/libexec/ctan2tds b/Master/tlpkg/libexec/ctan2tds
index a3d514dea9c..726b7fc0639 100755
--- a/Master/tlpkg/libexec/ctan2tds
+++ b/Master/tlpkg/libexec/ctan2tds
@@ -1849,6 +1849,7 @@ $standardtex
'babel-georgian', 'georgiancaps\.tex|' . $standardtex,
'babelbib', '\.bdf|\.sty',
'bagpipe', 'bagpipex?\.(tex|ini)',
+ 'bangla', 'banglamap\.tex|' . $standardtex,
'bangtex', 'bangfont\.tex|' . $standardtex,
'bangorcsthesis', 'Bangor-Logo\.tex|' . $standardtex,
'bardiag', '\.bar|\.sty|\.cfg',
diff --git a/Master/tlpkg/tlpsrc/bangla.tlpsrc b/Master/tlpkg/tlpsrc/bangla.tlpsrc
new file mode 100644
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlpsrc/bangla.tlpsrc
diff --git a/Master/tlpkg/tlpsrc/collection-langother.tlpsrc b/Master/tlpkg/tlpsrc/collection-langother.tlpsrc
index db05e3c141b..ff77211e60e 100644
--- a/Master/tlpkg/tlpsrc/collection-langother.tlpsrc
+++ b/Master/tlpkg/tlpsrc/collection-langother.tlpsrc
@@ -22,6 +22,7 @@ depend babel-malay
depend babel-sorbian
depend babel-thai
depend babel-vietnamese
+depend bangla
depend bangtex
depend bengali
depend burmese