summaryrefslogtreecommitdiff
path: root/Master/texmf-dist/tex/xelatex/xepersian-hm/kashida-xepersian-hm.def
diff options
context:
space:
mode:
Diffstat (limited to 'Master/texmf-dist/tex/xelatex/xepersian-hm/kashida-xepersian-hm.def')
-rw-r--r--Master/texmf-dist/tex/xelatex/xepersian-hm/kashida-xepersian-hm.def26
1 files changed, 14 insertions, 12 deletions
diff --git a/Master/texmf-dist/tex/xelatex/xepersian-hm/kashida-xepersian-hm.def b/Master/texmf-dist/tex/xelatex/xepersian-hm/kashida-xepersian-hm.def
index da06b603b86..d3e96f981f7 100644
--- a/Master/texmf-dist/tex/xelatex/xepersian-hm/kashida-xepersian-hm.def
+++ b/Master/texmf-dist/tex/xelatex/xepersian-hm/kashida-xepersian-hm.def
@@ -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,17 +98,15 @@
\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
{
\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 }