texlive[55222] Master/texmf-dist: xepersian-hm (20may20)

commits+karl at tug.org commits+karl at tug.org
Wed May 20 23:40:09 CEST 2020


Revision: 55222
          http://tug.org/svn/texlive?view=revision&revision=55222
Author:   karl
Date:     2020-05-20 23:40:09 +0200 (Wed, 20 May 2020)
Log Message:
-----------
xepersian-hm (20may20)

Modified Paths:
--------------
    trunk/Master/texmf-dist/doc/xelatex/xepersian-hm/xepersian-hm-doc.ltx
    trunk/Master/texmf-dist/doc/xelatex/xepersian-hm/xepersian-hm-doc.pdf
    trunk/Master/texmf-dist/doc/xelatex/xepersian-hm/xepersian-hm.pdf
    trunk/Master/texmf-dist/source/xelatex/xepersian-hm/xepersian-hm.dtx
    trunk/Master/texmf-dist/tex/xelatex/xepersian-hm/kashida-xepersian-hm.def
    trunk/Master/texmf-dist/tex/xelatex/xepersian-hm/xepersian-hm.sty

Modified: trunk/Master/texmf-dist/doc/xelatex/xepersian-hm/xepersian-hm-doc.ltx
===================================================================
--- trunk/Master/texmf-dist/doc/xelatex/xepersian-hm/xepersian-hm-doc.ltx	2020-05-20 21:39:46 UTC (rev 55221)
+++ trunk/Master/texmf-dist/doc/xelatex/xepersian-hm/xepersian-hm-doc.ltx	2020-05-20 21:40:09 UTC (rev 55222)
@@ -27,7 +27,7 @@
    }
 }
 
-\date{Released \quad 2020-05-12 \quad v0.5e}
+\date{Released \quad 2020-05-20 \quad v0.5f}
 
 \let\tmpthepage\thepage
 \renewcommand{\thepage}{\lr{\Large\textbf\tmpthepage}}
@@ -161,8 +161,8 @@
         xelatex kashida-example.tex}
 
         Please note that this feature is still experimental and is not regarded as stable.
-        If you are going to use this option be ready for unpredictable results. Note that
-        the value of \texttt{Kashida} is mandatory.
+        If you are going to use this option be ready for unpredictable results. Also, note
+        that the value of \texttt{Kashida} is mandatory.
 
       \item \texttt{hrule}: \\
         which uses a horizontal rule (\verb|\hrule|) to stretch the text.

Modified: trunk/Master/texmf-dist/doc/xelatex/xepersian-hm/xepersian-hm-doc.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/xelatex/xepersian-hm/xepersian-hm.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/source/xelatex/xepersian-hm/xepersian-hm.dtx
===================================================================
--- trunk/Master/texmf-dist/source/xelatex/xepersian-hm/xepersian-hm.dtx	2020-05-20 21:39:46 UTC (rev 55221)
+++ trunk/Master/texmf-dist/source/xelatex/xepersian-hm/xepersian-hm.dtx	2020-05-20 21:40:09 UTC (rev 55222)
@@ -67,7 +67,7 @@
 %    }^^A
 % }
 % 
-% \date{Released \quad 2020-05-12 \quad v0.5e}
+% \date{Released \quad 2020-05-20 \quad v0.5f}
 % 
 % \maketitle
 % 
@@ -96,7 +96,7 @@
 \RequirePackage{zref-savepos}[2020-03-03]
 \RequirePackage{xepersian}
 \ExplSyntaxOn
-\ProvidesExplPackage {xepersian-hm} {2020-05-12} {0.5e} { Fixes~issues~in~xepersian~package }
+\ProvidesExplPackage {xepersian-hm} {2020-05-20} {0.5f} { Fixes~issues~in~xepersian~package }
 
 \int_const:Nn \c_xephm_ksh_int {"0640} % kashida
 \int_const:Nn \c_xephm_lrm_int {"200E} % left-right-mark
@@ -209,21 +209,27 @@
     \l_xephm_lig_rlig_tl , { \l_xephm_lig_rlig_clist } ,
   }
 
-\msg_new:nnn { xepersian-hm } { kashida-character-is-not-available-in-the-main-font }
+\msg_new:nnn { xepersian-hm } { error-kashida-character-is-not-available-in-the-main-font }
   {
     Sorry,~ kashida~ character~ is~ not~ available~ in~ the~ main~ font~!
   }
 
-\msg_new:nnn { xepersian-hm } { value-not-available-for-kashida-option }
+\msg_new:nnn { xepersian-hm } { error-value-not-available-for-kashida-option }
   {
     Sorry,~ value~ `#1'~ is~ not~ available~ for~ `Kashida'~ option~ yet~!
   }
 
-\msg_new:nnn { xepersian-hm } { specify-value-for-kashida-option }
+\msg_new:nnn { xepersian-hm } { error-specify-value-for-kashida-option }
   {
     Sorry,~ you~ must~ specify~ a~ value~ for~ `Kashida'~ option~ yet~!
   }
 
+\msg_new:nnn { xepersian-hm } { warning-experimental-feature }
+  {
+    Please~ note~ that~ the~ feature~ `#1'~ is~ still~ experimental~
+    and~ is~ not~ regarded~ as~ stable.
+  }
+
 \keys_define:nn { xepersian-hm }
   {
     Kashida .code:n =
@@ -242,7 +248,7 @@
                     \int_set:Nn \l_xephm_kashida_slot_int { \xetex_charglyph:D \c_xephm_ksh_int }
                     \int_compare:nT { \l_xephm_kashida_slot_int = \c_zero_int }
                       {
-                        \msg_error:nn { xepersian-hm } { kashida-character-is-not-available-in-the-main-font }
+                        \msg_error:nn { xepersian-hm } { error-kashida-character-is-not-available-in-the-main-font }
                       }
                   }
               }
@@ -251,7 +257,7 @@
                 \tl_set:Nn \l_xephm_gap_filler_tl { \l_xephm_stretch_hrule_tl }
               }
           } { } { \tl_set:Nx \l_xephm_gap_filler_tl { #1 } }
-        \tl_if_empty:NT \l_xephm_gap_filler_tl { \msg_error:nn { xepersian-hm } { specify-value-for-kashida-option } }
+        \tl_if_empty:NT \l_xephm_gap_filler_tl { \msg_error:nn { xepersian-hm } { error-specify-value-for-kashida-option } }
         \bool_set_true:N \l_xephm_kashida_hm_fix_bool
       } ,
 
@@ -345,7 +351,7 @@
 %    \begin{macrocode}
 %<*kashida-xepersian-hm-def>
 \ExplSyntaxOn
-\ProvidesExplFile {kashida-xepersian-hm.def} {2020-05-12} {0.5e} { Fixes~implementation~of~Kashida~in~xepersian~package }
+\ProvidesExplFile {kashida-xepersian-hm.def} {2020-05-20} {0.5f} { Fixes~implementation~of~Kashida~in~xepersian~package }
 
 \newXeTeXintercharclass \c_xephm_d_charclass % dual-joiner class
 \newXeTeXintercharclass \c_xephm_l_charclass % lam
@@ -430,8 +436,8 @@
     \mode_leave_vertical:
     \tex_global:D \tex_advance:D \l_xephm_counter_int \c_one_int
 
-    \tl_set:Nx \l_xephm_pos_tl { pos_\tex_romannumeral:D \l_xephm_counter_int }
-    \tl_set:Nx \l_xephm_zref_tl { zref_\tex_romannumeral:D \l_xephm_counter_int }
+    \tl_set:Nx \l_xephm_pos_tl { p\tex_romannumeral:D \l_xephm_counter_int }
+    \tl_set:Nx \l_xephm_zref_tl { z\tex_romannumeral:D \l_xephm_counter_int }
 
     \zsaveposx{x_i_\l_xephm_zref_tl}
     \tl_set:Nx \l_tmpa_tl
@@ -438,9 +444,7 @@
       {
         \iow_now:cx { @auxout }
         {
-          \ExplSyntaxOn
-          \tl_gset:Nn \exp_after:wN \token_to_str:N \cs:w get_x_i\l_xephm_pos_tl \cs_end: { \zposx{ x_i_\l_xephm_zref_tl } }
-          \ExplSyntaxOff
+          \token_to_str:N \gdef \exp_after:wN \token_to_str:N \cs:w xi\l_xephm_pos_tl \cs_end: { \zposx{ x_i_\l_xephm_zref_tl } }
         }
       }
     \l_tmpa_tl
@@ -450,19 +454,17 @@
       {
         \iow_now:cx { @auxout }
         {
-          \ExplSyntaxOn
-          \tl_gset:Nn \exp_after:wN \token_to_str:N \cs:w get_x_f\l_xephm_pos_tl \cs_end: { \zposx{ x_f_\l_xephm_zref_tl } }
-          \ExplSyntaxOff
+          \token_to_str:N \gdef \exp_after:wN \token_to_str:N \cs:w xf\l_xephm_pos_tl \cs_end: { \zposx{ x_f_\l_xephm_zref_tl } }
         }
       }
     \l_tmpa_tl
     \exp_after:wN
     \if_meaning:w
-      \cs:w get_x_i\l_xephm_pos_tl \cs_end: \tex_relax:D
+      \cs:w xi\l_xephm_pos_tl \cs_end: \tex_relax:D
     \else:
       \dim_set:Nn \l_xephm_diff_pos_dim
         {
-          \dim_eval:n { \cs:w get_x_i\l_xephm_pos_tl \cs_end: sp - \cs:w get_x_f\l_xephm_pos_tl \cs_end: sp }
+          \dim_eval:n { \cs:w xi\l_xephm_pos_tl \cs_end: sp - \cs:w xf\l_xephm_pos_tl \cs_end: sp }
         }
       \dim_compare:nTF { \l_xephm_diff_pos_dim == 0sp }
         { }
@@ -590,7 +592,13 @@
         \XeTeXinterchartoks \c_xephm_l_charclass \c_xephm_a_charclass =
           { }
       }
-  } { } { \msg_error:nnx { xepersian-hm } { value-not-available-for-kashida-option } { \l_xephm_gap_filler_tl } }
+  }
+  {
+    \msg_warning:nnn { xepersian-hm } { warning-experimental-feature } { Kashida=glyph }
+  }
+  {
+    \msg_error:nnx { xepersian-hm } { error-value-not-available-for-kashida-option } { \l_xephm_gap_filler_tl }
+  }
 
 \NewDocumentCommand \KashidaHMFixOn {} { \bool_set_true:N \l_xephm_kashida_hm_fix_bool }
 \NewDocumentCommand \KashidaHMFixOff {} { \bool_set_false:N \l_xephm_kashida_hm_fix_bool }

Modified: trunk/Master/texmf-dist/tex/xelatex/xepersian-hm/kashida-xepersian-hm.def
===================================================================
--- trunk/Master/texmf-dist/tex/xelatex/xepersian-hm/kashida-xepersian-hm.def	2020-05-20 21:39:46 UTC (rev 55221)
+++ trunk/Master/texmf-dist/tex/xelatex/xepersian-hm/kashida-xepersian-hm.def	2020-05-20 21:40:09 UTC (rev 55222)
@@ -13,7 +13,7 @@
 %% this license is at: http://www.latex-project.org/lppl.txt
 %% 
 \ExplSyntaxOn
-\ProvidesExplFile {kashida-xepersian-hm.def} {2020-05-12} {0.5e} { Fixes~implementation~of~Kashida~in~xepersian~package }
+\ProvidesExplFile {kashida-xepersian-hm.def} {2020-05-20} {0.5f} { Fixes~implementation~of~Kashida~in~xepersian~package }
 
 \newXeTeXintercharclass \c_xephm_d_charclass % dual-joiner class
 \newXeTeXintercharclass \c_xephm_l_charclass % lam
@@ -98,8 +98,8 @@
     \mode_leave_vertical:
     \tex_global:D \tex_advance:D \l_xephm_counter_int \c_one_int
 
-    \tl_set:Nx \l_xephm_pos_tl { pos_\tex_romannumeral:D \l_xephm_counter_int }
-    \tl_set:Nx \l_xephm_zref_tl { zref_\tex_romannumeral:D \l_xephm_counter_int }
+    \tl_set:Nx \l_xephm_pos_tl { p\tex_romannumeral:D \l_xephm_counter_int }
+    \tl_set:Nx \l_xephm_zref_tl { z\tex_romannumeral:D \l_xephm_counter_int }
 
     \zsaveposx{x_i_\l_xephm_zref_tl}
     \tl_set:Nx \l_tmpa_tl
@@ -106,9 +106,7 @@
       {
         \iow_now:cx { @auxout }
         {
-          \ExplSyntaxOn
-          \tl_gset:Nn \exp_after:wN \token_to_str:N \cs:w get_x_i\l_xephm_pos_tl \cs_end: { \zposx{ x_i_\l_xephm_zref_tl } }
-          \ExplSyntaxOff
+          \token_to_str:N \gdef \exp_after:wN \token_to_str:N \cs:w xi\l_xephm_pos_tl \cs_end: { \zposx{ x_i_\l_xephm_zref_tl } }
         }
       }
     \l_tmpa_tl
@@ -118,19 +116,17 @@
       {
         \iow_now:cx { @auxout }
         {
-          \ExplSyntaxOn
-          \tl_gset:Nn \exp_after:wN \token_to_str:N \cs:w get_x_f\l_xephm_pos_tl \cs_end: { \zposx{ x_f_\l_xephm_zref_tl } }
-          \ExplSyntaxOff
+          \token_to_str:N \gdef \exp_after:wN \token_to_str:N \cs:w xf\l_xephm_pos_tl \cs_end: { \zposx{ x_f_\l_xephm_zref_tl } }
         }
       }
     \l_tmpa_tl
     \exp_after:wN
     \if_meaning:w
-      \cs:w get_x_i\l_xephm_pos_tl \cs_end: \tex_relax:D
+      \cs:w xi\l_xephm_pos_tl \cs_end: \tex_relax:D
     \else:
       \dim_set:Nn \l_xephm_diff_pos_dim
         {
-          \dim_eval:n { \cs:w get_x_i\l_xephm_pos_tl \cs_end: sp - \cs:w get_x_f\l_xephm_pos_tl \cs_end: sp }
+          \dim_eval:n { \cs:w xi\l_xephm_pos_tl \cs_end: sp - \cs:w xf\l_xephm_pos_tl \cs_end: sp }
         }
       \dim_compare:nTF { \l_xephm_diff_pos_dim == 0sp }
         { }
@@ -258,7 +254,13 @@
         \XeTeXinterchartoks \c_xephm_l_charclass \c_xephm_a_charclass =
           { }
       }
-  } { } { \msg_error:nnx { xepersian-hm } { value-not-available-for-kashida-option } { \l_xephm_gap_filler_tl } }
+  }
+  {
+    \msg_warning:nnn { xepersian-hm } { warning-experimental-feature } { Kashida=glyph }
+  }
+  {
+    \msg_error:nnx { xepersian-hm } { error-value-not-available-for-kashida-option } { \l_xephm_gap_filler_tl }
+  }
 
 \NewDocumentCommand \KashidaHMFixOn {} { \bool_set_true:N \l_xephm_kashida_hm_fix_bool }
 \NewDocumentCommand \KashidaHMFixOff {} { \bool_set_false:N \l_xephm_kashida_hm_fix_bool }

Modified: trunk/Master/texmf-dist/tex/xelatex/xepersian-hm/xepersian-hm.sty
===================================================================
--- trunk/Master/texmf-dist/tex/xelatex/xepersian-hm/xepersian-hm.sty	2020-05-20 21:39:46 UTC (rev 55221)
+++ trunk/Master/texmf-dist/tex/xelatex/xepersian-hm/xepersian-hm.sty	2020-05-20 21:40:09 UTC (rev 55222)
@@ -31,7 +31,7 @@
 \RequirePackage{zref-savepos}[2020-03-03]
 \RequirePackage{xepersian}
 \ExplSyntaxOn
-\ProvidesExplPackage {xepersian-hm} {2020-05-12} {0.5e} { Fixes~issues~in~xepersian~package }
+\ProvidesExplPackage {xepersian-hm} {2020-05-20} {0.5f} { Fixes~issues~in~xepersian~package }
 
 \int_const:Nn \c_xephm_ksh_int {"0640} % kashida
 \int_const:Nn \c_xephm_lrm_int {"200E} % left-right-mark
@@ -144,21 +144,27 @@
     \l_xephm_lig_rlig_tl , { \l_xephm_lig_rlig_clist } ,
   }
 
-\msg_new:nnn { xepersian-hm } { kashida-character-is-not-available-in-the-main-font }
+\msg_new:nnn { xepersian-hm } { error-kashida-character-is-not-available-in-the-main-font }
   {
     Sorry,~ kashida~ character~ is~ not~ available~ in~ the~ main~ font~!
   }
 
-\msg_new:nnn { xepersian-hm } { value-not-available-for-kashida-option }
+\msg_new:nnn { xepersian-hm } { error-value-not-available-for-kashida-option }
   {
     Sorry,~ value~ `#1'~ is~ not~ available~ for~ `Kashida'~ option~ yet~!
   }
 
-\msg_new:nnn { xepersian-hm } { specify-value-for-kashida-option }
+\msg_new:nnn { xepersian-hm } { error-specify-value-for-kashida-option }
   {
     Sorry,~ you~ must~ specify~ a~ value~ for~ `Kashida'~ option~ yet~!
   }
 
+\msg_new:nnn { xepersian-hm } { warning-experimental-feature }
+  {
+    Please~ note~ that~ the~ feature~ `#1'~ is~ still~ experimental~
+    and~ is~ not~ regarded~ as~ stable.
+  }
+
 \keys_define:nn { xepersian-hm }
   {
     Kashida .code:n =
@@ -177,7 +183,7 @@
                     \int_set:Nn \l_xephm_kashida_slot_int { \xetex_charglyph:D \c_xephm_ksh_int }
                     \int_compare:nT { \l_xephm_kashida_slot_int = \c_zero_int }
                       {
-                        \msg_error:nn { xepersian-hm } { kashida-character-is-not-available-in-the-main-font }
+                        \msg_error:nn { xepersian-hm } { error-kashida-character-is-not-available-in-the-main-font }
                       }
                   }
               }
@@ -186,7 +192,7 @@
                 \tl_set:Nn \l_xephm_gap_filler_tl { \l_xephm_stretch_hrule_tl }
               }
           } { } { \tl_set:Nx \l_xephm_gap_filler_tl { #1 } }
-        \tl_if_empty:NT \l_xephm_gap_filler_tl { \msg_error:nn { xepersian-hm } { specify-value-for-kashida-option } }
+        \tl_if_empty:NT \l_xephm_gap_filler_tl { \msg_error:nn { xepersian-hm } { error-specify-value-for-kashida-option } }
         \bool_set_true:N \l_xephm_kashida_hm_fix_bool
       } ,
 



More information about the tex-live-commits mailing list.