summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2020-06-09 20:36:41 +0000
committerKarl Berry <karl@freefriends.org>2020-06-09 20:36:41 +0000
commitbf2f7f8c799ec33913ca367cb6917300cbec570c (patch)
tree7f0024ea153f86dcfc06003eae7beb2c064f590a
parent1160927a8602c14c2a6c4dd058dc6726394c8b8b (diff)
hvarabic (8jun20)
git-svn-id: svn://tug.org/texlive/trunk@55495 c570f23f-e606-0410-a88d-b1316a301751
-rw-r--r--Master/texmf-dist/doc/latex/hvarabic/CHANGELOG1
-rw-r--r--Master/texmf-dist/doc/latex/hvarabic/README.md16
-rw-r--r--Master/texmf-dist/doc/latex/hvarabic/hvarabic.pdfbin0 -> 170869 bytes
-rw-r--r--Master/texmf-dist/doc/latex/hvarabic/hvarabic.tex372
-rw-r--r--Master/texmf-dist/tex/latex/hvarabic/hvarabic.sty66
-rwxr-xr-xMaster/tlpkg/bin/tlpkg-ctan-check2
-rwxr-xr-xMaster/tlpkg/libexec/ctan2tds1
-rw-r--r--Master/tlpkg/tlpsrc/collection-langarabic.tlpsrc1
-rw-r--r--Master/tlpkg/tlpsrc/hvarabic.tlpsrc0
9 files changed, 458 insertions, 1 deletions
diff --git a/Master/texmf-dist/doc/latex/hvarabic/CHANGELOG b/Master/texmf-dist/doc/latex/hvarabic/CHANGELOG
new file mode 100644
index 00000000000..feeb6b920f6
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/hvarabic/CHANGELOG
@@ -0,0 +1 @@
+0.01 2020-06-08 - first CTAN version
diff --git a/Master/texmf-dist/doc/latex/hvarabic/README.md b/Master/texmf-dist/doc/latex/hvarabic/README.md
new file mode 100644
index 00000000000..9e0418faf41
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/hvarabic/README.md
@@ -0,0 +1,16 @@
+# hvarabic.sty
+
+The package provides some macros for typesetting right to left text.
+Mainly for the arabic language, but it can also be used for
+other RTL languages
+
+%% It may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3c
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%% http://www.latex-project.org/lppl.txt
+%% and version 1.3c or later is part of all distributions of LaTeX
+%% version 2005/12/01 or later.
+
+
+hvoss@tug.org \ No newline at end of file
diff --git a/Master/texmf-dist/doc/latex/hvarabic/hvarabic.pdf b/Master/texmf-dist/doc/latex/hvarabic/hvarabic.pdf
new file mode 100644
index 00000000000..476d1bf3565
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/hvarabic/hvarabic.pdf
Binary files differ
diff --git a/Master/texmf-dist/doc/latex/hvarabic/hvarabic.tex b/Master/texmf-dist/doc/latex/hvarabic/hvarabic.tex
new file mode 100644
index 00000000000..8b879fdfdac
--- /dev/null
+++ b/Master/texmf-dist/doc/latex/hvarabic/hvarabic.tex
@@ -0,0 +1,372 @@
+%% $Id: fbox.tex 1128 2020-01-03 20:57:59Z herbert $
+%
+\listfiles\setcounter{errorcontextlines}{100}
+\documentclass[paper=a4,fontsize=11pt,DIV=13,parskip=half-,
+ captions=tableabove,twoside=on]{scrartcl}
+\usepackage{fontspec}
+\setmainfont{AccanthisADFStdNo3}[
+ UprightFont =*-Regular,
+ BoldFont =*-Bold,
+ ItalicFont =*-Italic,
+ BoldItalicFont=*-BoldItalic,
+ RawFeature = -rlig,
+]
+\setsansfont{GilliusADF}[
+ UprightFont =*-Regular,
+ BoldFont =*-Bold,
+ ItalicFont =*-Italic,
+ BoldItalicFont=*-BoldItalic,
+ RawFeature = -rlig,
+]
+\setmonofont{Anonymous Pro}[Scale=MatchLowercase,FakeStretch=0.9]
+
+\usepackage[english]{babel}
+\usepackage{scrlayer-scrpage}
+\usepackage{showexpl}
+\usepackage{dtk-extern,xcolor}
+\lstset{basicstyle=\hvALM\small,language=[LaTeX]TeX,rframe=}
+
+\setkeys{dtk}{cleanup,force=false}
+
+\def\Lfile#1{\texttt{#1}\index{#1 file@\texttt{#1} file}}
+\def\Lext#1{\texttt{.#1}\index{#1 file extension@\texttt{.#1} file extension}}
+\def\Lcs#1{\texttt{\textbackslash#1}\index{#1@\texttt{\textbackslash#1}}}
+\def\Lenv#1{\texttt{#1}\index{#1 environment@\texttt{#1} environment}}
+\def\Lpack#1{\texttt{#1}\index{#1 package@\texttt{#1} package}}
+\def\Lprog#1{\texttt{#1}\index{#1 program@\texttt{#1} program}}
+\def\Loption#1{\texttt{#1}\index{#1@\texttt{#1} package option}}
+\let\Ldim\Lcs
+
+%\usepackage[bibstyle=dtk]{biblatex}
+%\addbibresource{\jobname.bib}
+
+
+\makeatletter% from: doc.sty
+\newcommand*\GetFileInfo[1]{%
+ \def\filename{#1}%
+ \def\@tempb##1 ##2 ##3\relax##4\relax{%
+ \def\filedate{##1}%
+ \def\fileversion{##2}%
+ \def\fileinfo{##3}}%
+ \edef\@tempa{\csname ver@#1\endcsname}%
+ \expandafter\@tempb\@tempa\relax? ? \relax\relax}
+\makeatother
+
+%\GetFileInfo{xltabular.sty}
+\usepackage{xspace}
+\usepackage{hvarabic}
+\def\setVersion#1{\setVVersion#1!!}
+\def\setVVersion#1=#2!!{\def\hvarabicVersion{#2}}
+
+\usepackage[imakeidx]{xindex}
+\makeindex
+
+\usepackage{url}
+\usepackage[colorlinks,linktocpage]{hyperref}
+
+
+\setVersion{version = 0.01}%
+
+\title{Package \texttt{hvarabic} \\--\\ Provide macros for RTL typesetting. \\ \normalsize \hvarabicVersion\ (\today)}
+\author{Herbert Voß\thanks{\url{hvoss@tug.org}}}
+\begin{document}
+\maketitle
+%\tableofcontents
+
+\section{Package option}
+
+By default a footnoterule is set from left to right, with left-to-right (LTR) and also with right-to-left (RTL) text.
+Using the optional package argument \Loption{RTLfootnoterule} forces \LaTeX\ to draw the footnoterule also von right to left:
+
+\let\myFont\hvALM
+
+\begin{Verbatim}[fontfamily=myFont,frame=single,label=Source]
+[...]
+\usepackage{hvarabic}% the default
+[...]
+\begin{RTL}
+فقرة عربية محاذاة إلى اليمين فقرة عربية محاذاة إلى اليمين \nLTR{١٢٣٤٥} فقرة عربية
+محاذاة إلى اليمين فقرة عربية محاذاة إلى اليمين فقرة عربية محاذاة إلى اليمين
+فقرة عربية محاذاة إلى اليمين فقرة عربية محاذاة إلى اليمين فقرة عربية محاذاة إلى
+اليمين فقرة عربية محاذاة إلى اليمين فقرة عربية محاذاة إلى
+اليمين\RTLfootnote{حاشية عربية.} فقرة عربية محاذاة إلى اليمين.
+\end{RTL}
+\end{Verbatim}
+
+
+
+
+\begin{externalDocument}[
+% grfOptions={width=\dimexpr\linewidth-2\fboxsep-2\fboxrule},
+ pages={1},
+ frame,
+ compiler=lualatex,
+ crop,
+ force,
+ xindex,
+ runs=2,code=false,docType=latex,
+ align=\centering,
+ lstOptions={columns=fixed}]{hvarabic}
+\documentclass[paper=a6,paper=landscape,DIV=13]{scrartcl}
+\textheight=0.6\textheight %% Only for demo
+%StartVisiblePreamble
+\usepackage{hvarabic}
+%StopVisiblePreamble
+\pagestyle{empty}
+\begin{document}
+\begin{RTL}
+فقرة عربية محاذاة إلى اليمين فقرة عربية محاذاة إلى اليمين \nLTR{١٢٣٤٥} فقرة عربية
+محاذاة إلى اليمين فقرة عربية محاذاة إلى اليمين فقرة عربية محاذاة إلى اليمين
+فقرة عربية محاذاة إلى اليمين فقرة عربية محاذاة إلى اليمين فقرة عربية محاذاة إلى
+اليمين فقرة عربية محاذاة إلى اليمين فقرة عربية محاذاة إلى
+اليمين\RTLfootnote{حاشية عربية.} فقرة عربية محاذاة إلى اليمين.
+\end{RTL}
+\end{document}
+\end{externalDocument}
+
+\begin{Verbatim}[fontfamily=myFont,frame=single,label=Source]
+[...]
+\usepackage[RTLfootnoterule]{hvarabic}% draw footnoterule also RTL!
+[...]
+\begin{RTL}
+فقرة عربية محاذاة إلى اليمين فقرة عربية محاذاة إلى اليمين \nLTR{١٢٣٤٥} فقرة عربية
+محاذاة إلى اليمين فقرة عربية محاذاة إلى اليمين فقرة عربية محاذاة إلى اليمين
+فقرة عربية محاذاة إلى اليمين فقرة عربية محاذاة إلى اليمين فقرة عربية محاذاة إلى
+اليمين فقرة عربية محاذاة إلى اليمين فقرة عربية محاذاة إلى
+اليمين\RTLfootnote{حاشية عربية.} فقرة عربية محاذاة إلى اليمين.
+\end{RTL}
+\end{Verbatim}
+
+
+
+
+\begin{externalDocument}[
+% grfOptions={width=\dimexpr\linewidth-2\fboxsep-2\fboxrule},
+ pages={1},
+ frame,
+ compiler=lualatex,
+ crop,
+ force,
+ xindex,
+ runs=2,code=false,docType=latex,
+ align=\centering,
+ lstOptions={columns=fixed}]{hvarabic}
+\documentclass[paper=a6,paper=landscape,DIV=13]{scrartcl}
+\textheight=0.6\textheight %% Only for demo
+%StartVisiblePreamble
+\usepackage[RTLfootnoterule]{hvarabic}
+%StopVisiblePreamble
+\pagestyle{empty}
+\begin{document}
+\begin{RTL}
+فقرة عربية محاذاة إلى اليمين فقرة عربية محاذاة إلى اليمين \nLTR{١٢٣٤٥} فقرة عربية
+محاذاة إلى اليمين فقرة عربية محاذاة إلى اليمين فقرة عربية محاذاة إلى اليمين
+فقرة عربية محاذاة إلى اليمين فقرة عربية محاذاة إلى اليمين فقرة عربية محاذاة إلى
+اليمين فقرة عربية محاذاة إلى اليمين فقرة عربية محاذاة إلى
+اليمين\RTLfootnote{حاشية عربية.} فقرة عربية محاذاة إلى اليمين.
+\end{RTL}
+\end{document}
+\end{externalDocument}
+
+
+\section{Small RTL text sequences}
+
+\begin{verbatim}
+\textRTL{RTL text sequence}
+\end{verbatim}
+
+\begin{Verbatim}[fontfamily=myFont,frame=single,label=Source]
+English text ``\textRTL{جملة عربية وسط جملة إنجليزية}'' with Arabic in between.
+To protect the people of Massachusetts from the COVID-19 pandemic you left your
+classes and, in [...]
+\end{Verbatim}
+
+
+
+
+\begin{externalDocument}[
+% grfOptions={width=\dimexpr\linewidth-2\fboxsep-2\fboxrule},
+ pages={1},
+ frame,
+ compiler=lualatex,
+ crop,
+ force,
+ xindex,
+ runs=2,code=false,docType=latex,
+ align=\centering,
+ lstOptions={columns=fixed}]{hvarabic}
+\documentclass[paper=a6,paper=landscape,DIV=13]{scrartcl}
+%StartVisiblePreamble
+\usepackage[RTLfootnoterule]{hvarabic}
+%StopVisiblePreamble
+\pagestyle{empty}
+\begin{document}
+English text ``\textRTL{جملة عربية وسط جملة إنجليزية}'' with Arabic in between.
+To protect the people of Massachusetts from the COVID-19 pandemic you left your
+classes and, in [...]
+\end{document}
+\end{externalDocument}
+
+
+\section{Long RTL text sequences}
+The macro \Lcs{footnote} is still available but prints the footnote with footnoterule
+left justified. With \Lcs{RTLfootnote} the footnotetext can be printed right justified.
+It depends to current state if the footnoterule should be left or right justified.
+It can be changed by two commands or for the whole document with the package option.
+
+
+\begin{verbatim}
+\begin{RTL}
+...
+\end{RTL}
+\nLTR{digits}% for digits inside Arabic text
+\RTLfootnote{RTL footnote inside RTL environment}
+\setLTRfootnoterule
+\setRTLfootnoterule
+\end{verbatim}
+
+\begin{Verbatim}[fontfamily=myFont,frame=single,label=Source]
+English text ``\textRTL{جملة عربية وسط جملة إنجليزية}'' with Arabic in between.
+To protect the people of Massachusetts from the COVID-19 pandemic you left your
+classes and, in many cases, your home at Harvard to move to a virtual mode of education.
+
+\begin{RTL}
+فقرة عربية محاذاة إلى اليمين فقرة عربية محاذاة إلى اليمين \nLTR{١٢٣٤٥} فقرة عربية
+محاذاة إلى اليمين فقرة عربية محاذاة إلى اليمين فقرة عربية محاذاة إلى اليمين
+فقرة عربية محاذاة إلى اليمين فقرة عربية محاذاة إلى اليمين فقرة عربية محاذاة إلى
+اليمين فقرة عربية محاذاة إلى اليمين فقرة عربية محاذاة إلى
+اليمين\RTLfootnote{حاشية عربية.} فقرة عربية محاذاة إلى اليمين.
+
+لحماية سكان ماساتشوستس من جائحة \nLTR{COVID-19} تركت دروسك ، وفي
+في كثير من الحالات ، منزلك في هارفارد للانتقال إلى وضع التعليم الافتراضي. في نفس الوقت أنت
+صعد لخدمة مجتمعاتك في جميع أنحاء العالم. انتقل بعضكم مباشرة إلى الأمام
+خطوط الوباء ، مثل طلاب كلية الطب بجامعة هارفارد لعام \nLTR{2020} الذين اختاروا التخرج
+في وقت مبكر حتى يتمكنوا من الانضمام إلى القتال وأولئك من T.H. مدرسة تشان للصحة العامة
+تطوع لتوفير نظام تتبع الاتصال لماساتشوستس.
+\end{RTL}
+\end{Verbatim}
+
+
+
+
+\begin{externalDocument}[
+% grfOptions={width=\dimexpr\linewidth-2\fboxsep-2\fboxrule},
+ pages={1},
+ frame,
+ compiler=lualatex,
+ crop,
+ force,
+ xindex,
+ runs=2,code=false,docType=latex,
+ align=\centering,
+ lstOptions={columns=fixed}]{hvarabic}
+\documentclass[paper=a5,paper=landscape,DIV=13]{scrartcl}
+\textheight=0.6\textheight % Only for demo
+%StartVisiblePreamble
+\usepackage[RTLfootnoterule]{hvarabic}
+%StopVisiblePreamble
+\pagestyle{empty}
+\begin{document}
+English text ``\textRTL{جملة عربية وسط جملة إنجليزية}'' with Arabic in between.
+To protect the people of Massachusetts from the COVID-19 pandemic you left your
+classes and, in many cases, your home at Harvard to move to a virtual mode of education.
+
+\begin{RTL}
+فقرة عربية محاذاة إلى اليمين فقرة عربية محاذاة إلى اليمين \nLTR{١٢٣٤٥} فقرة عربية
+محاذاة إلى اليمين فقرة عربية محاذاة إلى اليمين فقرة عربية محاذاة إلى اليمين
+فقرة عربية محاذاة إلى اليمين فقرة عربية محاذاة إلى اليمين فقرة عربية محاذاة إلى
+اليمين فقرة عربية محاذاة إلى اليمين فقرة عربية محاذاة إلى
+اليمين\RTLfootnote{حاشية عربية.} فقرة عربية محاذاة إلى اليمين.
+
+لحماية سكان ماساتشوستس من جائحة \nLTR{COVID-19} تركت دروسك ، وفي
+في كثير من الحالات ، منزلك في هارفارد للانتقال إلى وضع التعليم الافتراضي. في نفس الوقت أنت
+صعد لخدمة مجتمعاتك في جميع أنحاء العالم. انتقل بعضكم مباشرة إلى الأمام
+خطوط الوباء ، مثل طلاب كلية الطب بجامعة هارفارد لعام \nLTR{2020} الذين اختاروا التخرج
+في وقت مبكر حتى يتمكنوا من الانضمام إلى القتال وأولئك من T.H. مدرسة تشان للصحة العامة
+تطوع لتوفير نظام تتبع الاتصال لماساتشوستس.
+\end{RTL}
+\end{document}
+\end{externalDocument}
+
+
+\section{Arabic font}
+The package uses by default the predefined fontface \Lcs{RTLfont}, which defines as
+arabic font Scheherazade and for verbatim text the only possible arabic font with
+monospace, the ALM (Arabic Latin Modern). It is available by using the macro \Lcs{hvALM}
+and is scaled down to 85\%.:
+
+\begin{verbatim}
+\providefamily\RTLfont
+ [Script=Arabic, % to get correct arabic shaping
+ Scale=1.2]{Scheherazade} % whatever Arabic font you like
+\newfontfamily\hvALM{ALM Fixed}[Scale=0.9]
+\end{verbatim}
+
+\section{Global change of the text direction}
+
+The two macros start a new paragraph and then changes the text direction to TRT
+or TLT.
+
+\begin{verbatim}
+\setRTL
+\setLTR
+\end{verbatim}
+
+\begin{Verbatim}[fontfamily=myFont,frame=single,label=Source]
+\setRTL\RTLfont
+لحماية سكان ماساتشوستس من جائحة \nLTR{COVID-19} تركت دروسك ، وفي
+في كثير من الحالات ، منزلك في هارفارد للانتقال إلى وضع التعليم الافتراضي. في نفس الوقت أنت
+صعد لخدمة مجتمعاتك في جميع أنحاء العالم. انتقل بعضكم مباشرة إلى الأمام
+خطوط الوباء ، مثل طلاب كلية الطب بجامعة هارفارد لعام \nLTR{2020} الذين اختاروا التخرج
+في وقت مبكر حتى يتمكنوا من الانضمام إلى القتال وأولئك من T.H. مدرسة تشان للصحة العامة
+تطوع لتوفير نظام تتبع الاتصال لماساتشوستس.
+\setLTR
+لحماية سكان ماساتشوستس من جائحة \nLTR{COVID-19} تركت دروسك ، وفي
+في كثير من الحالات ، منزلك في هارفارد للانتقال إلى وضع التعليم الافتراضي. في نفس الوقت أنت
+صعد لخدمة مجتمعاتك في جميع أنحاء العالم. انتقل بعضكم مباشرة إلى الأمام
+خطوط الوباء ، مثل طلاب كلية الطب بجامعة هارفارد لعام \nLTR{2020} الذين اختاروا التخرج
+في وقت مبكر حتى يتمكنوا من الانضمام إلى القتال وأولئك من T.H. مدرسة تشان للصحة العامة
+تطوع لتوفير نظام تتبع الاتصال لماساتشوستس.
+\end{Verbatim}
+
+
+
+
+\begin{externalDocument}[
+% grfOptions={width=\dimexpr\linewidth-2\fboxsep-2\fboxrule},
+ pages={1},
+ frame,
+ compiler=lualatex,
+ crop,
+ xindex,
+ force,
+ runs=2,code=false,docType=latex,
+ align=\centering,
+ lstOptions={columns=fixed}]{hvarabic}
+\documentclass{scrartcl}
+%StartVisiblePreamble
+\usepackage[RTLfootnoterule]{hvarabic}
+%StopVisiblePreamble
+\pagestyle{empty}
+\begin{document}
+\setRTL\RTLfont
+لحماية سكان ماساتشوستس من جائحة \nLTR{COVID-19} تركت دروسك ، وفي
+في كثير من الحالات ، منزلك في هارفارد للانتقال إلى وضع التعليم الافتراضي. في نفس الوقت أنت
+صعد لخدمة مجتمعاتك في جميع أنحاء العالم. انتقل بعضكم مباشرة إلى الأمام
+خطوط الوباء ، مثل طلاب كلية الطب بجامعة هارفارد لعام \nLTR{2020} الذين اختاروا التخرج
+في وقت مبكر حتى يتمكنوا من الانضمام إلى القتال وأولئك من T.H. مدرسة تشان للصحة العامة
+تطوع لتوفير نظام تتبع الاتصال لماساتشوستس.
+
+\setLTR\bigskip
+لحماية سكان ماساتشوستس من جائحة \nLTR{COVID-19} تركت دروسك ، وفي
+في كثير من الحالات ، منزلك في هارفارد للانتقال إلى وضع التعليم الافتراضي. في نفس الوقت أنت
+صعد لخدمة مجتمعاتك في جميع أنحاء العالم. انتقل بعضكم مباشرة إلى الأمام
+خطوط الوباء ، مثل طلاب كلية الطب بجامعة هارفارد لعام \nLTR{2020} الذين اختاروا التخرج
+في وقت مبكر حتى يتمكنوا من الانضمام إلى القتال وأولئك من T.H. مدرسة تشان للصحة العامة
+تطوع لتوفير نظام تتبع الاتصال لماساتشوستس.
+\end{document}
+\end{externalDocument}
+
+%\printindex
+
+\end{document} \ No newline at end of file
diff --git a/Master/texmf-dist/tex/latex/hvarabic/hvarabic.sty b/Master/texmf-dist/tex/latex/hvarabic/hvarabic.sty
new file mode 100644
index 00000000000..e1d00bacd0b
--- /dev/null
+++ b/Master/texmf-dist/tex/latex/hvarabic/hvarabic.sty
@@ -0,0 +1,66 @@
+%% This is file `hvarabic.sty',
+%%
+%% Copyright (C) 2020
+%% Herbert Voss <hvoss@tug.org>
+%%
+%% It may be distributed and/or modified under the
+%% conditions of the LaTeX Project Public License, either version 1.3c
+%% of this license or (at your option) any later version.
+%% The latest version of this license is in
+%% http://www.latex-project.org/lppl.txt
+%% and version 1.3c or later is part of all distributions of LaTeX
+%% version 2005/12/01 or later.
+%
+% -------------------------------------
+\ProvidesPackage{hvarabic}[2020/06/08 v. 0.01 define macros for RTL typesetting (hv)]
+%
+\RequirePackage{iftex}
+\iftutex
+\else
+ \ExplSyntaxOn
+ \msg_new:nnn {unitconv} {need-lualatex}
+ {
+ The~ hvarabic~ package~ requires~ LuaLaTeX or XeLaTeX.\\\\
+ You~ must~ change~ your~ typesetting~ engine~ to,~
+ "lualatex/xelatex" instead~ of~ "latex", or ~"pdflatex".
+ }
+ \msg_fatal:nn {unitconv} {need-lualatex/xelatex}
+ \ExpSyntaxOff
+ \endinput
+\fi
+
+\RequirePackage{xkeyval,fontspec}
+
+\newif\ifhv@RTLfootnoterule \hv@RTLfootnoterulefalse
+\DeclareOptionX{RTLfootnoterule}[true]{\@nameuse{hv@RTLfootnoterule#1}}
+%
+\ProcessOptionsX\relax
+
+\providefontface\RTLfont
+ [Script=Arabic, % to get correct arabic shaping
+ Scale=1.2]{Scheherazade} % whatever Arabic font you like
+\newfontfamily\hvALM{ALM Fixed}[Scale=0.85]
+\newcommand\textRTL[1]{\bgroup\textdir TRT\RTLfont #1\egroup}% Arabic inside LTR
+\newcommand\nLTR[1]{\bgroup\textdir TLT #1\egroup}% for digits inside Arabic text
+\newcommand\RTLfootnote[1]{\footnote{\textRTL{#1}}}% Arabic footnotes
+
+\ifhv@RTLfootnoterule
+ \newenvironment{RTL}
+ % Arabic paragraph
+ {\setRTLfootnoterule\textdir TRT\pardir TRT\RTLfont}
+ {\setLTRfootnoterule}
+\else
+ \newenvironment{RTL}
+ % Arabic paragraph
+ {\textdir TRT\pardir TRT\RTLfont}
+ {}
+\fi
+\def\setLTRfootnoterule{\let\LTRfootnoterule\footnoterule}
+\def\setRTLfootnoterule{%
+ \global\let\LTRfootnoterule=\footnoterule
+ \gdef\footnoterule{\noindent\parbox{\textwidth}{\hfill\vbox{\LTRfootnoterule}}}}
+
+\def\setRTL{\par\textdir TRT\pardir TRT}
+\def\setLTR{\par\textdir TLT\pardir TLT}
+\endinput
+
diff --git a/Master/tlpkg/bin/tlpkg-ctan-check b/Master/tlpkg/bin/tlpkg-ctan-check
index 9358e634ee2..a11af7196d4 100755
--- a/Master/tlpkg/bin/tlpkg-ctan-check
+++ b/Master/tlpkg/bin/tlpkg-ctan-check
@@ -372,7 +372,7 @@ my @TLP_working = qw(
hletter hlist
hmtrump hobby hobete hobsub hologo hook-pre-commit-pkg horoscop
hpsdiss hrefhide hrlatex
- hu-berlin-bundle hulipsum hustthesis hvfloat hvindex hvqrurl
+ hu-berlin-bundle hulipsum hustthesis hvarabic hvfloat hvindex hvqrurl
hycolor hypdvips hyper hyperbar hypernat hyperref hyperxmp
hyph-utf8 hyphen-base
hyphenat hyphenex hyplain
diff --git a/Master/tlpkg/libexec/ctan2tds b/Master/tlpkg/libexec/ctan2tds
index a80269c12f2..8fca132532d 100755
--- a/Master/tlpkg/libexec/ctan2tds
+++ b/Master/tlpkg/libexec/ctan2tds
@@ -590,6 +590,7 @@ chomp (my $ctan_root = `tlpkginfo --ctan-root`);
'hm-xbs', "die 'skipping, use persian-hm-xbs'",
'html2latex', "die 'skipping, no self-locating of Perl modules'",
'holtxdoc', "die 'skipping, use oberdiek'",
+ 'hvarabic', "&MAKEflatten",
'hvfloat', "&MAKEflatten",
'hvindex', "&MAKEflatten",
'hvqrurl', "&MAKEflatten",
diff --git a/Master/tlpkg/tlpsrc/collection-langarabic.tlpsrc b/Master/tlpkg/tlpsrc/collection-langarabic.tlpsrc
index 4631a183a40..d81c88cd872 100644
--- a/Master/tlpkg/tlpsrc/collection-langarabic.tlpsrc
+++ b/Master/tlpkg/tlpsrc/collection-langarabic.tlpsrc
@@ -15,6 +15,7 @@ depend bidi
depend bidihl
depend dad
depend ghab
+depend hvarabic
depend hyphen-arabic
depend hyphen-farsi
depend imsproc
diff --git a/Master/tlpkg/tlpsrc/hvarabic.tlpsrc b/Master/tlpkg/tlpsrc/hvarabic.tlpsrc
new file mode 100644
index 00000000000..e69de29bb2d
--- /dev/null
+++ b/Master/tlpkg/tlpsrc/hvarabic.tlpsrc