diff options
Diffstat (limited to 'Master/texmf-dist/tex/generic')
361 files changed, 20436 insertions, 7967 deletions
diff --git a/Master/texmf-dist/tex/generic/babel-french/acadian.ldf b/Master/texmf-dist/tex/generic/babel-french/acadian.ldf index 146e293ffcd..c74b119c023 100644 --- a/Master/texmf-dist/tex/generic/babel-french/acadian.ldf +++ b/Master/texmf-dist/tex/generic/babel-french/acadian.ldf @@ -24,7 +24,7 @@ %% Please report errors to: <daniel (dot) flipo (at) free (dot) fr> %% \ProvidesLanguage{acadian} - [2024-05-24 v3.6a French support from the babel system] + [2024-07-25 v3.6c French support from the babel system] \PackageInfo{acadian.ldf}% {`acadian' dialect is currently\MessageBreak *absolutely identical* to the\MessageBreak diff --git a/Master/texmf-dist/tex/generic/babel-french/canadien.ldf b/Master/texmf-dist/tex/generic/babel-french/canadien.ldf index c04ed30c114..5f4ce1fbd56 100644 --- a/Master/texmf-dist/tex/generic/babel-french/canadien.ldf +++ b/Master/texmf-dist/tex/generic/babel-french/canadien.ldf @@ -24,7 +24,7 @@ %% Please report errors to: <daniel (dot) flipo (at) free (dot) fr> %% \ProvidesLanguage{canadien} - [2024-05-24 v3.6a French support from the babel system] + [2024-07-25 v3.6c French support from the babel system] \PackageWarning{canadien.ldf}% {Option `canadien' for Babel is *deprecated*,\MessageBreak it might be removed sooner or later. Please\MessageBreak diff --git a/Master/texmf-dist/tex/generic/babel-french/francais.ldf b/Master/texmf-dist/tex/generic/babel-french/francais.ldf index 930425c55a6..f1dab47db9f 100644 --- a/Master/texmf-dist/tex/generic/babel-french/francais.ldf +++ b/Master/texmf-dist/tex/generic/babel-french/francais.ldf @@ -24,7 +24,7 @@ %% Please report errors to: <daniel (dot) flipo (at) free (dot) fr> %% \ProvidesLanguage{francais} - [2024-05-24 v3.6a French support from the babel system] + [2024-07-25 v3.6c French support from the babel system] \PackageWarning{francais.ldf}% {Option `francais' for Babel is *deprecated*,\MessageBreak it might be removed sooner or later. Please\MessageBreak diff --git a/Master/texmf-dist/tex/generic/babel-french/french.ldf b/Master/texmf-dist/tex/generic/babel-french/french.ldf index e464ea33b0b..61bb613bc09 100644 --- a/Master/texmf-dist/tex/generic/babel-french/french.ldf +++ b/Master/texmf-dist/tex/generic/babel-french/french.ldf @@ -24,7 +24,7 @@ %% Please report errors to: <daniel (dot) flipo (at) free (dot) fr> %% \ProvidesLanguage{french} - [2024-05-24 v3.6a French support from the babel system] + [2024-07-25 v3.6c French support from the babel system] %% %% Babel package for LaTeX version 2e %% Copyright © 1996-2024 @@ -108,7 +108,6 @@ \fi \fi \bbl@tempa -\ifLaTeXe \NeedsTeXFormat{LaTeX2e}[2022/06/01] \fi \newif\ifFBunicode \newif\ifFBLuaTeX \newif\ifFBXeTeX @@ -505,9 +504,10 @@ \DeclareRobustCommand\rmfamilyFB{\FB@spacing@on \rmfamilyORI} \DeclareRobustCommand\sffamilyFB{\FB@spacing@on \sffamilyORI} \fi +\providecommand\texorpdfstring[2]{#1} \DeclareRobustCommand*{\NoAutoSpacing}{% - \FB@spacing@off - \ifFB@active@punct\shorthandoff{;:!?}\fi + \texorpdfstring{\FB@spacing@off + \ifFB@active@punct\shorthandoff{;:!?}\fi}{}% } \ifLaTeXe \else @@ -526,7 +526,6 @@ \fi \let\xspace\relax \fi -\providecommand\texorpdfstring[2]{#1} \newcommand*{\FB@og}{\texorpdfstring{\@FB@og}{\guillemotleft\space}} \newcommand*{\FB@fg}{\texorpdfstring{\@FB@fg}{\space\guillemotright}} \newcommand*{\FB@guillspace}{\penalty\@M\FBguillspace} @@ -1109,6 +1108,7 @@ BEFORE babel/french; reported}% \fi } +\NeedsTeXFormat{LaTeX2e}[2022-06-01] \newif\ifFBShowOptions \newif\ifFBStandardLayout \FBStandardLayouttrue \newif\ifFBGlobalLayoutFrench \FBGlobalLayoutFrenchtrue @@ -1271,14 +1271,14 @@ Reported}% \fi } -\newcommand*{\FB@ListOldLayout@setup}[1]% +\newcommand*{\FBListOldLayout@setup}[1]% {\csname FBListOldLayout#1\endcsname \ifFBListOldLayout \FBStandardEnumerateEnvtrue \renewcommand*{\FrenchLabelItem}{\textendash}% \fi } -\newcommand*{\FB@CompactItemize@setup}[1]% +\newcommand*{\FBCompactItemize@setup}[1]% {\csname FBCompactItemize#1\endcsname \ifFBCompactItemize \FBStandardItemizeEnvfalse diff --git a/Master/texmf-dist/tex/generic/babel-french/frenchb.ldf b/Master/texmf-dist/tex/generic/babel-french/frenchb.ldf index 59dcd15ac8c..043aa84c723 100644 --- a/Master/texmf-dist/tex/generic/babel-french/frenchb.ldf +++ b/Master/texmf-dist/tex/generic/babel-french/frenchb.ldf @@ -24,7 +24,7 @@ %% Please report errors to: <daniel (dot) flipo (at) free (dot) fr> %% \ProvidesLanguage{frenchb} - [2024-05-24 v3.6a French support from the babel system] + [2024-07-25 v3.6c French support from the babel system] \def\bbl@tempa{frenchb} \ifx\CurrentOption\bbl@tempa \chardef\l@frenchb\l@french diff --git a/Master/texmf-dist/tex/generic/babel-french/frenchb.lua b/Master/texmf-dist/tex/generic/babel-french/frenchb.lua index 3149b146ffc..34f19225fca 100644 --- a/Master/texmf-dist/tex/generic/babel-french/frenchb.lua +++ b/Master/texmf-dist/tex/generic/babel-french/frenchb.lua @@ -1,6 +1,6 @@ --[[ File `frenchb.lua’ generated from frenchb.dtx - [2024-05-24 v3.6a French support from the babel system] + [2024-07-25 v3.6c French support from the babel system] Copyright © 2014-2024 Daniel Flipo <daniel (dot) flipo (at) free (dot) fr> License LPPL: see french.ldf. diff --git a/Master/texmf-dist/tex/generic/babel-german/austrian.ldf b/Master/texmf-dist/tex/generic/babel-german/austrian.ldf index 709a403c57a..3e93098438e 100644 --- a/Master/texmf-dist/tex/generic/babel-german/austrian.ldf +++ b/Master/texmf-dist/tex/generic/babel-german/austrian.ldf @@ -34,7 +34,7 @@ %% via: https://github.com/jspitz/babel-german %% \ProvidesLanguage{austrian} - [2024/01/19 v2.14 German support for babel (pre-1996 orthography)] + [2024/12/10 v2.15 German support for babel (pre-1996 orthography)] \def\tmpa{germanb} \let\SaveCurrentOption\CurrentOption \ifx\CurrentOption\tmpa diff --git a/Master/texmf-dist/tex/generic/babel-german/german.ldf b/Master/texmf-dist/tex/generic/babel-german/german.ldf index a53b3f7c844..0805b114305 100644 --- a/Master/texmf-dist/tex/generic/babel-german/german.ldf +++ b/Master/texmf-dist/tex/generic/babel-german/german.ldf @@ -34,7 +34,7 @@ %% via: https://github.com/jspitz/babel-german %% \ProvidesLanguage{german} - [2024/01/19 v2.14 German support for babel (pre-1996 orthography)] + [2024/12/10 v2.15 German support for babel (pre-1996 orthography)] \def\tmpa{germanb} \let\SaveCurrentOption\CurrentOption \ifx\CurrentOption\tmpa diff --git a/Master/texmf-dist/tex/generic/babel-german/germanb.ldf b/Master/texmf-dist/tex/generic/babel-german/germanb.ldf index 9329345b446..a2385a4c89c 100644 --- a/Master/texmf-dist/tex/generic/babel-german/germanb.ldf +++ b/Master/texmf-dist/tex/generic/babel-german/germanb.ldf @@ -34,7 +34,7 @@ %% via: https://github.com/jspitz/babel-german %% \ProvidesLanguage{germanb} - [2024/01/19 v2.14 German support for babel (pre-1996 orthography)] + [2024/12/10 v2.15 German support for babel (pre-1996 orthography)] \def\tmpa{germanb} \let\SaveCurrentOption\CurrentOption \ifx\CurrentOption\tmpa diff --git a/Master/texmf-dist/tex/generic/babel-german/naustrian.ldf b/Master/texmf-dist/tex/generic/babel-german/naustrian.ldf index 40751d8137f..909d141338b 100644 --- a/Master/texmf-dist/tex/generic/babel-german/naustrian.ldf +++ b/Master/texmf-dist/tex/generic/babel-german/naustrian.ldf @@ -34,7 +34,7 @@ %% via: https://github.com/jspitz/babel-german %% \ProvidesLanguage{naustrian} - [2024/01/19 v2.14 German support for babel (post-1996 orthography)] + [2024/12/10 v2.15 German support for babel (post-1996 orthography)] \def\tmpa{ngermanb} \ifx\CurrentOption\tmpa \def\CurrentOption{ngerman} diff --git a/Master/texmf-dist/tex/generic/babel-german/ngerman.ldf b/Master/texmf-dist/tex/generic/babel-german/ngerman.ldf index be0607e64d7..5e7a3eca597 100644 --- a/Master/texmf-dist/tex/generic/babel-german/ngerman.ldf +++ b/Master/texmf-dist/tex/generic/babel-german/ngerman.ldf @@ -34,7 +34,7 @@ %% via: https://github.com/jspitz/babel-german %% \ProvidesLanguage{ngerman} - [2024/01/19 v2.14 German support for babel (post-1996 orthography)] + [2024/12/10 v2.15 German support for babel (post-1996 orthography)] \def\tmpa{ngermanb} \ifx\CurrentOption\tmpa \def\CurrentOption{ngerman} diff --git a/Master/texmf-dist/tex/generic/babel-german/ngermanb.ldf b/Master/texmf-dist/tex/generic/babel-german/ngermanb.ldf index 43994b571d9..b5a8619286b 100644 --- a/Master/texmf-dist/tex/generic/babel-german/ngermanb.ldf +++ b/Master/texmf-dist/tex/generic/babel-german/ngermanb.ldf @@ -34,7 +34,7 @@ %% via: https://github.com/jspitz/babel-german %% \ProvidesLanguage{ngermanb} - [2024/01/19 v2.14 German support for babel (post-1996 orthography)] + [2024/12/10 v2.15 German support for babel (post-1996 orthography)] \def\tmpa{ngermanb} \ifx\CurrentOption\tmpa \def\CurrentOption{ngerman} @@ -136,15 +136,30 @@ \ifntoss\bbl@ntosstrue\else\bbl@ntossfalse\fi} \fi \newif\ifcapsz\capszfalse +\newif\ifnocapsz\nocapszfalse \newif\ifbbl@capsz\bbl@capszfalse +\ifdefined\casing@ngerman + \let\save@casing@ngerman\casing@ngerman +\else + \xdef\save@casing@naustrian{de} +\fi +\ifdefined\casing@naustrian + \let\save@casing@naustrian\casing@naustrian +\else + \xdef\save@casing@naustrian{de} +\fi \ifx\bbl@mod@ngerman\@undefined\else \@expandtwoargs\in@{,capsz,}{,\bbl@mod@ngerman,} \ifin@ \capsztrue \fi + \@expandtwoargs\in@{,nocapsz,}{,\bbl@mod@ngerman,} + \ifin@ + \nocapsztrue + \fi \addto\extrasngerman{% \ifcapsz\bbl@capsztrue\bbl@csarg\xdef{casing@ngerman}{de-x-eszett}% - \else\bbl@csarg\xdef{casing@ngerman}{de}\bbl@capszfalse\fi} + \else\ifnocapsz\bbl@csarg\xdef{casing@ngerman}{de}\fi\bbl@capszfalse\fi} \fi \newif\if@at@capsz\@at@capszfalse \ifx\bbl@mod@naustrian\@undefined\else @@ -152,9 +167,13 @@ \ifin@ \@at@capsztrue \fi + \@expandtwoargs\in@{,nocapsz,}{,\bbl@mod@naustrian,} + \ifin@ + \nocapsztrue + \fi \addto\extrasnaustrian{% \if@at@capsz\bbl@capsztrue\bbl@csarg\xdef{casing@naustrian}{de-x-eszett}% - \else\bbl@csarg\xdef{casing@naustrian}{de}\bbl@capszfalse\fi} + \else\ifnocapsz\bbl@csarg\xdef{casing@naustrian}{de}\fi\bbl@capszfalse\fi} \fi \expandafter\addto\csname noextras\CurrentOption\endcsname{% \bbl@deactivate{"}} @@ -163,12 +182,12 @@ \fi \ifx\CurrentOption\bbl@opt@ngerman \ifbbl@capsz - \addto\noextrasngerman{\bbl@capszfalse\bbl@csarg\xdef{casing@ngerman}{de}} + \addto\noextrasngerman{\bbl@capszfalse\bbl@csarg\xdef{casing@ngerman}{\save@casing@ngerman}} \fi \fi \ifx\CurrentOption\bbl@opt@naustrian \ifbbl@capsz - \addto\noextrasnaustrian{\bbl@capszfalse\bbl@csarg\xdef{casing@naustrian}{de}} + \addto\noextrasnaustrian{\bbl@capszfalse\bbl@csarg\xdef{casing@naustrian}{\save@casing@naustrian}} \fi \fi \expandafter\addto\csname extras\CurrentOption\endcsname{% diff --git a/Master/texmf-dist/tex/generic/babel-german/nswissgerman.ldf b/Master/texmf-dist/tex/generic/babel-german/nswissgerman.ldf index a8754bb1cfd..216c657174f 100644 --- a/Master/texmf-dist/tex/generic/babel-german/nswissgerman.ldf +++ b/Master/texmf-dist/tex/generic/babel-german/nswissgerman.ldf @@ -34,7 +34,7 @@ %% via: https://github.com/jspitz/babel-german %% \ProvidesLanguage{nswissgerman} - [2024/01/19 v2.14 German support for babel (post-1996 orthography)] + [2024/12/10 v2.15 German support for babel (post-1996 orthography)] \def\tmpa{ngermanb} \ifx\CurrentOption\tmpa \def\CurrentOption{ngerman} diff --git a/Master/texmf-dist/tex/generic/babel-german/swissgerman.ldf b/Master/texmf-dist/tex/generic/babel-german/swissgerman.ldf index e289a3710e3..1143a49e7fb 100644 --- a/Master/texmf-dist/tex/generic/babel-german/swissgerman.ldf +++ b/Master/texmf-dist/tex/generic/babel-german/swissgerman.ldf @@ -34,7 +34,7 @@ %% via: https://github.com/jspitz/babel-german %% \ProvidesLanguage{swissgerman} - [2024/01/19 v2.14 German support for babel (pre-1996 orthography)] + [2024/12/10 v2.15 German support for babel (pre-1996 orthography)] \def\tmpa{germanb} \let\SaveCurrentOption\CurrentOption \ifx\CurrentOption\tmpa diff --git a/Master/texmf-dist/tex/generic/babel-italian/italian.ldf b/Master/texmf-dist/tex/generic/babel-italian/italian.ldf index f9bd02c13b1..5cff95de4c7 100644 --- a/Master/texmf-dist/tex/generic/babel-italian/italian.ldf +++ b/Master/texmf-dist/tex/generic/babel-italian/italian.ldf @@ -12,7 +12,7 @@ %% %% License information appended. \ProvidesLanguage{italian} - [2024/01/03 v.1.5.00 Italian support for the babel system] + [2024/10/10 v.1.5.01 Italian support for the babel system] %% %% Please report errors to: claudio dot beccari at gmail dot com %% @@ -195,7 +195,9 @@ }} \DeclareMathSymbol{\virgoladecimale}{\mathord}{letters}{"3B} \DeclareMathSymbol{\virgola}{\mathpunct}{letters}{"3B} -{\catcode`,\active \gdef,{\futurelet\tempB\?}} + +{\catcode`,\active \protected\gdef,% + {\futurelet\tempB\it@tempcomma}} \DeclareRobustCommand*\periodo[1]{\overline{#1}} @@ -204,7 +206,7 @@ \if\@Cifra #1\relax\def\tempC{\virgoladecimale}% \@break@tfor\fi}\tempC} -\DeclareRobustCommand*\?{% +\DeclareRobustCommand*\it@tempcomma{% \ifx\tempB\@sptoken \expandafter\@firstoftwo \else diff --git a/Master/texmf-dist/tex/generic/babel-welsh/welsh.ldf b/Master/texmf-dist/tex/generic/babel-welsh/welsh.ldf index f4406ff1653..3cd413ad018 100644 --- a/Master/texmf-dist/tex/generic/babel-welsh/welsh.ldf +++ b/Master/texmf-dist/tex/generic/babel-welsh/welsh.ldf @@ -7,7 +7,7 @@ %% welsh.dtx (with options: `code') %% This is a generated file. %% -%% Copyright 1989-2005 Johannes L. Braams and any individual authors +%% Copyright 1989-2025 Johannes L. Braams and any individual authors %% listed elsewhere in this file. All rights reserved. %% %% This file was generated from file(s) of the Babel system. @@ -37,10 +37,10 @@ %% and covered by LPPL is defined by the unpacking scripts (with %% extension .ins) which are part of the distribution. \ProvidesLanguage{welsh} - [2024/04/27 v1.1b Welsh support from the babel system] + [2025/02/10 v1.1c Welsh support for the babel system] %% File `welsh.dtx' %% Babel package for LaTeX version 2e -%% Copyright (C) 1989 -- 2024 +%% Copyright (C) 1989 -- 2025 %% by Johannes Braams, TeXniek \LdfInit{welsh}{captionswelsh} \ifx\undefined\l@welsh @@ -63,7 +63,7 @@ \SetString{\listtablename}{Rhestr Dablau} \SetString{\indexname}{Mynegai} \SetString{\figurename}{Darlun} - \SetString{\tablename}{Taflen} + \SetString{\tablename}{Tabl} \SetString{\partname}{Rhan} \SetString{\enclname}{amgae\"edig} \SetString{\ccname}{cop\"\i au} diff --git a/Master/texmf-dist/tex/generic/babel/babel-bidi-basic-r.lua b/Master/texmf-dist/tex/generic/babel/babel-bidi-basic-r.lua index a981db5b267..371a4ce840c 100644 --- a/Master/texmf-dist/tex/generic/babel/babel-bidi-basic-r.lua +++ b/Master/texmf-dist/tex/generic/babel/babel-bidi-basic-r.lua @@ -7,7 +7,7 @@ -- babel.dtx (with options: `basic-r') -- -- --- Copyright (C) 2012-2024 Javier Bezos and Johannes L. Braams. +-- Copyright (C) 2012-2025 Javier Bezos and Johannes L. Braams. -- Copyright (C) 1989-2012 Johannes L. Braams and -- any individual authors listed elsewhere in this file. -- All rights reserved. @@ -32,9 +32,6 @@ -- and covered by LPPL is defined by the unpacking scripts (with -- extension |.ins|) which are part of the distribution. -- - -Babel = Babel or {} - Babel.bidi_enabled = true require('babel-data-bidi.lua') @@ -45,7 +42,7 @@ local ranges = Babel.ranges local DIR = node.id("dir") local function dir_mark(head, from, to, outer) - dir = (outer == 'r') and 'TLT' or 'TRT' -- ie, reverse + dir = (outer == 'r') and 'TLT' or 'TRT' -- i.e., reverse local d = node.new(DIR) d.dir = '+' .. dir node.insert_before(head, from, d) @@ -162,7 +159,7 @@ function Babel.bidi(head, ispar) elseif first_d and dir ~= strong_lr then dir_mark(head, first_d, last_d, outer) first_d, last_d = nil, nil - end + end end if dir and not last_lr and dir ~= 'l' and outer == 'r' then item.char = characters[item.char] and diff --git a/Master/texmf-dist/tex/generic/babel/babel-bidi-basic.lua b/Master/texmf-dist/tex/generic/babel/babel-bidi-basic.lua index 4d0d19156f0..81f88aa84be 100644 --- a/Master/texmf-dist/tex/generic/babel/babel-bidi-basic.lua +++ b/Master/texmf-dist/tex/generic/babel/babel-bidi-basic.lua @@ -7,7 +7,7 @@ -- babel.dtx (with options: `basic') -- -- --- Copyright (C) 2012-2024 Javier Bezos and Johannes L. Braams. +-- Copyright (C) 2012-2025 Javier Bezos and Johannes L. Braams. -- Copyright (C) 1989-2012 Johannes L. Braams and -- any individual authors listed elsewhere in this file. -- All rights reserved. @@ -32,10 +32,7 @@ -- and covered by LPPL is defined by the unpacking scripts (with -- extension |.ins|) which are part of the distribution. -- - -Babel = Babel or {} - --- eg, Babel.fontmap[1][<prefontid>]=<dirfontid> +-- e.g., Babel.fontmap[1][<prefontid>]=<dirfontid> Babel.fontmap = Babel.fontmap or {} Babel.fontmap[0] = {} -- l @@ -63,7 +60,7 @@ local GLYPH = node.id('glyph') local function insert_implicit(head, state, outer) local new_state = state if state.sim and state.eim and state.sim ~= state.eim then - dir = ((outer == 'r') and 'TLT' or 'TRT') -- ie, reverse + dir = ((outer == 'r') and 'TLT' or 'TRT') -- i.e., reverse local d = node.new(DIR) d.dir = '+' .. dir node.insert_before(head, state.sim, d) @@ -102,7 +99,7 @@ end -- TODO - \hbox with an explicit dir can lead to wrong results -- <R \hbox dir TLT{<R>}> and <L \hbox dir TRT{<L>}>. A small attempt --- was s made to improve the situation, but the problem is the 3-dir +-- was made to improve the situation, but the problem is the 3-dir -- model in babel/Unicode and the 2-dir model in LuaTeX don't fit -- well. @@ -124,6 +121,7 @@ function Babel.bidi(head, ispar, hdir) local has_hyperlink = false local ATDIR = Babel.attr_dir + local attr_d local save_outer local temp = node.get_attribute(head, ATDIR) @@ -158,6 +156,8 @@ function Babel.bidi(head, ispar, hdir) if glyph_not_symbol_font(item) or (item.id == 7 and item.subtype == 2) then + if node.get_attribute(item, ATDIR) == 128 then goto nextnode end + local d_font = nil local item_r if item.id == 7 and item.subtype == 2 then @@ -165,6 +165,7 @@ function Babel.bidi(head, ispar, hdir) else item_r = item end + local chardata = characters[item_r.char] d = chardata and chardata.d or nil if not d or d == 'nsm' then @@ -292,6 +293,7 @@ function Babel.bidi(head, ispar, hdir) -- Force mathdir in math if ON (currently works as expected only -- with 'l') + if inmath and d == 'on' then d = ('TRT' == tex.mathdir) and 'r' or 'l' end @@ -307,9 +309,12 @@ function Babel.bidi(head, ispar, hdir) table.insert(nodes, {item, d, outer_first}) end + node.set_attribute(item, ATDIR, 128) outer_first = nil - end + ::nextnode:: + + end -- for each node -- TODO -- repeated here in case EN/ET is the last node. Find a -- better way of doing things: @@ -439,9 +444,7 @@ function Babel.bidi(head, ispar, hdir) end head = node.prev(head) or head - - -------------- FIX HYPERLINKS ---------------- - + --- FIXES --- if has_hyperlink then local flag, linking = 0, 0 for item in node.traverse(head) do @@ -468,5 +471,27 @@ function Babel.bidi(head, ispar, hdir) end end + for item in node.traverse_id(10, head) do + local p = item + local flag = false + while p.prev and p.prev.id == 14 do + flag = true + p = p.prev + end + if flag then + node.insert_before(head, p, node.copy(item)) + node.remove(head,item) + end + end + + return head +end +-- Make sure anything is marked as 'bidi done' (including nodes inserted +-- after the babel algorithm). 128 = 1000 0000. +function Babel.unset_atdir(head) + local ATDIR = Babel.attr_dir + for item in node.traverse(head) do + node.set_attribute(item, ATDIR, 128) + end return head end diff --git a/Master/texmf-dist/tex/generic/babel/babel-ca-buddhist.tex b/Master/texmf-dist/tex/generic/babel/babel-ca-buddhist.tex index d9e77aa25ea..533ab3eee1c 100644 --- a/Master/texmf-dist/tex/generic/babel/babel-ca-buddhist.tex +++ b/Master/texmf-dist/tex/generic/babel/babel-ca-buddhist.tex @@ -7,7 +7,7 @@ %% babel.dtx (with options: `ca-buddhist') %% %% -%% Copyright (C) 2012-2024 Javier Bezos and Johannes L. Braams. +%% Copyright (C) 2012-2025 Javier Bezos and Johannes L. Braams. %% Copyright (C) 1989-2012 Johannes L. Braams and %% any individual authors listed elsewhere in this file. %% All rights reserved. @@ -32,7 +32,6 @@ %% and covered by LPPL is defined by the unpacking scripts (with %% extension |.ins|) which are part of the distribution. %% - \def\bbl@ca@buddhist#1-#2-#3\@@#4#5#6{% \edef#4{\number\numexpr#1+543\relax}% \edef#5{#2}% diff --git a/Master/texmf-dist/tex/generic/babel/babel-ca-chinese.tex b/Master/texmf-dist/tex/generic/babel/babel-ca-chinese.tex index 15eed489707..be005c65e4d 100644 --- a/Master/texmf-dist/tex/generic/babel/babel-ca-chinese.tex +++ b/Master/texmf-dist/tex/generic/babel/babel-ca-chinese.tex @@ -7,7 +7,7 @@ %% babel.dtx (with options: `ca-chinese') %% %% -%% Copyright (C) 2012-2024 Javier Bezos and Johannes L. Braams. +%% Copyright (C) 2012-2025 Javier Bezos and Johannes L. Braams. %% Copyright (C) 1989-2012 Johannes L. Braams and %% any individual authors listed elsewhere in this file. %% All rights reserved. @@ -32,7 +32,6 @@ %% and covered by LPPL is defined by the unpacking scripts (with %% extension |.ins|) which are part of the distribution. %% - \ExplSyntaxOn \def\bbl@fpmod#1#2{(#1-#2*floor(#1/#2))} \def\bbl@cs@gregleap#1{% diff --git a/Master/texmf-dist/tex/generic/babel/babel-ca-coptic.tex b/Master/texmf-dist/tex/generic/babel/babel-ca-coptic.tex index 449567ed8ad..df61580aeb9 100644 --- a/Master/texmf-dist/tex/generic/babel/babel-ca-coptic.tex +++ b/Master/texmf-dist/tex/generic/babel/babel-ca-coptic.tex @@ -7,7 +7,7 @@ %% babel.dtx (with options: `ca-coptic') %% %% -%% Copyright (C) 2012-2024 Javier Bezos and Johannes L. Braams. +%% Copyright (C) 2012-2025 Javier Bezos and Johannes L. Braams. %% Copyright (C) 1989-2012 Johannes L. Braams and %% any individual authors listed elsewhere in this file. %% All rights reserved. @@ -32,7 +32,6 @@ %% and covered by LPPL is defined by the unpacking scripts (with %% extension |.ins|) which are part of the distribution. %% - \ExplSyntaxOn \def\bbl@fpmod#1#2{(#1-#2*floor(#1/#2))} \def\bbl@cs@gregleap#1{% diff --git a/Master/texmf-dist/tex/generic/babel/babel-ca-ethiopic.tex b/Master/texmf-dist/tex/generic/babel/babel-ca-ethiopic.tex index b1d94e1a454..4d1612ac82c 100644 --- a/Master/texmf-dist/tex/generic/babel/babel-ca-ethiopic.tex +++ b/Master/texmf-dist/tex/generic/babel/babel-ca-ethiopic.tex @@ -7,7 +7,7 @@ %% babel.dtx (with options: `ca-ethiopic') %% %% -%% Copyright (C) 2012-2024 Javier Bezos and Johannes L. Braams. +%% Copyright (C) 2012-2025 Javier Bezos and Johannes L. Braams. %% Copyright (C) 1989-2012 Johannes L. Braams and %% any individual authors listed elsewhere in this file. %% All rights reserved. @@ -32,7 +32,6 @@ %% and covered by LPPL is defined by the unpacking scripts (with %% extension |.ins|) which are part of the distribution. %% - \ExplSyntaxOn \def\bbl@fpmod#1#2{(#1-#2*floor(#1/#2))} \def\bbl@cs@gregleap#1{% diff --git a/Master/texmf-dist/tex/generic/babel/babel-ca-hebrew.tex b/Master/texmf-dist/tex/generic/babel/babel-ca-hebrew.tex index 8964a0c2417..c0a2ad7ad86 100644 --- a/Master/texmf-dist/tex/generic/babel/babel-ca-hebrew.tex +++ b/Master/texmf-dist/tex/generic/babel/babel-ca-hebrew.tex @@ -7,7 +7,7 @@ %% babel.dtx (with options: `ca-hebrew') %% %% -%% Copyright (C) 2012-2024 Javier Bezos and Johannes L. Braams. +%% Copyright (C) 2012-2025 Javier Bezos and Johannes L. Braams. %% Copyright (C) 1989-2012 Johannes L. Braams and %% any individual authors listed elsewhere in this file. %% All rights reserved. @@ -32,7 +32,6 @@ %% and covered by LPPL is defined by the unpacking scripts (with %% extension |.ins|) which are part of the distribution. %% - \newcount\bbl@cntcommon \def\bbl@remainder#1#2#3{% #3=#1\relax @@ -199,7 +198,7 @@ #2=\bbl@cntcommon} \def\bbl@hebrdayspriormonths#1#2#3{% {\countdef\tmpf= 14 - #3=\ifcase #1\relax + #3=\ifcase #1 0 \or 0 \or 30 \or diff --git a/Master/texmf-dist/tex/generic/babel/babel-ca-islamic.tex b/Master/texmf-dist/tex/generic/babel/babel-ca-islamic.tex index b769b5fcd11..a2b0e493b33 100644 --- a/Master/texmf-dist/tex/generic/babel/babel-ca-islamic.tex +++ b/Master/texmf-dist/tex/generic/babel/babel-ca-islamic.tex @@ -7,7 +7,7 @@ %% babel.dtx (with options: `ca-islamic') %% %% -%% Copyright (C) 2012-2024 Javier Bezos and Johannes L. Braams. +%% Copyright (C) 2012-2025 Javier Bezos and Johannes L. Braams. %% Copyright (C) 1989-2012 Johannes L. Braams and %% any individual authors listed elsewhere in this file. %% All rights reserved. @@ -32,7 +32,6 @@ %% and covered by LPPL is defined by the unpacking scripts (with %% extension |.ins|) which are part of the distribution. %% - \ExplSyntaxOn \def\bbl@fpmod#1#2{(#1-#2*floor(#1/#2))} \def\bbl@cs@gregleap#1{% diff --git a/Master/texmf-dist/tex/generic/babel/babel-ca-persian.tex b/Master/texmf-dist/tex/generic/babel/babel-ca-persian.tex index b0f26920b0b..64c7ec3cb08 100644 --- a/Master/texmf-dist/tex/generic/babel/babel-ca-persian.tex +++ b/Master/texmf-dist/tex/generic/babel/babel-ca-persian.tex @@ -7,7 +7,7 @@ %% babel.dtx (with options: `ca-persian') %% %% -%% Copyright (C) 2012-2024 Javier Bezos and Johannes L. Braams. +%% Copyright (C) 2012-2025 Javier Bezos and Johannes L. Braams. %% Copyright (C) 1989-2012 Johannes L. Braams and %% any individual authors listed elsewhere in this file. %% All rights reserved. @@ -32,7 +32,6 @@ %% and covered by LPPL is defined by the unpacking scripts (with %% extension |.ins|) which are part of the distribution. %% - \ExplSyntaxOn \def\bbl@fpmod#1#2{(#1-#2*floor(#1/#2))} \def\bbl@cs@gregleap#1{% diff --git a/Master/texmf-dist/tex/generic/babel/babel-data-bidi.lua b/Master/texmf-dist/tex/generic/babel/babel-data-bidi.lua index 7aa786c41cf..35df97a572c 100644 --- a/Master/texmf-dist/tex/generic/babel/babel-data-bidi.lua +++ b/Master/texmf-dist/tex/generic/babel/babel-data-bidi.lua @@ -7,7 +7,7 @@ -- babel.dtx (with options: `bididata') -- -- --- Copyright (C) 2012-2024 Javier Bezos and Johannes L. Braams. +-- Copyright (C) 2012-2025 Javier Bezos and Johannes L. Braams. -- Copyright (C) 1989-2012 Johannes L. Braams and -- any individual authors listed elsewhere in this file. -- All rights reserved. @@ -32,27 +32,27 @@ -- and covered by LPPL is defined by the unpacking scripts (with -- extension |.ins|) which are part of the distribution. -- - -- Data from Unicode and ConTeXt -Babel = Babel or {} - Babel.ranges = { {0x0590, 0x05FF, 'r'}, {0x0600, 0x07BF, 'al'}, {0x07C0, 0x085F, 'r'}, {0x0860, 0x086F, 'al'}, {0x08A0, 0x08FF, 'al'}, - {0xE000, 0xF8FF, 'on'}, -- PUA {0xFB1D, 0xFB4F, 'r'}, {0xFB50, 0xFDFF, 'al'}, {0xFE70, 0xFEFF, 'al'}, - {0x10800, 0x10C4F, 'r'}, - {0x1E800, 0x1E8DF, 'r'}, - {0x1E900, 0x1E95F, 'r'}, - {0x1F300, 0x1F9FF, 'on'}, - {0xF0000, 0xFFFFD, 'on'}, -- PUA - {0x100000, 0x10FFFD, 'on'} -- PUA + {0x10800, 0x10CFF, 'r'}, + {0x10D00, 0x10D3F, 'al'}, + {0x10D40, 0x10EBF, 'r'}, + {0x10EC0, 0x10EFF, 'al'}, + {0x10F00, 0x10F2F, 'r'}, + {0x10F30, 0x10F6F, 'al'}, + {0x10F70, 0x10FFF, 'r'}, + {0x1E800, 0x1E95F, 'r'}, + {0x1EE00, 0x1EEFF, 'al'}, + {0x1F300, 0x1F9FF, 'on'} } Babel.characters = { @@ -4818,114 +4818,6 @@ Babel.characters = { [0x10B3D]={d='on'}, [0x10B3E]={d='on'}, [0x10B3F]={d='on'}, - [0x10C80]={d='r'}, - [0x10C81]={d='r'}, - [0x10C82]={d='r'}, - [0x10C83]={d='r'}, - [0x10C84]={d='r'}, - [0x10C85]={d='r'}, - [0x10C86]={d='r'}, - [0x10C87]={d='r'}, - [0x10C88]={d='r'}, - [0x10C89]={d='r'}, - [0x10C8A]={d='r'}, - [0x10C8B]={d='r'}, - [0x10C8C]={d='r'}, - [0x10C8D]={d='r'}, - [0x10C8E]={d='r'}, - [0x10C8F]={d='r'}, - [0x10C90]={d='r'}, - [0x10C91]={d='r'}, - [0x10C92]={d='r'}, - [0x10C93]={d='r'}, - [0x10C94]={d='r'}, - [0x10C95]={d='r'}, - [0x10C96]={d='r'}, - [0x10C97]={d='r'}, - [0x10C98]={d='r'}, - [0x10C99]={d='r'}, - [0x10C9A]={d='r'}, - [0x10C9B]={d='r'}, - [0x10C9C]={d='r'}, - [0x10C9D]={d='r'}, - [0x10C9E]={d='r'}, - [0x10C9F]={d='r'}, - [0x10CA0]={d='r'}, - [0x10CA1]={d='r'}, - [0x10CA2]={d='r'}, - [0x10CA3]={d='r'}, - [0x10CA4]={d='r'}, - [0x10CA5]={d='r'}, - [0x10CA6]={d='r'}, - [0x10CA7]={d='r'}, - [0x10CA8]={d='r'}, - [0x10CA9]={d='r'}, - [0x10CAA]={d='r'}, - [0x10CAB]={d='r'}, - [0x10CAC]={d='r'}, - [0x10CAD]={d='r'}, - [0x10CAE]={d='r'}, - [0x10CAF]={d='r'}, - [0x10CB0]={d='r'}, - [0x10CB1]={d='r'}, - [0x10CB2]={d='r'}, - [0x10CC0]={d='r'}, - [0x10CC1]={d='r'}, - [0x10CC2]={d='r'}, - [0x10CC3]={d='r'}, - [0x10CC4]={d='r'}, - [0x10CC5]={d='r'}, - [0x10CC6]={d='r'}, - [0x10CC7]={d='r'}, - [0x10CC8]={d='r'}, - [0x10CC9]={d='r'}, - [0x10CCA]={d='r'}, - [0x10CCB]={d='r'}, - [0x10CCC]={d='r'}, - [0x10CCD]={d='r'}, - [0x10CCE]={d='r'}, - [0x10CCF]={d='r'}, - [0x10CD0]={d='r'}, - [0x10CD1]={d='r'}, - [0x10CD2]={d='r'}, - [0x10CD3]={d='r'}, - [0x10CD4]={d='r'}, - [0x10CD5]={d='r'}, - [0x10CD6]={d='r'}, - [0x10CD7]={d='r'}, - [0x10CD8]={d='r'}, - [0x10CD9]={d='r'}, - [0x10CDA]={d='r'}, - [0x10CDB]={d='r'}, - [0x10CDC]={d='r'}, - [0x10CDD]={d='r'}, - [0x10CDE]={d='r'}, - [0x10CDF]={d='r'}, - [0x10CE0]={d='r'}, - [0x10CE1]={d='r'}, - [0x10CE2]={d='r'}, - [0x10CE3]={d='r'}, - [0x10CE4]={d='r'}, - [0x10CE5]={d='r'}, - [0x10CE6]={d='r'}, - [0x10CE7]={d='r'}, - [0x10CE8]={d='r'}, - [0x10CE9]={d='r'}, - [0x10CEA]={d='r'}, - [0x10CEB]={d='r'}, - [0x10CEC]={d='r'}, - [0x10CED]={d='r'}, - [0x10CEE]={d='r'}, - [0x10CEF]={d='r'}, - [0x10CF0]={d='r'}, - [0x10CF1]={d='r'}, - [0x10CF2]={d='r'}, - [0x10CFA]={d='r'}, - [0x10CFB]={d='r'}, - [0x10CFC]={d='r'}, - [0x10CFD]={d='r'}, - [0x10CFE]={d='r'}, - [0x10CFF]={d='r'}, [0x10E60]={d='an'}, [0x10E61]={d='an'}, [0x10E62]={d='an'}, @@ -5632,147 +5524,6 @@ Babel.characters = { [0x1E948]={d='nsm'}, [0x1E949]={d='nsm'}, [0x1E94A]={d='nsm'}, - [0x1EE00]={d='al'}, - [0x1EE01]={d='al'}, - [0x1EE02]={d='al'}, - [0x1EE03]={d='al'}, - [0x1EE05]={d='al'}, - [0x1EE06]={d='al'}, - [0x1EE07]={d='al'}, - [0x1EE08]={d='al'}, - [0x1EE09]={d='al'}, - [0x1EE0A]={d='al'}, - [0x1EE0B]={d='al'}, - [0x1EE0C]={d='al'}, - [0x1EE0D]={d='al'}, - [0x1EE0E]={d='al'}, - [0x1EE0F]={d='al'}, - [0x1EE10]={d='al'}, - [0x1EE11]={d='al'}, - [0x1EE12]={d='al'}, - [0x1EE13]={d='al'}, - [0x1EE14]={d='al'}, - [0x1EE15]={d='al'}, - [0x1EE16]={d='al'}, - [0x1EE17]={d='al'}, - [0x1EE18]={d='al'}, - [0x1EE19]={d='al'}, - [0x1EE1A]={d='al'}, - [0x1EE1B]={d='al'}, - [0x1EE1C]={d='al'}, - [0x1EE1D]={d='al'}, - [0x1EE1E]={d='al'}, - [0x1EE1F]={d='al'}, - [0x1EE21]={d='al'}, - [0x1EE22]={d='al'}, - [0x1EE24]={d='al'}, - [0x1EE27]={d='al'}, - [0x1EE29]={d='al'}, - [0x1EE2A]={d='al'}, - [0x1EE2B]={d='al'}, - [0x1EE2C]={d='al'}, - [0x1EE2D]={d='al'}, - [0x1EE2E]={d='al'}, - [0x1EE2F]={d='al'}, - [0x1EE30]={d='al'}, - [0x1EE31]={d='al'}, - [0x1EE32]={d='al'}, - [0x1EE34]={d='al'}, - [0x1EE35]={d='al'}, - [0x1EE36]={d='al'}, - [0x1EE37]={d='al'}, - [0x1EE39]={d='al'}, - [0x1EE3B]={d='al'}, - [0x1EE42]={d='al'}, - [0x1EE47]={d='al'}, - [0x1EE49]={d='al'}, - [0x1EE4B]={d='al'}, - [0x1EE4D]={d='al'}, - [0x1EE4E]={d='al'}, - [0x1EE4F]={d='al'}, - [0x1EE51]={d='al'}, - [0x1EE52]={d='al'}, - [0x1EE54]={d='al'}, - [0x1EE57]={d='al'}, - [0x1EE59]={d='al'}, - [0x1EE5B]={d='al'}, - [0x1EE5D]={d='al'}, - [0x1EE5F]={d='al'}, - [0x1EE61]={d='al'}, - [0x1EE62]={d='al'}, - [0x1EE64]={d='al'}, - [0x1EE67]={d='al'}, - [0x1EE68]={d='al'}, - [0x1EE69]={d='al'}, - [0x1EE6A]={d='al'}, - [0x1EE6C]={d='al'}, - [0x1EE6D]={d='al'}, - [0x1EE6E]={d='al'}, - [0x1EE6F]={d='al'}, - [0x1EE70]={d='al'}, - [0x1EE71]={d='al'}, - [0x1EE72]={d='al'}, - [0x1EE74]={d='al'}, - [0x1EE75]={d='al'}, - [0x1EE76]={d='al'}, - [0x1EE77]={d='al'}, - [0x1EE79]={d='al'}, - [0x1EE7A]={d='al'}, - [0x1EE7B]={d='al'}, - [0x1EE7C]={d='al'}, - [0x1EE7E]={d='al'}, - [0x1EE80]={d='al'}, - [0x1EE81]={d='al'}, - [0x1EE82]={d='al'}, - [0x1EE83]={d='al'}, - [0x1EE84]={d='al'}, - [0x1EE85]={d='al'}, - [0x1EE86]={d='al'}, - [0x1EE87]={d='al'}, - [0x1EE88]={d='al'}, - [0x1EE89]={d='al'}, - [0x1EE8B]={d='al'}, - [0x1EE8C]={d='al'}, - [0x1EE8D]={d='al'}, - [0x1EE8E]={d='al'}, - [0x1EE8F]={d='al'}, - [0x1EE90]={d='al'}, - [0x1EE91]={d='al'}, - [0x1EE92]={d='al'}, - [0x1EE93]={d='al'}, - [0x1EE94]={d='al'}, - [0x1EE95]={d='al'}, - [0x1EE96]={d='al'}, - [0x1EE97]={d='al'}, - [0x1EE98]={d='al'}, - [0x1EE99]={d='al'}, - [0x1EE9A]={d='al'}, - [0x1EE9B]={d='al'}, - [0x1EEA1]={d='al'}, - [0x1EEA2]={d='al'}, - [0x1EEA3]={d='al'}, - [0x1EEA5]={d='al'}, - [0x1EEA6]={d='al'}, - [0x1EEA7]={d='al'}, - [0x1EEA8]={d='al'}, - [0x1EEA9]={d='al'}, - [0x1EEAB]={d='al'}, - [0x1EEAC]={d='al'}, - [0x1EEAD]={d='al'}, - [0x1EEAE]={d='al'}, - [0x1EEAF]={d='al'}, - [0x1EEB0]={d='al'}, - [0x1EEB1]={d='al'}, - [0x1EEB2]={d='al'}, - [0x1EEB3]={d='al'}, - [0x1EEB4]={d='al'}, - [0x1EEB5]={d='al'}, - [0x1EEB6]={d='al'}, - [0x1EEB7]={d='al'}, - [0x1EEB8]={d='al'}, - [0x1EEB9]={d='al'}, - [0x1EEBA]={d='al'}, - [0x1EEBB]={d='al'}, [0x1EEF0]={d='on'}, [0x1EEF1]={d='on'}, [0x1F000]={d='on'}, diff --git a/Master/texmf-dist/tex/generic/babel/babel-data-cjk.lua b/Master/texmf-dist/tex/generic/babel/babel-data-cjk.lua index fc6e5bb17dc..7cf177f8d94 100644 --- a/Master/texmf-dist/tex/generic/babel/babel-data-cjk.lua +++ b/Master/texmf-dist/tex/generic/babel/babel-data-cjk.lua @@ -7,7 +7,7 @@ -- babel.dtx (with options: `cjkdata') -- -- --- Copyright (C) 2012-2024 Javier Bezos and Johannes L. Braams. +-- Copyright (C) 2012-2025 Javier Bezos and Johannes L. Braams. -- Copyright (C) 1989-2012 Johannes L. Braams and -- any individual authors listed elsewhere in this file. -- All rights reserved. @@ -32,9 +32,6 @@ -- and covered by LPPL is defined by the unpacking scripts (with -- extension |.ins|) which are part of the distribution. -- - -Babel = Babel or {} - Babel.cjk_characters = { [0x0021]={c='ex'}, [0x0022]={c='qu'}, @@ -196,14 +193,39 @@ Babel.cjk_characters = { [0x301D]={c='op'}, [0x301E]={c='cl'}, [0x301F]={c='cl'}, + [0x3043]={c='cj'}, + [0x3045]={c='cj'}, + [0x3047]={c='cj'}, + [0x3049]={c='cj'}, + [0x3063]={c='cj'}, + [0x3083]={c='cj'}, + [0x3085]={c='cj'}, + [0x3087]={c='cj'}, + [0x308E]={c='cj'}, + [0x3095]={c='cj'}, + [0x3096]={c='cj'}, [0x303B]={c='ns'}, [0x303C]={c='ns'}, + [0x3041]={c='cj'}, [0x309B]={c='ns'}, [0x309C]={c='ns'}, [0x309D]={c='ns'}, [0x309E]={c='ns'}, [0x30A0]={c='ns'}, + [0x30A1]={c='cj'}, + [0x30A3]={c='cj'}, + [0x30A5]={c='cj'}, + [0x30A7]={c='cj'}, + [0x30A9]={c='cj'}, + [0x30C3]={c='cj'}, + [0x30E3]={c='cj'}, + [0x30E5]={c='cj'}, + [0x30E7]={c='cj'}, + [0x30EE]={c='cj'}, + [0x30F5]={c='cj'}, + [0x30F6]={c='cj'}, [0x30FB]={c='ns'}, + [0x30FC]={c='cj'}, [0x30FD]={c='ns'}, [0x30FE]={c='ns'}, [0xA015]={c='ns'}, @@ -273,25 +295,33 @@ Babel.cjk_characters = { [0xFF61]={c='cl', w='h'}, [0xFF62]={c='op', w='h'}, [0xFF63]={c='cl', w='h'}, - [0xFF64]={c='cl', w='h'} + [0xFF64]={c='cl', w='h'}, + [0xFF70]={c='cj'} } Babel.cjk_class = setmetatable ( Babel.cjk_characters, { __index = function(_, k) if (k >= 0xAC00 and k <= 0xD7A3) -- H2/H3 - or (k >= 0x2E80 and k <= 0x9FFF) + or (k >= 0x2E80 and k <= 0x31E9) -- Skip small + or (k >= 0x3200 and k <= 0x9FFF) or (k >= 0xA000 and k <= 0xA48F) -- Yi or (k >= 0xA490 and k <= 0xA4CF) -- Yi or (k >= 0xF900 and k <= 0xFAFF) or (k >= 0xFE10 and k <= 0xFE1F) or (k >= 0xFE30 and k <= 0xFE6F) - or (k >= 0xFF00 and k <= 0xFFEF) + or (k >= 0xFF00 and k <= 0xFF66) -- Skip small + or (k >= 0xFF70 and k <= 0xFFEF) or (k >= 0x1F000 and k <= 0x1FFFD) or (k >= 0x20000 and k <= 0x2FFFD) or (k >= 0x30000 and k <= 0x3FFFD) then return {c='I'} elseif (k >= 0x20A0 and k <= 0x20CF) then return {c='pr'} + elseif (k >= 0x31F0 and k <= 0x31FF) + or (k >= 0xFF67 and k <= 0xFF6F) + or (k >= 0x1B150 and k <= 0x1B152) + or (k >= 0x1B164 and k <= 0x1B167) then + return {c='cj'} else return {c='O'} end diff --git a/Master/texmf-dist/tex/generic/babel/babel-transforms.lua b/Master/texmf-dist/tex/generic/babel/babel-transforms.lua index 08ee95e770c..678f30ff2cf 100644 --- a/Master/texmf-dist/tex/generic/babel/babel-transforms.lua +++ b/Master/texmf-dist/tex/generic/babel/babel-transforms.lua @@ -7,7 +7,7 @@ -- babel.dtx (with options: `transforms') -- -- --- Copyright (C) 2012-2024 Javier Bezos and Johannes L. Braams. +-- Copyright (C) 2012-2025 Javier Bezos and Johannes L. Braams. -- Copyright (C) 1989-2012 Johannes L. Braams and -- any individual authors listed elsewhere in this file. -- All rights reserved. @@ -32,27 +32,23 @@ -- and covered by LPPL is defined by the unpacking scripts (with -- extension |.ins|) which are part of the distribution. -- - Babel.linebreaking.replacements = {} Babel.linebreaking.replacements[0] = {} -- pre Babel.linebreaking.replacements[1] = {} -- post --- Discretionaries contain strings as nodes -function Babel.str_to_nodes(fn, matches, base) - local n, head, last - if fn == nil then return nil end - for s in string.utfvalues(fn(matches)) do - if base.id == 7 then - base = base.replace - end - n = node.copy(base) - n.char = s - if not head then - head = n - else - last.next = n - end - last = n +function Babel.tovalue(v) + if type(v) == 'table' then + return Babel.locale_props[v[1]].vars[v[2]] or v[3] + else + return v + end +end + +Babel.attr_hboxed = luatexbase.registernumber'bbl@attr@hboxed' + +function Babel.set_hboxed(head, gc) + for item in node.traverse(head) do + node.set_attribute(item, Babel.attr_hboxed, 1) end return head end @@ -89,7 +85,11 @@ Babel.fetch_subtext[0] = function(head) if Babel.ignore_pre_char(item) then word_string = word_string .. Babel.us_char else - word_string = word_string .. unicode.utf8.char(item.char) + if node.has_attribute(item, Babel.attr_hboxed) then + word_string = word_string .. Babel.us_char + else + word_string = word_string .. unicode.utf8.char(item.char) + end end word_nodes[#word_nodes+1] = item else @@ -97,7 +97,11 @@ Babel.fetch_subtext[0] = function(head) end elseif item.id == 12 and item.subtype == 13 then - word_string = word_string .. ' ' + if node.has_attribute(item, Babel.attr_hboxed) then + word_string = word_string .. Babel.us_char + else + word_string = word_string .. ' ' + end word_nodes[#word_nodes+1] = item -- Ignore leading unrecognized nodes, too. @@ -138,7 +142,11 @@ Babel.fetch_subtext[1] = function(head) if item.lang == lang or lang == nil then if (item.char ~= 124) and (item.char ~= 61) then -- not =, not | lang = lang or item.lang - word_string = word_string .. unicode.utf8.char(item.char) + if node.has_attribute(item, Babel.attr_hboxed) then + word_string = word_string .. Babel.us_char + else + word_string = word_string .. unicode.utf8.char(item.char) + end word_nodes[#word_nodes+1] = item end else @@ -146,11 +154,19 @@ Babel.fetch_subtext[1] = function(head) end elseif item.id == 7 and item.subtype == 2 then - word_string = word_string .. '=' + if node.has_attribute(item, Babel.attr_hboxed) then + word_string = word_string .. Babel.us_char + else + word_string = word_string .. '=' + end word_nodes[#word_nodes+1] = item elseif item.id == 7 and item.subtype == 3 then - word_string = word_string .. '|' + if node.has_attribute(item, Babel.attr_hboxed) then + word_string = word_string .. Babel.us_char + else + word_string = word_string .. '|' + end word_nodes[#word_nodes+1] = item -- (1) Go to next word if nothing was found, and (2) implicitly @@ -187,6 +203,7 @@ Babel.us_char = string.char(31) function Babel.hyphenate_replace(head, mode) local u = unicode.utf8 local lbkr = Babel.linebreaking.replacements[mode] + local tovalue = Babel.tovalue local word_head = head @@ -390,9 +407,9 @@ function Babel.hyphenate_replace(head, mode) d.replace = Babel.str_to_nodes(crep.no, matches, item_base) d.attr = item_base.attr if crep.pre == nil then -- TeXbook p96 - d.penalty = crep.penalty or tex.hyphenpenalty + d.penalty = tovalue(crep.penalty) or tex.hyphenpenalty else - d.penalty = crep.penalty or tex.exhyphenpenalty + d.penalty = tovalue(crep.penalty) or tex.exhyphenpenalty end placeholder = '|' head, new = node.insert_before(head, item, d) @@ -403,16 +420,16 @@ function Babel.hyphenate_replace(head, mode) elseif crep and crep.penalty then d = node.new(14, 0) -- (penalty, userpenalty) d.attr = item_base.attr - d.penalty = crep.penalty + d.penalty = tovalue(crep.penalty) head, new = node.insert_before(head, item, d) elseif crep and crep.space then -- 655360 = 10 pt = 10 * 65536 sp d = node.new(12, 13) -- (glue, spaceskip) local quad = font.getfont(item_base.font).size or 655360 - node.setglue(d, crep.space[1] * quad, - crep.space[2] * quad, - crep.space[3] * quad) + node.setglue(d, tovalue(crep.space[1]) * quad, + tovalue(crep.space[2]) * quad, + tovalue(crep.space[3]) * quad) if mode == 0 then placeholder = ' ' end @@ -422,18 +439,18 @@ function Babel.hyphenate_replace(head, mode) -- 655360 = 10 pt = 10 * 65536 sp d = node.new(2, 3) -- (rule, empty) = \no*rule local quad = font.getfont(item_base.font).size or 655360 - d.width = crep.norule[1] * quad - d.height = crep.norule[2] * quad - d.depth = crep.norule[3] * quad + d.width = tovalue(crep.norule[1]) * quad + d.height = tovalue(crep.norule[2]) * quad + d.depth = tovalue(crep.norule[3]) * quad head, new = node.insert_before(head, item, d) elseif crep and crep.spacefactor then d = node.new(12, 13) -- (glue, spaceskip) local base_font = font.getfont(item_base.font) node.setglue(d, - crep.spacefactor[1] * base_font.parameters['space'], - crep.spacefactor[2] * base_font.parameters['space_stretch'], - crep.spacefactor[3] * base_font.parameters['space_shrink']) + tovalue(crep.spacefactor[1]) * base_font.parameters['space'], + tovalue(crep.spacefactor[2]) * base_font.parameters['space_stretch'], + tovalue(crep.spacefactor[3]) * base_font.parameters['space_shrink']) if mode == 0 then placeholder = ' ' end @@ -446,7 +463,7 @@ function Babel.hyphenate_replace(head, mode) d = node.new(13, 1) -- (kern, user) local quad = font.getfont(item_base.font).size or 655360 d.attr = item_base.attr - d.kern = crep.kern * quad + d.kern = tovalue(crep.kern) * quad head, new = node.insert_before(head, item, d) elseif crep and crep.node then @@ -454,7 +471,7 @@ function Babel.hyphenate_replace(head, mode) d.attr = item_base.attr head, new = node.insert_before(head, item, d) - end -- ie replacement cases + end -- i.e., replacement cases -- Shared by disc, space(factor), kern, node and penalty. if sc == 1 then diff --git a/Master/texmf-dist/tex/generic/babel/babel.def b/Master/texmf-dist/tex/generic/babel/babel.def index d7a24d8540c..cc14246fd3a 100644 --- a/Master/texmf-dist/tex/generic/babel/babel.def +++ b/Master/texmf-dist/tex/generic/babel/babel.def @@ -7,7 +7,7 @@ %% babel.dtx (with options: `core') %% %% -%% Copyright (C) 2012-2024 Javier Bezos and Johannes L. Braams. +%% Copyright (C) 2012-2025 Javier Bezos and Johannes L. Braams. %% Copyright (C) 1989-2012 Johannes L. Braams and %% any individual authors listed elsewhere in this file. %% All rights reserved. @@ -32,7 +32,6 @@ %% and covered by LPPL is defined by the unpacking scripts (with %% extension |.ins|) which are part of the distribution. %% - \ifx\ldf@quit\@undefined\else \endinput\fi % Same line! \ifx\ProvidesFile\@undefined @@ -40,8 +39,8 @@ \wlog{File: #1 #4 #3 <#2>}% \let\ProvidesFile\@undefined} \fi -\ProvidesFile{babel.def}[2024/06/02 v24.6 Babel common definitions] -\ifx\AtBeginDocument\@undefined % TODO. change test. +\ProvidesFile{babel.def}[2025/02/14 v25.4 Babel common definitions] +\ifx\AtBeginDocument\@undefined \def\@empty{} \def\loadlocalcfg#1{% \openin0#1.cfg @@ -596,8 +595,8 @@ \toks@\expandafter{\bbl@tempc#3}% \expandafter\edef\csname extras\languagename\endcsname{\the\toks@}% \fi} -\def\bbl@version{24.6} -\def\bbl@date{2024/06/02} +\def\bbl@version{25.4} +\def\bbl@date{2025/02/14} \ifx\language\@undefined \csname newcount\endcsname\language \fi @@ -718,14 +717,13 @@ \bbl@ifunset{bbl@id@@\languagename}% {\count@\bbl@id@last\relax \advance\count@\@ne - \bbl@csarg\chardef{id@@\languagename}\count@ + \global\bbl@csarg\chardef{id@@\languagename}\count@ \edef\bbl@id@last{\the\count@}% \ifcase\bbl@engine\or \directlua{ - Babel = Babel or {} - Babel.locale_props = Babel.locale_props or {} Babel.locale_props[\bbl@id@last] = {} Babel.locale_props[\bbl@id@last].name = '\languagename' + Babel.locale_props[\bbl@id@last].vars = {} }% \fi}% {}% @@ -738,30 +736,8 @@ \let\endselectlanguage\relax \def\BabelContentsFiles{toc,lof,lot} \def\bbl@set@language#1{% from selectlanguage, pop@ - % The old buggy way. Preserved for compatibility. - \edef\languagename{% - \ifnum\escapechar=\expandafter`\string#1\@empty - \else\string#1\@empty\fi}% - \ifcat\relax\noexpand#1% - \expandafter\ifx\csname date\languagename\endcsname\relax - \edef\languagename{#1}% - \let\localename\languagename - \else - \bbl@info{Using '\string\language' instead of 'language' is\\% - deprecated. If what you want is to use a\\% - macro containing the actual locale, make\\% - sure it does not not match any language.\\% - Reported}% - \ifx\scantokens\@undefined - \def\localename{??}% - \else - \scantokens\expandafter{\expandafter - \def\expandafter\localename\expandafter{\languagename}}% - \fi - \fi - \else - \def\localename{#1}% This one has the correct catcodes - \fi + % The old buggy way. Preserved for compatibility, but simplified + \edef\languagename{\expandafter\string#1\@empty}% \select@language{\languagename}% % write to auxs \expandafter\ifx\csname date\languagename\endcsname\relax\else @@ -776,18 +752,21 @@ \fi} \let\bbl@restorelastskip\relax \let\bbl@savelastskip\relax -\newif\ifbbl@bcpallowed -\bbl@bcpallowedfalse -\def\select@language#1{% from set@, babel@aux +\def\select@language#1{% from set@, babel@aux, babel@toc \ifx\bbl@selectorname\@empty \def\bbl@selectorname{select}% - % set hymap \fi + % set hymap \ifnum\bbl@hymapsel=\@cclv\chardef\bbl@hymapsel4\relax\fi - % set name + % set name (when coming from babel@aux) \edef\languagename{#1}% \bbl@fixname\languagename - % TODO. name@map must be here? + % define \localename when coming from set@, with a trick + \ifx\scantokens\@undefined + \def\localename{??}% + \else + \bbl@exp{\\\scantokens{\def\\\localename{\languagename}\\\noexpand}\relax}% + \fi \bbl@provide@locale \bbl@iflanguage\languagename{% \let\bbl@select@type\z@ @@ -795,7 +774,7 @@ \def\babel@aux#1#2{% \select@language{#1}% \bbl@foreach\BabelContentsFiles{% \relax -> don't assume vertical mode - \@writefile{##1}{\babel@toc{#1}{#2}\relax}}}% TODO - plain? + \@writefile{##1}{\babel@toc{#1}{#2}\relax}}}% \def\babel@toc#1#2{% \select@language{#1}} \newif\ifbbl@usedategroup @@ -824,7 +803,7 @@ \csname captions#1\endcsname\relax \fi \bbl@xin@{,date,}{,\bbl@select@opts,}% - \ifin@ % if \foreign... within \<lang>date + \ifin@ % if \foreign... within \<language>date \csname date#1\endcsname\relax \fi \fi @@ -862,8 +841,14 @@ \bbl@xin@{/u}{/\bbl@tempa}% \ifin@\else\bbl@xin@{/e}{/\bbl@tempa}\fi % elongated forms \ifin@\else\bbl@xin@{/k}{/\bbl@tempa}\fi % only kashida - \ifin@\else\bbl@xin@{/p}{/\bbl@tempa}\fi % padding (eg, Tibetan) + \ifin@\else\bbl@xin@{/p}{/\bbl@tempa}\fi % padding (e.g., Tibetan) \ifin@\else\bbl@xin@{/v}{/\bbl@tempa}\fi % variable font + % hyphenation - save mins + \babel@savevariable\lefthyphenmin + \babel@savevariable\righthyphenmin + \ifnum\bbl@engine=\@ne + \babel@savevariable\hyphenationmin + \fi \ifin@ % unhyphenated/kashida/elongated/padding = allow stretching \language\l@unhyphenated @@ -875,16 +860,18 @@ % other = select patterns \bbl@patterns{#1}% \fi - % hyphenation - mins - \babel@savevariable\lefthyphenmin - \babel@savevariable\righthyphenmin + % hyphenation - set mins \expandafter\ifx\csname #1hyphenmins\endcsname\relax \set@hyphenmins\tw@\thr@@\relax + \@nameuse{bbl@hyphenmins@}% \else \expandafter\expandafter\expandafter\set@hyphenmins \csname #1hyphenmins\endcsname\relax \fi - % reset selector name + \@nameuse{bbl@hyphenmins@}% + \@nameuse{bbl@hyphenmins@\languagename}% + \@nameuse{bbl@hyphenatmin@}% + \@nameuse{bbl@hyphenatmin@\languagename}% \let\bbl@selectorname\@empty} \long\def\otherlanguage#1{% \def\bbl@selectorname{other}% @@ -928,6 +915,9 @@ \BabelText{#2}% Still in vertical mode! {\par}% \endgroup} +\providecommand\BabelWrapText[1]{% + \def\bbl@tempa{\def\BabelText####1}% + \expandafter\bbl@tempa\expandafter{\BabelText{#1}}} \def\foreign@language#1{% % set name \edef\languagename{#1}% @@ -936,6 +926,7 @@ \bbl@usedategroupfalse \fi \bbl@fixname\languagename + \let\localename\languagename % TODO. name@map here? \bbl@provide@locale \bbl@iflanguage\languagename{% @@ -1054,13 +1045,91 @@ preloaded for \bbl@nulllanguage\space instead}} \let\bbl@usehooks\@gobbletwo \ifx\bbl@onlyswitch\@empty\endinput\fi - % Here ended switch.def +\bbl@trace{Defining babelensure} +\newcommand\babelensure[2][]{% + \AddBabelHook{babel-ensure}{afterextras}{% + \ifcase\bbl@select@type + \bbl@cl{e}% + \fi}% + \begingroup + \let\bbl@ens@include\@empty + \let\bbl@ens@exclude\@empty + \def\bbl@ens@fontenc{\relax}% + \def\bbl@tempb##1{% + \ifx\@empty##1\else\noexpand##1\expandafter\bbl@tempb\fi}% + \edef\bbl@tempa{\bbl@tempb#1\@empty}% + \def\bbl@tempb##1=##2\@@{\@namedef{bbl@ens@##1}{##2}}% + \bbl@foreach\bbl@tempa{\bbl@tempb##1\@@}% + \def\bbl@tempc{\bbl@ensure}% + \expandafter\bbl@add\expandafter\bbl@tempc\expandafter{% + \expandafter{\bbl@ens@include}}% + \expandafter\bbl@add\expandafter\bbl@tempc\expandafter{% + \expandafter{\bbl@ens@exclude}}% + \toks@\expandafter{\bbl@tempc}% + \bbl@exp{% + \endgroup + \def\<bbl@e@#2>{\the\toks@{\bbl@ens@fontenc}}}} +\def\bbl@ensure#1#2#3{% 1: include 2: exclude 3: fontenc + \def\bbl@tempb##1{% elt for (excluding) \bbl@captionslist list + \ifx##1\@undefined % 3.32 - Don't assume the macro exists + \edef##1{\noexpand\bbl@nocaption + {\bbl@stripslash##1}{\languagename\bbl@stripslash##1}}% + \fi + \ifx##1\@empty\else + \in@{##1}{#2}% + \ifin@\else + \bbl@ifunset{bbl@ensure@\languagename}% + {\bbl@exp{% + \\\DeclareRobustCommand\<bbl@ensure@\languagename>[1]{% + \\\foreignlanguage{\languagename}% + {\ifx\relax#3\else + \\\fontencoding{#3}\\\selectfont + \fi + ########1}}}}% + {}% + \toks@\expandafter{##1}% + \edef##1{% + \bbl@csarg\noexpand{ensure@\languagename}% + {\the\toks@}}% + \fi + \expandafter\bbl@tempb + \fi}% + \expandafter\bbl@tempb\bbl@captionslist\today\@empty + \def\bbl@tempa##1{% elt for include list + \ifx##1\@empty\else + \bbl@csarg\in@{ensure@\languagename\expandafter}\expandafter{##1}% + \ifin@\else + \bbl@tempb##1\@empty + \fi + \expandafter\bbl@tempa + \fi}% + \bbl@tempa#1\@empty} +\def\bbl@captionslist{% + \prefacename\refname\abstractname\bibname\chaptername\appendixname + \contentsname\listfigurename\listtablename\indexname\figurename + \tablename\partname\enclname\ccname\headtoname\pagename\seename + \alsoname\proofname\glossaryname} +\bbl@trace{Short tags} +\newcommand\babeltags[1]{% + \edef\bbl@tempa{\zap@space#1 \@empty}% + \def\bbl@tempb##1=##2\@@{% + \edef\bbl@tempc{% + \noexpand\newcommand + \expandafter\noexpand\csname ##1\endcsname{% + \noexpand\protect + \expandafter\noexpand\csname otherlanguage*\endcsname{##2}} + \noexpand\newcommand + \expandafter\noexpand\csname text##1\endcsname{% + \noexpand\foreignlanguage{##2}}} + \bbl@tempc}% + \bbl@for\bbl@tempa\bbl@tempa{% + \expandafter\bbl@tempb\bbl@tempa\@@}} +\bbl@trace{Compatibility with language.def} \ifx\directlua\@undefined\else \ifx\bbl@luapatterns\@undefined \input luababel.def \fi \fi -\bbl@trace{Compatibility with language.def} \ifx\bbl@languages\@undefined \ifx\directlua\@undefined \openin1 = language.def % TODO. Remove hardcoded number @@ -1093,28 +1162,6 @@ \xdef#1{\the\toks@}}% \fi \fi} -\def\bbl@withactive#1#2{% - \begingroup - \lccode`~=`#2\relax - \lowercase{\endgroup#1~}} -\def\bbl@redefine#1{% - \edef\bbl@tempa{\bbl@stripslash#1}% - \expandafter\let\csname org@\bbl@tempa\endcsname#1% - \expandafter\def\csname\bbl@tempa\endcsname} -\@onlypreamble\bbl@redefine -\def\bbl@redefine@long#1{% - \edef\bbl@tempa{\bbl@stripslash#1}% - \expandafter\let\csname org@\bbl@tempa\endcsname#1% - \long\expandafter\def\csname\bbl@tempa\endcsname} -\@onlypreamble\bbl@redefine@long -\def\bbl@redefinerobust#1{% - \edef\bbl@tempa{\bbl@stripslash#1}% - \bbl@ifunset{\bbl@tempa\space}% - {\expandafter\let\csname org@\bbl@tempa\endcsname#1% - \bbl@exp{\def\\#1{\\\protect\<\bbl@tempa\space>}}}% - {\bbl@exp{\let\<org@\bbl@tempa>\<\bbl@tempa\space>}}% - \@namedef{\bbl@tempa\space}} -\@onlypreamble\bbl@redefinerobust \bbl@trace{Hooks} \newcommand\AddBabelHook[3][]{% \bbl@ifunset{bbl@hk@#2}{\EnableBabelHook{#2}}{}% @@ -1148,70 +1195,8 @@ \def\bbl@tempa#1=#2\@@{\NewHook{babel/#1}} \bbl@foreach\bbl@evargs{\bbl@tempa#1\@@} \fi -\bbl@trace{Defining babelensure} -\newcommand\babelensure[2][]{% - \AddBabelHook{babel-ensure}{afterextras}{% - \ifcase\bbl@select@type - \bbl@cl{e}% - \fi}% - \begingroup - \let\bbl@ens@include\@empty - \let\bbl@ens@exclude\@empty - \def\bbl@ens@fontenc{\relax}% - \def\bbl@tempb##1{% - \ifx\@empty##1\else\noexpand##1\expandafter\bbl@tempb\fi}% - \edef\bbl@tempa{\bbl@tempb#1\@empty}% - \def\bbl@tempb##1=##2\@@{\@namedef{bbl@ens@##1}{##2}}% - \bbl@foreach\bbl@tempa{\bbl@tempb##1\@@}% - \def\bbl@tempc{\bbl@ensure}% - \expandafter\bbl@add\expandafter\bbl@tempc\expandafter{% - \expandafter{\bbl@ens@include}}% - \expandafter\bbl@add\expandafter\bbl@tempc\expandafter{% - \expandafter{\bbl@ens@exclude}}% - \toks@\expandafter{\bbl@tempc}% - \bbl@exp{% - \endgroup - \def\<bbl@e@#2>{\the\toks@{\bbl@ens@fontenc}}}} -\def\bbl@ensure#1#2#3{% 1: include 2: exclude 3: fontenc - \def\bbl@tempb##1{% elt for (excluding) \bbl@captionslist list - \ifx##1\@undefined % 3.32 - Don't assume the macro exists - \edef##1{\noexpand\bbl@nocaption - {\bbl@stripslash##1}{\languagename\bbl@stripslash##1}}% - \fi - \ifx##1\@empty\else - \in@{##1}{#2}% - \ifin@\else - \bbl@ifunset{bbl@ensure@\languagename}% - {\bbl@exp{% - \\\DeclareRobustCommand\<bbl@ensure@\languagename>[1]{% - \\\foreignlanguage{\languagename}% - {\ifx\relax#3\else - \\\fontencoding{#3}\\\selectfont - \fi - ########1}}}}% - {}% - \toks@\expandafter{##1}% - \edef##1{% - \bbl@csarg\noexpand{ensure@\languagename}% - {\the\toks@}}% - \fi - \expandafter\bbl@tempb - \fi}% - \expandafter\bbl@tempb\bbl@captionslist\today\@empty - \def\bbl@tempa##1{% elt for include list - \ifx##1\@empty\else - \bbl@csarg\in@{ensure@\languagename\expandafter}\expandafter{##1}% - \ifin@\else - \bbl@tempb##1\@empty - \fi - \expandafter\bbl@tempa - \fi}% - \bbl@tempa#1\@empty} -\def\bbl@captionslist{% - \prefacename\refname\abstractname\bibname\chaptername\appendixname - \contentsname\listfigurename\listtablename\indexname\figurename - \tablename\partname\enclname\ccname\headtoname\pagename\seename - \alsoname\proofname\glossaryname} +\providecommand\PassOptionsToLocale[2]{% + \bbl@csarg\bbl@add@list{passto@#2}{#1}} \bbl@trace{Macros for setting language files up} \def\bbl@ldfinit{% \let\bbl@screset\@empty @@ -1244,7 +1229,7 @@ \catcode`\@=\atcatcode \let\atcatcode\relax \catcode`\==\eqcatcode \let\eqcatcode\relax \endinput} -\def\bbl@afterldf#1{% TODO. Merge into the next macro? Unused elsewhere +\def\bbl@afterldf#1{% \bbl@afterlang \let\bbl@afterlang\relax \let\BabelModifiers\relax @@ -1260,11 +1245,14 @@ \@onlypreamble\ldf@finish \def\main@language#1{% \def\bbl@main@language{#1}% - \let\languagename\bbl@main@language % TODO. Set localename + \let\languagename\bbl@main@language + \let\localename\bbl@main@language + \let\mainlocalename\bbl@main@language \bbl@id@assign \bbl@patterns{\languagename}} \def\bbl@beforestart{% \def\@nolanerr##1{% + \bbl@carg\chardef{l@##1}\z@ \bbl@warning{Undefined language '##1' in aux.\\Reported}}% \bbl@usehooks{beforestart}{}% \global\let\bbl@beforestart\relax} @@ -1272,8 +1260,8 @@ {\@nameuse{bbl@beforestart}}% Group! \if@filesw \providecommand\babel@aux[2]{}% - \immediate\write\@mainaux{% - \string\providecommand\string\babel@aux[2]{}}% + \immediate\write\@mainaux{\unexpanded{% + \providecommand\babel@aux[2]{\global\let\babel@toc\@gobbletwo}}}% \immediate\write\@mainaux{\string\@nameuse{bbl@beforestart}}% \fi \expandafter\selectlanguage\expandafter{\bbl@main@language}% @@ -1283,7 +1271,7 @@ \global\let\babel@aux\@gobbletwo % Also as flag \fi} \ifcase\bbl@engine\or - \AtBeginDocument{\pagedir\bodydir} % TODO - a better place + \AtBeginDocument{\pagedir\bodydir} \fi \def\select@language@x#1{% \ifcase\bbl@select@type @@ -1292,6 +1280,10 @@ \select@language{#1}% \fi} \bbl@trace{Shorhands} +\def\bbl@withactive#1#2{% + \begingroup + \lccode`~=`#2\relax + \lowercase{\endgroup#1~}} \def\bbl@add@special#1{% 1:a macro like \", \?, etc. \bbl@add\dospecials{\do#1}% test @sanitize = \relax, for back. compat. \bbl@ifunset{@sanitize}{}{\bbl@add\@sanitize{\@makeother#1}}% @@ -1306,18 +1298,6 @@ \endgroup \fi \fi} -\def\bbl@remove@special#1{% - \begingroup - \def\x##1##2{\ifnum`#1=`##2\noexpand\@empty - \else\noexpand##1\noexpand##2\fi}% - \def\do{\x\do}% - \def\@makeother{\x\@makeother}% - \edef\x{\endgroup - \def\noexpand\dospecials{\dospecials}% - \expandafter\ifx\csname @sanitize\endcsname\relax\else - \def\noexpand\@sanitize{\@sanitize}% - \fi}% - \x} \def\bbl@active@def#1#2#3#4{% \@namedef{#3#1}{% \expandafter\ifx\csname#2@sh@#1@\endcsname\relax @@ -1420,7 +1400,7 @@ \bbl@afterfi\csname#1@sh@#2@sel\endcsname \fi} \begingroup -\bbl@ifunset{ifincsname}% TODO. Ugly. Correct? Only Plain? +\bbl@ifunset{ifincsname}% {\gdef\active@prefix#1{% \ifx\protect\@typeset@protect \else @@ -1461,7 +1441,6 @@ \csname bbl@normal@\string#1\endcsname} \def\bbl@firstcs#1#2{\csname#1\endcsname} \def\bbl@scndcs#1#2{\csname#2\endcsname} - \def\babel@texpdf#1#2#3#4{% \ifx\texorpdfstring\@undefined \textormath{#1}{#3}% @@ -1502,7 +1481,7 @@ \expandafter\@firstoftwo \fi} \def\user@group{user} -\def\language@group{english} % TODO. I don't like defaults +\def\language@group{english} \def\system@group{system} \def\useshorthands{% \@ifstar\bbl@usesh@s{\bbl@usesh@x{}}} @@ -1717,6 +1696,24 @@ \def\babel@savevariable#1{% \toks@\expandafter{\originalTeX #1=}% \bbl@exp{\def\\\originalTeX{\the\toks@\the#1\relax}}} +\def\bbl@redefine#1{% + \edef\bbl@tempa{\bbl@stripslash#1}% + \expandafter\let\csname org@\bbl@tempa\endcsname#1% + \expandafter\def\csname\bbl@tempa\endcsname} +\@onlypreamble\bbl@redefine +\def\bbl@redefine@long#1{% + \edef\bbl@tempa{\bbl@stripslash#1}% + \expandafter\let\csname org@\bbl@tempa\endcsname#1% + \long\expandafter\def\csname\bbl@tempa\endcsname} +\@onlypreamble\bbl@redefine@long +\def\bbl@redefinerobust#1{% + \edef\bbl@tempa{\bbl@stripslash#1}% + \bbl@ifunset{\bbl@tempa\space}% + {\expandafter\let\csname org@\bbl@tempa\endcsname#1% + \bbl@exp{\def\\#1{\\\protect\<\bbl@tempa\space>}}}% + {\bbl@exp{\let\<org@\bbl@tempa>\<\bbl@tempa\space>}}% + \@namedef{\bbl@tempa\space}} +\@onlypreamble\bbl@redefinerobust \def\bbl@frenchspacing{% \ifnum\the\sfcode`\.=\@m \let\bbl@nonfrenchspacing\relax @@ -1753,21 +1750,6 @@ \fi}% \bbl@fs@chars \fi\fi\fi} -\bbl@trace{Short tags} -\def\babeltags#1{% - \edef\bbl@tempa{\zap@space#1 \@empty}% - \def\bbl@tempb##1=##2\@@{% - \edef\bbl@tempc{% - \noexpand\newcommand - \expandafter\noexpand\csname ##1\endcsname{% - \noexpand\protect - \expandafter\noexpand\csname otherlanguage*\endcsname{##2}} - \noexpand\newcommand - \expandafter\noexpand\csname text##1\endcsname{% - \noexpand\foreignlanguage{##2}}} - \bbl@tempc}% - \bbl@for\bbl@tempa\bbl@tempa{% - \expandafter\bbl@tempb\bbl@tempa\@@}} \bbl@trace{Hyphens} \@onlypreamble\babelhyphenation \AtEndOfPackage{% @@ -1794,6 +1776,23 @@ {\csname bbl@hyphenation@\bbl@tempa\endcsname\space}% #2}}}% \fi}} +\ifx\NewDocumentCommand\@undefined\else + \NewDocumentCommand\babelhyphenmins{sommo}{% + \IfNoValueTF{#2}% + {\protected@edef\bbl@hyphenmins@{\set@hyphenmins{#3}{#4}}% + \IfValueT{#5}{% + \protected@edef\bbl@hyphenatmin@{\hyphenationmin=#5\relax}}% + \IfBooleanT{#1}{% + \lefthyphenmin=#3\relax + \righthyphenmin=#4\relax + \IfValueT{#5}{\hyphenationmin=#5\relax}}}% + {\edef\bbl@tempb{\zap@space#2 \@empty}% + \bbl@for\bbl@tempa\bbl@tempb{% + \@namedef{bbl@hyphenmins@\bbl@tempa}{\set@hyphenmins{#3}{#4}}% + \IfValueT{#5}{% + \@namedef{bbl@hyphenatmin@\bbl@tempa}{\hyphenationmin=#5\relax}}}% + \IfBooleanT{#1}{\bbl@error{hyphenmins-args}{}{}{}}}} +\fi \def\bbl@allowhyphens{\ifvmode\else\nobreak\hskip\z@skip\fi} \def\bbl@t@one{T1} \def\allowhyphens{\ifx\cf@encoding\bbl@t@one\else\bbl@allowhyphens\fi} @@ -1802,9 +1801,9 @@ \def\bbl@hyphen{% \@ifstar{\bbl@hyphen@i @}{\bbl@hyphen@i\@empty}} \def\bbl@hyphen@i#1#2{% - \bbl@ifunset{bbl@hy@#1#2\@empty}% + \lowercase{\bbl@ifunset{bbl@hy@#1#2\@empty}}% {\csname bbl@#1usehyphen\endcsname{\discretionary{#2}{}{#2}}}% - {\csname bbl@hy@#1#2\@empty\endcsname}} + {\lowercase{\csname bbl@hy@#1#2\@empty\endcsname}}} \def\bbl@usehyphen#1{% \leavevmode \ifdim\lastskip>\z@\mbox{#1}\else\nobreak#1\fi @@ -1932,12 +1931,12 @@ \def\bbl@sctest{% \bbl@xin@{,\bbl@opt@strings,}{,\bbl@sc@label,\bbl@sc@fontenc,}}% \fi - \ifx\bbl@opt@strings\@nnil % ie, no strings key -> defaults - \else\ifx\bbl@opt@strings\relax % ie, strings=encoded + \ifx\bbl@opt@strings\@nnil % i.e., no strings key -> defaults + \else\ifx\bbl@opt@strings\relax % i.e., strings=encoded \let\AfterBabelCommands\bbl@aftercmds \let\SetString\bbl@setstring \let\bbl@stringdef\bbl@encstring - \else % ie, strings=value + \else % i.e., strings=value \bbl@sctest \ifin@ \let\AfterBabelCommands\bbl@aftercmds @@ -1981,10 +1980,10 @@ \endgroup \bbl@scafter} \let\bbl@endcommands\EndBabelCommands -\def\bbl@setstring#1#2{% eg, \prefacename{<string>} +\def\bbl@setstring#1#2{% e.g., \prefacename{<string>} \bbl@forlang\bbl@tempa{% \edef\bbl@LC{\bbl@tempa\bbl@stripslash#1}% - \bbl@ifunset{\bbl@LC}% eg, \germanchaptername + \bbl@ifunset{\bbl@LC}% e.g., \germanchaptername {\bbl@exp{% \global\\\bbl@add\<\bbl@G\bbl@tempa>{\\\bbl@scset\\#1\<\bbl@LC>}}}% {}% @@ -2026,7 +2025,7 @@ \bbl@xin@{,}{\bbl@language@opts}% \chardef\bbl@opt@hyphenmap\ifin@4\else\@ne\fi \fi} -\newcommand\setlocalecaption{% TODO. Catch typos. +\newcommand\setlocalecaption{% \@ifstar\bbl@setcaption@s\bbl@setcaption@x} \def\bbl@setcaption@x#1#2#3{% language caption-name string \bbl@trim@def\bbl@tempa{#2}% diff --git a/Master/texmf-dist/tex/generic/babel/babel.sty b/Master/texmf-dist/tex/generic/babel/babel.sty index 71582e98272..95924d22ddb 100644 --- a/Master/texmf-dist/tex/generic/babel/babel.sty +++ b/Master/texmf-dist/tex/generic/babel/babel.sty @@ -7,7 +7,7 @@ %% babel.dtx (with options: `package') %% %% -%% Copyright (C) 2012-2024 Javier Bezos and Johannes L. Braams. +%% Copyright (C) 2012-2025 Javier Bezos and Johannes L. Braams. %% Copyright (C) 1989-2012 Johannes L. Braams and %% any individual authors listed elsewhere in this file. %% All rights reserved. @@ -32,21 +32,24 @@ %% and covered by LPPL is defined by the unpacking scripts (with %% extension |.ins|) which are part of the distribution. %% - -\NeedsTeXFormat{LaTeX2e}[2005/12/01] -\ProvidesPackage{babel}[2024/06/02 v24.6 The Babel package] +\NeedsTeXFormat{LaTeX2e} +\ProvidesPackage{babel}% + [2025/02/14 v25.4 + The multilingual framework for pdfLaTeX, LuaLaTeX and XeLaTeX] \@ifpackagewith{babel}{debug} {\providecommand\bbl@trace[1]{\message{^^J[ #1 ]}}% \let\bbl@debug\@firstofone \ifx\directlua\@undefined\else - \directlua{ Babel = Babel or {} + \directlua{ + Babel = Babel or {} Babel.debug = true }% \input{babel-debug.tex}% \fi} {\providecommand\bbl@trace[1]{}% \let\bbl@debug\@gobble \ifx\directlua\@undefined\else - \directlua{ Babel = Babel or {} + \directlua{ + Babel = Babel or {} Babel.debug = false }% \fi} \def\bbl@error#1{% Implicit #2#3#4 @@ -308,7 +311,7 @@ #1\ifx\@empty#2\else,\bbl@afterfi\bbl@tempb#2\fi}% \def\bbl@tempe#1=#2\@@{% \bbl@csarg\edef{mod@#1}{\bbl@tempb#2}} -\def\bbl@tempd#1.#2\@nnil{% TODO. Refactor lists? +\def\bbl@tempd#1.#2\@nnil{% \ifx\@empty#2% \edef\bbl@tempc{\ifx\bbl@tempc\@empty\else\bbl@tempc,\fi#1}% \else @@ -317,7 +320,7 @@ \edef\bbl@tempc{% \ifx\bbl@tempc\@empty\else\bbl@tempc,\fi#1.\bbl@tempb#2}% \else - \in@{$modifiers$}{$#1$}% TODO. Allow spaces. + \in@{$modifiers$}{$#1$}% \ifin@ \bbl@tempe#2\@@ \else @@ -343,11 +346,9 @@ \DeclareOption{silent}{} \DeclareOption{shorthands=off}{\bbl@tempa shorthands=\bbl@tempa} \chardef\bbl@iniflag\z@ -\DeclareOption{provide=*}{\chardef\bbl@iniflag\@ne} % main -> +1 -\DeclareOption{provide+=*}{\chardef\bbl@iniflag\tw@} % add = 2 -\DeclareOption{provide*=*}{\chardef\bbl@iniflag\thr@@} % add + main -\let\bbl@autoload@options\@empty -\DeclareOption{provide@=*}{\def\bbl@autoload@options{import}} +\DeclareOption{provide=*}{\chardef\bbl@iniflag\@ne} % main = 1 +\DeclareOption{provide+=*}{\chardef\bbl@iniflag\tw@} % second = 2 +\DeclareOption{provide*=*}{\chardef\bbl@iniflag\thr@@} % second + main \newif\ifbbl@single \DeclareOption{selectors=off}{\bbl@singletrue} \DeclareOption{math=active}{} @@ -407,7 +408,6 @@ \in@{,provide,}{,#1,}% \ifin@ \def\bbl@opt@provide{#2}% - \bbl@replace\bbl@opt@provide{;}{,}% \fi} \fi \bbl@trace{Conditional loading of shorthands} @@ -466,8 +466,8 @@ \expandafter\@secondoftwo \fi} \fi -\def\bbl@version{24.6} -\def\bbl@date{2024/06/02} +\def\bbl@version{25.4} +\def\bbl@date{2025/02/14} \ifx\language\@undefined \csname newcount\endcsname\language \fi @@ -547,34 +547,6 @@ \fi \fi\fi} \let\bbl@initoload\relax -\def\bbl@provide@locale{% - \ifx\babelprovide\@undefined - \bbl@error{base-on-the-fly}{}{}{}% - \fi - \let\bbl@auxname\languagename % Still necessary. TODO - \bbl@ifunset{bbl@bcp@map@\languagename}{}% Move uplevel?? - {\edef\languagename{\@nameuse{bbl@bcp@map@\languagename}}}% - \ifbbl@bcpallowed - \expandafter\ifx\csname date\languagename\endcsname\relax - \expandafter - \bbl@bcplookup\languagename-\@empty-\@empty-\@empty\@@ - \ifx\bbl@bcp\relax\else % Returned by \bbl@bcplookup - \edef\languagename{\bbl@bcp@prefix\bbl@bcp}% - \edef\localename{\bbl@bcp@prefix\bbl@bcp}% - \expandafter\ifx\csname date\languagename\endcsname\relax - \let\bbl@initoload\bbl@bcp - \bbl@exp{\\\babelprovide[\bbl@autoload@bcpoptions]{\languagename}}% - \let\bbl@initoload\relax - \fi - \bbl@csarg\xdef{bcp@map@\bbl@bcp}{\localename}% - \fi - \fi - \fi - \expandafter\ifx\csname date\languagename\endcsname\relax - \IfFileExists{babel-\languagename.tex}% - {\bbl@exp{\\\babelprovide[\bbl@autoload@options]{\languagename}}}% - {}% - \fi} \def\iflanguage#1{% \bbl@iflanguage{#1}{% \ifnum\csname l@#1\endcsname=\language @@ -616,14 +588,13 @@ \bbl@ifunset{bbl@id@@\languagename}% {\count@\bbl@id@last\relax \advance\count@\@ne - \bbl@csarg\chardef{id@@\languagename}\count@ + \global\bbl@csarg\chardef{id@@\languagename}\count@ \edef\bbl@id@last{\the\count@}% \ifcase\bbl@engine\or \directlua{ - Babel = Babel or {} - Babel.locale_props = Babel.locale_props or {} Babel.locale_props[\bbl@id@last] = {} Babel.locale_props[\bbl@id@last].name = '\languagename' + Babel.locale_props[\bbl@id@last].vars = {} }% \fi}% {}% @@ -636,30 +607,8 @@ \let\endselectlanguage\relax \def\BabelContentsFiles{toc,lof,lot} \def\bbl@set@language#1{% from selectlanguage, pop@ - % The old buggy way. Preserved for compatibility. - \edef\languagename{% - \ifnum\escapechar=\expandafter`\string#1\@empty - \else\string#1\@empty\fi}% - \ifcat\relax\noexpand#1% - \expandafter\ifx\csname date\languagename\endcsname\relax - \edef\languagename{#1}% - \let\localename\languagename - \else - \bbl@info{Using '\string\language' instead of 'language' is\\% - deprecated. If what you want is to use a\\% - macro containing the actual locale, make\\% - sure it does not not match any language.\\% - Reported}% - \ifx\scantokens\@undefined - \def\localename{??}% - \else - \scantokens\expandafter{\expandafter - \def\expandafter\localename\expandafter{\languagename}}% - \fi - \fi - \else - \def\localename{#1}% This one has the correct catcodes - \fi + % The old buggy way. Preserved for compatibility, but simplified + \edef\languagename{\expandafter\string#1\@empty}% \select@language{\languagename}% % write to auxs \expandafter\ifx\csname date\languagename\endcsname\relax\else @@ -674,18 +623,21 @@ \fi} \let\bbl@restorelastskip\relax \let\bbl@savelastskip\relax -\newif\ifbbl@bcpallowed -\bbl@bcpallowedfalse -\def\select@language#1{% from set@, babel@aux +\def\select@language#1{% from set@, babel@aux, babel@toc \ifx\bbl@selectorname\@empty \def\bbl@selectorname{select}% - % set hymap \fi + % set hymap \ifnum\bbl@hymapsel=\@cclv\chardef\bbl@hymapsel4\relax\fi - % set name + % set name (when coming from babel@aux) \edef\languagename{#1}% \bbl@fixname\languagename - % TODO. name@map must be here? + % define \localename when coming from set@, with a trick + \ifx\scantokens\@undefined + \def\localename{??}% + \else + \bbl@exp{\\\scantokens{\def\\\localename{\languagename}\\\noexpand}\relax}% + \fi \bbl@provide@locale \bbl@iflanguage\languagename{% \let\bbl@select@type\z@ @@ -693,7 +645,7 @@ \def\babel@aux#1#2{% \select@language{#1}% \bbl@foreach\BabelContentsFiles{% \relax -> don't assume vertical mode - \@writefile{##1}{\babel@toc{#1}{#2}\relax}}}% TODO - plain? + \@writefile{##1}{\babel@toc{#1}{#2}\relax}}}% \def\babel@toc#1#2{% \select@language{#1}} \newif\ifbbl@usedategroup @@ -722,7 +674,7 @@ \csname captions#1\endcsname\relax \fi \bbl@xin@{,date,}{,\bbl@select@opts,}% - \ifin@ % if \foreign... within \<lang>date + \ifin@ % if \foreign... within \<language>date \csname date#1\endcsname\relax \fi \fi @@ -760,8 +712,14 @@ \bbl@xin@{/u}{/\bbl@tempa}% \ifin@\else\bbl@xin@{/e}{/\bbl@tempa}\fi % elongated forms \ifin@\else\bbl@xin@{/k}{/\bbl@tempa}\fi % only kashida - \ifin@\else\bbl@xin@{/p}{/\bbl@tempa}\fi % padding (eg, Tibetan) + \ifin@\else\bbl@xin@{/p}{/\bbl@tempa}\fi % padding (e.g., Tibetan) \ifin@\else\bbl@xin@{/v}{/\bbl@tempa}\fi % variable font + % hyphenation - save mins + \babel@savevariable\lefthyphenmin + \babel@savevariable\righthyphenmin + \ifnum\bbl@engine=\@ne + \babel@savevariable\hyphenationmin + \fi \ifin@ % unhyphenated/kashida/elongated/padding = allow stretching \language\l@unhyphenated @@ -773,16 +731,18 @@ % other = select patterns \bbl@patterns{#1}% \fi - % hyphenation - mins - \babel@savevariable\lefthyphenmin - \babel@savevariable\righthyphenmin + % hyphenation - set mins \expandafter\ifx\csname #1hyphenmins\endcsname\relax \set@hyphenmins\tw@\thr@@\relax + \@nameuse{bbl@hyphenmins@}% \else \expandafter\expandafter\expandafter\set@hyphenmins \csname #1hyphenmins\endcsname\relax \fi - % reset selector name + \@nameuse{bbl@hyphenmins@}% + \@nameuse{bbl@hyphenmins@\languagename}% + \@nameuse{bbl@hyphenatmin@}% + \@nameuse{bbl@hyphenatmin@\languagename}% \let\bbl@selectorname\@empty} \long\def\otherlanguage#1{% \def\bbl@selectorname{other}% @@ -826,6 +786,9 @@ \BabelText{#2}% Still in vertical mode! {\par}% \endgroup} +\providecommand\BabelWrapText[1]{% + \def\bbl@tempa{\def\BabelText####1}% + \expandafter\bbl@tempa\expandafter{\BabelText{#1}}} \def\foreign@language#1{% % set name \edef\languagename{#1}% @@ -834,6 +797,7 @@ \bbl@usedategroupfalse \fi \bbl@fixname\languagename + \let\localename\languagename % TODO. name@map here? \bbl@provide@locale \bbl@iflanguage\languagename{% @@ -952,13 +916,91 @@ preloaded for \bbl@nulllanguage\space instead}} \let\bbl@usehooks\@gobbletwo \ifx\bbl@onlyswitch\@empty\endinput\fi - % Here ended switch.def +\bbl@trace{Defining babelensure} +\newcommand\babelensure[2][]{% + \AddBabelHook{babel-ensure}{afterextras}{% + \ifcase\bbl@select@type + \bbl@cl{e}% + \fi}% + \begingroup + \let\bbl@ens@include\@empty + \let\bbl@ens@exclude\@empty + \def\bbl@ens@fontenc{\relax}% + \def\bbl@tempb##1{% + \ifx\@empty##1\else\noexpand##1\expandafter\bbl@tempb\fi}% + \edef\bbl@tempa{\bbl@tempb#1\@empty}% + \def\bbl@tempb##1=##2\@@{\@namedef{bbl@ens@##1}{##2}}% + \bbl@foreach\bbl@tempa{\bbl@tempb##1\@@}% + \def\bbl@tempc{\bbl@ensure}% + \expandafter\bbl@add\expandafter\bbl@tempc\expandafter{% + \expandafter{\bbl@ens@include}}% + \expandafter\bbl@add\expandafter\bbl@tempc\expandafter{% + \expandafter{\bbl@ens@exclude}}% + \toks@\expandafter{\bbl@tempc}% + \bbl@exp{% + \endgroup + \def\<bbl@e@#2>{\the\toks@{\bbl@ens@fontenc}}}} +\def\bbl@ensure#1#2#3{% 1: include 2: exclude 3: fontenc + \def\bbl@tempb##1{% elt for (excluding) \bbl@captionslist list + \ifx##1\@undefined % 3.32 - Don't assume the macro exists + \edef##1{\noexpand\bbl@nocaption + {\bbl@stripslash##1}{\languagename\bbl@stripslash##1}}% + \fi + \ifx##1\@empty\else + \in@{##1}{#2}% + \ifin@\else + \bbl@ifunset{bbl@ensure@\languagename}% + {\bbl@exp{% + \\\DeclareRobustCommand\<bbl@ensure@\languagename>[1]{% + \\\foreignlanguage{\languagename}% + {\ifx\relax#3\else + \\\fontencoding{#3}\\\selectfont + \fi + ########1}}}}% + {}% + \toks@\expandafter{##1}% + \edef##1{% + \bbl@csarg\noexpand{ensure@\languagename}% + {\the\toks@}}% + \fi + \expandafter\bbl@tempb + \fi}% + \expandafter\bbl@tempb\bbl@captionslist\today\@empty + \def\bbl@tempa##1{% elt for include list + \ifx##1\@empty\else + \bbl@csarg\in@{ensure@\languagename\expandafter}\expandafter{##1}% + \ifin@\else + \bbl@tempb##1\@empty + \fi + \expandafter\bbl@tempa + \fi}% + \bbl@tempa#1\@empty} +\def\bbl@captionslist{% + \prefacename\refname\abstractname\bibname\chaptername\appendixname + \contentsname\listfigurename\listtablename\indexname\figurename + \tablename\partname\enclname\ccname\headtoname\pagename\seename + \alsoname\proofname\glossaryname} +\bbl@trace{Short tags} +\newcommand\babeltags[1]{% + \edef\bbl@tempa{\zap@space#1 \@empty}% + \def\bbl@tempb##1=##2\@@{% + \edef\bbl@tempc{% + \noexpand\newcommand + \expandafter\noexpand\csname ##1\endcsname{% + \noexpand\protect + \expandafter\noexpand\csname otherlanguage*\endcsname{##2}} + \noexpand\newcommand + \expandafter\noexpand\csname text##1\endcsname{% + \noexpand\foreignlanguage{##2}}} + \bbl@tempc}% + \bbl@for\bbl@tempa\bbl@tempa{% + \expandafter\bbl@tempb\bbl@tempa\@@}} +\bbl@trace{Compatibility with language.def} \ifx\directlua\@undefined\else \ifx\bbl@luapatterns\@undefined \input luababel.def \fi \fi -\bbl@trace{Compatibility with language.def} \ifx\bbl@languages\@undefined \ifx\directlua\@undefined \openin1 = language.def % TODO. Remove hardcoded number @@ -991,28 +1033,6 @@ \xdef#1{\the\toks@}}% \fi \fi} -\def\bbl@withactive#1#2{% - \begingroup - \lccode`~=`#2\relax - \lowercase{\endgroup#1~}} -\def\bbl@redefine#1{% - \edef\bbl@tempa{\bbl@stripslash#1}% - \expandafter\let\csname org@\bbl@tempa\endcsname#1% - \expandafter\def\csname\bbl@tempa\endcsname} -\@onlypreamble\bbl@redefine -\def\bbl@redefine@long#1{% - \edef\bbl@tempa{\bbl@stripslash#1}% - \expandafter\let\csname org@\bbl@tempa\endcsname#1% - \long\expandafter\def\csname\bbl@tempa\endcsname} -\@onlypreamble\bbl@redefine@long -\def\bbl@redefinerobust#1{% - \edef\bbl@tempa{\bbl@stripslash#1}% - \bbl@ifunset{\bbl@tempa\space}% - {\expandafter\let\csname org@\bbl@tempa\endcsname#1% - \bbl@exp{\def\\#1{\\\protect\<\bbl@tempa\space>}}}% - {\bbl@exp{\let\<org@\bbl@tempa>\<\bbl@tempa\space>}}% - \@namedef{\bbl@tempa\space}} -\@onlypreamble\bbl@redefinerobust \bbl@trace{Hooks} \newcommand\AddBabelHook[3][]{% \bbl@ifunset{bbl@hk@#2}{\EnableBabelHook{#2}}{}% @@ -1046,70 +1066,8 @@ \def\bbl@tempa#1=#2\@@{\NewHook{babel/#1}} \bbl@foreach\bbl@evargs{\bbl@tempa#1\@@} \fi -\bbl@trace{Defining babelensure} -\newcommand\babelensure[2][]{% - \AddBabelHook{babel-ensure}{afterextras}{% - \ifcase\bbl@select@type - \bbl@cl{e}% - \fi}% - \begingroup - \let\bbl@ens@include\@empty - \let\bbl@ens@exclude\@empty - \def\bbl@ens@fontenc{\relax}% - \def\bbl@tempb##1{% - \ifx\@empty##1\else\noexpand##1\expandafter\bbl@tempb\fi}% - \edef\bbl@tempa{\bbl@tempb#1\@empty}% - \def\bbl@tempb##1=##2\@@{\@namedef{bbl@ens@##1}{##2}}% - \bbl@foreach\bbl@tempa{\bbl@tempb##1\@@}% - \def\bbl@tempc{\bbl@ensure}% - \expandafter\bbl@add\expandafter\bbl@tempc\expandafter{% - \expandafter{\bbl@ens@include}}% - \expandafter\bbl@add\expandafter\bbl@tempc\expandafter{% - \expandafter{\bbl@ens@exclude}}% - \toks@\expandafter{\bbl@tempc}% - \bbl@exp{% - \endgroup - \def\<bbl@e@#2>{\the\toks@{\bbl@ens@fontenc}}}} -\def\bbl@ensure#1#2#3{% 1: include 2: exclude 3: fontenc - \def\bbl@tempb##1{% elt for (excluding) \bbl@captionslist list - \ifx##1\@undefined % 3.32 - Don't assume the macro exists - \edef##1{\noexpand\bbl@nocaption - {\bbl@stripslash##1}{\languagename\bbl@stripslash##1}}% - \fi - \ifx##1\@empty\else - \in@{##1}{#2}% - \ifin@\else - \bbl@ifunset{bbl@ensure@\languagename}% - {\bbl@exp{% - \\\DeclareRobustCommand\<bbl@ensure@\languagename>[1]{% - \\\foreignlanguage{\languagename}% - {\ifx\relax#3\else - \\\fontencoding{#3}\\\selectfont - \fi - ########1}}}}% - {}% - \toks@\expandafter{##1}% - \edef##1{% - \bbl@csarg\noexpand{ensure@\languagename}% - {\the\toks@}}% - \fi - \expandafter\bbl@tempb - \fi}% - \expandafter\bbl@tempb\bbl@captionslist\today\@empty - \def\bbl@tempa##1{% elt for include list - \ifx##1\@empty\else - \bbl@csarg\in@{ensure@\languagename\expandafter}\expandafter{##1}% - \ifin@\else - \bbl@tempb##1\@empty - \fi - \expandafter\bbl@tempa - \fi}% - \bbl@tempa#1\@empty} -\def\bbl@captionslist{% - \prefacename\refname\abstractname\bibname\chaptername\appendixname - \contentsname\listfigurename\listtablename\indexname\figurename - \tablename\partname\enclname\ccname\headtoname\pagename\seename - \alsoname\proofname\glossaryname} +\providecommand\PassOptionsToLocale[2]{% + \bbl@csarg\bbl@add@list{passto@#2}{#1}} \bbl@trace{Macros for setting language files up} \def\bbl@ldfinit{% \let\bbl@screset\@empty @@ -1142,7 +1100,7 @@ \catcode`\@=\atcatcode \let\atcatcode\relax \catcode`\==\eqcatcode \let\eqcatcode\relax \endinput} -\def\bbl@afterldf#1{% TODO. Merge into the next macro? Unused elsewhere +\def\bbl@afterldf#1{% \bbl@afterlang \let\bbl@afterlang\relax \let\BabelModifiers\relax @@ -1158,11 +1116,14 @@ \@onlypreamble\ldf@finish \def\main@language#1{% \def\bbl@main@language{#1}% - \let\languagename\bbl@main@language % TODO. Set localename + \let\languagename\bbl@main@language + \let\localename\bbl@main@language + \let\mainlocalename\bbl@main@language \bbl@id@assign \bbl@patterns{\languagename}} \def\bbl@beforestart{% \def\@nolanerr##1{% + \bbl@carg\chardef{l@##1}\z@ \bbl@warning{Undefined language '##1' in aux.\\Reported}}% \bbl@usehooks{beforestart}{}% \global\let\bbl@beforestart\relax} @@ -1170,30 +1131,18 @@ {\@nameuse{bbl@beforestart}}% Group! \if@filesw \providecommand\babel@aux[2]{}% - \immediate\write\@mainaux{% - \string\providecommand\string\babel@aux[2]{}}% + \immediate\write\@mainaux{\unexpanded{% + \providecommand\babel@aux[2]{\global\let\babel@toc\@gobbletwo}}}% \immediate\write\@mainaux{\string\@nameuse{bbl@beforestart}}% \fi \expandafter\selectlanguage\expandafter{\bbl@main@language}% - \ifx\bbl@normalsf\@empty - \ifnum\sfcode`\.=\@m - \let\normalsfcodes\frenchspacing - \else - \let\normalsfcodes\nonfrenchspacing - \fi - \else - \let\normalsfcodes\bbl@normalsf - \fi \ifbbl@single % must go after the line above. \renewcommand\selectlanguage[1]{}% \renewcommand\foreignlanguage[2]{#2}% \global\let\babel@aux\@gobbletwo % Also as flag \fi} -\AddToHook{begindocument/before}{% - \let\bbl@normalsf\normalsfcodes - \let\normalsfcodes\relax} % Hack, to delay the setting \ifcase\bbl@engine\or - \AtBeginDocument{\pagedir\bodydir} % TODO - a better place + \AtBeginDocument{\pagedir\bodydir} \fi \def\select@language@x#1{% \ifcase\bbl@select@type @@ -1202,6 +1151,10 @@ \select@language{#1}% \fi} \bbl@trace{Shorhands} +\def\bbl@withactive#1#2{% + \begingroup + \lccode`~=`#2\relax + \lowercase{\endgroup#1~}} \def\bbl@add@special#1{% 1:a macro like \", \?, etc. \bbl@add\dospecials{\do#1}% test @sanitize = \relax, for back. compat. \bbl@ifunset{@sanitize}{}{\bbl@add\@sanitize{\@makeother#1}}% @@ -1216,18 +1169,6 @@ \endgroup \fi \fi} -\def\bbl@remove@special#1{% - \begingroup - \def\x##1##2{\ifnum`#1=`##2\noexpand\@empty - \else\noexpand##1\noexpand##2\fi}% - \def\do{\x\do}% - \def\@makeother{\x\@makeother}% - \edef\x{\endgroup - \def\noexpand\dospecials{\dospecials}% - \expandafter\ifx\csname @sanitize\endcsname\relax\else - \def\noexpand\@sanitize{\@sanitize}% - \fi}% - \x} \def\bbl@active@def#1#2#3#4{% \@namedef{#3#1}{% \expandafter\ifx\csname#2@sh@#1@\endcsname\relax @@ -1330,7 +1271,7 @@ \bbl@afterfi\csname#1@sh@#2@sel\endcsname \fi} \begingroup -\bbl@ifunset{ifincsname}% TODO. Ugly. Correct? Only Plain? +\bbl@ifunset{ifincsname}% {\gdef\active@prefix#1{% \ifx\protect\@typeset@protect \else @@ -1371,7 +1312,6 @@ \csname bbl@normal@\string#1\endcsname} \def\bbl@firstcs#1#2{\csname#1\endcsname} \def\bbl@scndcs#1#2{\csname#2\endcsname} - \def\babel@texpdf#1#2#3#4{% \ifx\texorpdfstring\@undefined \textormath{#1}{#3}% @@ -1412,7 +1352,7 @@ \expandafter\@firstoftwo \fi} \def\user@group{user} -\def\language@group{english} % TODO. I don't like defaults +\def\language@group{english} \def\system@group{system} \def\useshorthands{% \@ifstar\bbl@usesh@s{\bbl@usesh@x{}}} @@ -1627,6 +1567,24 @@ \def\babel@savevariable#1{% \toks@\expandafter{\originalTeX #1=}% \bbl@exp{\def\\\originalTeX{\the\toks@\the#1\relax}}} +\def\bbl@redefine#1{% + \edef\bbl@tempa{\bbl@stripslash#1}% + \expandafter\let\csname org@\bbl@tempa\endcsname#1% + \expandafter\def\csname\bbl@tempa\endcsname} +\@onlypreamble\bbl@redefine +\def\bbl@redefine@long#1{% + \edef\bbl@tempa{\bbl@stripslash#1}% + \expandafter\let\csname org@\bbl@tempa\endcsname#1% + \long\expandafter\def\csname\bbl@tempa\endcsname} +\@onlypreamble\bbl@redefine@long +\def\bbl@redefinerobust#1{% + \edef\bbl@tempa{\bbl@stripslash#1}% + \bbl@ifunset{\bbl@tempa\space}% + {\expandafter\let\csname org@\bbl@tempa\endcsname#1% + \bbl@exp{\def\\#1{\\\protect\<\bbl@tempa\space>}}}% + {\bbl@exp{\let\<org@\bbl@tempa>\<\bbl@tempa\space>}}% + \@namedef{\bbl@tempa\space}} +\@onlypreamble\bbl@redefinerobust \def\bbl@frenchspacing{% \ifnum\the\sfcode`\.=\@m \let\bbl@nonfrenchspacing\relax @@ -1663,21 +1621,6 @@ \fi}% \bbl@fs@chars \fi\fi\fi} -\bbl@trace{Short tags} -\def\babeltags#1{% - \edef\bbl@tempa{\zap@space#1 \@empty}% - \def\bbl@tempb##1=##2\@@{% - \edef\bbl@tempc{% - \noexpand\newcommand - \expandafter\noexpand\csname ##1\endcsname{% - \noexpand\protect - \expandafter\noexpand\csname otherlanguage*\endcsname{##2}} - \noexpand\newcommand - \expandafter\noexpand\csname text##1\endcsname{% - \noexpand\foreignlanguage{##2}}} - \bbl@tempc}% - \bbl@for\bbl@tempa\bbl@tempa{% - \expandafter\bbl@tempb\bbl@tempa\@@}} \bbl@trace{Hyphens} \@onlypreamble\babelhyphenation \AtEndOfPackage{% @@ -1704,6 +1647,23 @@ {\csname bbl@hyphenation@\bbl@tempa\endcsname\space}% #2}}}% \fi}} +\ifx\NewDocumentCommand\@undefined\else + \NewDocumentCommand\babelhyphenmins{sommo}{% + \IfNoValueTF{#2}% + {\protected@edef\bbl@hyphenmins@{\set@hyphenmins{#3}{#4}}% + \IfValueT{#5}{% + \protected@edef\bbl@hyphenatmin@{\hyphenationmin=#5\relax}}% + \IfBooleanT{#1}{% + \lefthyphenmin=#3\relax + \righthyphenmin=#4\relax + \IfValueT{#5}{\hyphenationmin=#5\relax}}}% + {\edef\bbl@tempb{\zap@space#2 \@empty}% + \bbl@for\bbl@tempa\bbl@tempb{% + \@namedef{bbl@hyphenmins@\bbl@tempa}{\set@hyphenmins{#3}{#4}}% + \IfValueT{#5}{% + \@namedef{bbl@hyphenatmin@\bbl@tempa}{\hyphenationmin=#5\relax}}}% + \IfBooleanT{#1}{\bbl@error{hyphenmins-args}{}{}{}}}} +\fi \def\bbl@allowhyphens{\ifvmode\else\nobreak\hskip\z@skip\fi} \def\bbl@t@one{T1} \def\allowhyphens{\ifx\cf@encoding\bbl@t@one\else\bbl@allowhyphens\fi} @@ -1712,9 +1672,9 @@ \def\bbl@hyphen{% \@ifstar{\bbl@hyphen@i @}{\bbl@hyphen@i\@empty}} \def\bbl@hyphen@i#1#2{% - \bbl@ifunset{bbl@hy@#1#2\@empty}% + \lowercase{\bbl@ifunset{bbl@hy@#1#2\@empty}}% {\csname bbl@#1usehyphen\endcsname{\discretionary{#2}{}{#2}}}% - {\csname bbl@hy@#1#2\@empty\endcsname}} + {\lowercase{\csname bbl@hy@#1#2\@empty\endcsname}}} \def\bbl@usehyphen#1{% \leavevmode \ifdim\lastskip>\z@\mbox{#1}\else\nobreak#1\fi @@ -1842,12 +1802,12 @@ \def\bbl@sctest{% \bbl@xin@{,\bbl@opt@strings,}{,\bbl@sc@label,\bbl@sc@fontenc,}}% \fi - \ifx\bbl@opt@strings\@nnil % ie, no strings key -> defaults - \else\ifx\bbl@opt@strings\relax % ie, strings=encoded + \ifx\bbl@opt@strings\@nnil % i.e., no strings key -> defaults + \else\ifx\bbl@opt@strings\relax % i.e., strings=encoded \let\AfterBabelCommands\bbl@aftercmds \let\SetString\bbl@setstring \let\bbl@stringdef\bbl@encstring - \else % ie, strings=value + \else % i.e., strings=value \bbl@sctest \ifin@ \let\AfterBabelCommands\bbl@aftercmds @@ -1891,10 +1851,10 @@ \endgroup \bbl@scafter} \let\bbl@endcommands\EndBabelCommands -\def\bbl@setstring#1#2{% eg, \prefacename{<string>} +\def\bbl@setstring#1#2{% e.g., \prefacename{<string>} \bbl@forlang\bbl@tempa{% \edef\bbl@LC{\bbl@tempa\bbl@stripslash#1}% - \bbl@ifunset{\bbl@LC}% eg, \germanchaptername + \bbl@ifunset{\bbl@LC}% e.g., \germanchaptername {\bbl@exp{% \global\\\bbl@add\<\bbl@G\bbl@tempa>{\\\bbl@scset\\#1\<\bbl@LC>}}}% {}% @@ -1936,7 +1896,7 @@ \bbl@xin@{,}{\bbl@language@opts}% \chardef\bbl@opt@hyphenmap\ifin@4\else\@ne\fi \fi} -\newcommand\setlocalecaption{% TODO. Catch typos. +\newcommand\setlocalecaption{% \@ifstar\bbl@setcaption@s\bbl@setcaption@x} \def\bbl@setcaption@x#1#2#3{% language caption-name string \bbl@trim@def\bbl@tempa{#2}% @@ -2169,39 +2129,6 @@ \fi \bbl@trace{Bidi layout} \providecommand\IfBabelLayout[3]{#3}% -\newcommand\BabelPatchSection[1]{% - \@ifundefined{#1}{}{% - \bbl@exp{\let\<bbl@ss@#1>\<#1>}% - \@namedef{#1}{% - \@ifstar{\bbl@presec@s{#1}}% - {\@dblarg{\bbl@presec@x{#1}}}}}} -\def\bbl@presec@x#1[#2]#3{% - \bbl@exp{% - \\\select@language@x{\bbl@main@language}% - \\\bbl@cs{sspre@#1}% - \\\bbl@cs{ss@#1}% - [\\\foreignlanguage{\languagename}{\unexpanded{#2}}]% - {\\\foreignlanguage{\languagename}{\unexpanded{#3}}}% - \\\select@language@x{\languagename}}} -\def\bbl@presec@s#1#2{% - \bbl@exp{% - \\\select@language@x{\bbl@main@language}% - \\\bbl@cs{sspre@#1}% - \\\bbl@cs{ss@#1}*% - {\\\foreignlanguage{\languagename}{\unexpanded{#2}}}% - \\\select@language@x{\languagename}}} -\IfBabelLayout{sectioning}% - {\BabelPatchSection{part}% - \BabelPatchSection{chapter}% - \BabelPatchSection{section}% - \BabelPatchSection{subsection}% - \BabelPatchSection{subsubsection}% - \BabelPatchSection{paragraph}% - \BabelPatchSection{subparagraph}% - \def\babel@toc#1{% - \select@language@x{\bbl@main@language}}}{} -\IfBabelLayout{captions}% - {\BabelPatchSection{caption}}{} \bbl@trace{Input engine specific macros} \ifcase\bbl@engine \input txtbabel.def @@ -2229,7 +2156,7 @@ \bbl@vforeach{captions,date,import,main,script,language,% hyphenrules,linebreaking,justification,mapfont,maparabic,% mapdigits,intraspace,intrapenalty,onchar,transforms,alph,% - Alph,labels,labels*,calendar,date,casing,interchar}% + Alph,labels,labels*,calendar,date,casing,interchar,@import}% {\bbl@csarg\let{KVP@##1}\@nnil}% \global\let\bbl@release@transforms\@empty \global\let\bbl@release@casing\@empty @@ -2238,7 +2165,10 @@ \global\let\bbl@extend@ini\@gobble \global\let\bbl@included@inis\@empty \gdef\bbl@key@list{;}% - \bbl@forkv{#1}{% + \bbl@ifunset{bbl@passto@#2}% + {\def\bbl@tempa{#1}}% + {\bbl@exp{\def\\\bbl@tempa{\[bbl@passto@#2],\unexpanded{#1}}}}% + \expandafter\bbl@forkv\expandafter{\bbl@tempa}{% \in@{/}{##1}% With /, (re)sets a value in the ini \ifin@ \global\let\bbl@extend@ini\bbl@extend@ini@aux @@ -2255,6 +2185,10 @@ \ifx\bbl@screset\@undefined \bbl@ldfinit \fi + % == + \ifx\bbl@KVP@@import\@nnil\else \ifx\bbl@KVP@import\@nnil + \def\bbl@KVP@import{\@empty}% + \fi\fi % == date (as option) == % \ifx\bbl@KVP@date\@nnil\else % \fi @@ -2284,7 +2218,7 @@ {}% \let\bbl@KVP@date\@empty \fi - \let\bbl@KVP@captions@@\bbl@KVP@captions % TODO. A dirty hack + \let\bbl@KVP@captions@@\bbl@KVP@captions \ifx\bbl@KVP@captions\@nnil \let\bbl@KVP@captions\bbl@KVP@import \fi @@ -2344,122 +2278,12 @@ {\directlua{ Babel.set_chranges_b('\bbl@cl{sbcp}', '\bbl@cl{chrng}') }}% \fi - % == onchar == - \ifx\bbl@KVP@onchar\@nnil\else - \bbl@luahyphenate - \bbl@exp{% - \\\AddToHook{env/document/before}{{\\\select@language{#2}{}}}}% - \directlua{ - if Babel.locale_mapped == nil then - Babel.locale_mapped = true - Babel.linebreaking.add_before(Babel.locale_map, 1) - Babel.loc_to_scr = {} - Babel.chr_to_loc = Babel.chr_to_loc or {} - end - Babel.locale_props[\the\localeid].letters = false - }% - \bbl@xin@{ letters }{ \bbl@KVP@onchar\space}% - \ifin@ - \directlua{ - Babel.locale_props[\the\localeid].letters = true - }% - \fi - \bbl@xin@{ ids }{ \bbl@KVP@onchar\space}% - \ifin@ - \ifx\bbl@starthyphens\@undefined % Needed if no explicit selection - \AddBabelHook{babel-onchar}{beforestart}{{\bbl@starthyphens}}% - \fi - \bbl@exp{\\\bbl@add\\\bbl@starthyphens - {\\\bbl@patterns@lua{\languagename}}}% - % TODO - error/warning if no script - \directlua{ - if Babel.script_blocks['\bbl@cl{sbcp}'] then - Babel.loc_to_scr[\the\localeid] = Babel.script_blocks['\bbl@cl{sbcp}'] - Babel.locale_props[\the\localeid].lg = \the\@nameuse{l@\languagename}\space - end - }% - \fi - \bbl@xin@{ fonts }{ \bbl@KVP@onchar\space}% - \ifin@ - \bbl@ifunset{bbl@lsys@\languagename}{\bbl@provide@lsys{\languagename}}{}% - \bbl@ifunset{bbl@wdir@\languagename}{\bbl@provide@dirs{\languagename}}{}% - \directlua{ - if Babel.script_blocks['\bbl@cl{sbcp}'] then - Babel.loc_to_scr[\the\localeid] = - Babel.script_blocks['\bbl@cl{sbcp}'] - end}% - \ifx\bbl@mapselect\@undefined % TODO. almost the same as mapfont - \AtBeginDocument{% - \bbl@patchfont{{\bbl@mapselect}}% - {\selectfont}}% - \def\bbl@mapselect{% - \let\bbl@mapselect\relax - \edef\bbl@prefontid{\fontid\font}}% - \def\bbl@mapdir##1{% - \begingroup - \setbox\z@\hbox{% Force text mode - \def\languagename{##1}% - \let\bbl@ifrestoring\@firstoftwo % To avoid font warning - \bbl@switchfont - \ifnum\fontid\font>\z@ % A hack, for the pgf nullfont hack - \directlua{ - Babel.locale_props[\the\csname bbl@id@@##1\endcsname]% - ['/\bbl@prefontid'] = \fontid\font\space}% - \fi}% - \endgroup}% - \fi - \bbl@exp{\\\bbl@add\\\bbl@mapselect{\\\bbl@mapdir{\languagename}}}% - \fi - % TODO - catch non-valid values - \fi - % == mapfont == - % For bidi texts, to switch the font based on direction - \ifx\bbl@KVP@mapfont\@nnil\else - \bbl@ifsamestring{\bbl@KVP@mapfont}{direction}{}% - {\bbl@error{unknown-mapfont}{}{}{}}% - \bbl@ifunset{bbl@lsys@\languagename}{\bbl@provide@lsys{\languagename}}{}% - \bbl@ifunset{bbl@wdir@\languagename}{\bbl@provide@dirs{\languagename}}{}% - \ifx\bbl@mapselect\@undefined % TODO. See onchar. - \AtBeginDocument{% - \bbl@patchfont{{\bbl@mapselect}}% - {\selectfont}}% - \def\bbl@mapselect{% - \let\bbl@mapselect\relax - \edef\bbl@prefontid{\fontid\font}}% - \def\bbl@mapdir##1{% - {\def\languagename{##1}% - \let\bbl@ifrestoring\@firstoftwo % avoid font warning - \bbl@switchfont - \directlua{Babel.fontmap - [\the\csname bbl@wdir@##1\endcsname]% - [\bbl@prefontid]=\fontid\font}}}% - \fi - \bbl@exp{\\\bbl@add\\\bbl@mapselect{\\\bbl@mapdir{\languagename}}}% - \fi % == Line breaking: intraspace, intrapenalty == % For CJK, East Asian, Southeast Asian, if interspace in ini \ifx\bbl@KVP@intraspace\@nnil\else % We can override the ini or set \bbl@csarg\edef{intsp@#2}{\bbl@KVP@intraspace}% \fi \bbl@provide@intraspace - % == Line breaking: CJK quotes == TODO -> @extras - \ifcase\bbl@engine\or - \bbl@xin@{/c}{/\bbl@cl{lnbrk}}% - \ifin@ - \bbl@ifunset{bbl@quote@\languagename}{}% - {\directlua{ - Babel.locale_props[\the\localeid].cjk_quotes = {} - local cs = 'op' - for c in string.utfvalues(% - [[\csname bbl@quote@\languagename\endcsname]]) do - if Babel.cjk_characters[c].c == 'qu' then - Babel.locale_props[\the\localeid].cjk_quotes[c] = cs - end - cs = ( cs == 'op') and 'cl' or 'op' - end - }}% - \fi - \fi % == Line breaking: justification == \ifx\bbl@KVP@justification\@nnil\else \let\bbl@KVP@linebreaking\bbl@KVP@justification @@ -2475,6 +2299,7 @@ \bbl@xin@{/e}{/\bbl@cl{lnbrk}}% \ifin@\else\bbl@xin@{/k}{/\bbl@cl{lnbrk}}\fi \ifin@\bbl@arabicjust\fi + % WIP \bbl@xin@{/p}{/\bbl@cl{lnbrk}}% \ifin@\AtBeginDocument{\@nameuse{bbl@tibetanjust}}\fi % == Line breaking: hyphenate.other.(locale|script) == @@ -2513,7 +2338,7 @@ \ifx\bbl@latinarabic\@undefined \expandafter\let\expandafter\@arabic \csname bbl@counter@\languagename\endcsname - \else % ie, if layout=counters, which redefines \@arabic + \else % i.e., if layout=counters, which redefines \@arabic \expandafter\let\expandafter\bbl@latinarabic \csname bbl@counter@\languagename\endcsname \fi @@ -2962,11 +2787,11 @@ \let\bbl@inikv@numbers\bbl@inikv \def\bbl@maybextx{-\bbl@csarg\ifx{extx@\languagename}\@empty x-\fi} \def\bbl@inikv@characters#1#2{% - \bbl@ifsamestring{#1}{casing}% eg, casing = uV + \bbl@ifsamestring{#1}{casing}% e.g., casing = uV {\bbl@exp{% \\\g@addto@macro\\\bbl@release@casing{% \\\bbl@casemapping{}{\languagename}{\unexpanded{#2}}}}}% - {\in@{$casing.}{$#1}% eg, casing.Uv = uV + {\in@{$casing.}{$#1}% e.g., casing.Uv = uV \ifin@ \lowercase{\def\bbl@tempb{#1}}% \bbl@replace\bbl@tempb{casing.}{}% @@ -3085,7 +2910,7 @@ \else % % The following code is still under study. You can test it and make - % suggestions. Eg, enumerate.2 = ([enumi]).([enumii]). It's + % suggestions. E.g., enumerate.2 = ([enumi]).([enumii]). It's % language dependent. \in@{enumerate.}{#1}% \ifin@ @@ -3150,8 +2975,8 @@ \edef\bbl@tempe{% \bbl@ifunset{bbl@calpr@\languagename}{}{\bbl@cl{calpr}},% #1}% + \bbl@exp{\lowercase{\edef\\\bbl@tempe{\bbl@tempe}}}% \bbl@replace\bbl@tempe{ }{}% - \bbl@replace\bbl@tempe{CONVERT}{convert=}% Hackish \bbl@replace\bbl@tempe{convert}{convert=}% \let\bbl@ld@calendar\@empty \let\bbl@ld@variant\@empty @@ -3165,7 +2990,7 @@ {\bbl@ld@calendar}\bbl@they\bbl@them\bbl@thed \fi \fi - \@nameuse{bbl@precalendar}% Remove, eg, +, -civil (-ca-islamic) + \@nameuse{bbl@precalendar}% Remove, e.g., +, -civil (-ca-islamic) \edef\bbl@calendar{% Used in \month..., too \bbl@ld@calendar \ifx\bbl@ld@variant\@empty\else @@ -3193,17 +3018,32 @@ \ifx\bbl@savetoday\@empty \bbl@exp{% TODO. Move to a better place. \\\AfterBabelCommands{% - \def\<\languagename date>{\\\protect\<\languagename date >}% - \\\newcommand\<\languagename date >[4][]{% - \\\bbl@usedategrouptrue - \<bbl@ensure@\languagename>{% - \\\localedate[####1]{####2}{####3}{####4}}}}% + \gdef\<\languagename date>{\\\protect\<\languagename date >}% + \gdef\<\languagename date >{\\\bbl@printdate{\languagename}}}% \def\\\bbl@savetoday{% \\\SetString\\\today{% \<\languagename date>[convert]% {\\\the\year}{\\\the\month}{\\\the\day}}}}% \fi}% {}}} +\def\bbl@printdate#1{% + \@ifnextchar[{\bbl@printdate@i{#1}}{\bbl@printdate@i{#1}[]}} +\def\bbl@printdate@i#1[#2]#3#4#5{% + \bbl@usedategrouptrue + \@nameuse{bbl@ensure@#1}{\localedate[#2]{#3}{#4}{#5}}} +\AddToHook{begindocument/before}{% + \let\bbl@normalsf\normalsfcodes + \let\normalsfcodes\relax} +\AtBeginDocument{% + \ifx\bbl@normalsf\@empty + \ifnum\sfcode`\.=\@m + \let\normalsfcodes\frenchspacing + \else + \let\normalsfcodes\nonfrenchspacing + \fi + \else + \let\normalsfcodes\bbl@normalsf + \fi} \let\bbl@calendar\@empty \newcommand\babelcalendar[2][\the\year-\the\month-\the\day]{% \@nameuse{bbl@ca@#2}#1\@@} @@ -3251,7 +3091,7 @@ \bbl@csarg\let{inikv@transforms.posthyphenation}\bbl@inikv \def\bbl@transforms@aux#1#2#3#4,#5\relax{% #1[#2]{#3}{#4}{#5}} -\begingroup % A hack. TODO. Don't require an specific order +\begingroup % A hack. TODO. Don't require a specific order \catcode`\%=12 \catcode`\&=14 \gdef\bbl@transforms#1#2#3{&% @@ -3355,19 +3195,19 @@ {\bbl@input@texini{#1}}} \def\bbl@setdigits#1#2#3#4#5{% \bbl@exp{% - \def\<\languagename digits>####1{% ie, \langdigits + \def\<\languagename digits>####1{% i.e., \langdigits \<bbl@digits@\languagename>####1\\\@nil}% \let\<bbl@cntr@digits@\languagename>\<\languagename digits>% - \def\<\languagename counter>####1{% ie, \langcounter + \def\<\languagename counter>####1{% i.e., \langcounter \\\expandafter\<bbl@counter@\languagename>% \\\csname c@####1\endcsname}% - \def\<bbl@counter@\languagename>####1{% ie, \bbl@counter@lang + \def\<bbl@counter@\languagename>####1{% i.e., \bbl@counter@lang \\\expandafter\<bbl@digits@\languagename>% \\\number####1\\\@nil}}% \def\bbl@tempa##1##2##3##4##5{% \bbl@exp{% Wow, quite a lot of hashes! :-( \def\<bbl@digits@\languagename>########1{% - \\\ifx########1\\\@nil % ie, \bbl@digits@lang + \\\ifx########1\\\@nil % i.e., \bbl@digits@lang \\\else \\\ifx0########1#1% \\\else\\\ifx1########1#2% @@ -3421,58 +3261,17 @@ {\bbl@cs{cntr@#1.F.\number#5#6#7#8@\languagename}}} \def\bbl@alphnum@invalid#1{% \bbl@error{alphabetic-too-large}{#1}{}{}} -\def\bbl@localeinfo#1#2{% - \bbl@ifunset{bbl@info@#2}{#1}% - {\bbl@ifunset{bbl@\csname bbl@info@#2\endcsname @\languagename}{#1}% - {\bbl@cs{\csname bbl@info@#2\endcsname @\languagename}}}} -\newcommand\localeinfo[1]{% - \ifx*#1\@empty % TODO. A bit hackish to make it expandable. - \bbl@afterelse\bbl@localeinfo{}% - \else - \bbl@localeinfo - {\bbl@error{no-ini-info}{}{}{}}% - {#1}% - \fi} -\@namedef{bbl@info@tag.ini}{lini} -\@namedef{bbl@info@name.english}{elname} -\@namedef{bbl@info@name.opentype}{lname} -\@namedef{bbl@info@tag.bcp47}{tbcp} -\@namedef{bbl@info@language.tag.bcp47}{lbcp} -\@namedef{bbl@info@tag.opentype}{lotf} -\@namedef{bbl@info@script.name}{esname} -\@namedef{bbl@info@script.name.opentype}{sname} -\@namedef{bbl@info@script.tag.bcp47}{sbcp} -\@namedef{bbl@info@script.tag.opentype}{sotf} -\@namedef{bbl@info@region.tag.bcp47}{rbcp} -\@namedef{bbl@info@variant.tag.bcp47}{vbcp} -\@namedef{bbl@info@extension.t.tag.bcp47}{extt} -\@namedef{bbl@info@extension.u.tag.bcp47}{extu} -\@namedef{bbl@info@extension.x.tag.bcp47}{extx} -\ifcase\bbl@engine % Converts utf8 to its code (expandable) - \def\bbl@utftocode#1{\the\numexpr\decode@UTFviii#1\relax} -\else - \def\bbl@utftocode#1{\expandafter`\string#1} -\fi -\providecommand\BCPdata{} -\ifx\renewcommand\@undefined\else % For plain. TODO. It’s a quick fix - \renewcommand\BCPdata[1]{\bbl@bcpdata@i#1\@empty} - \def\bbl@bcpdata@i#1#2#3#4#5#6\@empty{% - \@nameuse{str_if_eq:nnTF}{#1#2#3#4#5}{main.}% - {\bbl@bcpdata@ii{#6}\bbl@main@language}% - {\bbl@bcpdata@ii{#1#2#3#4#5#6}\languagename}}% - \def\bbl@bcpdata@ii#1#2{% - \bbl@ifunset{bbl@info@#1.tag.bcp47}% - {\bbl@error{unknown-ini-field}{#1}{}{}}% - {\bbl@ifunset{bbl@\csname bbl@info@#1.tag.bcp47\endcsname @#2}{}% - {\bbl@cs{\csname bbl@info@#1.tag.bcp47\endcsname @#2}}}} -\fi -\@namedef{bbl@info@casing.tag.bcp47}{casing} \newcommand\BabelUppercaseMapping[3]{% \DeclareUppercaseMapping[\@nameuse{bbl@casing@#1}]{#2}{#3}} \newcommand\BabelTitlecaseMapping[3]{% \DeclareTitlecaseMapping[\@nameuse{bbl@casing@#1}]{#2}{#3}} \newcommand\BabelLowercaseMapping[3]{% \DeclareLowercaseMapping[\@nameuse{bbl@casing@#1}]{#2}{#3}} +\ifcase\bbl@engine % Converts utf8 to its code (expandable) + \def\bbl@utftocode#1{\the\numexpr\decode@UTFviii#1\relax} +\else + \def\bbl@utftocode#1{\expandafter`\string#1} +\fi \def\bbl@casemapping#1#2#3{% 1:variant \def\bbl@tempa##1 ##2{% Loop \bbl@casemapping@i{##1}% @@ -3491,7 +3290,7 @@ \fi \expandafter\bbl@casemapping@ii\bbl@tempb\@@} \def\bbl@casemapping@ii#1#2#3\@@{% - \in@{#1#3}{<>}% ie, if <u>, <l>, <t> + \in@{#1#3}{<>}% i.e., if <u>, <l>, <t> \ifin@ \edef\bbl@tempe{% \if#2u1 \else\if#2l2 \else\if#2t3 \fi\fi\fi}% @@ -3507,6 +3306,33 @@ \DeclareTitlecaseMapping[\bbl@templ]{\bbl@utftocode{#1}}{#2}% \fi \fi} +\def\bbl@localeinfo#1#2{% + \bbl@ifunset{bbl@info@#2}{#1}% + {\bbl@ifunset{bbl@\csname bbl@info@#2\endcsname @\languagename}{#1}% + {\bbl@cs{\csname bbl@info@#2\endcsname @\languagename}}}} +\newcommand\localeinfo[1]{% + \ifx*#1\@empty % TODO. A bit hackish to make it expandable. + \bbl@afterelse\bbl@localeinfo{}% + \else + \bbl@localeinfo + {\bbl@error{no-ini-info}{}{}{}}% + {#1}% + \fi} +\@namedef{bbl@info@tag.ini}{lini} +\@namedef{bbl@info@name.english}{elname} +\@namedef{bbl@info@name.opentype}{lname} +\@namedef{bbl@info@tag.bcp47}{tbcp} +\@namedef{bbl@info@language.tag.bcp47}{lbcp} +\@namedef{bbl@info@tag.opentype}{lotf} +\@namedef{bbl@info@script.name}{esname} +\@namedef{bbl@info@script.name.opentype}{sname} +\@namedef{bbl@info@script.tag.bcp47}{sbcp} +\@namedef{bbl@info@script.tag.opentype}{sotf} +\@namedef{bbl@info@region.tag.bcp47}{rbcp} +\@namedef{bbl@info@variant.tag.bcp47}{vbcp} +\@namedef{bbl@info@extension.t.tag.bcp47}{extt} +\@namedef{bbl@info@extension.u.tag.bcp47}{extu} +\@namedef{bbl@info@extension.x.tag.bcp47}{extx} \let\bbl@ensureinfo\@gobble \newcommand\BabelEnsureInfo{% \ifx\InputIfFileExists\@undefined\else @@ -3543,6 +3369,52 @@ \def\bbl@elt##1##2##3{\typeout{##1/##2 = ##3}}% \@nameuse{bbl@inidata@#1}% \typeout{*******}} +\newif\ifbbl@bcpallowed +\bbl@bcpallowedfalse +\def\bbl@autoload@options{import} +\def\bbl@provide@locale{% + \ifx\babelprovide\@undefined + \bbl@error{base-on-the-fly}{}{}{}% + \fi + \let\bbl@auxname\languagename % Still necessary. + \bbl@ifunset{bbl@bcp@map@\languagename}{}% Move uplevel?? + {\edef\languagename{\@nameuse{bbl@bcp@map@\languagename}}}% + \ifbbl@bcpallowed + \expandafter\ifx\csname date\languagename\endcsname\relax + \expandafter + \bbl@bcplookup\languagename-\@empty-\@empty-\@empty\@@ + \ifx\bbl@bcp\relax\else % Returned by \bbl@bcplookup + \edef\languagename{\bbl@bcp@prefix\bbl@bcp}% + \edef\localename{\bbl@bcp@prefix\bbl@bcp}% + \expandafter\ifx\csname date\languagename\endcsname\relax + \let\bbl@initoload\bbl@bcp + \bbl@exp{\\\babelprovide[\bbl@autoload@bcpoptions]{\languagename}}% + \let\bbl@initoload\relax + \fi + \bbl@csarg\xdef{bcp@map@\bbl@bcp}{\localename}% + \fi + \fi + \fi + \expandafter\ifx\csname date\languagename\endcsname\relax + \IfFileExists{babel-\languagename.tex}% + {\bbl@exp{\\\babelprovide[\bbl@autoload@options]{\languagename}}}% + {}% + \fi} +\providecommand\BCPdata{} +\ifx\renewcommand\@undefined\else % For plain. TODO. It’s a quick fix + \renewcommand\BCPdata[1]{\bbl@bcpdata@i#1\@empty\@empty\@empty} + \def\bbl@bcpdata@i#1#2#3#4#5#6\@empty{% + \@nameuse{str_if_eq:nnTF}{#1#2#3#4#5}{main.}% + {\bbl@bcpdata@ii{#6}\bbl@main@language}% + {\bbl@bcpdata@ii{#1#2#3#4#5#6}\languagename}}% + \def\bbl@bcpdata@ii#1#2{% + \bbl@ifunset{bbl@info@#1.tag.bcp47}% + {\bbl@error{unknown-ini-field}{#1}{}{}}% + {\bbl@ifunset{bbl@\csname bbl@info@#1.tag.bcp47\endcsname @#2}{}% + {\bbl@cs{\csname bbl@info@#1.tag.bcp47\endcsname @#2}}}} +\fi +\@namedef{bbl@info@casing.tag.bcp47}{casing} +\@namedef{bbl@info@tag.tag.bcp47}{tbcp} % For \BCPdata \newcommand\babeladjust[1]{% TODO. Error handling. \bbl@forkv{#1}{% \bbl@ifunset{bbl@ADJ@##1@##2}% @@ -3615,7 +3487,7 @@ \def\bbl@bcp@prefix{bcp47-} \@namedef{bbl@ADJ@autoload.options}#1{% \def\bbl@autoload@options{#1}} -\let\bbl@autoload@bcpoptions\@empty +\def\bbl@autoload@bcpoptions{import} \@namedef{bbl@ADJ@autoload.bcp47.options}#1{% \def\bbl@autoload@bcpoptions{#1}} \newif\ifbbl@bcptoname @@ -3666,7 +3538,7 @@ \@namedef{bbl@ADJ@select.encoding@off}{% \let\bbl@encoding@select@off\@empty} \bbl@trace{Cross referencing macros} -\ifx\bbl@opt@safe\@empty\else % ie, if 'ref' and/or 'bib' +\ifx\bbl@opt@safe\@empty\else % i.e., if 'ref' and/or 'bib' \def\@newl@bel#1#2#3{% {\@safe@activestrue \bbl@ifunset{#1@#2}% @@ -3757,6 +3629,39 @@ \let\org@bibcite\bibcite \let\org@@bibitem\@bibitem \fi +\newcommand\BabelPatchSection[1]{% + \@ifundefined{#1}{}{% + \bbl@exp{\let\<bbl@ss@#1>\<#1>}% + \@namedef{#1}{% + \@ifstar{\bbl@presec@s{#1}}% + {\@dblarg{\bbl@presec@x{#1}}}}}} +\def\bbl@presec@x#1[#2]#3{% + \bbl@exp{% + \\\select@language@x{\bbl@main@language}% + \\\bbl@cs{sspre@#1}% + \\\bbl@cs{ss@#1}% + [\\\foreignlanguage{\languagename}{\unexpanded{#2}}]% + {\\\foreignlanguage{\languagename}{\unexpanded{#3}}}% + \\\select@language@x{\languagename}}} +\def\bbl@presec@s#1#2{% + \bbl@exp{% + \\\select@language@x{\bbl@main@language}% + \\\bbl@cs{sspre@#1}% + \\\bbl@cs{ss@#1}*% + {\\\foreignlanguage{\languagename}{\unexpanded{#2}}}% + \\\select@language@x{\languagename}}} +\IfBabelLayout{sectioning}% + {\BabelPatchSection{part}% + \BabelPatchSection{chapter}% + \BabelPatchSection{section}% + \BabelPatchSection{subsection}% + \BabelPatchSection{subsubsection}% + \BabelPatchSection{paragraph}% + \BabelPatchSection{subparagraph}% + \def\babel@toc#1{% + \select@language@x{\bbl@main@language}}}{} +\IfBabelLayout{captions}% + {\BabelPatchSection{caption}}{} \bbl@trace{Marks} \IfBabelLayout{sectioning} {\ifx\bbl@opt@headfoot\@nnil @@ -3932,8 +3837,8 @@ \def\bbl@patchfont#1{\AddToHook{selectfont}{#1}} \bbl@trace{Loading basic (internal) bidi support} \ifodd\bbl@engine -\else % TODO. Move to txtbabel - \ifnum\bbl@bidimode>100 \ifnum\bbl@bidimode<200 % Any xe+lua bidi= +\else % TODO. Move to txtbabel. Any xe+lua bidi + \ifnum\bbl@bidimode>100 \ifnum\bbl@bidimode<200 \bbl@error{bidi-only-lua}{}{}{}% \let\bbl@beforeforeign\leavevmode \AtEndOfPackage{% @@ -3944,7 +3849,9 @@ \ifx\RTLfootnotetext\@undefined \AtEndOfPackage{% \EnableBabelHook{babel-bidi}% - \bbl@loadfontspec % bidi needs fontspec + \ifx\fontspec\@undefined + \usepackage{fontspec}% bidi needs fontspec + \fi \usepackage#1{bidi}% \let\bbl@digitsdotdash\DigitsDotDashInterCharToks \def\DigitsDotDashInterCharToks{% See the 'bidi' package @@ -3977,14 +3884,17 @@ \fi} \fi \bbl@trace{Macros to switch the text direction} -\def\bbl@alscripts{,Arabic,Syriac,Thaana,} -\def\bbl@rscripts{% TODO. Base on codes ?? - ,Imperial Aramaic,Avestan,Cypriot,Hatran,Hebrew,% - Old Hungarian,Lydian,Mandaean,Manichaean,% - Meroitic Cursive,Meroitic,Old North Arabian,% - Nabataean,N'Ko,Orkhon,Palmyrene,Inscriptional Pahlavi,% - Psalter Pahlavi,Phoenician,Inscriptional Parthian,Samaritan,% - Old South Arabian,}% +\def\bbl@alscripts{% + ,Arabic,Syriac,Thaana,Hanifi Rohingya,Hanifi,Sogdian,} +\def\bbl@rscripts{% + Adlam,Avestan,Chorasmian,Cypriot,Elymaic,Garay,% + Hatran,Hebrew,Imperial Aramaic,Inscriptional Pahlavi,% + Inscriptional Parthian,Kharoshthi,Lydian,Mandaic,Manichaean,% + Mende Kikakui,Meroitic Cursive,Meroitic Hieroglyphs,Nabataean,% + Nko,Old Hungarian,Old North Arabian,Old Sogdian,% + Old South Arabian,Old Turkic,Old Uyghur,Palmyrene,Phoenician,% + Psalter Pahlavi,Samaritan,Yezidi,Mandaean,% + Meroitic,N'Ko,Orkhon,Todhri} \def\bbl@provide@dirs#1{% \bbl@xin@{\csname bbl@sname@#1\endcsname}{\bbl@alscripts\bbl@rscripts}% \ifin@ @@ -4015,8 +3925,10 @@ \bbl@pardir{#1}% <- Must precede \bbl@textdir \fi \bbl@textdir{#1}} -\AddBabelHook{babel-bidi}{afterextras}{\bbl@switchdir} -\DisableBabelHook{babel-bidi} +\ifnum\bbl@bidimode>\z@ + \AddBabelHook{babel-bidi}{afterextras}{\bbl@switchdir} + \DisableBabelHook{babel-bidi} +\fi \ifodd\bbl@engine % luatex=1 \else % pdftex=0, xetex=2 \newcount\bbl@dirlevel @@ -4072,19 +3984,15 @@ \else {\setbox\z@\lastbox\beginR\box\z@}% \fi}% - \let\bbl@severypar\everypar - \newtoks\everypar - \everypar=\bbl@severypar - \bbl@severypar{\bbl@xeeverypar\the\everypar}} + \AddToHook{para/begin}{\bbl@xeeverypar}} \ifnum\bbl@bidimode>200 % Any xe bidi= \let\bbl@textdir@i\@gobbletwo \let\bbl@xebidipar\@empty \AddBabelHook{bidi}{foreign}{% - \def\bbl@tempa{\def\BabelText####1}% \ifcase\bbl@thetextdir - \expandafter\bbl@tempa\expandafter{\BabelText{\LR{##1}}}% + \BabelWrapText{\LR{##1}}% \else - \expandafter\bbl@tempa\expandafter{\BabelText{\RL{##1}}}% + \BabelWrapText{\RL{##1}}% \fi} \def\bbl@pardir#1{\ifcase#1\relax\setLR\else\setRL\fi} \fi @@ -4132,6 +4040,7 @@ \IfFileExists{\CurrentOption.ldf}% {\bbl@load@language{\CurrentOption}}% {#1\bbl@load@language{#2}#3}} +\DeclareOption{friulian}{\bbl@try@load@lang{}{friulan}{}} \DeclareOption{hebrew}{% \ifcase\bbl@engine\or \bbl@error{only-pdftex-lang}{hebrew}{luatex}{}% @@ -4159,13 +4068,19 @@ *}}% {\bbl@error{config-not-found}{}{}{}}% \fi +\def\bbl@tempf{,} +\bbl@foreach\@raw@classoptionslist{% + \in@{=}{#1}% + \ifin@\else + \edef\bbl@tempf{\bbl@tempf\zap@space#1 \@empty,}% + \fi} \ifx\bbl@opt@main\@nnil \ifnum\bbl@iniflag>\z@ % if all ldf's: set implicitly, no main pass \let\bbl@tempb\@empty - \edef\bbl@tempa{\@classoptionslist,\bbl@language@opts}% + \edef\bbl@tempa{\bbl@tempf,\bbl@language@opts}% \bbl@foreach\bbl@tempa{\edef\bbl@tempb{#1,\bbl@tempb}}% \bbl@foreach\bbl@tempb{% \bbl@tempb is a reversed list - \ifx\bbl@opt@main\@nnil % ie, if not yet assigned + \ifx\bbl@opt@main\@nnil % i.e., if not yet assigned \ifodd\bbl@iniflag % = *= \IfFileExists{babel-#1.tex}{\def\bbl@opt@main{#1}}{}% \else % n += @@ -4176,7 +4091,7 @@ \else \bbl@info{Main language set with 'main='. Except if you have\\% problems, prefer the default mechanism for setting\\% - the main language, ie, as the last declared.\\% + the main language, i.e., as the last declared.\\% Reported} \fi \ifx\bbl@opt@main\@nnil\else @@ -4193,11 +4108,11 @@ \else % + * (other = ini) \DeclareOption{#1}{% \bbl@ldfinit - \babelprovide[import]{#1}% + \babelprovide[@import]{#1}% %%%%% \bbl@afterldf{}}% \fi \fi} -\bbl@foreach\@classoptionslist{% +\bbl@foreach\bbl@tempf{% \def\bbl@tempa{#1}% \ifx\bbl@tempa\bbl@opt@main\else \ifnum\bbl@iniflag<\tw@ % 0 ø (other = ldf) @@ -4210,18 +4125,20 @@ \IfFileExists{babel-#1.tex}% {\DeclareOption{#1}{% \bbl@ldfinit - \babelprovide[import]{#1}% + \babelprovide[@import]{#1}% %%%%%% \bbl@afterldf{}}}% {}% \fi \fi} +\NewHook{babel/presets} +\UseHook{babel/presets} \def\AfterBabelLanguage#1{% \bbl@ifsamestring\CurrentOption{#1}{\global\bbl@add\bbl@afterlang}{}} \DeclareOption*{} \ProcessOptions* \bbl@trace{Option 'main'} \ifx\bbl@opt@main\@nnil - \edef\bbl@tempa{\@classoptionslist,\bbl@language@opts} + \edef\bbl@tempa{\bbl@tempf,\bbl@language@opts} \let\bbl@tempc\@empty \edef\bbl@templ{,\bbl@loaded,} \edef\bbl@templ{\expandafter\strip@prefix\meaning\bbl@templ} @@ -4245,7 +4162,9 @@ \bbl@ldfinit \let\CurrentOption\bbl@opt@main \bbl@exp{% \bbl@opt@provide = empty if * - \\\babelprovide[\bbl@opt@provide,import,main]{\bbl@opt@main}}% + \\\babelprovide + [\bbl@opt@provide,@import,main]% %%%%% + {\bbl@opt@main}}% \bbl@afterldf{} \DeclareOption{\bbl@opt@main}{} \else % case 0,2 (main is ldf) diff --git a/Master/texmf-dist/tex/generic/babel/blplain.tex b/Master/texmf-dist/tex/generic/babel/blplain.tex index f960bc6bf1d..a2c33d76ef7 100644 --- a/Master/texmf-dist/tex/generic/babel/blplain.tex +++ b/Master/texmf-dist/tex/generic/babel/blplain.tex @@ -7,7 +7,7 @@ %% babel.dtx (with options: `blplain') %% %% -%% Copyright (C) 2012-2024 Javier Bezos and Johannes L. Braams. +%% Copyright (C) 2012-2025 Javier Bezos and Johannes L. Braams. %% Copyright (C) 1989-2012 Johannes L. Braams and %% any individual authors listed elsewhere in this file. %% All rights reserved. @@ -32,7 +32,6 @@ %% and covered by LPPL is defined by the unpacking scripts (with %% extension |.ins|) which are part of the distribution. %% - \catcode`\{=1 % left brace is begin-group character \catcode`\}=2 % right brace is end-group character \catcode`\#=6 % hash mark is macro parameter character diff --git a/Master/texmf-dist/tex/generic/babel/bplain.tex b/Master/texmf-dist/tex/generic/babel/bplain.tex index b189e6f7dd7..c9820aeaca9 100644 --- a/Master/texmf-dist/tex/generic/babel/bplain.tex +++ b/Master/texmf-dist/tex/generic/babel/bplain.tex @@ -7,7 +7,7 @@ %% babel.dtx (with options: `bplain') %% %% -%% Copyright (C) 2012-2024 Javier Bezos and Johannes L. Braams. +%% Copyright (C) 2012-2025 Javier Bezos and Johannes L. Braams. %% Copyright (C) 1989-2012 Johannes L. Braams and %% any individual authors listed elsewhere in this file. %% All rights reserved. @@ -32,7 +32,6 @@ %% and covered by LPPL is defined by the unpacking scripts (with %% extension |.ins|) which are part of the distribution. %% - \catcode`\{=1 % left brace is begin-group character \catcode`\}=2 % right brace is end-group character \catcode`\#=6 % hash mark is macro parameter character diff --git a/Master/texmf-dist/tex/generic/babel/errbabel.def b/Master/texmf-dist/tex/generic/babel/errbabel.def index 432899cb34e..3d0106e31b1 100644 --- a/Master/texmf-dist/tex/generic/babel/errbabel.def +++ b/Master/texmf-dist/tex/generic/babel/errbabel.def @@ -7,7 +7,7 @@ %% babel.dtx (with options: `errors') %% %% -%% Copyright (C) 2012-2024 Javier Bezos and Johannes L. Braams. +%% Copyright (C) 2012-2025 Javier Bezos and Johannes L. Braams. %% Copyright (C) 1989-2012 Johannes L. Braams and %% any individual authors listed elsewhere in this file. %% All rights reserved. @@ -32,7 +32,6 @@ %% and covered by LPPL is defined by the unpacking scripts (with %% extension |.ins|) which are part of the distribution. %% - \catcode`\{=1 \catcode`\}=2 \catcode`\#=6 \catcode`\:=12 \catcode`\,=12 \catcode`\.=12 \catcode`\-=12 \catcode`\'=12 \catcode`\(=12 \catcode`\)=12 @@ -100,19 +99,19 @@ {This macro is available only in LuaLaTeX and XeLaTeX.}% {Consider switching to these engines.} \bbl@errmessage{only-lua} - {This macro is available only in LuaLaTeX.}% + {This macro is available only in LuaLaTeX}% {Consider switching to that engine.} \bbl@errmessage{unknown-provide-key} {Unknown key '#1' in \string\babelprovide}% {See the manual for valid keys}% \bbl@errmessage{unknown-mapfont} {Option '\bbl@KVP@mapfont' unknown for\\% - mapfont. Use 'direction'.}% + mapfont. Use 'direction'}% {See the manual for details.} \bbl@errmessage{no-ini-file} {There is no ini file for the requested language\\% (#1: \languagename). Perhaps you misspelled it or your\\% - installation is not complete.}% + installation is not complete}% {Fix the name or reinstall babel.} \bbl@errmessage{digits-is-reserved} {The counter name 'digits' is reserved for mapping\\% @@ -120,7 +119,7 @@ {Use another name.} \bbl@errmessage{limit-two-digits} {Currently two-digit years are restricted to the\\ - range 0-9999.}% + range 0-9999}% {There is little you can do. Sorry.} \bbl@errmessage{alphabetic-too-large} {Alphabetic numeral too large (#1)}% @@ -132,20 +131,20 @@ {See the manual for details.} \bbl@errmessage{unknown-ini-field} {Unknown field '#1' in \string\BCPdata.\\% - Perhaps you misspelled it.}% + Perhaps you misspelled it}% {See the manual for details.} \bbl@errmessage{unknown-locale-key} {Unknown key for locale '#2':\\% #3\\% - \string#1 will be set to \relax}% + \string#1 will be set to \string\relax}% {Perhaps you misspelled it.}% \bbl@errmessage{adjust-only-vertical} {Currently, #1 related features can be adjusted only\\% - in the main vertical list.}% + in the main vertical list}% {Maybe things change in the future, but this is what it is.} \bbl@errmessage{layout-only-vertical} {Currently, layout related features can be adjusted only\\% - in vertical mode.}% + in vertical mode}% {Maybe things change in the future, but this is what it is.} \bbl@errmessage{bidi-only-lua} {The bidi method 'basic' is available only in\\% @@ -175,11 +174,11 @@ {See the manual for further info} \bbl@errmessage{unknown-interchar} {'#1' for '\languagename' cannot be enabled.\\% - Maybe there is a typo.}% + Maybe there is a typo}% {See the manual for further details.} \bbl@errmessage{unknown-interchar-b} {'#1' for '\languagename' cannot be disabled.\\% - Maybe there is a typo.}% + Maybe there is a typo}% {See the manual for further details.} \bbl@errmessage{charproperty-only-vertical} {\string\babelcharproperty\space can be used only in\\% @@ -214,7 +213,11 @@ {The '#1' ldf style doesn't work with #2,\\% but you can use the ini locale instead.\\% Try adding 'provide=*' to the option list. You may\\% - also want to set 'bidi=' to some value.}% + also want to set 'bidi=' to some value}% + {See the manual for further details.} +\bbl@errmessage{hyphenmins-args} + {\string\babelhyphenmins\ accepts either the optional\\% + argument or the star, but not both at the same time}% {See the manual for further details.} \endinput %% diff --git a/Master/texmf-dist/tex/generic/babel/hyphen.cfg b/Master/texmf-dist/tex/generic/babel/hyphen.cfg index 4ed4a864950..9406fb0186f 100644 --- a/Master/texmf-dist/tex/generic/babel/hyphen.cfg +++ b/Master/texmf-dist/tex/generic/babel/hyphen.cfg @@ -7,7 +7,7 @@ %% babel.dtx (with options: `patterns') %% %% -%% Copyright (C) 2012-2024 Javier Bezos and Johannes L. Braams. +%% Copyright (C) 2012-2025 Javier Bezos and Johannes L. Braams. %% Copyright (C) 1989-2012 Johannes L. Braams and %% any individual authors listed elsewhere in this file. %% All rights reserved. @@ -32,16 +32,15 @@ %% and covered by LPPL is defined by the unpacking scripts (with %% extension |.ins|) which are part of the distribution. %% - \ifx\ProvidesFile\@undefined \def\ProvidesFile#1[#2 #3 #4]{% \wlog{File: #1 #4 #3 <#2>}% \let\ProvidesFile\@undefined} \fi -\ProvidesFile{hyphen.cfg}[2024/06/02 v24.6 Babel hyphens] +\ProvidesFile{hyphen.cfg}[2025/02/14 v25.4 Babel hyphens] \xdef\bbl@format{\jobname} -\def\bbl@version{24.6} -\def\bbl@date{2024/06/02} +\def\bbl@version{25.4} +\def\bbl@date{2025/02/14} \ifx\AtBeginDocument\@undefined \def\@empty{} \fi @@ -133,7 +132,7 @@ \righthyphenmin##2\relax}% \def\selectlanguage{% \errhelp{Selecting a language requires a package supporting it}% - \errmessage{Not loaded}}% + \errmessage{No multilingual package has been loaded}}% \let\foreignlanguage\selectlanguage \let\otherlanguage\selectlanguage \expandafter\let\csname otherlanguage*\endcsname\selectlanguage diff --git a/Master/texmf-dist/tex/generic/babel/locale/arq/babel-algerianarabic.tex b/Master/texmf-dist/tex/generic/babel/locale/arq/babel-algerianarabic.tex new file mode 100644 index 00000000000..a4a902c90a4 --- /dev/null +++ b/Master/texmf-dist/tex/generic/babel/locale/arq/babel-algerianarabic.tex @@ -0,0 +1,12 @@ +% This file is part of babel. For further details see: +% https://www.ctan.org/pkg/babel +\ifx\BabelBeforeIni\undefined + \PackageError{babel}% + {This file is a component of babel and cannot\MessageBreak + be loaded directly. I'll stop immediately}% + {Just use babel as documented.}% + \stop +\fi +\BabelBeforeIni{arq}{% +} +\endinput
\ No newline at end of file diff --git a/Master/texmf-dist/tex/generic/babel/locale/arq/babel-arq.ini b/Master/texmf-dist/tex/generic/babel/locale/arq/babel-arq.ini new file mode 100644 index 00000000000..90414b07d6a --- /dev/null +++ b/Master/texmf-dist/tex/generic/babel/locale/arq/babel-arq.ini @@ -0,0 +1,140 @@ +; This file is part of babel. For further details see: +; https://www.ctan.org/pkg/babel +; Data has been collected mainly from the following sources: +; * Common Locale Data Repository (license Unicode): +; http://cldr.unicode.org/ +; http://unicode.org/copyright.html + +[identification] +charset = utf8 +version = 0.1 +date = 2025-01-19 +name.local = اللهجة الجزائرية +name.english = Algerian Arabic +name.babel = algerianarabic +tag.bcp47 = arq +language.tag.bcp47 = arq +tag.bcp47.likely = arq-Arab-DZ +; see https://docs.microsoft.com/en-us/typography/opentype/spec/languagetags +tag.opentype = +script.name = Arabic +script.tag.bcp47 = Arab +script.tag.opentype = arab +level = 1 +encodings = +derivate = no +warning = This is a bare minimum locale for 'algerianarabic'. + +[captions] +; xetex, luatex +preface = +ref = +abstract = +bib = +chapter = +appendix = +contents = +listfigure = +listtable = +index = +figure = +table = +part = +encl = +cc = +headto = +page = +see = +also = +proof = +glossary = + +[captions.licr] +; pdftex +preface = +ref = +abstract = +bib = +chapter = +appendix = +contents = +listfigure = +listtable = +index = +figure = +table = +part = +encl = +cc = +headto = +page = +see = +also = +proof = +glossary = + +[date.gregorian] +date.long = [d][ ][MMMM] [y] +date.short = [y]-[MM]-[dd] +months.wide.1 = +months.wide.2 = +months.wide.3 = +months.wide.4 = +months.wide.5 = +months.wide.6 = +months.wide.7 = +months.wide.8 = +months.wide.9 = +months.wide.10 = +months.wide.11 = +months.wide.12 = + +[date.gregorian.licr] +months.wide.1 = +months.wide.2 = +months.wide.3 = +months.wide.4 = +months.wide.5 = +months.wide.6 = +months.wide.7 = +months.wide.8 = +months.wide.9 = +months.wide.10 = +months.wide.11 = +months.wide.12 = + +[time.gregorian] +time.medium = [HH]:[mm]:[ss] +time.short = [HH]:[mm] + +[typography] +frenchspacing = yes +hyphenrules = +lefthyphenmin = +righthyphenmin = +hyphenchar = +prehyphenchar = +posthyphenchar = +exhyphenchar = +preexhyphenchar = +postexhyphenchar = +hyphenationmin = + +[characters] +delimiters.quotes = â€â€œâ€™â€˜ +auxiliary = [Ù€\u200C\u200D\u200E\u200F Ù¾ Ú† Ú˜ Úœ Ú¢ Ú¤ Ú¥ Ù¯ Ú§ Ú¨ Ú© Ú¯ ÛŒ] +exemplarCharacters = [\u064B \u064C \u064D \u064E \u064F \u0650 \u0651 \u0652 \u0670 Ø¡ Ø£ ؤ Ø¥ ئ ا Ø¢ ب Ø© ت Ø« ج Ø Ø® د Ø° ر ز س Ø´ ص ض Ø· ظ ع غ Ù Ù‚ Ùƒ Ù„ Ù… Ù† Ù‡ Ùˆ Ù‰ ÙŠ] +index = [ا ب ت Ø« ج Ø Ø® د Ø° ر ز س Ø´ ص ض Ø· ظ ع غ Ù Ù‚ Ùƒ Ù„ Ù… Ù† Ù‡ Ùˆ ÙŠ] +punctuation = [\\- †‑ – — ØŒ Ø› \\: ! ØŸ . … ' \" « » ( ) \\[ \\]] + +[numbers] +defaultNumberingSystem = latn +digits.native = ٠١٢٣٤٥٦٧٨٩ +minimumGroupingDigits = 1 +decimal = , +exponential = E +group = . + +[counters] +abjad = Ø£ ب ج د ه†و ز Ø Ø· ÙŠ Ùƒ Ù„ Ù… Ù† س ع ٠ص Ù‚ ر Ø´ ت Ø« Ø® Ø° ض ظ غ +maghrebi.abjad = Ø£ ب ج د ه†و ز Ø Ø· ÙŠ Ùƒ Ù„ Ù… Ù† ص ع ٠ض Ù‚ ر س ت Ø« Ø® Ø° ظ غ Ø´ diff --git a/Master/texmf-dist/tex/generic/babel/locale/bew/babel-betawi.tex b/Master/texmf-dist/tex/generic/babel/locale/bew/babel-betawi.tex new file mode 100644 index 00000000000..833500ec3ee --- /dev/null +++ b/Master/texmf-dist/tex/generic/babel/locale/bew/babel-betawi.tex @@ -0,0 +1,12 @@ +% This file is part of babel. For further details see: +% https://www.ctan.org/pkg/babel +\ifx\BabelBeforeIni\undefined + \PackageError{babel}% + {This file is a component of babel and cannot\MessageBreak + be loaded directly. I'll stop immediately}% + {Just use babel as documented.}% + \stop +\fi +\BabelBeforeIni{bew}{% +} +\endinput
\ No newline at end of file diff --git a/Master/texmf-dist/tex/generic/babel/locale/bew/babel-bew.ini b/Master/texmf-dist/tex/generic/babel/locale/bew/babel-bew.ini new file mode 100644 index 00000000000..96e5943bf2a --- /dev/null +++ b/Master/texmf-dist/tex/generic/babel/locale/bew/babel-bew.ini @@ -0,0 +1,142 @@ +; This file is part of babel. For further details see: +; https://www.ctan.org/pkg/babel +; Data has been collected mainly from the following sources: +; * Common Locale Data Repository (license Unicode): +; http://cldr.unicode.org/ +; http://unicode.org/copyright.html + +[identification] +charset = utf8 +version = 1.0 +date = 2025-02-01 +name.local = Betawi +name.english = Betawi +name.babel = betawi +tag.bcp47 = bew +language.tag.bcp47 = bew +tag.bcp47.likely = bew-Latn-ID +; see https://docs.microsoft.com/en-us/typography/opentype/spec/languagetags +tag.opentype = +script.name = Latin +script.tag.bcp47 = Latn +script.tag.opentype = latn +level = 1 +encodings = T1 OT1 LY1 +derivate = no + +[captions] +; xetex, luatex +preface = +ref = +abstract = +bib = +chapter = +appendix = +contents = +listfigure = +listtable = +index = +figure = +table = +part = +encl = +cc = +headto = +page = +see = +also = +proof = +glossary = + +[captions.licr] +; pdftex +preface = +ref = +abstract = +bib = +chapter = +appendix = +contents = +listfigure = +listtable = +index = +figure = +table = +part = +encl = +cc = +headto = +page = +see = +also = +proof = +glossary = + +[date.gregorian] +date.long = [d][ ][MMMM] [y] +date.short = [dd]/[MM]/[yy] +months.wide.1 = Januari +months.wide.2 = Pèbruari +months.wide.3 = Maret +months.wide.4 = April +months.wide.5 = Méi +months.wide.6 = Juni +months.wide.7 = Juli +months.wide.8 = Agustus +months.wide.9 = Sèptèmber +months.wide.10 = Oktober +months.wide.11 = Nopèmber +months.wide.12 = Désèmber + +[date.gregorian.licr] +months.wide.1 = Januari +months.wide.2 = P\`ebruari +months.wide.3 = Maret +months.wide.4 = April +months.wide.5 = M\'ei +months.wide.6 = Juni +months.wide.7 = Juli +months.wide.8 = Agustus +months.wide.9 = S\`ept\`ember +months.wide.10 = Oktober +months.wide.11 = Nop\`ember +months.wide.12 = D\'es\`ember + +[time.gregorian] +time.medium = [HH].[mm].[ss] +time.short = [HH].[mm] + +[typography] +frenchspacing = yes +hyphenrules = +lefthyphenmin = +righthyphenmin = +hyphenchar = +prehyphenchar = +posthyphenchar = +exhyphenchar = +preexhyphenchar = +postexhyphenchar = +hyphenationmin = + +[characters] +delimiters.quotes = +auxiliary = [Ã¡Ã ÄƒÃ¢Ã¥Ã¤Ã£Ä Ã¦ Äç Ḡêëē ÄŸÄ¡ ḥḫ ÃìÄîïī ḷḹ á¹á¹ƒ ñṅṇ óòÅôöøŠœ ṛṠśšşṣ ṠúùÅûüū ÿ żẓ ʾ Ê¿] +exemplarCharacters = [a b c d eéèĕ f g h i j k l m n o p q r s t u v w x y z] +index = +punctuation = [\\- â€â€‘ – — , ; \\: ! ? . … '‘’ \"Ҡ( ) \\[ \\] § @ * / \\& # †‡ ′ ″] + +[numbers] +defaultNumberingSystem = +minimumGroupingDigits = +decimal = , +exponential = +group = . +infinity = +list = +minusSign = +nan = +perMille = +percentSign = +plusSign = +superscriptingExponent = diff --git a/Master/texmf-dist/tex/generic/babel/locale/byn/babel-byn.ini b/Master/texmf-dist/tex/generic/babel/locale/byn/babel-byn.ini index 4a2d6023b7c..a9d0c5b8418 100644 --- a/Master/texmf-dist/tex/generic/babel/locale/byn/babel-byn.ini +++ b/Master/texmf-dist/tex/generic/babel/locale/byn/babel-byn.ini @@ -7,8 +7,8 @@ [identification] charset = utf8 -version = 1.0 -date = 2023-03-31 +version = 1.1 +date = 2024-06-24 name.local = ብሊን name.english = Blin name.babel = blin @@ -105,16 +105,21 @@ time.short = [h]:[mm] [a] [typography] frenchspacing = yes -hyphenrules = -lefthyphenmin = -righthyphenmin = -hyphenchar = -prehyphenchar = -posthyphenchar = -exhyphenchar = -preexhyphenchar = +; Modern practice. Use 'amharic' for the traditional one: +hyphenrules = unhyphenated +lefthyphenmin = 1 +righthyphenmin = 1 +hyphenchar = +prehyphenchar = +posthyphenchar = +exhyphenchar = +preexhyphenchar = postexhyphenchar = -hyphenationmin = +hyphenationmin = +linebreaking = s +intraspace = 0 .1 0 +; The syntax is liable to change in 'other' values +hyphenate.other.script = "1361 "1362 "1363 "1364 "1365 "1366 "1367 "1368 [characters] delimiters.quotes = diff --git a/Master/texmf-dist/tex/generic/babel/locale/ccp/babel-ccp.ini b/Master/texmf-dist/tex/generic/babel/locale/ccp/babel-ccp.ini index 0e0c9cc5734..d2f98bc65db 100644 --- a/Master/texmf-dist/tex/generic/babel/locale/ccp/babel-ccp.ini +++ b/Master/texmf-dist/tex/generic/babel/locale/ccp/babel-ccp.ini @@ -4,11 +4,12 @@ ; * Common Locale Data Repository (license Unicode): ; http://cldr.unicode.org/ ; http://unicode.org/copyright.html +; With some cleaning up by Stephen Huan (@stephen-huan) [identification] charset = utf8 -version = 1.0 -date = 2023-12-09 +version = 1.1 +date = 2024-08-11 name.local = 𑄌𑄋𑄴𑄟𑄳𑄦 name.english = Chakma name.babel = chakma @@ -146,8 +147,6 @@ hyphenationmin = [characters] ranges = 11100..1114F - -[characters] delimiters.quotes = auxiliary = exemplarCharacters = [ð‘„€ ð‘„ ð‘„‚ 𑄃 ð‘„„ ð‘„… 𑄆 𑄇 𑄈 𑄉 ð‘„Š ð‘„‹ ð‘„Œ ð‘„ ð‘„Ž ð‘„ ð‘„ ð‘„‘ ð‘„’ ð‘„“ ð‘„” ð‘„• ð‘„– ð‘„— 𑄘 ð‘„™ ð‘„š ð‘„› ð‘„œ ð‘„ ð‘„ž ð‘„Ÿ ð‘„ ð‘„¡ ð‘„¢ ð‘„£ 𑄤 ð‘„¥ 𑄦 𑄧 𑄨 ð‘„© 𑄪 ð‘„« 𑄬 ð‘„ ð‘„® 𑄯 ð‘„° ð‘„± ð‘„² ð‘„³ ð‘„´] diff --git a/Master/texmf-dist/tex/generic/babel/locale/ckb/babel-ckb-Latn.ini b/Master/texmf-dist/tex/generic/babel/locale/ckb/babel-ckb-Latn.ini index 538f6426138..dd1f69945b3 100644 --- a/Master/texmf-dist/tex/generic/babel/locale/ckb/babel-ckb-Latn.ini +++ b/Master/texmf-dist/tex/generic/babel/locale/ckb/babel-ckb-Latn.ini @@ -8,11 +8,12 @@ ; * Common Locale Data Repository (license Unicode): ; http://cldr.unicode.org/ ; http://unicode.org/copyright.html +; With some cleaning up by Stephen Huan (@stephen-huan) [identification] charset = utf8 -version = 1.5 -date = 2022-12-08 +version = 1.6 +date = 2024-08-11 name.local = Kurdîy nawendî name.english = Central Kurdish name.babel = sorani centralkurdish-latin @@ -66,18 +67,6 @@ months.wide.9 = Eylûl months.wide.10 = TiÅŸrînî Yekem months.wide.11 = TiÅŸrînî Dûhem months.wide.12 = Kanûnî Dûhem -months.wide.1 = -months.wide.2 = -months.wide.3 = -months.wide.4 = -months.wide.5 = -months.wide.6 = -months.wide.7 = -months.wide.8 = -months.wide.9 = -months.wide.10 = -months.wide.11 = -months.wide.12 = months.narrow.1 = months.narrow.2 = months.narrow.3 = diff --git a/Master/texmf-dist/tex/generic/babel/locale/ckb/babel-ckb.ini b/Master/texmf-dist/tex/generic/babel/locale/ckb/babel-ckb.ini index 627d3defb26..3fa852ac2b7 100644 --- a/Master/texmf-dist/tex/generic/babel/locale/ckb/babel-ckb.ini +++ b/Master/texmf-dist/tex/generic/babel/locale/ckb/babel-ckb.ini @@ -12,11 +12,11 @@ [identification] charset = utf8 -version = 1.7 -date = 2022-12-08 +version = 1.8 +date = 2024-12-08 name.local = کوردیی ناوەندی name.english = Central Kurdish -name.babel = sorani centralkurdish +name.babel = centralkurdish sorani name.polyglossia = kurdish tag.bcp47 = ckb language.tag.bcp47 = ckb @@ -135,6 +135,36 @@ months.narrow.10 = Ø® months.narrow.11 = Ú• months.narrow.12 = Ú• +[date.persian] +date.long = +months.wide.1 = +months.wide.2 = +months.wide.3 = +months.wide.4 = +months.wide.5 = +months.wide.6 = +months.wide.7 = +months.wide.8 = +months.wide.9 = +months.wide.10 = +months.wide.11 = +months.wide.12 = + +[date.islamic] +date.long = +months.wide.1 = +months.wide.2 = +months.wide.3 = +months.wide.4 = +months.wide.5 = +months.wide.6 = +months.wide.7 = +months.wide.8 = +months.wide.9 = +months.wide.10 = +months.wide.11 = +months.wide.12 = + [time.gregorian] time.medium = [h]:[mm]:[ss] [a] time.short = [h]:[mm] [a] diff --git a/Master/texmf-dist/tex/generic/babel/locale/cu/babel-cu-Cyrs.ini b/Master/texmf-dist/tex/generic/babel/locale/cu/babel-cu-Cyrs.ini index 15248a46c52..27e5c237aec 100644 --- a/Master/texmf-dist/tex/generic/babel/locale/cu/babel-cu-Cyrs.ini +++ b/Master/texmf-dist/tex/generic/babel/locale/cu/babel-cu-Cyrs.ini @@ -6,11 +6,12 @@ ; * Common Locale Data Repository (license Unicode): ; http://cldr.unicode.org/ ; http://unicode.org/copyright.html +; With some cleaning up by Stephen Huan (@stephen-huan) [identification] charset = utf8 -version = 1.4 -date = 2022-12-08 +version = 1.5 +date = 2024-08-11 name.local = ÑловѣÌньÑкъ Ñ©ê™ê™‘Ìкъ name.english = Church Slavic name.babel = churchslavic-oldcyrillic @@ -36,7 +37,6 @@ contents = СодержаÌнїе} listfigure = ÐадпиÑаÌнїе и҆з̾ѡбражеÌнїй listtable = ÐадпиÑаÌнїе таблиÌцъ index = ПредмѣÌтный ᲂу҆казаÌтель -author = И҆менноÌй ᲂу҆казаÌтель figure = И҆з̾ѡбражеÌнїе table = ТаблиÌца part = ЧаÌÑÑ‚ÑŒ diff --git a/Master/texmf-dist/tex/generic/babel/locale/cy/babel-cy.ini b/Master/texmf-dist/tex/generic/babel/locale/cy/babel-cy.ini index cf531ad9367..22be38bc8f3 100644 --- a/Master/texmf-dist/tex/generic/babel/locale/cy/babel-cy.ini +++ b/Master/texmf-dist/tex/generic/babel/locale/cy/babel-cy.ini @@ -9,8 +9,8 @@ [identification] charset = utf8 -version = 1.3 -date = 2022-07-02 +version = 1.4 +date = 2025-01-25 name.local = Cymraeg name.english = Welsh name.babel = welsh @@ -61,7 +61,7 @@ listfigure = Rhestr\space Ddarluniau listtable = Rhestr\space Dablau index = Mynegai figure = Darlun -table = Taflen +table = Tabl part = Rhan encl = amgae\"edig cc = cop\"\i au diff --git a/Master/texmf-dist/tex/generic/babel/locale/el/babel-el-polyton.ini b/Master/texmf-dist/tex/generic/babel/locale/el/babel-el-polyton.ini index ddb4f370899..b8aae6be369 100644 --- a/Master/texmf-dist/tex/generic/babel/locale/el/babel-el-polyton.ini +++ b/Master/texmf-dist/tex/generic/babel/locale/el/babel-el-polyton.ini @@ -4,8 +4,8 @@ [identification] charset = utf8 -version = 1.1 -date = 2023-04-10 +version = 1.2 +date = 2024-10-14 name.local = Ἐλληνικά ; Name from https://www.iana.org/assignments/language-subtag-registry/language-subtag-registry name.english = Polytonic Greek @@ -196,7 +196,7 @@ upper.modern.S.321 = ʹ lower.ancient.1 = α β γ δ ε Ï› ζ η θ lower.ancient.2 = ι κ λ μ ν ξ ο Ï€ ÏŸ lower.ancient.3 = Ï Ïƒ Ï„ Ï… φ χ ψ ω Ï¡ -lower.ancient.4 = ͵α ͵β ͵γ ͵δ ͵ε ͵Ϛ ͵ζ ͵η ͵θ +lower.ancient.4 = ͵α ͵β ͵γ ͵δ ͵ε ͵ϛ ͵ζ ͵η ͵θ lower.ancient.S.321 = ʹ upper.ancient.1 = Α Î’ Γ Δ Ε Ïš Ζ Η Θ upper.ancient.2 = Ι Κ Λ Îœ ΠΞ Ο Î Ïž diff --git a/Master/texmf-dist/tex/generic/babel/locale/el/babel-el.ini b/Master/texmf-dist/tex/generic/babel/locale/el/babel-el.ini index a84e306423c..c00b5308375 100644 --- a/Master/texmf-dist/tex/generic/babel/locale/el/babel-el.ini +++ b/Master/texmf-dist/tex/generic/babel/locale/el/babel-el.ini @@ -9,8 +9,8 @@ [identification] charset = utf8 -version = 1.10 -date = 2023-04-10 +version = 1.11 +date = 2024-10-14 name.local = Ελληνικά name.english = Greek name.babel = greek monotonicgreek @@ -200,7 +200,7 @@ upper.modern.S.321 = ʹ lower.ancient.1 = α β γ δ ε Ï› ζ η θ lower.ancient.2 = ι κ λ μ ν ξ ο Ï€ ÏŸ lower.ancient.3 = Ï Ïƒ Ï„ Ï… φ χ ψ ω Ï¡ -lower.ancient.4 = ͵α ͵β ͵γ ͵δ ͵ε ͵Ϛ ͵ζ ͵η ͵θ +lower.ancient.4 = ͵α ͵β ͵γ ͵δ ͵ε ͵ϛ ͵ζ ͵η ͵θ lower.ancient.S.321 = ʹ upper.ancient.1 = Α Î’ Γ Δ Ε Ïš Ζ Η Θ upper.ancient.2 = Ι Κ Λ Îœ ΠΞ Ο Î Ïž diff --git a/Master/texmf-dist/tex/generic/babel/locale/el/babel-greek.tex b/Master/texmf-dist/tex/generic/babel/locale/el/babel-greek.tex index 7cf89429810..f7ffd341e3b 100644 --- a/Master/texmf-dist/tex/generic/babel/locale/el/babel-greek.tex +++ b/Master/texmf-dist/tex/generic/babel/locale/el/babel-greek.tex @@ -41,12 +41,12 @@ \def\greek@num@format#1#2#3#4#5#6#7#8{% \BabelGreekNumeralMarker{% \BabelGreekNumeralMyriads#1#2#3#4% - \ifcase#5\or ͵α\or ͵β\or ͵γ\or ͵δ\or ͵ε\or ͵Ϛ\or ͵ζ\or ͵η\or ͵θ\fi + \ifcase#5\or ͵α\or ͵β\or ͵γ\or ͵δ\or ͵ε\or ͵ϛ\or ͵ζ\or ͵η\or ͵θ\fi \ifnum#6#7#8=\z@\else \BabelGreekNumeralMarkerEnd{% \ifcase#6\or Ï\or σ\or Ï„\or Ï…\or φ\or χ\or ψ\or ω\or Ï¡\fi \ifcase#7\or ι\or κ\or λ\or μ\or ν\or ξ\or ο\or Ï€\or ÏŸ\fi - \ifcase#8\or α\or β\or γ\or δ\or ε\or Ïš\or ζ\or η\or θ\fi}% + \ifcase#8\or α\or β\or γ\or δ\or ε\or Ï›\or ζ\or η\or θ\fi}% \fi}} \def\greek@invalid{% diff --git a/Master/texmf-dist/tex/generic/babel/locale/el/babel-polytonicgreek.tex b/Master/texmf-dist/tex/generic/babel/locale/el/babel-polytonicgreek.tex index 4f52408717c..707d02822f7 100644 --- a/Master/texmf-dist/tex/generic/babel/locale/el/babel-polytonicgreek.tex +++ b/Master/texmf-dist/tex/generic/babel/locale/el/babel-polytonicgreek.tex @@ -41,12 +41,12 @@ \def\greek@num@format#1#2#3#4#5#6#7#8{% \BabelGreekNumeralMarker{% \BabelGreekNumeralMyriads#1#2#3#4% - \ifcase#5\or ͵α\or ͵β\or ͵γ\or ͵δ\or ͵ε\or ͵Ϛ\or ͵ζ\or ͵η\or ͵θ\fi + \ifcase#5\or ͵α\or ͵β\or ͵γ\or ͵δ\or ͵ε\or ͵ϛ\or ͵ζ\or ͵η\or ͵θ\fi \ifnum#6#7#8=\z@\else \BabelGreekNumeralMarkerEnd{% \ifcase#6\or Ï\or σ\or Ï„\or Ï…\or φ\or χ\or ψ\or ω\or Ï¡\fi \ifcase#7\or ι\or κ\or λ\or μ\or ν\or ξ\or ο\or Ï€\or ÏŸ\fi - \ifcase#8\or α\or β\or γ\or δ\or ε\or Ïš\or ζ\or η\or θ\fi}% + \ifcase#8\or α\or β\or γ\or δ\or ε\or Ï›\or ζ\or η\or θ\fi}% \fi}} \def\greek@invalid{% diff --git a/Master/texmf-dist/tex/generic/babel/locale/ett/babel-etruscan.tex b/Master/texmf-dist/tex/generic/babel/locale/ett/babel-etruscan.tex new file mode 100644 index 00000000000..49f64fce60f --- /dev/null +++ b/Master/texmf-dist/tex/generic/babel/locale/ett/babel-etruscan.tex @@ -0,0 +1,12 @@ +% This file is part of babel. For further details see: +% https://www.ctan.org/pkg/babel +\ifx\BabelBeforeIni\undefined + \PackageError{babel}% + {This file is a component of babel and cannot\MessageBreak + be loaded directly. I'll stop immediately}% + {Just use babel as documented.}% + \stop +\fi +\BabelBeforeIni{ett}{% +} +\endinput
\ No newline at end of file diff --git a/Master/texmf-dist/tex/generic/babel/locale/ett/babel-ett.ini b/Master/texmf-dist/tex/generic/babel/locale/ett/babel-ett.ini new file mode 100644 index 00000000000..e5da3295555 --- /dev/null +++ b/Master/texmf-dist/tex/generic/babel/locale/ett/babel-ett.ini @@ -0,0 +1,124 @@ +; This file is part of babel. For further details see: +; https://www.ctan.org/pkg/babel +; Data has been collected mainly from the following sources: +; * Common Locale Data Repository (license Unicode): +; http://cldr.unicode.org/ +; http://unicode.org/copyright.html + +[identification] +charset = utf8 +version = 0.2 +date = 2025-02-08 +name.local = ðŒŒðŒ„ðŒ€ðŒ‰ðŒ‚ðŒ”ðŒ– ðŒ“ðŒ„ðŒ€ðŒ”ðŒðŒ„ +name.english = Etruscan +name.babel = etruscan +tag.bcp47 = ett +language.tag.bcp47 = ett +tag.bcp47.likely = ett-Ital-IT +; see https://docs.microsoft.com/en-us/typography/opentype/spec/languagetags +tag.opentype = +script.name = Old Italic +script.tag.bcp47 = Ital +script.tag.opentype = ital +level = 1 +encodings = +derivate = no +warning = This is a bare minimum locale for 'etruscan'. + +[captions] +; xetex, luatex +preface = +ref = +abstract = +bib = +chapter = +appendix = +contents = +listfigure = +listtable = +index = +figure = +table = +part = +encl = +cc = +headto = +page = +see = +also = +proof = +glossary = + +[captions.licr] +; pdftex +preface = +ref = +abstract = +bib = +chapter = +appendix = +contents = +listfigure = +listtable = +index = +figure = +table = +part = +encl = +cc = +headto = +page = +see = +also = +proof = +glossary = + +[date.gregorian] +date.long = [d][ ][MMMM] [y] +date.short = [y]-[MM]-[dd] +months.wide.1 = +months.wide.2 = +months.wide.3 = +months.wide.4 = +months.wide.5 = +months.wide.6 = +months.wide.7 = +months.wide.8 = +months.wide.9 = +months.wide.10 = +months.wide.11 = +months.wide.12 = + +[date.gregorian.licr] +months.wide.1 = +months.wide.2 = +months.wide.3 = +months.wide.4 = +months.wide.5 = +months.wide.6 = +months.wide.7 = +months.wide.8 = +months.wide.9 = +months.wide.10 = +months.wide.11 = +months.wide.12 = + +[time.gregorian] +time.medium = [HH]:[mm]:[ss] +time.short = [HH]:[mm] + +[typography] +frenchspacing = +hyphenrules = +lefthyphenmin = +righthyphenmin = +hyphenchar = +prehyphenchar = +posthyphenchar = +exhyphenchar = +preexhyphenchar = +postexhyphenchar = +hyphenationmin = + +[characters] +ranges = 10300..1032F diff --git a/Master/texmf-dist/tex/generic/babel/locale/fil/babel-fil.ini b/Master/texmf-dist/tex/generic/babel/locale/fil/babel-fil.ini index a74c5c3f431..74c1b10be1e 100644 --- a/Master/texmf-dist/tex/generic/babel/locale/fil/babel-fil.ini +++ b/Master/texmf-dist/tex/generic/babel/locale/fil/babel-fil.ini @@ -6,11 +6,13 @@ ; * Common Locale Data Repository (license Unicode): ; http://cldr.unicode.org/ ; http://unicode.org/copyright.html +; contribution by J. Khaganov <@ponte-vecchio> +; contribution by @DerKaiser4709 [identification] charset = utf8 -version = 1.4 -date = 2022-07-03 +version = 1.5 +date = 2024-06-04 name.local = Filipino name.english = Filipino name.babel = filipino @@ -26,50 +28,50 @@ encodings = T1 OT1 LY1 derivate = no [captions] -preface = -ref = -abstract = -bib = -chapter = -appendix = -contents = -listfigure = -listtable = -index = -figure = -table = -part = +preface = Paunang Salita +ref = Talasanggunian +abstract = Abstrak +bib = Talaaklatan +chapter = Kabanata +appendix = Hugpong +contents = Talalamanan +listfigure = Talalarawan +listtable = Talatalayan +index = Talatuntunan +figure = Laraw +table = Talay +part = Bahagi encl = cc = headto = -page = -see = -also = -proof = -glossary = +page = Pahina +see = tignan ang +also = tignan din +proof = Patunay +glossary = Glosaryo [captions.licr] -preface = -ref = -abstract = -bib = -chapter = -appendix = -contents = -listfigure = -listtable = -index = -figure = -table = -part = +preface = Paunang Salita +ref = Talasanggunian +abstract = Abstrak +bib = Talaaklatan +chapter = Kabanata +appendix = Hugpong +contents = Talalamanan +listfigure = Talalarawan +listtable = Talatalayan +index = Talatuntunan +figure = Laraw +table = Talay +part = Bahagi encl = cc = headto = -page = -see = -also = -proof = -glossary = +page = Pahina +see = tignan ang +also = tignan din +proof = Patunay +glossary = Glosaryo [date.gregorian] date.long = [MMMM] [d], [y] diff --git a/Master/texmf-dist/tex/generic/babel/locale/fr/babel-fr-BE.ini b/Master/texmf-dist/tex/generic/babel/locale/fr/babel-fr-BE.ini index 7c72949c135..94254e5452c 100644 --- a/Master/texmf-dist/tex/generic/babel/locale/fr/babel-fr-BE.ini +++ b/Master/texmf-dist/tex/generic/babel/locale/fr/babel-fr-BE.ini @@ -9,8 +9,8 @@ [identification] charset = utf8 -version = 1.0 -date = 2024-01-03 +version = 1.2 +date = 2024-11-29 name.local = français name.english = French name.babel = french-belgium french-be @@ -188,37 +188,37 @@ superscriptingExponent = × date.day = 1\textsuperscript{er} 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 [transforms.prehyphenation] -punctuation.space.1.0 = { [^|{(}{[}{007B}] () [;!{?}] () } +punctuation.space.1.0 = { [^|{(}{[}{007B}!{?}] () [;!{?}] () } punctuation.space.1.1 = { insert, penalty = 10000 } -punctuation.space.1.2 = { insert, spacefactor= .5 0 0, data = 1 } +punctuation.space.1.2 = { insert, spacefactor= {high.natural|.5} {high.plus|0} {high.minus|0}, data = 1 } punctuation.space.1.3 = {} -punctuation.space.2.0 = { [^{(}{[}{007B}] () | [;!{?}] () } +punctuation.space.2.0 = { [^{(}{[}{007B}!{?}] () | [;!{?}] () } punctuation.space.2.1 = { insert, penalty = 10000 } -punctuation.space.2.2 = { spacefactor= .5 0 0, data = 2 } +punctuation.space.2.2 = { spacefactor= {high.natural|.5} {high.plus|0} {high.minus|0}, data = 2 } punctuation.space.2.3 = {} punctuation.space.3.0 = { [^|{(}{[}{007B} ] () : () } punctuation.space.3.1 = { insert, penalty = 10000 } -punctuation.space.3.2 = { insert, spacefactor= 1 1 1, data = 1 } +punctuation.space.3.2 = { insert, spacefactor= {colon.natural|1} {colon.plus|1} {colon.minus|1}, data = 1 } punctuation.space.3.3 = {} punctuation.space.4.0 = { [^{(}{[}{007B} ] () |: () } punctuation.space.4.1 = { insert, penalty = 10000 } -punctuation.space.4.2 = { spacefactor= 1 1 1, data = 2 } +punctuation.space.4.2 = { spacefactor= {colon.natural|1} {colon.plus|1} {colon.minus|1}, data = 2 } punctuation.space.4.3 = {} punctuation.space.5.0 = { [^|]()»() } punctuation.space.5.1 = { insert, penalty = 10000 } -punctuation.space.5.2 = { insert, spacefactor= .8 .3 .8, data = 1 } +punctuation.space.5.2 = { insert, spacefactor= {guillemet.natural|.8} {guillemet.plus|.3} {guillemet.minus|.8}, data = 1 } punctuation.space.5.3 = {} punctuation.space.6.0 = { [^|]()|»() } punctuation.space.6.1 = { insert, penalty = 10000 } -punctuation.space.6.2 = { spacefactor= .8 .3 .8, data = 2 } +punctuation.space.6.2 = { spacefactor= {guillemet.natural|.8} {guillemet.plus|.3} {guillemet.minus|.8}, data = 2 } punctuation.space.6.3 = {} punctuation.space.7.0 = { «[^|] } punctuation.space.7.1 = {} punctuation.space.7.2 = { insert, penalty = 10000 } -punctuation.space.7.3 = { insert, spacefactor= .8 .3 .8, data = 1 } +punctuation.space.7.3 = { insert, spacefactor= {guillemet.natural|.8} {guillemet.plus|.3} {guillemet.minus|.8}, data = 1 } punctuation.space.7.4 = {} punctuation.space.8.0 = { «|[^|] } punctuation.space.8.1 = {} punctuation.space.8.2 = { insert, penalty = 10000 } -punctuation.space.8.3 = { spacefactor= .8 .3 .8, data = 1 } +punctuation.space.8.3 = { spacefactor= {guillemet.natural|.8} {guillemet.plus|.3} {guillemet.minus|.8}, data = 1 } punctuation.space.8.4 = {} diff --git a/Master/texmf-dist/tex/generic/babel/locale/fr/babel-fr-CA.ini b/Master/texmf-dist/tex/generic/babel/locale/fr/babel-fr-CA.ini index 86116c3395a..2717612f514 100644 --- a/Master/texmf-dist/tex/generic/babel/locale/fr/babel-fr-CA.ini +++ b/Master/texmf-dist/tex/generic/babel/locale/fr/babel-fr-CA.ini @@ -9,8 +9,8 @@ [identification] charset = utf8 -version = 1.0 -date = 2024-01-03 +version = 1.1 +date = 2024-11-05 name.local = français canadien name.english = Canadian French name.babel = canadien french-canada french-ca canadianfrench @@ -190,27 +190,27 @@ date.day = 1\textsuperscript{er} 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 2 [transforms.prehyphenation] punctuation.space.1.0 = { [^|{(}{[}{007B} ] () : () } punctuation.space.1.1 = { insert, penalty = 10000 } -punctuation.space.1.2 = { insert, spacefactor= 1 1 1, data = 1 } +punctuation.space.1.2 = { insert, spacefactor= {colon.natural|1} {colon.plus|1} {colon.minus|1}, data = 1 } punctuation.space.1.3 = {} punctuation.space.2.0 = { [^{(}{[}{007B} ] () |: () } punctuation.space.2.1 = { insert, penalty = 10000 } -punctuation.space.2.2 = { spacefactor= 1 1 1, data = 2 } +punctuation.space.2.2 = { spacefactor= {colon.natural|1} {colon.plus|1} {colon.minus|1}, data = 2 } punctuation.space.2.3 = {} punctuation.space.3.0 = { [^|]()»() } punctuation.space.3.1 = { insert, penalty = 10000 } -punctuation.space.3.2 = { insert, spacefactor= .8 .3 .8, data = 1 } +punctuation.space.3.2 = { insert, spacefactor= {guillemet.natural|.8} {guillemet.plus|.3} {guillemet.minus|.8}, data = 1 } punctuation.space.3.3 = {} punctuation.space.4.0 = { [^|]()|»() } punctuation.space.4.1 = { insert, penalty = 10000 } -punctuation.space.4.2 = { spacefactor= .8 .3 .8, data = 2 } +punctuation.space.4.2 = { spacefactor= {guillemet.natural|.8} {guillemet.plus|.3} {guillemet.minus|.8}, data = 2 } punctuation.space.4.3 = {} punctuation.space.5.0 = { «[^|] } punctuation.space.5.1 = {} punctuation.space.5.2 = { insert, penalty = 10000 } -punctuation.space.5.3 = { insert, spacefactor= .8 .3 .8, data = 1 } +punctuation.space.5.3 = { insert, spacefactor= {guillemet.natural|.8} {guillemet.plus|.3} {guillemet.minus|.8}, data = 1 } punctuation.space.5.4 = {} punctuation.space.6.0 = { «|[^|] } punctuation.space.6.1 = {} punctuation.space.6.2 = { insert, penalty = 10000 } -punctuation.space.6.3 = { spacefactor= .8 .3 .8, data = 1 } +punctuation.space.6.3 = { spacefactor= {guillemet.natural|.8} {guillemet.plus|.3} {guillemet.minus|.8}, data = 1 } punctuation.space.6.4 = {} diff --git a/Master/texmf-dist/tex/generic/babel/locale/fr/babel-fr.ini b/Master/texmf-dist/tex/generic/babel/locale/fr/babel-fr.ini index 5567074e9a1..b3611e80e0f 100644 --- a/Master/texmf-dist/tex/generic/babel/locale/fr/babel-fr.ini +++ b/Master/texmf-dist/tex/generic/babel/locale/fr/babel-fr.ini @@ -1,7 +1,7 @@ ; This file is part of babel. For further details see: ; https://www.ctan.org/pkg/babel ; Data has been collected mainly from the following sources: -; * babel language styles (license LPPL): +; * babel language styles (license LPPL):€ ; https://www.ctan.org/pkg/babel-contrib ; * Common Locale Data Repository (license Unicode): ; http://cldr.unicode.org/ @@ -9,8 +9,8 @@ [identification] charset = utf8 -version = 1.0 -date = 2024-01-03 +version = 1.2 +date = 2024-11-29 name.local = français name.english = French name.babel = french @@ -187,38 +187,38 @@ superscriptingExponent = × date.day = 1\textsuperscript{er} 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 [transforms.prehyphenation] -punctuation.space.1.0 = { [^|{(}{[}{007B}] () [;!{?}] () } +punctuation.space.1.0 = { [^|{(}{[}{007B}!{?}] () [;!{?}] () } punctuation.space.1.1 = { insert, penalty = 10000 } -punctuation.space.1.2 = { insert, spacefactor= .5 0 0, data = 1 } +punctuation.space.1.2 = { insert, spacefactor= {high.natural|.5} {high.plus|0} {high.minus|0}, data = 1 } punctuation.space.1.3 = {} -punctuation.space.2.0 = { [^{(}{[}{007B}] () | [;!{?}] () } +punctuation.space.2.0 = { [^{(}{[}{007B}!{?}] () | [;!{?}] () } punctuation.space.2.1 = { insert, penalty = 10000 } -punctuation.space.2.2 = { spacefactor= .5 0 0, data = 2 } +punctuation.space.2.2 = { spacefactor= {high.natural|.5} {high.plus|0} {high.minus|0}, data = 2 } punctuation.space.2.3 = {} punctuation.space.3.0 = { [^|{(}{[}{007B} ] () : () } punctuation.space.3.1 = { insert, penalty = 10000 } -punctuation.space.3.2 = { insert, spacefactor= 1 1 1, data = 1 } +punctuation.space.3.2 = { insert, spacefactor= {colon.natural|1} {colon.plus|1} {colon.minus|1}, data = 1 } punctuation.space.3.3 = {} punctuation.space.4.0 = { [^{(}{[}{007B} ] () |: () } punctuation.space.4.1 = { insert, penalty = 10000 } -punctuation.space.4.2 = { spacefactor= 1 1 1, data = 2 } +punctuation.space.4.2 = { spacefactor= {colon.natural|1} {colon.plus|1} {colon.minus|1}, data = 2 } punctuation.space.4.3 = {} punctuation.space.5.0 = { [^|]()»() } punctuation.space.5.1 = { insert, penalty = 10000 } -punctuation.space.5.2 = { insert, spacefactor= .8 .3 .8, data = 1 } +punctuation.space.5.2 = { insert, spacefactor= {guillemet.natural|.8} {guillemet.plus|.3} {guillemet.minus|.8}, data = 1 } punctuation.space.5.3 = {} punctuation.space.6.0 = { [^|]()|»() } punctuation.space.6.1 = { insert, penalty = 10000 } -punctuation.space.6.2 = { spacefactor= .8 .3 .8, data = 2 } +punctuation.space.6.2 = { spacefactor= {guillemet.natural|.8} {guillemet.plus|.3} {guillemet.minus|.8}, data = 2 } punctuation.space.6.3 = {} punctuation.space.7.0 = { «[^|] } punctuation.space.7.1 = {} punctuation.space.7.2 = { insert, penalty = 10000 } -punctuation.space.7.3 = { insert, spacefactor= .8 .3 .8, data = 1 } +punctuation.space.7.3 = { insert, spacefactor= {guillemet.natural|.8} {guillemet.plus|.3} {guillemet.minus|.8}, data = 1 } punctuation.space.7.4 = {} punctuation.space.8.0 = { «|[^|] } punctuation.space.8.1 = {} punctuation.space.8.2 = { insert, penalty = 10000 } -punctuation.space.8.3 = { spacefactor= .8 .3 .8, data = 1 } +punctuation.space.8.3 = { spacefactor= {guillemet.natural|.8} {guillemet.plus|.3} {guillemet.minus|.8}, data = 1 } punctuation.space.8.4 = {} diff --git a/Master/texmf-dist/tex/generic/babel/locale/gez/babel-gez.ini b/Master/texmf-dist/tex/generic/babel/locale/gez/babel-gez.ini index b84ab729083..85cbddcb068 100644 --- a/Master/texmf-dist/tex/generic/babel/locale/gez/babel-gez.ini +++ b/Master/texmf-dist/tex/generic/babel/locale/gez/babel-gez.ini @@ -7,8 +7,8 @@ [identification] charset = utf8 -version = 1.0 -date = 2023-03-31 +version = 1.1 +date = 2024-06-24 name.local = áŒá‹•á‹áŠ› name.english = Geez name.babel = geez @@ -107,9 +107,10 @@ time.short = [h]:[mm] [a] [typography] frenchspacing = yes -hyphenrules = -lefthyphenmin = -righthyphenmin = +; Modern practice. Use 'amharic' for the traditional one: +hyphenrules = unhyphenated +lefthyphenmin = 1 +righthyphenmin = 1 hyphenchar = prehyphenchar = posthyphenchar = @@ -117,6 +118,10 @@ exhyphenchar = preexhyphenchar = postexhyphenchar = hyphenationmin = +linebreaking = s +intraspace = 0 .1 0 +; The syntax is liable to change in 'other' values +hyphenate.other.script = "1361 "1362 "1363 "1364 "1365 "1366 "1367 "1368 [characters] delimiters.quotes = â€â€â€™â€™ diff --git a/Master/texmf-dist/tex/generic/babel/locale/grc/babel-ancientgreek.tex b/Master/texmf-dist/tex/generic/babel/locale/grc/babel-ancientgreek.tex index 2425d655e5c..e8d56403660 100644 --- a/Master/texmf-dist/tex/generic/babel/locale/grc/babel-ancientgreek.tex +++ b/Master/texmf-dist/tex/generic/babel/locale/grc/babel-ancientgreek.tex @@ -49,12 +49,12 @@ \def\greek@num@format#1#2#3#4#5#6#7#8{% \BabelGreekNumeralMarker{% \BabelGreekNumeralMyriads#1#2#3#4% - \ifcase#5\or ͵α\or ͵β\or ͵γ\or ͵δ\or ͵ε\or ͵Ϛ\or ͵ζ\or ͵η\or ͵θ\fi + \ifcase#5\or ͵α\or ͵β\or ͵γ\or ͵δ\or ͵ε\or ͵ϛ\or ͵ζ\or ͵η\or ͵θ\fi \ifnum#6#7#8=\z@\else \BabelGreekNumeralMarkerEnd{% \ifcase#6\or Ï\or σ\or Ï„\or Ï…\or φ\or χ\or ψ\or ω\or Ï¡\fi \ifcase#7\or ι\or κ\or λ\or μ\or ν\or ξ\or ο\or Ï€\or ÏŸ\fi - \ifcase#8\or α\or β\or γ\or δ\or ε\or Ïš\or ζ\or η\or θ\fi}% + \ifcase#8\or α\or β\or γ\or δ\or ε\or Ï›\or ζ\or η\or θ\fi}% \fi}} \def\greek@invalid{% diff --git a/Master/texmf-dist/tex/generic/babel/locale/grc/babel-grc.ini b/Master/texmf-dist/tex/generic/babel/locale/grc/babel-grc.ini index d11485f64af..a62a6c008ea 100644 --- a/Master/texmf-dist/tex/generic/babel/locale/grc/babel-grc.ini +++ b/Master/texmf-dist/tex/generic/babel/locale/grc/babel-grc.ini @@ -11,8 +11,8 @@ [identification] charset = utf8 -version = 1.8 -date = 2022-07-28 +version = 1.9 +date = 2024-10-14 name.local = ΑÏχαία ελληνικά name.english = Ancient Greek name.babel = ancientgreek @@ -179,7 +179,7 @@ superscriptingExponent = × lower.ancient.1 = α β γ δ ε Ï› ζ η θ lower.ancient.2 = ι κ λ μ ν ξ ο Ï€ ÏŸ lower.ancient.3 = Ï Ïƒ Ï„ Ï… φ χ ψ ω Ï¡ -lower.ancient.4 = ͵α ͵β ͵γ ͵δ ͵ε ͵Ϛ ͵ζ ͵η ͵θ +lower.ancient.4 = ͵α ͵β ͵γ ͵δ ͵ε ͵ϛ ͵ζ ͵η ͵θ lower.ancient.S.321 = ʹ upper.ancient.1 = Α Î’ Γ Δ Ε Ïš Ζ Η Θ upper.ancient.2 = Ι Κ Λ Îœ ΠΞ Ο Î Ïž diff --git a/Master/texmf-dist/tex/generic/babel/locale/he/babel-he.ini b/Master/texmf-dist/tex/generic/babel/locale/he/babel-he.ini index 613a08b47b7..f0c1b90487f 100644 --- a/Master/texmf-dist/tex/generic/babel/locale/he/babel-he.ini +++ b/Master/texmf-dist/tex/generic/babel/locale/he/babel-he.ini @@ -6,11 +6,12 @@ ; * Common Locale Data Repository (license Unicode): ; http://cldr.unicode.org/ ; http://unicode.org/copyright.html +; With some cleaning up by Stephen Huan (@stephen-huan) [identification] charset = utf8 -version = 1.10 -date = 2023-08-31 +version = 1.11 +date = 2024-08-11 name.local = עברית name.english = Hebrew name.babel = hebrew @@ -47,7 +48,7 @@ headto = ×ל page = עמוד see = ר××” also = ר××” ×’× -proof = הוכחה} +proof = הוכחה glossary = מילון ×ž×•× ×—×™× [captions.licr] diff --git a/Master/texmf-dist/tex/generic/babel/locale/isv/babel-interslavic.tex b/Master/texmf-dist/tex/generic/babel/locale/isv/babel-interslavic.tex new file mode 100644 index 00000000000..95f382ed293 --- /dev/null +++ b/Master/texmf-dist/tex/generic/babel/locale/isv/babel-interslavic.tex @@ -0,0 +1,12 @@ +% This file is part of babel. For further details see: +% https://www.ctan.org/pkg/babel +\ifx\BabelBeforeIni\undefined + \PackageError{babel}% + {This file is a component of babel and cannot\MessageBreak + be loaded directly. I'll stop immediately}% + {Just use babel as documented.}% + \stop +\fi +\BabelBeforeIni{isv}{% +} +\endinput
\ No newline at end of file diff --git a/Master/texmf-dist/tex/generic/babel/locale/isv/babel-isv.ini b/Master/texmf-dist/tex/generic/babel/locale/isv/babel-isv.ini new file mode 100644 index 00000000000..695ad5ed9b7 --- /dev/null +++ b/Master/texmf-dist/tex/generic/babel/locale/isv/babel-isv.ini @@ -0,0 +1,139 @@ +; This file is part of babel. For further details see: +; https://www.ctan.org/pkg/babel +; Data has been collected mainly from the following sources: +; * babel language styles (license LPPL): +; https://www.ctan.org/pkg/babel-contrib +; Data contributed by Adiee5 + + +[identification] +charset = utf8 +version = 1.0 +date = 2024-12-18 +name.local = Medžuslovjansky +name.english = Interslavic +name.babel = interslavic +tag.bcp47 = isv +language.tag.bcp47 = isv +tag.bcp47.likely = +tag.opentype = ISV +script.name = Latin +script.tag.bcp47 = Latn +script.tag.opentype = latn +level = 1 +encodings = T1 OT1 + +[captions] +preface = PrÄ›dslovje +ref = Literatura +abstract = Rezjume +bib = Bibliografija +chapter = Glava +appendix = Dodatok +contents = Sodržanje +listfigure = Spisok ilustracij +listtable = Spisok tabel +index = Indeks +figure = Ilustracija +table = Tabela +part = ÄŒest +encl = Priloga +cc = Kopije +headto = Do +page = Stranica +see = uvidi +also = uvidi takože +proof = Dokaz +glossary = Slovnik + +[captions.licr] +preface = Pr\v edslovje +ref = Literatura +abstract = Rezjume +bib = Bibliografija +chapter = Glava +appendix = Dodatok +contents = Sodr\v zanje +listfigure = Spisok ilustracij +listtable = Spisok tabel +index = Indeks +figure = Ilustracija +table = Tabela +part = \v Cest +encl = Priloga +cc = Kopije +headto = Do +page = Stranica +see = uvidi +also = uvidi tako\v ze +proof = Dokaz +glossary = Slovnik + +[date.gregorian] +date.long = [d][ ][MMMM] [y] +months.wide.1 = januara +months.wide.2 = fevruara +months.wide.3 = marca +months.wide.4 = aprilja +months.wide.5 = maja +months.wide.6 = junija +months.wide.7 = julija +months.wide.8 = avgusta +months.wide.9 = septembra +months.wide.10 = oktobra +months.wide.11 = novembra +months.wide.12 = dekembra + +[date.gregorian.licr] +months.wide.1 = januara +months.wide.2 = fevruara +months.wide.3 = marca +months.wide.4 = aprilja +months.wide.5 = maja +months.wide.6 = junija +months.wide.7 = julija +months.wide.8 = avgusta +months.wide.9 = septembra +months.wide.10 = oktobra +months.wide.11 = novembra +months.wide.12 = dekembra + +[time.gregorian] +time.medium = +time.short = + +[typography] +frenchspacing = yes +; Tentative setting: +hyphenrules = czech +lefthyphenmin = +righthyphenmin = +hyphenchar = +prehyphenchar = +posthyphenchar = +exhyphenchar = +preexhyphenchar = +postexhyphenchar = +hyphenationmin = + +[characters] +delimiters.quotes = +auxiliary = +exemplarCharacters = +index = +punctuation = + +[numbers] +defaultNumberingSystem = +minimumGroupingDigits = +decimal = +exponential = +group = +infinity = +list = +minusSign = +nan = +perMille = +percentSign = +plusSign = +superscriptingExponent = diff --git a/Master/texmf-dist/tex/generic/babel/locale/ja/babel-ja.ini b/Master/texmf-dist/tex/generic/babel/locale/ja/babel-ja.ini index 1d44a83d6ae..812f7673f3b 100644 --- a/Master/texmf-dist/tex/generic/babel/locale/ja/babel-ja.ini +++ b/Master/texmf-dist/tex/generic/babel/locale/ja/babel-ja.ini @@ -1,3 +1,4 @@ + ; This file is part of babel. For further details see: ; https://www.ctan.org/pkg/babel ; Data has been collected mainly from the following sources: @@ -9,8 +10,8 @@ [identification] charset = utf8 -version = 1.11 -date = 2024-04-18 +version = 1.13 +date = 2024-11-29 name.local = 日本語 name.english = Japanese name.babel = japanese @@ -197,4 +198,37 @@ parenthesized.ideograph = ㈠㈡ ㈢ ㈣ ㈤ ㈥ ㈦ ㈧ ㈨ ㈩ fullwidth.lower.alpha = ï½ ï½‚ c d ï½… f g h i j k l ï½ ï½Ž ï½ ï½ ï½‘ ï½’ s ï½” u ï½– ï½— x ï½™ z fullwidth.upper.alpha = A ï¼¢ ï¼£ D ï¼¥ F G H I J K L ï¼ ï¼® O ï¼° ï¼± ï¼² ï¼³ ï¼´ ï¼µ V ï¼· X ï¼¹ Z +[transforms.prehyphenation] +linebreak.strict.1.0 = { [々ããƒã…ã‡ã‰ã£ã‚ƒã‚…ょゎ゛-ゞァィゥェォッャュョヮヵヶゕゖㇰ-ㇿ・-ヾ・-ゥェ-ー゙] } +linebreak.strict.1.1 = { insert, penalty = {small.penalty|10000}, step = 1 } +; Don’t rely on internal names. Definitive names to be decided. +linebreak.strict.1.2 = { insert, space = {small.natural|intraspace.b} {small.plus|intraspace.p} {small.minus|intraspace.m} } +linebreak.strict.1.3 = {} +; +spacing.basic.1.0 = { [ã€ã€‚,.・:;!?)]ï½ã€‰ã€‹ã€ã€ã€‘〕〗〙〛â€ã€ž] ()[([{〈《「『ã€ã€”〖〘〚“ã€]() } +spacing.basic.1.1 = { insert, kern = -.5 } +spacing.basic.1.2 = { insert, penalty = 0 } +spacing.basic.1.3 = { insert, kern = .5 } +spacing.basic.1.4 = { insert, norule = -.5 0 0 } +spacing.basic.1.5 = {} +spacing.basic.2.0 = { [ã€ã€‚,.・:;!?)]ï½ã€‰ã€‹ã€ã€ã€‘〕〗〙〛â€ã€ž] ()[ã€ã€‚,.・:!?)]ï½ã€‰ã€‹ã€ã€ã€‘〕〗〙〛â€ã€ž]() } +spacing.basic.2.1 = { insert, kern= -.5, step = -1 } +spacing.basic.2.2 = {} +spacing.basic.3.0 = { [([{〈《「『ã€ã€”〖〘〚“ã€] ()[([{〈《「『ã€ã€”〖〘〚“ã€]() } +spacing.basic.3.1 = { insert, kern = -.5, step =- 1 } +spacing.basic.3.2 = {} +; +spacing.basic.4.0 = { [ã€ã€‚,.・:;!?)]ï½ã€‰ã€‹ã€ã€ã€‘〕〗〙〛â€ã€ž] ()[{a}]() } +spacing.basic.4.1 = { insert, kern = -.5, step = -1 } +spacing.basic.4.2 = { insert, penalty = 0 } +spacing.basic.4.3 = { insert, kern = .5 } +spacing.basic.4.4 = {} +spacing.basic.5.0 = { [{a}] ()[([{〈《「『ã€ã€”〖〘〚“ã€]() } +spacing.basic.5.1 = { insert, penalty = 0 } +spacing.basic.5.2 = { insert, kern = .5 } +spacing.basic.5.3 = { insert, norule = -.5 0 0 } +spacing.basic.5.4 = {} +spacing.basic.6.0 = { ^()[([{〈《「『ã€ã€”〖〘〚“ã€]() } +spacing.basic.6.1 = { insert, kern = -.5 } +spacing.basic.6.2 = {} diff --git a/Master/texmf-dist/tex/generic/babel/locale/kmr/babel-kmr.ini b/Master/texmf-dist/tex/generic/babel/locale/kmr/babel-kmr.ini index 5e96b1494ac..6a413b48944 100644 --- a/Master/texmf-dist/tex/generic/babel/locale/kmr/babel-kmr.ini +++ b/Master/texmf-dist/tex/generic/babel/locale/kmr/babel-kmr.ini @@ -13,7 +13,7 @@ version = 1.1 date = 2020-06-30 name.local = Kurmancî name.english = Northern Kurdish -name.babel = kurmanji northernkurdish +name.babel = northernkurdish kurmanji name.polyglossia = kurdish tag.bcp47 = kmr language.tag.bcp47 = kmr diff --git a/Master/texmf-dist/tex/generic/babel/locale/ko/babel-ko-Hani.ini b/Master/texmf-dist/tex/generic/babel/locale/ko/babel-ko-Hani.ini index eff48777f29..1bd1ed86d61 100644 --- a/Master/texmf-dist/tex/generic/babel/locale/ko/babel-ko-Hani.ini +++ b/Master/texmf-dist/tex/generic/babel/locale/ko/babel-ko-Hani.ini @@ -6,11 +6,12 @@ ; * Common Locale Data Repository (license Unicode): ; http://cldr.unicode.org/ ; http://unicode.org/copyright.html +; With some cleaning up by Stephen Huan (@stephen-huan) [identification] charset = utf8 -version = 1.5 -date = 2024-04-18 +version = 1.6 +date = 2024-08-11 name.local = í•œêµì–´ name.english = Korean name.babel = korean-han korean-hani @@ -56,9 +57,6 @@ see = also = proof = è‰æ˜Ž glossary = 語 å½™ -section.template = [[presection]] [section] [[postsection]] -presection = 第 -postsection = 節 [captions.licr] preface = diff --git a/Master/texmf-dist/tex/generic/babel/locale/ko/babel-ko.ini b/Master/texmf-dist/tex/generic/babel/locale/ko/babel-ko.ini index a56ab37a39c..5bb9db0de60 100644 --- a/Master/texmf-dist/tex/generic/babel/locale/ko/babel-ko.ini +++ b/Master/texmf-dist/tex/generic/babel/locale/ko/babel-ko.ini @@ -6,11 +6,12 @@ ; * Common Locale Data Repository (license Unicode): ; http://cldr.unicode.org/ ; http://unicode.org/copyright.html +; With some cleaning up by Stephen Huan (@stephen-huan) [identification] charset = utf8 -version = 1.13 -date = 2024-04-18 +version = 1.14 +date = 2024-08-11 name.local = í•œêµì–´ name.english = Korean name.babel = korean @@ -57,9 +58,6 @@ see = also = proof = ì¦ëª… glossary = 용어집 -section.template = [[presection]] [section] [[postsection]] -presection = ì œ -postsection = ì ˆ [captions.licr] preface = diff --git a/Master/texmf-dist/tex/generic/babel/locale/ku/babel-ku.ini b/Master/texmf-dist/tex/generic/babel/locale/ku/babel-ku.ini new file mode 100644 index 00000000000..9bd0225fe7b --- /dev/null +++ b/Master/texmf-dist/tex/generic/babel/locale/ku/babel-ku.ini @@ -0,0 +1,212 @@ +; This file is part of babel. For further details see: +; https://www.ctan.org/pkg/babel +; Data has been collected mainly from the following sources: +; * babel language styles (license LPPL): +; https://www.ctan.org/pkg/babel-contrib +; * Common Locale Data Repository (license Unicode): +; http://cldr.unicode.org/ +; http://unicode.org/copyright.html + +[identification] +charset = utf8 +version = 1.0 +date = 2024-12-06 +name.local = kurdî (kurmancî) +name.english = Kurdish +name.babel = kurdish kurmanji +name.polyglossia = kurdish +tag.bcp47 = ku +language.tag.bcp47 = ku +tag.opentype = KUR +script.name = Latin +script.tag.bcp47 = Latn +script.tag.opentype = latn +polyglossia.variant = kurmanji +level = 1 +encodings = +derivate = no + +[captions] +preface = PeÅŸgotin +ref = Pirtuken bijartî +abstract = Kurtebîr +bib = Çavkanîya Pirtukan +chapter = Serê +appendix = Tebînîya +contents = Navêrok +listfigure = Hejmara Dimena +listtable = Hejmara Kevalen +index = Endeks +figure = Dimenê +table = Kevala +part = Bêşa +encl = Dumahik +cc = Belavker +headto = Ji bo +page = Rûpelê +see = binêra +also = le vêya ji binêra +proof = Delîl +glossary = Çavkanîya lêkolînê + +[captions.licr] +preface = Pe\c sgotin +ref = Pirtuken\space bijart\^\i +abstract = Kurteb\^\i r +bib = \c Cavkan\^\i ya\space Pirtukan +chapter = Ser\^e +appendix = Teb\^\i n\^\i ya +contents = Nav\^erok +listfigure = Hejmara\space Dimena +listtable = Hejmara\space Kevalen +index = Endeks +figure = Dimen\^e +table = Kevala +part = B\^e\c sa +encl = Dumahik +cc = Belavker +headto = Ji\space bo +page = R\^upel\^e +see = bin\^era +also = le\space v\^eya\space ji\space bin\^era +proof = Del\^\i l +glossary = \c Cavkan\^\i ya\space l\^ekol\^\i n\^e + +[date.gregorian] +date.long = [d]ê [MMMM]a [y]an +date.short = [dd].[MM].[y] +months.wide.1 = rêbendan +months.wide.2 = sibat +months.wide.3 = adar +months.wide.4 = nîsan +months.wide.5 = gulan +months.wide.6 = hezîran +months.wide.7 = tîrmeh +months.wide.8 = tebax +months.wide.9 = îlon +months.wide.10 = cotmeh +months.wide.11 = mijdar +months.wide.12 = berfanbar +months.narrow.1 = +months.narrow.2 = +months.narrow.3 = +months.narrow.4 = +months.narrow.5 = +months.narrow.6 = +months.narrow.7 = +months.narrow.8 = +months.narrow.9 = +months.narrow.10 = +months.narrow.11 = +months.narrow.12 = +days.wide.mon = duÅŸem +days.wide.tue = sêşem +days.wide.wed = çarÅŸem +days.wide.thu = pêncÅŸem +days.wide.fri = înî +days.wide.sat = ÅŸemî +days.wide.sun = yekÅŸem +days.abbreviated.mon = dÅŸm +days.abbreviated.tue = sÅŸm +days.abbreviated.wed = çşm +days.abbreviated.thu = pÅŸm +days.abbreviated.fri = +days.abbreviated.sat = ÅŸem +days.abbreviated.sun = yÅŸm +days.narrow.mon = +days.narrow.tue = +days.narrow.wed = +days.narrow.thu = +days.narrow.fri = +days.narrow.sat = +days.narrow.sun = +dayPeriods.abbreviated.am = BN +dayPeriods.abbreviated.pm = PN +dayPeriods.narrow.am = bn +dayPeriods.narrow.pm = pn +dayPeriods.wide.am = +dayPeriods.wide.pm = + +[date.gregorian.licr] +date.long = [d]\^e [MMMM]a [y]an +months.wide.1 = r\^ebendan +months.wide.2 = sibat +months.wide.3 = adar +months.wide.4 = n\^\i san +months.wide.5 = gulan +months.wide.6 = hez\^\i ran +months.wide.7 = t\^\i rmeh +months.wide.8 = tebax +months.wide.9 = \^\i lon +months.wide.10 = cotmeh +months.wide.11 = mijdar +months.wide.12 = berfanbar + +[date.persian] +date.long = +months.wide.1 = +months.wide.2 = +months.wide.3 = +months.wide.4 = +months.wide.5 = +months.wide.6 = +months.wide.7 = +months.wide.8 = +months.wide.9 = +months.wide.10 = +months.wide.11 = +months.wide.12 = + +[date.islamic] +date.long = +months.wide.1 = +months.wide.2 = +months.wide.3 = +months.wide.4 = +months.wide.5 = +months.wide.6 = +months.wide.7 = +months.wide.8 = +months.wide.9 = +months.wide.10 = +months.wide.11 = +months.wide.12 = + +[time.gregorian] +time.medium = [h]:[mm]:[ss] [a] +time.short = [h]:[mm] [a] + +[typography] +frenchspacing = yes +hyphenrules = kurmanji +lefthyphenmin = 2 +righthyphenmin = 2 +hyphenchar = +prehyphenchar = +posthyphenchar = +exhyphenchar = +preexhyphenchar = +postexhyphenchar = +hyphenationmin = + +[characters] +delimiters.quotes = +auxiliary = [Ã¡Ã ÄƒÃ¢Ã¥Ã¤Ã£Ä Ã¦ èĕëē é ìÄïī à ñ óòÅôøŠœ ß ÅÅ« úù ÿ] +exemplarCharacters = [a b c ç d e ê f g h i î j k l m n o p q r s ÅŸ t u û v w x y z] +index = [A B C Ç D E Ê F G H I ÃŽ J K L M N O P Q R S Åž T U Û V W X Y Z] +punctuation = [\\- â€â€‘ – — , ; \\: ! ? . … '‘’ \"Ҡ( ) \\[ \\] § @ * / \\& # †‡ ′ ″] + +[numbers] +defaultNumberingSystem = latn +minimumGroupingDigits = 1 +decimal = , +exponential = E +group = . +infinity = ∞ +list = ; +minusSign = - +nan = NaN +perMille = ‰ +percentSign = % +plusSign = ‎+ +superscriptingExponent = × diff --git a/Master/texmf-dist/tex/generic/babel/locale/ku/babel-kurdish.tex b/Master/texmf-dist/tex/generic/babel/locale/ku/babel-kurdish.tex new file mode 100644 index 00000000000..e9f834bdc99 --- /dev/null +++ b/Master/texmf-dist/tex/generic/babel/locale/ku/babel-kurdish.tex @@ -0,0 +1,12 @@ +% This file is part of babel. For further details see: +% https://www.ctan.org/pkg/babel +\ifx\BabelBeforeIni\undefined + \PackageError{babel}% + {This file is a component of babel and cannot\MessageBreak + be loaded directly. I'll stop immediately}% + {Just use babel as documented.}% + \stop +\fi +\BabelBeforeIni{ku}{% +} +\endinput
\ No newline at end of file diff --git a/Master/texmf-dist/tex/generic/babel/locale/lrc/babel-lrc.ini b/Master/texmf-dist/tex/generic/babel/locale/lrc/babel-lrc.ini index ea33f69050c..4c3dee3325e 100644 --- a/Master/texmf-dist/tex/generic/babel/locale/lrc/babel-lrc.ini +++ b/Master/texmf-dist/tex/generic/babel/locale/lrc/babel-lrc.ini @@ -9,8 +9,8 @@ [identification] charset = utf8 -version = 1.7 -date = 2022-12-08 +version = 1.8 +date = 2024-11-05 name.local = لۊری شومالی name.english = Northern Luri name.babel = northernluri @@ -24,6 +24,7 @@ script.tag.opentype = arab level = 1 encodings = LAE LFE derivate = no +warning = Persian and Islamic months are undefined. [captions] preface = @@ -129,6 +130,48 @@ dayPeriods.narrow.pm = PM dayPeriods.wide.am = AM dayPeriods.wide.pm = PM +[date.persian] +date.long = +months.wide.1 = +months.wide.2 = +months.wide.3 = +months.wide.4 = +months.wide.5 = +months.wide.6 = +months.wide.7 = +months.wide.8 = +months.wide.9 = +months.wide.10 = +months.wide.11 = +months.wide.12 = +months.narrow.1 = +months.narrow.2 = +months.narrow.3 = +months.narrow.4 = +months.narrow.5 = +months.narrow.6 = +months.narrow.7 = +months.narrow.8 = +months.narrow.9 = +months.narrow.10 = +months.narrow.11 = +months.narrow.12 = + +[date.islamic] +date.long = +months.wide.1 = +months.wide.2 = +months.wide.3 = +months.wide.4 = +months.wide.5 = +months.wide.6 = +months.wide.7 = +months.wide.8 = +months.wide.9 = +months.wide.10 = +months.wide.11 = +months.wide.12 = + [time.gregorian] time.medium = [HH]:[mm]:[ss] time.short = [HH]:[mm] @@ -148,10 +191,10 @@ hyphenationmin = [characters] delimiters.quotes = “â€â€˜â€™ -auxiliary = [\u200B\u200C\u200D\u200E\u200F \u064B \u064C \u064D \u064E \u064F \u0650 \u0651 \u0652 \u0654 Ø¥ Ø© Ùƒ Ù‡ Ù‰ ÙŠ] -exemplarCharacters = [\u0659 \u065B Ø¢ Ø£ ؤ ئ ا ب Ù¾ ت Ø« ج Ú† Ø Ø® د Ø° ر ز Ú˜ س Ø´ ص ض Ø· ظ ع غ Ù Ú¤ Ù‚ Ú© Ú¯ Ù„ Ù… Ù† Ú¾ Û• Ùˆ Û‰ ÛŠ ÛŒ ؽ] +auxiliary = [\u200B\u200C\u200D\u200E\u200F Ù‹ ÙŒ Ù ÙŽ Ù Ù Ù‘ Ù’ Ù” Ø¥ Ø© Ùƒ Ù‡ Ù‰ ÙŠ] +exemplarCharacters = [Ù™ Ù› Ø¢ Ø£ ؤ ئ ا ب Ù¾ ت Ø« ج Ú† Ø Ø® د Ø° ر ز Ú˜ س Ø´ ص ض Ø· ظ ع غ Ù Ú¤ Ù‚ Ú© Ú¯ Ù„ Ù… Ù† Ú¾ Û• Ùˆ Û‰ ÛŠ ÛŒ ؽ] index = [Ø¢ ا ب Ù¾ ت Ø« ج Ú† Ø Ø® د Ø° ر ز Ú˜ س Ø´ ص ض Ø· ظ ع غ Ù Ù‚ Ú© Ú¯ Ù„ Ù… Ù† Ú¾ Ùˆ ÛŒ] -punctuation = [\\- †‑ ØŒ Ù« Ù¬ Ø› \\: ! ØŸ . … ‹ › « » ( ) \\[ \\] * / \\\\] +punctuation = [\\- â€â€‘ ØŒ Ù« Ù¬ Ø› \\: ! ØŸ . … ‹ › « » ( ) \\[ \\] * / \\\\] [numbers] defaultNumberingSystem = arabext diff --git a/Master/texmf-dist/tex/generic/babel/locale/mk/babel-mk.ini b/Master/texmf-dist/tex/generic/babel/locale/mk/babel-mk.ini index 1fa9142b128..937a336ea20 100644 --- a/Master/texmf-dist/tex/generic/babel/locale/mk/babel-mk.ini +++ b/Master/texmf-dist/tex/generic/babel/locale/mk/babel-mk.ini @@ -8,11 +8,12 @@ ; http://unicode.org/copyright.html ; * Some typos fixed by Stojan Trajanovski ; * Some typos fixed by Dario Gjorgjevski +; With some cleaning up by Stephen Huan (@stephen-huan) [identification] charset = utf8 -version = 1.6 -date = 2022-09-07 +version = 1.7 +date = 2024-08-11 name.local = македонÑки name.english = Macedonian name.babel = macedonian @@ -49,7 +50,7 @@ page = ÑÑ‚Ñ€. see = види also = види иÑто така proof = доказ -glossaryname = Речник +glossary = Речник [captions.licr] preface = \CYRP\cyrr\cyre\cyrd\cyrg\cyro\cyrv\cyro\cyrr diff --git a/Master/texmf-dist/tex/generic/babel/locale/mzn/babel-mzn.ini b/Master/texmf-dist/tex/generic/babel/locale/mzn/babel-mzn.ini index 234c7a1774a..3826c393f15 100644 --- a/Master/texmf-dist/tex/generic/babel/locale/mzn/babel-mzn.ini +++ b/Master/texmf-dist/tex/generic/babel/locale/mzn/babel-mzn.ini @@ -9,8 +9,8 @@ [identification] charset = utf8 -version = 1.7 -date = 2022-12-08 +version = 1.8 +date = 2024-11-05 name.local = مازرونی name.english = Mazanderani name.babel = mazanderani @@ -24,6 +24,7 @@ script.tag.opentype = arab level = 1 encodings = LFE LAE derivate = no +warning = Persian and Islamic months are undefined. [captions] preface = @@ -129,6 +130,48 @@ dayPeriods.narrow.pm = PM dayPeriods.wide.am = AM dayPeriods.wide.pm = PM +[date.persian] +date.long = +months.wide.1 = +months.wide.2 = +months.wide.3 = +months.wide.4 = +months.wide.5 = +months.wide.6 = +months.wide.7 = +months.wide.8 = +months.wide.9 = +months.wide.10 = +months.wide.11 = +months.wide.12 = +months.narrow.1 = +months.narrow.2 = +months.narrow.3 = +months.narrow.4 = +months.narrow.5 = +months.narrow.6 = +months.narrow.7 = +months.narrow.8 = +months.narrow.9 = +months.narrow.10 = +months.narrow.11 = +months.narrow.12 = + +[date.islamic] +date.long = +months.wide.1 = +months.wide.2 = +months.wide.3 = +months.wide.4 = +months.wide.5 = +months.wide.6 = +months.wide.7 = +months.wide.8 = +months.wide.9 = +months.wide.10 = +months.wide.11 = +months.wide.12 = + [time.gregorian] time.medium = [HH]:[mm]:[ss] time.short = [HH]:[mm] diff --git a/Master/texmf-dist/tex/generic/babel/locale/osa/babel-osa.ini b/Master/texmf-dist/tex/generic/babel/locale/osa/babel-osa.ini new file mode 100644 index 00000000000..3d23041e1a8 --- /dev/null +++ b/Master/texmf-dist/tex/generic/babel/locale/osa/babel-osa.ini @@ -0,0 +1,142 @@ +; This file is part of babel. For further details see: +; https://www.ctan.org/pkg/babel +; Data has been collected mainly from the following sources: +; * Common Locale Data Repository (license Unicode): +; http://cldr.unicode.org/ +; http://unicode.org/copyright.html + +[identification] +charset = utf8 +version = 1.0 +date = 2025-02-01 +name.local = ð“ð“˜ð“»ð“˜ð“»ð“Ÿ +name.english = Osage +name.babel = osage +tag.bcp47 = osa +language.tag.bcp47 = osa +tag.bcp47.likely = osa-Osge-US +; see https://docs.microsoft.com/en-us/typography/opentype/spec/languagetags +tag.opentype = +script.name = Osage +script.tag.bcp47 = Osge +script.tag.opentype = osge +level = 1 +encodings = +derivate = no + +[captions] +; xetex, luatex +preface = +ref = +abstract = +bib = +chapter = +appendix = +contents = +listfigure = +listtable = +index = +figure = +table = +part = +encl = +cc = +headto = +page = +see = +also = +proof = +glossary = + +[captions.licr] +; pdftex +preface = +ref = +abstract = +bib = +chapter = +appendix = +contents = +listfigure = +listtable = +index = +figure = +table = +part = +encl = +cc = +headto = +page = +see = +also = +proof = +glossary = + +[date.gregorian] +date.long = [MMMM] [d], [y] +date.short = [M]/[d]/[yy] +months.wide.1 = ð“€ð“£Í˜ð“ªÍ˜ð“¬ð“˜ ð“„ð“˜ð“¡ð“›Í˜ð“§ð“Ÿ +months.wide.2 = ð“€ð“£Í˜ð“ªÍ˜ð“¬ð“˜ ð“ð“Ÿð“µð“ªÍ˜ð“¬ð“˜ +months.wide.3 = ð“€ð“£Í˜ð“ªÍ˜ð“¬ð“˜ ð“ð“Ÿð“µð“˜ð“œð“£ +months.wide.4 = ð“€ð“£Í˜ð“ªÍ˜ð“¬ð“˜ ð“ð“Ÿð“°ð“ªð“¬ð“˜ +months.wide.5 = ð“€ð“£Í˜ð“ªÍ˜ð“¬ð“˜ ð“ð“Ÿð“®ð“˜ð“°ð“˜ +months.wide.6 = ð“€ð“£Í˜ð“ªÍ˜ð“¬ð“˜ ð“ð“Ÿð“¯ð“˜ð“¬ð“Ÿ +months.wide.7 = ð“€ð“£Í˜ð“ªÍ˜ð“¬ð“˜ ð“„ð“Ÿð“µð“ªÍ˜ð“¬ð“˜ +months.wide.8 = ð“€ð“£Í˜ð“ªÍ˜ð“¬ð“˜ ð’¼ð“£ð“Ÿð“°ð“ªð“¬ð“˜ +months.wide.9 = ð“€ð“£Í˜ð“ªÍ˜ð“¬ð“˜ ð’¿ð“Ÿð“œð“›ð“²ð“Ÿð“·ð“£Í˜ð“¤ð“Ÿ +months.wide.10 = ð“€ð“£Í˜ð“ªÍ˜ð“¬ð“˜ ð’¿ð“Ÿð“œð“› +months.wide.11 = ð“€ð“£Í˜ð“ªÍ˜ð“¬ð“˜ ð’°ð“§ð“£ ð“ð“£Í˜ð“¸ð“²ð“£ +months.wide.12 = ð“€ð“£Í˜ð“ªÍ˜ð“¬ð“˜ ð’°ð“§ð“£ ð“ð“ªÍ˜ð“¬ð“˜ + +[date.gregorian.licr] +months.wide.1 = +months.wide.2 = +months.wide.3 = +months.wide.4 = +months.wide.5 = +months.wide.6 = +months.wide.7 = +months.wide.8 = +months.wide.9 = +months.wide.10 = +months.wide.11 = +months.wide.12 = + +[time.gregorian] +time.medium = [h]:[mm]:[ss] [a] +time.short = [h]:[mm] [a] + +[typography] +frenchspacing = yes +hyphenrules = +lefthyphenmin = +righthyphenmin = +hyphenchar = +prehyphenchar = +posthyphenchar = +exhyphenchar = +preexhyphenchar = +postexhyphenchar = +hyphenationmin = + +[characters] +delimiters.quotes = +auxiliary = +exemplarCharacters = [ð“˜{ð“˜Ì}{ð“˜Ì͘}{ð“˜Ì‹}{ð“˜Ì‹Í˜}{ð“˜Ì„}{ð“˜Ì„͘}{ð“˜Í˜} ð“™{ð“™Ì}{ð“™Ì‹}{ð“™Ì„} ð“š{ð“šÌ}{ð“šÌ‹}{ð“šÌ„} ð“›{ð“›Í˜} 𓜠ð“ ð“ž ð“Ÿ{ð“ŸÌ}{ð“ŸÌ‹}{ð“ŸÌ„} ð“ {ð“ Ì}{ð“ Ì‹}{ð“ Ì„} ð“¡ ð“¢ ð“£{ð“£Ì}{ð“£Ì͘}{ð“£Ì‹}{ð“£Ì‹Í˜}{ð“£Ì„}{ð“£Ì„͘}{ð“£Í˜} 𓤠𓥠𓦠𓧠𓨠𓩠ð“ª{ð“ªÌ}{ð“ªÌ͘}{ð“ªÌ‹}{ð“ªÌ‹Í˜}{ð“ªÌ„}{ð“ªÌ„͘}{ð“ªÍ˜} ð“«{ð“«Ì}{ð“«Ì‹}{ð“«Ì„} 𓬠ð“ 𓮠𓯠𓰠𓱠𓲠𓳠𓴠𓵠ð“¶{ð“¶Ì}{ð“¶Ì‹}{ð“¶Ì„} 𓷠𓸠𓹠𓺠ð“»] +index = [ð’°{ð’°Í˜} ð’± ð’² ð’³ ð’´ ð’µ ð’¶ ð’· ð’¸ ð’¹ ð’º ð’»{ð’»Í˜} ð’¼ ð’½ ð’¾ ð’¿ ð“€ ð“ ð“‚{ð“‚͘} 𓃠𓄠𓅠𓆠𓇠𓈠𓉠𓊠𓋠𓌠ð“ ð“Ž ð“ ð“ ð“‘ ð“’ ð““] +punctuation = [\\- â€â€‘ – — , ; \\: ! ? . … '‘’ \"Ҡ( ) \\[ \\] § @ * / \\& # †‡ ′ ″] + +[numbers] +defaultNumberingSystem = +minimumGroupingDigits = +decimal = +exponential = +group = +infinity = +list = +minusSign = +nan = +perMille = +percentSign = +plusSign = +superscriptingExponent = diff --git a/Master/texmf-dist/tex/generic/babel/locale/osa/babel-osage.tex b/Master/texmf-dist/tex/generic/babel/locale/osa/babel-osage.tex new file mode 100644 index 00000000000..d5840c565ef --- /dev/null +++ b/Master/texmf-dist/tex/generic/babel/locale/osa/babel-osage.tex @@ -0,0 +1,12 @@ +% This file is part of babel. For further details see: +% https://www.ctan.org/pkg/babel +\ifx\BabelBeforeIni\undefined + \PackageError{babel}% + {This file is a component of babel and cannot\MessageBreak + be loaded directly. I'll stop immediately}% + {Just use babel as documented.}% + \stop +\fi +\BabelBeforeIni{osa}{% +} +\endinput
\ No newline at end of file diff --git a/Master/texmf-dist/tex/generic/babel/locale/oui/babel-olduighur.tex b/Master/texmf-dist/tex/generic/babel/locale/oui/babel-olduighur.tex new file mode 100644 index 00000000000..780714a77df --- /dev/null +++ b/Master/texmf-dist/tex/generic/babel/locale/oui/babel-olduighur.tex @@ -0,0 +1,12 @@ +% This file is part of babel. For further details see: +% https://www.ctan.org/pkg/babel +\ifx\BabelBeforeIni\undefined + \PackageError{babel}% + {This file is a component of babel and cannot\MessageBreak + be loaded directly. I'll stop immediately}% + {Just use babel as documented.}% + \stop +\fi +\BabelBeforeIni{oui}{% +} +\endinput
\ No newline at end of file diff --git a/Master/texmf-dist/tex/generic/babel/locale/oui/babel-oui.ini b/Master/texmf-dist/tex/generic/babel/locale/oui/babel-oui.ini new file mode 100644 index 00000000000..968ad19a10e --- /dev/null +++ b/Master/texmf-dist/tex/generic/babel/locale/oui/babel-oui.ini @@ -0,0 +1,123 @@ +; This file is part of babel. For further details see: +; https://www.ctan.org/pkg/babel +; Data has been collected mainly from the following sources: +; * Common Locale Data Repository (license Unicode): +; http://cldr.unicode.org/ +; http://unicode.org/copyright.html + +[identification] +charset = utf8 +version = 0.1 +date = 2025-01-19 +; Tentative +name.local = ð½³ð½¸ð½¹ð½°ð½· +; As per BCP 47, the name is with i +name.english = Old Uighur +name.babel = olduighur +tag.bcp47 = oui +language.tag.bcp47 = oui +tag.bcp47.likely = oui-Ougr-143 +tag.opentype = oui +script.name = Old Uyghur +script.tag.bcp47 = Ougr +script.tag.opentype = ougr +level = 1 +encodings = +derivate = no +warning = This is a bare minimum locale for 'olduighur'. + +[captions] +; xetex, luatex +preface = +ref = +abstract = +bib = +chapter = +appendix = +contents = +listfigure = +listtable = +index = +figure = +table = +part = +encl = +cc = +headto = +page = +see = +also = +proof = + +[captions.licr] +; pdftex +preface = +ref = +abstract = +bib = +chapter = +appendix = +contents = +listfigure = +listtable = +index = +figure = +table = +part = +encl = +cc = +headto = +page = +see = +also = +proof = + +[date.gregorian] +date.long = [d][ ][MMMM] [y] +date.short = [y]-[MM]-[dd] +months.wide.1 = +months.wide.2 = +months.wide.3 = +months.wide.4 = +months.wide.5 = +months.wide.6 = +months.wide.7 = +months.wide.8 = +months.wide.9 = +months.wide.10 = +months.wide.11 = +months.wide.12 = + +[date.gregorian.licr] +months.wide.1 = +months.wide.2 = +months.wide.3 = +months.wide.4 = +months.wide.5 = +months.wide.6 = +months.wide.7 = +months.wide.8 = +months.wide.9 = +months.wide.10 = +months.wide.11 = +months.wide.12 = + +[time.gregorian] +time.medium = [HH]:[mm]:[ss] +time.short = [HH]:[mm] + +[typography] +frenchspacing = yes +hyphenrules = +lefthyphenmin = +righthyphenmin = +hyphenchar = +prehyphenchar = +posthyphenchar = +exhyphenchar = +preexhyphenchar = +postexhyphenchar = +hyphenationmin = + +[characters] +ranges = 10F70..10FAF diff --git a/Master/texmf-dist/tex/generic/babel/locale/peo/babel-oldpersian.tex b/Master/texmf-dist/tex/generic/babel/locale/peo/babel-oldpersian.tex new file mode 100644 index 00000000000..f2eb527a043 --- /dev/null +++ b/Master/texmf-dist/tex/generic/babel/locale/peo/babel-oldpersian.tex @@ -0,0 +1,12 @@ +% This file is part of babel. For further details see: +% https://www.ctan.org/pkg/babel +\ifx\BabelBeforeIni\undefined + \PackageError{babel}% + {This file is a component of babel and cannot\MessageBreak + be loaded directly. I'll stop immediately}% + {Just use babel as documented.}% + \stop +\fi +\BabelBeforeIni{peo}{% +} +\endinput
\ No newline at end of file diff --git a/Master/texmf-dist/tex/generic/babel/locale/peo/babel-peo.ini b/Master/texmf-dist/tex/generic/babel/locale/peo/babel-peo.ini new file mode 100644 index 00000000000..2f04f32211c --- /dev/null +++ b/Master/texmf-dist/tex/generic/babel/locale/peo/babel-peo.ini @@ -0,0 +1,124 @@ +; This file is part of babel. For further details see: +; https://www.ctan.org/pkg/babel +; Data has been collected mainly from the following sources: +; * Common Locale Data Repository (license Unicode): +; http://cldr.unicode.org/ +; http://unicode.org/copyright.html + +[identification] +charset = utf8 +version = 0.2 +date = 2025-02-08 +name.local = +name.english = Old Persian +name.babel = oldpersian +tag.bcp47 = peo +language.tag.bcp47 = peo +tag.bcp47.likely = peo-Xpeo-IR +; see https://docs.microsoft.com/en-us/typography/opentype/spec/languagetags +tag.opentype = +script.name = Old Persian +script.tag.bcp47 = Xpeo +script.tag.opentype = xpeo +level = 1 +encodings = +derivate = no +warning = This is a bare minimum locale for 'oldpersian'. + +[captions] +; xetex, luatex +preface = +ref = +abstract = +bib = +chapter = +appendix = +contents = +listfigure = +listtable = +index = +figure = +table = +part = +encl = +cc = +headto = +page = +see = +also = +proof = +glossary = + +[captions.licr] +; pdftex +preface = +ref = +abstract = +bib = +chapter = +appendix = +contents = +listfigure = +listtable = +index = +figure = +table = +part = +encl = +cc = +headto = +page = +see = +also = +proof = +glossary = + +[date.gregorian] +date.long = [d][ ][MMMM] [y] +date.short = [y]-[MM]-[dd] +months.wide.1 = +months.wide.2 = +months.wide.3 = +months.wide.4 = +months.wide.5 = +months.wide.6 = +months.wide.7 = +months.wide.8 = +months.wide.9 = +months.wide.10 = +months.wide.11 = +months.wide.12 = + +[date.gregorian.licr] +months.wide.1 = +months.wide.2 = +months.wide.3 = +months.wide.4 = +months.wide.5 = +months.wide.6 = +months.wide.7 = +months.wide.8 = +months.wide.9 = +months.wide.10 = +months.wide.11 = +months.wide.12 = + +[time.gregorian] +time.medium = [HH]:[mm]:[ss] +time.short = [HH]:[mm] + +[typography] +frenchspacing = +hyphenrules = +lefthyphenmin = +righthyphenmin = +hyphenchar = +prehyphenchar = +posthyphenchar = +exhyphenchar = +preexhyphenchar = +postexhyphenchar = +hyphenationmin = + +[characters] +ranges = 103A0..103DF diff --git a/Master/texmf-dist/tex/generic/babel/locale/ps/babel-ps.ini b/Master/texmf-dist/tex/generic/babel/locale/ps/babel-ps.ini index 67b0eaa5441..532b5cf943b 100644 --- a/Master/texmf-dist/tex/generic/babel/locale/ps/babel-ps.ini +++ b/Master/texmf-dist/tex/generic/babel/locale/ps/babel-ps.ini @@ -9,8 +9,8 @@ [identification] charset = utf8 -version = 1.7 -date = 2022-12-08 +version = 1.8 +date = 2024-10-24 name.local = پښتو name.english = Pashto name.babel = pashto @@ -129,6 +129,36 @@ dayPeriods.narrow.pm = غ.Ùˆ. dayPeriods.wide.am = غ.Ù…. dayPeriods.wide.pm = غ.Ùˆ. +[date.persian] +date.long = د [y] د [MMMM] [d] +months.wide.1 = وری +months.wide.2 = غویی +months.wide.3 = غبرگولی +months.wide.4 = چنگاښ +months.wide.5 = زمری +months.wide.6 = ÙˆÚ–ÛŒ +months.wide.7 = تله +months.wide.8 = Ù„Ú“Ù… +months.wide.9 = Ù„ÛŒÙ†Ø¯Û +months.wide.10 = مرغومی +months.wide.11 = سلواغه +months.wide.12 = کب + +[date.islamic] +date.long = د [y] د [MMMM] [d] +months.wide.1 = Ù…Øرم +months.wide.2 = صÙر +months.wide.3 = ربيع +months.wide.4 = ربيع II +months.wide.5 = جماعه +months.wide.6 = جماعه II +months.wide.7 = رجب +months.wide.8 = شعبان +months.wide.9 = رمضان +months.wide.10 = شوال +months.wide.11 = ذي القعده +months.wide.12 = ذي الØج + [time.gregorian] time.medium = [H]:[mm]:[ss] time.short = [H]:[mm] @@ -148,9 +178,9 @@ hyphenationmin = [characters] delimiters.quotes = “â€â€˜â€™ -auxiliary = [\u200C \u200D \u200E\u200F Û’] -exemplarCharacters = [\u064E \u0650 \u064F \u064B \u064D \u064C \u0651 \u0652 \u0654 \u0670 Ø¢ ا Ø£ Ø¡ ب Ù¾ ت Ù¼ Ø« ج Ú Ú† Ú… Ø Ø® د Ú‰ Ø° ر Ú“ ز Ú˜ Ú– س Ø´ Úš ص ض Ø· ظ ع غ Ù Ù‚ Ú© Ú« Ú¯ Ù„ Ù… Ù† Ú¼ Ù‡ Ø© Ùˆ ؤ ÛŒ ÙŠ Û Û Ø¦] -punctuation = [ØŒ ; \\: ! Û” ' ‘ ( ) \\[ \\] \\{ \\} /] +auxiliary = [\u200C\u200D\u200E\u200F Û’] +exemplarCharacters = [ÙŽ Ù Ù Ù‹ Ù ÙŒ Ù‘ Ù’ Ù” Ù° Ø¢ اأ Ø¡ ب Ù¾ ت Ù¼ Ø« ج Ú Ú† Ú… Ø Ø® د Ú‰ Ø° ر Ú“ ز Ú˜ Ú– س Ø´ Úš ص ض Ø· ظ ع غ Ù Ù‚ Ú© Ú«Ú¯ Ù„ Ù… Ù† Ú¼ هة وؤ یيÛÛئ] +punctuation = [ØŒ ; \\: ! Û” '‘ ( ) \\[ \\] \\{ \\} /] [numbers] defaultNumberingSystem = arabext diff --git a/Master/texmf-dist/tex/generic/babel/locale/ro/babel-ro.ini b/Master/texmf-dist/tex/generic/babel/locale/ro/babel-ro.ini index d75c53e5428..734bd0049de 100644 --- a/Master/texmf-dist/tex/generic/babel/locale/ro/babel-ro.ini +++ b/Master/texmf-dist/tex/generic/babel/locale/ro/babel-ro.ini @@ -6,11 +6,12 @@ ; * Common Locale Data Repository (license Unicode): ; http://cldr.unicode.org/ ; http://unicode.org/copyright.html +; With some cleaning up by Stephen Huan (@stephen-huan) [identification] charset = utf8 -version = 1.4 -date = 2022-10-12 +version = 1.5 +date = 2024-08-11 name.local = română name.english = Romanian name.babel = romanian @@ -36,7 +37,7 @@ appendix = Anexa contents = Cuprins listfigure = Listă de figuri listtable = Listă de tabele -index = Index +index = Glosar figure = Figura table = Tabela part = Partea diff --git a/Master/texmf-dist/tex/generic/babel/locale/sga/babel-oldirish.tex b/Master/texmf-dist/tex/generic/babel/locale/sga/babel-oldirish.tex new file mode 100644 index 00000000000..3dab2114d03 --- /dev/null +++ b/Master/texmf-dist/tex/generic/babel/locale/sga/babel-oldirish.tex @@ -0,0 +1,12 @@ +% This file is part of babel. For further details see: +% https://www.ctan.org/pkg/babel +\ifx\BabelBeforeIni\undefined + \PackageError{babel}% + {This file is a component of babel and cannot\MessageBreak + be loaded directly. I'll stop immediately}% + {Just use babel as documented.}% + \stop +\fi +\BabelBeforeIni{sga}{% +} +\endinput
\ No newline at end of file diff --git a/Master/texmf-dist/tex/generic/babel/locale/sga/babel-sga.ini b/Master/texmf-dist/tex/generic/babel/locale/sga/babel-sga.ini new file mode 100644 index 00000000000..5ab2e09dd1a --- /dev/null +++ b/Master/texmf-dist/tex/generic/babel/locale/sga/babel-sga.ini @@ -0,0 +1,123 @@ +; This file is part of babel. For further details see: +; https://www.ctan.org/pkg/babel +; Data has been collected mainly from the following sources: +; * Common Locale Data Repository (license Unicode): +; http://cldr.unicode.org/ +; http://unicode.org/copyright.html + +[identification] +charset = utf8 +version = 0.2 +date = 2025-02-08 +name.local = ᚌᚑᚔᚇᚓᚂᚉ +name.english = Old Irish +name.babel = oldirish +tag.bcp47 = sga +language.tag.bcp47 = sga +tag.bcp47.likely = sga-Ogam-IE +tag.opentype = SGA +script.name = Ogham +script.tag.bcp47 = Ogam +script.tag.opentype = ogam +level = 1 +encodings = +derivate = no +warning = This is a bare minimum locale for 'oldirish'. + +[captions] +; xetex, luatex +preface = +ref = +abstract = +bib = +chapter = +appendix = +contents = +listfigure = +listtable = +index = +figure = +table = +part = +encl = +cc = +headto = +page = +see = +also = +proof = +glossary = + +[captions.licr] +; pdftex +preface = +ref = +abstract = +bib = +chapter = +appendix = +contents = +listfigure = +listtable = +index = +figure = +table = +part = +encl = +cc = +headto = +page = +see = +also = +proof = +glossary = + +[date.gregorian] +date.long = [d][ ][MMMM] [y] +date.short = [y]-[MM]-[dd] +months.wide.1 = +months.wide.2 = +months.wide.3 = +months.wide.4 = +months.wide.5 = +months.wide.6 = +months.wide.7 = +months.wide.8 = +months.wide.9 = +months.wide.10 = +months.wide.11 = +months.wide.12 = + +[date.gregorian.licr] +months.wide.1 = +months.wide.2 = +months.wide.3 = +months.wide.4 = +months.wide.5 = +months.wide.6 = +months.wide.7 = +months.wide.8 = +months.wide.9 = +months.wide.10 = +months.wide.11 = +months.wide.12 = + +[time.gregorian] +time.medium = [HH]:[mm]:[ss] +time.short = [HH]:[mm] + +[typography] +frenchspacing = +hyphenrules = +lefthyphenmin = +righthyphenmin = +hyphenchar = +prehyphenchar = +posthyphenchar = +exhyphenchar = +preexhyphenchar = +postexhyphenchar = +hyphenationmin = + +[characters] +ranges = 1680..169F diff --git a/Master/texmf-dist/tex/generic/babel/locale/sl/babel-sl.ini b/Master/texmf-dist/tex/generic/babel/locale/sl/babel-sl.ini index 3fbf1a022e7..8b7531f6889 100644 --- a/Master/texmf-dist/tex/generic/babel/locale/sl/babel-sl.ini +++ b/Master/texmf-dist/tex/generic/babel/locale/sl/babel-sl.ini @@ -6,11 +6,12 @@ ; * Common Locale Data Repository (license Unicode): ; http://cldr.unicode.org/ ; http://unicode.org/copyright.html +; With some cleaning up by Stephen Huan (@stephen-huan) [identification] charset = utf8 -version = 1.3 -date = 2022-10-12 +version = 1.4 +date = 2024-08-11 name.local = slovenÅ¡Äina name.english = Slovenian name.babel = slovene slovenian @@ -47,7 +48,7 @@ page = Stran see = glej also = glej tudi proof = Dokaz -glossary = Glossary +glossary = Slovar [captions.licr] preface = Predgovor diff --git a/Master/texmf-dist/tex/generic/babel/locale/ti/babel-ti.ini b/Master/texmf-dist/tex/generic/babel/locale/ti/babel-ti.ini index 92aa31f638d..a4ae7c3ff0b 100644 --- a/Master/texmf-dist/tex/generic/babel/locale/ti/babel-ti.ini +++ b/Master/texmf-dist/tex/generic/babel/locale/ti/babel-ti.ini @@ -9,8 +9,8 @@ [identification] charset = utf8 -version = 1.4 -date = 2023-03-11 +version = 1.5 +date = 2024-06-24 name.local = ትáŒáˆáŠ› name.english = Tigrinya name.babel = tigrinya @@ -146,9 +146,10 @@ time.short = [h]:[mm] [a] [typography] frenchspacing = yes -hyphenrules = -lefthyphenmin = -righthyphenmin = +; Modern practice. Use 'amharic' for the traditional one: +hyphenrules = unhyphenated +lefthyphenmin = 1 +righthyphenmin = 1 hyphenchar = prehyphenchar = posthyphenchar = @@ -156,6 +157,10 @@ exhyphenchar = preexhyphenchar = postexhyphenchar = hyphenationmin = +linebreaking = s +intraspace = 0 .1 0 +; The syntax is liable to change in 'other' values +hyphenate.other.script = "1361 "1362 "1363 "1364 "1365 "1366 "1367 "1368 [characters] delimiters.quotes = “â€â€˜â€™ diff --git a/Master/texmf-dist/tex/generic/babel/locale/tig/babel-tig.ini b/Master/texmf-dist/tex/generic/babel/locale/tig/babel-tig.ini index c8e8fa6102c..170f59cb53f 100644 --- a/Master/texmf-dist/tex/generic/babel/locale/tig/babel-tig.ini +++ b/Master/texmf-dist/tex/generic/babel/locale/tig/babel-tig.ini @@ -7,8 +7,8 @@ [identification] charset = utf8 -version = 1.0 -date = 2023-03-31 +version = 1.1 +date = 2024-06-24 name.local = ትáŒáˆ¨ name.english = Tigre name.babel = tigre @@ -105,16 +105,21 @@ time.short = [h]:[mm] [a] [typography] frenchspacing = yes -hyphenrules = -lefthyphenmin = -righthyphenmin = -hyphenchar = -prehyphenchar = -posthyphenchar = -exhyphenchar = -preexhyphenchar = +; Modern practice. Use 'amharic' for the traditional one: +hyphenrules = unhyphenated +lefthyphenmin = 1 +righthyphenmin = 1 +hyphenchar = +prehyphenchar = +posthyphenchar = +exhyphenchar = +preexhyphenchar = postexhyphenchar = -hyphenationmin = +hyphenationmin = +linebreaking = s +intraspace = 0 .1 0 +; The syntax is liable to change in 'other' values +hyphenate.other.script = "1361 "1362 "1363 "1364 "1365 "1366 "1367 "1368 [characters] delimiters.quotes = diff --git a/Master/texmf-dist/tex/generic/babel/locale/uga/babel-uga.ini b/Master/texmf-dist/tex/generic/babel/locale/uga/babel-uga.ini new file mode 100644 index 00000000000..53d2c92a0a0 --- /dev/null +++ b/Master/texmf-dist/tex/generic/babel/locale/uga/babel-uga.ini @@ -0,0 +1,125 @@ +; This file is part of babel. For further details see: +; https://www.ctan.org/pkg/babel +; Data has been collected mainly from the following sources: +; * Common Locale Data Repository (license Unicode): +; http://cldr.unicode.org/ +; http://unicode.org/copyright.html + +[identification] +charset = utf8 +version = 0.2 +date = 2025-02-08 +name.local = +name.english = Ugaritic +name.babel = ugaritic +tag.bcp47 = uga +language.tag.bcp47 = uga +tag.bcp47.likely = uga-Ugar-SY +; see https://docs.microsoft.com/en-us/typography/opentype/spec/languagetags +tag.opentype = +script.name = Ugaritic +script.tag.bcp47 = Ugar +; see https://docs.microsoft.com/en-us/typography/opentype/spec/scripttags +script.tag.opentype = +level = 1 +encodings = +derivate = no +warning = This is a bare minimum locale for 'ugaritic'. + +[captions] +; xetex, luatex +preface = +ref = +abstract = +bib = +chapter = +appendix = +contents = +listfigure = +listtable = +index = +figure = +table = +part = +encl = +cc = +headto = +page = +see = +also = +proof = +glossary = + +[captions.licr] +; pdftex +preface = +ref = +abstract = +bib = +chapter = +appendix = +contents = +listfigure = +listtable = +index = +figure = +table = +part = +encl = +cc = +headto = +page = +see = +also = +proof = +glossary = + +[date.gregorian] +date.long = [d][ ][MMMM] [y] +date.short = [y]-[MM]-[dd] +months.wide.1 = +months.wide.2 = +months.wide.3 = +months.wide.4 = +months.wide.5 = +months.wide.6 = +months.wide.7 = +months.wide.8 = +months.wide.9 = +months.wide.10 = +months.wide.11 = +months.wide.12 = + +[date.gregorian.licr] +months.wide.1 = +months.wide.2 = +months.wide.3 = +months.wide.4 = +months.wide.5 = +months.wide.6 = +months.wide.7 = +months.wide.8 = +months.wide.9 = +months.wide.10 = +months.wide.11 = +months.wide.12 = + +[time.gregorian] +time.medium = [HH]:[mm]:[ss] +time.short = [HH]:[mm] + +[typography] +frenchspacing = +hyphenrules = +lefthyphenmin = +righthyphenmin = +hyphenchar = +prehyphenchar = +posthyphenchar = +exhyphenchar = +preexhyphenchar = +postexhyphenchar = +hyphenationmin = + +[characters] +ranges = 10380..1039F diff --git a/Master/texmf-dist/tex/generic/babel/locale/uga/babel-ugaritic.tex b/Master/texmf-dist/tex/generic/babel/locale/uga/babel-ugaritic.tex new file mode 100644 index 00000000000..c2823c3050a --- /dev/null +++ b/Master/texmf-dist/tex/generic/babel/locale/uga/babel-ugaritic.tex @@ -0,0 +1,12 @@ +% This file is part of babel. For further details see: +% https://www.ctan.org/pkg/babel +\ifx\BabelBeforeIni\undefined + \PackageError{babel}% + {This file is a component of babel and cannot\MessageBreak + be loaded directly. I'll stop immediately}% + {Just use babel as documented.}% + \stop +\fi +\BabelBeforeIni{uga}{% +} +\endinput
\ No newline at end of file diff --git a/Master/texmf-dist/tex/generic/babel/locale/vec/babel-vec.ini b/Master/texmf-dist/tex/generic/babel/locale/vec/babel-vec.ini new file mode 100644 index 00000000000..1e480dbc95b --- /dev/null +++ b/Master/texmf-dist/tex/generic/babel/locale/vec/babel-vec.ini @@ -0,0 +1,141 @@ +; This file is part of babel. For further details see: +; https://www.ctan.org/pkg/babel +; Data has been collected mainly from the following sources: +; * Common Locale Data Repository (license Unicode): +; http://cldr.unicode.org/ +; http://unicode.org/copyright.html + +[identification] +charset = utf8 +version = 1.0 +date = 2025-02-01 +name.local = veneto +name.english = Venetian +name.babel = venetian +tag.bcp47 = vec +language.tag.bcp47 = vec +tag.bcp47.likely = vec-Latn-IT +tag.opentype = VEC +script.name = Latin +script.tag.bcp47 = Latn +script.tag.opentype = latn +level = 1 +encodings = T1 OT1 LY1 +derivate = no + +[captions] +; xetex, luatex +preface = +ref = +abstract = +bib = +chapter = +appendix = +contents = +listfigure = +listtable = +index = +figure = +table = +part = +encl = +cc = +headto = +page = +see = +also = +proof = +glossary = + +[captions.licr] +; pdftex +preface = +ref = +abstract = +bib = +chapter = +appendix = +contents = +listfigure = +listtable = +index = +figure = +table = +part = +encl = +cc = +headto = +page = +see = +also = +proof = +glossary = + +[date.gregorian] +date.long = [d][ ][MMMM] [y] +date.short = [dd]/[MM]/[yy] +months.wide.1 = jenaro +months.wide.2 = febraro +months.wide.3 = marso +months.wide.4 = aprile +months.wide.5 = majo +months.wide.6 = jugno +months.wide.7 = lujo +months.wide.8 = agosto +months.wide.9 = setenbre +months.wide.10 = otobre +months.wide.11 = novenbre +months.wide.12 = desenbre + +[date.gregorian.licr] +months.wide.1 = jenaro +months.wide.2 = febraro +months.wide.3 = marso +months.wide.4 = aprile +months.wide.5 = majo +months.wide.6 = jugno +months.wide.7 = lujo +months.wide.8 = agosto +months.wide.9 = setenbre +months.wide.10 = otobre +months.wide.11 = novenbre +months.wide.12 = desenbre + +[time.gregorian] +time.medium = [HH]:[mm]:[ss] +time.short = [HH]:[mm] + +[typography] +frenchspacing = yes +hyphenrules = +lefthyphenmin = +righthyphenmin = +hyphenchar = +prehyphenchar = +posthyphenchar = +exhyphenchar = +preexhyphenchar = +postexhyphenchar = +hyphenationmin = + +[characters] +delimiters.quotes = +auxiliary = [ªá ćç ḑ Ê£ ǵ à k Å‚ º q ÅŸ Å£ ʦ ú w y {z̧}] +exemplarCharacters = [aà b c d eéè f g h iì j l m n oóò p r s t uù v x z] +index = +punctuation = [\\- â€â€‘ ‒ – — ― â“ , ; \\: ! ? . … · '‘’ \"“†« » ( ) \\[ \\] \\{ \\} 〈 〉 @ * / \\\\ \\& # + = â„] + +[numbers] +defaultNumberingSystem = +minimumGroupingDigits = +decimal = , +exponential = +group =   +infinity = +list = +minusSign = +nan = +perMille = +percentSign = +plusSign = +superscriptingExponent = diff --git a/Master/texmf-dist/tex/generic/babel/locale/vec/babel-venetian.tex b/Master/texmf-dist/tex/generic/babel/locale/vec/babel-venetian.tex new file mode 100644 index 00000000000..05e4bdf19db --- /dev/null +++ b/Master/texmf-dist/tex/generic/babel/locale/vec/babel-venetian.tex @@ -0,0 +1,12 @@ +% This file is part of babel. For further details see: +% https://www.ctan.org/pkg/babel +\ifx\BabelBeforeIni\undefined + \PackageError{babel}% + {This file is a component of babel and cannot\MessageBreak + be loaded directly. I'll stop immediately}% + {Just use babel as documented.}% + \stop +\fi +\BabelBeforeIni{vec}{% +} +\endinput
\ No newline at end of file diff --git a/Master/texmf-dist/tex/generic/babel/locale/vmw/babel-makhuwa.tex b/Master/texmf-dist/tex/generic/babel/locale/vmw/babel-makhuwa.tex new file mode 100644 index 00000000000..98088bb5118 --- /dev/null +++ b/Master/texmf-dist/tex/generic/babel/locale/vmw/babel-makhuwa.tex @@ -0,0 +1,12 @@ +% This file is part of babel. For further details see: +% https://www.ctan.org/pkg/babel +\ifx\BabelBeforeIni\undefined + \PackageError{babel}% + {This file is a component of babel and cannot\MessageBreak + be loaded directly. I'll stop immediately}% + {Just use babel as documented.}% + \stop +\fi +\BabelBeforeIni{vmw}{% +} +\endinput
\ No newline at end of file diff --git a/Master/texmf-dist/tex/generic/babel/locale/vmw/babel-vmw.ini b/Master/texmf-dist/tex/generic/babel/locale/vmw/babel-vmw.ini new file mode 100644 index 00000000000..e33f55d8da9 --- /dev/null +++ b/Master/texmf-dist/tex/generic/babel/locale/vmw/babel-vmw.ini @@ -0,0 +1,141 @@ +; This file is part of babel. For further details see: +; https://www.ctan.org/pkg/babel +; Data has been collected mainly from the following sources: +; * Common Locale Data Repository (license Unicode): +; http://cldr.unicode.org/ +; http://unicode.org/copyright.html + +[identification] +charset = utf8 +version = 1.0 +date = 2025-02-01 +name.local = emakhuwa +name.english = Makhuwa +name.babel = makhuwa +tag.bcp47 = vmw +language.tag.bcp47 = vmw +tag.bcp47.likely = vmw-Latn-MZ +tag.opentype = MAK +script.name = Latin +script.tag.bcp47 = Latn +script.tag.opentype = latn +level = 1 +encodings = T1 OT1 LY1 +derivate = no + +[captions] +; xetex, luatex +preface = +ref = +abstract = +bib = +chapter = +appendix = +contents = +listfigure = +listtable = +index = +figure = +table = +part = +encl = +cc = +headto = +page = +see = +also = +proof = +glossary = + +[captions.licr] +; pdftex +preface = +ref = +abstract = +bib = +chapter = +appendix = +contents = +listfigure = +listtable = +index = +figure = +table = +part = +encl = +cc = +headto = +page = +see = +also = +proof = +glossary = + +[date.gregorian] +date.long = [d][ ][MMMM] [y] +date.short = [y]-[MM]-[dd] +months.wide.1 = janeiru +months.wide.2 = fevereiru +months.wide.3 = marsu +months.wide.4 = abril +months.wide.5 = maiu +months.wide.6 = junyu +months.wide.7 = julyu +months.wide.8 = agostu +months.wide.9 = setembru +months.wide.10 = outubru +months.wide.11 = novembru +months.wide.12 = dezembru + +[date.gregorian.licr] +months.wide.1 = janeiru +months.wide.2 = fevereiru +months.wide.3 = marsu +months.wide.4 = abril +months.wide.5 = maiu +months.wide.6 = junyu +months.wide.7 = julyu +months.wide.8 = agostu +months.wide.9 = setembru +months.wide.10 = outubru +months.wide.11 = novembru +months.wide.12 = dezembru + +[time.gregorian] +time.medium = [HH]:[mm]:[ss] +time.short = [HH]:[mm] + +[typography] +frenchspacing = yes +hyphenrules = +lefthyphenmin = +righthyphenmin = +hyphenchar = +prehyphenchar = +posthyphenchar = +exhyphenchar = +preexhyphenchar = +postexhyphenchar = +hyphenationmin = + +[characters] +delimiters.quotes = +auxiliary = [b d g q] +exemplarCharacters = [a c e f h i j k {kh} l m n o p {ph} r s t {th} {tt} {tth} u v w x y z] +index = +punctuation = [\\- â€â€‘ – — , ; \\: ! ? . … '‘’ \"Ҡ( ) \\[ \\] @ / \\& # ′ ″] + +[numbers] +defaultNumberingSystem = +minimumGroupingDigits = +decimal = , +exponential = +group = . +infinity = +list = +minusSign = +nan = +perMille = +percentSign = +plusSign = +superscriptingExponent = diff --git a/Master/texmf-dist/tex/generic/babel/locale/wal/babel-wal.ini b/Master/texmf-dist/tex/generic/babel/locale/wal/babel-wal.ini index a28543e339a..4a5dd741077 100644 --- a/Master/texmf-dist/tex/generic/babel/locale/wal/babel-wal.ini +++ b/Master/texmf-dist/tex/generic/babel/locale/wal/babel-wal.ini @@ -7,8 +7,8 @@ [identification] charset = utf8 -version = 1.0 -date = 2023-03-31 +version = 1.1 +date = 2024-06-24 name.local = ወላá‹á‰³á‰± name.english = Wolaytta name.babel = wolaytta @@ -105,16 +105,21 @@ time.short = [h]:[mm] [a] [typography] frenchspacing = yes -hyphenrules = -lefthyphenmin = -righthyphenmin = -hyphenchar = -prehyphenchar = -posthyphenchar = -exhyphenchar = -preexhyphenchar = +; Modern practice. Use 'amharic' for the traditional one: +hyphenrules = unhyphenated +lefthyphenmin = 1 +righthyphenmin = 1 +hyphenchar = +prehyphenchar = +posthyphenchar = +exhyphenchar = +preexhyphenchar = postexhyphenchar = -hyphenationmin = +hyphenationmin = +linebreaking = s +intraspace = 0 .1 0 +; The syntax is liable to change in 'other' values +hyphenate.other.script = "1361 "1362 "1363 "1364 "1365 "1366 "1367 "1368 [characters] delimiters.quotes = diff --git a/Master/texmf-dist/tex/generic/babel/locale/xcr/babel-carian.tex b/Master/texmf-dist/tex/generic/babel/locale/xcr/babel-carian.tex new file mode 100644 index 00000000000..59672ea3112 --- /dev/null +++ b/Master/texmf-dist/tex/generic/babel/locale/xcr/babel-carian.tex @@ -0,0 +1,12 @@ +% This file is part of babel. For further details see: +% https://www.ctan.org/pkg/babel +\ifx\BabelBeforeIni\undefined + \PackageError{babel}% + {This file is a component of babel and cannot\MessageBreak + be loaded directly. I'll stop immediately}% + {Just use babel as documented.}% + \stop +\fi +\BabelBeforeIni{xcr}{% +} +\endinput
\ No newline at end of file diff --git a/Master/texmf-dist/tex/generic/babel/locale/xcr/babel-xcr.ini b/Master/texmf-dist/tex/generic/babel/locale/xcr/babel-xcr.ini new file mode 100644 index 00000000000..9288bb56a85 --- /dev/null +++ b/Master/texmf-dist/tex/generic/babel/locale/xcr/babel-xcr.ini @@ -0,0 +1,124 @@ +; This file is part of babel. For further details see: +; https://www.ctan.org/pkg/babel +; Data has been collected mainly from the following sources: +; * Common Locale Data Repository (license Unicode): +; http://cldr.unicode.org/ +; http://unicode.org/copyright.html + +[identification] +charset = utf8 +version = 0.2 +date = 2025-02-08 +name.local = +name.english = Carian +name.babel = carian +tag.bcp47 = xcr +language.tag.bcp47 = xcr +tag.bcp47.likely = xcr-Cari-TR +; see https://docs.microsoft.com/en-us/typography/opentype/spec/languagetags +tag.opentype = +script.name = Carian +script.tag.bcp47 = Cari +script.tag.opentype = cari +level = 1 +encodings = +derivate = no +warning = This is a bare minimum locale for 'carian'. + +[captions] +; xetex, luatex +preface = +ref = +abstract = +bib = +chapter = +appendix = +contents = +listfigure = +listtable = +index = +figure = +table = +part = +encl = +cc = +headto = +page = +see = +also = +proof = +glossary = + +[captions.licr] +; pdftex +preface = +ref = +abstract = +bib = +chapter = +appendix = +contents = +listfigure = +listtable = +index = +figure = +table = +part = +encl = +cc = +headto = +page = +see = +also = +proof = +glossary = + +[date.gregorian] +date.long = [d][ ][MMMM] [y] +date.short = [y]-[MM]-[dd] +months.wide.1 = +months.wide.2 = +months.wide.3 = +months.wide.4 = +months.wide.5 = +months.wide.6 = +months.wide.7 = +months.wide.8 = +months.wide.9 = +months.wide.10 = +months.wide.11 = +months.wide.12 = + +[date.gregorian.licr] +months.wide.1 = +months.wide.2 = +months.wide.3 = +months.wide.4 = +months.wide.5 = +months.wide.6 = +months.wide.7 = +months.wide.8 = +months.wide.9 = +months.wide.10 = +months.wide.11 = +months.wide.12 = + +[time.gregorian] +time.medium = [HH]:[mm]:[ss] +time.short = [HH]:[mm] + +[typography] +frenchspacing = +hyphenrules = +lefthyphenmin = +righthyphenmin = +hyphenchar = +prehyphenchar = +posthyphenchar = +exhyphenchar = +preexhyphenchar = +postexhyphenchar = +hyphenationmin = + +[characters] +ranges = 102A0..102DF diff --git a/Master/texmf-dist/tex/generic/babel/locale/xlc/babel-lycian.tex b/Master/texmf-dist/tex/generic/babel/locale/xlc/babel-lycian.tex new file mode 100644 index 00000000000..fe380047502 --- /dev/null +++ b/Master/texmf-dist/tex/generic/babel/locale/xlc/babel-lycian.tex @@ -0,0 +1,12 @@ +% This file is part of babel. For further details see: +% https://www.ctan.org/pkg/babel +\ifx\BabelBeforeIni\undefined + \PackageError{babel}% + {This file is a component of babel and cannot\MessageBreak + be loaded directly. I'll stop immediately}% + {Just use babel as documented.}% + \stop +\fi +\BabelBeforeIni{xlc}{% +} +\endinput
\ No newline at end of file diff --git a/Master/texmf-dist/tex/generic/babel/locale/xlc/babel-xlc.ini b/Master/texmf-dist/tex/generic/babel/locale/xlc/babel-xlc.ini new file mode 100644 index 00000000000..f41350468e2 --- /dev/null +++ b/Master/texmf-dist/tex/generic/babel/locale/xlc/babel-xlc.ini @@ -0,0 +1,124 @@ +; This file is part of babel. For further details see: +; https://www.ctan.org/pkg/babel +; Data has been collected mainly from the following sources: +; * Common Locale Data Repository (license Unicode): +; http://cldr.unicode.org/ +; http://unicode.org/copyright.html + +[identification] +charset = utf8 +version = 0.2 +date = 2025-02-08 +name.local = +name.english = Lycian +name.babel = lycian +tag.bcp47 = xlc +language.tag.bcp47 = xlc +tag.bcp47.likely = xlc-Lyci-TR +; see https://docs.microsoft.com/en-us/typography/opentype/spec/languagetags +tag.opentype = +script.name = Lycian +script.tag.bcp47 = Lycigs +script.tag.opentype = lyci +level = 1 +encodings = +derivate = no +warning = This is a bare minimum locale for 'lycian'. + +[captions] +; xetex, luatex +preface = +ref = +abstract = +bib = +chapter = +appendix = +contents = +listfigure = +listtable = +index = +figure = +table = +part = +encl = +cc = +headto = +page = +see = +also = +proof = +glossary = + +[captions.licr] +; pdftex +preface = +ref = +abstract = +bib = +chapter = +appendix = +contents = +listfigure = +listtable = +index = +figure = +table = +part = +encl = +cc = +headto = +page = +see = +also = +proof = +glossary = + +[date.gregorian] +date.long = [d][ ][MMMM] [y] +date.short = [y]-[MM]-[dd] +months.wide.1 = +months.wide.2 = +months.wide.3 = +months.wide.4 = +months.wide.5 = +months.wide.6 = +months.wide.7 = +months.wide.8 = +months.wide.9 = +months.wide.10 = +months.wide.11 = +months.wide.12 = + +[date.gregorian.licr] +months.wide.1 = +months.wide.2 = +months.wide.3 = +months.wide.4 = +months.wide.5 = +months.wide.6 = +months.wide.7 = +months.wide.8 = +months.wide.9 = +months.wide.10 = +months.wide.11 = +months.wide.12 = + +[time.gregorian] +time.medium = [HH]:[mm]:[ss] +time.short = [HH]:[mm] + +[typography] +frenchspacing = +hyphenrules = +lefthyphenmin = +righthyphenmin = +hyphenchar = +prehyphenchar = +posthyphenchar = +exhyphenchar = +preexhyphenchar = +postexhyphenchar = +hyphenationmin = + +[characters] +ranges = 10280..1029F diff --git a/Master/texmf-dist/tex/generic/babel/locale/xld/babel-lydian.tex b/Master/texmf-dist/tex/generic/babel/locale/xld/babel-lydian.tex new file mode 100644 index 00000000000..d8d7e2ae4df --- /dev/null +++ b/Master/texmf-dist/tex/generic/babel/locale/xld/babel-lydian.tex @@ -0,0 +1,12 @@ +% This file is part of babel. For further details see: +% https://www.ctan.org/pkg/babel +\ifx\BabelBeforeIni\undefined + \PackageError{babel}% + {This file is a component of babel and cannot\MessageBreak + be loaded directly. I'll stop immediately}% + {Just use babel as documented.}% + \stop +\fi +\BabelBeforeIni{xld}{% +} +\endinput
\ No newline at end of file diff --git a/Master/texmf-dist/tex/generic/babel/locale/xld/babel-xld.ini b/Master/texmf-dist/tex/generic/babel/locale/xld/babel-xld.ini new file mode 100644 index 00000000000..62673e01bc5 --- /dev/null +++ b/Master/texmf-dist/tex/generic/babel/locale/xld/babel-xld.ini @@ -0,0 +1,124 @@ +; This file is part of babel. For further details see: +; https://www.ctan.org/pkg/babel +; Data has been collected mainly from the following sources: +; * Common Locale Data Repository (license Unicode): +; http://cldr.unicode.org/ +; http://unicode.org/copyright.html + +[identification] +charset = utf8 +version = 0.2 +date = 2025-02-08 +name.local = +name.english = Lydian +name.babel = lydian +tag.bcp47 = xld +language.tag.bcp47 = xld +tag.bcp47.likely = xld-Lydi-TR +; see https://docs.microsoft.com/en-us/typography/opentype/spec/languagetags +tag.opentype = +script.name = Lydian +script.tag.bcp47 = Lydi +script.tag.opentype = lydi +level = 1 +encodings = +derivate = no +warning = This is a bare minimum locale for 'lydian'. + +[captions] +; xetex, luatex +preface = +ref = +abstract = +bib = +chapter = +appendix = +contents = +listfigure = +listtable = +index = +figure = +table = +part = +encl = +cc = +headto = +page = +see = +also = +proof = +glossary = + +[captions.licr] +; pdftex +preface = +ref = +abstract = +bib = +chapter = +appendix = +contents = +listfigure = +listtable = +index = +figure = +table = +part = +encl = +cc = +headto = +page = +see = +also = +proof = +glossary = + +[date.gregorian] +date.long = [d][ ][MMMM] [y] +date.short = [y]-[MM]-[dd] +months.wide.1 = +months.wide.2 = +months.wide.3 = +months.wide.4 = +months.wide.5 = +months.wide.6 = +months.wide.7 = +months.wide.8 = +months.wide.9 = +months.wide.10 = +months.wide.11 = +months.wide.12 = + +[date.gregorian.licr] +months.wide.1 = +months.wide.2 = +months.wide.3 = +months.wide.4 = +months.wide.5 = +months.wide.6 = +months.wide.7 = +months.wide.8 = +months.wide.9 = +months.wide.10 = +months.wide.11 = +months.wide.12 = + +[time.gregorian] +time.medium = [HH]:[mm]:[ss] +time.short = [HH]:[mm] + +[typography] +frenchspacing = +hyphenrules = +lefthyphenmin = +righthyphenmin = +hyphenchar = +prehyphenchar = +posthyphenchar = +exhyphenchar = +preexhyphenchar = +postexhyphenchar = +hyphenationmin = + +[characters] +ranges = 10920..1093F diff --git a/Master/texmf-dist/tex/generic/babel/locale/xnr/babel-kangri.tex b/Master/texmf-dist/tex/generic/babel/locale/xnr/babel-kangri.tex new file mode 100644 index 00000000000..1ca05b26798 --- /dev/null +++ b/Master/texmf-dist/tex/generic/babel/locale/xnr/babel-kangri.tex @@ -0,0 +1,12 @@ +% This file is part of babel. For further details see: +% https://www.ctan.org/pkg/babel +\ifx\BabelBeforeIni\undefined + \PackageError{babel}% + {This file is a component of babel and cannot\MessageBreak + be loaded directly. I'll stop immediately}% + {Just use babel as documented.}% + \stop +\fi +\BabelBeforeIni{xnr}{% +} +\endinput
\ No newline at end of file diff --git a/Master/texmf-dist/tex/generic/babel/locale/xnr/babel-xnr.ini b/Master/texmf-dist/tex/generic/babel/locale/xnr/babel-xnr.ini new file mode 100644 index 00000000000..b8dda5fa2b6 --- /dev/null +++ b/Master/texmf-dist/tex/generic/babel/locale/xnr/babel-xnr.ini @@ -0,0 +1,142 @@ +; This file is part of babel. For further details see: +; https://www.ctan.org/pkg/babel +; Data has been collected mainly from the following sources: +; * Common Locale Data Repository (license Unicode): +; http://cldr.unicode.org/ +; http://unicode.org/copyright.html + +[identification] +charset = utf8 +version = 1.0 +date = 2025-02-01 +name.local = कांगड़ी +name.english = Kangri +name.babel = kangri +tag.bcp47 = xnr +language.tag.bcp47 = xnr +tag.bcp47.likely = xnr-Deva-IN +; see https://docs.microsoft.com/en-us/typography/opentype/spec/languagetags +tag.opentype = +script.name = Devanagari +script.tag.bcp47 = Deva +script.tag.opentype = deva +level = 1 +encodings = +derivate = no + +[captions] +; xetex, luatex +preface = +ref = +abstract = +bib = +chapter = +appendix = +contents = +listfigure = +listtable = +index = +figure = +table = +part = +encl = +cc = +headto = +page = +see = +also = +proof = +glossary = + +[captions.licr] +; pdftex +preface = +ref = +abstract = +bib = +chapter = +appendix = +contents = +listfigure = +listtable = +index = +figure = +table = +part = +encl = +cc = +headto = +page = +see = +also = +proof = +glossary = + +[date.gregorian] +date.long = [d][ ][MMMM] [y] +date.short = [d]/[M]/[yy] +months.wide.1 = जनवरी +months.wide.2 = फ़रवरी +months.wide.3 = मारà¥à¤š +months.wide.4 = अपà¥à¤°à¥ˆà¤² +months.wide.5 = मई +months.wide.6 = जून +months.wide.7 = जà¥à¤²à¤¾à¤ˆ +months.wide.8 = अगसà¥à¤¤ +months.wide.9 = सितंबर +months.wide.10 = अकà¥à¤¤à¥‚बर +months.wide.11 = नवंबर +months.wide.12 = दिसंबर + +[date.gregorian.licr] +months.wide.1 = +months.wide.2 = +months.wide.3 = +months.wide.4 = +months.wide.5 = +months.wide.6 = +months.wide.7 = +months.wide.8 = +months.wide.9 = +months.wide.10 = +months.wide.11 = +months.wide.12 = + +[time.gregorian] +time.medium = [h]:[mm]:[ss] [a] +time.short = [h]:[mm] [a] + +[typography] +frenchspacing = yes +hyphenrules = +lefthyphenmin = +righthyphenmin = +hyphenchar = +prehyphenchar = +posthyphenchar = +exhyphenchar = +preexhyphenchar = +postexhyphenchar = +hyphenationmin = + +[characters] +delimiters.quotes = +auxiliary = [ॄ] +exemplarCharacters = [\u200C\u200D ़ ठंः ॠअ आ इ ई उ ऊ ठठठऑ ओ औ क ख ग घ ङ च छ ज ठञ ट ठड ढ ण त थ द ध न प फ ब ठम य र ल ळ व श स ह ऽ ा ि ी ॠू ृ ॅ े ै ॉ ो ौ à¥] +index = +punctuation = [\\- ‑ , ; \\: ! ? . '‘’ \"Ҡ( ) \\[ \\] \\{ \\} ॰] + +[numbers] +defaultNumberingSystem = +minimumGroupingDigits = +decimal = +exponential = +group = +infinity = +list = +minusSign = +nan = +perMille = +percentSign = +plusSign = +superscriptingExponent = diff --git a/Master/texmf-dist/tex/generic/babel/locale/xsa/babel-sabaean.tex b/Master/texmf-dist/tex/generic/babel/locale/xsa/babel-sabaean.tex new file mode 100644 index 00000000000..07f9d00ef72 --- /dev/null +++ b/Master/texmf-dist/tex/generic/babel/locale/xsa/babel-sabaean.tex @@ -0,0 +1,12 @@ +% This file is part of babel. For further details see: +% https://www.ctan.org/pkg/babel +\ifx\BabelBeforeIni\undefined + \PackageError{babel}% + {This file is a component of babel and cannot\MessageBreak + be loaded directly. I'll stop immediately}% + {Just use babel as documented.}% + \stop +\fi +\BabelBeforeIni{xsa}{% +} +\endinput
\ No newline at end of file diff --git a/Master/texmf-dist/tex/generic/babel/locale/xsa/babel-xsa.ini b/Master/texmf-dist/tex/generic/babel/locale/xsa/babel-xsa.ini new file mode 100644 index 00000000000..1a71e26e6fd --- /dev/null +++ b/Master/texmf-dist/tex/generic/babel/locale/xsa/babel-xsa.ini @@ -0,0 +1,124 @@ +; This file is part of babel. For further details see: +; https://www.ctan.org/pkg/babel +; Data has been collected mainly from the following sources: +; * Common Locale Data Repository (license Unicode): +; http://cldr.unicode.org/ +; http://unicode.org/copyright.html + +[identification] +charset = utf8 +version = 0.2 +date = 2025-02-08 +name.local = +name.english = Sabaean +name.babel = sabaean +tag.bcp47 = xsa +language.tag.bcp47 = xsa +tag.bcp47.likely = xsa-Sarb-YE +; see https://docs.microsoft.com/en-us/typography/opentype/spec/languagetags +tag.opentype = +script.name = Old South Arabian +script.tag.bcp47 = Sarb +script.tag.opentype = sarb +level = 1 +encodings = +derivate = no +warning = This is a bare minimum locale for 'sabaean'. + +[captions] +; xetex, luatex +preface = +ref = +abstract = +bib = +chapter = +appendix = +contents = +listfigure = +listtable = +index = +figure = +table = +part = +encl = +cc = +headto = +page = +see = +also = +proof = +glossary = + +[captions.licr] +; pdftex +preface = +ref = +abstract = +bib = +chapter = +appendix = +contents = +listfigure = +listtable = +index = +figure = +table = +part = +encl = +cc = +headto = +page = +see = +also = +proof = +glossary = + +[date.gregorian] +date.long = [d][ ][MMMM] [y] +date.short = [y]-[MM]-[dd] +months.wide.1 = +months.wide.2 = +months.wide.3 = +months.wide.4 = +months.wide.5 = +months.wide.6 = +months.wide.7 = +months.wide.8 = +months.wide.9 = +months.wide.10 = +months.wide.11 = +months.wide.12 = + +[date.gregorian.licr] +months.wide.1 = +months.wide.2 = +months.wide.3 = +months.wide.4 = +months.wide.5 = +months.wide.6 = +months.wide.7 = +months.wide.8 = +months.wide.9 = +months.wide.10 = +months.wide.11 = +months.wide.12 = + +[time.gregorian] +time.medium = [HH]:[mm]:[ss] +time.short = [HH]:[mm] + +[typography] +frenchspacing = +hyphenrules = +lefthyphenmin = +righthyphenmin = +hyphenchar = +prehyphenchar = +posthyphenchar = +exhyphenchar = +preexhyphenchar = +postexhyphenchar = +hyphenationmin = + +[characters] +ranges = 10A60..10A7F diff --git a/Master/texmf-dist/tex/generic/babel/locale/za/babel-za.ini b/Master/texmf-dist/tex/generic/babel/locale/za/babel-za.ini new file mode 100644 index 00000000000..d6935b150aa --- /dev/null +++ b/Master/texmf-dist/tex/generic/babel/locale/za/babel-za.ini @@ -0,0 +1,141 @@ +; This file is part of babel. For further details see: +; https://www.ctan.org/pkg/babel +; Data has been collected mainly from the following sources: +; * Common Locale Data Repository (license Unicode): +; http://cldr.unicode.org/ +; http://unicode.org/copyright.html + +[identification] +charset = utf8 +version = 1.0 +date = 2025-02-01 +name.local = Vahcuengh +name.english = Zhuang +name.babel = zhuang +tag.bcp47 = za +language.tag.bcp47 = za +tag.bcp47.likely = za-Latn-CN +tag.opentype = ZHA +script.name = Latin +script.tag.bcp47 = Latn +script.tag.opentype = latn +level = 1 +encodings = T1 OT1 LY1 +derivate = no + +[captions] +; xetex, luatex +preface = +ref = +abstract = +bib = +chapter = +appendix = +contents = +listfigure = +listtable = +index = +figure = +table = +part = +encl = +cc = +headto = +page = +see = +also = +proof = +glossary = + +[captions.licr] +; pdftex +preface = +ref = +abstract = +bib = +chapter = +appendix = +contents = +listfigure = +listtable = +index = +figure = +table = +part = +encl = +cc = +headto = +page = +see = +also = +proof = +glossary = + +[date.gregorian] +date.long = [d][ ][MMMM] [y] +date.short = [y]-[MM]-[dd] +months.wide.1 = ndwenit +months.wide.2 = ndwenngeih +months.wide.3 = ndwensam +months.wide.4 = ndwenseiq +months.wide.5 = ndwenngux +months.wide.6 = ndwenloeg +months.wide.7 = ndwencaet +months.wide.8 = ndwenbet +months.wide.9 = ndwengouj +months.wide.10 = ndwencib +months.wide.11 = ndwencib’it +months.wide.12 = ndwencibngeih + +[date.gregorian.licr] +months.wide.1 = +months.wide.2 = +months.wide.3 = +months.wide.4 = +months.wide.5 = +months.wide.6 = +months.wide.7 = +months.wide.8 = +months.wide.9 = +months.wide.10 = +months.wide.11 = +months.wide.12 = + +[time.gregorian] +time.medium = [HH]:[mm]:[ss] +time.short = [HH]:[mm] + +[typography] +frenchspacing = yes +hyphenrules = +lefthyphenmin = +righthyphenmin = +hyphenchar = +prehyphenchar = +posthyphenchar = +exhyphenchar = +preexhyphenchar = +postexhyphenchar = +hyphenationmin = + +[characters] +delimiters.quotes = +auxiliary = +exemplarCharacters = [a b c d e f g h i j k l m n o p q r s t u v w x y z] +index = [A B C D E F G H I J K L M N O P Q R S T U V W X Y Z] +punctuation = [\\- â€â€‘ – — , ; \\: ! ? . … '‘’ \"Ҡ( ) \\[ \\] § @ * / \\& # †‡ ′ ″] + +[numbers] +defaultNumberingSystem = +minimumGroupingDigits = +decimal = +exponential = +group = +infinity = +list = +minusSign = +nan = +perMille = +percentSign = +plusSign = +superscriptingExponent = diff --git a/Master/texmf-dist/tex/generic/babel/locale/za/babel-zhuang.tex b/Master/texmf-dist/tex/generic/babel/locale/za/babel-zhuang.tex new file mode 100644 index 00000000000..b4a862b7250 --- /dev/null +++ b/Master/texmf-dist/tex/generic/babel/locale/za/babel-zhuang.tex @@ -0,0 +1,12 @@ +% This file is part of babel. For further details see: +% https://www.ctan.org/pkg/babel +\ifx\BabelBeforeIni\undefined + \PackageError{babel}% + {This file is a component of babel and cannot\MessageBreak + be loaded directly. I'll stop immediately}% + {Just use babel as documented.}% + \stop +\fi +\BabelBeforeIni{za}{% +} +\endinput
\ No newline at end of file diff --git a/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hans-HK.ini b/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hans-HK.ini index 33c381bbb67..03bb7fb075f 100644 --- a/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hans-HK.ini +++ b/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hans-HK.ini @@ -9,8 +9,8 @@ [identification] charset = utf8 -version = 1.12 -date = 2023-10-24 +version = 1.13 +date = 2024-12-28 name.local = 简体ä¸æ–‡ name.english = Simplified Chinese name.opentype = Chinese Simplified @@ -237,3 +237,31 @@ fullwidth.lower.alpha = ï½ ï½‚ c d ï½… f g h i j k l ï½ ï½Ž fullwidth.upper.alpha = A ï¼¢ ï¼£ D ï¼¥ F G H I J K L ï¼ ï¼® O ï¼° ï¼± ï¼² ï¼³ ï¼´ ï¼µ V ï¼· X ï¼¹ Z date.day = åˆä¸€ åˆäºŒ åˆä¸‰ åˆå›› åˆäº” åˆå… åˆä¸ƒ åˆå…« åˆä¹ åˆå å一 å二 å三 åå›› å五 åå… å七 åå…« åä¹ äºŒå 廿一 廿二 廿三 廿四 廿五 å»¿å… å»¿ä¸ƒ 廿八 å»¿ä¹ ä¸‰å +[transforms.prehyphenation] +spacing.basic.1.0 = { [ã€ã€‚,.・:;!?)]ï½ã€‰ã€‹ã€ã€ã€‘〕〗〙〛â€ã€ž] ()[([{〈《「『ã€ã€”〖〘〚“ã€]() } +spacing.basic.1.1 = { insert, kern = -.5 } +spacing.basic.1.2 = { insert, penalty = 0 } +spacing.basic.1.3 = { insert, kern = .5 } +spacing.basic.1.4 = { insert, norule = -.5 0 0 } +spacing.basic.1.5 = {} +spacing.basic.2.0 = { [ã€ã€‚,.・:;!?)]ï½ã€‰ã€‹ã€ã€ã€‘〕〗〙〛â€ã€ž] ()[ã€ã€‚,.・:!?)]ï½ã€‰ã€‹ã€ã€ã€‘〕〗〙〛â€ã€ž]() } +spacing.basic.2.1 = { insert, kern= -.5, step = -1 } +spacing.basic.2.2 = {} +spacing.basic.3.0 = { [([{〈《「『ã€ã€”〖〘〚“ã€] ()[([{〈《「『ã€ã€”〖〘〚“ã€]() } +spacing.basic.3.1 = { insert, kern = -.5, step =- 1 } +spacing.basic.3.2 = {} +; +spacing.basic.4.0 = { [ã€ã€‚,.・:;!?)]ï½ã€‰ã€‹ã€ã€ã€‘〕〗〙〛â€ã€ž] ()[{a}]() } +spacing.basic.4.1 = { insert, kern = -.5, step = -1 } +spacing.basic.4.2 = { insert, penalty = 0 } +spacing.basic.4.3 = { insert, kern = .5 } +spacing.basic.4.4 = {} +spacing.basic.5.0 = { [{a}] ()[([{〈《「『ã€ã€”〖〘〚“ã€]() } +spacing.basic.5.1 = { insert, penalty = 0 } +spacing.basic.5.2 = { insert, kern = .5 } +spacing.basic.5.3 = { insert, norule = -.5 0 0 } +spacing.basic.5.4 = {} +spacing.basic.6.0 = { ^()[([{〈《「『ã€ã€”〖〘〚“ã€]() } +spacing.basic.6.1 = { insert, kern = -.5 } +spacing.basic.6.2 = {} + diff --git a/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hans-MO.ini b/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hans-MO.ini index 56067ebb86d..ecb56844074 100644 --- a/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hans-MO.ini +++ b/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hans-MO.ini @@ -9,8 +9,8 @@ [identification] charset = utf8 -version = 1.12 -date = 2023-10-24 +version = 1.13 +date = 2024-12-28 name.local = 简体ä¸æ–‡ name.english = Simplified Chinese name.opentype = Chinese Simplified @@ -237,3 +237,31 @@ fullwidth.lower.alpha = ï½ ï½‚ c d ï½… f g h i j k l ï½ ï½Ž fullwidth.upper.alpha = A ï¼¢ ï¼£ D ï¼¥ F G H I J K L ï¼ ï¼® O ï¼° ï¼± ï¼² ï¼³ ï¼´ ï¼µ V ï¼· X ï¼¹ Z date.day = åˆä¸€ åˆäºŒ åˆä¸‰ åˆå›› åˆäº” åˆå… åˆä¸ƒ åˆå…« åˆä¹ åˆå å一 å二 å三 åå›› å五 åå… å七 åå…« åä¹ äºŒå 廿一 廿二 廿三 廿四 廿五 å»¿å… å»¿ä¸ƒ 廿八 å»¿ä¹ ä¸‰å +[transforms.prehyphenation] +spacing.basic.1.0 = { [ã€ã€‚,.・:;!?)]ï½ã€‰ã€‹ã€ã€ã€‘〕〗〙〛â€ã€ž] ()[([{〈《「『ã€ã€”〖〘〚“ã€]() } +spacing.basic.1.1 = { insert, kern = -.5 } +spacing.basic.1.2 = { insert, penalty = 0 } +spacing.basic.1.3 = { insert, kern = .5 } +spacing.basic.1.4 = { insert, norule = -.5 0 0 } +spacing.basic.1.5 = {} +spacing.basic.2.0 = { [ã€ã€‚,.・:;!?)]ï½ã€‰ã€‹ã€ã€ã€‘〕〗〙〛â€ã€ž] ()[ã€ã€‚,.・:!?)]ï½ã€‰ã€‹ã€ã€ã€‘〕〗〙〛â€ã€ž]() } +spacing.basic.2.1 = { insert, kern= -.5, step = -1 } +spacing.basic.2.2 = {} +spacing.basic.3.0 = { [([{〈《「『ã€ã€”〖〘〚“ã€] ()[([{〈《「『ã€ã€”〖〘〚“ã€]() } +spacing.basic.3.1 = { insert, kern = -.5, step =- 1 } +spacing.basic.3.2 = {} +; +spacing.basic.4.0 = { [ã€ã€‚,.・:;!?)]ï½ã€‰ã€‹ã€ã€ã€‘〕〗〙〛â€ã€ž] ()[{a}]() } +spacing.basic.4.1 = { insert, kern = -.5, step = -1 } +spacing.basic.4.2 = { insert, penalty = 0 } +spacing.basic.4.3 = { insert, kern = .5 } +spacing.basic.4.4 = {} +spacing.basic.5.0 = { [{a}] ()[([{〈《「『ã€ã€”〖〘〚“ã€]() } +spacing.basic.5.1 = { insert, penalty = 0 } +spacing.basic.5.2 = { insert, kern = .5 } +spacing.basic.5.3 = { insert, norule = -.5 0 0 } +spacing.basic.5.4 = {} +spacing.basic.6.0 = { ^()[([{〈《「『ã€ã€”〖〘〚“ã€]() } +spacing.basic.6.1 = { insert, kern = -.5 } +spacing.basic.6.2 = {} + diff --git a/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hans-SG.ini b/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hans-SG.ini index c2b08b3ee47..dc26e9f0118 100644 --- a/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hans-SG.ini +++ b/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hans-SG.ini @@ -9,8 +9,8 @@ [identification] charset = utf8 -version = 1.12 -date = 2023-10-24 +version = 1.13 +date = 2024-12-28 name.local = 简体ä¸æ–‡ name.english = Simplified Chinese name.opentype = Chinese Simplified @@ -237,4 +237,32 @@ fullwidth.lower.alpha = ï½ ï½‚ c d ï½… f g h i j k l ï½ ï½Ž fullwidth.upper.alpha = A ï¼¢ ï¼£ D ï¼¥ F G H I J K L ï¼ ï¼® O ï¼° ï¼± ï¼² ï¼³ ï¼´ ï¼µ V ï¼· X ï¼¹ Z date.day = åˆä¸€ åˆäºŒ åˆä¸‰ åˆå›› åˆäº” åˆå… åˆä¸ƒ åˆå…« åˆä¹ åˆå å一 å二 å三 åå›› å五 åå… å七 åå…« åä¹ äºŒå 廿一 廿二 廿三 廿四 廿五 å»¿å… å»¿ä¸ƒ 廿八 å»¿ä¹ ä¸‰å +[transforms.prehyphenation] +spacing.basic.1.0 = { [ã€ã€‚,.・:;!?)]ï½ã€‰ã€‹ã€ã€ã€‘〕〗〙〛â€ã€ž] ()[([{〈《「『ã€ã€”〖〘〚“ã€]() } +spacing.basic.1.1 = { insert, kern = -.5 } +spacing.basic.1.2 = { insert, penalty = 0 } +spacing.basic.1.3 = { insert, kern = .5 } +spacing.basic.1.4 = { insert, norule = -.5 0 0 } +spacing.basic.1.5 = {} +spacing.basic.2.0 = { [ã€ã€‚,.・:;!?)]ï½ã€‰ã€‹ã€ã€ã€‘〕〗〙〛â€ã€ž] ()[ã€ã€‚,.・:!?)]ï½ã€‰ã€‹ã€ã€ã€‘〕〗〙〛â€ã€ž]() } +spacing.basic.2.1 = { insert, kern= -.5, step = -1 } +spacing.basic.2.2 = {} +spacing.basic.3.0 = { [([{〈《「『ã€ã€”〖〘〚“ã€] ()[([{〈《「『ã€ã€”〖〘〚“ã€]() } +spacing.basic.3.1 = { insert, kern = -.5, step =- 1 } +spacing.basic.3.2 = {} +; +spacing.basic.4.0 = { [ã€ã€‚,.・:;!?)]ï½ã€‰ã€‹ã€ã€ã€‘〕〗〙〛â€ã€ž] ()[{a}]() } +spacing.basic.4.1 = { insert, kern = -.5, step = -1 } +spacing.basic.4.2 = { insert, penalty = 0 } +spacing.basic.4.3 = { insert, kern = .5 } +spacing.basic.4.4 = {} +spacing.basic.5.0 = { [{a}] ()[([{〈《「『ã€ã€”〖〘〚“ã€]() } +spacing.basic.5.1 = { insert, penalty = 0 } +spacing.basic.5.2 = { insert, kern = .5 } +spacing.basic.5.3 = { insert, norule = -.5 0 0 } +spacing.basic.5.4 = {} +spacing.basic.6.0 = { ^()[([{〈《「『ã€ã€”〖〘〚“ã€]() } +spacing.basic.6.1 = { insert, kern = -.5 } +spacing.basic.6.2 = {} + diff --git a/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hans.ini b/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hans.ini index 8c7437a953d..ee0252dd60f 100644 --- a/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hans.ini +++ b/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hans.ini @@ -11,8 +11,8 @@ [identification] charset = utf8 -version = 1.14 -date = 2023-10-24 +version = 1.15 +date = 2024-12-28 name.local = 简体ä¸æ–‡ name.english = Simplified Chinese name.opentype = Chinese Simplified @@ -240,3 +240,31 @@ fullwidth.lower.alpha = ï½ ï½‚ c d ï½… f g h i j k l ï½ ï½Ž fullwidth.upper.alpha = A ï¼¢ ï¼£ D ï¼¥ F G H I J K L ï¼ ï¼® O ï¼° ï¼± ï¼² ï¼³ ï¼´ ï¼µ V ï¼· X ï¼¹ Z date.day = åˆä¸€ åˆäºŒ åˆä¸‰ åˆå›› åˆäº” åˆå… åˆä¸ƒ åˆå…« åˆä¹ åˆå å一 å二 å三 åå›› å五 åå… å七 åå…« åä¹ äºŒå 廿一 廿二 廿三 廿四 廿五 å»¿å… å»¿ä¸ƒ 廿八 å»¿ä¹ ä¸‰å +[transforms.prehyphenation] +spacing.basic.1.0 = { [ã€ã€‚,.・:;!?)]ï½ã€‰ã€‹ã€ã€ã€‘〕〗〙〛â€ã€ž] ()[([{〈《「『ã€ã€”〖〘〚“ã€]() } +spacing.basic.1.1 = { insert, kern = -.5 } +spacing.basic.1.2 = { insert, penalty = 0 } +spacing.basic.1.3 = { insert, kern = .5 } +spacing.basic.1.4 = { insert, norule = -.5 0 0 } +spacing.basic.1.5 = {} +spacing.basic.2.0 = { [ã€ã€‚,.・:;!?)]ï½ã€‰ã€‹ã€ã€ã€‘〕〗〙〛â€ã€ž] ()[ã€ã€‚,.・:!?)]ï½ã€‰ã€‹ã€ã€ã€‘〕〗〙〛â€ã€ž]() } +spacing.basic.2.1 = { insert, kern= -.5, step = -1 } +spacing.basic.2.2 = {} +spacing.basic.3.0 = { [([{〈《「『ã€ã€”〖〘〚“ã€] ()[([{〈《「『ã€ã€”〖〘〚“ã€]() } +spacing.basic.3.1 = { insert, kern = -.5, step =- 1 } +spacing.basic.3.2 = {} +; +spacing.basic.4.0 = { [ã€ã€‚,.・:;!?)]ï½ã€‰ã€‹ã€ã€ã€‘〕〗〙〛â€ã€ž] ()[{a}]() } +spacing.basic.4.1 = { insert, kern = -.5, step = -1 } +spacing.basic.4.2 = { insert, penalty = 0 } +spacing.basic.4.3 = { insert, kern = .5 } +spacing.basic.4.4 = {} +spacing.basic.5.0 = { [{a}] ()[([{〈《「『ã€ã€”〖〘〚“ã€]() } +spacing.basic.5.1 = { insert, penalty = 0 } +spacing.basic.5.2 = { insert, kern = .5 } +spacing.basic.5.3 = { insert, norule = -.5 0 0 } +spacing.basic.5.4 = {} +spacing.basic.6.0 = { ^()[([{〈《「『ã€ã€”〖〘〚“ã€]() } +spacing.basic.6.1 = { insert, kern = -.5 } +spacing.basic.6.2 = {} + diff --git a/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hant-HK.ini b/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hant-HK.ini index 8fc0abab80a..4a531ac4e66 100644 --- a/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hant-HK.ini +++ b/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hant-HK.ini @@ -9,8 +9,8 @@ [identification] charset = utf8 -version = 1.12 -date = 2023-10-24 +version = 1.13 +date = 2024-12-28 name.local = ç¹é«”ä¸æ–‡ name.english = Traditional Chinese name.opentype = Chinese Traditional @@ -237,4 +237,32 @@ fullwidth.lower.alpha = ï½ ï½‚ c d ï½… f g h i j k l ï½ ï½Ž fullwidth.upper.alpha = A ï¼¢ ï¼£ D ï¼¥ F G H I J K L ï¼ ï¼® O ï¼° ï¼± ï¼² ï¼³ ï¼´ ï¼µ V ï¼· X ï¼¹ Z date.day = åˆä¸€ åˆäºŒ åˆä¸‰ åˆå›› åˆäº” åˆå… åˆä¸ƒ åˆå…« åˆä¹ åˆå å一 å二 å三 åå›› å五 åå… å七 åå…« åä¹ äºŒå 廿一 廿二 廿三 廿四 廿五 å»¿å… å»¿ä¸ƒ 廿八 å»¿ä¹ ä¸‰å +[transforms.prehyphenation] +spacing.basic.1.0 = { [ã€ã€‚,.・:;!?)]ï½ã€‰ã€‹ã€ã€ã€‘〕〗〙〛â€ã€ž] ()[([{〈《「『ã€ã€”〖〘〚“ã€]() } +spacing.basic.1.1 = { insert, kern = -.5 } +spacing.basic.1.2 = { insert, penalty = 0 } +spacing.basic.1.3 = { insert, kern = .5 } +spacing.basic.1.4 = { insert, norule = -.5 0 0 } +spacing.basic.1.5 = {} +spacing.basic.2.0 = { [ã€ã€‚,.・:;!?)]ï½ã€‰ã€‹ã€ã€ã€‘〕〗〙〛â€ã€ž] ()[ã€ã€‚,.・:!?)]ï½ã€‰ã€‹ã€ã€ã€‘〕〗〙〛â€ã€ž]() } +spacing.basic.2.1 = { insert, kern= -.5, step = -1 } +spacing.basic.2.2 = {} +spacing.basic.3.0 = { [([{〈《「『ã€ã€”〖〘〚“ã€] ()[([{〈《「『ã€ã€”〖〘〚“ã€]() } +spacing.basic.3.1 = { insert, kern = -.5, step =- 1 } +spacing.basic.3.2 = {} +; +spacing.basic.4.0 = { [ã€ã€‚,.・:;!?)]ï½ã€‰ã€‹ã€ã€ã€‘〕〗〙〛â€ã€ž] ()[{a}]() } +spacing.basic.4.1 = { insert, kern = -.5, step = -1 } +spacing.basic.4.2 = { insert, penalty = 0 } +spacing.basic.4.3 = { insert, kern = .5 } +spacing.basic.4.4 = {} +spacing.basic.5.0 = { [{a}] ()[([{〈《「『ã€ã€”〖〘〚“ã€]() } +spacing.basic.5.1 = { insert, penalty = 0 } +spacing.basic.5.2 = { insert, kern = .5 } +spacing.basic.5.3 = { insert, norule = -.5 0 0 } +spacing.basic.5.4 = {} +spacing.basic.6.0 = { ^()[([{〈《「『ã€ã€”〖〘〚“ã€]() } +spacing.basic.6.1 = { insert, kern = -.5 } +spacing.basic.6.2 = {} + diff --git a/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hant-MO.ini b/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hant-MO.ini index 382daf0da07..7a05703f5cf 100644 --- a/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hant-MO.ini +++ b/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hant-MO.ini @@ -9,8 +9,8 @@ [identification] charset = utf8 -version = 1.12 -date = 2023-10-24 +version = 1.13 +date = 2024-12-28 name.local = ç¹é«”ä¸æ–‡ name.english = Traditional Chinese name.opentype = Chinese Traditional @@ -237,4 +237,32 @@ fullwidth.lower.alpha = ï½ ï½‚ c d ï½… f g h i j k l ï½ ï½Ž fullwidth.upper.alpha = A ï¼¢ ï¼£ D ï¼¥ F G H I J K L ï¼ ï¼® O ï¼° ï¼± ï¼² ï¼³ ï¼´ ï¼µ V ï¼· X ï¼¹ Z date.day = åˆä¸€ åˆäºŒ åˆä¸‰ åˆå›› åˆäº” åˆå… åˆä¸ƒ åˆå…« åˆä¹ åˆå å一 å二 å三 åå›› å五 åå… å七 åå…« åä¹ äºŒå 廿一 廿二 廿三 廿四 廿五 å»¿å… å»¿ä¸ƒ 廿八 å»¿ä¹ ä¸‰å +[transforms.prehyphenation] +spacing.basic.1.0 = { [ã€ã€‚,.・:;!?)]ï½ã€‰ã€‹ã€ã€ã€‘〕〗〙〛â€ã€ž] ()[([{〈《「『ã€ã€”〖〘〚“ã€]() } +spacing.basic.1.1 = { insert, kern = -.5 } +spacing.basic.1.2 = { insert, penalty = 0 } +spacing.basic.1.3 = { insert, kern = .5 } +spacing.basic.1.4 = { insert, norule = -.5 0 0 } +spacing.basic.1.5 = {} +spacing.basic.2.0 = { [ã€ã€‚,.・:;!?)]ï½ã€‰ã€‹ã€ã€ã€‘〕〗〙〛â€ã€ž] ()[ã€ã€‚,.・:!?)]ï½ã€‰ã€‹ã€ã€ã€‘〕〗〙〛â€ã€ž]() } +spacing.basic.2.1 = { insert, kern= -.5, step = -1 } +spacing.basic.2.2 = {} +spacing.basic.3.0 = { [([{〈《「『ã€ã€”〖〘〚“ã€] ()[([{〈《「『ã€ã€”〖〘〚“ã€]() } +spacing.basic.3.1 = { insert, kern = -.5, step =- 1 } +spacing.basic.3.2 = {} +; +spacing.basic.4.0 = { [ã€ã€‚,.・:;!?)]ï½ã€‰ã€‹ã€ã€ã€‘〕〗〙〛â€ã€ž] ()[{a}]() } +spacing.basic.4.1 = { insert, kern = -.5, step = -1 } +spacing.basic.4.2 = { insert, penalty = 0 } +spacing.basic.4.3 = { insert, kern = .5 } +spacing.basic.4.4 = {} +spacing.basic.5.0 = { [{a}] ()[([{〈《「『ã€ã€”〖〘〚“ã€]() } +spacing.basic.5.1 = { insert, penalty = 0 } +spacing.basic.5.2 = { insert, kern = .5 } +spacing.basic.5.3 = { insert, norule = -.5 0 0 } +spacing.basic.5.4 = {} +spacing.basic.6.0 = { ^()[([{〈《「『ã€ã€”〖〘〚“ã€]() } +spacing.basic.6.1 = { insert, kern = -.5 } +spacing.basic.6.2 = {} + diff --git a/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hant.ini b/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hant.ini index 98eb7401c64..5b95fa08949 100644 --- a/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hant.ini +++ b/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh-Hant.ini @@ -11,8 +11,8 @@ [identification] charset = utf8 -version = 1.13 -date = 2023-10-24 +version = 1.14 +date = 2024-12-28 name.local = ç¹é«”ä¸æ–‡ name.english = Traditional Chinese name.opentype = Chinese Traditional @@ -242,4 +242,32 @@ fullwidth.lower.alpha = ï½ ï½‚ c d ï½… f g h i j k l ï½ ï½Ž fullwidth.upper.alpha = A ï¼¢ ï¼£ D ï¼¥ F G H I J K L ï¼ ï¼® O ï¼° ï¼± ï¼² ï¼³ ï¼´ ï¼µ V ï¼· X ï¼¹ Z date.day = åˆä¸€ åˆäºŒ åˆä¸‰ åˆå›› åˆäº” åˆå… åˆä¸ƒ åˆå…« åˆä¹ åˆå å一 å二 å三 åå›› å五 åå… å七 åå…« åä¹ äºŒå 廿一 廿二 廿三 廿四 廿五 å»¿å… å»¿ä¸ƒ 廿八 å»¿ä¹ ä¸‰å +[transforms.prehyphenation] +spacing.basic.1.0 = { [ã€ã€‚,.・:;!?)]ï½ã€‰ã€‹ã€ã€ã€‘〕〗〙〛â€ã€ž] ()[([{〈《「『ã€ã€”〖〘〚“ã€]() } +spacing.basic.1.1 = { insert, kern = -.5 } +spacing.basic.1.2 = { insert, penalty = 0 } +spacing.basic.1.3 = { insert, kern = .5 } +spacing.basic.1.4 = { insert, norule = -.5 0 0 } +spacing.basic.1.5 = {} +spacing.basic.2.0 = { [ã€ã€‚,.・:;!?)]ï½ã€‰ã€‹ã€ã€ã€‘〕〗〙〛â€ã€ž] ()[ã€ã€‚,.・:!?)]ï½ã€‰ã€‹ã€ã€ã€‘〕〗〙〛â€ã€ž]() } +spacing.basic.2.1 = { insert, kern= -.5, step = -1 } +spacing.basic.2.2 = {} +spacing.basic.3.0 = { [([{〈《「『ã€ã€”〖〘〚“ã€] ()[([{〈《「『ã€ã€”〖〘〚“ã€]() } +spacing.basic.3.1 = { insert, kern = -.5, step =- 1 } +spacing.basic.3.2 = {} +; +spacing.basic.4.0 = { [ã€ã€‚,.・:;!?)]ï½ã€‰ã€‹ã€ã€ã€‘〕〗〙〛â€ã€ž] ()[{a}]() } +spacing.basic.4.1 = { insert, kern = -.5, step = -1 } +spacing.basic.4.2 = { insert, penalty = 0 } +spacing.basic.4.3 = { insert, kern = .5 } +spacing.basic.4.4 = {} +spacing.basic.5.0 = { [{a}] ()[([{〈《「『ã€ã€”〖〘〚“ã€]() } +spacing.basic.5.1 = { insert, penalty = 0 } +spacing.basic.5.2 = { insert, kern = .5 } +spacing.basic.5.3 = { insert, norule = -.5 0 0 } +spacing.basic.5.4 = {} +spacing.basic.6.0 = { ^()[([{〈《「『ã€ã€”〖〘〚“ã€]() } +spacing.basic.6.1 = { insert, kern = -.5 } +spacing.basic.6.2 = {} + diff --git a/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh.ini b/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh.ini index 44bb43ad511..af779cf183d 100644 --- a/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh.ini +++ b/Master/texmf-dist/tex/generic/babel/locale/zh/babel-zh.ini @@ -11,8 +11,8 @@ [identification] charset = utf8 -version = 1.14 -date = 2023-10-24 +version = 1.15 +date = 2024-10-27 name.local = ä¸æ–‡ name.english = Chinese name.opentype = Chinese Simplified @@ -240,3 +240,31 @@ parenthesized.ideograph = ㈠㈡ ㈢ ㈣ ㈤ ㈥ ㈦ ㈧ ㈨ ㈩ fullwidth.lower.alpha = ï½ ï½‚ c d ï½… f g h i j k l ï½ ï½Ž ï½ ï½ ï½‘ ï½’ s ï½” u ï½– ï½— x ï½™ z fullwidth.upper.alpha = A ï¼¢ ï¼£ D ï¼¥ F G H I J K L ï¼ ï¼® O ï¼° ï¼± ï¼² ï¼³ ï¼´ ï¼µ V ï¼· X ï¼¹ Z date.day = åˆä¸€ åˆäºŒ åˆä¸‰ åˆå›› åˆäº” åˆå… åˆä¸ƒ åˆå…« åˆä¹ åˆå å一 å二 å三 åå›› å五 åå… å七 åå…« åä¹ äºŒå 廿一 廿二 廿三 廿四 廿五 å»¿å… å»¿ä¸ƒ 廿八 å»¿ä¹ ä¸‰å + +[transforms.prehyphenation] +spacing.basic.1.0 = { [ã€ã€‚,.・:;!?)]ï½ã€‰ã€‹ã€ã€ã€‘〕〗〙〛â€ã€ž] ()[([{〈《「『ã€ã€”〖〘〚“ã€]() } +spacing.basic.1.1 = { insert, kern = -.5 } +spacing.basic.1.2 = { insert, penalty = 0 } +spacing.basic.1.3 = { insert, kern = .5 } +spacing.basic.1.4 = { insert, norule = -.5 0 0 } +spacing.basic.1.5 = {} +spacing.basic.2.0 = { [ã€ã€‚,.・:;!?)]ï½ã€‰ã€‹ã€ã€ã€‘〕〗〙〛â€ã€ž] ()[ã€ã€‚,.・:!?)]ï½ã€‰ã€‹ã€ã€ã€‘〕〗〙〛â€ã€ž]() } +spacing.basic.2.1 = { insert, kern= -.5, step = -1 } +spacing.basic.2.2 = {} +spacing.basic.3.0 = { [([{〈《「『ã€ã€”〖〘〚“ã€] ()[([{〈《「『ã€ã€”〖〘〚“ã€]() } +spacing.basic.3.1 = { insert, kern = -.5, step =- 1 } +spacing.basic.3.2 = {} +; +spacing.basic.4.0 = { [ã€ã€‚,.・:;!?)]ï½ã€‰ã€‹ã€ã€ã€‘〕〗〙〛â€ã€ž] ()[{a}]() } +spacing.basic.4.1 = { insert, kern = -.5, step = -1 } +spacing.basic.4.2 = { insert, penalty = 0 } +spacing.basic.4.3 = { insert, kern = .5 } +spacing.basic.4.4 = {} +spacing.basic.5.0 = { [{a}] ()[([{〈《「『ã€ã€”〖〘〚“ã€]() } +spacing.basic.5.1 = { insert, penalty = 0 } +spacing.basic.5.2 = { insert, kern = .5 } +spacing.basic.5.3 = { insert, norule = -.5 0 0 } +spacing.basic.5.4 = {} +spacing.basic.6.0 = { ^()[([{〈《「『ã€ã€”〖〘〚“ã€]() } +spacing.basic.6.1 = { insert, kern = -.5 } +spacing.basic.6.2 = {} diff --git a/Master/texmf-dist/tex/generic/babel/luababel.def b/Master/texmf-dist/tex/generic/babel/luababel.def index 82edeff91f7..ea44591b6cb 100644 --- a/Master/texmf-dist/tex/generic/babel/luababel.def +++ b/Master/texmf-dist/tex/generic/babel/luababel.def @@ -7,7 +7,7 @@ %% babel.dtx (with options: `luatex') %% %% -%% Copyright (C) 2012-2024 Javier Bezos and Johannes L. Braams. +%% Copyright (C) 2012-2025 Javier Bezos and Johannes L. Braams. %% Copyright (C) 1989-2012 Johannes L. Braams and %% any individual authors listed elsewhere in this file. %% All rights reserved. @@ -32,7 +32,7 @@ %% and covered by LPPL is defined by the unpacking scripts (with %% extension |.ins|) which are part of the distribution. %% - +\directlua{ Babel = Babel or {} } % DL2 \ifx\AddBabelHook\@undefined % When plain.def, babel.sty starts \bbl@trace{Read language.dat} \ifx\bbl@readstream\@undefined @@ -178,8 +178,6 @@ {\expandafter\expandafter\expandafter\bbl@luapatterns \csname bbl@hyphendata@\the\language\endcsname}}{}} \endinput\fi - % Here ends \ifx\AddBabelHook\@undefined - % A few lines are only read by hyphen.cfg \ifx\DisableBabelHook\@undefined \AddBabelHook{luatex}{everylanguage}{% \def\process@language##1##2##3{% @@ -195,16 +193,13 @@ {\expandafter\expandafter\expandafter\bbl@tempb \csname bbl@hyphendata@\the\language\endcsname}} \endinput\fi - % Here stops reading code for hyphen.cfg - % The following is read the 2nd time it's loaded - % First, global declarations for lua -\begingroup % TODO - to a lua file +\begingroup % TODO - to a lua file % DL3 \catcode`\%=12 \catcode`\'=12 \catcode`\"=12 \catcode`\:=12 \directlua{ - Babel = Babel or {} + Babel.locale_props = Babel.locale_props or {} function Babel.lua_error(e, a) tex.print([[\noexpand\csname bbl@error\endcsname{]] .. e .. '}{' .. (a or '') .. '}{}{}') @@ -229,6 +224,40 @@ callback.register('process_input_buffer',Babel.callback) end end + function Babel.str_to_nodes(fn, matches, base) + local n, head, last + if fn == nil then return nil end + for s in string.utfvalues(fn(matches)) do + if base.id == 7 then + base = base.replace + end + n = node.copy(base) + n.char = s + if not head then + head = n + else + last.next = n + end + last = n + end + return head + end + Babel.linebreaking = Babel.linebreaking or {} + Babel.linebreaking.before = {} + Babel.linebreaking.after = {} + Babel.locale = {} + function Babel.linebreaking.add_before(func, pos) + tex.print([[\noexpand\csname bbl@luahyphenate\endcsname]]) + if pos == nil then + table.insert(Babel.linebreaking.before, func) + else + table.insert(Babel.linebreaking.before, pos, func) + end + end + function Babel.linebreaking.add_after(func) + tex.print([[\noexpand\csname bbl@luahyphenate\endcsname]]) + table.insert(Babel.linebreaking.after, func) + end function Babel.addpatterns(pp, lg) local lg = lang.new(lg) local pats = lang.patterns(lg) or '' @@ -295,13 +324,13 @@ str:find( [[\string\babelsublr]] ) then str = str:gsub( [[\string\babelsublr%s*(%b{})]], function(m) return m:sub(2,-2) end ) - end - return str -end + end + return str + end } \endgroup \ifx\newattribute\@undefined\else % Test for plain - \newattribute\bbl@attr@locale + \newattribute\bbl@attr@locale % DL4 \directlua{ Babel.attr_locale = luatexbase.registernumber'bbl@attr@locale' } \AddBabelHook{luatex}{beforeextras}{% \setattribute\bbl@attr@locale\localeid} @@ -379,28 +408,8 @@ end {\csname bbl@patterns@\bbl@tempa\endcsname\space}% #2}}}% \fi}} -\directlua{ - Babel = Babel or {} - Babel.linebreaking = Babel.linebreaking or {} - Babel.linebreaking.before = {} - Babel.linebreaking.after = {} - Babel.locale = {} % Free to use, indexed by \localeid - function Babel.linebreaking.add_before(func, pos) - tex.print([[\noexpand\csname bbl@luahyphenate\endcsname]]) - if pos == nil then - table.insert(Babel.linebreaking.before, func) - else - table.insert(Babel.linebreaking.before, pos, func) - end - end - function Babel.linebreaking.add_after(func) - tex.print([[\noexpand\csname bbl@luahyphenate\endcsname]]) - table.insert(Babel.linebreaking.after, func) - end -} \def\bbl@intraspace#1 #2 #3\@@{% \directlua{ - Babel = Babel or {} Babel.intraspaces = Babel.intraspaces or {} Babel.intraspaces['\csname bbl@sbcp@\languagename\endcsname'] = % {b = #1, p = #2, m = #3} @@ -409,7 +418,6 @@ end }} \def\bbl@intrapenalty#1\@@{% \directlua{ - Babel = Babel or {} Babel.intrapenalties = Babel.intrapenalties or {} Babel.intrapenalties['\csname bbl@sbcp@\languagename\endcsname'] = #1 Babel.locale_props[\the\localeid].intrapenalty = #1 @@ -422,7 +430,6 @@ end \gdef\bbl@seaintraspace{& \let\bbl@seaintraspace\relax \directlua{ - Babel = Babel or {} Babel.sea_enabled = true Babel.sea_ranges = Babel.sea_ranges or {} function Babel.set_chranges (script, chrng) @@ -445,7 +452,7 @@ end quad = font.getfont(last_char.font).size for lg, rg in pairs(sea_ranges) do if last_char.char > rg[1] and last_char.char < rg[2] then - lg = lg:sub(1, 4) &% Remove trailing number of, eg, Cyrl1 + lg = lg:sub(1, 4) &% Remove trailing number of, e.g., Cyrl1 local intraspace = Babel.intraspaces[lg] local intrapenalty = Babel.intrapenalties[lg] local n @@ -471,7 +478,6 @@ end \gdef\bbl@cjkintraspace{% \let\bbl@cjkintraspace\relax \directlua{ - Babel = Babel or {} require('babel-data-cjk.lua') Babel.cjk_enabled = true function Babel.cjk_linebreak(head) @@ -488,7 +494,7 @@ end local LOCALE = node.get_attribute(item, Babel.attr_locale) - local props = Babel.locale_props[LOCALE] + local props = Babel.locale_props[LOCALE] or {} local class = Babel.cjk_class[item.char].c @@ -496,8 +502,10 @@ end class = props.cjk_quotes[item.char] end - if class == 'cp' then class = 'cl' end % )] as CL - if class == 'id' then class = 'I' end + if class == 'cp' then class = 'cl' % )] as CL + elseif class == 'id' then class = 'I' + elseif class == 'cj' then class = 'I' % loose + end local br = 0 if class and last_class and Babel.cjk_breaks[last_class][class] then @@ -544,15 +552,18 @@ end func(head) end end + lang.hyphenate(head) if Babel.cjk_enabled then Babel.cjk_linebreak(head) end - lang.hyphenate(head) if Babel.linebreaking.after then for k, func in ipairs(Babel.linebreaking.after) do func(head) end end + if Babel.set_hboxed then + Babel.set_hboxed(head) + end if Babel.sea_enabled then Babel.sea_disc_to_space(head) end @@ -568,7 +579,6 @@ end \ifin@ % cjk \bbl@cjkintraspace \directlua{ - Babel = Babel or {} Babel.locale_props = Babel.locale_props or {} Babel.locale_props[\the\localeid].linebreak = 'c' }% @@ -580,7 +590,6 @@ end \bbl@seaintraspace \bbl@exp{\\\bbl@intraspace\bbl@cl{intsp}\\\@@}% \directlua{ - Babel = Babel or {} Babel.sea_ranges = Babel.sea_ranges or {} Babel.set_chranges('\bbl@cl{sbcp}', '\bbl@cl{chrng}') @@ -844,35 +853,36 @@ end } \endgroup \fi\fi % ends Arabic just block: \ifnum\bbl@bidimode>100... +\def\bbl@scr@node@list{% + ,Armenian,Coptic,Cyrillic,Georgian,,Glagolitic,Gothic,% + ,Greek,Latin,Old Church Slavonic Cyrillic,} +\ifnum\bbl@bidimode=102 % bidi-r + \bbl@add\bbl@scr@node@list{Arabic,Hebrew,Syriac} +\fi +\def\bbl@set@renderer{% + \bbl@xin@{\bbl@cl{sname}}{\bbl@scr@node@list}% + \ifin@ + \let\bbl@unset@renderer\relax + \else + \bbl@exp{% + \def\\\bbl@unset@renderer{% + \def\<g__fontspec_default_fontopts_clist>{% + \[g__fontspec_default_fontopts_clist]}}% + \def\<g__fontspec_default_fontopts_clist>{% + Renderer=Harfbuzz,\[g__fontspec_default_fontopts_clist]}}% + \fi} +\bbl@trace{Font handling with fontspec} \AddBabelHook{babel-fontspec}{afterextras}{\bbl@switchfont} \AddBabelHook{babel-fontspec}{beforestart}{\bbl@ckeckstdfonts} \DisableBabelHook{babel-fontspec} -\bbl@trace{Font handling with fontspec} -\ifx\ExplSyntaxOn\@undefined\else - \def\bbl@fs@warn@nx#1#2{% \bbl@tempfs is the original macro - \in@{,#1,}{,no-script,language-not-exist,}% - \ifin@\else\bbl@tempfs@nx{#1}{#2}\fi} - \def\bbl@fs@warn@nxx#1#2#3{% - \in@{,#1,}{,no-script,language-not-exist,}% - \ifin@\else\bbl@tempfs@nxx{#1}{#2}{#3}\fi} - \def\bbl@loadfontspec{% - \let\bbl@loadfontspec\relax - \ifx\fontspec\@undefined - \usepackage{fontspec}% - \fi}% -\fi \@onlypreamble\babelfont \newcommand\babelfont[2][]{% 1=langs/scripts 2=fam - \bbl@foreach{#1}{% - \expandafter\ifx\csname date##1\endcsname\relax - \IfFileExists{babel-##1.tex}% - {\babelprovide{##1}}% - {}% - \fi}% + \ifx\fontspec\@undefined + \usepackage{fontspec}% + \fi + \EnableBabelHook{babel-fontspec}% \edef\bbl@tempa{#1}% \def\bbl@tempb{#2}% Used by \bbl@bblfont - \bbl@loadfontspec - \EnableBabelHook{babel-fontspec}% Just calls \bbl@switchfont \bbl@bblfont} \newcommand\bbl@bblfont[2][]{% 1=features 2=fontname, @font=rm|sf|tt \bbl@ifunset{\bbl@tempb family}% @@ -886,7 +896,7 @@ end \let\<bbl@\bbl@tempb dflt@\languagename>\<bbl@\bbl@tempb dflt@>% \\\bbl@font@set\<bbl@\bbl@tempb dflt@\languagename>% \<\bbl@tempb default>\<\bbl@tempb family>}}% - {\bbl@foreach\bbl@tempa{% ie bbl@rmdflt@lang / *scrt + {\bbl@foreach\bbl@tempa{% i.e., bbl@rmdflt@lang / *scrt \bbl@csarg\def{\bbl@tempb dflt@##1}{<>{#1}{#2}}}}}% \def\bbl@providefam#1{% \bbl@exp{% @@ -915,7 +925,7 @@ end {}}% \gdef\bbl@switchfont{% \bbl@ifunset{bbl@lsys@\languagename}{\bbl@provide@lsys{\languagename}}{}% - \bbl@exp{% eg Arabic -> arabic + \bbl@exp{% e.g., Arabic -> arabic \lowercase{\edef\\\bbl@tempa{\bbl@cl{sname}}}}% \bbl@foreach\bbl@font@fams{% \bbl@ifunset{bbl@##1dflt@\languagename}% (1) language? @@ -971,13 +981,13 @@ end \endgroup} \fi \fi -\def\bbl@font@set#1#2#3{% eg \bbl@rmdflt@lang \rmdefault \rmfamily +\def\bbl@font@set#1#2#3{% e.g., \bbl@rmdflt@lang \rmdefault \rmfamily \bbl@xin@{<>}{#1}% \ifin@ \bbl@exp{\\\bbl@fontspec@set\\#1\expandafter\@gobbletwo#1\\#3}% \fi \bbl@exp{% 'Unprotected' macros return prev values - \def\\#2{#1}% eg, \rmdefault{\bbl@rmdflt@lang} + \def\\#2{#1}% e.g., \rmdefault{\bbl@rmdflt@lang} \\\bbl@ifsamestring{#2}{\f@family}% {\\#3% \\\bbl@ifsamestring{\f@series}{\bfdefault}{\\\bfseries}{}% @@ -988,28 +998,23 @@ end \edef\bbl@tempb{\bbl@stripslash#4/}% Catcodes hack (better pass it). \bbl@exp{\\\bbl@replace\\\bbl@tempb{\bbl@stripslash\family/}{}}% \let\bbl@mapselect\relax - \let\bbl@temp@fam#4% eg, '\rmfamily', to be restored below + \let\bbl@temp@fam#4% e.g., '\rmfamily', to be restored below \let#4\@empty % Make sure \renewfontfamily is valid + \bbl@set@renderer \bbl@exp{% - \let\\\bbl@temp@pfam\<\bbl@stripslash#4\space>% eg, '\rmfamily ' + \let\\\bbl@temp@pfam\<\bbl@stripslash#4\space>% e.g., '\rmfamily ' \<keys_if_exist:nnF>{fontspec-opentype}{Script/\bbl@cl{sname}}% {\\\newfontscript{\bbl@cl{sname}}{\bbl@cl{sotf}}}% \<keys_if_exist:nnF>{fontspec-opentype}{Language/\bbl@cl{lname}}% {\\\newfontlanguage{\bbl@cl{lname}}{\bbl@cl{lotf}}}% - \let\\\bbl@tempfs@nx\<__fontspec_warning:nx>% - \let\<__fontspec_warning:nx>\\\bbl@fs@warn@nx - \let\\\bbl@tempfs@nxx\<__fontspec_warning:nxx>% - \let\<__fontspec_warning:nxx>\\\bbl@fs@warn@nxx \\\renewfontfamily\\#4% [\bbl@cl{lsys},% xetex removes unknown features :-( \ifcase\bbl@engine\or RawFeature={family=\bbl@tempb},\fi - #2]}{#3}% ie \bbl@exp{..}{#3} - \bbl@exp{% - \let\<__fontspec_warning:nx>\\\bbl@tempfs@nx - \let\<__fontspec_warning:nxx>\\\bbl@tempfs@nxx}% + #2]}{#3}% i.e., \bbl@exp{..}{#3} + \bbl@unset@renderer \begingroup #4% - \xdef#1{\f@family}% eg, \bbl@rmdflt@lang{FreeSerif(0)} + \xdef#1{\f@family}% e.g., \bbl@rmdflt@lang{FreeSerif(0)} \endgroup % TODO. Find better tests: \bbl@xin@{\string>\string s\string s\string u\string b\string*}% {\expandafter\meaning\csname TU/#1/bx/sc\endcsname}% @@ -1027,7 +1032,7 @@ end \def\bbl@font@rst#1#2#3#4{% \bbl@csarg\def{famrst@#4}{\bbl@font@set{#1}#2#3}} \def\bbl@font@fams{rm,sf,tt} -\directlua{ +\directlua{% DL6 Babel.script_blocks = { ['dflt'] = {}, ['Arab'] = {{0x0600, 0x06FF}, {0x08A0, 0x08FF}, {0x0750, 0x077F}, @@ -1195,7 +1200,7 @@ end Babel.chr_to_loc[\the\count@] = \bbl@ifblank{#1}{-1000}{\the\bbl@cs{id@@#1}}\space }} -\directlua{ +\directlua{% DL7 Babel.nohyphenation = \the\l@nohyphenation } \begingroup @@ -1223,23 +1228,34 @@ end {\bbl@add@list\babeltempb{nil}}&% {\directlua{ local rep = [=[##1]=] + local three_args = '%s*=%s*([%-%d%.%a{}|]+)%s+([%-%d%.%a{}|]+)%s+([%-%d%.%a{}|]+)' + &% Numeric passes directly: kern, penalty... rep = rep:gsub('^%s*(remove)%s*$', 'remove = true') rep = rep:gsub('^%s*(insert)%s*,', 'insert = true, ') rep = rep:gsub('^%s*(after)%s*,', 'after = true, ') rep = rep:gsub('(string)%s*=%s*([^%s,]*)', Babel.capture_func) rep = rep:gsub('node%s*=%s*(%a+)%s*(%a*)', Babel.capture_node) - rep = rep:gsub(&% - '(norule)%s*=%s*([%-%d%.]+)%s+([%-%d%.]+)%s+([%-%d%.]+)', - 'norule = {' .. '%2, %3, %4' .. '}') + rep = rep:gsub( '(norule)' .. three_args, + 'norule = {' .. '%2, %3, %4' .. '}') if #1 == 0 or #1 == 2 then - rep = rep:gsub(&% - '(space)%s*=%s*([%-%d%.]+)%s+([%-%d%.]+)%s+([%-%d%.]+)', + rep = rep:gsub( '(space)' .. three_args, 'space = {' .. '%2, %3, %4' .. '}') - rep = rep:gsub(&% - '(spacefactor)%s*=%s*([%-%d%.]+)%s+([%-%d%.]+)%s+([%-%d%.]+)', + rep = rep:gsub( '(spacefactor)' .. three_args, 'spacefactor = {' .. '%2, %3, %4' .. '}') rep = rep:gsub('(kashida)%s*=%s*([^%s,]*)', Babel.capture_kashida) - else + &% Transform values + rep, n = rep:gsub( '{([%a%-%.]+)|([%a%_%.]+)}', + function(v,d) + return string.format ( + '{\the\csname bbl@id@@#3\endcsname,"%s",%s}', + v, + load( 'return Babel.locale_props'.. + '[\the\csname bbl@id@@#3\endcsname].' .. d)() ) + end ) + rep, n = rep:gsub( '{([%a%-%.]+)|([%-%d%.]+)}', + '{\the\csname bbl@id@@#3\endcsname,"%1",%2}') + end + if #1 == 1 then rep = rep:gsub( '(no)%s*=%s*([^%s,]*)', Babel.capture_func) rep = rep:gsub( '(pre)%s*=%s*([^%s,]*)', Babel.capture_func) rep = rep:gsub( '(post)%s*=%s*([^%s,]*)', Babel.capture_func) @@ -1248,8 +1264,8 @@ end }}}&% \bbl@foreach\babeltempb{&% \bbl@forkv{{##1}}{&% - \in@{,####1,}{,nil,step,data,remove,insert,string,no,pre,&% - no,post,penalty,kashida,space,spacefactor,kern,node,after,}&% + \in@{,####1,}{,nil,step,data,remove,insert,string,no,pre,no,&% + post,penalty,kashida,space,spacefactor,kern,node,after,norule,}&% \ifin@\else \bbl@error{bad-transform-option}{####1}{}{}&% \fi}}&% @@ -1365,23 +1381,31 @@ end {\bbl@csarg\unsetattribute{ATR@#1@\languagename @}}} \def\bbl@activateposthyphen{% \let\bbl@activateposthyphen\relax + \ifx\bbl@attr@hboxed\@undefined + \newattribute\bbl@attr@hboxed + \fi \directlua{ require('babel-transforms.lua') Babel.linebreaking.add_after(Babel.post_hyphenate_replace) }} \def\bbl@activateprehyphen{% \let\bbl@activateprehyphen\relax + \ifx\bbl@attr@hboxed\@undefined + \newattribute\bbl@attr@hboxed + \fi \directlua{ require('babel-transforms.lua') Babel.linebreaking.add_before(Babel.pre_hyphenate_replace) }} +\newcommand\SetTransformValue[3]{% + \directlua{ + Babel.locale_props[\the\csname bbl@id@@#1\endcsname].vars["#2"] = #3 + }} \newcommand\localeprehyphenation[1]{% \directlua{ Babel.string_prehyphenation([==[#1]==], \the\localeid) }} \def\bbl@activate@preotf{% \let\bbl@activate@preotf\relax % only once \directlua{ - Babel = Babel or {} - % function Babel.pre_otfload_v(head) if Babel.numbers and Babel.digits_mapped then head = Babel.numbers(head) @@ -1392,7 +1416,7 @@ end return head end % - function Babel.pre_otfload_h(head, gc, sz, pt, dir) + function Babel.pre_otfload_h(head, gc, sz, pt, dir) %%% TODO if Babel.numbers and Babel.digits_mapped then head = Babel.numbers(head) end @@ -1415,7 +1439,7 @@ end 'luaotfload.node_processor') or nil) }} \breakafterdirmode=1 -\ifnum\bbl@bidimode>\@ne % Any bidi= except default=1 +\ifnum\bbl@bidimode>\@ne % Any bidi= except default (=1) \let\bbl@beforeforeign\leavevmode \AtEndOfPackage{\EnableBabelHook{babel-bidi}} \RequirePackage{luatexbase} @@ -1426,6 +1450,9 @@ end require('babel-bidi-basic.lua') \or require('babel-bidi-basic-r.lua') + table.insert(Babel.ranges, {0xE000, 0xF8FF, 'on'}) + table.insert(Babel.ranges, {0xF0000, 0xFFFFD, 'on'}) + table.insert(Babel.ranges, {0x100000, 0x10FFFD, 'on'}) \fi} \newattribute\bbl@attr@dir \directlua{ Babel.attr_dir = luatexbase.registernumber'bbl@attr@dir' } @@ -1439,6 +1466,8 @@ end tex.sprint('0') elseif tex.#1dir == 'TRT' then tex.sprint('1') + else + tex.sprint('0') end}} \def\bbl@setluadir#1#2#3{% 1=text/par.. 2=\textdir.. 3=0 lr/1 rl \ifcase#3\relax @@ -1493,6 +1522,12 @@ end end luatexbase.add_to_callback("hpack_filter", Babel.math_box_dir, "Babel.math_box_dir", 0) + if Babel.unset_atdir then + luatexbase.add_to_callback("pre_linebreak_filter", Babel.unset_atdir, + "Babel.unset_atdir") + luatexbase.add_to_callback("hpack_filter", Babel.unset_atdir, + "Babel.unset_atdir") + end }}% \fi \DeclareRobustCommand\localebox[1]{% @@ -1638,6 +1673,115 @@ end \fi\fi} \fi \def\bbl@provide@extra#1{% + % == onchar == + \ifx\bbl@KVP@onchar\@nnil\else + \bbl@luahyphenate + \bbl@exp{% + \\\AddToHook{env/document/before}{{\\\select@language{#1}{}}}}% + \directlua{ + if Babel.locale_mapped == nil then + Babel.locale_mapped = true + Babel.linebreaking.add_before(Babel.locale_map, 1) + Babel.loc_to_scr = {} + Babel.chr_to_loc = Babel.chr_to_loc or {} + end + Babel.locale_props[\the\localeid].letters = false + }% + \bbl@xin@{ letters }{ \bbl@KVP@onchar\space}% + \ifin@ + \directlua{ + Babel.locale_props[\the\localeid].letters = true + }% + \fi + \bbl@xin@{ ids }{ \bbl@KVP@onchar\space}% + \ifin@ + \ifx\bbl@starthyphens\@undefined % Needed if no explicit selection + \AddBabelHook{babel-onchar}{beforestart}{{\bbl@starthyphens}}% + \fi + \bbl@exp{\\\bbl@add\\\bbl@starthyphens + {\\\bbl@patterns@lua{\languagename}}}% + \directlua{ + if Babel.script_blocks['\bbl@cl{sbcp}'] then + Babel.loc_to_scr[\the\localeid] = Babel.script_blocks['\bbl@cl{sbcp}'] + Babel.locale_props[\the\localeid].lg = \the\@nameuse{l@\languagename}\space + end + }% + \fi + \bbl@xin@{ fonts }{ \bbl@KVP@onchar\space}% + \ifin@ + \bbl@ifunset{bbl@lsys@\languagename}{\bbl@provide@lsys{\languagename}}{}% + \bbl@ifunset{bbl@wdir@\languagename}{\bbl@provide@dirs{\languagename}}{}% + \directlua{ + if Babel.script_blocks['\bbl@cl{sbcp}'] then + Babel.loc_to_scr[\the\localeid] = + Babel.script_blocks['\bbl@cl{sbcp}'] + end}% + \ifx\bbl@mapselect\@undefined % TODO. almost the same as mapfont + \AtBeginDocument{% + \bbl@patchfont{{\bbl@mapselect}}% + {\selectfont}}% + \def\bbl@mapselect{% + \let\bbl@mapselect\relax + \edef\bbl@prefontid{\fontid\font}}% + \def\bbl@mapdir##1{% + \begingroup + \setbox\z@\hbox{% Force text mode + \def\languagename{##1}% + \let\bbl@ifrestoring\@firstoftwo % To avoid font warning + \bbl@switchfont + \ifnum\fontid\font>\z@ % A hack, for the pgf nullfont hack + \directlua{ + Babel.locale_props[\the\csname bbl@id@@##1\endcsname]% + ['/\bbl@prefontid'] = \fontid\font\space}% + \fi}% + \endgroup}% + \fi + \bbl@exp{\\\bbl@add\\\bbl@mapselect{\\\bbl@mapdir{\languagename}}}% + \fi + % TODO - catch non-valid values + \fi + % == mapfont == + % For bidi texts, to switch the font based on direction + \ifx\bbl@KVP@mapfont\@nnil\else + \bbl@ifsamestring{\bbl@KVP@mapfont}{direction}{}% + {\bbl@error{unknown-mapfont}{}{}{}}% + \bbl@ifunset{bbl@lsys@\languagename}{\bbl@provide@lsys{\languagename}}{}% + \bbl@ifunset{bbl@wdir@\languagename}{\bbl@provide@dirs{\languagename}}{}% + \ifx\bbl@mapselect\@undefined % TODO. See onchar. + \AtBeginDocument{% + \bbl@patchfont{{\bbl@mapselect}}% + {\selectfont}}% + \def\bbl@mapselect{% + \let\bbl@mapselect\relax + \edef\bbl@prefontid{\fontid\font}}% + \def\bbl@mapdir##1{% + {\def\languagename{##1}% + \let\bbl@ifrestoring\@firstoftwo % avoid font warning + \bbl@switchfont + \directlua{Babel.fontmap + [\the\csname bbl@wdir@##1\endcsname]% + [\bbl@prefontid]=\fontid\font}}}% + \fi + \bbl@exp{\\\bbl@add\\\bbl@mapselect{\\\bbl@mapdir{\languagename}}}% + \fi + % == Line breaking: CJK quotes == + \ifcase\bbl@engine\or + \bbl@xin@{/c}{/\bbl@cl{lnbrk}}% + \ifin@ + \bbl@ifunset{bbl@quote@\languagename}{}% + {\directlua{ + Babel.locale_props[\the\localeid].cjk_quotes = {} + local cs = 'op' + for c in string.utfvalues(% + [[\csname bbl@quote@\languagename\endcsname]]) do + if Babel.cjk_characters[c].c == 'qu' then + Babel.locale_props[\the\localeid].cjk_quotes[c] = cs + end + cs = ( cs == 'op') and 'cl' or 'op' + end + }}% + \fi + \fi % == Counters: mapdigits == % Native digits \ifx\bbl@KVP@mapdigits\@nnil\else @@ -1645,7 +1789,6 @@ end {\RequirePackage{luatexbase}% \bbl@activate@preotf \directlua{ - Babel = Babel or {} %%% -> presets in luababel Babel.digits_mapped = true Babel.digits = Babel.digits or {} Babel.digits[\the\localeid] = @@ -1682,6 +1825,21 @@ end \bbl@replace\bbl@tempa{transforms.}{}% \bbl@carg\bbl@transforms{babel\bbl@tempa}{##2}{##3}% \fi}% + \bbl@exp{% + \\\bbl@ifblank{\bbl@cl{dgnat}}% + {\let\\\bbl@tempa\relax}% + {\def\\\bbl@tempa{% + \\\bbl@elt{transforms.prehyphenation}% + {digits.native.1.0}{([0-9])}% + \\\bbl@elt{transforms.prehyphenation}% + {digits.native.1.1}{string={1\string|0123456789\string|\bbl@cl{dgnat}}}}}}% + \ifx\bbl@tempa\relax\else + \toks@\expandafter\expandafter\expandafter{% + \csname bbl@inidata@\languagename\endcsname}% + \bbl@csarg\edef{inidata@\languagename}{% + \unexpanded\expandafter{\bbl@tempa}% + \the\toks@}% + \fi \csname bbl@inidata@\languagename\endcsname \bbl@release@transforms\relax % \relax closes the last item. \fi} @@ -1702,7 +1860,9 @@ end {\chardef\bbl@tabular@mode\z@}% {\chardef\bbl@tabular@mode\@ne}}% Mixed, with LTR cols \ifnum\bbl@bidimode>\@ne % Any lua bidi= except default=1 - \ifcase\bbl@tabular@mode\or % 1 + % Redefine: vrules mess up dirs. TODO: why? + \def\@arstrut{\relax\copy\@arstrutbox}% + \ifcase\bbl@tabular@mode\or % 1 = Mixed - default \let\bbl@parabefore\relax \AddToHook{para/before}{\bbl@parabefore} \AtBeginDocument{% @@ -1727,7 +1887,7 @@ end {\\\do@row@strut\<fi>}{\\\do@row@strut\<fi>\egroup}}}% {}}% \fi}% - \or % 2 + \or % 2 = All RTL - tabular \let\bbl@parabefore\relax \AddToHook{para/before}{\bbl@parabefore}% \AtBeginDocument{% @@ -1753,9 +1913,9 @@ end \ifnum\bbl@bidimode>\z@ % Any bidi= \def\bbl@nextfake#1{% non-local changes, use always inside a group! \bbl@exp{% - \def\\\bbl@insidemath{0}% \mathdir\the\bodydir #1% Once entered in math, set boxes to restore values + \def\\\bbl@insidemath{0}% \<ifmmode>% \everyvbox{% \the\everyvbox @@ -1868,6 +2028,7 @@ end \AddToHook{env/tikzpicture/begin}{\bbl@pictsetdir\tw@}% \bbl@add\tikz@atbegin@node{\bbl@pictresetdir}% \bbl@sreplace\tikz{\begingroup}{\begingroup\bbl@pictsetdir\tw@}% + \bbl@sreplace\tikzpicture{\begingroup}{\begingroup\bbl@pictsetdir\tw@}% \fi \ifx\tcolorbox\@undefined\else \def\tcb@drawing@env@begin{% diff --git a/Master/texmf-dist/tex/generic/babel/nil.ldf b/Master/texmf-dist/tex/generic/babel/nil.ldf index 346399ca4f2..c6a0596c574 100644 --- a/Master/texmf-dist/tex/generic/babel/nil.ldf +++ b/Master/texmf-dist/tex/generic/babel/nil.ldf @@ -7,7 +7,7 @@ %% babel.dtx (with options: `nil') %% %% -%% Copyright (C) 2012-2024 Javier Bezos and Johannes L. Braams. +%% Copyright (C) 2012-2025 Javier Bezos and Johannes L. Braams. %% Copyright (C) 1989-2012 Johannes L. Braams and %% any individual authors listed elsewhere in this file. %% All rights reserved. @@ -32,8 +32,7 @@ %% and covered by LPPL is defined by the unpacking scripts (with %% extension |.ins|) which are part of the distribution. %% - -\ProvidesLanguage{nil}[2024/06/02 v24.6 Nil language] +\ProvidesLanguage{nil}[2025/02/14 v25.4 Nil language] \LdfInit{nil}{datenil} \ifx\l@nil\@undefined \newlanguage\l@nil diff --git a/Master/texmf-dist/tex/generic/babel/plain.def b/Master/texmf-dist/tex/generic/babel/plain.def index f5f85e202d9..f278a21aaba 100644 --- a/Master/texmf-dist/tex/generic/babel/plain.def +++ b/Master/texmf-dist/tex/generic/babel/plain.def @@ -7,7 +7,7 @@ %% babel.dtx (with options: `plain') %% %% -%% Copyright (C) 2012-2024 Javier Bezos and Johannes L. Braams. +%% Copyright (C) 2012-2025 Javier Bezos and Johannes L. Braams. %% Copyright (C) 1989-2012 Johannes L. Braams and %% any individual authors listed elsewhere in this file. %% All rights reserved. @@ -32,7 +32,6 @@ %% and covered by LPPL is defined by the unpacking scripts (with %% extension |.ins|) which are part of the distribution. %% - \input babel.def \endinput %% diff --git a/Master/texmf-dist/tex/generic/babel/switch.def b/Master/texmf-dist/tex/generic/babel/switch.def index 13f56013121..ec58318b70b 100644 --- a/Master/texmf-dist/tex/generic/babel/switch.def +++ b/Master/texmf-dist/tex/generic/babel/switch.def @@ -7,7 +7,7 @@ %% babel.dtx (with options: `kernel') %% %% -%% Copyright (C) 2012-2024 Javier Bezos and Johannes L. Braams. +%% Copyright (C) 2012-2025 Javier Bezos and Johannes L. Braams. %% Copyright (C) 1989-2012 Johannes L. Braams and %% any individual authors listed elsewhere in this file. %% All rights reserved. @@ -32,7 +32,6 @@ %% and covered by LPPL is defined by the unpacking scripts (with %% extension |.ins|) which are part of the distribution. %% - \let\bbl@onlyswitch\@empty \input babel.def \let\bbl@onlyswitch\@undefined diff --git a/Master/texmf-dist/tex/generic/babel/txtbabel.def b/Master/texmf-dist/tex/generic/babel/txtbabel.def index 70ae95c5d4b..28f5fe332b0 100644 --- a/Master/texmf-dist/tex/generic/babel/txtbabel.def +++ b/Master/texmf-dist/tex/generic/babel/txtbabel.def @@ -7,7 +7,7 @@ %% babel.dtx (with options: `texxet') %% %% -%% Copyright (C) 2012-2024 Javier Bezos and Johannes L. Braams. +%% Copyright (C) 2012-2025 Javier Bezos and Johannes L. Braams. %% Copyright (C) 1989-2012 Johannes L. Braams and %% any individual authors listed elsewhere in this file. %% All rights reserved. @@ -32,7 +32,6 @@ %% and covered by LPPL is defined by the unpacking scripts (with %% extension |.ins|) which are part of the distribution. %% - \providecommand\bbl@provide@intraspace{} \bbl@trace{Redefinitions for bidi layout} \def\bbl@sspre@caption{% TODO: Unused! diff --git a/Master/texmf-dist/tex/generic/babel/xebabel.def b/Master/texmf-dist/tex/generic/babel/xebabel.def index 9775e235b39..24559221338 100644 --- a/Master/texmf-dist/tex/generic/babel/xebabel.def +++ b/Master/texmf-dist/tex/generic/babel/xebabel.def @@ -7,7 +7,7 @@ %% babel.dtx (with options: `xetex') %% %% -%% Copyright (C) 2012-2024 Javier Bezos and Johannes L. Braams. +%% Copyright (C) 2012-2025 Javier Bezos and Johannes L. Braams. %% Copyright (C) 1989-2012 Johannes L. Braams and %% any individual authors listed elsewhere in this file. %% All rights reserved. @@ -32,7 +32,6 @@ %% and covered by LPPL is defined by the unpacking scripts (with %% extension |.ins|) which are part of the distribution. %% - \def\BabelStringsDefault{unicode} \let\xebbl@stop\relax \AddBabelHook{xetex}{encodedcommands}{% @@ -94,35 +93,20 @@ \fi}% \fi} \ifx\DisableBabelHook\@undefined\endinput\fi %%%% TODO: why +\let\bbl@set@renderer\relax +\let\bbl@unset@renderer\relax +\bbl@trace{Font handling with fontspec} \AddBabelHook{babel-fontspec}{afterextras}{\bbl@switchfont} \AddBabelHook{babel-fontspec}{beforestart}{\bbl@ckeckstdfonts} \DisableBabelHook{babel-fontspec} -\bbl@trace{Font handling with fontspec} -\ifx\ExplSyntaxOn\@undefined\else - \def\bbl@fs@warn@nx#1#2{% \bbl@tempfs is the original macro - \in@{,#1,}{,no-script,language-not-exist,}% - \ifin@\else\bbl@tempfs@nx{#1}{#2}\fi} - \def\bbl@fs@warn@nxx#1#2#3{% - \in@{,#1,}{,no-script,language-not-exist,}% - \ifin@\else\bbl@tempfs@nxx{#1}{#2}{#3}\fi} - \def\bbl@loadfontspec{% - \let\bbl@loadfontspec\relax - \ifx\fontspec\@undefined - \usepackage{fontspec}% - \fi}% -\fi \@onlypreamble\babelfont \newcommand\babelfont[2][]{% 1=langs/scripts 2=fam - \bbl@foreach{#1}{% - \expandafter\ifx\csname date##1\endcsname\relax - \IfFileExists{babel-##1.tex}% - {\babelprovide{##1}}% - {}% - \fi}% + \ifx\fontspec\@undefined + \usepackage{fontspec}% + \fi + \EnableBabelHook{babel-fontspec}% \edef\bbl@tempa{#1}% \def\bbl@tempb{#2}% Used by \bbl@bblfont - \bbl@loadfontspec - \EnableBabelHook{babel-fontspec}% Just calls \bbl@switchfont \bbl@bblfont} \newcommand\bbl@bblfont[2][]{% 1=features 2=fontname, @font=rm|sf|tt \bbl@ifunset{\bbl@tempb family}% @@ -136,7 +120,7 @@ \let\<bbl@\bbl@tempb dflt@\languagename>\<bbl@\bbl@tempb dflt@>% \\\bbl@font@set\<bbl@\bbl@tempb dflt@\languagename>% \<\bbl@tempb default>\<\bbl@tempb family>}}% - {\bbl@foreach\bbl@tempa{% ie bbl@rmdflt@lang / *scrt + {\bbl@foreach\bbl@tempa{% i.e., bbl@rmdflt@lang / *scrt \bbl@csarg\def{\bbl@tempb dflt@##1}{<>{#1}{#2}}}}}% \def\bbl@providefam#1{% \bbl@exp{% @@ -165,7 +149,7 @@ {}}% \gdef\bbl@switchfont{% \bbl@ifunset{bbl@lsys@\languagename}{\bbl@provide@lsys{\languagename}}{}% - \bbl@exp{% eg Arabic -> arabic + \bbl@exp{% e.g., Arabic -> arabic \lowercase{\edef\\\bbl@tempa{\bbl@cl{sname}}}}% \bbl@foreach\bbl@font@fams{% \bbl@ifunset{bbl@##1dflt@\languagename}% (1) language? @@ -221,13 +205,13 @@ \endgroup} \fi \fi -\def\bbl@font@set#1#2#3{% eg \bbl@rmdflt@lang \rmdefault \rmfamily +\def\bbl@font@set#1#2#3{% e.g., \bbl@rmdflt@lang \rmdefault \rmfamily \bbl@xin@{<>}{#1}% \ifin@ \bbl@exp{\\\bbl@fontspec@set\\#1\expandafter\@gobbletwo#1\\#3}% \fi \bbl@exp{% 'Unprotected' macros return prev values - \def\\#2{#1}% eg, \rmdefault{\bbl@rmdflt@lang} + \def\\#2{#1}% e.g., \rmdefault{\bbl@rmdflt@lang} \\\bbl@ifsamestring{#2}{\f@family}% {\\#3% \\\bbl@ifsamestring{\f@series}{\bfdefault}{\\\bfseries}{}% @@ -238,28 +222,23 @@ \edef\bbl@tempb{\bbl@stripslash#4/}% Catcodes hack (better pass it). \bbl@exp{\\\bbl@replace\\\bbl@tempb{\bbl@stripslash\family/}{}}% \let\bbl@mapselect\relax - \let\bbl@temp@fam#4% eg, '\rmfamily', to be restored below + \let\bbl@temp@fam#4% e.g., '\rmfamily', to be restored below \let#4\@empty % Make sure \renewfontfamily is valid + \bbl@set@renderer \bbl@exp{% - \let\\\bbl@temp@pfam\<\bbl@stripslash#4\space>% eg, '\rmfamily ' + \let\\\bbl@temp@pfam\<\bbl@stripslash#4\space>% e.g., '\rmfamily ' \<keys_if_exist:nnF>{fontspec-opentype}{Script/\bbl@cl{sname}}% {\\\newfontscript{\bbl@cl{sname}}{\bbl@cl{sotf}}}% \<keys_if_exist:nnF>{fontspec-opentype}{Language/\bbl@cl{lname}}% {\\\newfontlanguage{\bbl@cl{lname}}{\bbl@cl{lotf}}}% - \let\\\bbl@tempfs@nx\<__fontspec_warning:nx>% - \let\<__fontspec_warning:nx>\\\bbl@fs@warn@nx - \let\\\bbl@tempfs@nxx\<__fontspec_warning:nxx>% - \let\<__fontspec_warning:nxx>\\\bbl@fs@warn@nxx \\\renewfontfamily\\#4% [\bbl@cl{lsys},% xetex removes unknown features :-( \ifcase\bbl@engine\or RawFeature={family=\bbl@tempb},\fi - #2]}{#3}% ie \bbl@exp{..}{#3} - \bbl@exp{% - \let\<__fontspec_warning:nx>\\\bbl@tempfs@nx - \let\<__fontspec_warning:nxx>\\\bbl@tempfs@nxx}% + #2]}{#3}% i.e., \bbl@exp{..}{#3} + \bbl@unset@renderer \begingroup #4% - \xdef#1{\f@family}% eg, \bbl@rmdflt@lang{FreeSerif(0)} + \xdef#1{\f@family}% e.g., \bbl@rmdflt@lang{FreeSerif(0)} \endgroup % TODO. Find better tests: \bbl@xin@{\string>\string s\string s\string u\string b\string*}% {\expandafter\meaning\csname TU/#1/bx/sc\endcsname}% diff --git a/Master/texmf-dist/tex/generic/circuitikz/pgfcirc.defines.tex b/Master/texmf-dist/tex/generic/circuitikz/pgfcirc.defines.tex index 943745bf7a0..b932385e578 100644 --- a/Master/texmf-dist/tex/generic/circuitikz/pgfcirc.defines.tex +++ b/Master/texmf-dist/tex/generic/circuitikz/pgfcirc.defines.tex @@ -1,7 +1,7 @@ -% Copyright 2018-2024 by Romano Giannetti -% Copyright 2015-2024 by Stefan Lindner -% Copyright 2013-2024 by Stefan Erhardt -% Copyright 2007-2024 by Massimo Redaelli +% Copyright 2018-2025 by Romano Giannetti +% Copyright 2015-2025 by Stefan Lindner +% Copyright 2013-2025 by Stefan Erhardt +% Copyright 2007-2025 by Massimo Redaelli % % This file may be distributed and/or modified % @@ -266,6 +266,58 @@ % %>>> +%% check loaded TikZ/pgf version %<<<` +% +% parse the release date, thanks to Skillmon +% https://github.com/pgf-tikz/pgf/issues/1348#issuecomment-2231681032 +% date can be yyyy-mm-dd or (older TikZ) yyyy/mm/dd +\begingroup + \pgfutil@protected\def\parsedate#1% + {% + \afterassignment\parsedate@month + \pgf@circ@count@a=#1\relax + } + \pgfutil@protected\def\parsedate@month#1% + {% + \afterassignment\parsedate@day + \pgf@circ@count@b=% + } + \pgfutil@protected\def\parsedate@day#1% + {% + \afterassignment\parsedate@cleanup + \pgf@circ@count@c=% + } + \def\parsedate@cleanup#1\relax{}% + \parsedate{\pgfrevisiondate}% + \xdef\ctikz@@pgfyear{\the\pgf@circ@count@a}% + \xdef\ctikz@@pgfmonth{\the\pgf@circ@count@b}% + \xdef\ctikz@@pgfday{\the\pgf@circ@count@c}% +\endgroup +% The following code thanks to Skillmon: +% https://tex.stackexchange.com/a/722570/38080 +% modified by romano to check the date +\def\ctikz@@ifpgfafter@auxi#1#2% + {% + \ifnum#1 + \ctikz@@ifpgfafter@auxii{#2}% + \fi + } +\def\ctikz@@ifpgfafter@auxii#1\fi#2\ctikz@@ifpgfafter#3{\fi#1} +\def\ctikz@@ifpgfafter#1-#2-#3#% + {% + \ctikz@@ifpgfafter@auxi{\ctikz@@pgfyear>#1}\pgfutil@firstoftwo + \ctikz@@ifpgfafter@auxi{\ctikz@@pgfyear<#1}\pgfutil@secondoftwo + \ctikz@@ifpgfafter@auxi{\ctikz@@pgfmonth>#2}\pgfutil@firstoftwo + \ctikz@@ifpgfafter@auxi{\ctikz@@pgfmonth<#2}\pgfutil@secondoftwo + \ctikz@@ifpgfafter@auxi{\ctikz@@pgfday<#3}\pgfutil@secondoftwo + \pgfutil@gobble\ctikz@@ifpgfafter\pgfutil@firstoftwo + } +% +% usage \ctikz@@ifpgfafter 2023-01-16{true}{false} +% ^^^ no spaces here, braces needed. +% +%>>> + %% arrow tips macros and utilities %<<<1 % the default arrow is latexslim, which has been ported over old arrows library (deprecated) @@ -298,9 +350,70 @@ \pgfpathclose \pgfusepathqfill } - \pgfarrowsdeclarereversed{latexslim reversed}{latexslim reversed}{latexslim}{latexslim} - +%% Jack Tap, see +%% https://github.com/circuitikz/circuitikz/issues/806 +\pgfdeclarearrow{name=Jack Tap, + parameters = {% + \the\pgfarrowlength,% + \the\pgfarrowwidth,% + \ifpgfarrowswap s\fi% + \ifpgfarrowopen o\fi% + \ifpgfarrowroundjoin j\fi + \ifpgfarrowroundcap c\fi% + }, + setup code = { + \pgfarrowssettipend{.5\pgfarrowlength} + \pgfarrowssetlineend{-.6\pgfarrowlength} + \pgfarrowssetvisualbackend{-.6\pgfarrowlength} + \pgfarrowssetbackend{-.6\pgfarrowlength} + % hull + \pgfarrowshullpoint{.5\pgfarrowlength}{0pt} + \pgfarrowshullpoint{0pt}{\pgfarrowwidth} + \pgfarrowshullpoint{-.6\pgfarrowlength}{0pt} + % Saves: Only the length: + \pgfarrowssavethe\pgfarrowlength + \pgfarrowssavethe\pgfarrowwidth + }, + drawing code = { + \pgfsetdash{}{+0pt} + \pgfarrowlinewidth=\pgflinewidth + \ifpgfarrowroundjoin\pgfsetroundjoin\else\pgfsetmiterjoin\fi + \ifpgfarrowroundcap\pgfsetroundcap\else\pgfsetbuttcap\fi + \pgfpathmoveto{\pgfqpoint{-.6\pgfarrowlength}{0pt}} + \pgfpathlineto{\pgfqpoint{-.5\pgfarrowlength}{0pt}} + \pgfpathlineto{\pgfqpoint{0pt}{\pgfarrowwidth}} + \pgfpathlineto{\pgfqpoint{.5\pgfarrowlength}{0pt}} + \ifpgfarrowopen + \pgfusepathqstroke + \else + \pgfpathclose + \ifdim\pgfarrowlinewidth>0pt\pgfusepathqfillstroke\else\pgfusepathqfill\fi + \fi + }, + defaults = {length = 0.3cm, width=0.15cm, open}, + % cache=false, % breaks everything +} +% the new "fill without arg" will be in TikZ 3.1.11. Apply it here if we have an +% older version +\ctikz@@ifpgfafter 2023-01-16{\relax}{% + % thanks @muzimuzhi https://github.com/pgf-tikz/pgf/issues/1348#issuecomment-2229075269 + % undo the fill/.value required key + \expandafter\let\csname pgfk@/pgf/arrow keys/fill/.@def\endcsname\@undefined + \pgfkeys{/pgf/arrow keys/fill/.code={% + \def\pgf@temp{#1}% + \ifx\pgf@temp\pgf@nonetext% + \pgfarrowsaddtooptions{\pgfarrowopentrue}% + \else\ifx\pgf@temp\pgfkeysnovalue@text% + \pgfarrowsaddtooptions{\pgfarrowopenfalse}% + \else + \pgfarrowsaddtooptions{\pgfarrowopenfalse\def\pgf@arrows@fill@color{#1}}% + \fi\fi + }}% +} +\tikzset{v/.tip={Jack Tap[swap]}, ^/.tip={Jack Tap}, + vf/.tip={Jack Tap[swap,fill]}, ^f/.tip={Jack Tap[fill]}} +% % select the arrows using available defaults. \def\pgfcirc@arrow@default{default} % choose the arrows to use. Use #2 and #3 if the key is equal to "default" @@ -466,7 +579,30 @@ \fi \fi } - +% similar o the above, use the fill parameter to set fill or draw +% for a subset of the shape +\def\pgf@circ@subset@fill@or@draw#1{% + % You *must* be sure that this is called inside a \pgfscope! + \edef\@@none{none}\edef\@@default{default} + \edef\@@tmp{\ctikzvalof{#1/fill}} + \ifx\@@tmp\@@none + \pgfusepath{draw} + \else + \ifx\@@tmp\@@default\else + \pgfsetfillcolor{\@@tmp} + \fi + \pgfusepath{draw, fill} + \fi +} +% ...and for the thickness +\def\pgf@circ@subset@thickness#1{% + % You *must* be sure that this is called inside a \pgfscope! + \edef\@@default{default} + \edef\@@tmp{\ctikzvalof{#1/thickness}} + \ifx\@@tmp\@@default\else + \pgfsetlinewidth{\@@tmp\pgflinewidth}% + \fi +} % set the text color (via \color) if the color is not default or none % needed in some strange case (like bodydiode' dots) \def\pgf@circ@maybe@color#1{% @@ -557,6 +693,7 @@ % #7 - macros drawing the bipole % \long\def\pgfcircdeclarebipolescaled#1#2#3#4#5#6#7{ + % \typeout{Declaring bipole:\space #4,} \pgfdeclareshape{#4shape}{ \savedmacro{\ctikzclass}{\edef\ctikzclass{#1}} \saveddimen{\scaledRlen}{\pgfmathsetlength{\pgf@x}{\ctikzvalof{\ctikzclass/scale}\pgf@circ@Rlen}} @@ -602,97 +739,33 @@ \pgf@y=.5\pgf@y } \anchor{center}{\pgfpointorigin} - \anchor{n}{ - \northeast - \pgf@x=0cm - } - \anchor{north east}{ - \northeast - } - \anchor{north west}{ - \northeast - \pgf@x=-\pgf@x - } - \anchor{ne}{ - \northeast - } - \anchor{nw}{ - \northeast - \pgf@x=-\pgf@x - } - \anchor{e}{ - \northeast - \pgf@y=0cm - } - \anchor{s}{ - \southwest - \pgf@x=0cm - } - \anchor{south east}{ - \southwest - \pgf@x=-\pgf@x - } - \anchor{south west}{ - \southwest - } - \anchor{se}{ - \southwest - \pgf@x=-\pgf@x - } - \anchor{sw}{ - \southwest - } - \anchor{w}{ - \southwest - \pgf@y=0cm - } - \anchor{north}{ - \northeast - \pgf@x=0cm - } - \anchor{east}{ - \northeast - \pgf@y=0cm - } - \anchor{south}{ - \southwest - \pgf@x=0cm - } - \anchor{west}{ - \southwest - \pgf@y=0cm - } - \anchor{right}{ - \northeast - \pgf@y=0cm - } - \anchor{above}{ - \northeast - \pgf@x=0cm - } - \anchor{left}{ - \southwest - \pgf@y=0cm - } - \anchor{below}{ - \southwest - \pgf@x=0cm - } - \anchor{a}{ - \northeast - \pgf@y=0cm - } - \anchor{b}{ - \southwest - \pgf@y=0cm - } + \anchor{n}{\northeast\pgf@x=0cm } + \anchor{north east}{\northeast} + \anchor{north west}{\northeast\pgf@x=-\pgf@x} + \anchor{ne}{\northeast} + \anchor{nw}{\northeast\pgf@x=-\pgf@x} + \anchor{e}{\northeast\pgf@y=0cm } + \anchor{s}{\southwest\pgf@x=0cm } + \anchor{south east}{\southwest\pgf@x=-\pgf@x} + \anchor{south west}{\southwest} + \anchor{se}{\southwest\pgf@x=-\pgf@x} + \anchor{sw}{\southwest} + \anchor{w}{\southwest\pgf@y=0cm } + \anchor{north}{\northeast\pgf@x=0cm } + \anchor{east}{\northeast\pgf@y=0cm } + \anchor{south}{\southwest\pgf@x=0cm } + \anchor{west}{\southwest\pgf@y=0cm } + \anchor{right}{\northeast\pgf@y=0cm } + \anchor{above}{\northeast\pgf@x=0cm } + \anchor{left}{\southwest\pgf@y=0cm } + \anchor{below}{\southwest\pgf@x=0cm } + \anchor{a}{\northeast\pgf@y=0cm } + \anchor{b}{\southwest\pgf@y=0cm } \savedanchor{\textanchor}{% \pgf@y=\ht\pgfnodeparttextbox \pgf@x=-.5\wd\pgfnodeparttextbox } - \anchor{text}{ - \textanchor - } + \anchor{text}{ \textanchor } \anchorborder{% \ifpgf@circuit@bipole@inverted \pgf@circ@res@left=-\pgf@x @@ -711,7 +784,6 @@ #2% \pgf@circ@draw@component{ \pgf@circ@setcolor - \northeast \pgf@circ@res@up = \pgf@y \pgf@circ@res@zero = 0cm diff --git a/Master/texmf-dist/tex/generic/circuitikz/pgfcircbipoles.tex b/Master/texmf-dist/tex/generic/circuitikz/pgfcircbipoles.tex index 626ed28812b..c1292d49690 100644 --- a/Master/texmf-dist/tex/generic/circuitikz/pgfcircbipoles.tex +++ b/Master/texmf-dist/tex/generic/circuitikz/pgfcircbipoles.tex @@ -1,7 +1,7 @@ -% Copyright 2018-2024 by Romano Giannetti -% Copyright 2015-2024 by Stefan Lindner -% Copyright 2013-2024 by Stefan Erhardt -% Copyright 2007-2024 by Massimo Redaelli +% Copyright 2018-2025 by Romano Giannetti +% Copyright 2015-2025 by Stefan Lindner +% Copyright 2013-2025 by Stefan Erhardt +% Copyright 2007-2025 by Massimo Redaelli % % This file may be distributed and/or modified % @@ -632,13 +632,21 @@ \pgfusepath{draw} \endpgfscope }% - %% Zig-zag resistors +% see https://github.com/circuitikz/circuitikz/discussions/814 +\ctikzset{resistors/zigzag stub/.initial=0} +\ctikzset{resistors/zigzag hook/.code={}} \def\pgf@circ@zigzag#1{% + \pgf@circ@res@temp=\ctikzvalof{resistors/zigzag stub}\pgf@circ@res@step + \advance \pgf@circ@res@step by -2\pgf@circ@res@temp \divide \pgf@circ@res@step by \numexpr4*\zigs\relax \pgfpathmoveto{\pgfpoint{\pgf@circ@res@left-\pgfhorizontaltransformationadjustment*0.5*\pgflinewidth}{\pgf@circ@res@zero}} + \ifdim\pgf@circ@res@temp>0pt + \pgfpathlineto{\pgfpoint{\pgf@circ@res@left+\pgf@circ@res@temp -\pgfhorizontaltransformationadjustment*0.5*\pgflinewidth}{\pgf@circ@res@zero}} + \fi \pgf@circ@res@other = \pgf@circ@res@left + \advance\pgf@circ@res@other by \pgf@circ@res@temp \pgf@circ@count@a=\zigs\relax % first half zig \advance\pgf@circ@res@other by \pgf@circ@res@step @@ -655,11 +663,14 @@ \advance\pgf@circ@res@other by 2\pgf@circ@res@step \pgfpathlineto{\pgfpoint{\pgf@circ@res@other}{#1\pgf@circ@res@down}} \advance\pgf@circ@res@other by \pgf@circ@res@step - \pgfpathlineto{\pgfpoint{\pgf@circ@res@other}{\pgf@circ@res@zero}} + \pgfpathlineto{\pgfpoint{\pgf@circ@res@other+\pgfhorizontaltransformationadjustment*0.5*\pgflinewidth}{\pgf@circ@res@zero}} + \ifdim\pgf@circ@res@temp>0pt + \pgfpathlineto{\pgfpoint{\pgf@circ@res@other+\pgf@circ@res@temp+\pgfhorizontaltransformationadjustment*0.5*\pgflinewidth}{\pgf@circ@res@zero}} + \fi \pgfsetbeveljoin + \pgfkeys{/tikz/circuitikz/resistors/zigzag hook} \pgfusepath{draw} } - %% Resistor \pgfcircdeclarebipolescaled{resistors} { @@ -672,7 +683,7 @@ { \pgf@circ@setlinewidth{bipoles}{\pgfstartlinewidth} \pgftransformationadjustments - \pgfmathsetlength{\pgf@circ@res@step}{\ctikzvalof{bipoles/resistor/width}*\scaledRlen+\pgfhorizontaltransformationadjustment*0.5*\pgflinewidth} + \pgfmathsetlength{\pgf@circ@res@step}{\ctikzvalof{bipoles/resistor/width}*\scaledRlen} \pgf@circ@zigzag{1} } @@ -692,7 +703,7 @@ { \pgf@circ@setlinewidth{bipoles}{\pgfstartlinewidth} \pgftransformationadjustments - \pgfmathsetlength{\pgf@circ@res@step}{\ctikzvalof{bipoles/vresistor/width}*\scaledRlen+\pgfhorizontaltransformationadjustment*0.5*\pgflinewidth} + \pgfmathsetlength{\pgf@circ@res@step}{\ctikzvalof{bipoles/vresistor/width}*\scaledRlen} \pgf@circ@zigzag{.5} \pgfscope @@ -731,7 +742,7 @@ { \pgf@circ@setlinewidth{bipoles}{\pgfstartlinewidth} \pgftransformationadjustments - \pgfmathsetlength{\pgf@circ@res@step}{\ctikzvalof{bipoles/potentiometer/width}*\scaledRlen+\pgfhorizontaltransformationadjustment*0.5*\pgflinewidth} + \pgfmathsetlength{\pgf@circ@res@step}{\ctikzvalof{bipoles/potentiometer/width}*\scaledRlen} \pgf@circ@zigzag{1} \pgfscope @@ -761,7 +772,7 @@ {% \pgf@circ@setlinewidth{bipoles}{\pgfstartlinewidth} \pgftransformationadjustments - \pgfmathsetlength{\pgf@circ@res@step}{\ctikzvalof{bipoles/resistivesens/width}*\scaledRlen+\pgfhorizontaltransformationadjustment*0.5*\pgflinewidth} + \pgfmathsetlength{\pgf@circ@res@step}{\ctikzvalof{bipoles/resistivesens/width}*\scaledRlen} \pgf@circ@zigzag{.5} \pgfscope @@ -810,7 +821,7 @@ \pgfpathmoveto{\pgfpoint{\pgf@circ@res@right/\@@intscale+\pgfhorizontaltransformationadjustment*0.5*\pgflinewidth}{+0pt}} \pgfpathlineto{\pgfpoint{\pgf@circ@res@right+\pgfhorizontaltransformationadjustment*0.5*\pgflinewidth}{+0pt}} \pgftransformationadjustments - \pgfmathsetlength{\pgf@circ@res@step}{\ctikzvalof{bipoles/ldresistor/width}*\scaledRlen+\pgfhorizontaltransformationadjustment*0.5*\pgflinewidth} + \pgfmathsetlength{\pgf@circ@res@step}{\ctikzvalof{bipoles/ldresistor/width}*\scaledRlen} \pgf@circ@zigzag{\@@hscale} }% @@ -1955,6 +1966,9 @@ \ctikzset{bipoles/battery1/width/.initial=.3} \ctikzset{bipoles/battery2/height/.initial=.6} \ctikzset{bipoles/battery2/width/.initial=.3} +\ctikzset{bipoles/solar/height/.initial=.6} +\ctikzset{bipoles/solar/width/.initial=.3} + % noise sources \ctikzset{bipoles/noise sources/fillcolor/.initial=gray!50} @@ -2128,6 +2142,41 @@ \pgfusepath{draw} } +% Solar cell +\pgfcircdeclarebipolescaled{batteries} +{} +{\ctikzvalof{bipoles/solar/height}} +{solar} +{\ctikzvalof{bipoles/solar/height}} +{\ctikzvalof{bipoles/solar/width}} +{ + \pgfpathmoveto{\pgfpoint{.33\pgf@circ@res@right}{0}} + \pgfpathlineto{\pgfpoint{\pgf@circ@res@right}{0}} + \pgfpathmoveto{\pgfpoint{.33\pgf@circ@res@left}{0}} + \pgfpathlineto{\pgfpoint{\pgf@circ@res@left}{0}} + \pgfusepath{draw} + + \pgf@circ@setlinewidth{bipoles}{\pgfstartlinewidth} + \ifpgf@circ@fixbatteries + \pgfpathmoveto{\pgfpoint{.33\pgf@circ@res@right}{\pgf@circ@res@up}} + \pgfpathlineto{\pgfpoint{.33\pgf@circ@res@right}{\pgf@circ@res@down}} + \pgfusepath{draw} + \pgfsetlinewidth{3\pgflinewidth} + \pgfpathmoveto{\pgfpoint{.33\pgf@circ@res@left}{.5\pgf@circ@res@up}} + \pgfpathlineto{\pgfpoint{.33\pgf@circ@res@left}{.5\pgf@circ@res@down}} + \else + \pgfpathmoveto{\pgfpoint{.33\pgf@circ@res@left}{\pgf@circ@res@up}} + \pgfpathlineto{\pgfpoint{.33\pgf@circ@res@left}{\pgf@circ@res@down}} + \pgfusepath{draw} + \pgfsetlinewidth{3\pgflinewidth} + \pgfpathmoveto{\pgfpoint{.33\pgf@circ@res@right}{.5\pgf@circ@res@up}} + \pgfpathlineto{\pgfpoint{.33\pgf@circ@res@right}{.5\pgf@circ@res@down}} + \fi + + \pgfusepath{draw} + \pgf@circ@draw@pdarrows +} + %%% %%% https://xkcd.com/2818/ %%% Also https://chat.stackexchange.com/transcript/message/64238058#64238058 @@ -3430,6 +3479,9 @@ \circuitikzbasekey/bipole/is voltageoutsideofsymbol=true} \pgfcirc@activate@bipole@opt{v}{batterytwo}{battery2}{battery2}{\circuitikzbasekey/bipole/is voltage=true, \circuitikzbasekey/bipole/is voltageoutsideofsymbol=true} +\pgfcirc@activate@bipole@opt{v}{solarsource}{solar}{solar}{\circuitikzbasekey/bipole/is voltage=true, + \circuitikzbasekey/bipole/is voltageoutsideofsymbol=true} + %% Sources: voltage \pgfcirc@activate@bipole@opt{v}{vsource}{vsource}{european voltage source}{% @@ -3452,6 +3504,11 @@ \pgfcirc@style@to@style{controlled voltage source}{cvsource} \pgfcirc@style@to@style{controlled voltage source}{controlled vsource} \pgfcirc@style@to@style{controlled voltage source}{cV} +%% fix the mess about not having the shortcut accessible in every mode... +\pgfcirc@style@to@style{american voltage source}{vsourceAM} +\pgfcirc@style@to@style{american controlled voltage source}{cvsourceAM} +\pgfcirc@style@to@style{european voltage source}{vsourceEU} +\pgfcirc@style@to@style{european controlled voltage source}{cvsourceEU} \pgfcirc@activate@bipole@simple@opt{v}{esource}{% \circuitikzbasekey/bipole/is voltage=true, @@ -3547,6 +3604,11 @@ \pgfcirc@style@to@style{controlled current source}{cisource} \pgfcirc@style@to@style{controlled current source}{controlled isource} \pgfcirc@style@to@style{controlled current source}{cI} +%% fix the mess about not having the shortcut accessible in every mode... +\pgfcirc@style@to@style{american current source}{isourceAM} +\pgfcirc@style@to@style{american controlled current source}{cisourceAM} +\pgfcirc@style@to@style{european current source}{isourceEU} +\pgfcirc@style@to@style{european controlled current source}{cisourceEU} \pgfcirc@activate@bipole@opt{i}{isourcesin}{isourcesin}{sinusoidal current source}{% \circuitikzbasekey/bipole/is current=true} @@ -3673,6 +3735,13 @@ }} % +% Whiskers for ZZener and TVS +% +\newif\ifpgf@zz@straightwhisk +\pgf@zz@straightwhiskfalse +\ctikzset{diode straight whiskers/.code=\pgf@zz@straightwhisktrue} +\ctikzset{diode sloped whiskers/.code=\pgf@zz@straightwhiskfalse} +% % Flipping arrows in LED and photodiodes % \newif\ifpgf@led@fliparrows @@ -3766,10 +3835,15 @@ { \pgf@circ@setlinewidth{bipoles}{\pgfstartlinewidth} \pgf@circ@fulldiode@triangle@shift - \pgfpathmoveto{\pgfpoint{\pgf@circ@res@right-1.8\pgf@circ@res@left}{\pgf@circ@res@down-0.5\pgf@circ@res@up}} + \ifpgf@zz@straightwhisk + \edef\@@tmp{0.0} + \else + \edef\@@tmp{0.5} + \fi + \pgfpathmoveto{\pgfpoint{\pgf@circ@res@right-1.8\pgf@circ@res@left}{\pgf@circ@res@down-\@@tmp\pgf@circ@res@up}} \pgfpathlineto{\pgfpoint{\pgf@circ@res@right-\pgf@circ@res@left}{\pgf@circ@res@down}} \pgfpathlineto{\pgfpoint{\pgf@circ@res@right-\pgf@circ@res@left}{\pgf@circ@res@up}} - \pgfpathlineto{\pgfpoint{\pgf@circ@res@right-0.2\pgf@circ@res@left}{\pgf@circ@res@up-0.5\pgf@circ@res@down}} + \pgfpathlineto{\pgfpoint{\pgf@circ@res@right-0.2\pgf@circ@res@left}{\pgf@circ@res@up-\@@tmp\pgf@circ@res@down}} \pgfusepath{draw} } @@ -4051,10 +4125,15 @@ \pgfscope \pgf@circ@basicdiodeshape - \pgfpathmoveto{\pgfpoint{\pgf@circ@res@right-1.8\pgf@circ@res@left}{\pgf@circ@res@down-0.5\pgf@circ@res@up}} + \ifpgf@zz@straightwhisk + \edef\@@tmp{0.0} + \else + \edef\@@tmp{0.5} + \fi + \pgfpathmoveto{\pgfpoint{\pgf@circ@res@right-1.8\pgf@circ@res@left}{\pgf@circ@res@down-\@@tmp\pgf@circ@res@up}} \pgfpathlineto{\pgfpoint{\pgf@circ@res@right-\pgf@circ@res@left}{\pgf@circ@res@down}} \pgfpathlineto{\pgfpoint{\pgf@circ@res@right-\pgf@circ@res@left}{\pgf@circ@res@up}} - \pgfpathlineto{\pgfpoint{\pgf@circ@res@right-0.2\pgf@circ@res@left}{\pgf@circ@res@up-0.5\pgf@circ@res@down}} + \pgfpathlineto{\pgfpoint{\pgf@circ@res@right-0.2\pgf@circ@res@left}{\pgf@circ@res@up-\@@tmp\pgf@circ@res@down}} \pgfusepath{draw} \endpgfscope } @@ -4232,10 +4311,15 @@ \pgftransformxshift{\pgf@circ@res@left} \pgf@circ@basicdiodeshape \endpgfscope - \pgfpathmoveto{\pgfpoint{0.4\pgf@circ@res@left}{1.3\pgf@circ@res@up}} + \ifpgf@zz@straightwhisk + \edef\@@tmp{1.0} + \else + \edef\@@tmp{1.3} + \fi + \pgfpathmoveto{\pgfpoint{0.4\pgf@circ@res@left}{\@@tmp\pgf@circ@res@up}} \pgfpathlineto{\pgfpoint{0pt}{\pgf@circ@res@up}} \pgfpathlineto{\pgfpoint{0pt}{\pgf@circ@res@down}} - \pgfpathlineto{\pgfpoint{0.4\pgf@circ@res@right}{1.3\pgf@circ@res@down}} + \pgfpathlineto{\pgfpoint{0.4\pgf@circ@res@right}{\@@tmp\pgf@circ@res@down}} \pgfusepath{draw} \endpgfscope } @@ -4260,10 +4344,15 @@ \pgftransformxshift{\pgf@circ@res@left} \pgf@circ@fulldiode@triangle@shift \endpgfscope - \pgfpathmoveto{\pgfpoint{0.4\pgf@circ@res@left}{1.3\pgf@circ@res@up}} + \ifpgf@zz@straightwhisk + \edef\@@tmp{1.0} + \else + \edef\@@tmp{1.3} + \fi + \pgfpathmoveto{\pgfpoint{0.4\pgf@circ@res@left}{\@@tmp\pgf@circ@res@up}} \pgfpathlineto{\pgfpoint{0pt}{\pgf@circ@res@up}} \pgfpathlineto{\pgfpoint{0pt}{\pgf@circ@res@down}} - \pgfpathlineto{\pgfpoint{0.4\pgf@circ@res@right}{1.3\pgf@circ@res@down}} + \pgfpathlineto{\pgfpoint{0.4\pgf@circ@res@right}{\@@tmp\pgf@circ@res@down}} \pgfusepath{draw} } @@ -4741,6 +4830,8 @@ \pgfcirc@style@to@style{#1 agtobar}{aGTOb#2} \pgfcirc@node@to@style{l}{emptytriac}{#1 triac}{\circuitikzbasekey/bipole/is strokedsymbol=true} \pgfcirc@style@to@style{#1 triac}{Tr#2} + \pgfcirc@node@to@style{l}{emptytvsdiode}{#1 tvsdiode}{\circuitikzbasekey/bipole/is strokedsymbol=true} + \pgfcirc@style@to@style{#1 tvsdiode}{Tr#2} } \pgfcirc@tmp@generatestrokeddiodes{stroke}{-} \def\pgfcircdiodestylemacro{\ifpgf@circuit@strokediode stroke \else\ifpgf@circuit@fulldiode full \else empty \fi\fi} @@ -6031,6 +6122,13 @@ \ctikzset{bipoles/qpprobe/voltage/additional shift/.initial=.5} \ctikzset{bipoles/iloop/width/.initial=.40} \ctikzset{bipoles/iloop/height/.initial=.60} +% currtap see https://github.com/circuitikz/circuitikz/issues/807 +\ctikzset{bipoles/currtap/height/.initial=0.4} +\ctikzset{bipoles/currtap/dot size/.initial=0.5} +\ctikzset{bipoles/currtap/fill/.initial=default} +\ctikzset{bipoles/currtap/dash/.initial=none} +\ctikzset{bipoles/currtap/color/.initial=default} +\ctikzset{bipoles/currtap/thickness/.initial=default} \ctikzset{bipoles/oscope/height/.initial=.60} \ctikzset{bipoles/oscope/width/.initial=.60} @@ -6607,6 +6705,28 @@ \pgfusepath{draw} \endpgfscope } +%% currtap +\pgfcircdeclarebipolescaled{instruments} +{ + \savedmacro{\@@dotsize}{\def\@@dotsize{\ctikzvalof{bipoles/currtap/dot size}}} + \anchor{tap}{\northeast\pgf@x=0pt\pgf@y=\@@dotsize\pgf@y\pgf@y=-\pgf@y} +} +{\ctikzvalof{bipoles/currtap/height}} +{currtap} +{\ctikzvalof{bipoles/currtap/height}} +{\ctikzvalof{bipoles/currtap/height}} +{ + \pgfpathmoveto{\pgfpoint{\pgf@circ@res@left}{0pt}} + \pgfpathlineto{\pgfpoint{0.95\pgf@circ@res@left}{0pt}} + \pgfpatharc{180}{0}{0.95\pgf@circ@res@right} + \pgfpathlineto{\pgfpoint{\pgf@circ@res@right}{0pt}} + \pgfusepath{draw} + \pgf@circ@subset@color@dash{bipoles/currtap} + \pgf@circ@subset@thickness{bipoles/currtap} + \pgfusepath{draw} + \pgfpathcircle{\pgfpoint{0pt}{0pt}}{\@@dotsize*\pgf@circ@res@up} + \pgf@circ@subset@fill@or@draw{bipoles/currtap} +} % %>>> % Path definitions for Instruments%<<< @@ -6619,8 +6739,8 @@ \pgfcirc@activate@bipole@simple{l}{rmeterwa} \pgfcirc@activate@bipole@simple{l}{smeter} \pgfcirc@activate@bipole@simple{l}{iloop} -% \pgfcirc@activate@bipole@simple{l}{iloop2} that was wrong \pgfcirc@activate@bipole{l}{ilooptwo}{iloop2}{iloop2} +\pgfcirc@activate@bipole@simple{l}{currtap} \pgfcirc@activate@bipole@simple{l}{qvprobe} \pgfcirc@activate@bipole@simple{l}{qiprobe} \pgfcirc@activate@bipole@simple{l}{qpprobe} @@ -6774,16 +6894,22 @@ % spring into the damper \pgfscope - \pgfpathmoveto{\pgfpoint{\pgf@circ@res@left}{\pgf@circ@res@zero}} + \pgfscope + \pgftransformationadjustments \pgf@circ@setlinewidth{bipoles}{\pgfstartlinewidth} + \pgfpathmoveto{\pgfpoint{\pgf@circ@res@left-\pgfhorizontaltransformationadjustment*0.5*\pgflinewidth}{\pgf@circ@res@zero}} + \pgfpathlineto{\pgfpoint{.95\pgf@circ@res@left}{\pgf@circ@res@zero}} \pgfsetcornersarced{\pgfpoint{.25\pgf@circ@res@up}{.25\pgf@circ@res@up}} \pgfpathlineto{\pgfpoint{.75\pgf@circ@res@left}{.75\pgf@circ@res@up}} \pgfpathlineto{\pgfpoint{.5\pgf@circ@res@left}{-.75\pgf@circ@res@up}} \pgfpathlineto{\pgfpoint{.25\pgf@circ@res@left}{.75\pgf@circ@res@up}} \pgfpathlineto{\pgfpoint{0pt}{-.75\pgf@circ@res@up}} \pgfpathlineto{\pgfpoint{\ctikzvalof{bipoles/damper/length}\pgf@circ@res@right}{.75\pgf@circ@res@up}} + \pgfsetbuttcap + \pgfsetbeveljoin \pgfusepath{stroke} \endpgfscope + \endpgfscope % damper box \pgf@circ@setlinewidth{bipoles}{\pgfstartlinewidth} \pgfpathmoveto{\pgfpoint{\pgf@circ@res@left}{\pgf@circ@res@down}} @@ -7020,9 +7146,10 @@ % \ctikzset{bipoles/squid/height/.initial=.60} \ctikzset{bipoles/squid/width/.initial=.60} -\ctikzset{bipoles/barrier/height/.initial=.60} -\ctikzset{bipoles/barrier/width/.initial=.60} -\ctikzset{bipoles/openbarrier/gap/.initial=0.5} +\ctikzset{bipoles/barrier/height/.initial=.21} +\ctikzset{bipoles/barrier/width/.initial=.0} +\ctikzset{bipoles/openbarrier/width/.initial=.3} +\ctikzset{bipoles/openbarrier/gap/.initial=1} \ctikzset{bipoles/thermocouple/height/.initial=.250} \ctikzset{bipoles/thermocouple/height 2/.initial=.60} \ctikzset{bipoles/thermocouple/width/.initial=.140} @@ -7171,18 +7298,18 @@ {\ctikzvalof{bipoles/thermocouple/height}} {\ctikzvalof{bipoles/thermocouple/width}} { + \pgfsetrectcap \pgfpathmoveto{\pgfpoint{\pgf@circ@res@left}{0}} \pgfpathlineto{\pgfpoint{\pgf@circ@res@left}{.5\pgf@circ@res@down}} - \pgfusepath{draw} - \pgfpathmoveto{\pgfpoint{\pgf@circ@res@left}{.5\pgf@circ@res@down}} - \pgf@circ@setlinewidth{bipoles}{\pgfstartlinewidth} \pgfpathlineto{\pgfpoint{0}{\pgf@circ@res@down}} - \pgfusepath{draw} - \pgfsetlinewidth{\pgfstartlinewidth} - \pgfpathmoveto{\pgfpoint{0}{\pgf@circ@res@down}} \pgfpathlineto{\pgfpoint{\pgf@circ@res@right}{.5\pgf@circ@res@down}} \pgfpathlineto{\pgfpoint{\pgf@circ@res@right}{0}} \pgfusepath{draw} + \pgf@circ@setlinewidth{bipoles}{\pgfstartlinewidth} + \pgfsetroundcap + \pgfpathmoveto{\pgfpoint{\pgf@circ@res@left}{.5\pgf@circ@res@down}} + \pgfpathlineto{\pgfpoint{0}{\pgf@circ@res@down}} + \pgfusepath{draw} } %% fuse \pgfcircdeclarebipolescaled{misc} @@ -7297,46 +7424,39 @@ {\ctikzvalof{bipoles/barrier/height}} {\ctikzvalof{bipoles/barrier/width}} { - \pgf@circ@setlinewidth{bipoles}{\pgfstartlinewidth} - \pgfpathmoveto{\pgfpoint{\pgf@circ@res@left}{\pgf@circ@res@step}} \pgfpathlineto{\pgfpoint{\pgf@circ@res@right}{\pgf@circ@res@step}} - \pgfpathmoveto{\pgfpoint{0.35*\pgf@circ@res@left}{0.35*\pgf@circ@res@up}} - \pgfpathlineto{\pgfpoint{0.35*\pgf@circ@res@right}{0.35*\pgf@circ@res@down}} - \pgfpathmoveto{\pgfpoint{0.35*\pgf@circ@res@left}{0.35*\pgf@circ@res@down}} - \pgfpathlineto{\pgfpoint{0.35*\pgf@circ@res@right}{0.35*\pgf@circ@res@up}} - + \pgfusepath{draw} + \pgf@circ@setlinewidth{bipoles}{\pgfstartlinewidth} + \pgfpathmoveto{\pgfpoint{\pgf@circ@res@down}{\pgf@circ@res@up}} + \pgfpathlineto{\pgfpoint{\pgf@circ@res@up}{\pgf@circ@res@down}} + \pgfpathmoveto{\pgfpoint{\pgf@circ@res@down}{\pgf@circ@res@down}} + \pgfpathlineto{\pgfpoint{\pgf@circ@res@up}{\pgf@circ@res@up}} \pgfusepath{draw} } -% % open version of the barrier symbol % suggested by Radványi Patrik Tamás <patrikradvanyi@gmail.com> -% \pgfcircdeclarebipolescaled{misc} {} {\ctikzvalof{bipoles/barrier/height}} {openbarrier} {\ctikzvalof{bipoles/barrier/height}} -{\ctikzvalof{bipoles/barrier/width}} +{\ctikzvalof{bipoles/openbarrier/width}} { - % this is set with normal wire linewidth \pgfpathmoveto{\pgfpoint{\pgf@circ@res@left}{0pt}} \pgfpathlineto{\pgfpoint{\ctikzvalof{bipoles/openbarrier/gap}*\pgf@circ@res@left}{0pt}} \pgfpathmoveto{\pgfpoint{\pgf@circ@res@right}{0pt}} \pgfpathlineto{\pgfpoint{\ctikzvalof{bipoles/openbarrier/gap}*\pgf@circ@res@right}{0pt}} \pgfusepath{draw} - - % do the cross part \pgf@circ@setlinewidth{bipoles}{\pgfstartlinewidth} - - \pgfpathmoveto{\pgfpoint{0.35*\pgf@circ@res@left}{0.35*\pgf@circ@res@up}} - \pgfpathlineto{\pgfpoint{0.35*\pgf@circ@res@right}{0.35*\pgf@circ@res@down}} - \pgfpathmoveto{\pgfpoint{0.35*\pgf@circ@res@left}{0.35*\pgf@circ@res@down}} - \pgfpathlineto{\pgfpoint{0.35*\pgf@circ@res@right}{0.35*\pgf@circ@res@up}} - + \pgfpathmoveto{\pgfpoint{\pgf@circ@res@down}{\pgf@circ@res@up}} + \pgfpathlineto{\pgfpoint{\pgf@circ@res@up}{\pgf@circ@res@down}} + \pgfpathmoveto{\pgfpoint{\pgf@circ@res@down}{\pgf@circ@res@down}} + \pgfpathlineto{\pgfpoint{\pgf@circ@res@up}{\pgf@circ@res@up}} \pgfusepath{draw} } + %% Lamp \pgfcircdeclarebipolescaled{misc} {} diff --git a/Master/texmf-dist/tex/generic/circuitikz/pgfcirccurrent.tex b/Master/texmf-dist/tex/generic/circuitikz/pgfcirccurrent.tex index e1843d5da8d..4d00670a543 100644 --- a/Master/texmf-dist/tex/generic/circuitikz/pgfcirccurrent.tex +++ b/Master/texmf-dist/tex/generic/circuitikz/pgfcirccurrent.tex @@ -1,7 +1,7 @@ -% Copyright 2018-2024 by Romano Giannetti -% Copyright 2015-2024 by Stefan Lindner -% Copyright 2013-2024 by Stefan Erhardt -% Copyright 2007-2024 by Massimo Redaelli +% Copyright 2018-2025 by Romano Giannetti +% Copyright 2015-2025 by Stefan Lindner +% Copyright 2013-2025 by Stefan Erhardt +% Copyright 2007-2025 by Massimo Redaelli % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/circuitikz/pgfcircflow.tex b/Master/texmf-dist/tex/generic/circuitikz/pgfcircflow.tex index 364c56a414f..b620979ec59 100644 --- a/Master/texmf-dist/tex/generic/circuitikz/pgfcircflow.tex +++ b/Master/texmf-dist/tex/generic/circuitikz/pgfcircflow.tex @@ -1,7 +1,7 @@ -% Copyright 2018-2024 by Romano Giannetti -% Copyright 2015-2024 by Stefan Lindner -% Copyright 2013-2024 by Stefan Erhardt -% Copyright 2007-2024 by Massimo Redaelli +% Copyright 2018-2025 by Romano Giannetti +% Copyright 2015-2025 by Stefan Lindner +% Copyright 2013-2025 by Stefan Erhardt +% Copyright 2007-2025 by Massimo Redaelli % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/circuitikz/pgfcirclabel.tex b/Master/texmf-dist/tex/generic/circuitikz/pgfcirclabel.tex index a81bfdc6c6b..09bae28f18c 100644 --- a/Master/texmf-dist/tex/generic/circuitikz/pgfcirclabel.tex +++ b/Master/texmf-dist/tex/generic/circuitikz/pgfcirclabel.tex @@ -1,7 +1,7 @@ -% Copyright 2018-2024 by Romano Giannetti -% Copyright 2015-2024 by Stefan Lindner -% Copyright 2013-2024 by Stefan Erhardt -% Copyright 2007-2024 by Massimo Redaelli +% Copyright 2018-2025 by Romano Giannetti +% Copyright 2015-2025 by Stefan Lindner +% Copyright 2013-2025 by Stefan Erhardt +% Copyright 2007-2025 by Massimo Redaelli % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/circuitikz/pgfcircmonopoles.tex b/Master/texmf-dist/tex/generic/circuitikz/pgfcircmonopoles.tex index 84fa6c6d1ec..77b6edc904c 100644 --- a/Master/texmf-dist/tex/generic/circuitikz/pgfcircmonopoles.tex +++ b/Master/texmf-dist/tex/generic/circuitikz/pgfcircmonopoles.tex @@ -1,7 +1,7 @@ -% Copyright 2018-2024 by Romano Giannetti -% Copyright 2015-2024 by Stefan Lindner -% Copyright 2013-2024 by Stefan Erhardt -% Copyright 2007-2024 by Massimo Redaelli +% Copyright 2018-2025 by Romano Giannetti +% Copyright 2015-2025 by Stefan Lindner +% Copyright 2013-2025 by Stefan Erhardt +% Copyright 2007-2025 by Massimo Redaelli % % This file may be distributed and/or modified % @@ -49,6 +49,7 @@ \ctikzset{monopoles/dinantenna/width/.initial=.2} \ctikzset{monopoles/dinantenna/height/.initial=.6} \ctikzset{monopoles/waves/width/.initial=0.5}% +\ctikzset{monopoles/harmonics/width/.initial=0.5}% %>>> %% Node shapes for grounds and power supply%<<< @@ -617,6 +618,56 @@ } } +\pgfdeclareshape{harmonics}{ + \savedmacro{\ctikzclass}{\edef\ctikzclass{RF}} + \saveddimen{\scaledRlen}{\pgfmathsetlength{\pgf@x}{\ctikzvalof{\ctikzclass/scale}\pgf@circ@Rlen}} + \anchor{center}{\pgfpointorigin} + \savedanchor{\northeast}{ + \pgfmathsetlength{\pgf@circ@scaled@Rlen}{\ctikzvalof{\ctikzclass/scale}\pgf@circ@Rlen} + \pgf@circ@res@step=\ctikzvalof{monopoles/harmonics/width}\pgf@circ@scaled@Rlen + \pgf@x=\pgf@circ@res@step + \pgf@y=\pgf@circ@res@step + } + \anchor{text}{ + \northeast + \pgf@y=\dimexpr\pgf@y+.5\dp\pgfnodeparttextbox-.5\ht\pgfnodeparttextbox\relax + } + \anchor{top}{\northeast\pgf@x=0pt} + \anchor{right}{\northeast\pgf@y=0pt} + \anchor{left}{\northeast\pgf@x=-\pgf@x\pgf@y=0pt} + \anchor{bottom}{\northeast\pgf@y=-\pgf@y\pgf@x=0pt} + \anchor{north}{\northeast\pgf@x=0pt} + \anchor{north east}{\northeast} + \anchor{east}{\northeast\pgf@y=0pt} + \anchor{south east}{\northeast\pgf@y=-\pgf@y} + \anchor{south}{\northeast\pgf@y=-\pgf@y\pgf@x=0pt} + \anchor{south west}{\northeast\pgf@y=-\pgf@y\pgf@x=-\pgf@x} + \anchor{west}{\northeast\pgf@x=-\pgf@x\pgf@y=0pt} + \anchor{north west}{\northeast\pgf@x=-\pgf@x} + \pgf@circ@draw@component{ + \pgf@circ@scaled@Rlen=\scaledRlen + \pgf@circ@res@step=\ctikzvalof{monopoles/waves/width}\pgf@circ@scaled@Rlen + \pgf@circ@res@step=0.5\pgf@circ@res@step + \pgf@circ@setcolor + \pgfscope + % define a triangle for clipping the waves + \pgfpathmoveto{\pgfpoint{-2\pgf@circ@res@step}{0pt}} + \pgfpathlineto{\pgfpoint{2.1\pgf@circ@res@step}{1\pgf@circ@res@step}} + \pgfpathlineto{\pgfpoint{2.1\pgf@circ@res@step}{-1\pgf@circ@res@step}} + \pgfpathclose + \pgfusepath{clip} + % ...and build the waves as clipped circles + \c@pgf@counta=32\pgf@circ@res@other=0.125\pgf@circ@res@step + \pgfmathloop% + \ifnum\c@pgf@counta>1 + \pgfpathcircle{\pgfpoint{-2\pgf@circ@res@step}{0pt}}{\the\c@pgf@counta*\pgf@circ@res@other} + \advance\c@pgf@counta-1\relax% + \repeatpgfmathloop + \pgfusepath{draw} + \endpgfscope + } +} + % the four types of antennas: simple, din, TX, RX. Notice that you can flip them... % \pgfdeclareshape{bareantenna}{ diff --git a/Master/texmf-dist/tex/generic/circuitikz/pgfcircmultipoles.tex b/Master/texmf-dist/tex/generic/circuitikz/pgfcircmultipoles.tex index e403a53fa62..5f98f3b91b7 100644 --- a/Master/texmf-dist/tex/generic/circuitikz/pgfcircmultipoles.tex +++ b/Master/texmf-dist/tex/generic/circuitikz/pgfcircmultipoles.tex @@ -1,7 +1,7 @@ -% Copyright 2018-2024 by Romano Giannetti -% Copyright 2015-2024 by Stefan Lindner -% Copyright 2013-2024 by Stefan Erhardt -% Copyright 2007-2024 by Massimo Redaelli +% Copyright 2018-2025 by Romano Giannetti +% Copyright 2015-2025 by Stefan Lindner +% Copyright 2013-2025 by Stefan Erhardt +% Copyright 2007-2025 by Massimo Redaelli % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/circuitikz/pgfcircpath.tex b/Master/texmf-dist/tex/generic/circuitikz/pgfcircpath.tex index e3665b88625..7d94de49595 100644 --- a/Master/texmf-dist/tex/generic/circuitikz/pgfcircpath.tex +++ b/Master/texmf-dist/tex/generic/circuitikz/pgfcircpath.tex @@ -1,7 +1,7 @@ -% Copyright 2018-2024 by Romano Giannetti -% Copyright 2015-2024 by Stefan Lindner -% Copyright 2013-2024 by Stefan Erhardt -% Copyright 2007-2024 by Massimo Redaelli +% Copyright 2018-2025 by Romano Giannetti +% Copyright 2015-2025 by Stefan Lindner +% Copyright 2013-2025 by Stefan Erhardt +% Copyright 2007-2025 by Massimo Redaelli % % This file may be distributed and/or modified % @@ -231,13 +231,15 @@ \compattikzset{#2/.style={\comnpatname #1, #3={##1}}}% } % create a bipole -\def\pgfcirc@activate@bipole#1#2#3#4{% path name, base node name, style name +\def\pgfcirc@activate@bipole#1#2#3#4{% type of label, path name, base node name, style name + % \typeout{Activate bipole:\space #4,} \expandafter\def\csname pgf@circ@#2@path\endcsname##1{\pgf@circ@bipole@path{#3}{##1}}% \pgfcirc@path@to@style{#1}{#2}{#4}{}% no options here, let's see } \def\pgfcirc@activate@bipole@simple#1#2{\pgfcirc@activate@bipole{#1}{#2}{#2}{#2}} % create a bipole with options -\def\pgfcirc@activate@bipole@opt#1#2#3#4#5{% path name, base node name, style name +\def\pgfcirc@activate@bipole@opt#1#2#3#4#5{% type of label, path name, base node name, style name, options + % \typeout{Activate bipole:\space #4,} \expandafter\def\csname pgf@circ@#2@path\endcsname##1{\pgf@circ@bipole@path{#3}{##1}}% \pgfcirc@path@to@style{#1}{#2}{#4}{#5}% no options here, let's see } diff --git a/Master/texmf-dist/tex/generic/circuitikz/pgfcircquadpoles.tex b/Master/texmf-dist/tex/generic/circuitikz/pgfcircquadpoles.tex index 2cc6e461aad..cca01b5bee0 100644 --- a/Master/texmf-dist/tex/generic/circuitikz/pgfcircquadpoles.tex +++ b/Master/texmf-dist/tex/generic/circuitikz/pgfcircquadpoles.tex @@ -1,7 +1,7 @@ -% Copyright 2018-2024 by Romano Giannetti -% Copyright 2015-2024 by Stefan Lindner -% Copyright 2013-2024 by Stefan Erhardt -% Copyright 2007-2024 by Massimo Redaelli +% Copyright 2018-2025 by Romano Giannetti +% Copyright 2015-2025 by Stefan Lindner +% Copyright 2013-2025 by Stefan Erhardt +% Copyright 2007-2025 by Massimo Redaelli % % This file may be distributed and/or modified % @@ -544,6 +544,11 @@ \ctikzset{bipoles/lowpass/width/.initial=.7} \ctikzset{bipoles/lowpass2/width/.initial=.7} \ctikzset{bipoles/allpass/width/.initial=.7} +\ctikzset{bipoles/vallpass/width/.initial=.7} +\ctikzset{bipoles/bgenerator/width/.initial=.7} +\ctikzset{bipoles/qgenerator/width/.initial=.7} +\ctikzset{bipoles/cgenerator/width/.initial=.7} +\ctikzset{bipoles/ngenerator/width/.initial=.7} \ctikzset{bipoles/adc/width/.initial=.7} \ctikzset{bipoles/dac/width/.initial=.7} \ctikzset{bipoles/dsp/width/.initial=.7} @@ -557,10 +562,26 @@ \ctikzset{bipoles/vtattenuator/width/.initial=.7} \ctikzset{bipoles/phaseshifter/width/.initial=.7} \ctikzset{bipoles/vphaseshifter/width/.initial=.7} +\ctikzset{bipoles/biast/width/.initial=.7} +\ctikzset{bipoles/sinetable/width/.initial=.7} +\ctikzset{bipoles/register/width/.initial=.7} \ctikzset{bipoles/detector/width/.initial=.7} \ctikzset{bipoles/saturation/width/.initial=.7} \ctikzset{bipoles/sigmoid/width/.initial=.7} \ctikzset{bipoles/allornothing/width/.initial=.7} + +\ctikzset{bipoles/camera/height/.initial=1.2} +\ctikzset{bipoles/camera/depth/.initial=.3} +\ctikzset{bipoles/camera/width/.initial=.4} +\ctikzset{bipoles/tvset/width/.initial=0.6} +\ctikzset{bipoles/tvset/height/.initial=.4} +\ctikzset{bipoles/trx/width/.initial=1} +\ctikzset{bipoles/trx/height/.initial=.4} +\ctikzset{bipoles/swr/width/.initial=0.6} +\ctikzset{bipoles/swr/height/.initial=.4} +\ctikzset{bipoles/power/width/.initial=1} +\ctikzset{bipoles/power/height/.initial=.4} + \ctikzset{tripoles/mixer/width/.initial=0.7} \ctikzset{tripoles/adder/width/.initial=0.7} \ctikzset{tripoles/circulator/width/.initial=.7} @@ -719,6 +740,19 @@ \endpgfscope } % +\def\pgfcirc@twoport@draw@narrowsine#1{% #1 -> y shift + \pgfscope + \pgfsetlinewidth{\pgfstartlinewidth} + \pgftransformyshift{#1\pgf@circ@res@step} + \pgfpathmoveto{\pgfpoint{.125\pgf@circ@res@step}{0\pgf@circ@res@step}} + \pgfpathsine{\pgfpoint{.125\pgf@circ@res@step}{.125\pgf@circ@res@step}} + \pgfpathcosine{\pgfpoint{.125\pgf@circ@res@step}{-.125\pgf@circ@res@step}} + \pgfpathsine{\pgfpoint{.125\pgf@circ@res@step}{-.125\pgf@circ@res@step}} + \pgfpathcosine{\pgfpoint{.125\pgf@circ@res@step}{.125\pgf@circ@res@step}} + \pgfusepath{draw} + \endpgfscope +} +% \def\pgfcirc@twoport@draw@splitline{% \pgfscope \pgfcirc@twoport@maybedash @@ -889,6 +923,90 @@ \pgfcirc@twoport@draw@sine{0.0}{0} \pgfcirc@twoport@draw@sine{-0.5}{0} } +%% variable allpass filter +\pgfcirc@define@twoports{blocks} +{} +{\ctikzvalof{bipoles/vallpass/width}} +{vallpass} +{\ctikzvalof{bipoles/vallpass/width}} +{\ctikzvalof{bipoles/vallpass/width}} +{ + \pgfcirc@twoport@draw@sine{0.5}{0} + \pgfcirc@twoport@draw@sine{0.0}{0} + \pgfcirc@twoport@draw@sine{-0.5}{0} + \pgfcirc@set@arrows{tunable}{}{latex} + \pgfpathmoveto{\pgfpoint{0.7\pgf@circ@res@left}{0.5\pgf@circ@res@down}} + \pgfpathlineto{\pgfpoint{0.7\pgf@circ@res@right}{0.8\pgf@circ@res@up}} + \pgfusepath{draw} +} +%% Block Generator +\pgfcirc@define@twoports{blocks} +{} +{\ctikzvalof{bipoles/bgenerator/width}} +{bgenerator} +{\ctikzvalof{bipoles/bgenerator/width}} +{\ctikzvalof{bipoles/bgenerator/width}} +{ + \pgfcirc@twoport@draw@narrowsine{0.25} + \pgfcirc@twoport@draw@narrowsine{0.0} + \pgfcirc@twoport@draw@narrowsine{-0.25} + \pgftext[x=0.45\pgf@circ@res@left]{\ctikzvalof{bipoles/twoport/text}} +} +%% Crystal Generator +\pgfcirc@define@twoports{blocks} +{} +{\ctikzvalof{bipoles/qgenerator/width}} +{qgenerator} +{\ctikzvalof{bipoles/qgenerator/width}} +{\ctikzvalof{bipoles/qgenerator/width}} +{ + \pgfcirc@twoport@draw@narrowsine{0.45} + \pgfcirc@twoport@draw@narrowsine{0.20} + \pgfcirc@twoport@draw@narrowsine{-0.05} + \pgftext[x=0.45\pgf@circ@res@left,y=0.25\pgf@circ@res@up]{\ctikzvalof{bipoles/twoport/text}} + \pgfpathlineto{\pgfpoint{-0.7\pgf@circ@res@step}{-0.4\pgf@circ@res@step}} + \pgfpathlineto{\pgfpoint{ 0.7\pgf@circ@res@step}{-0.4\pgf@circ@res@step}} + \pgfusepath{draw} + \pgfpathrectangle{\pgfpoint{-0.7\pgf@circ@res@step}{-0.7\pgf@circ@res@step}} + {\pgfpoint{1.4\pgf@circ@res@step}{0.2\pgf@circ@res@step}} + \pgfusepath{draw} + \pgfpathmoveto{\pgfpoint{-0.7\pgf@circ@res@step}{-0.8\pgf@circ@res@step}} + \pgfpathlineto{\pgfpoint{ 0.7\pgf@circ@res@step}{-0.8\pgf@circ@res@step}} + \pgfpathmoveto{\pgfpoint{-0.7\pgf@circ@res@step}{-0.4\pgf@circ@res@step}} + \pgfpathlineto{\pgfpoint{ 0.7\pgf@circ@res@step}{-0.4\pgf@circ@res@step}} + \pgfusepath{draw} +} +%% Clock generator +\pgfcirc@define@twoports{blocks} +{} +{\ctikzvalof{bipoles/cgenerator/width}} +{cgenerator} +{\ctikzvalof{bipoles/cgenerator/width}} +{\ctikzvalof{bipoles/cgenerator/width}} +{ + \pgfpathmoveto{\pgfpoint{-0.70\pgf@circ@res@step}{-0.35\pgf@circ@res@step}} + \pgfpathlineto{\pgfpoint{-0.42\pgf@circ@res@step}{-0.35\pgf@circ@res@step}} + \pgfpathlineto{\pgfpoint{-0.42\pgf@circ@res@step}{+0.35\pgf@circ@res@step}} + \pgfpathlineto{\pgfpoint{-0.14\pgf@circ@res@step}{+0.35\pgf@circ@res@step}} + \pgfpathlineto{\pgfpoint{-0.14\pgf@circ@res@step}{-0.35\pgf@circ@res@step}} + \pgfpathlineto{\pgfpoint{+0.14\pgf@circ@res@step}{-0.35\pgf@circ@res@step}} + \pgfpathlineto{\pgfpoint{+0.14\pgf@circ@res@step}{+0.35\pgf@circ@res@step}} + \pgfpathlineto{\pgfpoint{+0.42\pgf@circ@res@step}{+0.35\pgf@circ@res@step}} + \pgfpathlineto{\pgfpoint{+0.42\pgf@circ@res@step}{-0.35\pgf@circ@res@step}} + \pgfpathlineto{\pgfpoint{+0.70\pgf@circ@res@step}{-0.35\pgf@circ@res@step}} + \pgfusepath{draw} +} +%% Generic generator +\pgfcirc@define@twoports{blocks} +{} +{\ctikzvalof{bipoles/ngenerator/width}} +{ngenerator} +{\ctikzvalof{bipoles/ngenerator/width}} +{\ctikzvalof{bipoles/ngenerator/width}} +{ + \pgfcirc@twoport@draw@sine{0.5}{0} + \pgftext[y=-0.35\pgf@circ@res@up]{\ctikzvalof{bipoles/twoport/text}} +} %% ADC \pgfcirc@define@twoports{blocks} {} @@ -1056,6 +1174,89 @@ \pgf@circ@text@strokecolor \pgftext[center,x=0,y=0]{\Large$\varphi$} } +%% BIAS-T +\pgfcirc@define@twoports{blocks} +{} +{\ctikzvalof{bipoles/biast/width}} +{biast} +{\ctikzvalof{bipoles/biast/width}} +{\ctikzvalof{bipoles/biast/width}} +{ + \pgfpathmoveto{\pgfpoint{-0.80\pgf@circ@res@step}{-0.50\pgf@circ@res@step}} % Line to Plate 1 + \pgfpathlineto{\pgfpoint{-0.50\pgf@circ@res@step}{-0.50\pgf@circ@res@step}} + \pgfpathmoveto{\pgfpoint{-0.50\pgf@circ@res@step}{-0.50\pgf@circ@res@step}} % Plate 1 + \pgfpathlineto{\pgfpoint{-0.50\pgf@circ@res@step}{-0.20\pgf@circ@res@step}} + \pgfpathmoveto{\pgfpoint{-0.50\pgf@circ@res@step}{-0.50\pgf@circ@res@step}} + \pgfpathlineto{\pgfpoint{-0.50\pgf@circ@res@step}{-0.80\pgf@circ@res@step}} + \pgfpathmoveto{\pgfpoint{-0.30\pgf@circ@res@step}{-0.50\pgf@circ@res@step}} % Plate 1 + \pgfpathlineto{\pgfpoint{-0.30\pgf@circ@res@step}{-0.20\pgf@circ@res@step}} + \pgfpathmoveto{\pgfpoint{-0.30\pgf@circ@res@step}{-0.50\pgf@circ@res@step}} + \pgfpathlineto{\pgfpoint{-0.30\pgf@circ@res@step}{-0.80\pgf@circ@res@step}} + \pgfpathmoveto{\pgfpoint{-0.30\pgf@circ@res@step}{-0.50\pgf@circ@res@step}} % Line to Center + \pgfpathlineto{\pgfpoint{ 0.00\pgf@circ@res@step}{-0.50\pgf@circ@res@step}} + \pgfusepath{draw} + \pgfpathcircle{\pgfpoint{ 0.00\pgf@circ@res@step}{-0.50\pgf@circ@res@step}}{0.075\pgf@circ@res@step} + \pgfusepath{fill} + \pgfpathmoveto{\pgfpoint{ 0.00\pgf@circ@res@step}{-0.50\pgf@circ@res@step}} % Line to Right + \pgfpathlineto{\pgfpoint{ 0.80\pgf@circ@res@step}{-0.50\pgf@circ@res@step}} + \pgfusepath{draw} + \pgfpathmoveto{\pgfpoint{ 0.00\pgf@circ@res@step}{-0.50\pgf@circ@res@step}} % Line to Coils + \pgfpathlineto{\pgfpoint{ 0.00\pgf@circ@res@step}{-0.20\pgf@circ@res@step}} + \pgfusepath{draw} + \pgfpathmoveto{\pgfpoint{ 0.00\pgf@circ@res@step}{-0.20\pgf@circ@res@step}} % Arc1 + \pgfpatharc{-90}{90}{0.09\pgf@circ@res@step} + \pgfpathmoveto{\pgfpoint{ 0.00\pgf@circ@res@step}{-0.02\pgf@circ@res@step}} % Arc2 + \pgfpatharc{-90}{90}{0.09\pgf@circ@res@step} + \pgfpathmoveto{\pgfpoint{ 0.00\pgf@circ@res@step}{+0.16\pgf@circ@res@step}} % Arc3 + \pgfpatharc{-90}{90}{0.09\pgf@circ@res@step} + \pgfpathmoveto{\pgfpoint{ 0.00\pgf@circ@res@step}{+0.36\pgf@circ@res@step}} % Arc4 + \pgfpatharc{-90}{90}{0.09\pgf@circ@res@step} + \pgfusepath{draw} + \pgfpathmoveto{\pgfpoint{ 0.00\pgf@circ@res@step}{+0.52\pgf@circ@res@step}} % Line to Coils + \pgfpathlineto{\pgfpoint{ 0.00\pgf@circ@res@step}{+0.80\pgf@circ@res@step}} + \pgfusepath{draw} +} +%% Sine table +\pgfcirc@define@twoports{blocks} +{} +{\ctikzvalof{bipoles/sinetable/width}} +{sinetable} +{\ctikzvalof{bipoles/sinetable/width}} +{\ctikzvalof{bipoles/sinetable/width}} +{ + \pgfcirc@twoport@draw@sine{0.0}{0} + \pgfcirc@set@arrows{tunable}{}{latex} + \pgfpathmoveto{\pgfpoint{-0.70\pgf@circ@res@step}{-0.70\pgf@circ@res@step}} + \pgfpathlineto{\pgfpoint{+0.70\pgf@circ@res@step}{-0.70\pgf@circ@res@step}} + \pgfusepath{draw} + \pgfpathmoveto{\pgfpoint{-0.70\pgf@circ@res@step}{-0.70\pgf@circ@res@step}} + \pgfpathlineto{\pgfpoint{-0.70\pgf@circ@res@step}{+0.70\pgf@circ@res@step}} + \pgfusepath{draw} +} +%% Register +\pgfcirc@define@twoports{blocks} +{ + \savedanchor\northwest{ + \pgfmathsetlength{\pgf@circ@scaled@Rlen}{\ctikzvalof{\ctikzclass/scale}\pgf@circ@Rlen} + \pgf@y=\ctikzvalof{bipoles/twoport/width}\pgf@circ@scaled@Rlen + \pgf@y=.5\pgf@y + \pgf@x=-\ctikzvalof{bipoles/twoport/width}\pgf@circ@scaled@Rlen + \pgf@x=.5\pgf@x + } + \anchor{clk}{\northwest\pgf@y=0.5\pgf@y} +} +{\ctikzvalof{bipoles/register/width}} +{register} +{\ctikzvalof{bipoles/register/width}} +{\ctikzvalof{bipoles/register/width}} +{ + \pgfpathmoveto{\pgfpoint{-1.00\pgf@circ@res@step}{+0.70\pgf@circ@res@step}} + \pgfpathlineto{\pgfpoint{-0.60\pgf@circ@res@step}{+0.50\pgf@circ@res@step}} + \pgfpathlineto{\pgfpoint{-1.00\pgf@circ@res@step}{+0.30\pgf@circ@res@step}} + \pgfusepath{draw} + \pgf@circ@text@strokecolor + \pgftext[center,x=0,y=0]{\ctikzvalof{bipoles/twoport/text}} +} %% detector \pgfcirc@define@twoports@norotate{blocks} {} @@ -1130,6 +1331,139 @@ \pgfpathlineto{\pgfpoint{0.55\pgf@circ@res@step}{.4\pgf@circ@res@step}} \pgfusepath{draw} } + +%% Camera: +\pgfcircdeclarebipolescaled{misc} +{} +{\ctikzvalof{bipoles/camera/depth}} +{camera} +{\ctikzvalof{bipoles/camera/height}} +{\ctikzvalof{bipoles/camera/width}}{ + \pgfpathrectanglecorners{\pgfpoint{\pgf@circ@res@left}{.7\pgf@circ@res@up}} + {\pgfpoint{\pgf@circ@res@right}{\pgf@circ@res@down}} + \pgfpathmoveto{\pgfpoint{0.5\pgf@circ@res@left}{.7\pgf@circ@res@up}} + \pgfpathlineto{\pgfpoint{0.8\pgf@circ@res@left}{\pgf@circ@res@up}} + \pgfpathlineto{\pgfpoint{0.8\pgf@circ@res@right}{\pgf@circ@res@up}} + \pgfpathlineto{\pgfpoint{0.5\pgf@circ@res@right}{.7\pgf@circ@res@up}} + \pgfpathclose + \pgf@circ@setlinewidth{bipoles}{\pgfstartlinewidth} + \pgf@circ@draworfill +} + +% TV: +\pgfcirc@define@twoports{blocks} +{} +{\ctikzvalof{bipoles/tvset/height}} +{tvset} +{\ctikzvalof{bipoles/tvset/height}} +{\ctikzvalof{bipoles/tvset/width}} +{ + \pgfsetlinewidth{2\pgflinewidth} % double in size + % Legs + \pgfpathmoveto{\pgfpoint{+0.60\pgf@circ@res@step}{-1.10\pgf@circ@res@step}} + \pgfpathlineto{\pgfpoint{+0.30\pgf@circ@res@step}{-0.70\pgf@circ@res@step}} + \pgfusepath{draw} + % + \pgfpathmoveto{\pgfpoint{-0.60\pgf@circ@res@step}{-1.10\pgf@circ@res@step}} + \pgfpathlineto{\pgfpoint{-0.30\pgf@circ@res@step}{-0.70\pgf@circ@res@step}} + \pgfusepath{draw} +} + +% Transceiver (TRX) +\pgfcirc@define@twoports{blocks} +{ + \anchor{plus}{\northeast \advance\pgf@y by -0.2\pgf@x\pgf@x=-\pgf@x} + \anchor{minus}{\northeast \advance\pgf@y by -0.2\pgf@x\pgf@x=-\pgf@x\pgf@y=-\pgf@y} +} +{\ctikzvalof{bipoles/trx/height}} +{trx} +{\ctikzvalof{bipoles/trx/height}} +{\ctikzvalof{bipoles/trx/width}} +{ + % VFO-Wheel: + \pgfpathcircle{\pgfpoint{0.60\pgf@circ@res@step}{0.00\pgf@circ@res@step}}{0.25\pgf@circ@res@step} + \pgfpathcircle{\pgfpoint{0.68\pgf@circ@res@step}{0.10\pgf@circ@res@step}}{0.06\pgf@circ@res@step} + % Volume and Squelch: + \pgfpathcircle{\pgfpoint{-0.8\pgf@circ@res@step}{+0.15\pgf@circ@res@step}}{0.1\pgf@circ@res@step} + \pgfpathcircle{\pgfpoint{-0.8\pgf@circ@res@step}{-0.15\pgf@circ@res@step}}{0.1\pgf@circ@res@step} + % Display: + \pgfpathrectangle{\pgfpoint{-0.55\pgf@circ@res@step}{-0.25\pgf@circ@res@step}} + {\pgfpoint{+0.75\pgf@circ@res@step}{+0.5\pgf@circ@res@step}}% + \pgfusepath{draw} +} +% Standing Wave Ratio (SWR) Meter +\pgfcirc@define@twoports{blocks} +{} +{\ctikzvalof{bipoles/swr/height}} +{swr} +{\ctikzvalof{bipoles/swr/height}} +{\ctikzvalof{bipoles/swr/width}} +{ + % Screen: + \pgfscope + \pgfsetstrokecolor{gray}\pgfsetdash{{1.5pt}{1pt}}{0pt} + \pgfpathmoveto{\pgfpoint{-0.5\pgf@circ@res@step}{-0.25\pgf@circ@res@step}} + \pgfpatharc{160}{110}{1.1\pgf@circ@res@step} + \pgfpathmoveto{\pgfpoint{0.5\pgf@circ@res@step}{-0.25\pgf@circ@res@step}} + \pgfpatharc{-160}{-110}{-1.1\pgf@circ@res@step} + \pgfusepath{draw} + \endpgfscope + \pgfpathmoveto{\pgfpoint{-0.7\pgf@circ@res@step}{0.5\pgf@circ@res@step}} + \pgfpathlineto{\pgfpoint{0.7\pgf@circ@res@step}{0.5\pgf@circ@res@step}} + \pgfpathlineto{\pgfpoint{0.7\pgf@circ@res@step}{-0.2\pgf@circ@res@step}} + \pgfpathlineto{\pgfpoint{0pt}{-0.4\pgf@circ@res@step}} + \pgfpathlineto{\pgfpoint{-0.7\pgf@circ@res@step}{-0.2\pgf@circ@res@step}} + \pgfpathclose + \pgfpathmoveto{\pgfpoint{-0.35\pgf@circ@res@step}{-0.3\pgf@circ@res@step}} + \pgfpathlineto{\pgfpoint{0.3\pgf@circ@res@step}{0.3\pgf@circ@res@step}} + \pgfpathmoveto{\pgfpoint{0.35\pgf@circ@res@step}{-0.3\pgf@circ@res@step}} + \pgfpathlineto{\pgfpoint{-0.3\pgf@circ@res@step}{0.3\pgf@circ@res@step}} + \pgfusepath{draw} +} +% Power supply +\pgfcirc@define@twoports{blocks} +{ + \anchor{u1}{\northeast \advance\pgf@y by -0.2\pgf@x\pgf@x=-\pgf@x} + \anchor{u2}{\northeast \advance\pgf@y by -0.2\pgf@x\pgf@x=-\pgf@x\pgf@y=-\pgf@y} + \anchor{plus}{\northeast \advance\pgf@y by -0.2\pgf@x \advance\pgf@x by -0.25\pgf@x} + \anchor{minus}{\northeast \advance\pgf@y by -0.2\pgf@x\pgf@y=-\pgf@y \advance\pgf@x by -0.25\pgf@x} +} +{\ctikzvalof{bipoles/power/height}} +{power} +{\ctikzvalof{bipoles/power/height}} +{\ctikzvalof{bipoles/power/width}} +{ + % Plus: + \color{red} + \pgfsetstrokecolor{red} + \pgfpathcircle{\pgfpoint{0.75\pgf@circ@res@step}{0.20\pgf@circ@res@step}}{0.075\pgf@circ@res@step}% + \pgfusepath{fill} + \pgfpathmoveto{\pgfpoint{0.50\pgf@circ@res@step}{0.20\pgf@circ@res@step}} + \pgfpathlineto{\pgfpoint{0.60\pgf@circ@res@step}{0.20\pgf@circ@res@step}} + \pgfpathmoveto{\pgfpoint{0.55\pgf@circ@res@step}{0.25\pgf@circ@res@step}} + \pgfpathlineto{\pgfpoint{0.55\pgf@circ@res@step}{0.15\pgf@circ@res@step}} + \pgfusepath{stroke} + % Minus: + \color{black} + \pgfsetstrokecolor{black} + \pgfpathcircle{\pgfpoint{0.75\pgf@circ@res@step}{-0.20\pgf@circ@res@step}}{0.075\pgf@circ@res@step}% + \pgfusepath{fill} + \pgfpathmoveto{\pgfpoint{0.50\pgf@circ@res@step}{-0.20\pgf@circ@res@step}} + \pgfpathlineto{\pgfpoint{0.60\pgf@circ@res@step}{-0.20\pgf@circ@res@step}} + \pgfusepath{stroke} + % Displays: + \pgfpathrectangle{\pgfpoint{-0.5\pgf@circ@res@step}{0.00\pgf@circ@res@step}}{\pgfpoint{+0.4\pgf@circ@res@step}{+0.25\pgf@circ@res@step}}% + \pgfpathrectangle{\pgfpoint{-0.0\pgf@circ@res@step}{0.00\pgf@circ@res@step}}{\pgfpoint{+0.4\pgf@circ@res@step}{+0.25\pgf@circ@res@step}}% + % Poti: + \pgfpathcircle{\pgfpoint{-0.30\pgf@circ@res@step}{-0.20\pgf@circ@res@step}}{0.075\pgf@circ@res@step}% + \pgfusepath{draw} + % Switch: + \pgfpathrectangle{\pgfpoint{-0.9\pgf@circ@res@step}{0.00\pgf@circ@res@step}}{\pgfpoint{+0.15\pgf@circ@res@step}{+0.25\pgf@circ@res@step}}% + \pgfpathmoveto{\pgfpoint{-0.90\pgf@circ@res@step}{0.125\pgf@circ@res@step}} + \pgfpathlineto{\pgfpoint{-0.75\pgf@circ@res@step}{0.125\pgf@circ@res@step}} + \pgfusepath{draw} +} + %% converters help function %% definition for styling the DC symbols (GitHub issue #680) \ctikzset{blocks dc in segments/.initial=1} @@ -1574,6 +1908,11 @@ \pgfcirc@activate@bipole@simple{l}{lowpass} \pgfcirc@activate@bipole@simple{l}{lowpass2} \pgfcirc@activate@bipole@simple{l}{allpass} +\pgfcirc@activate@bipole@simple{l}{vallpass} +\pgfcirc@activate@bipole@simple{l}{bgenerator} +\pgfcirc@activate@bipole@simple{l}{qgenerator} +\pgfcirc@activate@bipole@simple{l}{cgenerator} +\pgfcirc@activate@bipole@simple{l}{ngenerator} \pgfcirc@activate@bipole@simple{l}{adc} \pgfcirc@activate@bipole@simple{l}{dac} \pgfcirc@activate@bipole@simple{l}{dsp} @@ -1587,10 +1926,18 @@ \pgfcirc@activate@bipole@simple{l}{vtattenuator} \pgfcirc@activate@bipole@simple{l}{phaseshifter} \pgfcirc@activate@bipole@simple{l}{vphaseshifter} +\pgfcirc@activate@bipole@simple{l}{biast} +\pgfcirc@activate@bipole@simple{l}{sinetable} +\pgfcirc@activate@bipole@simple{l}{register} \pgfcirc@activate@bipole@simple{l}{detector} \pgfcirc@activate@bipole@simple{l}{saturation} \pgfcirc@activate@bipole@simple{l}{sigmoid} \pgfcirc@activate@bipole@simple{l}{allornothing} +\pgfcirc@activate@bipole@simple{l}{camera} +\pgfcirc@activate@bipole@simple{l}{tvset} +\pgfcirc@activate@bipole@simple{l}{trx} +\pgfcirc@activate@bipole@simple{l}{swr} +\pgfcirc@activate@bipole@simple{l}{power} \pgfcirc@activate@bipole@simple{l}{fiber} \pgfcirc@activate@bipole@simple{l}{sacdc} \pgfcirc@activate@bipole@simple{l}{sdcac} diff --git a/Master/texmf-dist/tex/generic/circuitikz/pgfcircshapes.tex b/Master/texmf-dist/tex/generic/circuitikz/pgfcircshapes.tex index f633ba1c5b0..b402557279e 100644 --- a/Master/texmf-dist/tex/generic/circuitikz/pgfcircshapes.tex +++ b/Master/texmf-dist/tex/generic/circuitikz/pgfcircshapes.tex @@ -1,7 +1,7 @@ -% Copyright 2018-2024 by Romano Giannetti -% Copyright 2015-2024 by Stefan Lindner -% Copyright 2013-2024 by Stefan Erhardt -% Copyright 2007-2024 by Massimo Redaelli +% Copyright 2018-2025 by Romano Giannetti +% Copyright 2015-2025 by Stefan Lindner +% Copyright 2013-2025 by Stefan Erhardt +% Copyright 2007-2025 by Massimo Redaelli % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/circuitikz/pgfcirctripoles.tex b/Master/texmf-dist/tex/generic/circuitikz/pgfcirctripoles.tex index d8d089dd92b..85995946f3f 100644 --- a/Master/texmf-dist/tex/generic/circuitikz/pgfcirctripoles.tex +++ b/Master/texmf-dist/tex/generic/circuitikz/pgfcirctripoles.tex @@ -1,7 +1,7 @@ -% Copyright 2018-2024 by Romano Giannetti -% Copyright 2015-2024 by Stefan Lindner -% Copyright 2013-2024 by Stefan Erhardt -% Copyright 2007-2024 by Massimo Redaelli +% Copyright 2018-2025 by Romano Giannetti +% Copyright 2015-2025 by Stefan Lindner +% Copyright 2013-2025 by Stefan Erhardt +% Copyright 2007-2025 by Massimo Redaelli % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/circuitikz/pgfcircutils.tex b/Master/texmf-dist/tex/generic/circuitikz/pgfcircutils.tex index 08535b7bc09..caf50139cdf 100644 --- a/Master/texmf-dist/tex/generic/circuitikz/pgfcircutils.tex +++ b/Master/texmf-dist/tex/generic/circuitikz/pgfcircutils.tex @@ -1,7 +1,7 @@ -% Copyright 2018-2024 by Romano Giannetti -% Copyright 2015-2024 by Stefan Lindner -% Copyright 2013-2024 by Stefan Erhardt -% Copyright 2007-2024 by Massimo Redaelli +% Copyright 2018-2025 by Romano Giannetti +% Copyright 2015-2025 by Stefan Lindner +% Copyright 2013-2025 by Stefan Erhardt +% Copyright 2007-2025 by Massimo Redaelli % % This file may be distributed and/or modified % diff --git a/Master/texmf-dist/tex/generic/circuitikz/pgfcircvoltage.tex b/Master/texmf-dist/tex/generic/circuitikz/pgfcircvoltage.tex index e041b3b5240..f797ce312b7 100644 --- a/Master/texmf-dist/tex/generic/circuitikz/pgfcircvoltage.tex +++ b/Master/texmf-dist/tex/generic/circuitikz/pgfcircvoltage.tex @@ -1,7 +1,7 @@ -% Copyright 2018-2024 by Romano Giannetti -% Copyright 2015-2024 by Stefan Lindner -% Copyright 2013-2024 by Stefan Erhardt -% Copyright 2007-2024 by Massimo Redaelli +% Copyright 2018-2025 by Romano Giannetti +% Copyright 2015-2025 by Stefan Lindner +% Copyright 2013-2025 by Stefan Erhardt +% Copyright 2007-2025 by Massimo Redaelli % % This file may be distributed and/or modified % @@ -192,12 +192,14 @@ \pgfmathsetlength{\absvshift}{\absvshift+sign(\absvshift)*height{"Q"}} % with the current font. \fi % apply the same shift to open "straight" voltage as raised - \ifpgf@circuit@bipole@voltage@straight - \ifx\@@kind\@@open - \def\pgf@circ@bipole@voltage@label@anchor{center} - \pgfmathsetlength{\absvshift}{\absvshift+sign(\absvshift)*height{"Q"}} % with the current font. - \fi - \fi + % commented out due to https://github.com/circuitikz/circuitikz/issues/821 + % but I'm not sure if it's correct + % \ifpgf@circuit@bipole@voltage@straight + % \ifx\@@kind\@@open + % \def\pgf@circ@bipole@voltage@label@anchor{center} + % \pgfmathsetlength{\absvshift}{\absvshift+sign(\absvshift)*height{"Q"}} % with the current font. + % \fi + % \fi } % %\pgf@circ@Rlen/\ctikzvalof{current arrow scale} is equal to the length of the currarrow %absolute move, minimum space is length of arrowhead diff --git a/Master/texmf-dist/tex/generic/config/language.dat b/Master/texmf-dist/tex/generic/config/language.dat index 3d8c7c1ba76..716da3fc167 100644 --- a/Master/texmf-dist/tex/generic/config/language.dat +++ b/Master/texmf-dist/tex/generic/config/language.dat @@ -1,5 +1,5 @@ -% Generated by /home/texlive/karl/Master/bin/x86_64-linux/tlmgr on Thu Feb 29 01:44:16 2024 -% $Id: language.us 68317 2023-09-18 21:21:09Z karl $ +% Generated by /home/texlive/karl/Master/bin/x86_64-linux/tlmgr on Tue Feb 18 01:40:35 2025 +% $Id: language.us 74081 2025-02-17 23:11:37Z karl $ % language.us (and the start of language.dat) % - initial hyphenation patterns. % Created long ago by Sebastian Rahtz and others. Public domain. @@ -57,10 +57,6 @@ english hyphen.tex % do not change! dumylang dumyhyph.tex % for testing a new language. nohyphenation zerohyph.tex % a language with no patterns at all. -% temp until hyph-utf8 is updated, per message from Javier, -% https://tug.org/pipermail/tex-live/2023-September/049478.html -vietnamese zerohyph.tex -hebrew zerohyph.tex % (end of static file language.us) % from dehyph-exptl: german-x-2024-02-28 dehypht-x-2024-02-28.tex @@ -69,11 +65,13 @@ ngerman-x-2024-02-28 dehyphn-x-2024-02-28.tex =ngerman-x-latest % from hyphen-afrikaans: afrikaans loadhyph-af.tex +% from hyphen-albanian: +albanian loadhyph-sq.tex % from hyphen-ancientgreek: ancientgreek loadhyph-grc.tex ibycus ibyhyph.tex % from hyphen-arabic: -arabic zerohyph.tex +arabic hyph-ar.tex % from hyphen-armenian: armenian loadhyph-hy.tex % from hyphen-basque: @@ -112,7 +110,7 @@ ethiopic loadhyph-mul-ethi.tex =amharic =geez % from hyphen-farsi: -farsi zerohyph.tex +farsi hyph-fa.tex =persian % from hyphen-finnish: finnish loadhyph-fi.tex @@ -135,6 +133,8 @@ swissgerman loadhyph-de-ch-1901.tex greek loadhyph-el-polyton.tex =polygreek monogreek loadhyph-el-monoton.tex +% from hyphen-hebrew: +hebrew hyph-he.tex % from hyphen-hungarian: hungarian loadhyph-hu.tex % from hyphen-icelandic: @@ -220,5 +220,7 @@ turkmen loadhyph-tk.tex ukrainian loadhyph-uk.tex % from hyphen-uppersorbian: uppersorbian loadhyph-hsb.tex +% from hyphen-vietnamese: +vietnamese hyph-vi.tex % from hyphen-welsh: welsh loadhyph-cy.tex diff --git a/Master/texmf-dist/tex/generic/config/language.dat.lua b/Master/texmf-dist/tex/generic/config/language.dat.lua index 0aab21c3045..7ea7b938105 100644 --- a/Master/texmf-dist/tex/generic/config/language.dat.lua +++ b/Master/texmf-dist/tex/generic/config/language.dat.lua @@ -1,4 +1,4 @@ --- Generated by /home/texlive/karl/Master/bin/x86_64-linux/tlmgr on Thu Feb 29 01:44:24 2024 +-- Generated by /home/texlive/karl/Master/bin/x86_64-linux/tlmgr on Tue Feb 18 01:40:40 2025 -- $Id: language.us.lua 18737 2010-06-04 17:09:02Z karl $ --[[ language.us.dat (and the start of language.dat.lua), used by: @@ -59,6 +59,15 @@ return { patterns = 'hyph-af.pat.txt', hyphenation = 'hyph-af.hyp.txt', }, +-- from hyphen-albanian: + ['albanian'] = { + loader = 'loadhyph-sq.tex', + lefthyphenmin = 2, + righthyphenmin = 2, + synonyms = { }, + patterns = 'hyph-sq.pat.txt', + hyphenation = '', + }, -- from hyphen-ancientgreek: ['ancientgreek'] = { loader = 'loadhyph-grc.tex', @@ -77,9 +86,9 @@ return { }, -- from hyphen-arabic: ['arabic'] = { - loader = 'zerohyph.tex', - lefthyphenmin = 2, - righthyphenmin = 3, + loader = 'hyph-ar.tex', + lefthyphenmin = 0, + righthyphenmin = 0, synonyms = { }, patterns = '', }, @@ -237,9 +246,9 @@ return { }, -- from hyphen-farsi: ['farsi'] = { - loader = 'zerohyph.tex', - lefthyphenmin = 2, - righthyphenmin = 3, + loader = 'hyph-fa.tex', + lefthyphenmin = 0, + righthyphenmin = 0, synonyms = { 'persian' }, patterns = '', }, @@ -338,6 +347,13 @@ return { patterns = 'hyph-el-monoton.pat.txt', hyphenation = '', }, +-- from hyphen-hebrew: + ['hebrew'] = { + loader = 'hyph-he.tex', + lefthyphenmin = 0, + righthyphenmin = 0, + synonyms = { }, + }, -- from hyphen-hungarian: ['hungarian'] = { loader = 'loadhyph-hu.tex', @@ -753,6 +769,13 @@ return { patterns = 'hyph-hsb.pat.txt', hyphenation = 'hyph-hsb.hyp.txt', }, +-- from hyphen-vietnamese: + ['vietnamese'] = { + loader = 'hyph-vi.tex', + lefthyphenmin = 0, + righthyphenmin = 0, + synonyms = { }, + }, -- from hyphen-welsh: ['welsh'] = { loader = 'loadhyph-cy.tex', diff --git a/Master/texmf-dist/tex/generic/config/language.def b/Master/texmf-dist/tex/generic/config/language.def index 6a8a823de1c..4ca7b8082ed 100644 --- a/Master/texmf-dist/tex/generic/config/language.def +++ b/Master/texmf-dist/tex/generic/config/language.def @@ -35,11 +35,13 @@ \addlanguage{ngerman-x-latest}{dehyphn-x-2024-02-28.tex}{}{2}{2} % from hyphen-afrikaans: \addlanguage{afrikaans}{loadhyph-af.tex}{}{1}{2} +% from hyphen-albanian: +\addlanguage{albanian}{loadhyph-sq.tex}{}{2}{2} % from hyphen-ancientgreek: \addlanguage{ancientgreek}{loadhyph-grc.tex}{}{1}{1} \addlanguage{ibycus}{ibyhyph.tex}{}{2}{2} % from hyphen-arabic: -\addlanguage{arabic}{zerohyph.tex}{}{2}{3} +\addlanguage{arabic}{hyph-ar.tex}{}{0}{0} % from hyphen-armenian: \addlanguage{armenian}{loadhyph-hy.tex}{}{1}{2} % from hyphen-basque: @@ -78,8 +80,8 @@ \addlanguage{amharic}{loadhyph-mul-ethi.tex}{}{1}{1} \addlanguage{geez}{loadhyph-mul-ethi.tex}{}{1}{1} % from hyphen-farsi: -\addlanguage{farsi}{zerohyph.tex}{}{2}{3} -\addlanguage{persian}{zerohyph.tex}{}{2}{3} +\addlanguage{farsi}{hyph-fa.tex}{}{0}{0} +\addlanguage{persian}{hyph-fa.tex}{}{0}{0} % from hyphen-finnish: \addlanguage{finnish}{loadhyph-fi.tex}{}{2}{2} \addlanguage{schoolfinnish}{loadhyph-fi-x-school.tex}{}{1}{1} @@ -101,6 +103,8 @@ \addlanguage{greek}{loadhyph-el-polyton.tex}{}{1}{1} \addlanguage{polygreek}{loadhyph-el-polyton.tex}{}{1}{1} \addlanguage{monogreek}{loadhyph-el-monoton.tex}{}{1}{1} +% from hyphen-hebrew: +\addlanguage{hebrew}{hyph-he.tex}{}{0}{0} % from hyphen-hungarian: \addlanguage{hungarian}{loadhyph-hu.tex}{}{2}{2} % from hyphen-icelandic: @@ -186,6 +190,8 @@ \addlanguage{ukrainian}{loadhyph-uk.tex}{}{2}{2} % from hyphen-uppersorbian: \addlanguage{uppersorbian}{loadhyph-hsb.tex}{}{2}{2} +% from hyphen-vietnamese: +\addlanguage{vietnamese}{hyph-vi.tex}{}{0}{0} % from hyphen-welsh: \addlanguage{welsh}{loadhyph-cy.tex}{}{2}{3} %%% No changes may be made beyond this point. diff --git a/Master/texmf-dist/tex/generic/config/language.us b/Master/texmf-dist/tex/generic/config/language.us index 0f78f5f8b1d..16f40dbc9cb 100644 --- a/Master/texmf-dist/tex/generic/config/language.us +++ b/Master/texmf-dist/tex/generic/config/language.us @@ -56,8 +56,4 @@ english hyphen.tex % do not change! dumylang dumyhyph.tex % for testing a new language. nohyphenation zerohyph.tex % a language with no patterns at all. -% temp until hyph-utf8 is updated, per message from Javier, -% https://tug.org/pipermail/tex-live/2023-September/049478.html -vietnamese zerohyph.tex -hebrew zerohyph.tex % (end of static file language.us) diff --git a/Master/texmf-dist/tex/generic/expkv-bundle/expkv-cs.tex b/Master/texmf-dist/tex/generic/expkv-bundle/expkv-cs.tex index ef836dd7b57..e1a90e78dda 100644 --- a/Master/texmf-dist/tex/generic/expkv-bundle/expkv-cs.tex +++ b/Master/texmf-dist/tex/generic/expkv-bundle/expkv-cs.tex @@ -13,7 +13,7 @@ %% See http://www.latex-project.org/lppl.txt %% ---------------------------------------------------------------- %% -%% Copyright (C) 2020-2023 Jonathan P. Spratte +%% Copyright (C) 2020-2024 Jonathan P. Spratte %% %% 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 @@ -52,8 +52,8 @@ \else \expandafter\endinput \fi -\def\ekvcVersion{1.3} -\def\ekvcDate{2023-01-23} +\def\ekvcVersion{1.4} +\def\ekvcDate{2024-12-16} \csname ekvc@tmp\endcsname \expandafter\chardef\csname ekvc@tmp\endcsname=\catcode`\@ \catcode`\@=11 @@ -646,22 +646,26 @@ } \def\ekvc@enum@name#1#2#3{ekvc#1(#2)#3} \ekvpDefType{ekvc@setup@secondary}{enum} - {\ekvpAssertTwoValues{#3}\ekvc@type@enum\ekvc@type@enum@{#1}#3} + {\ekvpAssertTwoValues{#3}\ekvc@type@enum{#1}#3} \ekvpDefType{ekvc@setup@secondary}{choice} - {\ekvpAssertTwoValues{#3}\ekvc@type@enum\ekvc@type@choice@{#1}#3} -\protected\long\def\ekvc@type@enum#1#2#3% + {\ekvpAssertTwoValues{#3}\ekvc@type@choice{#1}#3} +\protected\long\def\ekvc@type@enum@or@choice#1#2% {% - \ekvc@assert@defined{#3}% + \ekvc@assert@defined{#2}% \ekvc@long\edef\ekvc@tmp##1% {% \ekv@unexpanded{\expandafter\ekvc@h@enum\detokenize}{##1}% \ekv@unexpanded{\ekvc@stop}% - {\ekvc@set}{#2}% + {\ekvc@set}{#1}% }% - \ekvlet\ekvc@set{#2}\ekvc@tmp + \ekvlet\ekvc@set{#1}\ekvc@tmp + } +\protected\long\def\ekvc@type@enum#1#2% + {% + \ekvc@type@enum@or@choice{#1}{#2}% \def\ekvc@tmp{0}% \expandafter\ekvcsvloop\expandafter - {\expandafter#1\csname\ekv@name\ekvc@set{#3}\endcsname{#2}}% + {\expandafter\ekvc@type@enum@\csname\ekv@name\ekvc@set{#2}\endcsname{#1}}% } \ekv@exparg{\protected\long\def\ekvc@type@enum@#1#2#3}% {% @@ -670,12 +674,29 @@ {\ekv@unexpanded{#1}{\ekvc@tmp}}% \edef\ekvc@tmp{\the\numexpr\ekvc@tmp+1\relax}% } -\ekv@exparg{\protected\long\def\ekvc@type@choice@#1#2#3}% +\protected\long\def\ekvc@type@choice#1#2% + {% + \ekvc@type@enum@or@choice{#1}{#2}% + \ekv@exparg + {% + \expandafter\ekvparse\expandafter + {% + \expandafter\ekvc@type@choice@k + \csname\ekv@name\ekvc@set{#2}\endcsname{#1}% + }% + }% + {% + \expandafter\ekvc@type@choice@p + \csname\ekv@name\ekvc@set{#2}\endcsname{#1}% + }% + } +\ekv@exparg{\protected\long\def\ekvc@type@choice@p#1#2#3#4}% {% \expandafter\expandafter\expandafter\edef\expandafter \csname\ekvc@enum@name\ekvc@set{#2}{\detokenize{#3}}\endcsname - {\ekv@unexpanded{#1{#3}}}% + {\ekv@unexpanded{#1{#4}}}% } +\protected\long\def\ekvc@type@choice@k#1#2#3{\ekvc@type@choice@p#1{#2}{#3}{#3}} \ekv@if@lastnamedcs {% \ekv@exparg{\def\ekvc@h@enum#1\ekvc@stop#2#3}% diff --git a/Master/texmf-dist/tex/generic/expkv-bundle/expkv-def.tex b/Master/texmf-dist/tex/generic/expkv-bundle/expkv-def.tex index 89ddadbf916..078f7ea0dac 100644 --- a/Master/texmf-dist/tex/generic/expkv-bundle/expkv-def.tex +++ b/Master/texmf-dist/tex/generic/expkv-bundle/expkv-def.tex @@ -13,7 +13,7 @@ %% See http://www.latex-project.org/lppl.txt %% ---------------------------------------------------------------- %% -%% Copyright (C) 2020-2023 Jonathan P. Spratte +%% Copyright (C) 2020-2024 Jonathan P. Spratte %% %% 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 @@ -52,8 +52,8 @@ \else \expandafter\endinput \fi -\def\ekvdVersion{1.0} -\def\ekvdDate{2023-01-23} +\def\ekvdVersion{1.1} +\def\ekvdDate{2024-12-16} \csname ekvd@tmp\endcsname \expandafter\chardef\csname ekvd@tmp\endcsname=\catcode`\@ \catcode`\@=11 @@ -456,6 +456,20 @@ } \protected\long\def\ekvd@type@smeta@#1#2#3% {\ekvd@prot\ekvd@long\ekv@expargtwice{\def\ekvd@tmp#3}{\ekvset{#1}{#2}}} +\ekvd@def@type{alias} + {% + \ekvd@assert@arg + \ekvd@assert@not@protected + \ekvd@assert@not@long + \ekvd@assert@not@also + \ekvifdefined\ekvd@set{#3}{\ekvd@do@new{}{#1}}{}% + \ekvifdefinedNoVal\ekvd@set{#3}{\ekvd@do@new{NoVal}{#1}}{}% + \ekvpAssertTF + {\ekvifdefined\ekvd@set{#3}\@firstoftwo{\ekvifdefinedNoVal\ekvd@set{#3}}}% + {undefined key `#3'}% + \ekvifdefined\ekvd@set{#3}{\ekvletkv\ekvd@set{#1}\ekvd@set{#3}}{}% + \ekvifdefinedNoVal\ekvd@set{#3}{\ekvletkvNoVal\ekvd@set{#1}\ekvd@set{#3}}{}% + } \protected\def\ekvd@type@choice#1% {% \ekvd@assert@not@long @@ -542,6 +556,35 @@ {#1=\@firstofone{\ekvd@tmp} }% \edef\ekvd@tmp{\the\numexpr\ekvd@tmp+1\relax}% } +\ekvd@def@type{choice-aliases} + {% + \ekvd@assert@arg + \ekvd@assert@not@protected + \ekvd@assert@not@long + \ekvd@assert@not@also + \ekvd@assert@already@choice{#1}% + \ekvparse\ekvd@err@missing@value{\ekvd@t@choicealias{#1}}{#3}% + } +\protected\long\def\ekvd@t@choicealias#1#2#3% + {% + \ifx\ekvd@do@new\ekvd@assert@new + \ekv@fi@firstofone + \fi + \@gobble + {% + \ekv@ifdefined{\ekvd@choice@name\ekvd@set{#1}{#2}}% + {\ekvd@err@not@new@choice{#2}\ekv@gobbleto@stop}% + {}% + }% + \ekv@ifdefined{\ekvd@choice@name\ekvd@set{#1}{#3}}% + {% + \expandafter\let + \csname\ekvd@choice@name\ekvd@set{#1}{#2}\expandafter\endcsname + \csname\ekvd@choice@name\ekvd@set{#1}{#3}\endcsname + }% + {\ekvd@err@undefined@choice{#1}{#3}}% + \@gobble\ekv@stop + } \ekvd@def@type{unknown-choice} {% \ekvd@do@new@for@name{\ekvd@unknown@choice@name\ekvd@set{#1}}% @@ -770,9 +813,14 @@ } \protected\def\ekvd@if@not@already@choice#1% {% - \expandafter\ekvd@if@not@already@choice@a - \csname\ekv@name\ekvd@set{#1}\endcsname - {}\ekvd@h@choice\ekvd@stop + \ekvifdefined\ekvd@set{#1}% + {% + \expandafter + \ekvd@if@not@already@choice@a + \csname\ekv@name\ekvd@set{#1}\endcsname + {}\ekvd@h@choice\ekvd@stop + }% + {\@firstofone}% } \protected\def\ekvd@if@not@already@choice@a {% @@ -782,6 +830,8 @@ {% \ekv@ifempty{#2}\@firstofone\@gobble } +\long\def\ekvd@assert@already@choice#1% + {\ekvd@if@not@already@choice{#1}{\ekvd@err@not@choice\ekvpGobbleT}} \long\def\ekvd@ifspace#1% {% \ekvd@ifspace@#1 \ekv@ifempty@B @@ -813,7 +863,7 @@ {% \ekvd@errm {% - Undefined noval key `\ekv@unexpanded{#1}' found while processing + Undefined NoVal key `\ekv@unexpanded{#1}' found while processing `\ekvd@cur'% }% } @@ -835,8 +885,19 @@ } \protected\def\ekvd@err@not@new {\ekvd@errm{The key for `\ekvd@cur' is already defined}} -\protected\long\def\ekvd@err@misused@unknown +\protected\def\ekvd@err@not@new@choice#1% + {\ekvd@errm{The choice `\detokenize{#1}' is already defined for `\ekvd@cur'}} +\protected\def\ekvd@err@misused@unknown {\ekvd@errm{Misuse of the unknown type found while processing `\ekvd@cur'}} +\protected\long\def\ekvd@err@not@choice + {\ekvd@errm{The key for `\ekvd@cur' is not an existing choice key}} +\protected\long\def\ekvd@err@missing@value#1% + {\ekvd@errm{Missing value for `#1' in `\ekvd@cur'}} +\protected\long\def\ekvd@err@undefined@choice#1#2% + {% + \ekvd@errm + {Undefined choice `#2' for key `#1' found while processing `\ekvd@cur'}% + } \def\ekvd@err@choice@invalid#1% {% \ekvd@err@choice@invalid@#1% diff --git a/Master/texmf-dist/tex/generic/expkv-bundle/expkv-pop.tex b/Master/texmf-dist/tex/generic/expkv-bundle/expkv-pop.tex index d0d77817d9a..163c72a30d9 100644 --- a/Master/texmf-dist/tex/generic/expkv-bundle/expkv-pop.tex +++ b/Master/texmf-dist/tex/generic/expkv-bundle/expkv-pop.tex @@ -13,7 +13,7 @@ %% See http://www.latex-project.org/lppl.txt %% ---------------------------------------------------------------- %% -%% Copyright (C) 2020-2023 Jonathan P. Spratte +%% Copyright (C) 2020-2024 Jonathan P. Spratte %% %% 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 diff --git a/Master/texmf-dist/tex/generic/expkv-bundle/expkv.tex b/Master/texmf-dist/tex/generic/expkv-bundle/expkv.tex index 5e6488039b1..a5bfd2b79af 100644 --- a/Master/texmf-dist/tex/generic/expkv-bundle/expkv.tex +++ b/Master/texmf-dist/tex/generic/expkv-bundle/expkv.tex @@ -13,7 +13,7 @@ %% See http://www.latex-project.org/lppl.txt %% ---------------------------------------------------------------- %% -%% Copyright (C) 2020-2023 Jonathan P. Spratte +%% Copyright (C) 2020-2024 Jonathan P. Spratte %% %% 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 @@ -74,8 +74,8 @@ \expandafter\endinput \fi \fi -\def\ekvVersion{2.0} -\def\ekvDate{2023-01-23} +\def\ekvVersion{2.1} +\def\ekvDate{2024-12-26} \csname ekv@tmp\endcsname \expandafter\chardef\csname ekv@tmp\endcsname=\catcode`\@ \catcode`\@=11 @@ -123,6 +123,9 @@ \long\def\ekv@ifblank@\ekv@mark#1#2\ekv@stop{} \long\def\ekv@ifblank@false\ekv@stop\@firstoftwo#1#2{#2} \def\ekv@ifblank@gobbletrue\ekv@stop#1{} +\long\def\ekv@ifatmostone#1% + {\ekv@ifatmostone@#1\ekv@stop\ekv@ifblank@false\ekv@stop\@firstoftwo} +\long\def\ekv@ifatmostone@#1#2#3\ekv@stop{} \ekv@if@lastnamedcs {% \long\def\ekv@ifdefined#1{\ifcsname#1\endcsname\ekv@ifdef@\fi\@secondoftwo} @@ -228,14 +231,13 @@ {\ekv@csv@loop{#2}\ekv@mark} \def\ekv@name@set#1{ekv#1(} \long\def\ekv@name@key#1{#1)} -\edef\ekv@name +\long\ekv@expandedarg{\def\ekv@name#1#2}% {% \ekv@unexpanded\expandafter{\ekv@name@set{#1}}% \ekv@unexpanded\expandafter{\ekv@name@key{\detokenize{#2}}}% } -\long\ekv@exparg{\def\ekv@name#1#2}{\ekv@name} \def\ekv@undefined@set#1{! expkv Error: Set `#1' undefined.} -\edef\ekv@checkvalid +\protected\ekv@expandedarg{\def\ekv@checkvalid#1#2}% {% \ekv@unexpanded\expandafter{\ekv@ifempty{#1}}% \ekv@unexpanded @@ -256,7 +258,6 @@ }% \ekv@unexpanded{\@gobble}% } -\ekv@exparg{\protected\def\ekv@checkvalid#1#2}{\ekv@checkvalid}% \ekv@expargtwice{\long\def\ekvifdefined#1#2}% {\expandafter\ekv@ifdefined\expandafter{\ekv@name{#1}{#2}}} \ekv@expargtwice{\long\def\ekvifdefinedNoVal#1#2}% @@ -1071,22 +1072,22 @@ \ekv@expansion@parse@pair@\@gobble{#2}% } \long\def\ekv@expansion@parse@pair@#1#2\@gobble#3{\ekv@unexpanded{#3{#1}{#2}}} -\ekv@expargtwice{\protected\def\ekvsetdef#1#2}% +\ekv@exparg{\protected\def\ekvsetdef#1#2}% {% \romannumeral - \ekv@exparg{\ekv@zero\ekv@exparg{\def#1##1}}% + \ekv@exparg{\expandafter\ekv@zero\ekv@exparg{\def#1##1}}% {\ekvset{#2}{##1}}% } -\ekv@expargtwice{\protected\def\ekvsetSneakeddef#1#2}% +\ekv@exparg{\protected\def\ekvsetSneakeddef#1#2}% {% \romannumeral - \ekv@exparg{\ekv@zero\ekv@exparg{\long\def#1##1##2}}% + \ekv@exparg{\expandafter\ekv@zero\ekv@exparg{\def#1##1##2}}% {\ekvsetSneaked{#2}{##1}{##2}}% } -\ekv@expargtwice{\protected\def\ekvsetdefSneaked#1#2#3}% +\ekv@exparg{\protected\long\def\ekvsetdefSneaked#1#2#3}% {% \romannumeral - \ekv@exparg{\ekv@zero\ekv@exparg{\long\def#1##1}}% + \ekv@exparg{\expandafter\ekv@zero\ekv@exparg{\def#1##1}}% {\ekvsetSneaked{#2}{#3}{##1}}% } \begingroup @@ -1094,7 +1095,11 @@ \@firstofone{\endgroup \def\ekv@alignsafe{\romannumeral\iffalse{\fi`^^@ } } -\def\ekv@endalignsafe{\ifnum`{=\ekv@zero}\fi} +\begingroup +\catcode`\^^@=1 +\@firstofone{\endgroup + \edef\ekv@endalignsafe{\ekv@unexpanded{\romannumeral`^^@\iffalse}\fi} } +} \begingroup \def\ekvoptarg#1#2{% \endgroup @@ -1112,25 +1117,22 @@ #2% \@firstofone{ ##2}{##3}% } -\long\def\ekv@optarg@b\ekv@mark[\ekv@mark\ifnum`##1\fi\@firstofone##2##3##4##5]% +\@firstofone{\long\def\ekv@optarg@b + \ekv@mark[\ekv@mark\romannumeral`##1\fi} \@firstofone##2##3##4##5]% {#2##2{##5}} -\long\def\ekv@optargTF@b - ##1\ekv@mark[\ekv@mark\ifnum`##2\fi\@firstofone##3##4##5]% +\@firstofone{\long\def\ekv@optargTF@b + ##1\ekv@mark[\ekv@mark\romannumeral`##2\fi} \@firstofone##3##4##5]% {#2 ##1{##5}} } \ekv@exparg - {% - \expandafter\ekv@strip\expandafter - {\expandafter\ekv@mark\ekv@alignsafe}% - \ekvoptarg - }% + {\ekv@exparg\ekv@strip{\expandafter\ekv@mark\ekv@alignsafe}\ekvoptarg}% \ekv@endalignsafe \long\def\ekv@optarg@if#1\ekv@mark[\ekv@mark{} \long\def\ekv@ifstar#1#2#3% {% - \if*\string#3% - \ekv@fi@firstoftwo - \fi + \ekv@ifatmostone{#3}% + {\if*\string#3\ekv@fi@firstoftwo\fi}% + {}% \@secondoftwo {#1}% {#2{#3}}% @@ -1223,7 +1225,7 @@ \ekv@exparg{\long\def\ekv@err@common@#1`#2' #3.#4#5}% {\ekv@err{#4 `#5' in set `#2'}} \ekv@exparg{\long\def\ekv@err@unknown#1#2}{\ekv@err@common{unknown key}{#1}} -\ekv@exparg{\long\def\ekv@err@noarg#1#2} +\ekv@exparg{\long\def\ekv@err@noarg#1#2}% {\ekv@err@common{unwanted value for}{#1}} \ekv@exparg{\long\def\ekv@err@reqval#1#2}% {\ekv@err@common{missing value for}{#1}} @@ -1232,7 +1234,7 @@ \ekv@exparg{\def\ekv@err@redirect@k@notfound#1#2\ekv@stop}% {\ekv@err{no NoVal key `#1' in sets #2}} \ekv@exparg{\def\ekv@err@undefined@expansion#1\fi}% - {\expandafter\fi\ekv@err{Undefined expansion rule `#1'}}% + {\expandafter\fi\ekv@err{Undefined expansion rule `#1'}} \ekv@exparg{\def\ekv@err@erroneous@variable#1}% {\ekv@err{Erroneous variable `#1' used}} \ekv@exparg{\def\ekv@err@key@no@reinsert}% diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/conversions/conv-utf8-ec.tex b/Master/texmf-dist/tex/generic/hyph-utf8/conversions/conv-utf8-ec.tex index 13e4638d6d3..09fbb043077 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/conversions/conv-utf8-ec.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/conversions/conv-utf8-ec.tex @@ -6,7 +6,7 @@ % This file is part of hyph-utf8 package and autogenerated. % See http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/conversions/conv-utf8-il2.tex b/Master/texmf-dist/tex/generic/hyph-utf8/conversions/conv-utf8-il2.tex index 4b656a19c6e..db6552ed466 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/conversions/conv-utf8-il2.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/conversions/conv-utf8-il2.tex @@ -6,7 +6,7 @@ % This file is part of hyph-utf8 package and autogenerated. % See http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/conversions/conv-utf8-il3.tex b/Master/texmf-dist/tex/generic/hyph-utf8/conversions/conv-utf8-il3.tex index 83ced73df56..cde62eee382 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/conversions/conv-utf8-il3.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/conversions/conv-utf8-il3.tex @@ -6,7 +6,7 @@ % This file is part of hyph-utf8 package and autogenerated. % See http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/conversions/conv-utf8-l7x.tex b/Master/texmf-dist/tex/generic/hyph-utf8/conversions/conv-utf8-l7x.tex index 7d7cfede6f6..6406aae84e0 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/conversions/conv-utf8-l7x.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/conversions/conv-utf8-l7x.tex @@ -6,7 +6,7 @@ % This file is part of hyph-utf8 package and autogenerated. % See http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/conversions/conv-utf8-lmc.tex b/Master/texmf-dist/tex/generic/hyph-utf8/conversions/conv-utf8-lmc.tex index af1a2685c16..d8c04c9f02b 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/conversions/conv-utf8-lmc.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/conversions/conv-utf8-lmc.tex @@ -6,7 +6,7 @@ % This file is part of hyph-utf8 package and autogenerated. % See http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/conversions/conv-utf8-lth.tex b/Master/texmf-dist/tex/generic/hyph-utf8/conversions/conv-utf8-lth.tex index 702382ade85..db496e61238 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/conversions/conv-utf8-lth.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/conversions/conv-utf8-lth.tex @@ -6,7 +6,7 @@ % This file is part of hyph-utf8 package and autogenerated. % See http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/conversions/conv-utf8-qx.tex b/Master/texmf-dist/tex/generic/hyph-utf8/conversions/conv-utf8-qx.tex index d96a5d33bb9..dd0f98feb34 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/conversions/conv-utf8-qx.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/conversions/conv-utf8-qx.tex @@ -6,7 +6,7 @@ % This file is part of hyph-utf8 package and autogenerated. % See http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/conversions/conv-utf8-t2a.tex b/Master/texmf-dist/tex/generic/hyph-utf8/conversions/conv-utf8-t2a.tex index 1ab8d0fd6b1..bada2ddedcb 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/conversions/conv-utf8-t2a.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/conversions/conv-utf8-t2a.tex @@ -6,7 +6,7 @@ % This file is part of hyph-utf8 package and autogenerated. % See http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/conversions/conv-utf8-t8m.tex b/Master/texmf-dist/tex/generic/hyph-utf8/conversions/conv-utf8-t8m.tex index f37659ce830..433b017a682 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/conversions/conv-utf8-t8m.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/conversions/conv-utf8-t8m.tex @@ -6,7 +6,7 @@ % This file is part of hyph-utf8 package and autogenerated. % See http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-af.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-af.tex index b17b5dd287d..b80039c5edb 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-af.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-af.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-as.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-as.tex index 0f4a5b7dcd4..8bb2e43c1b3 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-as.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-as.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-be.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-be.tex index e46119f4501..48495017c10 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-be.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-be.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-bg.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-bg.tex index 5db5d4b6910..438119867a1 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-bg.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-bg.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-bn.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-bn.tex index 4d999993c19..0a98dcbbd06 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-bn.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-bn.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-ca.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-ca.tex index 56235624de1..4114e40b820 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-ca.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-ca.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-cop.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-cop.tex index e43026d893e..85afeb4cfaa 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-cop.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-cop.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-cs.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-cs.tex index 4517ff755ca..fd04f0ca27a 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-cs.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-cs.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-cu.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-cu.tex index d2a3b46681e..43453ba88e4 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-cu.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-cu.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-cy.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-cy.tex index d908c0e1c25..cc664a49c7a 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-cy.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-cy.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-da.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-da.tex index 5fe6a25f567..4327e6e293a 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-da.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-da.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-de-1901.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-de-1901.tex index 6ffc07b2322..0aed99f6574 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-de-1901.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-de-1901.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-de-1996.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-de-1996.tex index 0ed889f4916..e9e0fa82491 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-de-1996.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-de-1996.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-de-ch-1901.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-de-ch-1901.tex index fdb01e23488..c39409cb733 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-de-ch-1901.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-de-ch-1901.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-el-monoton.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-el-monoton.tex index e8647ac6924..c3046b85e79 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-el-monoton.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-el-monoton.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-el-polyton.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-el-polyton.tex index 9b610048130..62eae94df8f 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-el-polyton.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-el-polyton.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-en-gb.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-en-gb.tex index 720d50c7450..58c40c8bcf1 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-en-gb.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-en-gb.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-en-us.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-en-us.tex index 04b851911b4..b38eb0f17e4 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-en-us.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-en-us.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-eo.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-eo.tex index 6d81d70d7c7..b1845f6aeef 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-eo.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-eo.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-es.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-es.tex index 9c93dfb7546..24241dad5a6 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-es.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-es.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-et.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-et.tex index b9871207915..a32c852adaf 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-et.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-et.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-eu.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-eu.tex index de2ad95d268..e821dba23c6 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-eu.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-eu.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-fi-x-school.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-fi-x-school.tex index 185ed98fd16..098dffba3ee 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-fi-x-school.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-fi-x-school.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-fi.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-fi.tex index eb90a4653aa..254f0725708 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-fi.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-fi.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-fr.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-fr.tex index 463f8a176ae..361f2de2b50 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-fr.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-fr.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-fur.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-fur.tex index 2682c8aff65..bf53aa6a34d 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-fur.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-fur.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-ga.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-ga.tex index 37a553bd9c6..2ee9d83c700 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-ga.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-ga.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-gl.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-gl.tex index c5abf7a6828..00d87cc83c9 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-gl.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-gl.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-grc.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-grc.tex index 5a1a6a22718..af7142d42bd 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-grc.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-grc.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-gu.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-gu.tex index 7ed92b440db..d34e0aa9cb1 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-gu.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-gu.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-hi.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-hi.tex index bf116b97272..d77a9bc303a 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-hi.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-hi.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-hr.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-hr.tex index a18ba96cd8d..04993c49d1f 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-hr.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-hr.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-hsb.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-hsb.tex index 7696b5966c8..72aee916ab6 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-hsb.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-hsb.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-hu.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-hu.tex index 0b8aec54ca3..97c1edd0f98 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-hu.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-hu.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-hy.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-hy.tex index e5efc1fa0b9..c88c72b2d9b 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-hy.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-hy.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-ia.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-ia.tex index 5e3672b8564..cfe99f83b34 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-ia.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-ia.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-id.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-id.tex index 34321ecf447..b7fd9578e52 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-id.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-id.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-is.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-is.tex index 727e4639ea2..e8813d8b5fd 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-is.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-is.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-it.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-it.tex index c9727e22749..01ab3749cb4 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-it.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-it.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-ka.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-ka.tex index 04ca3313c3c..633ac5b4f45 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-ka.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-ka.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-kmr.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-kmr.tex index 8093cb205a9..7952a6302b1 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-kmr.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-kmr.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-kn.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-kn.tex index a9cb0bcf6fb..5d5e8796c0f 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-kn.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-kn.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-la-x-classic.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-la-x-classic.tex index 2182f587be7..a64e5418e97 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-la-x-classic.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-la-x-classic.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-la-x-liturgic.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-la-x-liturgic.tex index bdd1f2b3fea..af6d7caf6db 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-la-x-liturgic.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-la-x-liturgic.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-la.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-la.tex index 49f91a7e1cd..76e02de87f8 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-la.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-la.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-lt.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-lt.tex index 423c4adc0d2..c336e7b30de 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-lt.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-lt.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-lv.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-lv.tex index dc81e63dea1..0390b1a742d 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-lv.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-lv.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-mk.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-mk.tex index 11be3b030e6..8520f441b8a 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-mk.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-mk.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-ml.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-ml.tex index 563f9b9bb1e..c7acb5c62cb 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-ml.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-ml.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-mn-cyrl-x-lmc.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-mn-cyrl-x-lmc.tex index dcb9bf541d6..e4ccb343796 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-mn-cyrl-x-lmc.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-mn-cyrl-x-lmc.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-mn-cyrl.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-mn-cyrl.tex index bce43041ec4..c915d6b2ac2 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-mn-cyrl.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-mn-cyrl.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-mr.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-mr.tex index 56d1423a77a..e62e7e1d4ae 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-mr.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-mr.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-mul-ethi.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-mul-ethi.tex index f20d8882c70..f8a564bb753 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-mul-ethi.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-mul-ethi.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-nb.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-nb.tex index c55de38eda5..7a466db0def 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-nb.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-nb.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-nl.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-nl.tex index 06d02609c01..a1770913388 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-nl.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-nl.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-nn.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-nn.tex index 47000c51cb4..28b71c919db 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-nn.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-nn.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-oc.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-oc.tex index d8eef8ab69e..b4974baaf36 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-oc.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-oc.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-or.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-or.tex index a16759f495a..06e42acb9e6 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-or.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-or.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-pa.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-pa.tex index 41b81988805..b6629b48b5c 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-pa.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-pa.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-pi.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-pi.tex index 45c56eed192..865d8020620 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-pi.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-pi.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-pl.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-pl.tex index 01c5ae07855..494841ae424 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-pl.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-pl.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-pms.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-pms.tex index abaeeee666f..7fbba784e2e 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-pms.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-pms.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-pt.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-pt.tex index 4422db8e156..bcbe772adea 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-pt.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-pt.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-rm.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-rm.tex index c1de90eb7ce..3588ffc2180 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-rm.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-rm.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % @@ -13,7 +13,6 @@ % these lines may be moved to a separate file. % \begingroup -\lccode`\'=`\' % Test for pTeX \ifx\kanjiskip\undefined % Test for native UTF-8 (which gets only a single argument) @@ -23,14 +22,14 @@ % Unicode-aware engine (such as XeTeX or LuaTeX) only sees a single (2-byte) argument \message{UTF-8 Romansh hyphenation patterns} \input hyph-rm.tex - \input hyph-quote-rm.tex \else % 8-bit engine (such as TeX or pdfTeX) - \message{ASCII Romansh hyphenation patterns} + \message{EC Romansh hyphenation patterns} + \input conv-utf8-ec.tex \input hyph-rm.tex \fi\else % pTeX - \message{ASCII Romansh hyphenation patterns} - \input hyph-rm.tex + \message{EC Romansh hyphenation patterns} + \input hyph-rm.ec.tex \fi \endgroup diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-ro.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-ro.tex index 73c3a473bb2..b71643968f6 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-ro.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-ro.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-ru.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-ru.tex index c340b2e8eab..b53eeba7c29 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-ru.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-ru.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-sa.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-sa.tex index 5ebff462ae0..62fa82a2355 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-sa.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-sa.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-sk.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-sk.tex index 8f2d396e2d2..e9a6108575a 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-sk.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-sk.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-sl.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-sl.tex index 9744070ebbc..a41989f9396 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-sl.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-sl.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-sq.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-sq.tex new file mode 100644 index 00000000000..28662b986bf --- /dev/null +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-sq.tex @@ -0,0 +1,37 @@ +% filename: loadhyph-sq.tex +% language: albanian +% +% Loader for hyphenation patterns, generated by +% source/generic/hyph-utf8/generate-pattern-loaders.rb +% See also http://tug.org/tex-hyphen +% +% Copyright 2008-2025 TeX Users Group. +% You may freely use, modify and/or distribute this file. +% (But consider adapting the scripts if you need modifications.) +% +% Once it turns out that more than a simple definition is needed, +% these lines may be moved to a separate file. +% +\begingroup +\lccode`\'=`\' +% Test for pTeX +\ifx\kanjiskip\undefined +% Test for native UTF-8 (which gets only a single argument) +% That's Tau (as in Taco or ΤΕΧ, Tau-Epsilon-Chi), a 2-byte UTF-8 character +\def\testengine#1#2!{\def\secondarg{#2}}\testengine Τ!\relax +\ifx\secondarg\empty + % Unicode-aware engine (such as XeTeX or LuaTeX) only sees a single (2-byte) argument + \message{UTF-8 Albanian hyphenation patterns} + \input hyph-sq.tex + \input hyph-quote-sq.tex +\else + % 8-bit engine (such as TeX or pdfTeX) + \message{EC Albanian hyphenation patterns} + \input conv-utf8-ec.tex + \input hyph-sq.tex +\fi\else + % pTeX + \message{EC Albanian hyphenation patterns} + \input hyph-sq.ec.tex +\fi +\endgroup diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-sr-cyrl.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-sr-cyrl.tex index b778cef4f77..daf9a934745 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-sr-cyrl.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-sr-cyrl.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-sr-latn.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-sr-latn.tex index 73f1969ec76..d2d862f98f4 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-sr-latn.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-sr-latn.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-sv.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-sv.tex index 1995112bbdf..84c4b379d11 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-sv.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-sv.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-ta.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-ta.tex index b9814a55a22..ab6c99105b2 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-ta.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-ta.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-te.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-te.tex index 47d2b6c6192..9381320d047 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-te.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-te.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-th.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-th.tex index 35fe2926987..a9bf62a1898 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-th.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-th.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-tk.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-tk.tex index 62470dcfa99..306cf82f0c2 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-tk.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-tk.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-tr.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-tr.tex index 21ecabff952..5d3eb037aba 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-tr.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-tr.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-uk.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-uk.tex index 528ef6eed4e..72e0f2b8f04 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-uk.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-uk.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-zh-latn-pinyin.tex b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-zh-latn-pinyin.tex index 96f0c548f29..9bac42fd6ee 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-zh-latn-pinyin.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/loadhyph/loadhyph-zh-latn-pinyin.tex @@ -5,7 +5,7 @@ % source/generic/hyph-utf8/generate-pattern-loaders.rb % See also http://tug.org/tex-hyphen % -% Copyright 2008-2021 TeX Users Group. +% Copyright 2008-2025 TeX Users Group. % You may freely use, modify and/or distribute this file. % (But consider adapting the scripts if you need modifications.) % diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/patterns/ptex/hyph-rm.ec.tex b/Master/texmf-dist/tex/generic/hyph-utf8/patterns/ptex/hyph-rm.ec.tex new file mode 100644 index 00000000000..d9debed224e --- /dev/null +++ b/Master/texmf-dist/tex/generic/hyph-utf8/patterns/ptex/hyph-rm.ec.tex @@ -0,0 +1,398 @@ +% pTeX-friendly hyphenation patterns +% +% language: romansh (rm) +% encoding: ec +% +% This file has been auto-generated from hyph-rm.tex +% with a script [texmf]/scripts/generic/hyph-utf8/generate-ptex-patterns.rb +% See the original file for details about author, licence etc. +% +\bgroup +\lccode"F9="F9 +\patterns{ +.a3p2n +.anti1 +.anti3m2n +an3ti4er +an3ti4era +.bio1 +.ca4p3s +.circu2m1 +.co2n3j +.contro1 +.co1o2p +.di2s3 +.di2s4ch3oc +di3s4e3gnar +.e2x1e +.ex2tra3 +ex4em3pel +ex4aim3pel +.fran2k3 +.free3 +.li3p2sa +.narco1 +.opto1 +.orto3p2 +.para1 +.plu2s3q +.poli3p2 +.pre1 +.p2s +.re1ac +.re1i2scr +.sha2re3 +.tran2s3ac +.tran2s3c +.tran2s3d +.tran2s3l +.tran2s3n +.tran2s3p +.tran2s3r +.tran2s3t +.su2b3j +.su2b3lu +.su2b3r +.wa2g3n +.wel2t1 +a1ie +a1iu +ame2gl1 +atg3na +a1uo +a1ya +2at. +e1iu +e2w +o1ia +o1ie +o1io +o1iu +1b +2bb +2bc +2bd +2bf +2bm +2bn +2bp +2bs +2bt +bu3n4ga +2bv +2b. +1c +2cb +2c3c +2cd +2cf +2ck +2cm +2cn +2cq +2cs +2ct +2cz +2chh +2chb +ch2r +2chn +2c. +.c2 +1d +2db +2dd +2dg +2dl +2dm +2dn +2dp +4ds. +d2sch +4dsch. +2dt +2dv +2dw +2d. +.d2 +.esch3an. +1f +2fb +2fg +2fn +2fs +2ft +2f. +1g +2gb +2gd +2gf +2gg +giu2v1na +4gls. +2gm +4gns. +2gp +2gs +2gt +2gv +2gw +2gz +2gh2t +2g. +1h +2hb +2hd +2hh +hi3p2n +h2l +2hm +2hn +2hr +2hv +2h. +1j +2j. +4js. +1k +2kg +2kf +k2h +2kk +k2l +2km +k2r +2ks +2kt +2k. +1l +2lb +2lc +2ld +2l3f2 +2lg +l2h +l2j +2lk +2lm +2ln +2lp +2lq +2lr +2ls +2lt +2lv +2lw +2lz +2l. +1m +2mb +2mc +2mf +2ml +2mn +2mp +2mq +2mr +2ms +2mt +2mv +2mw +2m. +1n +2nb +2nc +2nd +2nf +2ng +2nk +2nl +2nm +2np +2nq +2nr +2ns +4ns. +2n3sch +4ch. +4gl. +4gn. +4tg. +4sch. +4tsch. +n2s3fer +2nt +2nv +2nz +n2g3n +2nheit +2n. +on3li4ne +.oz3an3de +.oz1i2 +1p +2pd +per3su3n4ga +l^^f9n4ga +p2h +4ph. +2pn +3p2ne +2ps +3p2sic +2pt +2pz +2p. +1q +2qq +2q. +1r +2rb +2rc +2rd +2rf +r2h +2rg +2rk +2rl +2rm +2rn +2rp +2rq +2rs +2rt +r2t2s3 +2rv +2rx +2rw +2rz +2r. +1s2 +2schs. +2shm +2sh. +2s3l +2s3s +s4s3m +2s3p2n +2st. +2stb +2stc +2std +2stf +4stg. +2stm +2stn +2stp +2sts +2stt +2stv +2sz +4s. +1t +2tb +2tc +2td +2tf +4tgs. +t2h +t2l +2tm +2tn +2tp +t2s +4tschs. +4ts. +t2t3s +2tv +2tw +t2z +2tzk +tz2s +2t. +1v +2vc +2vs. +2vv +2v. +1w +w2h +wa2r +2w1y +2w. +1x +2xb +2xc +2xf +2xh +2xm +2xp +4xs. +2xt +2xw +2x. +y1ou +y1i +1z +2zb +2zd +2zl +2zn +2zp +2zt +2zs +2zv +2z. +.z2 +2f3f +2l3l +2m3m +2n3n +2p3p +2r3r +2t3t +2z3z +s2c2h2 +3t4s4c4h2 +t2g +g2n +g2l +c2h +g2h +b2l +c2l +f2l +p2l +b2r +c2r +d2r +f2r +g2r +p2r +t2r +z2r +s2c +s2d +s2p +s2t +s2t2g +v2l +v2r +4sps. +.pe4r3en3cun3ter. +pro4s3ma +.tran2s3f +omi4s3du +.giu3v4en3t4e4tg3na +.cre4s3mar. +4z3cha +.vi4sch3na +.mu4sch3na. +.ou4vra. +.pi4tsch3na +.hi4gh5light. +.po4d5cast. +.we4l4l5ness. +.ti4c4k4et. +} +\egroup diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/patterns/ptex/hyph-sq.ec.tex b/Master/texmf-dist/tex/generic/hyph-utf8/patterns/ptex/hyph-sq.ec.tex new file mode 100644 index 00000000000..373f9acb016 --- /dev/null +++ b/Master/texmf-dist/tex/generic/hyph-utf8/patterns/ptex/hyph-sq.ec.tex @@ -0,0 +1,318 @@ +% pTeX-friendly hyphenation patterns +% +% language: albanian (sq) +% encoding: ec +% +% This file has been auto-generated from hyph-sq.tex +% with a script [texmf]/scripts/generic/hyph-utf8/generate-ptex-patterns.rb +% See the original file for details about author, licence etc. +% +\bgroup +\lccode"E7="E7 +\lccode"EB="EB +\patterns{ +2'2 +.a1jo. +a1a +1b +.b2 +2b. +b2l +2bsh +1c +.c2 +2c. +2cj +2cn +2ct +1^^e7 +.^^e72 +2^^e7. +2^^e7s +^^e72k +1d +d2h +.d2 +2d. +d2j +2dn +d2r +2drr +2dt +d2shm +2dh. +2dhj2dht +2dhsh +2dh2j +2dht +dh2r +e1a +e3ll +e1u +^^eb1a +1f +.f2 +2f. +f2l +f2r +2fs +2ft +3f2sh +2f2t. +1g +.g2 +2g. +g2j +2gj. +2gjv +2gl +2gm +2gr +2gt +1h +.h2 +2h. +2hd +2hj +2hm +2hn +2ht +2hrr +i1a +i1e +i1u +.i2k3i +.i2k3j +1j2 +.j2 +2j. +2j3c2 +2j3d +2j3m +2j3p +2j3r +2j3t +2j3v +2j3s +2jf. +j4tp +2jt. +j3sh2m +1k +.k2 +2k. +k2j +2kl +2km +2kth. +k2r +2kt +2ks +2ksh +1l +.l2 +2l. +2lb +2l^^e7 +2lf +2lj +2lm +2ln +l3n2g +2ls +2lt +l2l2 +4ll. +2ll3s +4ll3z +2ll3k +4ll3gj +2ll3n +2ll3t +1m +.m2 +2m. +m2b +mb2j +mb2l +mb2r +m2j +2m3n2d +2mt +2mr +2m3sh2 +2m4sh. +2m1v +1n +.n2 +2n. +.ng2r +2nc +2nd +n2dm +n2dv +n2d3sh +2ng +2nk +2nsp +2nsh +n3sh2m +2nt +2nv +2nx +2nz +n2j +2njt +2nj. +2njv +o1i +1p +.p2 +2p. +p2j +2pn +2pt +p2je. +2ps +p2r +pa2s3her +.pe2r3af +.p^^eb2r3af +1q +.q2 +2q. +2qj +2qk +2qm +2qn +2qt +q2v +1r +.r2 +2r. +2rt +2rb2 +2r2b3r +2rc +2r^^e7 +2rd +2rc2rd +2rf +2rg +2rh +.ri3n2d +2rk +2rl +2rm +2rn +r2n3d2 +2rp +2rq +2rs +2r3sh2m +2rdh +r2dht +2r3dr +2rj +2rv +2rz +r2r +.rr2 +2rr. +2rrj +2rrk +2rrm +2rrn +2rrt +2rrs +1s +.s2 +2s. +2sh. +2sb +2sc +2sd +2sf +2sg +2sj +2sk +2sm +2sn +sn2k +2sp +2ssh +2st +st2r +3s2je2ll +sk2ll +s2ve. +s2h +.sh4 +2shm +3sh2mj +2shj +.sh2j +sh2k +2shk. +sh2n +shn4d +sh2p +.sh2q +4sh3k2r +2shq +2sh3nj +3sh4pj +3sh4pr +2shr +2shs +2sht +.sh2t +3sh2te. +1t +.t2 +4t. +2tk +t2j +2tm +2tn +2tp +2t3sh2m +t2r +2tv +t2h +.th2 +2th. +2th^^e7 +2ths +2thf +2thm +2tht +u1ar. +u1a +u1e +1v +.v2 +2v. +2vr +v2j +1x +x2h +.x2 +2x. +y1 +1z +.zb2r +.z2 +2z. +2zhd +2zm +2zn +2zj +2zs +2zt +2zv +z3sh2m +z2h +.zh2 +} +\egroup diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/patterns/quote/hyph-quote-rm.tex b/Master/texmf-dist/tex/generic/hyph-utf8/patterns/quote/hyph-quote-rm.tex deleted file mode 100644 index d77fcc305c6..00000000000 --- a/Master/texmf-dist/tex/generic/hyph-utf8/patterns/quote/hyph-quote-rm.tex +++ /dev/null @@ -1,40 +0,0 @@ -\bgroup -\lccode`\’=`\’ -\patterns{ -2’2 -2’. -2b’ -2c’ -2ch’. -2ch’’ -2d’ -2f’ -2g’ -2h’ -2j’ -2k’ -2l’. -2l’’ -2m’ -2n’ -2p’ -2q’ -2r’ -4s’. -4s’’ -2sch’ -2schs’ -2sh’ -2st’ -4tsch’ -4tschs’ -2t’. -2t’’ -2v’. -2v’’ -2w’ -2x’ -2z’. -2z’’ -} -\egroup diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/patterns/quote/hyph-quote-sq.tex b/Master/texmf-dist/tex/generic/hyph-utf8/patterns/quote/hyph-quote-sq.tex new file mode 100644 index 00000000000..24bb149bc82 --- /dev/null +++ b/Master/texmf-dist/tex/generic/hyph-utf8/patterns/quote/hyph-quote-sq.tex @@ -0,0 +1,6 @@ +\bgroup +\lccode`\’=`\’ +\patterns{ +2’2 +} +\egroup diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/patterns/ptex/hyph-zh-latn-pinyin.ec.tex b/Master/texmf-dist/tex/generic/hyph-utf8/patterns/tex-8bit/hyph-zh-latn-pinyin.ec.tex index 89c1910cd64..89c1910cd64 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/patterns/ptex/hyph-zh-latn-pinyin.ec.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/patterns/tex-8bit/hyph-zh-latn-pinyin.ec.tex diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/patterns/tex/hyph-af.tex b/Master/texmf-dist/tex/generic/hyph-utf8/patterns/tex/hyph-af.tex index 1753ebc0a38..4fd2cf2d353 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/patterns/tex/hyph-af.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/patterns/tex/hyph-af.tex @@ -16,9 +16,25 @@ % - % email: hyphen (at) rekenaar (dot) net % licence: -% name: LPPL -% version: 1.3 -% or_later: true +% name: MIT +% text: |- +% Permission is hereby granted, free of charge, to any person obtaining a copy +% of this software and associated documentation files (the "Software"), to deal +% in the Software without restriction, including without limitation the rights +% to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +% copies of the Software, and to permit persons to whom the Software is +% furnished to do so, subject to the following conditions: +% +% The above copyright notice and this permission notice shall be included in +% all copies or substantial portions of the Software. +% +% THE SOFTWARE IS PROVIDED “AS ISâ€, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +% IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +% FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +% AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +% LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +% OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +% SOFTWARE. % hyphenmins: % generation: % left: 1 diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/patterns/tex/hyph-ar.tex b/Master/texmf-dist/tex/generic/hyph-utf8/patterns/tex/hyph-ar.tex new file mode 100644 index 00000000000..22891ad4340 --- /dev/null +++ b/Master/texmf-dist/tex/generic/hyph-utf8/patterns/tex/hyph-ar.tex @@ -0,0 +1,24 @@ +% title: (No) Hyphenation patterns for Arabic +% copyright: Copyright (C) Arthur Rosendahl 2018, 2025 +% notice: This file is part of the hyph-utf8 package. +% See http://www.hyphenation.org/tex for more information. +% language: +% name: Arabic +% tag: ar +% version: 1 +% authors: +% - Arthur Rosendahl +% licence: +% - +% name: MIT +% hyphenmins: +% typesetting: +% left: 0 +% right: 0 +% texlive: +% babelname: arabic +% use_old_loader: true +% legacy_patterns: hyph-ar.tex +% message: +% description: Prevent hyphenation in Arabic. +\patterns{} diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/patterns/tex/hyph-el-monoton.tex b/Master/texmf-dist/tex/generic/hyph-utf8/patterns/tex/hyph-el-monoton.tex index 8b94446db15..29852f716ec 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/patterns/tex/hyph-el-monoton.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/patterns/tex/hyph-el-monoton.tex @@ -9,10 +9,15 @@ % authors: % - % name: Dimitrios Filippou -% contact: dimitrios.filippou (at) riotinto.com +% contact: dimitrios.ap.filippou (at) gmail.com % licence: -% name: LPPL -% url: https://latex-project.org/lppl/ +% - This file is available under any of the following licences: +% - +% name: LPPL +% url: https://latex-project.org/lppl/ +% - +% name: MIT +% url: https://opensource.org/licenses/MIT % hyphenmins: % typesetting: % left: 1 diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/patterns/tex/hyph-el-polyton.tex b/Master/texmf-dist/tex/generic/hyph-utf8/patterns/tex/hyph-el-polyton.tex index 958811eb81e..0e6dc7fc277 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/patterns/tex/hyph-el-polyton.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/patterns/tex/hyph-el-polyton.tex @@ -9,10 +9,15 @@ % authors: % - % name: Dimitrios Filippou -% contact: dimitrios.filippou (at) riotinto.com +% contact: dimitrios.ap.filippou (at) gmail.com % licence: -% name: LPPL -% url: https://latex-project.org/lppl/ +% - This file is available under any of the following licences: +% - +% name: LPPL +% url: https://latex-project.org/lppl/ +% - +% name: MIT +% url: https://opensource.org/licenses/MIT % hyphenmins: % typesetting: % left: 1 diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/patterns/tex/hyph-fa.tex b/Master/texmf-dist/tex/generic/hyph-utf8/patterns/tex/hyph-fa.tex new file mode 100644 index 00000000000..4eac8475f04 --- /dev/null +++ b/Master/texmf-dist/tex/generic/hyph-utf8/patterns/tex/hyph-fa.tex @@ -0,0 +1,26 @@ +% title: (No) Hyphenation patterns for Persian +% copyright: Copyright (C) Arthur Rosendahl 2018, 2025 +% notice: This file is part of the hyph-utf8 package. +% See http://www.hyphenation.org/tex for more information. +% language: +% name: Persian +% tag: fa +% version: 1 +% authors: +% - Arthur Rosendahl +% licence: +% - +% name: MIT +% hyphenmins: +% typesetting: +% left: 0 +% right: 0 +% texlive: +% babelname: farsi +% synonyms: +% - persian +% use_old_loader: true +% legacy_patterns: hyph-fa.tex +% message: +% description: Prevent hyphenation in Persian. +\patterns{} diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/patterns/tex/hyph-gl.tex b/Master/texmf-dist/tex/generic/hyph-utf8/patterns/tex/hyph-gl.tex index ba73d05ff0d..02497715f6a 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/patterns/tex/hyph-gl.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/patterns/tex/hyph-gl.tex @@ -15,11 +15,8 @@ % name: Javier A. Múgica % contact: javier (at) digi21.eu % licence: -% name: LPPL -% version: 1.3 -% status: maintained -% maintainer: Javier A. Múgica -% url: https://latex-project.org/lppl/lppl-1-3.html +% name: Unlicence +% url: https://unlicense.org/ % texlive: % encoding: ec % babelname: galician diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/patterns/tex/hyph-grc-x-ibycus.tex b/Master/texmf-dist/tex/generic/hyph-utf8/patterns/tex/hyph-grc-x-ibycus.tex new file mode 100644 index 00000000000..37db742df8d --- /dev/null +++ b/Master/texmf-dist/tex/generic/hyph-utf8/patterns/tex/hyph-grc-x-ibycus.tex @@ -0,0 +1,24 @@ +% title: Hyphenation patterns for Ancient Greek in Ibycus encoding +% copyright: Copyright (C) Peter Heslin +% notice: This file is part of the hyph-utf8 package. +% See http://www.hyphenation.org/tex for more information. +% language: +% name: Ancient Greek, Ibycus encoding +% tag: grc-x-ibycus +% version: 3.0 +% authors: +% - name: Peter Heslin +% licence: +% - +% name: LPPL +% hyphenmins: +% typesetting: +% left: 2 +% right: 2 +% texlive: +% babelname: ibycus +% use_old_patterns_comment: true +% use_old_loader: true +% legacy_patterns: ibyhyph.tex +% message: Ancient Greek hyphenation patterns for Ibycus encoding +% package: ancient greek diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/patterns/tex/hyph-grc.tex b/Master/texmf-dist/tex/generic/hyph-utf8/patterns/tex/hyph-grc.tex index e18c58589c1..1e4ea93be85 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/patterns/tex/hyph-grc.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/patterns/tex/hyph-grc.tex @@ -13,10 +13,15 @@ % authors: % - % name: Dimitrios Filippou -% contact: dimitrios.filippou (at) riotinto.com +% contact: dimitrios.ap.filippou (at) gmail.com % licence: -% name: LPPL -% url: http://www.latex-project.org/lppl/ +% - This file is available under any of the following licences: +% - +% name: LPPL +% url: http://www.latex-project.org/lppl/ +% - +% name: MIT +% url: https://opensource.org/licenses/MIT % changes: % - % date: 2016-05-12 diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/patterns/tex/hyph-he.tex b/Master/texmf-dist/tex/generic/hyph-utf8/patterns/tex/hyph-he.tex new file mode 100644 index 00000000000..f1c0a93447f --- /dev/null +++ b/Master/texmf-dist/tex/generic/hyph-utf8/patterns/tex/hyph-he.tex @@ -0,0 +1,25 @@ +% title: (No) Hyphenation patterns for Hebrew +% copyright: Copyright (C) Arthur Rosendahl 2025 +% notice: |- +% This file is part of the hyph-utf8 package. +% See http://www.hyphenation.org/tex for more information. +% language: +% name: Hebrew +% tag: he +% version: 1 +% authors: +% - Arthur Rosendahl +% licence: +% - +% name: MIT +% hyphenmins: +% typesetting: +% left: 0 +% right: 0 +% texlive: +% babelname: hebrew +% use_old_loader: true +% legacy_patterns: hyph-he.tex +% message: +% description: Prevents hyphenation in Arabic. +\patterns{} diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/patterns/tex/hyph-ka.tex b/Master/texmf-dist/tex/generic/hyph-utf8/patterns/tex/hyph-ka.tex index a64e516599e..503d82b4796 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/patterns/tex/hyph-ka.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/patterns/tex/hyph-ka.tex @@ -12,10 +12,8 @@ % name: Levan Shoshiashvili % contact: shoshia (at) hotmail.com % licence: -% name: LPPL -% version: 1.3 -% or_later: true -% url: http://www.latex-project.org/lppl.txt +% name: MIT +% url: https://opensource.org/licenses/MIT % hyphenmins: % typesetting: % left: 1 diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/patterns/tex/hyph-nl.tex b/Master/texmf-dist/tex/generic/hyph-utf8/patterns/tex/hyph-nl.tex index d6ebb8782c1..ba9f63bb7f2 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/patterns/tex/hyph-nl.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/patterns/tex/hyph-nl.tex @@ -7,10 +7,8 @@ % tag: nl % version: 1.1 (November 1996) % licence: -% name: LPPL -% version: 1 -% or_later: true -% url: https://latex-project.org/lppl/ +% name: MIT +% url: https://opensource.org/licenses/MIT % authors: % - % name: Piet Tutelaers diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/patterns/tex/hyph-rm.tex b/Master/texmf-dist/tex/generic/hyph-utf8/patterns/tex/hyph-rm.tex index 669ebe21a8b..c7b2fa63f49 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/patterns/tex/hyph-rm.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/patterns/tex/hyph-rm.tex @@ -1,15 +1,17 @@ % title: Hyphenation patterns for Romansh -% copyright: Copyright (C) 2011 Claudio Beccari +% copyright: Copyright (C) 2012 Claudio Beccari, 2024 far.ch % notice: This file is part of the hyph-utf8 package. % See http://www.hyphenation.org/tex for more information. % language: % name: Romansh % tag: rm -% version: 1.1 2012/04/10 +% version: 2.0 2024-10-29 % authors: -% - -% name: Claudio Beccari +% - name: Claudio Beccari % contact: claudio.beccari (at) gmail.com +% - +% name: Martin Cantieni, far.ch +% contact: da@far.ch % licence: % - This file may be distributed under any of the following licences: % - @@ -41,7 +43,7 @@ % version: 1.3 % or_later: true % status: maintained -% maintainer: Claudio Beccari, e-mail claudio dot beccari at gmail dot com +% maintainer: far.ch, da@far.ch % hyphenmins: % typesetting: % left: 2 @@ -49,405 +51,402 @@ % changes: % - 2012-01-14 - First release 1.0 % - 2012-04-10 - Version 1.1. Fix inconsistencies. +% - 2024-10-29 - Version 2.0. Added and replaced lots of patterns, all Romansh idioms taken into account % texlive: -% encoding: ascii +% encoding: ec % babelname: romansh % message: Romansh hyphenation patterns % description: |- -% Hyphenation patterns for Romansh in ASCII encoding. -% They are supposed to comply with the rules indicated by the Lia -% Rumantscha (Romansh language society). +% Hyphenation patterns for Romansh. +% All Romansh idioms and Rumantsch Grischun taken into account, developed +% in collaboration with Fundaziun Medias Rumantschas (Romansh news agency) +% and Lia Rumantscha (Romansh umbrella organisation). % ========================================== -% These hyphenation patterns for the Romansh language are supposed to comply -% with the rules indicated by the Lia Rumantscha (Romansh language society). -% They were initially obtained by merging the consonantic endings to the Italian -% patterns and adding the necessary patterns for the special Romansch di-, try- and -% tetra-graphs used in this language. The common Latin roots of both languages helped -% a lot in this adaptation. -% Digraphs: ch, gh, gl, gn, tg -% Trigraphs: sch -% Tetragraphs: tsch -% -% First part is identical to what is contained in hyph-quote-rm.tex -% It must be repeated because that file is read only when creating format files -% for UTF-8 aware engines (XeXeX, LuaTeX) -%% -\patterns{% some revision might be necessary to handle more vocalic elisions -2'2 -2'. -2b' -2c' -2ch'. -2ch'' -2d' -2f' -2g' -2h' -2j' -2k' -2l'. -2l'' -2m' -2n' -2p' -2q' -2r' -4s'. -4s'' -2sch' -2schs' -2sh' -2st' -4tsch' -4tschs' -2t'. -2t'' -2v'. -2v'' -2w' -2x' -2z'. -2z'' -%%%%%%%%%%%%%%%%%%%% -.a3p2n -.anti1 -.anti3m2n -.bio1 -.ca4p3s -.circu2m1 -.co2n3j -.contro1 -.co1o2p -.di2s3 -.di2s4ch3oc -.e2x1e -.ex2tra3 -.fran2k3 -.free3 -.li3p2sa -.narco1 -.opto1 -.orto3p2 -.para1 -.plu2s3q -.poli3p2 -.pre1 -.p2s -.re1ac -.re1i2scr -.sha2re3 -.tran2s3ac -.tran2s3c -.tran2s3d -.tran2s3l -.tran2s3n -.tran2s3p -.tran2s3r -.tran2s3t -.su2b3j -.su2b3lu -.su2b3r -.wa2g3n -.wel2t1 -a1ia -a1ie -a1io -a1iu -a1uo -a1ya -2at. -e1iu -e2w -o1ia -o1ie -o1io -o1iu -1b -2bb -2bc -2bd -2bf -2bm -2bn -2bp -2bs -2bt -2bv -b2l -b2r -2b. -1c -2cb -2cc -2cd -2cf -2ck -2cm -2cn -2cq -2cs -2ct -2cz -2chh -c2h -2ch. -2chb -ch2r -2chn -c2l -c2r -2c. -.c2 -1d -2db -2dd -2dg -2dl -2dm -2dn -2dp -d2r -2ds -2dt -2dv -2dw -2d. -.d2 -1f -2fb -2fg -2ff -2fn -f2l -f2r -2fs -2ft -2f. -1g -2gb -2gd -2gf -2gg -g2h -g2l -2gm -g2n -2gp -g2r -2gs -2gt -2gv -2gw -2gz -2gh2t -2g. -1h -2hb -2hd -2hh -hi3p2n -h2l -2hm -2hn -2hr -2hv -2h. -1j -2j. -1k -2kg -2kf -k2h -2kk -k2l -2km -k2r -2ks -2kt -2k. -1l -2lb -2lc -2ld -2l3f2 -2lg -l2h -l2j -2lk -2ll -2lm -2ln -2lp -2lq -2lr -2ls -2lt -2lv -2lw -2lz -2l. -1m -2mb -2mc -2mf -2ml -2mm -2mn -2mp -2mq -2mr -2ms -2mt -2mv -2mw -2m. -1n -2nb -2nc -2nd -2nf -2ng -2nk -2nl -2nm -2nn -2np -2nq -2nr -2ns -2ns. -2n3sch -n4sch. -n2s3fer -2nt -2nv -2nz -n2g3n -2nheit -2n. -1p -2pd -p2h -p2l -2pn -3p2ne -2pp -p2r -2ps -3p2sic -2pt -2pz -2p. -1q -2qq -2q. -1r -2rb -2rc -2rd -2rf -r2h -2rg -2rk -2rl -2rm -2rn -2rp -2rq -2rr -2rs -2rt -r2t2s3 -2rv -2rx -2rw -2rz -2r. -1s2 -sch2 -2sch. -2schs. -2shm -2sh. -2s3l -2s3s -s4s3m -2s3p2n -2st. -2stb -2stc -2std -2stf -4stg. -2stm -2stn -2stp -2sts -2stt -2stv -2sz -4s. -1t -2tb -2tc -2td -2tf -t2g -2tg. -t2h -t2l -2tm -2tn -2tp -t2r -t2s -3t2sch2 -4tsch. -4tschs. -2tt -t2t3s -2tv -2tw -t2z -2tzk -tz2s -2t. -1v -2vc -v2l -v2r -2vs. -2vv -2v. -1w -w2h -wa2r -2w1y -2w. -1x -2xb -2xc -2xf -2xh -2xm -2xp -2xt -2xw -2x. -y1ou -y1i -1z -2zb -2zd -2zl -2zn -2zp -2zr -2zt -2zs -2zv -2zz -2z. -.z2 +% +\patterns{ + .a3p2n + .anti1 + .anti3m2n + an3ti4er + an3ti4era + .bio1 + .ca4p3s + .circu2m1 + .co2n3j + .contro1 + .co1o2p + .di2s3 + .di2s4ch3oc + di3s4e3gnar + .e2x1e + .ex2tra3 + ex4em3pel + ex4aim3pel + .fran2k3 + .free3 + .li3p2sa + .narco1 + .opto1 + .orto3p2 + .para1 + .plu2s3q + .poli3p2 + .pre1 + .p2s + .re1ac + .re1i2scr + .sha2re3 + .tran2s3ac + .tran2s3c + .tran2s3d + .tran2s3l + .tran2s3n + .tran2s3p + .tran2s3r + .tran2s3t + .su2b3j + .su2b3lu + .su2b3r + .wa2g3n + .wel2t1 + a1ie + a1iu + ame2gl1 + atg3na + a1uo + a1ya + 2at. + e1iu + e2w + o1ia + o1ie + o1io + o1iu + 1b + 2bb + 2bc + 2bd + 2bf + 2bm + 2bn + 2bp + 2bs + 2bt + bu3n4ga + 2bv + 2b. + 1c + 2cb + 2c3c + 2cd + 2cf + 2ck + 2cm + 2cn + 2cq + 2cs + 2ct + 2cz + 2chh + 2chb + ch2r + 2chn + 2c. + .c2 + 1d + 2db + 2dd + 2dg + 2dl + 2dm + 2dn + 2dp + 4ds. + d2sch + 4dsch. + 2dt + 2dv + 2dw + 2d. + .d2 + .esch3an. + 1f + 2fb + 2fg + 2fn + 2fs + 2ft + 2f. + 1g + 2gb + 2gd + 2gf + 2gg + giu2v1na + 4gls. + 2gm + 4gns. + 2gp + 2gs + 2gt + 2gv + 2gw + 2gz + 2gh2t + 2g. + 1h + 2hb + 2hd + 2hh + hi3p2n + h2l + 2hm + 2hn + 2hr + 2hv + 2h. + 1j + 2j. + 4js. + 1k + 2kg + 2kf + k2h + 2kk + k2l + 2km + k2r + 2ks + 2kt + 2k. + 1l + 2lb + 2lc + 2ld + 2l3f2 + 2lg + l2h + l2j + 2lk + 2lm + 2ln + 2lp + 2lq + 2lr + 2ls + 2lt + 2lv + 2lw + 2lz + 2l. + 1m + 2mb + 2mc + 2mf + 2ml + 2mn + 2mp + 2mq + 2mr + 2ms + 2mt + 2mv + 2mw + 2m. + 1n + 2nb + 2nc + 2nd + 2nf + 2ng + 2nk + 2nl + 2nm + 2np + 2nq + 2nr + 2ns + 4ns. + 2n3sch + 4ch. + 4gl. + 4gn. + 4tg. + 4sch. + 4tsch. + n2s3fer + 2nt + 2nv + 2nz + n2g3n + 2nheit + 2n. + on3li4ne + .oz3an3de + .oz1i2 + 1p + 2pd + per3su3n4ga + lùn4ga + p2h + 4ph. + 2pn + 3p2ne + 2ps + 3p2sic + 2pt + 2pz + 2p. + 1q + 2qq + 2q. + 1r + 2rb + 2rc + 2rd + 2rf + r2h + 2rg + 2rk + 2rl + 2rm + 2rn + 2rp + 2rq + 2rs + 2rt + r2t2s3 + 2rv + 2rx + 2rw + 2rz + 2r. + 1s2 + 2schs. + 2shm + 2sh. + 2s3l + 2s3s + s4s3m + 2s3p2n + 2st. + 2stb + 2stc + 2std + 2stf + 4stg. + 2stm + 2stn + 2stp + 2sts + 2stt + 2stv + 2sz + 4s. + 1t + 2tb + 2tc + 2td + 2tf + 4tgs. + t2h + t2l + 2tm + 2tn + 2tp + t2s + 4tschs. + 4ts. + t2t3s + 2tv + 2tw + t2z + 2tzk + tz2s + 2t. + 1v + 2vc + 2vs. + 2vv + 2v. + 1w + w2h + wa2r + 2w1y + 2w. + 1x + 2xb + 2xc + 2xf + 2xh + 2xm + 2xp + 4xs. + 2xt + 2xw + 2x. + y1ou + y1i + 1z + 2zb + 2zd + 2zl + 2zn + 2zp + 2zt + 2zs + 2zv + 2z. + .z2 + 2f3f + 2l3l + 2m3m + 2n3n + 2p3p + 2r3r + 2t3t + 2z3z + s2c2h2 + 3t4s4c4h2 + t2g + g2n + g2l + c2h + g2h + b2l + c2l + f2l + p2l + b2r + c2r + d2r + f2r + g2r + p2r + t2r + z2r + s2c + s2d + s2p + s2t + s2t2g + v2l + v2r + 4sps. + .pe4r3en3cun3ter. + pro4s3ma + .tran2s3f + omi4s3du + .giu3v4en3t4e4tg3na + .cre4s3mar. + 4z3cha + .vi4sch3na + .mu4sch3na. + .ou4vra. + .pi4tsch3na + .hi4gh5light. + .po4d5cast. + .we4l4l5ness. + .ti4c4k4et. } % Pattern end diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/patterns/tex/hyph-sq.tex b/Master/texmf-dist/tex/generic/hyph-utf8/patterns/tex/hyph-sq.tex new file mode 100644 index 00000000000..55fd81823e0 --- /dev/null +++ b/Master/texmf-dist/tex/generic/hyph-utf8/patterns/tex/hyph-sq.tex @@ -0,0 +1,108 @@ +% title: Hyphenation patterns for Albanian +% notice: This file is part of the hyph-utf8 package. +% See http://www.hyphenation.org/tex for more information. +% +% version: 2025-01-10 +% +% changes: +% - 2020-09-21: Initial version +% - 2025-01-10: Removed duplicates +% +% authors: +% - +% name: Claudio Beccari +% contact: claudio.beccari@gmail.com +% - +% name: Sabina Koliqi +% contact: sabina.kolici@enaip.piemonte.it +% - +% name: Arthur Rosendahl +% contact: arthur@rosendahl.io +% +% copyright: > +% Copyright (C) 2020 Claudio Beccari, Sabina Koliqi +% (C) 2025 Arthur Rosendahl +% +% licence: +% name: MIT +% url: http://opensource.org/licenses/mit-license.php +% text: > +% Permission is hereby granted, free of charge, to any person +% obtaining a copy of this software and associated documentation +% files (the “Softwareâ€), to deal in the Software without +% restriction, including without limitation the rights to use, +% copy, modify, merge, publish, distribute, sublicense, and/or +% sell copies of the Software, and to permit persons to whom the +% Software is furnished to do so, subject to the following +% conditions: +% +% The above copyright notice and this permission notice shall be +% included in all copies or substantial portions of the Software. +% +% THE SOFTWARE IS PROVIDED “AS ISâ€, WITHOUT WARRANTY OF ANY KIND, +% EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES +% OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND +% NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT +% HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, +% WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING +% FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR +% OTHER DEALINGS IN THE SOFTWARE. +% +% language: +% name: Albanian +% tag: sq +% +% hyphenmins: +% generation: +% left: 1 +% right: 1 +% typesetting: +% left: 2 +% right: 2 +% +% texlive: +% encoding: ec +% babelname: albanian +% message: Albanian hyphenation patterns +% description: Hyphenation patterns for Albanian in UTF-8 and T1 encoding. +% +% ========================================================================= +% +\message{Albanian Hyphenation Patterns } +\patterns{2'2 +.a1jo. a1a +1b .b2 2b. b2l 2bsh +1c .c2 2c. 2cj 2cn 2ct +1ç .ç2 2ç. 2çs ç2k +1d d2h .d2 2d. d2j 2dn d2r 2drr 2dt d2shm +2dh. 2dhj2dht 2dhsh 2dh2j 2dht dh2r + e1a e3ll e1u +ë1a +1f .f2 2f. f2l f2r 2fs 2ft 3f2sh 2f2t. +1g .g2 2g. g2j 2gj. 2gjv 2gl 2gm 2gr 2gt +1h .h2 2h. 2hd 2hj 2hm 2hn 2ht 2hrr +i1a i1e i1u .i2k3i .i2k3j +1j2 .j2 2j. 2j3c2 2j3d 2j3m 2j3p 2j3r 2j3t 2j3v 2j3s 2jf. j4tp 2jt. j3sh2m +1k .k2 2k. k2j 2kl 2km 2kth. k2r 2kt 2ks 2ksh +1l .l2 2l. 2lb 2lç 2lf 2lj 2lm 2ln l3n2g 2ls 2lt +l2l2 4ll. 2ll3s 4ll3z + 2ll3k 4ll3gj 2ll3n 2ll3t +1m .m2 2m. m2b +mb2j mb2l mb2r m2j 2m3n2d 2mt 2mr 2m3sh2 2m4sh. 2m1v +1n .n2 2n. .ng2r 2nc 2nd n2dm n2dv n2d3sh 2ng 2nk 2nsp 2nsh n3sh2m 2nt 2nv 2nx 2nz +n2j 2njt 2nj. 2njv +o1i +1p .p2 2p. p2j 2pn 2pt p2je. 2ps p2r pa2s3her .pe2r3af .pë2r3af +1q .q2 2q. 2qj 2qk 2qm 2qn 2qt q2v +1r .r2 2r. 2rt 2rb2 2r2b3r 2rc 2rç 2rd 2rc2rd 2rf 2rg 2rh .ri3n2d 2rk 2rl 2rm 2rn r2n3d2 2rp 2rq 2rs 2r3sh2m 2rdh r2dht 2r3dr 2rj 2rv 2rz +r2r .rr2 2rr. 2rrj 2rrk 2rrm 2rrn 2rrt 2rrs +1s .s2 2s. 2sh. 2sb 2sc 2sd 2sf 2sg 2sj 2sk 2sm 2sn sn2k 2sp 2ssh 2st st2r 3s2je2ll sk2ll s2ve. +s2h .sh4 2shm 3sh2mj 2shj .sh2j sh2k 2shk. sh2n shn4d sh2p .sh2q 4sh3k2r 2shq 2sh3nj 3sh4pj 3sh4pr 2shr 2shs 2sht .sh2t 3sh2te. +1t .t2 4t. 2tk t2j 2tm 2tn 2tp 2t3sh2m t2r 2tv +t2h .th2 2th. 2thç 2ths 2thf 2thm 2tht +u1ar. u1a u1e +1v .v2 2v. 2vr v2j +1x x2h .x2 2x. +y1 +1z .zb2r .z2 2z. 2zhd 2zm 2zn 2zj 2zs 2zt 2zv z3sh2m z2h .zh2 +} diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/patterns/tex/hyph-uk.tex b/Master/texmf-dist/tex/generic/hyph-utf8/patterns/tex/hyph-uk.tex index 2e1c8ce852a..68b6f101e76 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/patterns/tex/hyph-uk.tex +++ b/Master/texmf-dist/tex/generic/hyph-utf8/patterns/tex/hyph-uk.tex @@ -11,8 +11,13 @@ % name: Maksym Polyakov % contact: polyama (at) auburn.edu, mpoliak (at) i.com.ua % licence: -% name: LPPL -% url: https://latex-project.org/lppl/ +% - This file is available under any of the following licences: +% - +% name: MIT +% url: https://opensource.org/licenses/MIT +% - +% name: LPPL +% url: https://latex-project.org/lppl/ % hyphenmins: % typesetting: % left: 2 diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/patterns/tex/hyph-vi.tex b/Master/texmf-dist/tex/generic/hyph-utf8/patterns/tex/hyph-vi.tex new file mode 100644 index 00000000000..350086f17a8 --- /dev/null +++ b/Master/texmf-dist/tex/generic/hyph-utf8/patterns/tex/hyph-vi.tex @@ -0,0 +1,25 @@ +% title: (No) Hyphenation patterns for Vietnamese +% copyright: Copyright (C) Arthur Rosendahl 2025 +% notice: |- +% This file is part of the hyph-utf8 package. +% See http://www.hyphenation.org/tex for more information. +% language: +% name: Vietnamese +% tag: vi +% version: 1 +% authors: +% - Arthur Rosendahl +% licence: +% - +% name: MiT +% hyphenmins: +% typesetting: +% left: 0 +% right: 0 +% texlive: +% babelname: vietnamese +% use_old_loader: true +% legacy_patterns: hyph-vi.tex +% message: +% description: Prevents hyphenation in Vietnamese. +\patterns{} diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/patterns/txt/hyph-rm.pat.txt b/Master/texmf-dist/tex/generic/hyph-utf8/patterns/txt/hyph-rm.pat.txt index 51f5cf15783..3a560dee267 100644 --- a/Master/texmf-dist/tex/generic/hyph-utf8/patterns/txt/hyph-rm.pat.txt +++ b/Master/texmf-dist/tex/generic/hyph-utf8/patterns/txt/hyph-rm.pat.txt @@ -1,76 +1,8 @@ -2'2 -2’2 -2'. -2’. -2b' -2b’ -2c' -2c’ -2ch'. -2ch’. -2ch'' -2ch’’ -2d' -2d’ -2f' -2f’ -2g' -2g’ -2h' -2h’ -2j' -2j’ -2k' -2k’ -2l'. -2l’. -2l'' -2l’’ -2m' -2m’ -2n' -2n’ -2p' -2p’ -2q' -2q’ -2r' -2r’ -4s'. -4s’. -4s'' -4s’’ -2sch' -2sch’ -2schs' -2schs’ -2sh' -2sh’ -2st' -2st’ -4tsch' -4tsch’ -4tschs' -4tschs’ -2t'. -2t’. -2t'' -2t’’ -2v'. -2v’. -2v'' -2v’’ -2w' -2w’ -2x' -2x’ -2z'. -2z’. -2z'' -2z’’ .a3p2n .anti1 .anti3m2n +an3ti4er +an3ti4era .bio1 .ca4p3s .circu2m1 @@ -79,8 +11,11 @@ .co1o2p .di2s3 .di2s4ch3oc +di3s4e3gnar .e2x1e .ex2tra3 +ex4em3pel +ex4aim3pel .fran2k3 .free3 .li3p2sa @@ -108,10 +43,10 @@ .su2b3r .wa2g3n .wel2t1 -a1ia a1ie -a1io a1iu +ame2gl1 +atg3na a1uo a1ya 2at. @@ -131,13 +66,12 @@ o1iu 2bp 2bs 2bt +bu3n4ga 2bv -b2l -b2r 2b. 1c 2cb -2cc +2c3c 2cd 2cf 2ck @@ -148,13 +82,9 @@ b2r 2ct 2cz 2chh -c2h -2ch. 2chb ch2r 2chn -c2l -c2r 2c. .c2 1d @@ -165,20 +95,19 @@ c2r 2dm 2dn 2dp -d2r -2ds +4ds. +d2sch +4dsch. 2dt 2dv 2dw 2d. .d2 +.esch3an. 1f 2fb 2fg -2ff 2fn -f2l -f2r 2fs 2ft 2f. @@ -187,12 +116,11 @@ f2r 2gd 2gf 2gg -g2h -g2l +giu2v1na +4gls. 2gm -g2n +4gns. 2gp -g2r 2gs 2gt 2gv @@ -213,6 +141,7 @@ h2l 2h. 1j 2j. +4js. 1k 2kg 2kf @@ -233,7 +162,6 @@ k2r l2h l2j 2lk -2ll 2lm 2ln 2lp @@ -250,7 +178,6 @@ l2j 2mc 2mf 2ml -2mm 2mn 2mp 2mq @@ -269,14 +196,18 @@ l2j 2nk 2nl 2nm -2nn 2np 2nq 2nr 2ns -2ns. +4ns. 2n3sch -n4sch. +4ch. +4gl. +4gn. +4tg. +4sch. +4tsch. n2s3fer 2nt 2nv @@ -284,14 +215,17 @@ n2s3fer n2g3n 2nheit 2n. +on3li4ne +.oz3an3de +.oz1i2 1p 2pd +per3su3n4ga +lùn4ga p2h -p2l +4ph. 2pn 3p2ne -2pp -p2r 2ps 3p2sic 2pt @@ -313,7 +247,6 @@ r2h 2rn 2rp 2rq -2rr 2rs 2rt r2t2s3 @@ -323,8 +256,6 @@ r2t2s3 2rz 2r. 1s2 -sch2 -2sch. 2schs. 2shm 2sh. @@ -351,19 +282,15 @@ s4s3m 2tc 2td 2tf -t2g -2tg. +4tgs. t2h t2l 2tm 2tn 2tp -t2r t2s -3t2sch2 -4tsch. 4tschs. -2tt +4ts. t2t3s 2tv 2tw @@ -373,8 +300,6 @@ tz2s 2t. 1v 2vc -v2l -v2r 2vs. 2vv 2v. @@ -390,6 +315,7 @@ wa2r 2xh 2xm 2xp +4xs. 2xt 2xw 2x. @@ -401,10 +327,58 @@ y1i 2zl 2zn 2zp -2zr 2zt 2zs 2zv -2zz 2z. .z2 +2f3f +2l3l +2m3m +2n3n +2p3p +2r3r +2t3t +2z3z +s2c2h2 +3t4s4c4h2 +t2g +g2n +g2l +c2h +g2h +b2l +c2l +f2l +p2l +b2r +c2r +d2r +f2r +g2r +p2r +t2r +z2r +s2c +s2d +s2p +s2t +s2t2g +v2l +v2r +4sps. +.pe4r3en3cun3ter. +pro4s3ma +.tran2s3f +omi4s3du +.giu3v4en3t4e4tg3na +.cre4s3mar. +4z3cha +.vi4sch3na +.mu4sch3na. +.ou4vra. +.pi4tsch3na +.hi4gh5light. +.po4d5cast. +.we4l4l5ness. +.ti4c4k4et. diff --git a/Master/texmf-dist/tex/generic/hyph-utf8/patterns/txt/hyph-sq.pat.txt b/Master/texmf-dist/tex/generic/hyph-utf8/patterns/txt/hyph-sq.pat.txt new file mode 100644 index 00000000000..01bdbfccbd8 --- /dev/null +++ b/Master/texmf-dist/tex/generic/hyph-utf8/patterns/txt/hyph-sq.pat.txt @@ -0,0 +1,304 @@ +2'2 +2’2 +.a1jo. +a1a +1b +.b2 +2b. +b2l +2bsh +1c +.c2 +2c. +2cj +2cn +2ct +1ç +.ç2 +2ç. +2çs +ç2k +1d +d2h +.d2 +2d. +d2j +2dn +d2r +2drr +2dt +d2shm +2dh. +2dhj2dht +2dhsh +2dh2j +2dht +dh2r +e1a +e3ll +e1u +ë1a +1f +.f2 +2f. +f2l +f2r +2fs +2ft +3f2sh +2f2t. +1g +.g2 +2g. +g2j +2gj. +2gjv +2gl +2gm +2gr +2gt +1h +.h2 +2h. +2hd +2hj +2hm +2hn +2ht +2hrr +i1a +i1e +i1u +.i2k3i +.i2k3j +1j2 +.j2 +2j. +2j3c2 +2j3d +2j3m +2j3p +2j3r +2j3t +2j3v +2j3s +2jf. +j4tp +2jt. +j3sh2m +1k +.k2 +2k. +k2j +2kl +2km +2kth. +k2r +2kt +2ks +2ksh +1l +.l2 +2l. +2lb +2lç +2lf +2lj +2lm +2ln +l3n2g +2ls +2lt +l2l2 +4ll. +2ll3s +4ll3z +2ll3k +4ll3gj +2ll3n +2ll3t +1m +.m2 +2m. +m2b +mb2j +mb2l +mb2r +m2j +2m3n2d +2mt +2mr +2m3sh2 +2m4sh. +2m1v +1n +.n2 +2n. +.ng2r +2nc +2nd +n2dm +n2dv +n2d3sh +2ng +2nk +2nsp +2nsh +n3sh2m +2nt +2nv +2nx +2nz +n2j +2njt +2nj. +2njv +o1i +1p +.p2 +2p. +p2j +2pn +2pt +p2je. +2ps +p2r +pa2s3her +.pe2r3af +.pë2r3af +1q +.q2 +2q. +2qj +2qk +2qm +2qn +2qt +q2v +1r +.r2 +2r. +2rt +2rb2 +2r2b3r +2rc +2rç +2rd +2rc2rd +2rf +2rg +2rh +.ri3n2d +2rk +2rl +2rm +2rn +r2n3d2 +2rp +2rq +2rs +2r3sh2m +2rdh +r2dht +2r3dr +2rj +2rv +2rz +r2r +.rr2 +2rr. +2rrj +2rrk +2rrm +2rrn +2rrt +2rrs +1s +.s2 +2s. +2sh. +2sb +2sc +2sd +2sf +2sg +2sj +2sk +2sm +2sn +sn2k +2sp +2ssh +2st +st2r +3s2je2ll +sk2ll +s2ve. +s2h +.sh4 +2shm +3sh2mj +2shj +.sh2j +sh2k +2shk. +sh2n +shn4d +sh2p +.sh2q +4sh3k2r +2shq +2sh3nj +3sh4pj +3sh4pr +2shr +2shs +2sht +.sh2t +3sh2te. +1t +.t2 +4t. +2tk +t2j +2tm +2tn +2tp +2t3sh2m +t2r +2tv +t2h +.th2 +2th. +2thç +2ths +2thf +2thm +2tht +u1ar. +u1a +u1e +1v +.v2 +2v. +2vr +v2j +1x +x2h +.x2 +2x. +y1 +1z +.zb2r +.z2 +2z. +2zhd +2zm +2zn +2zj +2zs +2zt +2zv +z3sh2m +z2h +.zh2 diff --git a/Master/texmf-dist/tex/generic/iftex/iftex.sty b/Master/texmf-dist/tex/generic/iftex/iftex.sty index 02b3d13c62d..600664bd3b8 100644 --- a/Master/texmf-dist/tex/generic/iftex/iftex.sty +++ b/Master/texmf-dist/tex/generic/iftex/iftex.sty @@ -30,7 +30,7 @@ % ProvidesPackage declaration in LaTeX \begingroup\expandafter\expandafter\expandafter\endgroup \expandafter\ifx\csname ProvidesPackage\endcsname\relax\else - \ProvidesPackage{iftex}[2022/02/03 v1.0f TeX engine tests] + \ProvidesPackage{iftex}[2024/12/12 v1.0g TeX engine tests] \fi % Save @ catcode, to restore at end, not needed in LaTeX. @@ -80,6 +80,7 @@ \IFTEX@protected\def\RequireXeTeX{\IFTEX@Require\ifxetex{XeTeX}\fi} \IFTEX@protected\def\RequireLuaTeX{\IFTEX@Require\ifluatex{LuaTeX}\fi} \IFTEX@protected\def\RequireLuaHBTeX{\IFTEX@Require\ifluahbtex{LuaHBTeX}\fi} +\IFTEX@protected\def\RequireLuaMetaTeX{\IFTEX@Require\ifluahbtex{LuaMetaTeX}\fi} \IFTEX@protected\def\RequirepTeX{\IFTEX@Require\ifptex{pTeX}\fi} \IFTEX@protected\def\RequireupTeX{\IFTEX@Require\ifuptex{upTeX}\fi} \IFTEX@protected\def\RequirepTeXng{\IFTEX@Require\ifptexng{pTeX-ng}\fi} @@ -92,6 +93,8 @@ \IFTEX@protected\def\RequireTexpadTeX{\IFTEX@Require\iftexpadtex{TexpadTeX}\fi} % HiTeX/HINT \IFTEX@protected\def\RequireHINT{\IFTEX@Require\ifhint{HINT}\fi} +% Prote +\IFTEX@protected\def\RequireProte{\IFTEX@Require\ifprote{Prote}\fi} % As a matter of policy over-write any existing \if*tex macro and set % by the tests here. @@ -130,7 +133,7 @@ \IFTEX@let{XeTeX}{xetex} -% luatex (including luahbtex) +% luatex (including luahbtex and luametatex) \begingroup\expandafter\expandafter\expandafter\endgroup \expandafter\ifx\csname directlua\endcsname\relax \IFTEX@let{luatex}{false} @@ -157,7 +160,21 @@ \IFTEX@let{LuaHBTeX}{luahbtex} -% ptex (including all variants) +% luametatex +\begingroup\expandafter\expandafter\expandafter\endgroup +\expandafter\ifx\csname directlua\endcsname\relax + \IFTEX@let{luametatex}{false} +\else + \ifnum\luatexversion<200 + \IFTEX@let{luametatex}{false} + \else + \IFTEX@let{luametatex}{true} + \fi +\fi +\IFTEX@let{LuaMetaTeX}{luametatex} + + +% ptex (including all variants) (note that the ptex command uses uptex in current releases) \begingroup\expandafter\expandafter\expandafter\endgroup \expandafter\ifx\csname kanjiskip\endcsname\relax \IFTEX@let{ptex}{false} @@ -237,6 +254,15 @@ \fi \IFTEX@let{HINT}{hint} +% Prote +\begingroup\expandafter\expandafter\expandafter\endgroup +\expandafter\ifx\csname Proteversion\endcsname\relax + \IFTEX@let{prote}{false} +\else + \IFTEX@let{prote}{true} +\fi +\IFTEX@let{Prote}{prote} + % Output mode % declare as if with \newif diff --git a/Master/texmf-dist/tex/generic/lt3luabridge/lt3luabridge.sty b/Master/texmf-dist/tex/generic/lt3luabridge/lt3luabridge.sty index 7f3827b207b..d58aa9afa5b 100644 --- a/Master/texmf-dist/tex/generic/lt3luabridge/lt3luabridge.sty +++ b/Master/texmf-dist/tex/generic/lt3luabridge/lt3luabridge.sty @@ -6,7 +6,7 @@ %% %% lt3luabridge.dtx (with options: `latex-package') %% -%% Copyright (C) 2016-2024 VÃt Novotný +%% Copyright (C) 2016-2024 VÃt Starý Novotný %% %% This work may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, either version 1.3c @@ -45,8 +45,8 @@ \RequirePackage{expl3} \ProvidesExplPackage {lt3luabridge}% - {2024-02-14}% - {2.1.0}% + {2024-12-16}% + {2.2.0}% {An expl3 package that allows you to execute Lua code in LuaTeX or any other TeX engine that exposes the shell} \input lt3luabridge\relax diff --git a/Master/texmf-dist/tex/generic/lt3luabridge/lt3luabridge.tex b/Master/texmf-dist/tex/generic/lt3luabridge/lt3luabridge.tex index 256456220e0..76ffbe49fcd 100644 --- a/Master/texmf-dist/tex/generic/lt3luabridge/lt3luabridge.tex +++ b/Master/texmf-dist/tex/generic/lt3luabridge/lt3luabridge.tex @@ -6,7 +6,7 @@ %% %% lt3luabridge.dtx (with options: `generic-package') %% -%% Copyright (C) 2016-2024 VÃt Novotný +%% Copyright (C) 2016-2024 VÃt Starý Novotný %% %% This work may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, either version 1.3c @@ -42,7 +42,7 @@ %% %% The names of the source files used are shown above. %% -\ifx\ExplSyntaxOn\undefined +\expandafter\ifx\csname ExplSyntaxOn\endcsname\relax \input expl3-generic\relax \fi \ExplSyntaxOn @@ -117,9 +117,34 @@ = { \c_luabridge_method_shell_int } { - \str_const:Nn - \c_luabridge_default_output_dirname_str - { . } + \sys_if_platform_unix:TF + { + \str_const:Nn + \c_luabridge_default_output_dirname_str + { $TEXMF_OUTPUT_DIRECTORY } + } + { + \sys_if_platform_windows:TF + { + \str_set:Nn + \l_tmpa_str + { TEXMF_OUTPUT_DIRECTORY } + \str_put_left:NV + \l_tmpa_str + \c_percent_str + \str_put_right:NV + \l_tmpa_str + \c_percent_str + \str_const:NV + \c_luabridge_default_output_dirname_str + \l_tmpa_str + } + { + \str_const:Nn + \c_luabridge_default_output_dirname_str + { . } + } + } \str_const:Nx \c_luabridge_default_helper_script_filename_str { \jobname.luabridge.lua } @@ -207,9 +232,37 @@ \g_luabridge_helper_script_filename_str \sys_get_shell:xnNTF { - texlua~ - \g_luabridge_output_dirname_str / - \g_luabridge_helper_script_filename_str + \str_if_eq:NNTF + \g_luabridge_output_dirname_str + \c_luabridge_default_output_dirname_str + { + \sys_if_platform_windows:TF + { + if~not~defined~TEXMF_OUTPUT_DIRECTORY~( + texlua~ + \g_luabridge_helper_script_filename_str + )~else~( + texlua~ + \g_luabridge_output_dirname_str / + \g_luabridge_helper_script_filename_str + ) + } + { + \sys_if_platform_unix:T + { + TEXMF_OUTPUT_DIRECTORY = + ${TEXMF_OUTPUT_DIRECTORY:-.} \iow_newline: + } + texlua~ + \g_luabridge_output_dirname_str / + \g_luabridge_helper_script_filename_str + } + } + { + texlua~ + \g_luabridge_output_dirname_str / + \g_luabridge_helper_script_filename_str + } } { } #1 @@ -298,11 +351,14 @@ end~ \exp_not:V \l_tmpa_tl } - \tl_set:Nf + \tl_set:No #1 { - \lua_now:V - \l_tmpa_tl + \directlua + { + \tl_use:N + \l_tmpa_tl + } } } \cs_generate_variant:Nn diff --git a/Master/texmf-dist/tex/generic/lt3luabridge/t-lt3luabridge.tex b/Master/texmf-dist/tex/generic/lt3luabridge/t-lt3luabridge.tex index ac4eed7372b..35e6ab1e8ab 100644 --- a/Master/texmf-dist/tex/generic/lt3luabridge/t-lt3luabridge.tex +++ b/Master/texmf-dist/tex/generic/lt3luabridge/t-lt3luabridge.tex @@ -6,7 +6,7 @@ %% %% lt3luabridge.dtx (with options: `context-package') %% -%% Copyright (C) 2016-2024 VÃt Novotný +%% Copyright (C) 2016-2024 VÃt Starý Novotný %% %% This work may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, either version 1.3c diff --git a/Master/texmf-dist/tex/generic/markdown/markdown.tex b/Master/texmf-dist/tex/generic/markdown/markdown.tex index 9c71c07afd1..97cd6e2c800 100644 --- a/Master/texmf-dist/tex/generic/markdown/markdown.tex +++ b/Master/texmf-dist/tex/generic/markdown/markdown.tex @@ -6,7 +6,7 @@ %% %% markdown.dtx (with options: `tex') %% -%% Copyright (C) 2016-2024 VÃt Starý Novotný +%% Copyright (C) 2016-2025 VÃt Starý Novotný, Andrej GenÄur %% %% This work may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, either version 1.3c @@ -42,7 +42,7 @@ %% %% The names of the source files used are shown above. %% -\ifx\ExplSyntaxOn\undefined +\expandafter\ifx\csname ExplSyntaxOn\endcsname\relax \input expl3-generic \fi \ExplSyntaxOn @@ -51,7 +51,9 @@ \prop_new:N \g__markdown_default_lua_options_prop \seq_new:N \g__markdown_option_layers_seq \tl_const:Nn \c__markdown_option_layer_lua_tl { lua } -\seq_gput_right:NV \g__markdown_option_layers_seq \c__markdown_option_layer_lua_tl +\seq_gput_right:NV + \g__markdown_option_layers_seq + \c__markdown_option_layer_lua_tl \cs_new:Nn \__markdown_add_lua_option:nnn { @@ -128,21 +130,50 @@ \cs_generate_variant:Nn \msg_error:nnnn { nnnV } -\seq_new:N \g__markdown_option_types_seq -\tl_const:Nn \c__markdown_option_type_clist_tl { clist } -\seq_gput_right:NV \g__markdown_option_types_seq \c__markdown_option_type_clist_tl -\tl_const:Nn \c__markdown_option_type_counter_tl { counter } -\seq_gput_right:NV \g__markdown_option_types_seq \c__markdown_option_type_counter_tl -\tl_const:Nn \c__markdown_option_type_boolean_tl { boolean } -\seq_gput_right:NV \g__markdown_option_types_seq \c__markdown_option_type_boolean_tl -\tl_const:Nn \c__markdown_option_type_number_tl { number } -\seq_gput_right:NV \g__markdown_option_types_seq \c__markdown_option_type_number_tl -\tl_const:Nn \c__markdown_option_type_path_tl { path } -\seq_gput_right:NV \g__markdown_option_types_seq \c__markdown_option_type_path_tl -\tl_const:Nn \c__markdown_option_type_slice_tl { slice } -\seq_gput_right:NV \g__markdown_option_types_seq \c__markdown_option_type_slice_tl -\tl_const:Nn \c__markdown_option_type_string_tl { string } -\seq_gput_right:NV \g__markdown_option_types_seq \c__markdown_option_type_string_tl +\seq_new:N + \g__markdown_option_types_seq +\tl_const:Nn + \c__markdown_option_type_clist_tl + { clist } +\seq_gput_right:NV + \g__markdown_option_types_seq + \c__markdown_option_type_clist_tl +\tl_const:Nn + \c__markdown_option_type_counter_tl + { counter } +\seq_gput_right:NV + \g__markdown_option_types_seq + \c__markdown_option_type_counter_tl +\tl_const:Nn + \c__markdown_option_type_boolean_tl + { boolean } +\seq_gput_right:NV + \g__markdown_option_types_seq + \c__markdown_option_type_boolean_tl +\tl_const:Nn + \c__markdown_option_type_number_tl + { number } +\seq_gput_right:NV + \g__markdown_option_types_seq + \c__markdown_option_type_number_tl +\tl_const:Nn + \c__markdown_option_type_path_tl + { path } +\seq_gput_right:NV + \g__markdown_option_types_seq + \c__markdown_option_type_path_tl +\tl_const:Nn + \c__markdown_option_type_slice_tl + { slice } +\seq_gput_right:NV + \g__markdown_option_types_seq + \c__markdown_option_type_slice_tl +\tl_const:Nn + \c__markdown_option_type_string_tl + { string } +\seq_gput_right:NV + \g__markdown_option_types_seq + \c__markdown_option_type_string_tl \cs_new:Nn \__markdown_get_option_type:nN { @@ -248,7 +279,7 @@ \l_tmpa_tl \tl_set:Nx #2 - { \the \cs:w \l_tmpa_tl \cs_end: } + { \the \cs:w \l_tmpa_tl \cs_end: } % noqa: W200 } { \__markdown_option_tl_to_csname:nN @@ -323,6 +354,10 @@ \__markdown_add_lua_option:nnn { eagerCache } { boolean } + { true } +\__markdown_add_lua_option:nnn + { experimental } + { boolean } { false } \__markdown_add_lua_option:nnn { singletonCache } @@ -413,6 +448,10 @@ { boolean } { false } \__markdown_add_lua_option:nnn + { ensureJekyllData } + { boolean } + { false } +\__markdown_add_lua_option:nnn { expectJekyllData } { boolean } { false } @@ -580,12 +619,20 @@ { boolean } { true } \ExplSyntaxOff -\def\markdownLastModified{2024-06-20}% -\def\markdownVersion{3.6.1-0-g5a45a922}% +\def\markdownLastModified{2025-01-27}% +\def\markdownVersion{3.10.0-0-g626df6ad}% \let\markdownBegin\relax \let\markdownEnd\relax +\let\yamlBegin\relax +\def\yamlEnd{\markdownEnd\endgroup} \let\markinline\relax \let\markdownInput\relax +\def\yamlInput#1{% + \begingroup + \yamlSetup{jekyllData, expectJekyllData, ensureJekyllData}% + \markdownInput{#1}% + \endgroup +}% \let\markdownEscape\relax \ExplSyntaxOn \tl_const:Nn \c__markdown_option_layer_plain_tex_tl { plain_tex } @@ -602,7 +649,9 @@ \seq_new:N \g__markdown_plain_tex_options_seq \prop_new:N \g__markdown_plain_tex_option_types_prop \prop_new:N \g__markdown_default_plain_tex_options_prop -\seq_gput_right:NV \g__markdown_option_layers_seq \c__markdown_option_layer_plain_tex_tl +\seq_gput_right:NV + \g__markdown_option_layers_seq + \c__markdown_option_layer_plain_tex_tl \cs_new:Nn \__markdown_add_plain_tex_option:nnn { @@ -622,6 +671,9 @@ \cs_gset_eq:NN \markdownSetup \__markdown_setup:n +\cs_gset_eq:NN + \yamlSetup + \markdownSetup \prg_new_conditional:Nnn \__markdown_if_option:n { TF, T, F } @@ -655,7 +707,9 @@ Option~#1~has~type~#2,~ but~a~boolean~was~expected. } -\let\markdownIfOption=\__markdown_if_option:nTF +\let + \markdownIfOption + \__markdown_if_option:nTF \__markdown_add_plain_tex_option:nnn { frozenCache } { boolean } @@ -664,38 +718,10 @@ { inputTempFileName } { path } { \jobname.markdown.in } -\cs_generate_variant:Nn - \__markdown_add_plain_tex_option:nnn - { nnV } -\ExplSyntaxOff -\input lt3luabridge.tex -\ExplSyntaxOn -\bool_if:nTF - { - \cs_if_exist_p:N - \luabridge_tl_set:Nn && - ( - \int_compare_p:nNn - { \g_luabridge_method_int } - = - { \c_luabridge_method_directlua_int } || - \sys_if_shell_unrestricted_p: - ) - } - { - \luabridge_tl_set:Nn - \l_tmpa_tl - { print(os.getenv("TEXMF_OUTPUT_DIRECTORY") or ".") } - } - { - \tl_set:Nn - \l_tmpa_tl - { . } - } -\__markdown_add_plain_tex_option:nnV +\__markdown_add_plain_tex_option:nnn { outputDir } { path } - \l_tmpa_tl + { . } \__markdown_add_plain_tex_option:nnn { plain } { boolean } @@ -740,18 +766,64 @@ \cs_new:Nn \__markdown_define_option_command:n { - \__markdown_option_tl_to_csname:nN + \str_if_eq:nnTF { #1 } - \l_tmpa_tl - \cs_if_exist:cF - { \l_tmpa_tl } + { outputDir } + { \__markdown_define_option_command_output_dir: } { - \__markdown_get_default_option_value:nN - { #1 } - \l_tmpa_tl - \__markdown_set_option_value:nV + \__markdown_option_tl_to_csname:nN { #1 } \l_tmpa_tl + \cs_if_exist:cF + { \l_tmpa_tl } + { + \__markdown_get_default_option_value:nN + { #1 } + \l_tmpa_tl + \__markdown_set_option_value:nV + { #1 } + \l_tmpa_tl + } + } + } +\ExplSyntaxOff +\input lt3luabridge.tex +\ExplSyntaxOn +\cs_new:Nn + \__markdown_define_option_command_output_dir: + { + \cs_if_free:NT + \markdownOptionOutputDir + { + \bool_if:nTF + { + \cs_if_exist_p:N + \luabridge_tl_set:Nn && + ( + \int_compare_p:nNn + { \g_luabridge_method_int } + = + { \c_luabridge_method_directlua_int } || + \sys_if_shell_unrestricted_p: + ) + } + { + \group_begin: + \cctab_select:N + \c_str_cctab + \luabridge_tl_set:Nn + \l_tmpa_tl + { print(os.getenv("TEXMF_OUTPUT_DIRECTORY") or ".") } + \tl_gset:NV + \markdownOptionOutputDir + \l_tmpa_tl + \group_end: + } + { + \tl_gset:Nn + \markdownOptionOutputDir + { . } + } } } \cs_new:Nn @@ -891,7 +963,7 @@ \l_tmpa_tl \clist_set:NV \l_tmpa_clist - { \l_tmpa_tl, { ##1 } } + { \l_tmpa_tl , { ##1 } } \__markdown_set_option_value:nV { #2 } \l_tmpa_clist @@ -914,7 +986,7 @@ \prg_generate_conditional_variant:Nnn \str_if_eq:nn { en } - { F } + { p, F } \msg_new:nnn { markdown } { malformed-name-for-clist-option } @@ -948,14 +1020,22 @@ }, } \seq_new:N - \g__markdown_themes_seq + \g__markdown_theme_names_seq +\seq_new:N + \g__markdown_theme_versions_seq \tl_new:N \g__markdown_current_theme_tl \tl_gset:Nn \g__markdown_current_theme_tl { } \seq_gput_right:NV - \g__markdown_themes_seq + \g__markdown_theme_names_seq + \g__markdown_current_theme_tl +\cs_new:Npn + \markdownThemeVersion + { } +\seq_gput_right:NV + \g__markdown_theme_versions_seq \g__markdown_current_theme_tl \cs_new:Nn \__markdown_set_theme:n @@ -978,31 +1058,85 @@ { underscores-in-theme-name } { #1 } } - \str_set:Nn - \l_tmpa_str + \str_if_in:nnTF { #1 } + { @ } + { + \regex_extract_once:nnN + { (.*) @ (.*) } + { #1 } + \l_tmpa_seq + \seq_gpop_left:NN + \l_tmpa_seq + \l_tmpa_tl + \seq_gpop_left:NN + \l_tmpa_seq + \l_tmpa_tl + \tl_gset:NV + \g__markdown_current_theme_tl + \l_tmpa_tl + \seq_gpop_left:NN + \l_tmpa_seq + \l_tmpa_tl + \cs_gset:Npe + \markdownThemeVersion + { + \tl_use:N + \l_tmpa_tl + } + } + { + \tl_gset:Nn + \g__markdown_current_theme_tl + { #1 } + \cs_gset:Npn + \markdownThemeVersion + { latest } + } + \str_set:NV + \l_tmpa_str + \g__markdown_current_theme_tl \str_replace_all:Nnn \l_tmpa_str { / } { _ } - \tl_gset:Nn + \tl_set:NV + \l_tmpa_tl \g__markdown_current_theme_tl - { #1 / } + \tl_put_right:Nn + \g__markdown_current_theme_tl + { / } \seq_gput_right:NV - \g__markdown_themes_seq + \g__markdown_theme_names_seq \g__markdown_current_theme_tl - \__markdown_load_theme:nV - { #1 } + \seq_gput_right:NV + \g__markdown_theme_versions_seq + \markdownThemeVersion + \__markdown_load_theme:VeV + \l_tmpa_tl + { \markdownThemeVersion } \l_tmpa_str \seq_gpop_right:NN - \g__markdown_themes_seq + \g__markdown_theme_names_seq \l_tmpa_tl \seq_get_right:NN - \g__markdown_themes_seq + \g__markdown_theme_names_seq \l_tmpa_tl \tl_gset:NV \g__markdown_current_theme_tl \l_tmpa_tl + \seq_gpop_right:NN + \g__markdown_theme_versions_seq + \l_tmpa_tl + \seq_get_right:NN + \g__markdown_theme_versions_seq + \l_tmpa_tl + \cs_gset:Npe + \markdownThemeVersion + { + \tl_use:N + \l_tmpa_tl + } } \msg_new:nnnn { markdown } @@ -1017,6 +1151,11 @@ \cs_generate_variant:Nn \tl_replace_all:Nnn { NnV } +\cs_generate_variant:Nn + \cs_gset:Npn + { Npe } +\prop_new:N + \g__markdown_plain_tex_built_in_themes_prop \prop_new:N \g__markdown_snippets_prop \cs_new:Nn @@ -1044,10 +1183,14 @@ { redefined-snippet } \l_tmpa_tl } - \prop_gput:NVn + \keys_precompile:nnN + { markdown/options } + { #2 } + \l_tmpb_tl + \prop_gput:NVV \g__markdown_snippets_prop \l_tmpa_tl - { #2 } + \l_tmpb_tl } \cs_gset_eq:NN \markdownSetupSnippet @@ -1061,20 +1204,21 @@ { markdown } { redefined-snippet } { Redefined~snippet~#1 } +\tl_new:N + \l__markdown_current_snippet_tl \prg_new_conditional:Nnn \__markdown_if_snippet_exists:n { TF, T, F } { \tl_set:NV - \l_tmpa_tl + \l__markdown_current_snippet_tl \g__markdown_current_theme_tl \tl_put_right:Nn - \l_tmpa_tl + \l__markdown_current_snippet_tl { #1 } - \prop_get:NVNTF + \prop_if_in:NVTF \g__markdown_snippets_prop - \l_tmpa_tl - \l_tmpb_tl + \l__markdown_current_snippet_tl { \prg_return_true: } { \prg_return_false: } } @@ -1098,7 +1242,7 @@ \g__markdown_snippets_prop \l_tmpa_tl \l_tmpb_tl - \__markdown_setup:V + \tl_use:N \l_tmpb_tl } { @@ -1113,9 +1257,6 @@ { markdown } { undefined-snippet } { Can't~invoke~undefined~snippet~#1 } -\cs_generate_variant:Nn - \__markdown_setup:n - { V } \tl_new:N \l__markdown_import_current_theme_tl \keys_define:nn @@ -1179,13 +1320,13 @@ \cs_generate_variant:Nn \__markdown_setup_snippet:nn { Vx } -\ExplSyntaxOn \seq_new:N \g__markdown_renderers_seq \prop_new:N \g__markdown_renderer_arities_prop -\ExplSyntaxOff -\def\markdownRendererAttributeIdentifier{% - \markdownRendererAttributeIdentifierPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererAttributeIdentifier + { + \markdownRendererAttributeIdentifierPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { attributeIdentifier } @@ -1193,10 +1334,11 @@ \g__markdown_renderer_arities_prop { attributeIdentifier } { 1 } -\ExplSyntaxOff -\def\markdownRendererAttributeClassName{% - \markdownRendererAttributeClassNamePrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererAttributeClassName + { + \markdownRendererAttributeClassNamePrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { attributeClassName } @@ -1204,10 +1346,11 @@ \g__markdown_renderer_arities_prop { attributeClassName } { 1 } -\ExplSyntaxOff -\def\markdownRendererAttributeKeyValue{% - \markdownRendererAttributeKeyValuePrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererAttributeKeyValue + { + \markdownRendererAttributeKeyValuePrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { attributeKeyValue } @@ -1215,10 +1358,11 @@ \g__markdown_renderer_arities_prop { attributeKeyValue } { 2 } -\ExplSyntaxOff -\def\markdownRendererBlockQuoteBegin{% - \markdownRendererBlockQuoteBeginPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererBlockQuoteBegin + { + \markdownRendererBlockQuoteBeginPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { blockQuoteBegin } @@ -1226,10 +1370,11 @@ \g__markdown_renderer_arities_prop { blockQuoteBegin } { 0 } -\ExplSyntaxOff -\def\markdownRendererBlockQuoteEnd{% - \markdownRendererBlockQuoteEndPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererBlockQuoteEnd + { + \markdownRendererBlockQuoteEndPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { blockQuoteEnd } @@ -1237,10 +1382,11 @@ \g__markdown_renderer_arities_prop { blockQuoteEnd } { 0 } -\ExplSyntaxOff -\def\markdownRendererBracketedSpanAttributeContextBegin{% - \markdownRendererBracketedSpanAttributeContextBeginPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererBracketedSpanAttributeContextBegin + { + \markdownRendererBracketedSpanAttributeContextBeginPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { bracketedSpanAttributeContextBegin } @@ -1248,10 +1394,11 @@ \g__markdown_renderer_arities_prop { bracketedSpanAttributeContextBegin } { 0 } -\ExplSyntaxOff -\def\markdownRendererBracketedSpanAttributeContextEnd{% - \markdownRendererBracketedSpanAttributeContextEndPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererBracketedSpanAttributeContextEnd + { + \markdownRendererBracketedSpanAttributeContextEndPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { bracketedSpanAttributeContextEnd } @@ -1259,10 +1406,11 @@ \g__markdown_renderer_arities_prop { bracketedSpanAttributeContextEnd } { 0 } -\ExplSyntaxOff -\def\markdownRendererUlBegin{% - \markdownRendererUlBeginPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererUlBegin + { + \markdownRendererUlBeginPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { ulBegin } @@ -1270,10 +1418,11 @@ \g__markdown_renderer_arities_prop { ulBegin } { 0 } -\ExplSyntaxOff -\def\markdownRendererUlBeginTight{% - \markdownRendererUlBeginTightPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererUlBeginTight + { + \markdownRendererUlBeginTightPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { ulBeginTight } @@ -1281,10 +1430,11 @@ \g__markdown_renderer_arities_prop { ulBeginTight } { 0 } -\ExplSyntaxOff -\def\markdownRendererUlItem{% - \markdownRendererUlItemPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererUlItem + { + \markdownRendererUlItemPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { ulItem } @@ -1292,10 +1442,11 @@ \g__markdown_renderer_arities_prop { ulItem } { 0 } -\ExplSyntaxOff -\def\markdownRendererUlItemEnd{% - \markdownRendererUlItemEndPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererUlItemEnd + { + \markdownRendererUlItemEndPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { ulItemEnd } @@ -1303,10 +1454,11 @@ \g__markdown_renderer_arities_prop { ulItemEnd } { 0 } -\ExplSyntaxOff -\def\markdownRendererUlEnd{% - \markdownRendererUlEndPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererUlEnd + { + \markdownRendererUlEndPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { ulEnd } @@ -1314,10 +1466,11 @@ \g__markdown_renderer_arities_prop { ulEnd } { 0 } -\ExplSyntaxOff -\def\markdownRendererUlEndTight{% - \markdownRendererUlEndTightPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererUlEndTight + { + \markdownRendererUlEndTightPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { ulEndTight } @@ -1325,10 +1478,11 @@ \g__markdown_renderer_arities_prop { ulEndTight } { 0 } -\ExplSyntaxOff -\def\markdownRendererCite{% - \markdownRendererCitePrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererCite + { + \markdownRendererCitePrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { cite } @@ -1336,10 +1490,11 @@ \g__markdown_renderer_arities_prop { cite } { 1 } -\ExplSyntaxOff -\def\markdownRendererTextCite{% - \markdownRendererTextCitePrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererTextCite + { + \markdownRendererTextCitePrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { textCite } @@ -1347,10 +1502,11 @@ \g__markdown_renderer_arities_prop { textCite } { 1 } -\ExplSyntaxOff -\def\markdownRendererInputVerbatim{% - \markdownRendererInputVerbatimPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererInputVerbatim + { + \markdownRendererInputVerbatimPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { inputVerbatim } @@ -1358,10 +1514,11 @@ \g__markdown_renderer_arities_prop { inputVerbatim } { 1 } -\ExplSyntaxOff -\def\markdownRendererInputFencedCode{% - \markdownRendererInputFencedCodePrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererInputFencedCode + { + \markdownRendererInputFencedCodePrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { inputFencedCode } @@ -1369,10 +1526,11 @@ \g__markdown_renderer_arities_prop { inputFencedCode } { 3 } -\ExplSyntaxOff -\def\markdownRendererCodeSpan{% - \markdownRendererCodeSpanPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererCodeSpan + { + \markdownRendererCodeSpanPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { codeSpan } @@ -1380,10 +1538,11 @@ \g__markdown_renderer_arities_prop { codeSpan } { 1 } -\ExplSyntaxOff -\def\markdownRendererCodeSpanAttributeContextBegin{% - \markdownRendererCodeSpanAttributeContextBeginPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererCodeSpanAttributeContextBegin + { + \markdownRendererCodeSpanAttributeContextBeginPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { codeSpanAttributeContextBegin } @@ -1391,10 +1550,11 @@ \g__markdown_renderer_arities_prop { codeSpanAttributeContextBegin } { 0 } -\ExplSyntaxOff -\def\markdownRendererCodeSpanAttributeContextEnd{% - \markdownRendererCodeSpanAttributeContextEndPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererCodeSpanAttributeContextEnd + { + \markdownRendererCodeSpanAttributeContextEndPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { codeSpanAttributeContextEnd } @@ -1402,10 +1562,11 @@ \g__markdown_renderer_arities_prop { codeSpanAttributeContextEnd } { 0 } -\ExplSyntaxOff -\def\markdownRendererContentBlock{% - \markdownRendererContentBlockPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererContentBlock + { + \markdownRendererContentBlockPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { contentBlock } @@ -1413,10 +1574,11 @@ \g__markdown_renderer_arities_prop { contentBlock } { 4 } -\ExplSyntaxOff -\def\markdownRendererContentBlockOnlineImage{% - \markdownRendererContentBlockOnlineImagePrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererContentBlockOnlineImage + { + \markdownRendererContentBlockOnlineImagePrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { contentBlockOnlineImage } @@ -1424,10 +1586,11 @@ \g__markdown_renderer_arities_prop { contentBlockOnlineImage } { 4 } -\ExplSyntaxOff -\def\markdownRendererContentBlockCode{% - \markdownRendererContentBlockCodePrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererContentBlockCode + { + \markdownRendererContentBlockCodePrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { contentBlockCode } @@ -1435,10 +1598,11 @@ \g__markdown_renderer_arities_prop { contentBlockCode } { 5 } -\ExplSyntaxOff -\def\markdownRendererDlBegin{% - \markdownRendererDlBeginPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererDlBegin + { + \markdownRendererDlBeginPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { dlBegin } @@ -1446,10 +1610,11 @@ \g__markdown_renderer_arities_prop { dlBegin } { 0 } -\ExplSyntaxOff -\def\markdownRendererDlBeginTight{% - \markdownRendererDlBeginTightPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererDlBeginTight + { + \markdownRendererDlBeginTightPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { dlBeginTight } @@ -1457,10 +1622,11 @@ \g__markdown_renderer_arities_prop { dlBeginTight } { 0 } -\ExplSyntaxOff -\def\markdownRendererDlItem{% - \markdownRendererDlItemPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererDlItem + { + \markdownRendererDlItemPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { dlItem } @@ -1468,10 +1634,11 @@ \g__markdown_renderer_arities_prop { dlItem } { 1 } -\ExplSyntaxOff -\def\markdownRendererDlItemEnd{% - \markdownRendererDlItemEndPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererDlItemEnd + { + \markdownRendererDlItemEndPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { dlItemEnd } @@ -1479,10 +1646,11 @@ \g__markdown_renderer_arities_prop { dlItemEnd } { 0 } -\ExplSyntaxOff -\def\markdownRendererDlDefinitionBegin{% - \markdownRendererDlDefinitionBeginPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererDlDefinitionBegin + { + \markdownRendererDlDefinitionBeginPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { dlDefinitionBegin } @@ -1490,10 +1658,11 @@ \g__markdown_renderer_arities_prop { dlDefinitionBegin } { 0 } -\ExplSyntaxOff -\def\markdownRendererDlDefinitionEnd{% - \markdownRendererDlDefinitionEndPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererDlDefinitionEnd + { + \markdownRendererDlDefinitionEndPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { dlDefinitionEnd } @@ -1501,10 +1670,11 @@ \g__markdown_renderer_arities_prop { dlDefinitionEnd } { 0 } -\ExplSyntaxOff -\def\markdownRendererDlEnd{% - \markdownRendererDlEndPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererDlEnd + { + \markdownRendererDlEndPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { dlEnd } @@ -1512,10 +1682,11 @@ \g__markdown_renderer_arities_prop { dlEnd } { 0 } -\ExplSyntaxOff -\def\markdownRendererDlEndTight{% - \markdownRendererDlEndTightPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererDlEndTight + { + \markdownRendererDlEndTightPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { dlEndTight } @@ -1523,10 +1694,11 @@ \g__markdown_renderer_arities_prop { dlEndTight } { 0 } -\ExplSyntaxOff -\def\markdownRendererEllipsis{% - \markdownRendererEllipsisPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererEllipsis + { + \markdownRendererEllipsisPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { ellipsis } @@ -1534,10 +1706,11 @@ \g__markdown_renderer_arities_prop { ellipsis } { 0 } -\ExplSyntaxOff -\def\markdownRendererEmphasis{% - \markdownRendererEmphasisPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererEmphasis + { + \markdownRendererEmphasisPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { emphasis } @@ -1545,10 +1718,11 @@ \g__markdown_renderer_arities_prop { emphasis } { 1 } -\ExplSyntaxOff -\def\markdownRendererStrongEmphasis{% - \markdownRendererStrongEmphasisPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererStrongEmphasis + { + \markdownRendererStrongEmphasisPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { strongEmphasis } @@ -1556,10 +1730,11 @@ \g__markdown_renderer_arities_prop { strongEmphasis } { 1 } -\ExplSyntaxOff -\def\markdownRendererFencedCodeAttributeContextBegin{% - \markdownRendererFencedCodeAttributeContextBeginPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererFencedCodeAttributeContextBegin + { + \markdownRendererFencedCodeAttributeContextBeginPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { fencedCodeAttributeContextBegin } @@ -1567,10 +1742,11 @@ \g__markdown_renderer_arities_prop { fencedCodeAttributeContextBegin } { 0 } -\ExplSyntaxOff -\def\markdownRendererFencedCodeAttributeContextEnd{% - \markdownRendererFencedCodeAttributeContextEndPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererFencedCodeAttributeContextEnd + { + \markdownRendererFencedCodeAttributeContextEndPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { fencedCodeAttributeContextEnd } @@ -1578,10 +1754,11 @@ \g__markdown_renderer_arities_prop { fencedCodeAttributeContextEnd } { 0 } -\ExplSyntaxOff -\def\markdownRendererFencedDivAttributeContextBegin{% - \markdownRendererFencedDivAttributeContextBeginPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererFencedDivAttributeContextBegin + { + \markdownRendererFencedDivAttributeContextBeginPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { fencedDivAttributeContextBegin } @@ -1589,10 +1766,11 @@ \g__markdown_renderer_arities_prop { fencedDivAttributeContextBegin } { 0 } -\ExplSyntaxOff -\def\markdownRendererFencedDivAttributeContextEnd{% - \markdownRendererFencedDivAttributeContextEndPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererFencedDivAttributeContextEnd + { + \markdownRendererFencedDivAttributeContextEndPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { fencedDivAttributeContextEnd } @@ -1600,10 +1778,11 @@ \g__markdown_renderer_arities_prop { fencedDivAttributeContextEnd } { 0 } -\ExplSyntaxOff -\def\markdownRendererHeaderAttributeContextBegin{% - \markdownRendererHeaderAttributeContextBeginPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererHeaderAttributeContextBegin + { + \markdownRendererHeaderAttributeContextBeginPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { headerAttributeContextBegin } @@ -1611,10 +1790,11 @@ \g__markdown_renderer_arities_prop { headerAttributeContextBegin } { 0 } -\ExplSyntaxOff -\def\markdownRendererHeaderAttributeContextEnd{% - \markdownRendererHeaderAttributeContextEndPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererHeaderAttributeContextEnd + { + \markdownRendererHeaderAttributeContextEndPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { headerAttributeContextEnd } @@ -1622,10 +1802,11 @@ \g__markdown_renderer_arities_prop { headerAttributeContextEnd } { 0 } -\ExplSyntaxOff -\def\markdownRendererHeadingOne{% - \markdownRendererHeadingOnePrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererHeadingOne + { + \markdownRendererHeadingOnePrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { headingOne } @@ -1633,10 +1814,11 @@ \g__markdown_renderer_arities_prop { headingOne } { 1 } -\ExplSyntaxOff -\def\markdownRendererHeadingTwo{% - \markdownRendererHeadingTwoPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererHeadingTwo + { + \markdownRendererHeadingTwoPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { headingTwo } @@ -1644,10 +1826,11 @@ \g__markdown_renderer_arities_prop { headingTwo } { 1 } -\ExplSyntaxOff -\def\markdownRendererHeadingThree{% - \markdownRendererHeadingThreePrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererHeadingThree + { + \markdownRendererHeadingThreePrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { headingThree } @@ -1655,10 +1838,11 @@ \g__markdown_renderer_arities_prop { headingThree } { 1 } -\ExplSyntaxOff -\def\markdownRendererHeadingFour{% - \markdownRendererHeadingFourPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererHeadingFour + { + \markdownRendererHeadingFourPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { headingFour } @@ -1666,10 +1850,11 @@ \g__markdown_renderer_arities_prop { headingFour } { 1 } -\ExplSyntaxOff -\def\markdownRendererHeadingFive{% - \markdownRendererHeadingFivePrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererHeadingFive + { + \markdownRendererHeadingFivePrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { headingFive } @@ -1677,10 +1862,11 @@ \g__markdown_renderer_arities_prop { headingFive } { 1 } -\ExplSyntaxOff -\def\markdownRendererHeadingSix{% - \markdownRendererHeadingSixPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererHeadingSix + { + \markdownRendererHeadingSixPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { headingSix } @@ -1688,10 +1874,11 @@ \g__markdown_renderer_arities_prop { headingSix } { 1 } -\ExplSyntaxOff -\def\markdownRendererInlineHtmlComment{% - \markdownRendererInlineHtmlCommentPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererInlineHtmlComment + { + \markdownRendererInlineHtmlCommentPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { inlineHtmlComment } @@ -1699,10 +1886,11 @@ \g__markdown_renderer_arities_prop { inlineHtmlComment } { 1 } -\ExplSyntaxOff -\def\markdownRendererInlineHtmlTag{% - \markdownRendererInlineHtmlTagPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererInlineHtmlTag + { + \markdownRendererInlineHtmlTagPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { inlineHtmlTag } @@ -1710,10 +1898,11 @@ \g__markdown_renderer_arities_prop { inlineHtmlTag } { 1 } -\ExplSyntaxOff -\def\markdownRendererInputBlockHtmlElement{% - \markdownRendererInputBlockHtmlElementPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererInputBlockHtmlElement + { + \markdownRendererInputBlockHtmlElementPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { inputBlockHtmlElement } @@ -1721,10 +1910,11 @@ \g__markdown_renderer_arities_prop { inputBlockHtmlElement } { 1 } -\ExplSyntaxOff -\def\markdownRendererImage{% - \markdownRendererImagePrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererImage + { + \markdownRendererImagePrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { image } @@ -1732,10 +1922,11 @@ \g__markdown_renderer_arities_prop { image } { 4 } -\ExplSyntaxOff -\def\markdownRendererImageAttributeContextBegin{% - \markdownRendererImageAttributeContextBeginPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererImageAttributeContextBegin + { + \markdownRendererImageAttributeContextBeginPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { imageAttributeContextBegin } @@ -1743,10 +1934,11 @@ \g__markdown_renderer_arities_prop { imageAttributeContextBegin } { 0 } -\ExplSyntaxOff -\def\markdownRendererImageAttributeContextEnd{% - \markdownRendererImageAttributeContextEndPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererImageAttributeContextEnd + { + \markdownRendererImageAttributeContextEndPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { imageAttributeContextEnd } @@ -1754,10 +1946,11 @@ \g__markdown_renderer_arities_prop { imageAttributeContextEnd } { 0 } -\ExplSyntaxOff -\def\markdownRendererInterblockSeparator{% - \markdownRendererInterblockSeparatorPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererInterblockSeparator + { + \markdownRendererInterblockSeparatorPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { interblockSeparator } @@ -1765,10 +1958,11 @@ \g__markdown_renderer_arities_prop { interblockSeparator } { 0 } -\ExplSyntaxOff -\def\markdownRendererParagraphSeparator{% - \markdownRendererParagraphSeparatorPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererParagraphSeparator + { + \markdownRendererParagraphSeparatorPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { paragraphSeparator } @@ -1776,10 +1970,11 @@ \g__markdown_renderer_arities_prop { paragraphSeparator } { 0 } -\ExplSyntaxOff -\def\markdownRendererLineBlockBegin{% - \markdownRendererLineBlockBeginPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererLineBlockBegin + { + \markdownRendererLineBlockBeginPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { lineBlockBegin } @@ -1787,10 +1982,11 @@ \g__markdown_renderer_arities_prop { lineBlockBegin } { 0 } -\ExplSyntaxOff -\def\markdownRendererLineBlockEnd{% - \markdownRendererLineBlockEndPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererLineBlockEnd + { + \markdownRendererLineBlockEndPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { lineBlockEnd } @@ -1798,10 +1994,11 @@ \g__markdown_renderer_arities_prop { lineBlockEnd } { 0 } -\ExplSyntaxOff -\def\markdownRendererSoftLineBreak{% - \markdownRendererSoftLineBreakPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererSoftLineBreak + { + \markdownRendererSoftLineBreakPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { softLineBreak } @@ -1809,10 +2006,11 @@ \g__markdown_renderer_arities_prop { softLineBreak } { 0 } -\ExplSyntaxOff -\def\markdownRendererHardLineBreak{% - \markdownRendererHardLineBreakPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererHardLineBreak + { + \markdownRendererHardLineBreakPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { hardLineBreak } @@ -1820,10 +2018,11 @@ \g__markdown_renderer_arities_prop { hardLineBreak } { 0 } -\ExplSyntaxOff -\def\markdownRendererLink{% - \markdownRendererLinkPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererLink + { + \markdownRendererLinkPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { link } @@ -1831,10 +2030,11 @@ \g__markdown_renderer_arities_prop { link } { 4 } -\ExplSyntaxOff -\def\markdownRendererLinkAttributeContextBegin{% - \markdownRendererLinkAttributeContextBeginPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererLinkAttributeContextBegin + { + \markdownRendererLinkAttributeContextBeginPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { linkAttributeContextBegin } @@ -1842,10 +2042,11 @@ \g__markdown_renderer_arities_prop { linkAttributeContextBegin } { 0 } -\ExplSyntaxOff -\def\markdownRendererLinkAttributeContextEnd{% - \markdownRendererLinkAttributeContextEndPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererLinkAttributeContextEnd + { + \markdownRendererLinkAttributeContextEndPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { linkAttributeContextEnd } @@ -1853,10 +2054,11 @@ \g__markdown_renderer_arities_prop { linkAttributeContextEnd } { 0 } -\ExplSyntaxOff -\def\markdownRendererMark{% - \markdownRendererMarkPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererMark + { + \markdownRendererMarkPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { mark } @@ -1864,10 +2066,11 @@ \g__markdown_renderer_arities_prop { mark } { 1 } -\ExplSyntaxOff -\def\markdownRendererDocumentBegin{% - \markdownRendererDocumentBeginPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererDocumentBegin + { + \markdownRendererDocumentBeginPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { documentBegin } @@ -1875,10 +2078,11 @@ \g__markdown_renderer_arities_prop { documentBegin } { 0 } -\ExplSyntaxOff -\def\markdownRendererDocumentEnd{% - \markdownRendererDocumentEndPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererDocumentEnd + { + \markdownRendererDocumentEndPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { documentEnd } @@ -1886,10 +2090,11 @@ \g__markdown_renderer_arities_prop { documentEnd } { 0 } -\ExplSyntaxOff -\def\markdownRendererNbsp{% - \markdownRendererNbspPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererNbsp + { + \markdownRendererNbspPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { nbsp } @@ -1908,10 +2113,11 @@ \g__markdown_renderer_arities_prop { note } { 1 } -\ExplSyntaxOff -\def\markdownRendererOlBegin{% - \markdownRendererOlBeginPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererOlBegin + { + \markdownRendererOlBeginPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { olBegin } @@ -1919,10 +2125,11 @@ \g__markdown_renderer_arities_prop { olBegin } { 0 } -\ExplSyntaxOff -\def\markdownRendererOlBeginTight{% - \markdownRendererOlBeginTightPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererOlBeginTight + { + \markdownRendererOlBeginTightPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { olBeginTight } @@ -1930,10 +2137,11 @@ \g__markdown_renderer_arities_prop { olBeginTight } { 0 } -\ExplSyntaxOff -\def\markdownRendererFancyOlBegin{% - \markdownRendererFancyOlBeginPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererFancyOlBegin + { + \markdownRendererFancyOlBeginPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { fancyOlBegin } @@ -1941,10 +2149,11 @@ \g__markdown_renderer_arities_prop { fancyOlBegin } { 2 } -\ExplSyntaxOff -\def\markdownRendererFancyOlBeginTight{% - \markdownRendererFancyOlBeginTightPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererFancyOlBeginTight + { + \markdownRendererFancyOlBeginTightPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { fancyOlBeginTight } @@ -1952,10 +2161,11 @@ \g__markdown_renderer_arities_prop { fancyOlBeginTight } { 2 } -\ExplSyntaxOff -\def\markdownRendererOlItem{% - \markdownRendererOlItemPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererOlItem + { + \markdownRendererOlItemPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { olItem } @@ -1963,10 +2173,11 @@ \g__markdown_renderer_arities_prop { olItem } { 0 } -\ExplSyntaxOff -\def\markdownRendererOlItemEnd{% - \markdownRendererOlItemEndPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererOlItemEnd + { + \markdownRendererOlItemEndPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { olItemEnd } @@ -1974,10 +2185,11 @@ \g__markdown_renderer_arities_prop { olItemEnd } { 0 } -\ExplSyntaxOff -\def\markdownRendererOlItemWithNumber{% - \markdownRendererOlItemWithNumberPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererOlItemWithNumber + { + \markdownRendererOlItemWithNumberPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { olItemWithNumber } @@ -1985,10 +2197,11 @@ \g__markdown_renderer_arities_prop { olItemWithNumber } { 1 } -\ExplSyntaxOff -\def\markdownRendererFancyOlItem{% - \markdownRendererFancyOlItemPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererFancyOlItem + { + \markdownRendererFancyOlItemPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { fancyOlItem } @@ -1996,10 +2209,11 @@ \g__markdown_renderer_arities_prop { fancyOlItem } { 0 } -\ExplSyntaxOff -\def\markdownRendererFancyOlItemEnd{% - \markdownRendererFancyOlItemEndPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererFancyOlItemEnd + { + \markdownRendererFancyOlItemEndPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { fancyOlItemEnd } @@ -2007,10 +2221,11 @@ \g__markdown_renderer_arities_prop { fancyOlItemEnd } { 0 } -\ExplSyntaxOff -\def\markdownRendererFancyOlItemWithNumber{% - \markdownRendererFancyOlItemWithNumberPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererFancyOlItemWithNumber + { + \markdownRendererFancyOlItemWithNumberPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { fancyOlItemWithNumber } @@ -2018,10 +2233,11 @@ \g__markdown_renderer_arities_prop { fancyOlItemWithNumber } { 1 } -\ExplSyntaxOff -\def\markdownRendererOlEnd{% - \markdownRendererOlEndPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererOlEnd + { + \markdownRendererOlEndPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { olEnd } @@ -2029,10 +2245,11 @@ \g__markdown_renderer_arities_prop { olEnd } { 0 } -\ExplSyntaxOff -\def\markdownRendererOlEndTight{% - \markdownRendererOlEndTightPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererOlEndTight + { + \markdownRendererOlEndTightPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { olEndTight } @@ -2040,10 +2257,11 @@ \g__markdown_renderer_arities_prop { olEndTight } { 0 } -\ExplSyntaxOff -\def\markdownRendererFancyOlEnd{% - \markdownRendererFancyOlEndPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererFancyOlEnd + { + \markdownRendererFancyOlEndPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { fancyOlEnd } @@ -2051,10 +2269,11 @@ \g__markdown_renderer_arities_prop { fancyOlEnd } { 0 } -\ExplSyntaxOff -\def\markdownRendererFancyOlEndTight{% - \markdownRendererFancyOlEndTightPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererFancyOlEndTight + { + \markdownRendererFancyOlEndTightPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { fancyOlEndTight } @@ -2062,10 +2281,11 @@ \g__markdown_renderer_arities_prop { fancyOlEndTight } { 0 } -\ExplSyntaxOff -\def\markdownRendererInputRawInline{% - \markdownRendererInputRawInlinePrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererInputRawInline + { + \markdownRendererInputRawInlinePrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { inputRawInline } @@ -2073,10 +2293,11 @@ \g__markdown_renderer_arities_prop { inputRawInline } { 2 } -\ExplSyntaxOff -\def\markdownRendererInputRawBlock{% - \markdownRendererInputRawBlockPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererInputRawBlock + { + \markdownRendererInputRawBlockPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { inputRawBlock } @@ -2084,10 +2305,11 @@ \g__markdown_renderer_arities_prop { inputRawBlock } { 2 } -\ExplSyntaxOff -\def\markdownRendererSectionBegin{% - \markdownRendererSectionBeginPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererSectionBegin + { + \markdownRendererSectionBeginPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { sectionBegin } @@ -2095,10 +2317,11 @@ \g__markdown_renderer_arities_prop { sectionBegin } { 0 } -\ExplSyntaxOff -\def\markdownRendererSectionEnd{% - \markdownRendererSectionEndPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererSectionEnd + { + \markdownRendererSectionEndPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { sectionEnd } @@ -2106,10 +2329,11 @@ \g__markdown_renderer_arities_prop { sectionEnd } { 0 } -\ExplSyntaxOff -\def\markdownRendererReplacementCharacter{% - \markdownRendererReplacementCharacterPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererReplacementCharacter + { + \markdownRendererReplacementCharacterPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { replacementCharacter } @@ -2117,10 +2341,11 @@ \g__markdown_renderer_arities_prop { replacementCharacter } { 0 } -\ExplSyntaxOff -\def\markdownRendererLeftBrace{% - \markdownRendererLeftBracePrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererLeftBrace + { + \markdownRendererLeftBracePrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { leftBrace } @@ -2128,10 +2353,11 @@ \g__markdown_renderer_arities_prop { leftBrace } { 0 } -\ExplSyntaxOff -\def\markdownRendererRightBrace{% - \markdownRendererRightBracePrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererRightBrace + { + \markdownRendererRightBracePrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { rightBrace } @@ -2139,10 +2365,11 @@ \g__markdown_renderer_arities_prop { rightBrace } { 0 } -\ExplSyntaxOff -\def\markdownRendererDollarSign{% - \markdownRendererDollarSignPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererDollarSign + { + \markdownRendererDollarSignPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { dollarSign } @@ -2150,10 +2377,11 @@ \g__markdown_renderer_arities_prop { dollarSign } { 0 } -\ExplSyntaxOff -\def\markdownRendererPercentSign{% - \markdownRendererPercentSignPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererPercentSign + { + \markdownRendererPercentSignPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { percentSign } @@ -2161,10 +2389,11 @@ \g__markdown_renderer_arities_prop { percentSign } { 0 } -\ExplSyntaxOff -\def\markdownRendererAmpersand{% - \markdownRendererAmpersandPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererAmpersand + { + \markdownRendererAmpersandPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { ampersand } @@ -2172,10 +2401,11 @@ \g__markdown_renderer_arities_prop { ampersand } { 0 } -\ExplSyntaxOff -\def\markdownRendererUnderscore{% - \markdownRendererUnderscorePrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererUnderscore + { + \markdownRendererUnderscorePrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { underscore } @@ -2183,10 +2413,11 @@ \g__markdown_renderer_arities_prop { underscore } { 0 } -\ExplSyntaxOff -\def\markdownRendererHash{% - \markdownRendererHashPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererHash + { + \markdownRendererHashPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { hash } @@ -2194,10 +2425,11 @@ \g__markdown_renderer_arities_prop { hash } { 0 } -\ExplSyntaxOff -\def\markdownRendererCircumflex{% - \markdownRendererCircumflexPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererCircumflex + { + \markdownRendererCircumflexPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { circumflex } @@ -2205,10 +2437,11 @@ \g__markdown_renderer_arities_prop { circumflex } { 0 } -\ExplSyntaxOff -\def\markdownRendererBackslash{% - \markdownRendererBackslashPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererBackslash + { + \markdownRendererBackslashPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { backslash } @@ -2216,10 +2449,11 @@ \g__markdown_renderer_arities_prop { backslash } { 0 } -\ExplSyntaxOff -\def\markdownRendererTilde{% - \markdownRendererTildePrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererTilde + { + \markdownRendererTildePrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { tilde } @@ -2227,10 +2461,11 @@ \g__markdown_renderer_arities_prop { tilde } { 0 } -\ExplSyntaxOff -\def\markdownRendererPipe{% - \markdownRendererPipePrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererPipe + { + \markdownRendererPipePrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { pipe } @@ -2238,10 +2473,11 @@ \g__markdown_renderer_arities_prop { pipe } { 0 } -\ExplSyntaxOff -\def\markdownRendererStrikeThrough{% - \markdownRendererStrikeThroughPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererStrikeThrough + { + \markdownRendererStrikeThroughPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { strikeThrough } @@ -2249,10 +2485,11 @@ \g__markdown_renderer_arities_prop { strikeThrough } { 1 } -\ExplSyntaxOff -\def\markdownRendererSubscript{% - \markdownRendererSubscriptPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererSubscript + { + \markdownRendererSubscriptPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { subscript } @@ -2260,9 +2497,11 @@ \g__markdown_renderer_arities_prop { subscript } { 1 } -\def\markdownRendererSuperscript{% - \markdownRendererSuperscriptPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererSuperscript + { + \markdownRendererSuperscriptPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { superscript } @@ -2270,10 +2509,11 @@ \g__markdown_renderer_arities_prop { superscript } { 1 } -\ExplSyntaxOff -\def\markdownRendererTableAttributeContextBegin{% - \markdownRendererTableAttributeContextBeginPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererTableAttributeContextBegin + { + \markdownRendererTableAttributeContextBeginPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { tableAttributeContextBegin } @@ -2281,10 +2521,11 @@ \g__markdown_renderer_arities_prop { tableAttributeContextBegin } { 0 } -\ExplSyntaxOff -\def\markdownRendererTableAttributeContextEnd{% - \markdownRendererTableAttributeContextEndPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererTableAttributeContextEnd + { + \markdownRendererTableAttributeContextEndPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { tableAttributeContextEnd } @@ -2292,10 +2533,11 @@ \g__markdown_renderer_arities_prop { tableAttributeContextEnd } { 0 } -\ExplSyntaxOff -\def\markdownRendererTable{% - \markdownRendererTablePrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererTable + { + \markdownRendererTablePrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { table } @@ -2303,10 +2545,11 @@ \g__markdown_renderer_arities_prop { table } { 3 } -\ExplSyntaxOff -\def\markdownRendererInlineMath{% - \markdownRendererInlineMathPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererInlineMath + { + \markdownRendererInlineMathPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { inlineMath } @@ -2314,10 +2557,11 @@ \g__markdown_renderer_arities_prop { inlineMath } { 1 } -\ExplSyntaxOff -\def\markdownRendererDisplayMath{% - \markdownRendererDisplayMathPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererDisplayMath + { + \markdownRendererDisplayMathPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { displayMath } @@ -2325,10 +2569,11 @@ \g__markdown_renderer_arities_prop { displayMath } { 1 } -\ExplSyntaxOff -\def\markdownRendererThematicBreak{% - \markdownRendererThematicBreakPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererThematicBreak + { + \markdownRendererThematicBreakPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { thematicBreak } @@ -2336,10 +2581,11 @@ \g__markdown_renderer_arities_prop { thematicBreak } { 0 } -\ExplSyntaxOff -\def\markdownRendererTickedBox{% - \markdownRendererTickedBoxPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererTickedBox + { + \markdownRendererTickedBoxPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { tickedBox } @@ -2347,10 +2593,11 @@ \g__markdown_renderer_arities_prop { tickedBox } { 0 } -\ExplSyntaxOff -\def\markdownRendererHalfTickedBox{% - \markdownRendererHalfTickedBoxPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererHalfTickedBox + { + \markdownRendererHalfTickedBoxPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { halfTickedBox } @@ -2358,10 +2605,11 @@ \g__markdown_renderer_arities_prop { halfTickedBox } { 0 } -\ExplSyntaxOff -\def\markdownRendererUntickedBox{% - \markdownRendererUntickedBoxPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererUntickedBox + { + \markdownRendererUntickedBoxPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { untickedBox } @@ -2369,10 +2617,35 @@ \g__markdown_renderer_arities_prop { untickedBox } { 0 } -\ExplSyntaxOff -\def\markdownRendererJekyllDataBegin{% - \markdownRendererJekyllDataBeginPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererWarning + { + \markdownRendererWarningPrototype + } +\cs_gset_protected:Npn + \markdownRendererError + { + \markdownRendererErrorPrototype + } +\seq_gput_right:Nn + \g__markdown_renderers_seq + { warning } +\prop_gput:Nnn + \g__markdown_renderer_arities_prop + { warning } + { 4 } +\seq_gput_right:Nn + \g__markdown_renderers_seq + { error } +\prop_gput:Nnn + \g__markdown_renderer_arities_prop + { error } + { 4 } +\cs_gset_protected:Npn + \markdownRendererJekyllDataBegin + { + \markdownRendererJekyllDataBeginPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { jekyllDataBegin } @@ -2380,10 +2653,11 @@ \g__markdown_renderer_arities_prop { jekyllDataBegin } { 0 } -\ExplSyntaxOff -\def\markdownRendererJekyllDataEnd{% - \markdownRendererJekyllDataEndPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererJekyllDataEnd + { + \markdownRendererJekyllDataEndPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { jekyllDataEnd } @@ -2391,10 +2665,11 @@ \g__markdown_renderer_arities_prop { jekyllDataEnd } { 0 } -\ExplSyntaxOff -\def\markdownRendererJekyllDataMappingBegin{% - \markdownRendererJekyllDataMappingBeginPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererJekyllDataMappingBegin + { + \markdownRendererJekyllDataMappingBeginPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { jekyllDataMappingBegin } @@ -2402,10 +2677,11 @@ \g__markdown_renderer_arities_prop { jekyllDataMappingBegin } { 2 } -\ExplSyntaxOff -\def\markdownRendererJekyllDataMappingEnd{% - \markdownRendererJekyllDataMappingEndPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererJekyllDataMappingEnd + { + \markdownRendererJekyllDataMappingEndPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { jekyllDataMappingEnd } @@ -2413,10 +2689,11 @@ \g__markdown_renderer_arities_prop { jekyllDataMappingEnd } { 0 } -\ExplSyntaxOff -\def\markdownRendererJekyllDataSequenceBegin{% - \markdownRendererJekyllDataSequenceBeginPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererJekyllDataSequenceBegin + { + \markdownRendererJekyllDataSequenceBeginPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { jekyllDataSequenceBegin } @@ -2424,10 +2701,11 @@ \g__markdown_renderer_arities_prop { jekyllDataSequenceBegin } { 2 } -\ExplSyntaxOff -\def\markdownRendererJekyllDataSequenceEnd{% - \markdownRendererJekyllDataSequenceEndPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererJekyllDataSequenceEnd + { + \markdownRendererJekyllDataSequenceEndPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { jekyllDataSequenceEnd } @@ -2435,10 +2713,11 @@ \g__markdown_renderer_arities_prop { jekyllDataSequenceEnd } { 0 } -\ExplSyntaxOff -\def\markdownRendererJekyllDataBoolean{% - \markdownRendererJekyllDataBooleanPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererJekyllDataBoolean + { + \markdownRendererJekyllDataBooleanPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { jekyllDataBoolean } @@ -2446,10 +2725,11 @@ \g__markdown_renderer_arities_prop { jekyllDataBoolean } { 2 } -\ExplSyntaxOff -\def\markdownRendererJekyllDataNumber{% - \markdownRendererJekyllDataNumberPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererJekyllDataNumber + { + \markdownRendererJekyllDataNumberPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { jekyllDataNumber } @@ -2457,10 +2737,83 @@ \g__markdown_renderer_arities_prop { jekyllDataNumber } { 2 } -\ExplSyntaxOff -\def\markdownRendererJekyllDataString{% - \markdownRendererJekyllDataStringPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererJekyllDataTypographicString + { + \markdownRendererJekyllDataTypographicStringPrototype + } +\cs_gset_protected:Npn + \markdownRendererJekyllDataProgrammaticString + { + \markdownRendererJekyllDataProgrammaticStringPrototype + } +\seq_gput_right:Nn + \g__markdown_renderers_seq + { jekyllDataTypographicString } +\prop_gput:Nnn + \g__markdown_renderer_arities_prop + { jekyllDataTypographicString } + { 2 } +\seq_gput_right:Nn + \g__markdown_renderers_seq + { jekyllDataProgrammaticString } +\prop_gput:Nnn + \g__markdown_renderer_arities_prop + { jekyllDataProgrammaticString } + { 2 } +\cs_gset:Npn + \markdownRendererJekyllDataTypographicString + { + \cs_if_exist:NTF + \markdownRendererJekyllDataString + { + \__markdown_if_option:nTF + { experimental } + { + \markdownError + { + The~jekyllDataString~renderer~has~been~deprecated,~ + to~be~removed~in~Markdown~4.0.0 + } + } + { + \markdownWarning + { + The~jekyllDataString~renderer~has~been~deprecated,~ + to~be~removed~in~Markdown~4.0.0 + } + \markdownRendererJekyllDataString + } + } + { + \cs_if_exist:NTF + \markdownRendererJekyllDataStringPrototype + { + \__markdown_if_option:nTF + { experimental } + { + \markdownError + { + The~jekyllDataString~renderer~prototype~ + has~been~deprecated,~ + to~be~removed~in~Markdown~4.0.0 + } + } + { + \markdownWarning + { + The~jekyllDataString~renderer~prototype~ + has~been~deprecated,~ + to~be~removed~in~Markdown~4.0.0 + } + \markdownRendererJekyllDataStringPrototype + } + } + { + \markdownRendererJekyllDataTypographicStringPrototype + } + } + } \seq_gput_right:Nn \g__markdown_renderers_seq { jekyllDataString } @@ -2468,10 +2821,11 @@ \g__markdown_renderer_arities_prop { jekyllDataString } { 2 } -\ExplSyntaxOff -\def\markdownRendererJekyllDataEmpty{% - \markdownRendererJekyllDataEmptyPrototype}% -\ExplSyntaxOn +\cs_gset_protected:Npn + \markdownRendererJekyllDataEmpty + { + \markdownRendererJekyllDataEmptyPrototype + } \seq_gput_right:Nn \g__markdown_renderers_seq { jekyllDataEmpty } @@ -2481,9 +2835,12 @@ { 1 } \cs_new:Nn \__markdown_define_renderers: { - \seq_map_function:NN + \seq_map_inline:Nn \g__markdown_renderers_seq - \__markdown_define_renderer:n + { + \__markdown_define_renderer:n + { ##1 } + } } \cs_new:Nn \__markdown_define_renderer:n { @@ -2516,6 +2873,8 @@ \l__markdown_renderer_definition_tl \bool_new:N \g__markdown_appending_renderer_bool +\bool_new:N + \g__markdown_unprotected_renderer_bool \cs_new:Nn \__markdown_define_renderer:nNn { \keys_define:nn @@ -2540,13 +2899,33 @@ \l__markdown_renderer_definition_tl \l_tmpa_tl } - \cs_generate_from_arg_count:NNnV + \bool_if:NTF + \g__markdown_unprotected_renderer_bool + { + \tl_set:Nn + \l_tmpa_tl + { \cs_set:Npn } + } + { + \tl_set:Nn + \l_tmpa_tl + { \cs_set_protected:Npn } + } + \exp_last_unbraced:NNV + \cs_generate_from_arg_count:NNnV #2 - \cs_set:Npn + \l_tmpa_tl { #3 } \l__markdown_renderer_definition_tl }, } + \str_if_eq:nnT + { #1 } + { jekyllDataString } + { + \cs_undefine:N + #2 + } } \cs_new_protected:Nn \__markdown_tl_set_from_cs:NNn @@ -2595,6 +2974,15 @@ { markdown/options } { renderers .code:n = { + \bool_gset_false:N + \g__markdown_unprotected_renderer_bool + \keys_set:nn + { markdown/options/renderers } + { #1 } + }, + unprotectedRenderers .code:n = { + \bool_gset_true:N + \g__markdown_unprotected_renderer_bool \keys_set:nn { markdown/options/renderers } { #1 } @@ -2739,10 +3127,6 @@ \l_tmpa_clist } } -\prg_generate_conditional_variant:Nnn - \prop_get:NnN - { NeN } - { TF } \cs_generate_variant:Nn \regex_set:Nn { NV } @@ -2804,9 +3188,12 @@ { nV } \cs_new:Nn \__markdown_define_renderer_prototypes: { - \seq_map_function:NN + \seq_map_inline:Nn \g__markdown_renderers_seq - \__markdown_define_renderer_prototype:n + { + \__markdown_define_renderer_prototype:n + { ##1 } + } } \cs_new:Nn \__markdown_define_renderer_prototype:n { @@ -2840,6 +3227,8 @@ \l__markdown_renderer_prototype_definition_tl \bool_new:N \g__markdown_appending_renderer_prototype_bool +\bool_new:N + \g__markdown_unprotected_renderer_prototype_bool \cs_new:Nn \__markdown_define_renderer_prototype:nNn { \keys_define:nn @@ -2864,21 +3253,39 @@ \l__markdown_renderer_prototype_definition_tl \l_tmpa_tl } - \cs_generate_from_arg_count:NNnV + \bool_if:NTF + \g__markdown_unprotected_renderer_prototype_bool + { + \tl_set:Nn + \l_tmpa_tl + { \cs_set:Npn } + } + { + \tl_set:Nn + \l_tmpa_tl + { \cs_set_protected:Npn } + } + \exp_last_unbraced:NNV + \cs_generate_from_arg_count:NNnV #2 - \cs_set:Npn + \l_tmpa_tl { #3 } \l__markdown_renderer_prototype_definition_tl }, } - \cs_if_free:NT - #2 + \str_if_eq:nnF + { #1 } + { jekyllDataString } { - \cs_generate_from_arg_count:NNnn + \cs_if_free:NT #2 - \cs_set:Npn - { #3 } - { } + { + \cs_generate_from_arg_count:NNnn + #2 + \cs_gset_protected:Npn + { #3 } + { } + } } } \cs_generate_variant:Nn @@ -2960,6 +3367,23 @@ { markdown/options } { #1 .code:n = { + \bool_gset_false:N + \g__markdown_unprotected_renderer_prototype_bool + \keys_set:nn + { markdown/options/renderer-prototypes } + { ##1 } + }, + } + } +\__markdown_with_various_cases:nn + { unprotectedRendererPrototypes } + { + \keys_define:nn + { markdown/options } + { + #1 .code:n = { + \bool_gset_true:N + \g__markdown_unprotected_renderer_prototype_bool \keys_set:nn { markdown/options/renderer-prototypes } { ##1 } @@ -2980,6 +3404,11 @@ |gdef|markdownBegin{% |markdownReadAndConvert{\markdownEnd}% {|markdownEnd}}% + |gdef|yamlBegin{% + |begingroup + |yamlSetup{jekyllData, expectJekyllData, ensureJekyllData}% + |markdownReadAndConvert{\yamlEnd}% + {|yamlEnd}}% |endgroup \ExplSyntaxOn \keys_define:nn @@ -3043,53 +3472,110 @@ \msg_error:nnnn { nnee } \prop_new:N \g__markdown_plain_tex_loaded_themes_linenos_prop +\prop_new:N \g__markdown_plain_tex_loaded_themes_versions_prop \cs_new:Nn - \__markdown_plain_tex_load_theme:nn + \__markdown_plain_tex_load_theme:nnn { \prop_get:NnNTF \g__markdown_plain_tex_loaded_themes_linenos_prop { #1 } \l_tmpa_tl { - \msg_warning:nnnV - { markdown } - { repeatedly-loaded-plain-tex-theme } + \prop_get:NnN + \g__markdown_plain_tex_loaded_themes_versions_prop { #1 } - \l_tmpa_tl + \l_tmpb_tl + \str_if_eq:nVTF + { #2 } + \l_tmpb_tl + { + \msg_warning:nnnVn + { markdown } + { repeatedly-loaded-plain-tex-theme } + { #1 } + \l_tmpa_tl + { #2 } + } + { + \msg_error:nnnnVV + { markdown } + { different-versions-of-plain-tex-theme } + { #1 } + { #2 } + \l_tmpb_tl + \l_tmpa_tl + } } { - \msg_info:nnn - { markdown } - { loading-plain-tex-theme } - { #1 } \prop_gput:Nnx \g__markdown_plain_tex_loaded_themes_linenos_prop { #1 } - { \tex_the:D \tex_inputlineno:D } - \file_input:n - { markdown theme #2 } + { \tex_the:D \tex_inputlineno:D } % noqa: W200 + \prop_gput:Nnn + \g__markdown_plain_tex_loaded_themes_versions_prop + { #1 } + { #2 } + \prop_if_in:NnTF + \g__markdown_plain_tex_built_in_themes_prop + { #1 } + { + \msg_info:nnnn + { markdown } + { loading-built-in-plain-tex-theme } + { #1 } + { #2 } + \prop_item:Nn + \g__markdown_plain_tex_built_in_themes_prop + { #1 } + } + { + \msg_info:nnnn + { markdown } + { loading-plain-tex-theme } + { #1 } + { #2 } + \file_input:n + { markdown theme #3 } + } } } \msg_new:nnn { markdown } { loading-plain-tex-theme } - { Loading~plain~TeX~Markdown~theme~#1 } + { Loading~version~#2~of~plain~TeX~Markdown~theme~#1 } +\msg_new:nnn + { markdown } + { loading-built-in-plain-tex-theme } + { Loading~version~#2~of~built-in~plain~TeX~Markdown~theme~#1 } \msg_new:nnn { markdown } { repeatedly-loaded-plain-tex-theme } { - Plain~TeX~Markdown~theme~#1~was~previously~ + Version~#3~of~plain~TeX~Markdown~theme~#1~was~previously~ loaded~on~line~#2,~not~loading~it~again } +\msg_new:nnn + { markdown } + { different-versions-of-plain-tex-theme } + { + Tried~to~load~version~#2~of~plain~TeX~Markdown~theme~#1~ + but~version~#3~has~already~been~loaded~on~line~#4 + } \cs_generate_variant:Nn \prop_gput:Nnn { Nnx } \cs_gset_eq:NN - \__markdown_load_theme:nn - \__markdown_plain_tex_load_theme:nn + \__markdown_load_theme:nnn + \__markdown_plain_tex_load_theme:nnn \cs_generate_variant:Nn - \__markdown_load_theme:nn - { nV } + \__markdown_load_theme:nnn + { VeV } +\cs_generate_variant:Nn + \msg_error:nnnnnn + { nnnnVV } +\cs_generate_variant:Nn + \msg_warning:nnnnn + { nnnVn } \cs_new:Npn \markdownLoadPlainTeXTheme { @@ -3113,28 +3599,447 @@ \l_tmpa_str { / } { _ } - \__markdown_plain_tex_load_theme:VV + \__markdown_plain_tex_load_theme:VeV \l_tmpb_tl + { \markdownThemeVersion } \l_tmpa_str } \cs_generate_variant:Nn \tl_set:Nn { Ne } \cs_generate_variant:Nn - \__markdown_plain_tex_load_theme:nn - { VV } + \__markdown_plain_tex_load_theme:nnn + { VeV } +\prop_gput:Nnn + \g__markdown_plain_tex_built_in_themes_prop + { witiko / dot } + { + \str_if_eq:enF + { \markdownThemeVersion } + { silent } + { + \markdownWarning + { + The~theme~name~"witiko/dot"~has~been~soft-deprecated. + \iow_newline: + Consider~changing~the~name~to~"witiko/diagrams@v1". + } + } + \markdownSetup { fencedCode } + \cs_set_eq:NN + \__markdown_dot_previous_definition:nnn + \markdownRendererInputFencedCodePrototype + \regex_const:Nn + \c__markdown_dot_infostring_regex + { ^dot(\s+(.+))? } + \seq_new:N + \l__markdown_dot_matches_seq + \markdownSetup { + rendererPrototypes = { + inputFencedCode = { + \regex_extract_once:NnNTF + \c__markdown_dot_infostring_regex + { #2 } + \l__markdown_dot_matches_seq + { + \__markdown_if_option:nF + { frozenCache } + { + \sys_shell_now:n + { + if~!~test~-e~#1.pdf.source~ + ||~!~diff~#1~#1.pdf.source; + then~ + dot~-Tpdf~-o~#1.pdf~#1; + cp~#1~#1.pdf.source; + fi + } + } + \exp_args:NNne + \exp_last_unbraced:No + \markdownRendererImage + { + { Graphviz~image } + { #1.pdf } + { #1.pdf } + } + { + \seq_item:Nn + \l__markdown_dot_matches_seq + { 3 } + } + } + { + \__markdown_dot_previous_definition:nnn + { #1 } + { #2 } + { #3 } + } + }, + }, + } + } +\prop_gput:Nnn + \g__markdown_plain_tex_built_in_themes_prop + { witiko / diagrams } + { + \str_case:enF + { \markdownThemeVersion } + { + { latest } + { + \markdownWarning + { + Write~"witiko/diagrams@v2"~to~pin~version~"v2"~of~the~ + theme~"witiko/diagrams".~This~will~keep~your~documents~ + from~suddenly~breaking~when~we~have~released~future~ + versions~of~the~theme~with~backwards-incompatible~ + syntax~and~behavior. + } + \markdownSetup + { + import = witiko/diagrams/v2, + } + } + { v2 } + { + \markdownSetup + { + import = witiko/diagrams/v2, + } + } + { v1 } + { + \markdownSetup + { + import = witiko/dot@silent, + } + } + } + { + \msg_error:nnnen + { markdown } + { unknown-theme-version } + { witiko/diagrams } + { \markdownThemeVersion } + { v1 } + } + } +\cs_generate_variant:Nn + \msg_error:nnnnn + { nnnen } +\msg_new:nnnn + { markdown } + { unknown-theme-version } + { Unknown~version~"#2"~of~theme~"#1"~has~been~requested. } + { Known~versions~are:~#3 } +\prop_gput:Nnn + \g__markdown_plain_tex_built_in_themes_prop + { witiko / diagrams / v2 } + { + \__markdown_setup:n + { + fencedCode = true, + fencedCodeAttributes = true, + } + \cs_set_eq:NN + \__markdown_diagrams_previous_fenced_code:nnn + \markdownRendererInputFencedCodePrototype + \tl_new:N + \l__markdown_diagrams_caption_tl + \__markdown_setup:n + { + rendererPrototypes = { + fencedCodeAttributeContextBegin = { + \group_begin: + \markdownRendererImageAttributeContextBegin + \cs_set_eq:NN + \__markdown_diagrams_previous_key_value:nn + \markdownRendererAttributeKeyValuePrototype + \__markdown_setup:n + { + rendererPrototypes = { + attributeKeyValue = { + \str_if_eq:nnTF + { ##1 } + { caption } + { + \tl_set:Nn + \l__markdown_diagrams_caption_tl + { ##2 } + } + { + \__markdown_diagrams_previous_key_value:nn + { ##1 } + { ##2 } + } + }, + }, + } + }, + fencedCodeAttributeContextEnd = { + \markdownRendererImageAttributeContextEnd + \group_end: + }, + }, + } + \cs_new:Nn + \__markdown_diagrams_render_diagram:nnnn + { + \__markdown_if_option:nF + { frozenCache } + { + \sys_shell_now:n + { + if~!~test~-e~#2.source~ + ||~!~diff~#1~#2.source; + then~ + (#3); + cp~#1~#2.source; + fi + } + \exp_args:NNnV + \exp_last_unbraced:No + \markdownRendererImage + { + { #4 } + { #2 } + { #2 } + } + \l__markdown_diagrams_caption_tl + } + } + \prop_new:N + \g_markdown_diagrams_infostrings_prop + \__markdown_setup:n + { + rendererPrototypes = { + inputFencedCode = { + \prop_get:NnNTF + \g_markdown_diagrams_infostrings_prop + { #2 } + \l_tmpa_tl + { + \cs_set:NV + \__markdown_diagrams_infostrings_current:n + \l_tmpa_tl + \__markdown_diagrams_infostrings_current:n + { #1 } + } + { + \__markdown_diagrams_previous_fenced_code:nnn + { #1 } + { #2 } + { #3 } + } + }, + }, + } + \cs_generate_variant:Nn + \cs_set:Nn + { NV } + \cs_set:Nn + \__markdown_diagrams_infostrings_current:n + { + \__markdown_diagrams_render_diagram:nnnn + { #1 } + { #1.pdf } + { dot~-Tpdf~-o~#1.pdf~#1 } + { Graphviz~image } + } + \__markdown_tl_set_from_cs:NNn + \l_tmpa_tl + \__markdown_diagrams_infostrings_current:n + { 1 } + \prop_gput:NnV + \g_markdown_diagrams_infostrings_prop + { dot } + \l_tmpa_tl + \cs_set:Nn + \__markdown_diagrams_infostrings_current:n + { + \__markdown_diagrams_render_diagram:nnnn + { #1 } + { #1.pdf } + { mmdc~--pdfFit~-i~#1~-o~#1.pdf } + { Mermaid~image } + } + \__markdown_tl_set_from_cs:NNn + \l_tmpa_tl + \__markdown_diagrams_infostrings_current:n + { 1 } + \prop_gput:NnV + \g_markdown_diagrams_infostrings_prop + { mermaid } + \l_tmpa_tl + \regex_const:Nn + \c__markdown_diagrams_filename_suffix_regex + { \.[^.]*$ } + \cs_set:Nn + \__markdown_diagrams_infostrings_current:n + { + \tl_set:Nn + \l_tmpa_tl + { #1 } + \regex_replace_once:NnN + \c__markdown_diagrams_filename_suffix_regex + { .pdf } + \l_tmpa_tl + \__markdown_diagrams_render_diagram:nVnn + { #1 } + \l_tmpa_tl + { plantuml~-tpdf~#1 } + { PlantUML~image } + } + \cs_generate_variant:Nn + \__markdown_diagrams_render_diagram:nnnn + { nVnn } + \__markdown_tl_set_from_cs:NNn + \l_tmpa_tl + \__markdown_diagrams_infostrings_current:n + { 1 } + \prop_gput:NnV + \g_markdown_diagrams_infostrings_prop + { plantuml } + \l_tmpa_tl + } +\group_begin: +\char_set_catcode_other:N \% +\prop_gput:Nnn + \g__markdown_plain_tex_built_in_themes_prop + { witiko / graphicx / http } + { + \cs_set_eq:NN + \__markdown_graphicx_http_previous_definition:nnnn + \markdownRendererImagePrototype + \int_new:N + \g__markdown_graphicx_http_image_number_int + \int_gset:Nn + \g__markdown_graphicx_http_image_number_int + { 0 } + \cs_new:Nn + \__markdown_graphicx_http_filename: + { + \markdownOptionCacheDir + / witiko_graphicx_http . + \int_use:N + \g__markdown_graphicx_http_image_number_int + } + \cs_new:Nn + \__markdown_graphicx_http_download:nn + { + wget~-O~#2~#1~ + ||~curl~--location~-o~#2~#1~ + ||~rm~-f~#2 + } + \str_new:N + \l__markdown_graphicx_http_filename_str + \ior_new:N + \g__markdown_graphicx_http_filename_ior + \markdownSetup { + rendererPrototypes = { + image = { + \__markdown_if_option:nF + { frozenCache } + { + \sys_shell_now:e + { + mkdir~-p~" \markdownOptionCacheDir "; + if~printf~'%s'~"#3"~|~grep~-q~-E~'^https?:'; + then~ + OUTPUT_PREFIX=" \markdownOptionCacheDir "; + OUTPUT_BODY="$(printf~'%s'~'#3' + |~md5sum~|~cut~-d'~'~-f1)"; + OUTPUT_SUFFIX="$(printf~'%s'~'#3' + |~sed~'s/.*[.]//')"; + OUTPUT="$OUTPUT_PREFIX/$OUTPUT_BODY.$OUTPUT_SUFFIX"; + if~!~[~-e~"$OUTPUT"~]; + then~ + \__markdown_graphicx_http_download:nn + { '#3' } + { "$OUTPUT" } ; + printf~'%s'~"$OUTPUT"~ + >~" \__markdown_graphicx_http_filename: "; + fi; + else~ + printf~'%s'~'#3'~ + >~" \__markdown_graphicx_http_filename: "; + fi + } + } + \ior_open:Ne + \g__markdown_graphicx_http_filename_ior + { \__markdown_graphicx_http_filename: } + \ior_str_get:NN + \g__markdown_graphicx_http_filename_ior + \l__markdown_graphicx_http_filename_str + \ior_close:N + \g__markdown_graphicx_http_filename_ior + \__markdown_graphicx_http_previous_definition:nnVn + { #1 } + { #2 } + \l__markdown_graphicx_http_filename_str + { #4 } + \int_gincr:N + \g__markdown_graphicx_http_image_number_int + } + } + } + \cs_generate_variant:Nn + \ior_open:Nn + { Ne } + \cs_generate_variant:Nn + \__markdown_graphicx_http_previous_definition:nnnn + { nnVn } + } +\group_end: +\prop_gput:Nnn + \g__markdown_plain_tex_built_in_themes_prop + { witiko / tilde } + { + \markdownSetup { + rendererPrototypes = { + tilde = {~}, + }, + } + } +\clist_map_inline:nn + { foo, bar } + { + \prop_gput:Nnn + \g__markdown_plain_tex_built_in_themes_prop + { witiko / example / #1 } + { + \markdownWarning + { + The~theme~witiko/example/#1~is~supposed~to~be~used~in~code~ + examples.~Using~it~in~actual~code~has~no~effect,~except~ + this~warning~message,~and~is~usually~a~mistake. + } + } + } \str_if_eq:VVT \c__markdown_top_layer_tl \c__markdown_option_layer_plain_tex_tl { - \ExplSyntaxOff + \use:c + { ExplSyntaxOff } \__markdown_if_option:nF { noDefaults } { - \__markdown_setup:n - {theme = witiko/markdown/defaults} + \__markdown_if_option:nTF + { experimental } + { + \__markdown_setup:n + { theme = witiko/markdown/defaults@experimental } + } + { + \__markdown_setup:n + { theme = witiko/markdown/defaults } + } } - \ExplSyntaxOn + \use:c + { ExplSyntaxOn } } \tl_new:N \g__markdown_formatted_lua_options_tl \cs_new:Nn \__markdown_format_lua_options: @@ -3171,7 +4076,7 @@ \l_tmpa_tl \tl_gput_right:Nx \g__markdown_formatted_lua_options_tl - { #1~=~ \l_tmpa_tl ,~ } + { #1~=~ \l_tmpa_tl ,~ } } { \str_if_eq_p:VV @@ -3188,9 +4093,18 @@ \clist_map_inline:Vn \l_tmpa_tl { - \tl_gput_right:Nx + \__markdown_lua_escape:xN + { ##1 } + \l_tmpb_tl + \tl_gput_right:Nn + \g__markdown_formatted_lua_options_tl + { " } + \tl_gput_right:NV + \g__markdown_formatted_lua_options_tl + \l_tmpb_tl + \tl_gput_right:Nn \g__markdown_formatted_lua_options_tl - { "##1" ,~ } + { " ,~ } } \tl_gput_right:Nx \g__markdown_formatted_lua_options_tl @@ -3201,28 +4115,104 @@ \__markdown_get_option_value:nN { #1 } \l_tmpa_tl - \tl_gput_right:Nx + \__markdown_lua_escape:xN + { \l_tmpa_tl } + \l_tmpb_tl + \tl_gput_right:Nn + \g__markdown_formatted_lua_options_tl + { #1~=~ " } + \tl_gput_right:NV + \g__markdown_formatted_lua_options_tl + \l_tmpb_tl + \tl_gput_right:Nn \g__markdown_formatted_lua_options_tl - { #1~=~ " \l_tmpa_tl " ,~ } + { " ,~ } } } \cs_generate_variant:Nn \clist_map_inline:nn { Vn } -\let\markdownPrepareLuaOptions=\__markdown_format_lua_options: -\def\markdownLuaOptions{{ \g__markdown_formatted_lua_options_tl }} +\let + \markdownPrepareLuaOptions + \__markdown_format_lua_options: +\def + \markdownLuaOptions + { + { + \g__markdown_formatted_lua_options_tl + } + } +\sys_if_engine_luatex:TF + { + \cs_new:Nn + \__markdown_lua_escape:nN + { + \tl_set:Nx + #2 + { + \lua_escape:n + { #1 } + } + } + } + { + \regex_const:Nn + \c__markdown_lua_escape_regex + { [\\"'] } + \cs_new:Nn + \__markdown_lua_escape:nN + { + \tl_set:Nn + #2 + { #1 } + \regex_replace_all:NnN + \c__markdown_lua_escape_regex + { \u { c_backslash_str } \0 } + #2 + } + } +\cs_generate_variant:Nn + \__markdown_lua_escape:nN + { xN } +\tl_new:N + \markdownInputFilename +\cs_new:Npn + \markdownPrepareInputFilename + #1 + { + \__markdown_lua_escape:xN + { #1 } + \markdownInputFilename + \tl_gset:Nx + \markdownInputFilename + { " \markdownInputFilename " } + } +\cs_new:Npn + \markdownPrepare + { + local~lfs = require("lfs") + local~options = \markdownLuaOptions + if~not~lfs.isdir(options.cacheDir) then~ + assert(lfs.mkdir(options.cacheDir)) + end~ + local~md = require("markdown") + local~convert = md.new(options) + } +\cs_new:Npn + \markdownConvert + { + local~filename = \markdownInputFilename + local~file = assert(io.open(filename, "r"), + [[Could~not~open~file~"]] .. filename .. [["~for~reading]]) + local~input = assert(file:read("*a")) + assert(file:close()) + print(convert(input)) + } \ExplSyntaxOff -\def\markdownPrepare{% - local lfs = require("lfs") - local cacheDir = "\markdownOptionCacheDir" - if not lfs.isdir(cacheDir) then - assert(lfs.mkdir(cacheDir)) - end - local md = require("markdown") - local convert = md.new(\markdownLuaOptions) -}% \def\markdownCleanup{% - lfs.rmdir(cacheDir) + if options.cacheDir then + lfs.rmdir(options.cacheDir) + end }% \csname newread\endcsname\markdownInputFileStream \csname newwrite\endcsname\markdownOutputFileStream @@ -3319,6 +4309,9 @@ } } } + \str_gset:NV + \g_luabridge_output_dirname_str + \markdownOptionOutputDir \luabridge_now:e { #1 } } @@ -3405,29 +4398,42 @@ \msg_new:nnn { markdown } { buffering-markinline } - { Buffering~inline~markdown~input~into~the~temporary~input~file~"#1". } + { Buffering~inline~markdown~input~into~ + the~temporary~input~file~"#1". } \msg_new:nnnn { markdown } { markinline-peek-failure } { Use~of~\iow_char:N \\ markinline~doesn't~match~its~definition } - { The~macro~should~be~followed~by~inline~markdown~text~in~curly~braces } + { The~macro~should~be~followed~by~inline~ + markdown~text~in~curly~braces } \cs_new:Npn \markdownInput #1 { - \file_get_full_name:nNTF - { #1 } - \l_tmpa_tl + \__markdown_if_option:nTF + { frozenCache } { - \exp_args:NV - \markdownInputRaw - \l_tmpa_tl + \markdownInputRaw + { #1 } } { - \msg_error:nnnV - { markdown } - { markdown-file-does-not-exist } + \tl_set:Nx + \l_tmpa_tl { #1 } + \file_get_full_name:VNTF + \l_tmpa_tl + \l_tmpb_tl + { + \exp_args:NV + \markdownInputRaw + \l_tmpb_tl + } + { + \msg_error:nnV + { markdown } + { markdown-file-does-not-exist } + \l_tmpa_tl + } } } \msg_new:nnn @@ -3453,20 +4459,18 @@ |fi |markdownInfo{Including markdown document number "|the|markdownOptionFrozenCacheCounter" from frozen cache}% - |csname markdownFrozenCache|the|markdownOptionFrozenCacheCounter|endcsname + |csname markdownFrozenCache% + |the|markdownOptionFrozenCacheCounter|endcsname |global|advance|markdownOptionFrozenCacheCounter by 1|relax }{% |markdownInfo{Including markdown document "&1"}% |openin|markdownInputFileStream&1 |closein|markdownInputFileStream |markdownPrepareLuaOptions + |markdownPrepareInputFilename{&1}% |markdownLuaExecute{% |markdownPrepare - local file = assert(io.open("&1", "r"), - [[Could not open file "&1" for reading]]) - local input = assert(file:read("*a")) - assert(file:close()) - print(convert(input)) + |markdownConvert |markdownCleanup}% |markdownIfOption{finalizeCache}{% |global|advance|markdownOptionFrozenCacheCounter by 1|relax}{}% diff --git a/Master/texmf-dist/tex/generic/markdown/markdownthemewitiko_markdown_defaults.tex b/Master/texmf-dist/tex/generic/markdown/markdownthemewitiko_markdown_defaults.tex index dc8a90917f6..af068b29eeb 100644 --- a/Master/texmf-dist/tex/generic/markdown/markdownthemewitiko_markdown_defaults.tex +++ b/Master/texmf-dist/tex/generic/markdown/markdownthemewitiko_markdown_defaults.tex @@ -6,7 +6,7 @@ %% %% markdown.dtx (with options: `themes-witiko-markdown-defaults-tex') %% -%% Copyright (C) 2016-2024 VÃt Starý Novotný +%% Copyright (C) 2016-2025 VÃt Starý Novotný, Andrej GenÄur %% %% This work may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, either version 1.3c @@ -77,18 +77,22 @@ \def\markdownRendererUlEndTightPrototype{}% \def\markdownRendererOlBeginPrototype{}% \def\markdownRendererOlBeginTightPrototype{}% -\def\markdownRendererFancyOlBeginPrototype#1#2{\markdownRendererOlBegin}% -\def\markdownRendererFancyOlBeginTightPrototype#1#2{\markdownRendererOlBeginTight}% +\def\markdownRendererFancyOlBeginPrototype#1#2{% + \markdownRendererOlBegin}% +\def\markdownRendererFancyOlBeginTightPrototype#1#2{% + \markdownRendererOlBeginTight}% \def\markdownRendererOlItemPrototype{}% \def\markdownRendererOlItemWithNumberPrototype#1{}% \def\markdownRendererOlItemEndPrototype{}% \def\markdownRendererFancyOlItemPrototype{\markdownRendererOlItem}% -\def\markdownRendererFancyOlItemWithNumberPrototype{\markdownRendererOlItemWithNumber}% +\def\markdownRendererFancyOlItemWithNumberPrototype{% + \markdownRendererOlItemWithNumber}% \def\markdownRendererFancyOlItemEndPrototype{}% \def\markdownRendererOlEndPrototype{}% \def\markdownRendererOlEndTightPrototype{}% \def\markdownRendererFancyOlEndPrototype{\markdownRendererOlEnd}% -\def\markdownRendererFancyOlEndTightPrototype{\markdownRendererOlEndTight}% +\def\markdownRendererFancyOlEndTightPrototype{% + \markdownRendererOlEndTight}% \def\markdownRendererDlBeginPrototype{}% \def\markdownRendererDlBeginTightPrototype{}% \def\markdownRendererDlItemPrototype#1{#1}% @@ -163,8 +167,30 @@ \def\markdownRendererSectionBeginPrototype{}% \def\markdownRendererSectionEndPrototype{}% \ExplSyntaxOn +\cs_gset:Npn + \markdownRendererWarningPrototype + #1#2#3#4 + { + \tl_set:Nn + \l_tmpa_tl + { #2 } + \tl_if_empty:nF + { #4 } + { + \tl_put_right:Nn + \l_tmpa_tl + { \iow_newline: #4 } + } + \exp_args:NV + \markdownWarning + \l_tmpa_tl + } +\ExplSyntaxOff +\def\markdownRendererErrorPrototype#1#2#3#4{% + \markdownError{#2}{#4}}% +\ExplSyntaxOn \cs_new:Nn - \__markdown_plain_tex_default_input_raw_inline_renderer_prototype:nn + \__markdown_plain_tex_default_input_raw_inline:nn { \str_case:nn { #2 } @@ -174,7 +200,7 @@ } } \cs_new:Nn - \__markdown_plain_tex_default_input_raw_block_renderer_prototype:nn + \__markdown_plain_tex_default_input_raw_block:nn { \str_case:nn { #2 } @@ -186,14 +212,14 @@ \cs_gset:Npn \markdownRendererInputRawInlinePrototype#1#2 { - \__markdown_plain_tex_default_input_raw_inline_renderer_prototype:nn + \__markdown_plain_tex_default_input_raw_inline:nn { #1 } { #2 } } \cs_gset:Npn \markdownRendererInputRawBlockPrototype#1#2 { - \__markdown_plain_tex_default_input_raw_block_renderer_prototype:nn + \__markdown_plain_tex_default_input_raw_block:nn { #1 } { #2 } } @@ -202,7 +228,7 @@ \tl_const:Nn \c__markdown_jekyll_data_mapping_tl { mapping } \tl_const:Nn \c__markdown_jekyll_data_scalar_tl { scalar } \seq_new:N \g__markdown_jekyll_data_wildcard_absolute_address_seq -\cs_new:Nn \markdown_jekyll_data_push_address_segment:n +\cs_new:Nn \__markdown_jekyll_data_push_address_segment:n { \seq_if_empty:NF \g__markdown_jekyll_data_datatypes_seq @@ -227,31 +253,31 @@ } \tl_new:N \g__markdown_jekyll_data_wildcard_absolute_address_tl \tl_new:N \g__markdown_jekyll_data_wildcard_relative_address_tl -\cs_new:Nn \markdown_jekyll_data_concatenate_address:NN +\cs_new:Nn \__markdown_jekyll_data_concatenate_address:NN { \seq_pop_left:NN #1 \l_tmpa_tl \tl_set:Nx #2 { / \seq_use:Nn #1 { / } } \seq_put_left:NV #1 \l_tmpa_tl } -\cs_new:Nn \markdown_jekyll_data_update_address_tls: +\cs_new:Nn \__markdown_jekyll_data_update_address_tls: { - \markdown_jekyll_data_concatenate_address:NN + \__markdown_jekyll_data_concatenate_address:NN \g__markdown_jekyll_data_wildcard_absolute_address_seq \g__markdown_jekyll_data_wildcard_absolute_address_tl \seq_get_right:NN \g__markdown_jekyll_data_wildcard_absolute_address_seq \g__markdown_jekyll_data_wildcard_relative_address_tl } -\cs_new:Nn \markdown_jekyll_data_push:nN +\cs_new:Nn \__markdown_jekyll_data_push:nN { - \markdown_jekyll_data_push_address_segment:n + \__markdown_jekyll_data_push_address_segment:n { #1 } \seq_put_right:NV \g__markdown_jekyll_data_datatypes_seq #2 - \markdown_jekyll_data_update_address_tls: + \__markdown_jekyll_data_update_address_tls: } -\cs_new:Nn \markdown_jekyll_data_pop: +\cs_new:Nn \__markdown_jekyll_data_pop: { \seq_pop_right:NN \g__markdown_jekyll_data_wildcard_absolute_address_seq @@ -259,62 +285,298 @@ \seq_pop_right:NN \g__markdown_jekyll_data_datatypes_seq \l_tmpa_tl - \markdown_jekyll_data_update_address_tls: + \__markdown_jekyll_data_update_address_tls: } -\cs_new:Nn \markdown_jekyll_data_set_keyval:nn +\cs_new:Nn \__markdown_jekyll_data_set_keyval_known:nn { \keys_set_known:nn { markdown/jekyllData } { { #1 } = { #2 } } } \cs_generate_variant:Nn - \markdown_jekyll_data_set_keyval:nn + \__markdown_jekyll_data_set_keyval_known:nn { Vn } -\cs_new:Nn \markdown_jekyll_data_set_keyvals:nn +\cs_new:Nn \__markdown_jekyll_data_set_keyvals_known:nn { - \markdown_jekyll_data_push:nN + \__markdown_jekyll_data_push:nN { #1 } \c__markdown_jekyll_data_scalar_tl - \markdown_jekyll_data_set_keyval:Vn + \__markdown_jekyll_data_set_keyval_known:Vn \g__markdown_jekyll_data_wildcard_absolute_address_tl { #2 } - \markdown_jekyll_data_set_keyval:Vn + \__markdown_jekyll_data_set_keyval_known:Vn \g__markdown_jekyll_data_wildcard_relative_address_tl { #2 } - \markdown_jekyll_data_pop: + \__markdown_jekyll_data_pop: } \def\markdownRendererJekyllDataSequenceBeginPrototype#1#2{ - \markdown_jekyll_data_push:nN + \__markdown_jekyll_data_push:nN { #1 } \c__markdown_jekyll_data_sequence_tl } \def\markdownRendererJekyllDataMappingBeginPrototype#1#2{ - \markdown_jekyll_data_push:nN + \__markdown_jekyll_data_push:nN { #1 } \c__markdown_jekyll_data_mapping_tl } \def\markdownRendererJekyllDataSequenceEndPrototype{ - \markdown_jekyll_data_pop: + \__markdown_jekyll_data_pop: } \def\markdownRendererJekyllDataMappingEndPrototype{ - \markdown_jekyll_data_pop: + \__markdown_jekyll_data_pop: } \def\markdownRendererJekyllDataBooleanPrototype#1#2{ - \markdown_jekyll_data_set_keyvals:nn + \__markdown_jekyll_data_set_keyvals_known:nn { #1 } { #2 } } \def\markdownRendererJekyllDataEmptyPrototype#1{} \def\markdownRendererJekyllDataNumberPrototype#1#2{ - \markdown_jekyll_data_set_keyvals:nn + \__markdown_jekyll_data_set_keyvals_known:nn { #1 } { #2 } } -\def\markdownRendererJekyllDataStringPrototype#1#2{ - \markdown_jekyll_data_set_keyvals:nn +\def\markdownRendererJekyllDataProgrammaticStringPrototype#1#2{} +\def\markdownRendererJekyllDataTypographicStringPrototype#1#2{ + \__markdown_jekyll_data_set_keyvals_known:nn { #1 } { #2 } } +\__markdown_with_various_cases:nn + { jekyllDataKeyValue } + { + \keys_define:nn + { markdown/options } + { + #1 .code:n = { + \__markdown_route_jekyll_data_to_key_values:n + { ##1 } + }, + #1 .default:n = { }, + } + } +\seq_new:N + \l__markdown_jekyll_data_current_position_seq +\tl_new:N + \l__markdown_jekyll_data_current_position_tl +\cs_new:Nn + \__markdown_route_jekyll_data_to_key_values:n + { + \markdownSetup + { + renderers = { + jekyllData(Sequence|Mapping)Begin = { + \bool_lazy_and:nnTF + { + \seq_if_empty_p:N + \l__markdown_jekyll_data_current_position_seq + } + { + \str_if_eq_p:nn + { ##1 } + { null } + } + { + \tl_if_empty:nF + { #1 } + { + \seq_put_right:Nn + \l__markdown_jekyll_data_current_position_seq + { #1 } + } + } + { + \seq_put_right:Nn + \l__markdown_jekyll_data_current_position_seq + { ##1 } + } + }, + jekyllData(Sequence|Mapping)End = { + \seq_pop_right:NN + \l__markdown_jekyll_data_current_position_seq + \l_tmpa_tl + }, + jekyllDataBoolean = { + \tl_set:Nx + \l__markdown_jekyll_data_current_position_tl + { + \seq_use:Nn + \l__markdown_jekyll_data_current_position_seq + { / } + } + \keys_if_exist:VnTF + \l__markdown_jekyll_data_current_position_tl + { ##1 / boolean } + { + \__markdown_keys_set:xn + { + \tl_use:N + \l__markdown_jekyll_data_current_position_tl + / ##1 / boolean + } + { ##2 } + } + { + \__markdown_keys_set:xn + { + \tl_use:N + \l__markdown_jekyll_data_current_position_tl + / ##1 + } + { ##2 } + } + }, + jekyllDataNumber = { + \tl_set:Nx + \l__markdown_jekyll_data_current_position_tl + { + \seq_use:Nn + \l__markdown_jekyll_data_current_position_seq + { / } + } + \keys_if_exist:VnTF + \l__markdown_jekyll_data_current_position_tl + { ##1 / number } + { + \__markdown_keys_set:xn + { + \tl_use:N + \l__markdown_jekyll_data_current_position_tl + / ##1 / number + } + { ##2 } + } + { + \__markdown_keys_set:xn + { + \tl_use:N + \l__markdown_jekyll_data_current_position_tl + / ##1 + } + { ##2 } + } + }, + jekyllDataEmpty = { + \tl_set:Nx + \l__markdown_jekyll_data_current_position_tl + { + \seq_use:Nn + \l__markdown_jekyll_data_current_position_seq + { / } + } + \keys_if_exist:VnTF + \l__markdown_jekyll_data_current_position_tl + { ##1 / empty } + { + \keys_set:xn + { + \tl_use:N + \l__markdown_jekyll_data_current_position_tl + / ##1 + } + { empty } + } + { + \keys_set:Vn + \l__markdown_jekyll_data_current_position_tl + { ##1 } + } + }, + jekyllDataTypographicString = { + \tl_set:Nx + \l__markdown_jekyll_data_current_position_tl + { + \seq_use:Nn + \l__markdown_jekyll_data_current_position_seq + { / } + } + \keys_if_exist:VnTF + \l__markdown_jekyll_data_current_position_tl + { ##1 / typographicString } + { + \__markdown_keys_set:xn + { + \tl_use:N + \l__markdown_jekyll_data_current_position_tl + / ##1 / typographicString + } + { ##2 } + } + { + \keys_if_exist:VnTF + \l__markdown_jekyll_data_current_position_tl + { ##1 / programmaticString } + { + \__markdown_keys_set_known:xn + { + \tl_use:N + \l__markdown_jekyll_data_current_position_tl + / ##1 + } + { ##2 } + } + { + \__markdown_keys_set:xn + { + \tl_use:N + \l__markdown_jekyll_data_current_position_tl + / ##1 + } + { ##2 } + } + } + }, + jekyllDataProgrammaticString = { + \tl_set:Nx + \l__markdown_jekyll_data_current_position_tl + { + \seq_use:Nn + \l__markdown_jekyll_data_current_position_seq + { / } + } + \keys_if_exist:VnT + \l__markdown_jekyll_data_current_position_tl + { ##1 / programmaticString } + { + \__markdown_keys_set:xn + { + \tl_use:N + \l__markdown_jekyll_data_current_position_tl + / ##1 / programmaticString + } + { ##2 } + } + }, + }, + } + } +\cs_new:Nn + \__markdown_keys_set:nn + { + \keys_set:nn + { } + { { #1 } = { #2 } } + } +\cs_new:Nn + \__markdown_keys_set_known:nn + { + \keys_set_known:nn + { } + { { #1 } = { #2 } } + } +\cs_generate_variant:Nn + \__markdown_keys_set:nn + { xn } +\cs_generate_variant:Nn + \__markdown_keys_set_known:nn + { xn } +\cs_generate_variant:Nn + \keys_set:nn + { xn, Vn } +\prg_generate_conditional_variant:Nnn + \keys_if_exist:nn + { Vn } + { T, TF } \ExplSyntaxOff \endinput %% diff --git a/Master/texmf-dist/tex/generic/markdown/markdownthemewitiko_tilde.tex b/Master/texmf-dist/tex/generic/markdown/markdownthemewitiko_tilde.tex deleted file mode 100644 index 90d34446f00..00000000000 --- a/Master/texmf-dist/tex/generic/markdown/markdownthemewitiko_tilde.tex +++ /dev/null @@ -1,52 +0,0 @@ -%% -%% This is file `markdownthemewitiko_tilde.tex', -%% generated with the docstrip utility. -%% -%% The original source files were: -%% -%% markdown.dtx (with options: `themes-witiko-tilde') -%% -%% Copyright (C) 2016-2024 VÃt Starý Novotný -%% -%% This work 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 -%% -%% This work has the LPPL maintenance status `maintained'. -%% The Current Maintainer of this work is VÃt Starý Novotný. -%% -%% Send bug reports, requests for additions and questions -%% either to the GitHub issue tracker at -%% -%% https://github.com/Witiko/markdown/issues -%% -%% or to the e-mail address <witiko@mail.muni.cz>. -%% -%% MODIFICATION ADVICE: -%% -%% If you want to customize this file, it is best to make a copy of -%% the source file(s) from which it was produced. Use a different -%% name for your copy(ies) and modify the copy(ies); this will ensure -%% that your modifications do not get overwritten when you install a -%% new release of the standard system. You should also ensure that -%% your modified source file does not generate any modified file with -%% the same name as a standard file. -%% -%% You will also need to produce your own, suitably named, .ins file to -%% control the generation of files from your source file; this file -%% should contain your own preambles for the files it generates, not -%% those in the standard .ins files. -%% -%% The names of the source files used are shown above. -%% -\markdownSetup { - rendererPrototypes = { - tilde = {~}, - }, -} -\endinput -%% -%% End of file `markdownthemewitiko_tilde.tex'. diff --git a/Master/texmf-dist/tex/generic/oberdiek/telprint.sty b/Master/texmf-dist/tex/generic/oberdiek/telprint.sty deleted file mode 100644 index aa51f0bd5b3..00000000000 --- a/Master/texmf-dist/tex/generic/oberdiek/telprint.sty +++ /dev/null @@ -1,255 +0,0 @@ -%% -%% This is file `telprint.sty', -%% generated with the docstrip utility. -%% -%% The original source files were: -%% -%% telprint.dtx (with options: `package') -%% -%% This is a generated file. -%% -%% Project: telprint -%% Version: 2016/05/16 v1.11 -%% -%% Copyright (C) -%% 1996, 1997, 2004-2008 Heiko Oberdiek -%% 2016-2019 Oberdiek Package Support Group -%% -%% This work 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. This version of this license is in -%% https://www.latex-project.org/lppl/lppl-1-3c.txt -%% and the latest version of this license is in -%% https://www.latex-project.org/lppl.txt -%% and version 1.3 or later is part of all distributions of -%% LaTeX version 2005/12/01 or later. -%% -%% This work has the LPPL maintenance status "maintained". -%% -%% The Current Maintainers of this work are -%% Heiko Oberdiek and the Oberdiek Package Support Group -%% https://github.com/ho-tex/oberdiek/issues -%% -%% -%% The Base Interpreter refers to any `TeX-Format', -%% because some files are installed in TDS:tex/generic//. -%% -%% This work consists of the main source file telprint.dtx -%% and the derived files -%% telprint.sty, telprint.pdf, telprint.ins, telprint.drv, -%% telprint-test1.tex. -%% -\begingroup\catcode61\catcode48\catcode32=10\relax% - \catcode13=5 % ^^M - \endlinechar=13 % - \catcode35=6 % # - \catcode39=12 % ' - \catcode44=12 % , - \catcode45=12 % - - \catcode46=12 % . - \catcode58=12 % : - \catcode64=11 % @ - \catcode123=1 % { - \catcode125=2 % } - \expandafter\let\expandafter\x\csname ver@telprint.sty\endcsname - \ifx\x\relax % plain-TeX, first loading - \else - \def\empty{}% - \ifx\x\empty % LaTeX, first loading, - % variable is initialized, but \ProvidesPackage not yet seen - \else - \expandafter\ifx\csname PackageInfo\endcsname\relax - \def\x#1#2{% - \immediate\write-1{Package #1 Info: #2.}% - }% - \else - \def\x#1#2{\PackageInfo{#1}{#2, stopped}}% - \fi - \x{telprint}{The package is already loaded}% - \aftergroup\endinput - \fi - \fi -\endgroup% -\begingroup\catcode61\catcode48\catcode32=10\relax% - \catcode13=5 % ^^M - \endlinechar=13 % - \catcode35=6 % # - \catcode39=12 % ' - \catcode40=12 % ( - \catcode41=12 % ) - \catcode44=12 % , - \catcode45=12 % - - \catcode46=12 % . - \catcode47=12 % / - \catcode58=12 % : - \catcode64=11 % @ - \catcode91=12 % [ - \catcode93=12 % ] - \catcode123=1 % { - \catcode125=2 % } - \expandafter\ifx\csname ProvidesPackage\endcsname\relax - \def\x#1#2#3[#4]{\endgroup - \immediate\write-1{Package: #3 #4}% - \xdef#1{#4}% - }% - \else - \def\x#1#2[#3]{\endgroup - #2[{#3}]% - \ifx#1\@undefined - \xdef#1{#3}% - \fi - \ifx#1\relax - \xdef#1{#3}% - \fi - }% - \fi -\expandafter\x\csname ver@telprint.sty\endcsname -\ProvidesPackage{telprint}% - [2016/05/16 v1.11 Format German phone numbers (HO)]% -\begingroup\catcode61\catcode48\catcode32=10\relax% - \catcode13=5 % ^^M - \endlinechar=13 % - \catcode123=1 % { - \catcode125=2 % } - \catcode64=11 % @ - \def\x{\endgroup - \expandafter\edef\csname TELAtEnd\endcsname{% - \endlinechar=\the\endlinechar\relax - \catcode13=\the\catcode13\relax - \catcode32=\the\catcode32\relax - \catcode35=\the\catcode35\relax - \catcode61=\the\catcode61\relax - \catcode64=\the\catcode64\relax - \catcode123=\the\catcode123\relax - \catcode125=\the\catcode125\relax - }% - }% -\x\catcode61\catcode48\catcode32=10\relax% -\catcode13=5 % ^^M -\endlinechar=13 % -\catcode35=6 % # -\catcode64=11 % @ -\catcode123=1 % { -\catcode125=2 % } -\def\TMP@EnsureCode#1#2{% - \edef\TELAtEnd{% - \TELAtEnd - \catcode#1=\the\catcode#1\relax - }% - \catcode#1=#2\relax -} -\TMP@EnsureCode{33}{12}% ! -\TMP@EnsureCode{36}{3}% $ -\TMP@EnsureCode{40}{12}% ( -\TMP@EnsureCode{41}{12}% ) -\TMP@EnsureCode{42}{12}% * -\TMP@EnsureCode{43}{12}% + -\TMP@EnsureCode{44}{12}% , -\TMP@EnsureCode{45}{12}% - -\TMP@EnsureCode{46}{12}% . -\TMP@EnsureCode{47}{12}% / -\TMP@EnsureCode{91}{12}% [ -\TMP@EnsureCode{93}{12}% ] -\TMP@EnsureCode{126}{13}% ~ (active) -\edef\TELAtEnd{\TELAtEnd\noexpand\endinput} -\ifx\DeclareRobustCommand\UnDeFiNeD - \def\DeclareRobustCommand*#1[1]{\def#1##1}% - \def\TELreset{\let\DeclareRobustCommand=\UnDeFiNeD}% - \input infwarerr.sty\relax - \@PackageInfo{telprint}{% - Macros are not robust!% - }% -\else - \let\TELreset=\relax -\fi -\DeclareRobustCommand*{\telspace}[1]{\def\TELspace{#1}} -\telspace{{}$\,${}} -\DeclareRobustCommand*{\telhyphen}[1]{\def\TELhyphen{#1}} -\telhyphen{\leavevmode\hbox{-}}% \hbox zur Verhinderung der Trennung -\DeclareRobustCommand*{\telslash}[1]{\def\TELslash{#1}} -\telslash{/}% -\DeclareRobustCommand*{\telleftparen}[1]{\def\TELleftparen{#1}} -\telleftparen{(}% -\DeclareRobustCommand*{\telrightparen}[1]{\def\TELrightparen{#1}} -\telrightparen{)}% -\DeclareRobustCommand*{\telplus}[1]{\def\TELplus{#1}} -\telplus{+}% -\DeclareRobustCommand*{\teltilde}[1]{\def\TELtilde{#1}} -\teltilde{~}% -\newtoks\TELtoks -\def\TELnumber#1#2\TELnumberEND{% - \begingroup - \def\0{#2}% - \expandafter\endgroup - \ifx\0\empty - \TELtoks=\expandafter{\the\TELtoks#1}% - \ifnum\TELswitch=0 % - \def\TELx{\TELspace}\def\TELy{}% - \else - \def\TELx{}\def\TELy{\TELspace}% - \fi - \the\TELtoks - \else - \ifnum\TELswitch=0 % - \TELtoks=\expandafter{\the\TELtoks#1\TELx}% - \def\TELswitch{1}% - \else - \TELtoks=\expandafter{\the\TELtoks#1\TELy}% - \def\TELswitch{0}% - \fi - \TELnumber#2\TELnumberEND - \fi -} -\DeclareRobustCommand*{\telnumber}[1]{% - \TELtoks={}% - \def\TELswitch{0}% - \TELnumber#1{}\TELnumberEND -} -\def\TELsplit{\futurelet\TELfuture\TELdosplit} -\def\TELdosplit#1#2\TELsplitEND -{% - \def\TELsp{ }% - \expandafter\ifx\TELsp\TELfuture - \let\TELfuture=\relax - \expandafter\telnumber\expandafter{\the\TELtoks}~% - \telprint{#1#2}% Das Leerzeichen kann nicht #1 sein! - \else - \def\TELfirst{#1}% - \ifx\TELfirst\empty - \expandafter\telnumber\expandafter{\the\TELtoks}% - \TELtoks={}% - \else\if-\TELfirst - \expandafter\telnumber\expandafter{\the\TELtoks}\TELhyphen - \telprint{#2}% - \else\if/\TELfirst - \expandafter\telnumber\expandafter{\the\TELtoks}\TELslash - \telprint{#2}% - \else\if(\TELfirst - \expandafter\telnumber\expandafter{\the\TELtoks}\TELleftparen - \telprint{#2}% - \else\if)\TELfirst - \expandafter\telnumber\expandafter{\the\TELtoks}\TELrightparen - \telprint{#2}% - \else\if+\TELfirst - \expandafter\telnumber\expandafter{\the\TELtoks}\TELplus - \telprint{#2}% - \else\def\TELtemp{~}\ifx\TELtemp\TELfirst - \expandafter\telnumber\expandafter{\the\TELtoks}\TELtilde - \telprint{#2}% - \else - \TELtoks=\expandafter{\the\TELtoks#1}% - \TELsplit#2{}\TELsplitEND - \fi\fi\fi\fi\fi\fi\fi - \fi -} -\DeclareRobustCommand*{\telprint}[1]{% - \TELtoks={}% - \TELsplit#1{}\TELsplitEND -} -\TELreset\let\TELreset=\UnDeFiNeD -\TELAtEnd% -%% \section{Installation} -\endinput -%% -%% End of file `telprint.sty'. diff --git a/Master/texmf-dist/tex/generic/pst-circ/pst-circ.tex b/Master/texmf-dist/tex/generic/pst-circ/pst-circ.tex index 4a3e81fde05..298ac906bc7 100644 --- a/Master/texmf-dist/tex/generic/pst-circ/pst-circ.tex +++ b/Master/texmf-dist/tex/generic/pst-circ/pst-circ.tex @@ -1,4 +1,4 @@ -%% $Id: pst-circ.tex 210 2021-09-10 07:52:09Z herbert $ +%% $Id: pst-circ.tex 1015 2024-10-10 12:02:54Z herbert $ %% This is file `pst-circ.tex' %% %% IMPORTANT NOTICE: @@ -26,8 +26,8 @@ \ifx\PSTXKeyLoaded\endinput \else\input pst-xkey \fi \ifx\PSTMultidoLoaded\endinput\else\input multido.tex\fi % -\def\fileversion{2.19} -\def\filedate{2021/09/09} +\def\fileversion{2.20} +\def\filedate{2024/10/10} \message{`pst-circ' v\fileversion (hv)} % \edef\PstAtCode{\the\catcode`\@} @@ -1022,6 +1022,7 @@ /YC Y1 Y2 add 2 div def XC YC end ){C@} \rput(C@){\pst@draw@OA} + \psset{fillstyle=none}% reset, otherwise the connectionlines are also used for a fillstyle \ncangle[arrows=-,arm=.5,angleA=0,angleB=180]{#1}{\ifPst@OAinvert Minus@\else Plus@\fi} \ncput[npos=2]{\pnode{\ifPst@OAinvert Minus@@\else Plus@@\fi}} \ifPst@OAiplus @@ -1905,9 +1906,9 @@ \fi \pcline[fillstyle=none,linestyle=none](#2)(#3) %%%%% - \pst@intensity{#2}{#3} - \pst@tension{#2}{#3} - \fi% + \pst@intensity{#2}{#3}% + \pst@tension{#2}{#3}% + \fi }% % \def\pst@intensity#1#2{% @@ -2112,15 +2113,15 @@ \pnode(0.5,0){dipole@2} \psframe[linewidth=1.5\pslinewidth,fillstyle=solid,fillcolor=black](-0.5,-0.25)(0.5,0.25) \else - \pscurve[arrows=-,linewidth=1.5\pslinewidth](-1,0)(-0.75,0.5)(-0.5,0) - \pscurve[arrows=-,linewidth=1.5\pslinewidth](-0.5,0)(-0.25,0.5)(0,0) - \pscurve[arrows=-,linewidth=1.5\pslinewidth](0,0)(0.25,0.5)(0.5,0) - \pscurve[arrows=-,linewidth=1.5\pslinewidth](0.5,0)(0.75,0.5)(1,0) - \pnode(-1,0){dipole@1} - \pnode(1,0){dipole@2} - \fi\fi\fi\fi% - \ifPst@variable\psline{->}(-0.75,-0.5)(0.75,0.5)\fi% - } + \pscurve[arrows=-,linewidth=1.5\pslinewidth](-1,0)(-0.75,0.5)(-0.5,0)% + \pscurve[arrows=-,linewidth=1.5\pslinewidth](-0.5,0)(-0.25,0.5)(0,0)% + \pscurve[arrows=-,linewidth=1.5\pslinewidth](0,0)(0.25,0.5)(0.5,0)% + \pscurve[arrows=-,linewidth=1.5\pslinewidth](0.5,0)(0.75,0.5)(1,0)% + \pnode(-1,0){dipole@1}% + \pnode(1,0){dipole@2}% + \fi\fi\fi\fi + \ifPst@variable\psline{->}(-0.75,-0.5)(0.75,0.5)\fi +} % \def\pst@draw@Ucc{% \pnode(-0.5,0){dipole@1} diff --git a/Master/texmf-dist/tex/generic/pst-coil/pst-coil.tex b/Master/texmf-dist/tex/generic/pst-coil/pst-coil.tex index cd15fa05373..0aff59732c5 100644 --- a/Master/texmf-dist/tex/generic/pst-coil/pst-coil.tex +++ b/Master/texmf-dist/tex/generic/pst-coil/pst-coil.tex @@ -1,4 +1,4 @@ -%% $Id: pst-coil.tex 578 2011-09-18 17:18:46Z herbert $ +%% $Id: pst-coil.tex 930 2024-08-13 18:19:44Z herbert $ %% BEGIN pst-coil.tex %% %% Coils and zigzags with PSTricks @@ -7,7 +7,7 @@ %% %% %% COPYRIGHT 1993, 1994, 1999 by Timothy Van Zandt, tvz@nwu.edu. -%% 2006-2015 Herbert Voss, hvoss@tug.org +%% 2006-2024 Herbert Voss, hvoss@tug.org %% %% This program can be redistributed and/or modified under the terms %% of the LaTeX Project Public License Distributed from CTAN @@ -21,8 +21,8 @@ \ifx\PSTnodeLoaded\endinput \else\input pst-node.tex\fi \ifx\PSTXKeyLoaded\endinput \else\input pst-xkey \fi % -\def\fileversion{1.07} -\def\filedate{2015/05/13} +\def\fileversion{1.08} +\def\filedate{2024/08/13} % \edef\TheAtCode{\the\catcode`\@} \catcode`\@=11 @@ -48,7 +48,15 @@ \let\psk@coilarmB\psk@coilarmA} \define@key[psset]{pst-coil}{coilaspect}[45]{\pst@getangle{#1}\psk@coilaspect} \define@key[psset]{pst-coil}{coilinc}[10]{\pst@getangle{#1}\psk@coilinc} -% +%%%%%% alternative macro +\define@key[psset]{pst-coil}{N}[10]{\def\psk@NoOfSpirals{#1 }} +\define@key[psset]{pst-coil}{R}[1]{\def\psk@InitialWidth{#1 }}% in cm +\define@key[psset]{pst-coil}{l0}[10]{\def\psk@InitialLength{#1 }} +\define@key[psset]{pst-coil}{alpha}[15]{\def\psk@coil@Alpha{#1 }} +\define@key[psset]{pst-coil}{arm}[0]{\def\psk@coil@arm{#1 }} +\define@key[psset]{pst-coil}{nS}[25]{\def\psk@coil@NoOfPointsPerCoil{#1 }} +\psset[pst-coil]{N=10,R=0.5,alpha=15,arm=0,l0=5,nS=25} + \psset[pst-coil]{coilaspect=45,coilarm=.5cm,coilheight=1,coilwidth=1cm,coilinc=10} % \def\pscoil{\def\pst@par{}\pst@object{pscoil}} @@ -198,7 +206,7 @@ { \psk@function } \tx@Sin }% - \showpointsfalse% + \showpointsfalse \end@OpenObj} % \def\ncsin{\pst@object{ncsin}} @@ -220,6 +228,49 @@ \def\pcsin{\def\pst@par{}\pst@object{pcsin}} \def\pcsin@i{\pc@object\ncsin@ii} % +\def\psAltCoil{\def\pst@par{}\pst@object{psAltCoil}} +\def\psAltCoil@i{\pst@getarrows\psAltCoil@ii} +\def\psAltCoil@ii(#1){\@ifnextchar({\psAltCoil@iii{1}(#1)}{\psAltCoil@iii{\z@}(0,0)(#1)}} +\def\psAltCoil@iii#1(#2)(#3){% + \begin@OpenObj + \pst@getcoor{#2}\pst@tempa + \pst@getcoor{#3}\pst@tempb + \addto@pscode{% + \pst@tempa \pst@tempb + /y1 ED /x1 ED /y0 ED /x0 ED + x0 y0 translate + y1 y0 sub x1 x0 sub 2 copy Pyth + /Longueur ED + Atan rotate + /NoOfSpirals \psk@NoOfSpirals def % nombre de spires + /Alpha \psk@coil@Alpha def + /R_0 \psk@InitialWidth \pst@number\psunit mul def + /arm \psk@coil@arm \pst@number\psunit mul def + /l_0 \psk@InitialLength \pst@number\psunit mul def + /nS \psk@coil@NoOfPointsPerCoil def + /Pas_0 l_0 NoOfSpirals div def + /Pas Longueur 2 arm mul sub NoOfSpirals div def + % longueur de l'hélice sur un tour + % = sqrt(4*pi^2*R^2+p^2) + /Longueur_Helice_pas 39.47842 R_0 dup mul mul Pas_0 dup mul add sqrt def + % R=1/(2*pi)*sqrt(L^2-p^2) + /Radius 0.1591549 Longueur_Helice_pas dup mul Pas dup mul sub sqrt mul def + /xH {Radius 360 t mul cos mul Radius sub} def + /yH {Radius 360 t mul sin mul} def + /zH {Pas t mul arm add} def + /Inc 1 NoOfSpirals nS mul div def % nS(50) points par spires + 1 setlinejoin + 1 0 0 0 ArrowA arm 0 lineto + 0 Inc NoOfSpirals { + /t ED + zH xH Alpha tan mul sub + yH + lineto + } for + Longueur 0 + ArrowB lineto + }% + \end@OpenObj} % \catcode`\@=\TheAtCode\relax \endinput diff --git a/Master/texmf-dist/tex/generic/pst-diffraction/pst-diffraction.tex b/Master/texmf-dist/tex/generic/pst-diffraction/pst-diffraction.tex index 1c653b37709..2ff137b0a8c 100644 --- a/Master/texmf-dist/tex/generic/pst-diffraction/pst-diffraction.tex +++ b/Master/texmf-dist/tex/generic/pst-diffraction/pst-diffraction.tex @@ -5,8 +5,8 @@ %% %% Package `pst-diffraction.tex' %% -%% Manuel Luque <ml@pstricks.de> -%% Herbert Voss <hv@pstricks.de> +%% Manuel Luque <ml@texnik.de> +%% Herbert Voss <hvoss@tug.org> %% %% with contributions of Julien Cubizolles %% @@ -21,12 +21,12 @@ \csname PSTDiffractionLoaded\endcsname \let\PSTDiffractionLoaded\endinput % Require PSTricks -\ifx\PSTricksLoaded\endinput\else\input pstricks.tex\fi +\ifx\PSTricksLoaded\endinput\else \input pstricks.tex\fi \ifx\PSTThreeDplotLoaded\endinput\else\input pst-3dplot.tex\fi -\ifx\PSTXKeyLoaded\endinput\else \input pst-xkey \fi +\ifx\PSTXKeyLoaded\endinput\else \input pst-xkey.tex \fi % -\def\fileversion{2.03}% -\def\filedate{2008/09/03}% +\def\fileversion{2.06a} +\def\filedate{2024/07/15} \message{`PST-diffraction v\fileversion, \filedate\space (ML,hv)}% \edef\PstAtCode{\the\catcode`\@} \catcode`\@=11\relax \pst@addfams{pst-diff} @@ -40,7 +40,7 @@ \define@key[psset]{pst-diff}{s}{\def\psk@Diffraction@Slit@s{#1 }} % distance entre les fentes \define@key[psset]{pst-diff}{lambda}{\pst@checknum{#1}\psk@Diffraction@Slit@Lambda }% en nm \define@key[psset]{pst-diff}{f}{\pst@checknum{#1}\psk@Diffraction@Slit@F }% focus en m -\define@key[psset]{pst-diff}{gamma}{\pst@checknum{#1}\psk@Diffraction@gamma@G } +%\define@key[psset]{pst-diff}{gamma}{\pst@checknum{#1}\psk@Diffraction@gamma@G } \define@key[psset]{pst-diff}{pixel}{\pst@checknum{#1}\psk@Diffraction@Slit@pixel } \define@key[psset]{pst-diff}{colorMode}{\pst@getint{#1}\psk@Diffraction@colorMode } % 0 black and white inverse @@ -65,7 +65,8 @@ \psset[pst-diff]{a=0.2e-3,f=5,k=1,r=1e-3, d=6e-3,s=12e-3,h=0.5e-3, lambda=650,pixel=0.5, - contrast=38,gamma=0.8,twoHole=false,twoSlit=false,colorMode=3, scale=1, + contrast=38,%gamma=0.8, + twoHole=false,twoSlit=false,colorMode=3, scale=1, IIID=false, showFunc=false} % % load the pstricks-add.pro only, if not already done @@ -82,7 +83,7 @@ /focus \psk@Diffraction@Slit@F def /widthSlit \psk@Diffraction@Slit@A def /heightSlit \psk@Diffraction@Slit@k widthSlit mul def - /Gamma \psk@Diffraction@gamma@G def + %/Gamma \psk@Diffraction@gamma@G def /pixel \psk@Diffraction@Slit@pixel def /SlitSeparation \psk@Diffraction@Slit@s def \psk@Diffraction@Slit@Lambda tx@addDict begin wavelengthToRGB Red Green Blue end @@ -94,7 +95,7 @@ /bornexpt 1 widthSlit div focus mul ondeLongueur mul 2845 mul def /borneypt 1 heightSlit div focus mul ondeLongueur mul 2845 mul def \ifPst@Diffraction@IIID - \psk@ThreeDplot@zMax dup \tx@ScreenCoor pop /zScale ED + \psk@ThreeDplot@zMax\space dup \tx@ScreenCoor pop /zScale ED tx@3DPlotDict begin \IIIDplot@variables end \fi % Les calculs commencent... @@ -162,7 +163,7 @@ \addto@pscode{% % les dimensions sont en mètres /focus \psk@Diffraction@Slit@F def - /Gamma \psk@Diffraction@gamma@G def + %/Gamma \psk@Diffraction@gamma@G def /pixel \psk@Diffraction@Slit@pixel def /contrast 1e\psk@Diffraction@Slit@contrast def /r \psk@Diffraction@Circular@r def @@ -170,7 +171,7 @@ \psk@Diffraction@Slit@Lambda tx@addDict begin wavelengthToRGB Red Green Blue end /Blue ED /Green ED /Red ED \ifPst@Diffraction@IIID - \psk@ThreeDplot@zMax dup \tx@ScreenCoor pop /zScale ED + \psk@ThreeDplot@zMax\space dup \tx@ScreenCoor pop /zScale ED tx@3DPlotDict begin \IIIDplot@variables end \fi % 0 0 translate @@ -253,7 +254,8 @@ /y { yPts 2845 div } bind def /R { x dup mul y dup mul add sqrt } bind def % R en m /m Coeff R mul def - 1 1e38 m J1Card Facteur x mul cos dup mul mul neg exp sub + % 1 1e38 m J1Card Facteur x mul cos dup mul mul neg exp sub + 1 contrast m J1Card Facteur x mul cos dup mul mul neg exp sub % fix by Keno Wehr dup /intensity ED dup dup Red mul 3 -1 roll @@ -283,7 +285,7 @@ \ifPst@Diffraction@IIID \else newpath R_limite neg %1.5 mul - cm dup moveto + cm dup moveto R_limite 2 mul cm 0 rlineto 0 R_limite 2 mul cm rlineto R_limite neg 2 mul cm 0 rlineto @@ -294,7 +296,8 @@ R_limite -0.001 0 { /Radius exch def /m Coeff Radius 0.01 mul mul def - 1 1e38 m J1Card neg exp sub +% 1 1e38 m J1Card neg exp sub + 1 contrast m J1Card neg exp sub % fix by keno wehr dup /intensity ED dup dup Red mul 3 -1 roll % R @@ -396,7 +399,7 @@ % les dimensions sont en mètres /f \psk@Diffraction@Slit@F def /h \psk@Diffraction@Triangle@h def - /Gamma \psk@Diffraction@gamma@G def + %/Gamma \psk@Diffraction@gamma@G def /L { \psk@Diffraction@Slit@Lambda 1e-9 mul} bind def % longueur d'onde en m /pixel \psk@Diffraction@Slit@pixel def /k { TwoPi f L mul div } bind def @@ -408,7 +411,7 @@ /bornexpt 1 h div f mul L mul 2845 mul def /borneypt 1 h div f mul L mul 2845 mul def \ifPst@Diffraction@IIID - \psk@ThreeDplot@zMax dup \tx@ScreenCoor pop /zScale ED + \psk@ThreeDplot@zMax\space dup \tx@ScreenCoor pop /zScale ED tx@3DPlotDict begin \IIIDplot@variables end \fi /P { diff --git a/Master/texmf-dist/tex/generic/pst-node/pst-node.tex b/Master/texmf-dist/tex/generic/pst-node/pst-node.tex index ed3ef60a4b5..a653d76eeac 100644 --- a/Master/texmf-dist/tex/generic/pst-node/pst-node.tex +++ b/Master/texmf-dist/tex/generic/pst-node/pst-node.tex @@ -1,4 +1,4 @@ -% $Id: pst-node.tex 438 2022-01-31 17:45:26Z herbert $ +% $Id: pst-node.tex 918 2024-07-10 17:41:55Z herbert $ %% %% BEGIN pst-node.tex %% @@ -18,8 +18,8 @@ \ifx\PSTricksLoaded\endinput\else\input pstricks.tex \fi\relax \ifx\PSTXKeyLoaded\endinput\else \input pst-xkey \fi % -\def\fileversion{1.43} -\def\filedate{2022/01/31} +\def\fileversion{1.45} +\def\filedate{2024/07/10} \message{ v\fileversion, \filedate} % \edef\TheAtCode{\the\catcode`\@} @@ -1386,8 +1386,8 @@ tx@NodeDict \pst@tempg known /dy YB YA sub def /angle dy dx Atan def /linelength \pst@number\pst@dimb \pst@number\psunit div def - XA linelength angle cos mul add YA linelength angle sin mul add ){#4}% -} + XA linelength angle cos mul add YA linelength angle sin mul add ){#4}} +% \def\psRelNode{\pst@object{psRelNode}} \def\psRelNode@i(#1)(#2)#3#4{{% A - B - factor - node name \use@par @@ -1402,10 +1402,10 @@ tx@NodeDict \pst@tempg known /AlphaStrich \psk@angleA\space def /unit \pst@number\psyunit \pst@number\psxunit div def % yunit/xunit % - /dx XB XA sub def - /dy YB YA sub \ifPst@trueAngle\space unit mul \fi\space def - /laenge dy dup mul dx dup mul add sqrt #3 mul def - /Alpha dy dx atan def + /dx__ XB XA sub def + /dy__ YB YA sub \ifPst@trueAngle\space unit mul \fi\space def + /laenge dy__ dup mul dx__ dup mul add sqrt #3 mul def + /Alpha dy__ dx__ atan def /beta Alpha AlphaStrich add def laenge beta cos mul XA add laenge beta sin mul \ifPst@trueAngle\space unit div \fi\space YA add ){#4}% @@ -1537,8 +1537,7 @@ tx@NodeDict \pst@tempg known \def\trim@ #1{\trim@@ @#1 @ #1 @ @@}% \def\trim@@ #1@ #2@ #3@@{\trim@@@\empty #2 @}% \def\unbrace#1{#1}% -\unbrace{\def\trim@@@ #1 } #2@#3{\expandafter\def% - \expandafter #3\expandafter {#1}}% +\unbrace{\def\trim@@@ #1 } #2@#3{\expandafter\def\expandafter #3\expandafter {#1}}% % \def\hasparen#1(#2\@nil{%check if expression contains a (--call with \hasparen#1(\@nil \ifx\relax#2\relax \@parenfalse \else \@parentrue\fi}% @@ -1577,23 +1576,28 @@ tx@NodeDict \pst@tempg known \expandafter\testAlg\my@tempA|\@nil\my@next {#1}{#2}{#3}} % \def\psparnode#1#2#3{% -% #1=t value, #2=x(t) y(t) in PS form,#3=node name, - \pnode(!/t #1 def #2){#3}% - \pnode(!/t #1 .001 sub def #2 - /t #1 .001 add def - #2 3 -1 roll sub 3 1 roll sub neg - 2 copy Pyth dup 3 1 roll div 3 1 roll div ){#3tang}}%unit tangent vector at t + % #1=t value, #2=x(t) y(t) in PS form, #3=node name, + % also returns unit tangent vector at t with node #3tang + \pnode(! /t #1 def #2){#3}% + \pnode(! /t #1 dup abs 1 lt {0.001 sub} {dup 0 gt {0.999} {1.001} ifelse mul} ifelse def + #2 + /t #1 dup abs 1 lt {0.001 add} {dup 0 lt {0.999} {1.001} ifelse mul} ifelse def + #2 + 3 -1 roll sub 3 1 roll exch sub 2 copy exch dup mul exch dup mul add sqrt + dup 3 1 roll div 3 1 roll div){#3tang}% unit tangent vector at t +}% % \def\algparnode#1#2#3{% -% #1=t value, #2=x(t) | y(t) in alg form,#3=node name, -%\pstVerb{tx@Dict begin /t #1 def /Func (#2) AlgParser cvx def end} -%\pnode(!Func){#3}}% - \pstVerb{tx@Dict begin /Func (#2) AlgParser cvx def end } - \pnode(!/t #1 def Func){#3} - \pnode(!/t #1 .001 sub def Func - /t #1 .001 add def - Func 3 -1 roll sub 3 1 roll sub neg - 2 copy Pyth dup 3 1 roll div 3 1 roll div ){#3tang}%unit tangent vector at t +% #1=t value, #2=x(t) | y(t) in alg form, #3=node name, +% also returns unit tangent vector at t with node #3tang + \pstVerb{tx@Dict begin /Func (#2) AlgParser cvx def end }% + \pnode(! /t #1 def Func){#3}% + \pnode(! /t #1 dup abs 1 lt {0.001 sub} {dup 0 gt {0.999} {1.001} ifelse mul} ifelse def + Func + /t #1 dup abs 1 lt {0.001 add}{dup 0 lt {0.999} {1.001} ifelse mul } ifelse def + Func + 3 -1 roll sub 3 1 roll exch sub 2 copy exch dup mul exch dup mul add sqrt + dup 3 1 roll div 3 1 roll div){#3tang}% unit tangent vector at t }% % \def\nodex#1{% @@ -1634,8 +1638,7 @@ tx@NodeDict \pst@tempg known \nodexn{#3}{@TMP@a}% \AplusB(#1)(@TMP@a){@TMP@B}% \psline(@TMP@A)(@TMP@B)% -}% -\ignorespaces}% +}\ignorespaces}% % \def\curvepnodes{\pst@object{curvepnodes}} \def\curvepnodes@i#1#2#3#4{{%optional [plotpoints=xx] @@ -1685,7 +1688,7 @@ tx@NodeDict \pst@tempg known \else \multido{\i=0+1}{\pst@cntc}{\pnode(!/x \pst@number\pst@dima\space def x #3){#4\i}% \advance\pst@dima \pst@dimb}% -\fi% +\fi \expandafter\xdef \csname \PST@root nodecount\endcsname {\the\pst@cnta}% \ifnum\Pst@Debug>0 \typeout{Created nodes #40 .. #4\the\pst@cnta}\fi% }\ignorespaces}% diff --git a/Master/texmf-dist/tex/generic/pst-optic/pst-optic.tex b/Master/texmf-dist/tex/generic/pst-optic/pst-optic.tex index 0c06f849b33..c60869c4b4b 100644 --- a/Master/texmf-dist/tex/generic/pst-optic/pst-optic.tex +++ b/Master/texmf-dist/tex/generic/pst-optic/pst-optic.tex @@ -1,4 +1,4 @@ -%%%% $Id: pst-optic.tex 903 2024-06-02 06:16:43Z herbert $ +%%%% $Id: pst-optic.tex 1019 2024-10-28 07:59:50Z herbert $ %% This is file `pst-optic.tex', %% %% IMPORTANT NOTICE: @@ -8,8 +8,6 @@ %% Manuel Luque <Mluque5130@aol.com> (France) %% Herbert Voss <hvoss@tug.org> (Germany) %% -%% 2024-06-02 -%% %% This program can be redistributed and/or modified under the terms %% of the LaTeX Project Public License Distributed from CTAN archives %% in directory macros/latex/base/lppl.txt. @@ -30,8 +28,8 @@ \ifx\PSTMultidoLoaded\endinput\else\input multido.tex\fi \ifx\PSTXKeyLoaded\endinput\else \input pst-xkey\fi % -\def\fileversion{1.04} -\def\filedate{2024/06/02} +\def\fileversion{1.05} +\def\filedate{2024/10/28} \message{`PST-Optic' v\fileversion, \filedate\space (Manuel Luque and Herbert Voss)} % \edef\PstAtCode{\the\catcode`\@} \catcode`\@=11\relax @@ -169,14 +167,27 @@ \definecolor{BleuVerre}{cmyk}{0.2,0,0,0} \definecolor{JauneVert}{cmyk}{0.3,0,1,0} \newpsstyle{rayuresJaunes}{fillstyle=hlines,hatchsep=2\pslinewidth,hatchcolor=JauneVert} -\define@key[psset]{pst-optic}{rayColor}[red]{\pst@getcolor{#1}\psk@optic@rayColor} + +\define@key[psset]{pst-optic}{rayColor}[red]{% + \pst@getcolor{#1}\psk@optic@rayColor + \pst@getcolor{#1}\psk@optic@parallelrayColor + \def\psk@optic@paralleltipcolor{#1}% + \pst@getcolor{#1}\psk@optic@focalrayColor + \def\psk@optic@focaltipcolor{#1}% + \pst@getcolor{#1}\psk@optic@centerrayColor + \def\psk@optic@centertipcolor{#1}% +} +\define@key[psset]{pst-optic}{parallelrayColor}[red]{\pst@getcolor{#1}\psk@optic@parallelrayColor} +\define@key[psset]{pst-optic}{focalrayColor}[red]{\pst@getcolor{#1}\psk@optic@focalrayColor} +\define@key[psset]{pst-optic}{centerrayColor}[red]{\pst@getcolor{#1}\psk@optic@centerrayColor} + \psset[pst-optic]{rayColor=red} \define@key[psset]{pst-optic}{rayWidth}[1.5\pslinewidth]{\def\psk@optic@rayWidth{#1}} \psset[pst-optic]{rayWidth=1.5\pslinewidth} % \newpsstyle{opticalAxis}{linewidth=0.5pt,linecolor=black,linestyle=solid} % -% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % Utility stuff %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -491,7 +502,7 @@ \uput[-90](Center'){Center'} \psdots(Center) \uput[-90](Center){Center} - \psset{linecolor=\psk@optic@rayColor} + \psset{linecolor=\psk@optic@rayColor} %%%%%%%%%%%%%%%%%%%%%% \psline[linewidth=1.5\pslinewidth,arrowinset=0]{->}(A)(B) \ifx\psk@optic@lensType\lensTypeCVG % the parallel ray @@ -682,18 +693,21 @@ % dessin de l'image \psline[linewidth=1.5\pslinewidth,arrowinset=0,linestyle=dashed]{->}(A')(B') %dessin des rayons - \psset{linecolor=\psk@optic@rayColor} - \Arrows[length=16,arrows=-](B)(O) - \Arrows(B)(I) - \psline(B)(I) - \psOutLine[arrows=->,length=1](B')(I){END1} - \psOutLine[length=5](B')(I){END2} - \psline[linestyle=dashed](F')(I) - \Arrows[arrows=->>](B)(I') - \psline(B)(I') - \psOutLine[arrows=->>,length=2](B')(I'){END3} - \psOutLine[length=10](B')(I'){END4} - \psline[linestyle=dashed](B')(I') +%% \psset{linecolor=\psk@optic@rayColor} + %% center beam + \Arrows[linecolor=\psk@optic@centerrayColor,length=16,arrows=-](B)(O) + %% parallel beam + \Arrows[linecolor=\psk@optic@parallelrayColor](B)(I) + \psline[linecolor=\psk@optic@parallelrayColor](B)(I) + \psOutLine[linecolor=\psk@optic@parallelrayColor,arrows=->,length=1](B')(I){END1} + \psOutLine[linecolor=\psk@optic@parallelrayColor,length=5](B')(I){END2} + \psline[linecolor=\psk@optic@parallelrayColor,linestyle=dashed](F')(I) + %% focal beam + \Arrows[linecolor=\psk@optic@focalrayColor,arrows=->>](B)(I') + \psline[linecolor=\psk@optic@focalrayColor](B)(I') + \psOutLine[linecolor=\psk@optic@focalrayColor,arrows=->>,length=2](B')(I'){END3} + \psOutLine[linecolor=\psk@optic@focalrayColor,length=10](B')(I'){END4} + \psline[linecolor=\psk@optic@focalrayColor,linestyle=dashed](B')(I') %\uput[45](I'){I'} %\uput[45](I){I} \uput[\psk@optic@spotA](A){$\mathrm{\psk@optic@nameA}$}% @@ -713,17 +727,22 @@ % dessin de l'image \psline[linewidth=1.5\pslinewidth,arrowinset=0]{->}(A')(B') %dessin des rayons - \psset{linecolor=\psk@optic@rayColor} - \pcline(B)(B') - \Arrows[length=16,arrows=-](B)(O) - \Arrows(B)(I) - \psline(B)(I) - \Arrows[length=10,posStart=0,arrows=-](I)(F') - \Arrows[posStart=1,arrows=->](I)(F') - \Arrows[arrows=->>](B)(I') - \psline(B)(I')(B') - \Arrows[length=10,arrows=-](I')(B') - \Arrows[length=2,posStart=0.5,arrows=->>](I')(B') +% \psset{linecolor=\psk@optic@rayColor}%% No global setting + %% Center beam + \pcline[linecolor=\psk@optic@centerrayColor](B)(B')%%CMittelpunktsstrahl + \Arrows[linecolor=\psk@optic@centerrayColor,length=16,arrows=-](B)(O) + \Arrows[linecolor=\psk@optic@centerrayColor](B)(I) + %% parallel beam + \psline[linecolor=\psk@optic@parallelrayColor,tipcolor=\psk@optic@paralleltipcolor](B)(I) + \Arrows[linecolor=\psk@optic@parallelrayColor](B)(I) + \Arrows[linecolor=\psk@optic@parallelrayColor,length=10,posStart=0,arrows=-](I)(F') + \Arrows[linecolor=\psk@optic@parallelrayColor,posStart=1,arrows=->](I)(F') + %% focal beam + \psline[linecolor=\psk@optic@focalrayColor](B)(I')(B') + \Arrows[linecolor=\psk@optic@focalrayColor,arrows=->>](B)(I') + \Arrows[linecolor=\psk@optic@focalrayColor,length=10,arrows=-](I')(B') + \Arrows[linecolor=\psk@optic@focalrayColor,length=2,posStart=0.5, + arrows=->>,tipcolor=\psk@optic@focaltipcolor](I')(B') %\uput[-45](I'){I'} %\uput[45](I){I} \uput[\psk@optic@spotA](A){$\mathrm{\psk@optic@nameA}$} @@ -736,7 +755,8 @@ %Lentille convergente : CVG %(#2) est l'abscisse du centre optique \def\lens{\@ifnextchar[{\pst@lens}{\pst@lens[]}} -\def\pst@lens[#1]{{% +\def\pst@lens[#1]{% + \begingroup \psset[pst-optic,pstricks]{xLeft=-7.5,xRight=7.5,yBottom=-3,yTop=3,#1}% % \psset[pst-optic,pstricks]{#1}% \pst@killglue% @@ -771,7 +791,7 @@ \pnode(! \psk@optic@xRight\space A'B' YO add){I1} \pnode(! \psk@optic@xRight\space neg A'B' YO add){I2} \else% - \pnode(!% + \pnode(! /OF' \psk@optic@focus\space def /AB \psk@optic@AB\space def /OA \psk@optic@OA\space def @@ -812,7 +832,8 @@ \psset{arrows=<->}% \fi\fi \psline[linecolor=\psk@optic@lensColor, - linewidth=\psk@optic@lensWidth,arrowsize=\psk@optic@lensArrowSize, + linewidth=2\pslinewidth, %\psk@optic@lensWidth, + arrowsize=\psk@optic@lensArrowSize, arrowinset=\psk@optic@lensArrowInset]% (! XO -0.5 \psk@optic@lensHeight\space mul \psk@optic@lensScale\space mul YO add)% @@ -829,7 +850,8 @@ \pst@drawCVGRays\fi\fi \fi \end{pspicture*}% -}\ignorespaces} + \endgroup + \ignorespaces} % % 25 december 2002 Herbert <voss@perce.de> % make the lenses dynamical to width _and_ height @@ -1243,7 +1265,9 @@ \uput[-45](B'){B'} \fi \end{pspicture}% -}\ignorespaces} + }% + \ignorespaces +} % % \def\mirrorDVG{\@ifnextchar[{% Herbert Voss 2003/01/05 @@ -1640,12 +1664,12 @@ \pst@getcoor{#8}\pst@tempp \def\pst@optic@cIn{#6} % refraction number 1 \def\pst@optic@cOut{#7} % refraction number 2 - \pnode(!% - /YA \pst@tempA exch pop \pst@number\psyunit div def + \pnode(! + /YA \pst@tempA exch pop \pst@number\psyunit div def /XA \pst@tempA pop \pst@number\psxunit div def /YB \pst@tempB exch pop \pst@number\psyunit div def /XB \pst@tempB pop \pst@number\psxunit div def - /YC \pst@tempc exch pop \pst@number\psyunit div def + /YC \pst@tempc exch pop \pst@number\psyunit div def /XC \pst@tempc pop \pst@number\psxunit div def /YD \pst@tempd exch pop \pst@number\psyunit div def /XD \pst@tempd pop \pst@number\psxunit div def @@ -1656,8 +1680,11 @@ /dY2 YD YC sub def /dX2 XD XC sub def % the gradient of the material (if negativ then it must be the nominator) - /Gamma dY2 dX2 mul 0 lt {dY2 abs neg dX2 abs}{dY2 dX2} ifelse atan def -% the perpendicular line is: 90°-Gamma +% if = 0 then substract 180° + /Gamma dY2 dX2 mul 0 ge {dY2 dX2}{dY2 abs neg dX2 abs} ifelse atan + %dup 0 eq { 180 sub } if + def +% the perpendicular line is: 90°-Gamma /GammaStrich 90 Gamma sub def % the angle of the incoming ray /AlphaStrich dY1 dX1 atan def @@ -1667,7 +1694,7 @@ % the law of Snell: sin(Alpha)/sin(Beta) = n2/n1 % sin(Beta)>1 is a total reflection instead of a refraction /sinBeta \pst@optic@cIn\space \pst@optic@cOut\space div Alpha sin mul def - sinBeta abs 1 le{ + sinBeta abs 1 le { /Root 1 sinBeta dup mul sub Sqrt def /Beta sinBeta Root atan def }{ @@ -1677,7 +1704,7 @@ /BetaStrich 90 Gamma sub Beta add def % Determine the intermediate point XP BetaStrich cos sub - YP BetaStrich sin add ){#8'}% + YP BetaStrich sin add ){#8'} %\qdisk(#8){5pt} }\ignorespaces} % diff --git a/Master/texmf-dist/tex/generic/pstricks/pstricks.tex b/Master/texmf-dist/tex/generic/pstricks/pstricks.tex index 2f87e9895e8..094dcbb232d 100644 --- a/Master/texmf-dist/tex/generic/pstricks/pstricks.tex +++ b/Master/texmf-dist/tex/generic/pstricks/pstricks.tex @@ -88,8 +88,8 @@ \let\pgfforeach\foreach % -\def\fileversion{3.19c} -\def\filedate{2024/02/02} +\def\fileversion{3.21} +\def\filedate{2024/11/16} \pst@addfams{pstricks} % %\define@boolkey[psset]{pstricks}[Pst@]{useURWfonts}[true]{} @@ -2609,13 +2609,13 @@ \AltClipMode \fi -\def\clipbox{\@ifnextchar[{\clipbox@}{\clipbox@[\z@]}} +\def\psclipbox{\@ifnextchar[{\psclipbox@}{\psclipbox@[\z@]}} % DG modification begin - Apr. 3, 1997 % From paulus@immd5.informatik.uni-erlangen.de (Dietrich Paulus) %\def\clipbox@[#1]{\pst@makebox\clipbox@@{#1}} -\def\clipbox@[#1]{\pst@makebox{\clipbox@@{#1}}} +\def\psclipbox@[#1]{\pst@makebox{\psclipbox@@{#1}}} % DG modification end -\def\clipbox@@#1{% +\def\psclipbox@@#1{% \pssetlength\pst@dimg{#1}% \leavevmode\hbox{% \begin@psclip% @@ -4109,6 +4109,36 @@ pop \define@key[psset]{pstricks}{margin}[0pt]{\ps@readmargin#1,,,,\@nil} \psset[pstricks]{margin=0pt} % + +\ExplSyntaxOn +\define@key[psset]{pstricks}{alt}[]{\tl_set:Ne\l__tag_graphic_alt_tl{\text_purify:n{#1}}} +%\define@boolkey[psset]{pstricks}[]{artifact}[true]{} +\define@key[psset]{pstricks}{artifact}{% + \bool_set_true:N \l__tag_graphic_artifact_bool + \bool_set_false:N \l__tag_graphic_BBox_bool +} +\define@key[psset]{pstricks}{actualtext}[]{% + \tl_set:Ne\l__tag_graphic_actual_tl{\text_purify:n{#1}} + \bool_set_false:N \l__tag_graphic_BBox_bool +} +\define@key[psset]{pstricks}{correct-BBox}{% + \bool_set_true:N \l__tag_graphic_bboxcorr_bool + \seq_set_split:Nnn\l__tag_graphic_bboxcorr_seq{~}{#1~0pt~0pt~0pt~0pt}% +} +\define@key[psset]{pstricks}{tag}[]{% + \str_case:nnF {#1}{ + {artifact} + { + \bool_set_true:N \l__tag_graphic_artifact_bool + \bool_set_false:N \l__tag_graphic_BBox_bool + } + {false}{\tag_stop:} + } + {\tl_set:Nn\l__tag_graphic_struct_tl{#1}} + } + +\ExplSyntaxOff + \newcount\ps@imagectr \ps@imagectr=0 %\newif\ifPst@findcoor @@ -4119,10 +4149,19 @@ pop \def\pst@picture{\@ifnextchar[{\pst@@picture}{\pst@@picture[]}} \def\pst@@picture[#1]{\@ifnextchar({\pst@@picture@i[#1]}{\pst@@picture@@i[#1]}}% \def\pst@@picture@@i[#1]{% + \def\pic@coor{(0,0)(0,0)}% \gdef\pscoor{(10,10)}% \ifPst@calcframe \typeout{>>>Check for file \jobname-\the\numexpr\ps@imagectr+1.psaux}% - \IfFileExists{\jobname-\the\numexpr\ps@imagectr+1.psaux}{\input{\jobname-\the\numexpr\ps@imagectr+1.psaux}}{}% + \IfFileExists{\jobname-\the\numexpr\ps@imagectr+1.psaux} + {\input{\jobname-\the\numexpr\ps@imagectr+1.psaux}% + \xdef\pic@coor{(0,0)\pscoor}% + \typeout{----->>\pic@coor}% + \typeout{----->>\pscoor}% + } + {%\gdef\pscoor{(10,10)} + %\def\pic@coor{(0,0)(0,0)(10,10)} + }% % \typeout{>>>\pscoor}% \fi \edef\@temp{[\noexpand#1]\pscoor}% @@ -4168,7 +4207,7 @@ pop \ifPst@pgffunctions\pstVerb{ pgffunctions }\fi% hv 2013-04-17 } -\def\pic@coor{(0,0)(0,0)(10,10)} +%\def\pic@coor{(0,0)(0,0)(10,10)} \def\endpspicture{% \ifPst@calcframe \ifPSTlualatex @@ -4236,7 +4275,7 @@ pop \advance\pst@dimd\pst@dimb \lower\pst@dimd\box\pst@hbox \kern\pst@dimc}% - \if@star\setbox\pst@hbox=\hbox{\clipbox@@\z@}\fi + \if@star\setbox\pst@hbox=\hbox{\psclipbox@@\z@}\fi \leavevmode \ifPst@draft \expandafter\ifx\csname @latexerr\endcsname\relax diff --git a/Master/texmf-dist/tex/generic/systeme/systeme.tex b/Master/texmf-dist/tex/generic/systeme/systeme.tex index 60d42a5cbca..eedaf4da1bd 100644 --- a/Master/texmf-dist/tex/generic/systeme/systeme.tex +++ b/Master/texmf-dist/tex/generic/systeme/systeme.tex @@ -1,12 +1,12 @@ -% !TeX encoding = ISO-8859-1 +% !TeX encoding = UTF-8 % Ce fichier contient le code de l'extension "systeme" -% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % \def\SYSname {systeme} % -\def\SYSver {0.34} % +\def\SYSver {0.35} % % % -\def\SYSdate {2020/05/03} % +\def\SYSdate {2025/02/16} % % % %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% % % @@ -14,9 +14,7 @@ % Status : Maintained % % Email : unbonpetit@netc.fr % % Package URL: https://www.ctan.org/pkg/systeme % -% Bug tracker: https://framagit.org/unbonpetit/systeme/issues % -% Repository : https://framagit.org/unbonpetit/systeme/tree/master % -% Copyright : Christian Tellechea 2011-2019 % +% Copyright : Christian Tellechea 2011-2025 % % Licence : Released under the LaTeX Project Public License v1.3c % % or later, see http://www.latex-project.org/lppl.txt % % Files : 1) systeme.tex % @@ -29,42 +27,43 @@ \immediate\write-1 {Package: \SYSname\space\SYSdate\space\space v\SYSver\space\space Saisie naturelle de systemes d'equations}% \fi -\expandafter\edef\csname SYS_restorecatcode\endcsname{\catcode\number`\_=\number\catcode`\_\relax} +\expandafter\edef\csname SYS_restore_catcode\endcsname{\catcode\number`\_=\number\catcode`\_\relax} \catcode`\_11 \begingroup \catcode`\_8 - \gdef\SYSunder{_} + \expandafter\gdef\csname SYS\string_underscore\endcsname{_} \endgroup +\def\SYS_antefi#1\fi{\fi#1} + \unless\ifdefined\xstringversion - \def\SYS_nextaction{\input xstring.tex\relax}% - \expandafter\SYS_nextaction + \SYS_antefi\input xstring.tex\relax \fi -\newtoks\SYS_systemecode -\newtoks\SYS_systempreamble +\newtoks\SYS_code_toks +\newtoks\SYS_preamble_toks -\newif\ifSYS_firstterm -\newif\ifSYS_sortvariable +\newif\ifSYS_first_term +\newif\ifSYS_sort_variable \newif\ifSYS_star -\newif\ifSYS_extracol +\newif\ifSYS_extra_col \newif\ifSYS_autonum -\newif\ifSYS_followautonum -\newif\ifSYS_constterm +\newif\ifSYS_follow_autonum +\newif\ifSYS_const_term \newcount\SYSeqnum -\long\def\SYS_execarg#1{#1} -\long\def\SYS_gobtwoargs#1#2{} +\long\def\SYS_id#1{#1} +\long\def\SYS_gobtwo#1#2{} \def\SYS_addtotok#1#2{#1\expandafter{\the#1#2}} -\def\SYS_xaddtotok#1#2{\SYS_expaddtotok#1{\expanded{#2}}} -\def\SYS_expaddtotok#1#2{\xs_exparg{\SYS_addtotok#1}{#2}} -\def\SYS_addtotab{\SYS_addtotok\SYS_systemecode} +\def\SYS_xaddtotok#1#2{\SYS_eaddtotok#1{\expanded{#2}}} +\def\SYS_eaddtotok#1#2{\xs_exparg{\SYS_addtotok#1}{#2}} +\def\SYS_add_to_tab{\SYS_addtotok\SYS_code_toks} \def\SYS_cslet#1{\expandafter\let\csname#1\endcsname} \def\SYS_letcs#1#2{\expandafter\let\expandafter#1\csname#2\endcsname} -\def\SYS_firstinlist#1,#2\_nil{#1} -\def\SYS_removefirstinlist#1,{} +\def\SYS_first_in_list#1,#2\_nil{#1} +\def\SYS_remove_first_in_list#1,{} \def\SYS_ifinstr#1#2{% \def\SYS_ifinstr_i##1#2##2\_nil{\xs_ifempty{##2}\xs_execsecond\xs_execfirst}% \SYS_ifinstr_i#1\__nil#2\_nil @@ -75,62 +74,68 @@ \normalbaselineskip=12pt \fi -% définit ce qu'est le séparateur des équations par défaut -\def\syseqsep{\def\SYS_defaulteqsep} +% définit ce qu'est le séparateur des équations par défaut +\def\syseqsep{\def\SYS_default_eq_sep} \syseqsep{,} -% définit le coefficient pour l'espacement interligne -\def\syslineskipcoeff{\def\SYS_lineskipcoeff} +% définit le coefficient pour l'espacement interligne +\def\syslineskipcoeff{\def\SYS_lineskip_coeff} \syslineskipcoeff{1.25} -% définit le signe qui marquera une colonne supplémentaire à droite du tableau -\def\sysextracolsign{\def\SYS_extracolsign} -\xs_exparg\sysextracolsign{\string @}% on définit l'arobas avec le bon catcode. +% définit le signe qui marquera une colonne supplémentaire à droite du tableau +\def\sysextracolsign{\def\SYS_extra_col_sign} +\xs_exparg\sysextracolsign{\string @}% on définit l'arobas avec le bon catcode. -% définit ce qui sera inséré au début et à la fin de la colonne supplémentaire -\def\syscodeextracol#1#2{\def\SYS_extracolstart{#1}\def\SYS_extracolend{#2}} +% définit ce qui sera inséré au début et à la fin de la colonne supplémentaire +\def\syscodeextracol#1#2{% + \def\SYS_extra_col_start{#1} + \def\SYS_extra_col_end{#2}% +} \syscodeextracol{\kern1.5em$}{$} \def\sysreseteqnum{\global\SYSeqnum0 } -% définit l'autonumérotation +% définit l'autonumérotation \def\sysautonum{% \xs_ifstar - {\SYS_followautonumtrue\SYS_autonum} - {\SYS_followautonumfalse\SYS_autonum}% + {\SYS_follow_autonumtrue\SYS_autonum} + {\SYS_follow_autonumfalse\SYS_autonum}% } \def\SYS_autonum#1{% \xs_ifempty{#1} - {\SYS_extracolfalse + {% + \SYS_extra_colfalse \SYS_autonumfalse } - {\SYS_extracoltrue + {% + \SYS_extra_coltrue \SYS_autonumtrue - \def\SYS_autonumarg{#1}% + \def\SYS_autonum_arg{#1}% }% } -% dimension qui sera ajoutée à la hauteur et à la profondeur du strutup ou strutdown -% inséré à la première et la dernière équation -\def\SYS_extrastrutdim{1.5pt} +% dimension qui sera ajoutée à la hauteur et à la profondeur du strutup ou strutdown +% inséré à la première et la dernière équation +\def\SYS_dim_extrastrut{1.5pt} -% liste des signes devant être compris comme signe d'égalité séparant les 2 membres de l'équation -\def\SYS_equalsignlist{<=,>=,=,<,>,\leq,\geq,\leqslant,\geqslant} +% liste des signes devant être compris comme signe d'égalité séparant les 2 membres de l'équation +\def\SYS_equal_sign_list{<=,>=,=,<,>,\leq,\geq,\leqslant,\geqslant} \def\sysaddeqsign#1{% \saveexpandmode\expandarg - \IfSubStr{\expandafter,\SYS_equalsignlist,}{,#1,} + \IfSubStr{\expandafter,\SYS_equal_sign_list,}{,#1,} {} - {\xs_exparg{\def\SYS_equalsignlist}{\SYS_equalsignlist,#1}}% + {\xs_exparg{\def\SYS_equal_sign_list}{\SYS_equal_sign_list,#1}}% \restoreexpandmode } -% enlève l'item #2 de la sc #1 qui contient une liste -\def\SYS_removeiteminlist#1#2{% +% enlève l'item #2 de la sc #1 qui contient une liste +\def\SYS_remove_item_in_list#1#2{% \saveexpandmode\expandarg \IfSubStr{\expandafter,#1,}{,#2,} - {\StrSubstitute{\expandafter\_nil\expandafter,#1,\_nil}{,#2,},[#1]% + {% + \StrSubstitute{\expandafter\_nil\expandafter,#1,\_nil}{,#2,},[#1]% \StrDel#1{\noexpand\_nil,}[#1]% \StrDel#1{,\_nil}[#1]% }% @@ -139,399 +144,462 @@ } \def\sysremoveeqsign#1{% - \SYS_removeiteminlist\SYS_equalsignlist{#1}% - \SYS_removeiteminlist\SYS_equivsignlist{#1}% + \SYS_remove_item_in_list\SYS_equal_sign_list{#1}% + \SYS_remove_item_in_list\SYS_equiv_sign_list{#1}% } -% définit le signe d'égalité #1 comme devant être remplacé par #2 lors de l'affichage +% définit le signe d'égalité #1 comme devant être remplacé par #2 lors de l'affichage \def\sysequivsign#1#2{% - \IfSubStr\SYS_equivsignlist{\noexpand#1,} + \IfSubStr\SYS_equiv_sign_list{\noexpand#1,} {} - {\xs_exparg{\def\SYS_equivsignlist}{\SYS_equivsignlist#1,}}% + {\xs_exparg{\def\SYS_equiv_sign_list}{\SYS_equiv_sign_list#1,}}% \expandafter\def\csname SYS_equivsign_\string#1\endcsname{#2}% } -\def\SYS_equivsignlist{} +\def\SYS_equiv_sign_list{} \sysequivsign{<=}\leq \sysequivsign{>=}\geq -\def\syssignspace#1{\edef\SYS_signspace{\ifdim#1=0pt \else\hskip\dimexpr#1\relax\fi}} -\def\syseqspace#1{\edef\SYS_eqspace{\ifdim#1=0pt \else\hskip\dimexpr#1\relax\fi}} +\def\syssignspace#1{\edef\SYS_sign_space{\ifdim#1=0pt \else\hskip\dimexpr#1\relax\fi}} +\def\syseqspace#1{\edef\SYS_equal_space{\ifdim#1=0pt \else\hskip\dimexpr#1\relax\fi}} \syssignspace{0pt} \syseqspace{0pt} -\def\SYS_firsttonil#1#2\_nil{#1} -\def\SYS_firstletter#1#2{\string#1\expandafter\SYS_firsttonil\detokenize{#2.}\_nil} +\def\SYS_first_to_nil#1#2\_nil{#1} +\def\SYS_first_letter#1#2{\string#1\expandafter\SYS_first_to_nil\detokenize{#2.}\_nil} \def\sysalign#1{% - \xs_ifempty{#1}{\sysalign_i r}{\sysalign_i#1},l,\_nil + \xs_ifempty{#1} + {\sysalign_i r} + {\sysalign_i#1},l,\_nil } \def\sysalign_i#1,#2,#3\_nil{% \let\SYS_leftright\hfil - \if\SYS_firstletter c{#1}\let\SYS_leftleft\hfil \else - \if\SYS_firstletter l{#1}\let\SYS_leftleft\empty\else - \let\SYS_leftleft\hfil \let\SYS_leftright\empty\fi\fi + \if\SYS_first_letter c{#1}% + \let\SYS_leftleft\hfil + \else + \if\SYS_first_letter l{#1}% + \let\SYS_leftleft\empty + \else + \let\SYS_leftleft\hfil + \let\SYS_leftright\empty + \fi + \fi \let\SYS_rightleft\hfil - \if\SYS_firstletter c{#2}\let\SYS_rightright\hfil \else - \if\SYS_firstletter r{#2}\let\SYS_rightright\empty \else - \let\SYS_rightleft\empty \let\SYS_rightright\hfil\fi\fi + \if\SYS_first_letter c{#2}% + \let\SYS_rightright\hfil + \else + \if\SYS_first_letter r{#2}% + \let\SYS_rightright\empty + \else + \let\SYS_rightleft\empty + \let\SYS_rightright\hfil + \fi + \fi } \sysalign{r,l} -% #1 est l'équation courante. La macro la sépare en 2 membres -> \SYS_leftmember et \SYS_rightmember -% le signe de séparation entre les 2 membres se trouve dans \SYS_currenteqsign -\def\SYS_splitinmembers#1{% - \def\SYS_leftmember{#1}% - \let\SYS_currenteqsign\empty - \let\SYS_rightmember\empty - \xs_exparg\SYS_splitinmembers_i{\SYS_equalsignlist,}% parcourt \SYS_equalsignlist pour séparer en 2 membres - \IfSubStr{\expandafter,\SYS_equivsignlist}{\expandafter,\SYS_currenteqsign,}% si le signe est dans la liste des substitutions - {\SYS_letcs\SYS_currenteqsign{SYS_equivsign_\detokenize\expandafter{\SYS_currenteqsign}}}% le remplacer +% #1 est l'équation courante. La macro la sépare en 2 membres -> \SYS_left_member et \SYS_right_member +% le signe de séparation entre les 2 membres se trouve dans \SYS_current_eq_sign +\def\SYS_split_in_members#1{% + \def\SYS_left_member{#1}% + \let\SYS_current_eq_sign\empty + \let\SYS_right_member\empty + \xs_exparg\SYS_split_in_members_i{\SYS_equal_sign_list,}% parcourt \SYS_equal_sign_list pour séparer en 2 membres + \IfSubStr{\expandafter,\SYS_equiv_sign_list}{\expandafter,\SYS_current_eq_sign,}% si le signe est dans la liste des substitutions + {\SYS_letcs\SYS_current_eq_sign{SYS_equivsign_\detokenize\expandafter{\SYS_current_eq_sign}}}% le remplacer {}% } -% #1 est la liste des signes d'égalité -\def\SYS_splitinmembers_i#1{% +% #1 est la liste des signes d'égalité +\def\SYS_split_in_members_i#1{% \xs_ifempty{#1} {} - {\IfSubStr\SYS_leftmember{\SYS_firstinlist#1\_nil}% si l'équation contient un des signes - {\xs_exparg{\def\SYS_currenteqsign}{\SYS_firstinlist#1\_nil}% sauvagarde le signe - \StrBehind\SYS_leftmember\SYS_currenteqsign[\SYS_rightmember]% procède à la séparation - \StrBefore\SYS_leftmember\SYS_currenteqsign[\SYS_leftmember]% en deux membres + {% + \IfSubStr\SYS_left_member{\SYS_first_in_list#1\_nil}% si l'équation contient un des signes + {% + \xs_exparg{\def\SYS_current_eq_sign}{\SYS_first_in_list#1\_nil}% sauvagarde le signe + \StrBehind\SYS_left_member\SYS_current_eq_sign[\SYS_right_member]% procède à la séparation + \StrBefore\SYS_left_member\SYS_current_eq_sign[\SYS_left_member]% en deux membres }% - {\xs_exparg\SYS_splitinmembers_i{\SYS_removefirstinlist#1}% sinon, recommencer en enlevant le 1er signe + {% + \xs_exparg\SYS_split_in_members_i{\SYS_remove_first_in_list#1}% sinon, recommencer en enlevant le 1er signe }% }% } -% analyse une équation et la découpe en termes et signes -\def\SYS_spliteqinterms#1{% - \IfSubStr{\noexpand#1}\SYS_extracolsign% y a t-il un signe de colonne supplémentaire ? - {\StrBefore{\noexpand#1}\SYS_extracolsign[\SYS_leftmember]% - \StrBehind{\noexpand#1}\SYS_extracolsign[\SYS_rightmember]% - \SYS_cslet{SYS_extracol_\SYS_eqnumber}\SYS_rightmember - \SYS_extracoltrue +% analyse une équation et la découpe en termes et signes +\def\SYS_split_eq_in_terms#1{% + \IfSubStr{\noexpand#1}\SYS_extra_col_sign% y a t-il un signe de colonne supplémentaire ? + {% + \StrBefore{\noexpand#1}\SYS_extra_col_sign[\SYS_left_member]% + \StrBehind{\noexpand#1}\SYS_extra_col_sign[\SYS_right_member]% + \SYS_cslet{SYS_extra_col_\SYS_eqnumber}\SYS_right_member + \SYS_extra_coltrue }% - {\def\SYS_leftmember{#1}% + {% + \def\SYS_left_member{#1}% }% - \xs_exparg\SYS_splitinmembers{\SYS_leftmember}% trouver les membres de gauche et droite et le signe qui les sépare - \xs_ifx{\SYS_currenteqsign\empty} + \xs_exparg\SYS_split_in_members{\SYS_left_member}% trouver les membres de gauche et droite et le signe qui les sépare + \xs_ifx{\SYS_current_eq_sign\empty} {}% - {\SYS_cslet{SYS_eqsign_\SYS_eqnumber}\SYS_currenteqsign}% stocker ce signe s'il existe - \IfBeginWith\SYS_leftmember\space - {\StrGobbleLeft\SYS_leftmember1[\SYS_leftmember]} + {\SYS_cslet{SYS_eq_sign_\SYS_eqnumber}\SYS_current_eq_sign}% stocker ce signe s'il existe + \IfBeginWith\SYS_left_member\space + {\StrGobbleLeft\SYS_left_member1[\SYS_left_member]} {}% pas d'espace pour commencer le membre de gauche - \IfBeginWith\SYS_leftmember+% amputer le membre de gauche du premier signe et le stocker temporairement s'il existe et sinon... - {\StrSplit\SYS_leftmember1\SYS_currentsign\SYS_leftmember + \IfBeginWith\SYS_left_member+% amputer le membre de gauche du premier signe et le stocker temporairement s'il existe et sinon... + {% + \StrSplit\SYS_left_member1\SYS_current_sign\SYS_left_member }% - {\IfBeginWith\SYS_leftmember-% - {\StrSplit\SYS_leftmember1\SYS_currentsign\SYS_leftmember}% - {\def\SYS_currentsign{+}}% ce signe est "+" + {% + \IfBeginWith\SYS_left_member-% + {\StrSplit\SYS_left_member1\SYS_current_sign\SYS_left_member}% + {\def\SYS_current_sign{+}}% ce signe est "+" }% - \SYS_spliteqinterms_i1% - \SYS_cslet{SYS_right_\SYS_eqnumber}\SYS_rightmember + \SYS_split_eq_in_terms_i1% + \SYS_cslet{SYS_right_\SYS_eqnumber}\SYS_right_member } -\def\SYS_spliteqinterms_i#1{% - \StrPosition\SYS_leftmember+[\SYS_posplus]% - \StrPosition\SYS_leftmember-[\SYS_posminus]% - \xs_ifnum{\numexpr\SYS_posplus+\SYS_posminus=0 }% il n'y a ni "+" ni "-" - {\let\SYS_currentterm\SYS_leftmember% prendre tout ce qui reste - \SYS_assignterm% et assigner ce dernier terme avec le dernier signe trouvé +\def\SYS_split_eq_in_terms_i#1{% + \StrPosition\SYS_left_member+[\SYS_plus_position]% + \StrPosition\SYS_left_member-[\SYS_minus_position]% + \xs_ifnum{\numexpr\SYS_plus_position+\SYS_minus_position=0 }% il n'y a ni "+" ni "-" + {% + \let\SYS_current_term\SYS_left_member% prendre tout ce qui reste + \SYS_assign_term% et assigner ce dernier terme avec le dernier signe trouvé } - {\edef\SYS_nextsign{\ifnum\SYS_posplus=0 -\else\ifnum\SYS_posminus=0 +\else\ifnum\SYS_posplus<\SYS_posminus+\else-\fi\fi\fi}% décider de ce qu'est le prochain signe - \StrBefore\SYS_leftmember\SYS_nextsign[\SYS_currentterm]% prendre ce qu'il y a avant - \StrBehind\SYS_leftmember\SYS_nextsign[\SYS_leftmember]% et stocker ce qu'il y a ensuite pour après - \SYS_assignterm% assigner ce qu'il y a avant avec le dernier signe trouvé - \let\SYS_currentsign\SYS_nextsign% on continue, le prochain signe devient le signe courant - \xs_exparg\SYS_spliteqinterms_i{\number\numexpr#1+1}% + {% + \edef\SYS_next_sign{\ifnum\SYS_plus_position=0 -\else\ifnum\SYS_minus_position=0 +\else\ifnum\SYS_plus_position<\SYS_minus_position+\else-\fi\fi\fi}% décider de ce qu'est le prochain signe + \StrBefore\SYS_left_member\SYS_next_sign[\SYS_current_term]% prendre ce qu'il y a avant + \StrBehind\SYS_left_member\SYS_next_sign[\SYS_left_member]% et stocker ce qu'il y a ensuite pour après + \SYS_assign_term% assigner ce qu'il y a avant avec le dernier signe trouvé + \let\SYS_current_sign\SYS_next_sign% on continue, le prochain signe devient le signe courant + \xs_exparg\SYS_split_eq_in_terms_i{\number\numexpr#1+1}% }% } -\def\SYS_assignterm{% - \xs_exparg\SYS_findletter{\SYS_currentterm}% trouver le nom de la variable - \xs_ifx{\SYS_letterfound\empty} - {\SYS_consttermtrue - \ifcsname SYS_term_const_\SYS_eqnumber\endcsname% si terme constant déjà rencontré, l'ajouter à celui qui existe - \xs_eaddtomacro\SYS_currentsign\SYS_currentterm - \expandafter\xs_eaddtomacro\csname SYS_term_const_\SYS_eqnumber\endcsname{\SYS_currentsign}% +\def\SYS_assign_term{% + \xs_exparg\SYS_find_letter{\SYS_current_term}% trouver le nom de la variable + \xs_ifx{\SYS_letter_found\empty} + {% + \SYS_const_termtrue + \ifcsname SYS_term_const_\SYS_eqnumber\endcsname% si terme constant déjà rencontré, l'ajouter à celui qui existe + \xs_eaddtomacro\SYS_current_sign\SYS_current_term + \expandafter\xs_eaddtomacro\csname SYS_term_const_\SYS_eqnumber\endcsname{\SYS_current_sign}% \else - \SYS_cslet{SYS_sign_const_\SYS_eqnumber}\SYS_currentsign% sinon procéder aux assignations - \SYS_cslet{SYS_term_const_\SYS_eqnumber}\SYS_currentterm + \SYS_cslet{SYS_sign_const_\SYS_eqnumber}\SYS_current_sign% sinon procéder aux assignations + \SYS_cslet{SYS_term_const_\SYS_eqnumber}\SYS_current_term \fi } - {\ifcsname SYS_term_\detokenize\expandafter{\SYS_letterfound}_\SYS_eqnumber\endcsname - \errmessage{Package systeme Error: l'inconnue "\detokenize\expandafter{\SYS_letterfound}" a deja ete trouvee dans l'equation !}% + {% + \ifcsname SYS_term_\detokenize\expandafter{\SYS_letter_found}_\SYS_eqnumber\endcsname + \errmessage{Package systeme Error: l'inconnue "\detokenize\expandafter{\SYS_letter_found}" a deja ete trouvee dans l'equation !}% \fi - \ifSYS_sortvariable - \SYS_insletter\SYS_letterfound% l'insérer si besoin dans la liste ordonnée des variables + \ifSYS_sort_variable + \SYS_ins_letter\SYS_letter_found% l'insérer si besoin dans la liste ordonnée des variables \fi - \SYS_cslet{SYS_sign_\detokenize\expandafter{\SYS_letterfound}_\SYS_eqnumber}\SYS_currentsign% procéder aux assignations - \SYS_cslet{SYS_term_\detokenize\expandafter{\SYS_letterfound}_\SYS_eqnumber}\SYS_currentterm + \SYS_cslet{SYS_sign_\detokenize\expandafter{\SYS_letter_found}_\SYS_eqnumber}\SYS_current_sign% procéder aux assignations + \SYS_cslet{SYS_term_\detokenize\expandafter{\SYS_letter_found}_\SYS_eqnumber}\SYS_current_term }% } -% cherche la première lettre minuscule dans #1 -\def\SYS_findletter#1{% +% cherche la première lettre minuscule dans #1 +\def\SYS_find_letter#1{% \saveexploremode\exploregroups - \StrRemoveBraces{#1}[\SYS_currentfindletter]% - \let\SYS_letterfound\empty - \SYS_findletter_i + \StrRemoveBraces{#1}[\SYS_current_letter]% + \let\SYS_letter_found\empty + \SYS_find_letter_i \restoreexploremode } -\def\SYS_findletter_i{% - \StrSplit\SYS_currentfindletter1\SYS_currentchar\SYS_currentfindletter - \ifSYS_sortvariable% si le tri auto est activé - \ifcat\relax\expandafter\noexpand\SYS_currentchar - \let\SYS_nextaction\xs_execsecond% faux si c'est une sc +\def\SYS_find_letter_i{% + \StrSplit\SYS_current_letter1\SYS_current_char\SYS_current_letter + \ifSYS_sort_variable% si le tri auto est activé + \ifcat\relax\expandafter\noexpand\SYS_current_char + \let\SYS_do_next\xs_execsecond% faux si c'est une sc \else - \xs_ifnum{\expandafter`\SYS_currentchar<`a } - {\let\SYS_nextaction\xs_execsecond% pas une lettre minuscule + \xs_ifnum{\expandafter`\SYS_current_char<`a } + {% + \let\SYS_do_next\xs_execsecond% pas une lettre minuscule } - {\xs_ifnum{\expandafter`\SYS_currentchar>`z } - {\let\SYS_nextaction\xs_execsecond% pas une lettre minuscule + {% + \xs_ifnum{\expandafter`\SYS_current_char>`z } + {% + \let\SYS_do_next\xs_execsecond% pas une lettre minuscule } - {\SYS_testsubscript% tester s'il y a un indice - \let\SYS_nextaction\xs_execfirst + {% + \SYS_test_subscript% tester s'il y a un indice + \let\SYS_do_next\xs_execfirst }% }% \fi \else \noexploregroups - \IfSubStr\SYS_letterlist\SYS_currentchar% ce qui est trouvé est dans la liste ? - {\SYS_testsubscript% tester s'il y a un indice après le caractère courant - \let\SYS_nextaction\xs_execfirst + \IfSubStr\SYS_letter_list\SYS_current_char% ce qui est trouvé est dans la liste ? + {% + \SYS_test_subscript% tester s'il y a un indice après le caractère courant + \let\SYS_do_next\xs_execfirst }% - {\let\SYS_nextaction\xs_execsecond + {% + \let\SYS_do_next\xs_execsecond }% \exploregroups \fi - \SYS_nextaction - {\let\SYS_letterfound\SYS_currentchar - \IfSubStr\SYS_letterfound\SYSunder\relax{\xs_eaddtomacro\SYS_letterfound{\SYSunder{-1}}}% + \SYS_do_next + {% + \let\SYS_letter_found\SYS_current_char + \IfSubStr\SYS_letter_found\SYS_underscore\relax{\xs_eaddtomacro\SYS_letter_found{\SYS_underscore{-1}}}% }% - {\xs_ifx{\SYS_currentfindletter\empty}{}{\SYS_findletter_i}% + {% + \xs_ifx{\SYS_current_letter\empty} + {} + {\SYS_find_letter_i}% }% } -% teste si \SYS_currentfindletter commence par "_" et si oui, rajoute les 2 caractères à \SYS_currentchar et les enlève à \SYS_currentfindletter -\def\SYS_testsubscript{% +% teste si \SYS_current_letter commence par "_" et si oui, rajoute _ + argument suivant à \SYS_current_char et les enlève à \SYS_current_letter +\def\SYS_test_subscript{% TODO : à vérifier et à tester \noexploregroups - \IfBeginWith\SYS_currentfindletter\SYSunder - {\StrGobbleLeft\SYS_currentfindletter1[\SYS_currentletterafter]% - \exploregroups - \StrRemoveBraces\SYS_currentletterafter[\SYS_currentletterafter]% - \IfInteger\SYS_currentletterafter - {\xs_ifnum{\SYS_currentletterafter=-1 } - {\errmessage{L'indice ne doit pas etre -1.}} - {}% - }% - {\errmessage{L'indice n'est pas un nombre entier !}% - }% - \xs_eeaddtomacro\SYS_currentchar{\expandafter\SYSunder\expandafter{\number\SYS_currentletterafter}}% Bug 0.31 -> corrigé 0.32: si espace après l'inbdice : supprimé + \IfBeginWith\SYS_current_letter\SYS_underscore + {% + \xs_eearg{\def\SYS_current_letter}{\expandafter\xs_gobarg\SYS_current_letter}% enlève le "_" + \expandafter\SYS_test_subscript_a\SYS_current_letter\_nil } {}% \exploregroups } -% insère l'inconnue dans la sc #1 à sa place dans \SYS_letterlist -\def\SYS_insletter#1{% - \IfSubStr\SYS_letterlist{#1}% +\def\SYS_test_subscript_a#1{% #1=indice + \IfInteger{#1} + {} + {\errmessage{L'indice non entier '\detokenize{#1}' est pris comme '\integerpart'.}}% + \xs_eeaddtomacro\SYS_current_char{\expandafter\SYS_underscore\expandafter{\integerpart}}% + \xs_gobtonil% mange ce qui est après l'indice +} + + +% insère l'inconnue dans la sc #1 à sa place dans \SYS_letter_list +\def\SYS_ins_letter#1{% + \IfSubStr\SYS_letter_list{#1}% {} - {\let\SYS_insunknown#1% - \StrChar{#1}3[\SYS_insnum]% - \StrRemoveBraces\SYS_insnum[\SYS_insnum]% - \StrChar{#1}1[\SYS_currentinsletter]% - \let\SYS_letterlist_left\empty - \let\SYS_letterlist_right\SYS_letterlist - \SYS_insletter_i + {% + \let\SYS_ins_unknown#1% + \StrChar{#1}3[\SYS_ins_num]% + \StrRemoveBraces\SYS_ins_num[\SYS_ins_num]% + \StrChar{#1}1[\SYS_current_ins_letter]% + \let\SYS_letter_list_left\empty + \let\SYS_letter_list_right\SYS_letter_list + \SYS_ins_letter_i }% } -\def\SYS_insletter_i{% - \xs_ifx{\SYS_letterlist_right\empty}% l'inconnue viendra à la fin de \SYS_letterlist - {\xs_eaddtomacro\SYS_letterlist_left\SYS_insunknown - \let\SYS_letterlist\SYS_letterlist_left +\def\SYS_ins_letter_i{% + \xs_ifx{\SYS_letter_list_right\empty}% l'inconnue viendra à la fin de \SYS_letter_list + {% + \xs_eaddtomacro\SYS_letter_list_left\SYS_ins_unknown + \let\SYS_letter_list\SYS_letter_list_left } - {\StrChar\SYS_letterlist_right1[\SYS_currentletter]% la lettre suivante - \xs_ifnum{\expandafter`\SYS_currentinsletter>\expandafter`\SYS_currentletter\relax}% lettre pas bonne ? - {\StrSplit\SYS_letterlist_right3\SYS_currentletter\SYS_letterlist_right - \xs_eaddtomacro\SYS_letterlist_left\SYS_currentletter - \SYS_insletter_i + {% + \StrChar\SYS_letter_list_right1[\SYS_currentletter]% la lettre suivante + \xs_ifnum{\expandafter`\SYS_current_ins_letter>\expandafter`\SYS_currentletter\relax}% lettre pas bonne ? + {% + \StrSplit\SYS_letter_list_right3\SYS_currentletter\SYS_letter_list_right + \xs_eaddtomacro\SYS_letter_list_left\SYS_currentletter + \SYS_ins_letter_i }% sinon - {\let\SYS_letterlist_right_right\SYS_letterlist_right - \let\SYS_letterlist_right_left\empty - \SYS_insletter_ii% + {% + \let\SYS_letter_list_right_right\SYS_letter_list_right + \let\SYS_letter_list_right_left\empty + \SYS_ins_letter_ii% }% }% } -\def\SYS_insletter_ii{% - \xs_ifx{\SYS_letterlist_right_right\empty} - {\let\SYS_letterlist\SYS_letterlist_left - \xs_eaddtomacro\SYS_letterlist\SYS_letterlist_right_left - \xs_eaddtomacro\SYS_letterlist\SYS_insunknown +\def\SYS_ins_letter_ii{% + \xs_ifx{\SYS_letter_list_right_right\empty} + {% + \let\SYS_letter_list\SYS_letter_list_left + \xs_eaddtomacro\SYS_letter_list\SYS_letter_list_right_left + \xs_eaddtomacro\SYS_letter_list\SYS_ins_unknown } - {\StrChar\SYS_letterlist_right_right1[\SYS_currentletter]% la lettre suivante - \xs_ifnum{\expandafter`\SYS_currentinsletter<\expandafter`\SYS_currentletter\relax}% est elle une autre ? - {\let\SYS_letterlist\SYS_letterlist_left - \xs_eaddtomacro\SYS_letterlist\SYS_letterlist_right_left - \xs_eaddtomacro\SYS_letterlist\SYS_insunknown - \xs_eaddtomacro\SYS_letterlist\SYS_letterlist_right_right + {% + \StrChar\SYS_letter_list_right_right1[\SYS_currentletter]% la lettre suivante + \xs_ifnum{\expandafter`\SYS_current_ins_letter<\expandafter`\SYS_currentletter\relax}% est elle une autre ? + {% + \let\SYS_letter_list\SYS_letter_list_left + \xs_eaddtomacro\SYS_letter_list\SYS_letter_list_right_left + \xs_eaddtomacro\SYS_letter_list\SYS_ins_unknown + \xs_eaddtomacro\SYS_letter_list\SYS_letter_list_right_right } - {\StrChar\SYS_letterlist_right_right3[\SYS_currentsubscript]% le prochain indice + {% + \StrChar\SYS_letter_list_right_right3[\SYS_currentsubscript]% le prochain indice \StrRemoveBraces\SYS_currentsubscript[\SYS_currentsubscript]% - \xs_ifnum{\SYS_insnum>\SYS_currentsubscript\relax}% est-il le bon, c'est-à-dire trop grand ? - {\StrSplit\SYS_letterlist_right_right3\SYS_currentletter\SYS_letterlist_right_right - \xs_eaddtomacro\SYS_letterlist_right_left\SYS_currentletter - \SYS_insletter_ii + \xs_ifnum{\SYS_ins_num>\SYS_currentsubscript\relax}% est-il le bon, c'est-à -dire trop grand ? + {% + \StrSplit\SYS_letter_list_right_right3\SYS_currentletter\SYS_letter_list_right_right + \xs_eaddtomacro\SYS_letter_list_right_left\SYS_currentletter + \SYS_ins_letter_ii } - {\let\SYS_letterlist\SYS_letterlist_left - \xs_eaddtomacro\SYS_letterlist\SYS_letterlist_right_left - \xs_eaddtomacro\SYS_letterlist\SYS_insunknown - \xs_eaddtomacro\SYS_letterlist\SYS_letterlist_right_right + {% + \let\SYS_letter_list\SYS_letter_list_left + \xs_eaddtomacro\SYS_letter_list\SYS_letter_list_right_left + \xs_eaddtomacro\SYS_letter_list\SYS_ins_unknown + \xs_eaddtomacro\SYS_letter_list\SYS_letter_list_right_right }% }% }% } % reconstruit le code du tableau qui sera dans le \halign -\def\SYS_buildsystem#1#2{% #1=no ligne, #2=no inconnue - \StrSplit\SYS_letterlist_tmp3\SYS_currentvariable\SYS_letterlist_tmp +\def\SYS_build_system#1#2{% #1=no ligne, #2=no inconnue + \StrSplit\SYS_letter_list_tmp3\SYS_currentvariable\SYS_letter_list_tmp \ifcsname SYS_sign_\detokenize\expandafter{\SYS_currentvariable}_#1\endcsname \xs_eearg\xs_ifx{\csname SYS_sign_\detokenize\expandafter{\SYS_currentvariable}_#1\endcsname+}% signe + ? - {\xs_ifnum{#2=1 }% première variable ? - {\xs_gobarg + {\xs_ifnum{#2=1 }% première variable ? + {% + \xs_gobarg } - {\ifSYS_firstterm% premier terme de l'équation ?' + {% + \ifSYS_first_term% premier terme de l'équation ?' \expandafter\xs_gobarg \else - \expandafter\SYS_execarg + \expandafter\SYS_id \fi }% } {\xs_ifnum{#2=1 } - {\expandafter\def\csname SYS_term_\detokenize\expandafter{\SYS_currentvariable}_#1\expandafter\expandafter\expandafter\endcsname + {% + \expandafter\def\csname SYS_term_\detokenize\expandafter{\SYS_currentvariable}_#1\expandafter\expandafter\expandafter\endcsname \expandafter\expandafter\expandafter{% \csname SYS_sign_\detokenize\expandafter{\SYS_currentvariable}_#1\expandafter\expandafter\expandafter\endcsname \csname SYS_term_\detokenize\expandafter{\SYS_currentvariable}_#1\endcsname}% \xs_gobarg } - {\SYS_execarg + {% + \SYS_id }% }% - {% - \SYS_addtotab{{}}% - \xs_eearg\SYS_addtotab{\csname SYS_sign_\detokenize\expandafter{\SYS_currentvariable}_#1\endcsname{}}% - }% - \SYS_firsttermfalse + {% + \SYS_add_to_tab{{}}% + \xs_eearg\SYS_add_to_tab{\csname SYS_sign_\detokenize\expandafter{\SYS_currentvariable}_#1\endcsname{}}% + }% + \SYS_first_termfalse \fi \unless\ifSYS_star \xs_ifnum{#2=1 } {} - {\SYS_addtotab&}% + {\SYS_add_to_tab&}% \fi \ifcsname SYS_term_\detokenize\expandafter{\SYS_currentvariable}_#1\endcsname - \xs_eearg\SYS_addtotab{\csname SYS_term_\detokenize\expandafter{\SYS_currentvariable}_#1\endcsname}% + \xs_eearg\SYS_add_to_tab{\csname SYS_term_\detokenize\expandafter{\SYS_currentvariable}_#1\endcsname}% \fi \unless\ifSYS_star - \SYS_addtotab&% + \SYS_add_to_tab&% \fi - \xs_ifnum{#2<\SYS_numberofvariable\relax} - {\xs_exparg{\SYS_buildsystem{#1}}{\number\numexpr#2+1}% + \xs_ifnum{#2<\SYS_number_of_variable\relax} + {% + \xs_exparg{\SYS_build_system{#1}}{\number\numexpr#2+1}% } - {\ifSYS_constterm + {% + \ifSYS_const_term \ifcsname SYS_sign_const_#1\endcsname% si le terme constant existe dans cette ligne - \SYS_addtotab{{}}% - \ifSYS_firstterm\else - \xs_eearg\SYS_addtotab{\csname SYS_sign_const_#1\endcsname}% + \SYS_add_to_tab{{}}% + \ifSYS_first_term\else + \xs_eearg\SYS_add_to_tab{\csname SYS_sign_const_#1\endcsname}% \fi - \SYS_addtotab{{}}% + \SYS_add_to_tab{{}}% \unless\ifSYS_star - \SYS_addtotab&% Bug 0.31 -> corrigé 0.32 + \SYS_add_to_tab&% Bug 0.31 -> corrigé 0.32 \fi - \xs_eearg\SYS_addtotab{\csname SYS_term_const_#1\endcsname}% + \xs_eearg\SYS_add_to_tab{\csname SYS_term_const_#1\endcsname}% \else \unless\ifSYS_star - \SYS_addtotab&% Bug 0.31 -> corrigé 0.32 + \SYS_add_to_tab&% Bug 0.31 -> corrigé 0.32 \fi \fi - \SYS_addtotab&% + \SYS_add_to_tab&% \fi - \ifcsname SYS_eqsign_#1\endcsname - \SYS_addtotab{{}}% - \xs_eearg\SYS_addtotab{\csname SYS_eqsign_#1\endcsname{}&}% - \xs_eearg\SYS_addtotab{\csname SYS_right_#1\endcsname}% + \ifcsname SYS_eq_sign_#1\endcsname + \SYS_add_to_tab{{}}% + \xs_eearg\SYS_add_to_tab{\csname SYS_eq_sign_#1\endcsname{}&}% + \xs_eearg\SYS_add_to_tab{\csname SYS_right_#1\endcsname}% \else - \SYS_addtotab&% + \SYS_add_to_tab&% \fi \saveexploremode\exploregroups - \ifcsname SYS_extracol_#1\endcsname - \SYS_addtotab&% - \expandafter\IfSubStr\csname SYS_extracol_#1\endcsname{**}% le contenu de l'extra col contient-il "**" ? - {\SYS_letcs\SYS_autonumarg{SYS_extracol_#1}% - \StrSubstitute\SYS_autonumarg{**}{\number\numexpr\SYSeqnum+#1-\SYS_eqnumber}[\SYS_currentautonum]% - \SYS_cslet{SYS_extracol_#1}\SYS_currentautonum + \ifcsname SYS_extra_col_#1\endcsname + \SYS_add_to_tab&% + \expandafter\IfSubStr\csname SYS_extra_col_#1\endcsname{**}% le contenu de l'extra col contient-il "**" ? + {% + \SYS_letcs\SYS_autonum_arg{SYS_extra_col_#1}% + \StrSubstitute\SYS_autonum_arg{**}{\number\numexpr\SYSeqnum+#1-\SYS_eqnumber}[\SYS_current_autonum]% + \SYS_cslet{SYS_extra_col_#1}\SYS_current_autonum \SYS_autonumtrue }% - {\expandafter\IfSubStr\csname SYS_extracol_#1\endcsname*% le contenu de l'extra col contient-il "*" ? - {\SYS_letcs\SYS_autonumarg{SYS_extracol_#1}% - \StrSubstitute\SYS_autonumarg*{\noexpand#1}[\SYS_currentautonum]% - \SYS_cslet{SYS_extracol_#1}\SYS_currentautonum + {% + \expandafter\IfSubStr\csname SYS_extra_col_#1\endcsname*% le contenu de l'extra col contient-il "*" ? + {% + \SYS_letcs\SYS_autonum_arg{SYS_extra_col_#1}% + \StrSubstitute\SYS_autonum_arg*{\noexpand#1}[\SYS_current_autonum]% + \SYS_cslet{SYS_extra_col_#1}\SYS_current_autonum \SYS_autonumtrue }% - {\ifSYS_autonum - \IfSubStr\SYS_autonumarg{**}% - {\StrSubstitute\SYS_autonumarg{**}{\number\numexpr\SYSeqnum+#1-\SYS_eqnumber}[\SYS_currentautonum]}% - {\StrSubstitute\SYS_autonumarg*{\noexpand#1}[\SYS_currentautonum]}% - \xs_exparg\SYS_addtotab\SYS_currentautonum + {% + \ifSYS_autonum + \IfSubStr\SYS_autonum_arg{**}% + {\StrSubstitute\SYS_autonum_arg{**}{\number\numexpr\SYSeqnum+#1-\SYS_eqnumber}[\SYS_current_autonum]}% + {\StrSubstitute\SYS_autonum_arg*{\noexpand#1}[\SYS_current_autonum]}% + \xs_exparg\SYS_add_to_tab\SYS_current_autonum \fi }% }% - \xs_eearg\SYS_addtotab{\csname SYS_extracol_#1\endcsname}% + \xs_eearg\SYS_add_to_tab{\csname SYS_extra_col_#1\endcsname}% \else% pas d'extra colonne pour cette ligne ? \ifSYS_autonum% mais si il y un autonum - \SYS_addtotab&% - \IfSubStr\SYS_autonumarg{**}% - {\StrSubstitute\SYS_autonumarg{**}{\number\numexpr\SYSeqnum+#1-\SYS_eqnumber}[\SYS_currentautonum]}% - {\StrSubstitute\SYS_autonumarg*{\noexpand#1}[\SYS_currentautonum]}% - \xs_exparg\SYS_addtotab\SYS_currentautonum + \SYS_add_to_tab&% + \IfSubStr\SYS_autonum_arg{**}% + {\StrSubstitute\SYS_autonum_arg{**}{\number\numexpr\SYSeqnum+#1-\SYS_eqnumber}[\SYS_current_autonum]}% + {\StrSubstitute\SYS_autonum_arg*{\noexpand#1}[\SYS_current_autonum]}% + \xs_exparg\SYS_add_to_tab\SYS_current_autonum \fi \fi \restoreexploremode \xs_ifnum{#1<\SYS_eqnumber\relax} - {\SYS_addtotab\cr - \SYS_firsttermtrue - \let\SYS_letterlist_tmp\SYS_letterlist - \xs_exparg\SYS_buildsystem{\number\numexpr#1+1}{1}% + {% + \SYS_add_to_tab\cr + \SYS_first_termtrue + \let\SYS_letter_list_tmp\SYS_letter_list + \xs_exparg\SYS_build_system{\number\numexpr#1+1}{1}% }% fin de l'alignement - {\SYS_addtotab{\SYS_strutdown\cr}% + {% + \SYS_add_to_tab{\SYS_strutdown\cr}% }% }% } -% ajoute "_{-1}" à tous les tokens de #1 qui n'ont pas un indice -\def\SYS_scanletterlist#1{% - \let\SYS_letterlist\empty - \def\SYS_lettersremaining{#1}% - \SYS_scanletterlist_i +% ajoute "_{-1}" à tous les tokens de #1 qui n'ont pas un indice +\def\SYS_scan_letter_list#1{% + \let\SYS_letter_list\empty + \def\SYS_letters_remaining{#1}% + \SYS_scan_letter_list_i } -\def\SYS_scanletterlist_i{% - \StrSplit\SYS_lettersremaining1\SYS_currentchar\SYS_lettersremaining - \xs_eaddtomacro\SYS_letterlist\SYS_currentchar - \IfBeginWith\SYS_lettersremaining\SYSunder - {\StrChar\SYS_lettersremaining2[\SYS_currentchar]% - \StrRemoveBraces\SYS_currentchar[\SYS_currentchar]% - \xs_eeaddtomacro\SYS_letterlist{\expandafter\SYSunder\expandafter{\SYS_currentchar}}% - \StrGobbleLeft\SYS_lettersremaining2[\SYS_lettersremaining]% +\def\SYS_scan_letter_list_i{% + \StrSplit\SYS_letters_remaining1\SYS_current_char\SYS_letters_remaining + \xs_eaddtomacro\SYS_letter_list\SYS_current_char + \IfBeginWith\SYS_letters_remaining\SYS_underscore + {% + \StrChar\SYS_letters_remaining2[\SYS_current_char]% + \StrRemoveBraces\SYS_current_char[\SYS_current_char]% + \xs_eeaddtomacro\SYS_letter_list{\expandafter\SYS_underscore\expandafter{\SYS_current_char}}% + \StrGobbleLeft\SYS_letters_remaining2[\SYS_letters_remaining]% }% - {\xs_eaddtomacro\SYS_letterlist{\SYSunder{-1}}% + {% + \xs_eaddtomacro\SYS_letter_list{\SYS_underscore{-1}}% }% - \xs_ifx{\SYS_lettersremaining\empty} + \xs_ifx{\SYS_letters_remaining\empty} {} - {\SYS_scanletterlist_i}% + {\SYS_scan_letter_list_i}% } \def\sysdelim#1#2{\def\SYS_delim_left{\left#1}\def\SYS_delim_right{\right#2}} @@ -547,132 +615,141 @@ \catcode`\_8 \expandarg\noexploregroups \setbox0 \hbox{$($}% - \edef\SYS_strutup {\vrule depth0pt width0pt height\dimexpr\ht0 +\SYS_extrastrutdim\relax}% - \edef\SYS_strutdown{\vrule height0pt width0pt depth\dimexpr\dp0 +\SYS_extrastrutdim\relax}% - \SYS_cslet++\SYS_cslet--% + \edef\SYS_strutup {\vrule depth0pt width0pt height\the\dimexpr\ht0 +\SYS_dim_extrastrut\relax}% + \edef\SYS_strutdown{\vrule height0pt width0pt depth\the\dimexpr\dp0 +\SYS_dim_extrastrut\relax}% + \SYS_cslet++% + \SYS_cslet--% \xs_testopt\SYS_systeme_ii{}% } \def\SYS_systeme_ii[#1]{% \xs_ifempty{#1} - {\let\SYS_letterlist\empty - \SYS_sortvariabletrue + {% + \let\SYS_letter_list\empty + \SYS_sort_variabletrue } - {\SYS_scanletterlist{#1}% ajoute des _{-1} si besoin - \SYS_sortvariablefalse + {% + \SYS_scan_letter_list{#1}% ajoute des _{-1} si besoin + \SYS_sort_variablefalse }% - \SYS_consttermfalse - \xs_exparg{\xs_testopt\SYS_systeme_iii}{\SYS_defaulteqsep}% + \SYS_const_termfalse + \xs_exparg{\xs_testopt\SYS_systeme_iii}{\SYS_default_eq_sep}% } \def\SYS_systeme_iii[#1]#2{% \def\SYS_systeme_iv##1#1##2\_nil{% \xs_ifempty{##1} - {\SYS_addtotab\cr}% on a une ligne vide - {\SYS_spliteqinterms{##1}}% analyser l'éq courante - \xs_ifempty{##2}% tant qu'il reste des équations + {\SYS_add_to_tab\cr}% on a une ligne vide + {\SYS_split_eq_in_terms{##1}}% analyser l'éq courante + \xs_ifempty{##2}% tant qu'il reste des équations {} - {\edef\SYS_eqnumber{\number\numexpr\SYS_eqnumber+1}% augmenter de 1 leur nombre + {% + \edef\SYS_eqnumber{\number\numexpr\SYS_eqnumber+1}% augmenter de 1 leur nombre \global\advance\SYSeqnum1 \SYS_systeme_iv##2\_nil% recommencer avec ce qu'il reste }% }% \global\advance\SYSeqnum1 \def\SYS_eqnumber{1}% - \ifdefined\SYS_autonumarg - \xs_ifx{\SYS_autonumarg\empty}% on initialise que si \SYS_autonumarg est vide - {\SYS_extracolfalse + \ifdefined\SYS_autonum_arg + \xs_ifx{\SYS_autonum_arg\empty}% on initialise que si \SYS_autonum_arg est vide + {% + \SYS_extra_colfalse \SYS_autonumfalse } {}% \else - \SYS_extracolfalse + \SYS_extra_colfalse \SYS_autonumfalse \fi - \SYS_systeme_iv#2#1\_nil% analyser toutes les équations et en faire des termes et des signes - \StrCount\SYS_letterlist\SYSunder[\SYS_numberofvariable]% - \SYS_systemecode{}\SYS_systempreamble{}% - \xs_exparg\SYS_makesyspreamble{\number\ifSYS_star1\else\SYS_numberofvariable\fi\space}% fabriquer le préambule du \halign - \SYS_firsttermtrue - \let\SYS_letterlist_tmp\SYS_letterlist - \SYS_buildsystem11% construire le système... - \ifdefined\SYS_substlist - \xs_ifx{\SYS_substlist\empty} + \SYS_systeme_iv#2#1\_nil% analyser toutes les équations et en faire des termes et des signes + \StrCount\SYS_letter_list\SYS_underscore[\SYS_number_of_variable]% + \SYS_code_toks{}\SYS_preamble_toks{}% + \xs_exparg\SYS_preamble{\number\ifSYS_star1\else\SYS_number_of_variable\fi\space}% fabriquer le préambule du \halign + \SYS_first_termtrue + \let\SYS_letter_list_tmp\SYS_letter_list + \SYS_build_system11% construire le système... + \ifdefined\SYS_subst_list + \xs_ifx{\SYS_subst_list\empty} {} - {\edef\SYS_systemcs{\the\SYS_systemecode}% - \SYS_substlist - \SYS_systemecode\expandafter{\SYS_systemcs}% + {% + \edef\SYS_system_cs{\the\SYS_code_toks}% + \SYS_subst_list + \SYS_code_toks\expandafter{\SYS_system_cs}% }% \fi - \csname SYS_\ifmmode execarg\else entermath\fi\endcsname - {\SYS_delim_left + \csname SYS_\ifmmode id\else enter_math\fi\endcsname + {% + \SYS_delim_left \vcenter{% \lineskiplimit=0pt \lineskip=0pt - \baselineskip\SYS_lineskipcoeff\normalbaselineskip - \halign\expandafter\expandafter\expandafter{\expandafter\the\expandafter\SYS_systempreamble\the\SYS_systemecode}% + \baselineskip\SYS_lineskip_coeff\normalbaselineskip + \halign\expandafter\expandafter\expandafter{\expandafter\the\expandafter\SYS_preamble_toks\the\SYS_code_toks}% }% \SYS_delim_right }% ...l'afficher en mode math \endgroup \ifnum0=`{\fi\iffalse}\fi - \unless\ifSYS_followautonum - \ifdefined\SYS_autonumarg - \let\SYS_autonumarg\empty% annule la numérotation auto + \unless\ifSYS_follow_autonum + \ifdefined\SYS_autonum_arg + \let\SYS_autonum_arg\empty% annule la numérotation auto \fi \fi } -% Construire le préambule du \halign -\def\SYS_makesyspreamble#1{% +% Construire le préambule du \halign +\def\SYS_preamble#1{% \begingroup \setbox0\hbox{${}+{}$}% - \edef\__{\endgroup\def\noexpand\SYS_signcolumn{\hbox to\the\wd0{\hss$########$\hss}}}% colonne de largeur imposée Bugfix 0.34 - \__ + \expanded{\endgroup\def\noexpand\SYS_signcolumn{\hbox to\the\wd0{\hss$####$\hss}}}% colonne de largeur imposée Bugfix 0.34 \def\SYS_preamblenum{#1}% - \SYS_makesyspreamble_i1% + \SYS_preamble_i1% } -\def\SYS_makesyspreamble_i#1{% +\def\SYS_preamble_i#1{% \xs_ifnum{#1<\SYS_preamblenum\relax}% tant qu'il reste des variables - {\SYS_xaddtotok\SYS_systempreamble{\SYS_leftleft$##$\SYS_leftright&\hfil\SYS_signspace\SYS_signcolumn\SYS_signspace\hfil&}% une colonne pour le terme et une pour le signe (de largeur imposée Bugfix 0.34) - \xs_exparg\SYS_makesyspreamble_i{\number\numexpr#1+1}% + {% + \SYS_xaddtotok\SYS_preamble_toks{\SYS_leftleft$##$\SYS_leftright&\hfil\SYS_sign_space\SYS_signcolumn\SYS_sign_space\hfil&}% une colonne pour le terme et une pour le signe (de largeur imposée Bugfix 0.34) + \xs_exparg\SYS_preamble_i{\number\numexpr#1+1}% } - {\ifSYS_constterm - \SYS_xaddtotok\SYS_systempreamble{\SYS_leftleft$##$\SYS_leftright&\hfil\SYS_signspace\SYS_signcolumn\SYS_signspace\hfil&}% une colonne pour le terme constant et son signe (de largeur imposée Bugfix 0.34) + {% + \ifSYS_const_term + \SYS_xaddtotok\SYS_preamble_toks{\SYS_leftleft$##$\SYS_leftright&\hfil\SYS_sign_space\SYS_signcolumn\SYS_sign_space\hfil&}% une colonne pour le terme constant et son signe (de largeur imposée Bugfix 0.34) \fi - \SYS_xaddtotok\SYS_systempreamble{\SYS_leftleft$##$\SYS_leftright&\hfil\SYS_eqspace$##$\SYS_eqspace\hfil&\SYS_rightleft$##$\SYS_rightright\null}% ajouter 1 colonne pour le signe = et une pour le terme de droite - \ifSYS_extracol - \SYS_addtotok\SYS_systempreamble{&\SYS_extracolstart##\SYS_extracolend\hfil\null}% la colonne supplémentaire (pas de mode math) + \SYS_xaddtotok\SYS_preamble_toks{\SYS_leftleft$##$\SYS_leftright&\hfil\SYS_equal_space$##$\SYS_equal_space\hfil&\SYS_rightleft$##$\SYS_rightright\null}% ajouter 1 colonne pour le signe = et une pour le terme de droite + \ifSYS_extra_col + \SYS_addtotok\SYS_preamble_toks{&\SYS_extra_col_start##\SYS_extra_col_end\hfil\null}% la colonne supplémentaire (pas de mode math) \fi - \SYS_addtotok\SYS_systempreamble{\cr\SYS_strutup}% ajouter la fin du préambule et le strut de première ligne + \SYS_addtotok\SYS_preamble_toks{\cr\SYS_strutup}% ajouter la fin du préambule et le strut de première ligne }% } -\def\SYS_entermath#1{$\relax#1$} +\def\SYS_enter_math#1{$\relax#1$} -% définit les substitutions à faire dans le tableau avant l'affichage +% définit les substitutions à faire dans le tableau avant l'affichage \def\syssubstitute{% - \unless\ifdefined\SYS_substlist\let\SYS_substlist\empty\fi + \unless\ifdefined\SYS_subst_list\let\SYS_subst_list\empty\fi \SYS_substitute_i } \def\SYS_substitute_i#1{% \xs_ifempty{#1} {} - {\xs_addtomacro\SYS_substlist{\StrSubstitute\SYS_systemcs}% - \StrChar{\noexpand#1}1[\SYS_currentchar]\StrRemoveBraces\SYS_currentchar[\SYS_currentchar]% - \xs_eaddtomacro\SYS_substlist{\expandafter{\expandafter\noexpand\SYS_currentchar}}% - \StrChar{\noexpand#1}2[\SYS_currentchar]\StrRemoveBraces\SYS_currentchar[\SYS_currentchar]% - \xs_eaddtomacro\SYS_substlist{\expandafter{\expandafter\noexpand\SYS_currentchar}[\SYS_systemcs]}% - \xs_exparg\SYS_substitute_i{\SYS_gobtwoargs#1}% + {% + \xs_addtomacro\SYS_subst_list{\StrSubstitute\SYS_system_cs}% + \StrChar{\noexpand#1}1[\SYS_current_char]\StrRemoveBraces\SYS_current_char[\SYS_current_char]% + \xs_eaddtomacro\SYS_subst_list{\expandafter{\expandafter\noexpand\SYS_current_char}}% + \StrChar{\noexpand#1}2[\SYS_current_char]\StrRemoveBraces\SYS_current_char[\SYS_current_char]% + \xs_eaddtomacro\SYS_subst_list{\expandafter{\expandafter\noexpand\SYS_current_char}[\SYS_system_cs]}% + \xs_exparg\SYS_substitute_i{\SYS_gobtwo#1}% }% } % annule les substitutions -\def\sysnosubstitute{\let\SYS_substlist\empty} +\def\sysnosubstitute{\let\SYS_subst_list\empty} -\SYS_restorecatcode +\SYS_restore_catcode \endinput @@ -681,49 +758,53 @@ ###################################################################### v0.1 27/02/2011 - - Première version publique sur le CTAN. + - Première version publique sur le CTAN. ---------------------------------------------------------------------- v0.2 08/03/2011 - Le premier argument optionnel met en place de nouvelles - fonctionnalités. - - Possibilité d'avoir des inconnues indicées. - - Mise en place d'une colonne supplémentaire et d'une - numérotation automatique. - - La commande étoilée \systeme* dégrade l'alignement pour ne - plus prendre en compte que les signes d'égalité. + fonctionnalités. + - Possibilité d'avoir des inconnues indicées. + - Mise en place d'une colonne supplémentaire et d'une + numérotation automatique. + - La commande étoilée \systeme* dégrade l'alignement pour ne + plus prendre en compte que les signes d'égalité. - Une substitution est possible en fin de traitement, juste - avant d'afficher le système. + avant d'afficher le système. ---------------------------------------------------------------------- v0.2a 15/05/2011 - - Bug corrigé lorsque les termes comportent des accolades. + - Bug corrigé lorsque les termes comportent des accolades. ---------------------------------------------------------------------- v0.2b 23/06/2011 - - La commande \setdelim permet de modifier les délimiteurs - extensibles placés de part et d'autre du système. + - La commande \setdelim permet de modifier les délimiteurs + extensibles placés de part et d'autre du système. ---------------------------------------------------------------------- v0.3 21/12/2013 - Un terme constant est permis dans le membre de gauche. ---------------------------------------------------------------------- v0.31 01/01/2018 - - Il manquait un "&" après le terme constant, merci à Thomas Soll - de l'avoir signalé. + - Il manquait un "&" après le terme constant, merci à Thomas Soll + de l'avoir signalé. ---------------------------------------------------------------------- v0.32 13/01/2019 - - Correction d'un bug : les espaces étaient pris en compte dans + - Correction d'un bug : les espaces étaient pris en compte dans les noms des termes. - - Correction d'un bug : si version étoilée et terme constant dans - membre de gauche, défaut d'alignement. + - Correction d'un bug : si version étoilée et terme constant dans + membre de gauche, défaut d'alignement. - Nettoyage du code. ---------------------------------------------------------------------- v0.33 13/04/2020 - - possibilité de choisir un espacement avant et après les signes - + et - avec \syssignspace{<skip>}. De même pour = avec + - possibilité de choisir un espacement avant et après les signes + + et - avec \syssignspace{<skip>}. De même pour = avec \syseqspace{<skip>} - - possibilité de choisir l'alignement des colonnes des termes à - gauche du signe = et celle à droite avec \sysalign{x,y} où + - possibilité de choisir l'alignement des colonnes des termes à + gauche du signe = et celle à droite avec \sysalign{x,y} où x et y sont "c", "r", ou "l" ---------------------------------------------------------------------- v0.34 3/05/2020 - bugfix : la largeur des colonnes contenant les signes est - désormais imposée (évite une incohérence à l'affichage en cas - de colonne vide)
\ No newline at end of file + désormais imposée (évite une incohérence à l'affichage en cas + de colonne vide) +---------------------------------------------------------------------- +v0.35 16/02/2025 + - bugfix : ce qui est après un indice est correctement pris en + compte
\ No newline at end of file diff --git a/Master/texmf-dist/tex/generic/tex-ini-files/dviluatex.ini b/Master/texmf-dist/tex/generic/tex-ini-files/dviluatex.ini index 957950e8faa..a33c0d1032c 100644 --- a/Master/texmf-dist/tex/generic/tex-ini-files/dviluatex.ini +++ b/Master/texmf-dist/tex/generic/tex-ini-files/dviluatex.ini @@ -1,4 +1,4 @@ -% tex-ini-files 20223-11-17: dvilualatex.ini +% tex-ini-files 2023-11-17: dvilualatex.ini \let\dvimode\relax \input luatex.ini diff --git a/Master/texmf-dist/tex/generic/tex-ini-files/luatex.ini b/Master/texmf-dist/tex/generic/tex-ini-files/luatex.ini index 0dbd95744a8..58f6be433c2 100644 --- a/Master/texmf-dist/tex/generic/tex-ini-files/luatex.ini +++ b/Master/texmf-dist/tex/generic/tex-ini-files/luatex.ini @@ -1,4 +1,4 @@ -% tex-ini-files 20223-11-17: luatex.ini +% tex-ini-files 2023-11-17: luatex.ini % Karl Berry, originally written 2008. Public domain. % PDF output by default. diff --git a/Master/texmf-dist/tex/generic/tex-ini-files/luatexconfig.tex b/Master/texmf-dist/tex/generic/tex-ini-files/luatexconfig.tex index 28fbc6644e3..c3b142c64c4 100644 --- a/Master/texmf-dist/tex/generic/tex-ini-files/luatexconfig.tex +++ b/Master/texmf-dist/tex/generic/tex-ini-files/luatexconfig.tex @@ -1,4 +1,4 @@ -% tex-ini-files 20223-11-17: luatexconfig.tex +% tex-ini-files 2023-11-17: luatexconfig.tex % Load shared (PDF) settings in LuaTeX diff --git a/Master/texmf-dist/tex/generic/tex-ini-files/luatexiniconfig.tex b/Master/texmf-dist/tex/generic/tex-ini-files/luatexiniconfig.tex index 1a832e09a5c..9dee0ac5663 100644 --- a/Master/texmf-dist/tex/generic/tex-ini-files/luatexiniconfig.tex +++ b/Master/texmf-dist/tex/generic/tex-ini-files/luatexiniconfig.tex @@ -1,4 +1,4 @@ -% tex-ini-files 20223-11-17: luatexiniconfig.tex +% tex-ini-files 2023-11-17: luatexiniconfig.tex % Read for plain luatex formats (luatex.ini, dviluatex.ini). % Assumes LuaTeX 0.39.x or greater. diff --git a/Master/texmf-dist/tex/generic/tex-ini-files/pdftexconfig.tex b/Master/texmf-dist/tex/generic/tex-ini-files/pdftexconfig.tex index 7a66e1f614f..414b250c984 100644 --- a/Master/texmf-dist/tex/generic/tex-ini-files/pdftexconfig.tex +++ b/Master/texmf-dist/tex/generic/tex-ini-files/pdftexconfig.tex @@ -1,4 +1,4 @@ -% tex-ini-files 20223-11-17: pdftexconfig.tex +% tex-ini-files 2023-11-17: pdftexconfig.tex % Load shared (PDF) settings in pdfTeX @@ -9,8 +9,8 @@ \pdfpageheight = 297 true mm \pdfpagewidth = 210 true mm -% Enable PDF 1.5 output and thus more compression -\pdfminorversion = 5 +% Enable PDF 1.7 output and thus more compression +\pdfminorversion = 7 \pdfobjcompresslevel = 2 % Low-level settings unlikely ever to need to change diff --git a/Master/texmf-dist/tex/generic/tex-ini-files/pdfxmltex.ini b/Master/texmf-dist/tex/generic/tex-ini-files/pdfxmltex.ini index d951032d257..692166f0706 100644 --- a/Master/texmf-dist/tex/generic/tex-ini-files/pdfxmltex.ini +++ b/Master/texmf-dist/tex/generic/tex-ini-files/pdfxmltex.ini @@ -1,4 +1,4 @@ -% tex-ini-files 20223-11-17: pdfxmltex.ini +% tex-ini-files 2023-11-17: pdfxmltex.ini % public domain. \let\primitivedump=\dump diff --git a/Master/texmf-dist/tex/generic/tex-ini-files/xetex.ini b/Master/texmf-dist/tex/generic/tex-ini-files/xetex.ini index 32ccad222ba..f3f4d8970b6 100644 --- a/Master/texmf-dist/tex/generic/tex-ini-files/xetex.ini +++ b/Master/texmf-dist/tex/generic/tex-ini-files/xetex.ini @@ -1,4 +1,4 @@ -% tex-ini-files 20223-11-17: xetex.ini +% tex-ini-files 2023-11-17: xetex.ini % Public domain. Originally by Jonathan Kew. diff --git a/Master/texmf-dist/tex/generic/tex-ini-files/xmltex.ini b/Master/texmf-dist/tex/generic/tex-ini-files/xmltex.ini index bdefa95c6e6..89edf05fe03 100644 --- a/Master/texmf-dist/tex/generic/tex-ini-files/xmltex.ini +++ b/Master/texmf-dist/tex/generic/tex-ini-files/xmltex.ini @@ -1,4 +1,4 @@ -% tex-ini-files 20223-11-17: xmltex.ini +% tex-ini-files 2023-11-17: xmltex.ini % public domain. \let\primitivedump=\dump diff --git a/Master/texmf-dist/tex/generic/tex4ht/IEEEtran.4ht b/Master/texmf-dist/tex/generic/tex4ht/IEEEtran.4ht index 99472b5b71f..6cdd3681200 100644 --- a/Master/texmf-dist/tex/generic/tex4ht/IEEEtran.4ht +++ b/Master/texmf-dist/tex/generic/tex4ht/IEEEtran.4ht @@ -1,35 +1,32 @@ -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% IEEEtran.4ht 2009-05-21-09:32 % -% Copyright (C) 2009 Eitan M. Gurari % -% % -% This work 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. % -% % -% This work has the LPPL maintenance status "maintained".% -% % -% This Current Maintainer of this work % -% is Eitan M. Gurari. % -% % -% If you modify this program your changing its signature % -% with a directive of the following form will be % -% appreciated. % -% \message{signature} % -% % -% gurari@cse.ohio-state.edu % -% http://www.cse.ohio-state.edu/~gurari % -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\immediate\write-1{version 2009-05-21-09:32} +% IEEEtran.4ht (2024-12-08-07:56), generated from tex4ht-4ht.tex +% Copyright (C) 2009-2009 Eitan M. Gurari +% Copyright 2009-2024 TeX Users Group +% +% This work 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 +% https://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. +% +% This work has the LPPL maintenance status "maintained". +% +% The Current Maintainer of this work +% is the TeX4ht Project <https://tug.org/tex4ht>. +% +% If you modify this program, changing the +% version identification would be appreciated. +\immediate\write-1{version 2024-12-08-07:56} \let\twocolumn\onecolumn \@restonecoltrue\onecolumn \let\@restonecolfalse\@restonecoltrue +\ifCLASSOPTIONcompsoc\else +\def\thesubsection{\thesection-\Alph{subsection}} % I-A +\fi + \Hinput{IEEEtran} \endinput diff --git a/Master/texmf-dist/tex/generic/tex4ht/amsfonts.4ht b/Master/texmf-dist/tex/generic/tex4ht/amsfonts.4ht index 71602474401..fca71f54440 100644 --- a/Master/texmf-dist/tex/generic/tex4ht/amsfonts.4ht +++ b/Master/texmf-dist/tex/generic/tex4ht/amsfonts.4ht @@ -1,37 +1,30 @@ -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% amsfonts.4ht 2009-05-21-09:32 % -% Copyright (C) 2001--2009 Eitan M. Gurari % -% % -% This work 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. % -% % -% This work has the LPPL maintenance status "maintained".% -% % -% This Current Maintainer of this work % -% is Eitan M. Gurari. % -% % -% If you modify this program your changing its signature % -% with a directive of the following form will be % -% appreciated. % -% \message{signature} % -% % -% gurari@cse.ohio-state.edu % -% http://www.cse.ohio-state.edu/~gurari % -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\immediate\write-1{version 2009-05-21-09:32} +% amsfonts.4ht (2024-11-03-05:51), generated from tex4ht-4ht.tex +% Copyright 2001-2009 Eitan M. Gurari +% Copyright 2009-2024 TeX Users Group +% +% This work 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 +% https://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. +% +% This work has the LPPL maintenance status "maintained". +% +% The Current Maintainer of this work +% is the TeX4ht Project <https://tug.org/tex4ht>. +% +% If you modify this program, changing the +% version identification would be appreciated. +\immediate\write-1{version 2024-11-03-05:51} \NewConfigure{mathbb}{2} -\def\:temp#1{{\a:mathbb \o:@mathbb:{#1}\b:mathbb}} -\HLet\@mathbb\:temp +\def\:temp#1{{\a:mathbb \o:mathbb:{#1}\b:mathbb}} +\HLet\mathbb\:temp \NewConfigure{mathfrak}{2} -\def\:temp#1{{\a:mathfrak \o:@mathfrak:{#1}\b:mathfrak}} -\HLet\@mathfrak\:temp +\def\:temp#1{{\a:mathfrak \o:mathfrak:{#1}\b:mathfrak}} +\HLet\mathfrak\:temp \Hinput{amsfonts} \endinput diff --git a/Master/texmf-dist/tex/generic/tex4ht/amsmath.4ht b/Master/texmf-dist/tex/generic/tex4ht/amsmath.4ht index 4367f0d7c74..be40007444f 100644 --- a/Master/texmf-dist/tex/generic/tex4ht/amsmath.4ht +++ b/Master/texmf-dist/tex/generic/tex4ht/amsmath.4ht @@ -1,23 +1,23 @@ -% amsmath.4ht (2024-05-07-13:28), generated from tex4ht-4ht.tex +% amsmath.4ht (2025-01-08-13:38), generated from tex4ht-4ht.tex % Copyright 1997-2009 Eitan M. Gurari -% Copyright 2009-2024 TeX Users Group +% Copyright 2009-2025 TeX Users Group % % This work 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 +% https://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. % % This work has the LPPL maintenance status "maintained". % % The Current Maintainer of this work -% is the TeX4ht Project <http://tug.org/tex4ht>. +% is the TeX4ht Project <https://tug.org/tex4ht>. % % If you modify this program, changing the % version identification would be appreciated. -\immediate\write-1{version 2024-05-07-13:28} +\immediate\write-1{version 2025-01-08-13:38} \HRestore\cases \HRestore\matrix @@ -312,25 +312,32 @@ \RecallMkHalignConfig \restorecolumn@ \egroup \b:start@aligned} \HLet\endaligned\:tempc -\def\:temp{% - \let\@testopt\alignsafe@testopt - \futurelet\:temp\aligned:a} -\def\aligned:a{\ifx [\:temp \expandafter\aligned:b - \else \def\:temp{\aligned:b[c]}\expandafter\:temp \fi} -\def\aligned:b[#1]{% - \al:gned{aligned}{#1}\m@ne} -\HLet\aligned\:temp \def\reg:aligned{\reg:start@aligned} \NewConfigure{aligned}{6} -\def\:temp{\futurelet\:temp\alignedat:a} -\def\alignedat:a{\ifx [\:temp \expandafter\alignedat:b - \else \def\:temp{\alignedat:b[c]}\expandafter\:temp \fi} -\def\alignedat:b[#1]{% - \let\@testopt\alignsafe@testopt - \al:gned{alignedat}{#1}\m@ne} -\HLet\alignedat\:temp +\def\Hlcr{z} +%% \Hlcr macro stores math environment optional possitionig argument +%% and can be used for custom setup. For example: +%% \Configure{gathered} +%% {\HCode{<\a:mathml mtable\space displaystyle="true" +%% \mml:class="gathered"% +%% \if t\Hlcr\space\a:mathml align="axis 1"\fi% +%% \if b\Hlcr\space\a:mathml align="axis -1"\fi% +%% >}} +%% {}... + +\def\:temp#1{% + \def\Hlcr{#1}% + \let\@testopt\alignsafe@testopt + \expandafter\al:gned\expandafter{\@currenvir}{#1}} +\HLet\start@aligned\:temp + \def\reg:alignedat{\reg:start@aligned} \NewConfigure{alignedat}{6} +\def\gathered:a[#1]{\def\Hlcr{#1}\pic:MkHalign{gathered}[#1]} +\def\:temp{% + \kernel@ifnextchar[{\gathered:a}{\gathered:a[c]}% + } +\HLet\gathered\:temp \catcode`\#13 \catcode`\!6 \def\reg:gathered[!1]{% \RIfM@\else @@ -508,7 +515,8 @@ % \anc:lbl r{}% }} -\def\make@df@tag@@@#1{\gdef\df@tag{\tagform@{#1}% +\ExplSyntaxOn +\def\make@df@tag@@@#1{\gdef\df@tag{\tagform@{\tl_rescan:nn{}{#1}}% \toks@\@xp{\p@equation{#1}}\edef\@currentlabel{\the\toks@}% \let\cnt:currentlabel\@currentlabel \def\:@currentlabel{\ifx \cnt:currentlabel\@currentlabel @@ -516,6 +524,7 @@ % \anc:lbl r{}% }} +\ExplSyntaxOff \:CheckOption{new-accents} \if:Option \else \HLet\Hat\hat diff --git a/Master/texmf-dist/tex/generic/tex4ht/arydshln.4ht b/Master/texmf-dist/tex/generic/tex4ht/arydshln.4ht index 00ef03af65d..e597c71d11a 100644 --- a/Master/texmf-dist/tex/generic/tex4ht/arydshln.4ht +++ b/Master/texmf-dist/tex/generic/tex4ht/arydshln.4ht @@ -1,6 +1,6 @@ %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% arydshln.4ht (2022-03-21-13:43), generated from tex4ht-4ht.tex -% Copyright 2022 TeX Users Group +% arydshln.4ht (2024-06-23-13:56), generated from tex4ht-4ht.tex +% Copyright 2022-2024 TeX Users Group % % This work may be distributed and/or modified under the % conditions of the LaTeX Project Public License, either @@ -17,12 +17,13 @@ % % If you modify this program, changing the % version identification would be appreciated. -\immediate\write-1{version 2022-03-21-13:43} +\immediate\write-1{version 2024-06-23-13:56} % this is a copy of code that arydshln inserts to \@array \def\:new:array{\adl@everyvbox\everyvbox \everyvbox{\adl@arrayinit \the\adl@everyvbox \everyvbox\adl@everyvbox}% - \ifadl@inactive \adl@inactivate \else \adl@activate \fi + % this line may lead to errors if the document uses Colortbl: + % \ifadl@inactive \adl@inactivate \else \adl@activate \fi \let\adl@noalign\noalign} \ifcsname n:@array:\endcsname% if \@array was already patched by TeX4ht \let\orig:n@array\n:@array: diff --git a/Master/texmf-dist/tex/generic/tex4ht/babel-sty-hooks.4ht b/Master/texmf-dist/tex/generic/tex4ht/babel-sty-hooks.4ht index e3eebfddea4..dc4dcfb0753 100644 --- a/Master/texmf-dist/tex/generic/tex4ht/babel-sty-hooks.4ht +++ b/Master/texmf-dist/tex/generic/tex4ht/babel-sty-hooks.4ht @@ -1,5 +1,5 @@ % babel-sty-hooks.4ht, generated from tex4ht-4ht.tex -% Copyright 2022 TeX Users Group +% Copyright 2022-2024 TeX Users Group % % This work may be distributed and/or modified under the % conditions of the LaTeX Project Public License, either @@ -16,7 +16,7 @@ % % If you modify this program, changing the % version identification would be appreciated. -\immediate\write-1{version 2024-06-10-14:03} +\immediate\write-1{version 2024-06-20-13:26} \ifdefined\recall:sup \recall:sup diff --git a/Master/texmf-dist/tex/generic/tex4ht/bigfoot-hooks.4ht b/Master/texmf-dist/tex/generic/tex4ht/bigfoot-hooks.4ht new file mode 100644 index 00000000000..e89c60a5d7c --- /dev/null +++ b/Master/texmf-dist/tex/generic/tex4ht/bigfoot-hooks.4ht @@ -0,0 +1,24 @@ +% bigfoot-hooks.4ht (2024-11-05-12:30), generated from tex4ht-4ht.tex +% Copyright 2024 TeX Users Group +% +% This work 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. +% +% This work has the LPPL maintenance status "maintained". +% +% The Current Maintainer of this work +% is the TeX4ht Project <http://tug.org/tex4ht>. +% +% If you modify this program, changing the +% version identification would be appreciated. +\immediate\write-1{version 2024-11-05-12:30} + +\:dontusepackage{bigfoot} +\RequirePackage{manyfoot} +\endinput + diff --git a/Master/texmf-dist/tex/generic/tex4ht/bigfoot.4ht b/Master/texmf-dist/tex/generic/tex4ht/bigfoot.4ht new file mode 100644 index 00000000000..71c7bbe849d --- /dev/null +++ b/Master/texmf-dist/tex/generic/tex4ht/bigfoot.4ht @@ -0,0 +1,25 @@ +% bigfoot.4ht (2024-11-05-12:30), generated from tex4ht-4ht.tex +% Copyright 2024 TeX Users Group +% +% This work 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. +% +% This work has the LPPL maintenance status "maintained". +% +% The Current Maintainer of this work +% is the TeX4ht Project <http://tug.org/tex4ht>. +% +% If you modify this program, changing the +% version identification would be appreciated. +\immediate\write-1{version 2024-11-05-12:30} + + + +\Hinput{bigfoot} +\endinput + diff --git a/Master/texmf-dist/tex/generic/tex4ht/caption.4ht b/Master/texmf-dist/tex/generic/tex4ht/caption.4ht index 09501b5ff32..5cecd085c3b 100644 --- a/Master/texmf-dist/tex/generic/tex4ht/caption.4ht +++ b/Master/texmf-dist/tex/generic/tex4ht/caption.4ht @@ -1,23 +1,23 @@ -% caption.4ht (2022-11-22-14:29), generated from tex4ht-4ht.tex +% caption.4ht (2024-11-11-13:40), generated from tex4ht-4ht.tex % Copyright 2007-2009 Eitan M. Gurari -% Copyright 2009-2022 TeX Users Group +% Copyright 2009-2024 TeX Users Group % % This work 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 +% https://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. % % This work has the LPPL maintenance status "maintained". % % The Current Maintainer of this work -% is the TeX4ht Project <http://tug.org/tex4ht>. +% is the TeX4ht Project <https://tug.org/tex4ht>. % % If you modify this program, changing the % version identification would be appreciated. -\immediate\write-1{version 2022-11-22-14:29} +\immediate\write-1{version 2024-11-11-13:40} \let\sv:toclof\toclof \def\toclof#1#2#3{% @@ -45,6 +45,10 @@ }\fi% } +\ifdefined\cptA:\else +\c:def\cptA:{}\c:def\cptB:{}% +\c:def\cptC:{}\c:def\cptD:{} +\fi \long\def\@makecaption#1#2{% \xdef\continuedfloat@captype{\@captype}% \caption@make@above% diff --git a/Master/texmf-dist/tex/generic/tex4ht/chemfig.4ht b/Master/texmf-dist/tex/generic/tex4ht/chemfig.4ht index b2943a9df9e..f6bacc8438d 100644 --- a/Master/texmf-dist/tex/generic/tex4ht/chemfig.4ht +++ b/Master/texmf-dist/tex/generic/tex4ht/chemfig.4ht @@ -1,5 +1,5 @@ -% chemfig.4ht (2024-02-14-09:16), generated from tex4ht-4ht.tex -% Copyright 2024 TeX Users Group +% chemfig.4ht (2025-01-18-13:42), generated from tex4ht-4ht.tex +% Copyright 2024-2025 TeX Users Group % % This work may be distributed and/or modified under the % conditions of the LaTeX Project Public License, either @@ -16,7 +16,7 @@ % % If you modify this program, changing the % version identification would be appreciated. -\immediate\write-1{version 2024-02-14-09:16} +\immediate\write-1{version 2025-01-18-13:42} \ExplSyntaxOn \NewConfigure{chemname}{3} @@ -40,6 +40,13 @@ \HLet\CF_chemnameb\:tempa \ExplSyntaxOff +\NewConfigure{chemfigscheme}{2} +\Configure{chemfigscheme}{\Picture+{}}{\EndPicture} +\ExplSyntaxOn +\pend:def\schemestart{\a:chemfigscheme} +\append:def\CF_schemestop{\b:chemfigscheme} +\ExplSyntaxOff + \Hinput{chemfig} \endinput diff --git a/Master/texmf-dist/tex/generic/tex4ht/colortbl-hooks.4ht b/Master/texmf-dist/tex/generic/tex4ht/colortbl-hooks.4ht new file mode 100644 index 00000000000..0f3636af023 --- /dev/null +++ b/Master/texmf-dist/tex/generic/tex4ht/colortbl-hooks.4ht @@ -0,0 +1,52 @@ +% colortbl-hooks.4ht (2024-09-30-13:40), generated from tex4ht-4ht.tex +% Copyright 2024 TeX Users Group +% +% This work 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. +% +% This work has the LPPL maintenance status "maintained". +% +% The Current Maintainer of this work +% is the TeX4ht Project <http://tug.org/tex4ht>. +% +% If you modify this program, changing the +% version identification would be appreciated. +\immediate\write-1{version 2024-09-30-13:40} + +\:AtEndOfPackage{% +% default hline color is black +\def\hline:color{000} +% save rule color in format usable in CSS +\newcommand\tmp:arrayrulecolor[2][named]{% +\ifvoid\@arstrutbox% test if we are inside a tabular environment +\convertcolorspec{#1}{#2}{HTML}\:tmp\global\let\hline:color\:tmp% we are not +\else% +\noalign{\convertcolorspec{#1}{#2}{HTML}\:tmp\global\let\hline:color\:tmp}% we are +\fi +} +% \HLet doesn't work in the preamble, so we need to work around it +\let\o:arrayrulecolor:\arrayrulecolor +\let\arrayrulecolor\tmp:arrayrulecolor + +\def\convert:colorspec#1 #2 #3 #4{% + \edef\current:color{% + \ifx\relax#1\relax\else% + #1\ifx\relax#2\relax\else% + , #2\ifx\relax#3\relax\else% + , #3\ifx\relax#4\relax\else% + , #4% + \fi% + \fi% + \fi% + \fi% + }% +} + + +} + diff --git a/Master/texmf-dist/tex/generic/tex4ht/colortbl.4ht b/Master/texmf-dist/tex/generic/tex4ht/colortbl.4ht index 50543a2b952..38a37ff5840 100644 --- a/Master/texmf-dist/tex/generic/tex4ht/colortbl.4ht +++ b/Master/texmf-dist/tex/generic/tex4ht/colortbl.4ht @@ -1,23 +1,23 @@ -% colortbl.4ht (2022-07-03-14:21), generated from tex4ht-4ht.tex +% colortbl.4ht (2025-02-18-10:11), generated from tex4ht-4ht.tex % Copyright 1997-2009 Eitan M. Gurari -% Copyright 2009-2022 TeX Users Group +% Copyright 2009-2025 TeX Users Group % % This work 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 +% https://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. % % This work has the LPPL maintenance status "maintained". % % The Current Maintainer of this work -% is the TeX4ht Project <http://tug.org/tex4ht>. +% is the TeX4ht Project <https://tug.org/tex4ht>. % % If you modify this program, changing the % version identification would be appreciated. -\immediate\write-1{version 2022-07-03-14:21} +\immediate\write-1{version 2025-02-18-10:11} \RequirePackage{xcolor} @@ -70,20 +70,7 @@ \def\rowcolor{% \o:noalign:{\ifnum0=`}\fi \global\let\CT@do@color\CT@@do@color - \relax -\ifx\LT@head\Un:Def\else - \ifnum \HRow=0\relax - \expandafter\ifx\csname lt:sv\endcsname\relax - \HAssign\HRow = 1\relax - \ifvoid\LT@head - \ifvoid\LT@firsthead \else \HAdvance\HRow by 1\relax\fi - \else \HAdvance\HRow by 1\relax\fi - \else - \HAssign\HRow = \lt:sv \relax - \HAdvance\HRow by 1\relax - \fi -\fi\fi -% + % \@ifnextchar[\CT@rowa\CT@rowb} \def\CT@rowa[#1]#2{% \save:color#1 #2//% @@ -95,31 +82,8 @@ \gdef\CT@row@color{\CT@color{#1}}% \CT@rowc} \NewConfigure{rowcolor}{1} -% default hline color is black -\def\hline:color{000} -% save rule color in format usable in CSS -\newcommand\tmp:arrayrulecolor[2][named]{% -\ifvoid\@arstrutbox% test if we are inside a tabular environment -\convertcolorspec{#1}{#2}{HTML}\:tmp\global\let\hline:color\:tmp% we are not -\else% -\noalign{\convertcolorspec{#1}{#2}{HTML}\:tmp\global\let\hline:color\:tmp}% we are -\fi -} +\HRestore\arrayrulecolor \HLet\arrayrulecolor\tmp:arrayrulecolor -\def\convert:colorspec#1 #2 #3 #4{% - \edef\current:color{% - \ifx\relax#1\relax\else% - #1\ifx\relax#2\relax\else% - , #2\ifx\relax#3\relax\else% - , #3\ifx\relax#4\relax\else% - , #4% - \fi% - \fi% - \fi% - \fi% - }% -} - \def\save:color#1 #2//{% \convert:colorspec#2 {} {} {} {} \convertcolorspec{#1}{\current:color}{HTML}\tmp:col diff --git a/Master/texmf-dist/tex/generic/tex4ht/enumitem-hooks.4ht b/Master/texmf-dist/tex/generic/tex4ht/enumitem-hooks.4ht new file mode 100644 index 00000000000..e8f12ba46cb --- /dev/null +++ b/Master/texmf-dist/tex/generic/tex4ht/enumitem-hooks.4ht @@ -0,0 +1,28 @@ +% enumitem-hooks.4ht (2024-09-09-13:35), generated from tex4ht-4ht.tex +% Copyright 2024 TeX Users Group +% +% This work 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. +% +% This work has the LPPL maintenance status "maintained". +% +% The Current Maintainer of this work +% is the TeX4ht Project <http://tug.org/tex4ht>. +% +% If you modify this program, changing the +% version identification would be appreciated. +\immediate\write-1{version 2024-09-09-13:35} + +\:AtEndOfPackage{% +\def\enumitem:newlist{} +\def\:tempa#1#2#3#4{\concat:config\enumitem:newlist{\Configure{enumitemenv}{#2}}\o:enit@newlist{#1}{#2}{#3}{#4}} +\let\o:enit@newlist\enit@newlist +\let\enit@newlist\:tempa + +} + diff --git a/Master/texmf-dist/tex/generic/tex4ht/enumitem.4ht b/Master/texmf-dist/tex/generic/tex4ht/enumitem.4ht index acabf869b27..6bb2290d697 100644 --- a/Master/texmf-dist/tex/generic/tex4ht/enumitem.4ht +++ b/Master/texmf-dist/tex/generic/tex4ht/enumitem.4ht @@ -1,23 +1,23 @@ -% enumitem.4ht (2023-12-17-13:16), generated from tex4ht-4ht.tex +% enumitem.4ht (2024-09-09-13:35), generated from tex4ht-4ht.tex % Copyright 2009-2009 Eitan M. Gurari -% Copyright 2009-2023 TeX Users Group +% Copyright 2009-2024 TeX Users Group % % This work 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 +% https://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. % % This work has the LPPL maintenance status "maintained". % % The Current Maintainer of this work -% is the TeX4ht Project <http://tug.org/tex4ht>. +% is the TeX4ht Project <https://tug.org/tex4ht>. % % If you modify this program, changing the % version identification would be appreciated. -\immediate\write-1{version 2023-12-17-13:16} +\immediate\write-1{version 2024-09-09-13:35} \AddToHook{env/enumerate/end}{\ifx\enit@after\@empty\else% \let\enit:after\enit@after @@ -27,6 +27,15 @@ \fi} \def\enit@postlabel{} +\NewConfigure{enumitemenv}[1]{% +\def\a:enumitemenv{#1}% +\enumitem:newlistconfig +} +\NewConfigure{enumitemnewlist}[1]{ + \def\enumitem:newlistconfig{#1} + \enumitem:newlist +} + \Hinput{enumitem} \endinput diff --git a/Master/texmf-dist/tex/generic/tex4ht/esvect.4ht b/Master/texmf-dist/tex/generic/tex4ht/esvect.4ht new file mode 100644 index 00000000000..8fc583da580 --- /dev/null +++ b/Master/texmf-dist/tex/generic/tex4ht/esvect.4ht @@ -0,0 +1,25 @@ +% esvect.4ht (2024-08-02-14:24), generated from tex4ht-4ht.tex +% Copyright 2024 TeX Users Group +% +% This work 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. +% +% This work has the LPPL maintenance status "maintained". +% +% The Current Maintainer of this work +% is the TeX4ht Project <http://tug.org/tex4ht>. +% +% If you modify this program, changing the +% version identification would be appreciated. +\immediate\write-1{version 2024-08-02-14:24} + + + +\Hinput{esvect} +\endinput + diff --git a/Master/texmf-dist/tex/generic/tex4ht/fancyvrb.4ht b/Master/texmf-dist/tex/generic/tex4ht/fancyvrb.4ht index 4a6d75c1644..a63dd7942e3 100644 --- a/Master/texmf-dist/tex/generic/tex4ht/fancyvrb.4ht +++ b/Master/texmf-dist/tex/generic/tex4ht/fancyvrb.4ht @@ -1,4 +1,4 @@ -% fancyvrb.4ht (2024-03-27-14:07), generated from tex4ht-4ht.tex +% fancyvrb.4ht (2024-10-04-14:44), generated from tex4ht-4ht.tex % Copyright 1997-2009 Eitan M. Gurari % Copyright 2009-2024 TeX Users Group % @@ -6,18 +6,18 @@ % 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 +% https://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. % % This work has the LPPL maintenance status "maintained". % % The Current Maintainer of this work -% is the TeX4ht Project <http://tug.org/tex4ht>. +% is the TeX4ht Project <https://tug.org/tex4ht>. % % If you modify this program, changing the % version identification would be appreciated. -\immediate\write-1{version 2024-03-27-14:07} +\immediate\write-1{version 2024-10-04-14:44} \pend:def\FV@FormattingPrep{\let\fv:color\empty @@ -45,7 +45,11 @@ \ifx \fv:color\empty \else{% \let\HColor\fv:color \a:fancyvrbcolor% }\fi - \ifx \FancyVerbFillColor\relax \else% + \ifx \FancyVerbFillColor\relax \ifx\FancyVerbBackgroundColor\relax\else% + \ifdefined\FancyVerbBackgroundColor% this extra check is needed for \BVerbatimInput + \:fvcolor \b:fancyvrbcolor \color{\FancyVerbBackgroundColor}!*?: % + \fi% + \fi\else% \:fvcolor \b:fancyvrbcolor \FancyVerbFillColor!*?: % \fi \ifx \FancyVerbRuleColor\relax \else% diff --git a/Master/texmf-dist/tex/generic/tex4ht/fontawesome5.4ht b/Master/texmf-dist/tex/generic/tex4ht/fontawesome5.4ht index 9bb9f9438bf..7f0f40d4b48 100644 --- a/Master/texmf-dist/tex/generic/tex4ht/fontawesome5.4ht +++ b/Master/texmf-dist/tex/generic/tex4ht/fontawesome5.4ht @@ -1,5 +1,5 @@ -% fontawesome5.4ht (2021-05-06-14:39), generated from tex4ht-4ht.tex -% Copyright 2021 TeX Users Group +% fontawesome5.4ht (2024-07-03-13:28), generated from tex4ht-4ht.tex +% Copyright 2021-2024 TeX Users Group % % This work may be distributed and/or modified under the % conditions of the LaTeX Project Public License, either @@ -16,18 +16,19 @@ % % If you modify this program, changing the % version identification would be appreciated. -\immediate\write-1{version 2021-05-06-14:39} +\immediate\write-1{version 2024-07-03-13:28} \NewConfigure{fontawesome}{2} \ExplSyntaxOn \cs_new_protected:Nn\temp:nn{% +\def\:fontawesomeicon{#2}% to be used in the alt text \a:fontawesome% \o:fontawesome_use_icon:nn:{#1}{#2} \b:fontawesome} \HLet\fontawesome_use_icon:nn\temp:nn \ExplSyntaxOff -\Configure{fontawesome}{\Picture+{}}{\EndPicture} +\Configure{fontawesome}{\Picture+[icon: \:fontawesomeicon]{}}{\EndPicture} \Hinput{fontawesome5} \endinput diff --git a/Master/texmf-dist/tex/generic/tex4ht/french.4ht b/Master/texmf-dist/tex/generic/tex4ht/french.4ht index adbaac273f9..47b72bbb8b2 100644 --- a/Master/texmf-dist/tex/generic/tex4ht/french.4ht +++ b/Master/texmf-dist/tex/generic/tex4ht/french.4ht @@ -1,30 +1,23 @@ -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% french.4ht 2009-05-21-09:32 % -% Copyright (C) 1999--2009 Eitan M. Gurari % -% % -% This work 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. % -% % -% This work has the LPPL maintenance status "maintained".% -% % -% This Current Maintainer of this work % -% is Eitan M. Gurari. % -% % -% If you modify this program your changing its signature % -% with a directive of the following form will be % -% appreciated. % -% \message{signature} % -% % -% gurari@cse.ohio-state.edu % -% http://www.cse.ohio-state.edu/~gurari % -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\immediate\write-1{version 2009-05-21-09:32} +% french.4ht 2024-11-03-05:51, generated from tex4ht-4ht.tex +% Copyright 1999-2009 Eitan M. Gurari +% Copyright 2009-2024 TeX Users Group +% +% This work 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 +% https://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. +% +% This work has the LPPL maintenance status "maintained". +% +% The Current Maintainer of this work +% is the TeX4ht Project <https://tug.org/tex4ht>. +% +% If you modify this program, changing the +% version identification would be appreciated. +\immediate\write-1{version 2024-11-03-05:51} \expandafter\ifx \csname @s@ORI\endcsname \relax \else @@ -55,6 +48,8 @@ \Configure{special}{\csname @s@ORI\endcsname} \fi +\DeclareRobustCommand*{\FB@emptypart}{} + \Hinput{french} \endinput diff --git a/Master/texmf-dist/tex/generic/tex4ht/fvextra.4ht b/Master/texmf-dist/tex/generic/tex4ht/fvextra.4ht new file mode 100644 index 00000000000..342720502fc --- /dev/null +++ b/Master/texmf-dist/tex/generic/tex4ht/fvextra.4ht @@ -0,0 +1,33 @@ +% fvextra.4ht (2024-11-27-13:11), generated from tex4ht-4ht.tex +% Copyright 2024 TeX Users Group +% +% This work 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. +% +% This work has the LPPL maintenance status "maintained". +% +% The Current Maintainer of this work +% is the TeX4ht Project <http://tug.org/tex4ht>. +% +% If you modify this program, changing the +% version identification would be appreciated. +\immediate\write-1{version 2024-11-27-13:11} + + +\define@booleankey{FV}{breaklines}% + {\booltrue{FV@breaklines}% + %\let\FV@ListProcessLine\FV@ListProcessLine@NoBreak +}% + {\boolfalse{FV@breaklines}% + %\let\FV@ListProcessLine\FV@ListProcessLine@NoBreak +} + + +\Hinput{fvextra} +\endinput + diff --git a/Master/texmf-dist/tex/generic/tex4ht/glossaries.4ht b/Master/texmf-dist/tex/generic/tex4ht/glossaries.4ht index 2157814cc70..d0e12a60c89 100644 --- a/Master/texmf-dist/tex/generic/tex4ht/glossaries.4ht +++ b/Master/texmf-dist/tex/generic/tex4ht/glossaries.4ht @@ -1,25 +1,25 @@ -% glossaries.4ht (2022-12-04-09:02), generated from tex4ht-4ht.tex +% glossaries.4ht (2024-12-06-14:38), generated from tex4ht-4ht.tex % Copyright 2008-2009 Eitan M. Gurari -% Copyright 2009-2022 TeX Users Group +% Copyright 2009-2024 TeX Users Group % % This work 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 +% https://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. % % This work has the LPPL maintenance status "maintained". % % The Current Maintainer of this work -% is the TeX4ht Project <http://tug.org/tex4ht>. +% is the TeX4ht Project <https://tug.org/tex4ht>. % % If you modify this program, changing the % version identification would be appreciated. -\immediate\write-1{version 2022-12-04-09:02} +\immediate\write-1{version 2024-12-06-14:38} -\def\:tempc#1#2{\Link{#1}{}#2\EndLink} +\def\:tempc#1#2{\Link[ class="glossary"]{#1}{}#2\EndLink} \HLet\@glslink\:tempc \def\:tempc#1#2{\Link{}{#1}\EndLink#2} \HLet\@glstarget\:tempc @@ -39,6 +39,18 @@ \fi } \HLet\@gls@removespaces\:tempc +\NewConfigure{glossentry}{2} + +% Add formatting for glossary entries only if the environment used for printing +% is not description. It would lead to errors otherwise. +\def\:glsdescriptionname{description} +\def\:tempa#1{\ifx\@currenvir\:glsdescriptionname\o:glossentry:{#1}\else\a:glossentry\o:glossentry:{#1}\b:glossentry\fi} +\HLet\glossentry\:tempa + +\NewConfigure{glsgroupskip}{1} +\def\:tempa{\a:glsgroupskip} +\HLet\glsgroupskip\:tempa + \Configure{@begin}{theglossary}{ \Configure{theindex}{}{}{}{}{}{}{}{}{}{} diff --git a/Master/texmf-dist/tex/generic/tex4ht/html-mml.4ht b/Master/texmf-dist/tex/generic/tex4ht/html-mml.4ht index dfe3f02138f..cb3eee7e75f 100644 --- a/Master/texmf-dist/tex/generic/tex4ht/html-mml.4ht +++ b/Master/texmf-dist/tex/generic/tex4ht/html-mml.4ht @@ -1,23 +1,23 @@ -% html-mml.4ht (2022-10-31-13:02), generated from tex4ht-mathml.tex -% Copyright 2009-2022 TeX Users Group +% html-mml.4ht (2025-01-09-13:26), generated from tex4ht-mathml.tex +% Copyright 2009-2025 TeX Users Group % Copyright 1999-2009 Eitan M. Gurari % % This work 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 +% https://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. % % This work has the LPPL maintenance status "maintained". % % The Current Maintainer of this work -% is the TeX4ht Project <http://tug.org/tex4ht>. +% is the TeX4ht Project <https://tug.org/tex4ht>. % % If you modify this program, changing the % version identification would be appreciated. -\immediate\write-1{version 2022-10-31-13:02} +\immediate\write-1{version 2025-01-09-13:26} \exit:ifnot{amsmath,% array,% @@ -233,7 +233,8 @@ tex4ht} \Css{.hline-mtd, .array-hline td{ display:none }} -\Css{.array-hline + .array-row:last-child{display:none;}} +% why was the following line here? it hides last row even if it contains content +% \Css{.array-hline + .array-row:last-child{display:none;}} \Css{.array-hline:first-child{border-bottom:1px solid black;border-top:none;}} \:CheckOption{fonts} \if:Option \Configure{texttt} @@ -291,6 +292,139 @@ tex4ht} \Configure{MathjaxSource}{https://cdn.jsdelivr.net/npm/mathjax@3/es5/mml-chtml.js} \Configure{@HEAD}{\HCode{ <script type="text/javascript" id="MathJax-script" async="async" src="\a:MathjaxSource"></script> \Hnewline}} \fi +\:CheckOption{texsource}\if:Option + +\newtoks\mmleqtoks +\ExplSyntaxOn +\cs_new_protected:Npn \mmlalteqtoks #1 +{ + % save tokens, but preserve spaces + % https://tex.stackexchange.com/a/44444/2891 + \tl_set:Nn \l_tmpa_tl {#1} + \regex_replace_all:nnN { . } { \c{string} \0 } \l_tmpa_tl + \tl_set:Nx \l_tmpa_tl { \l_tmpa_tl } + % % replace < > and & with xml entities + \regex_replace_all:nnN { \x{26} } { & } \l_tmpa_tl + \regex_replace_all:nnN { \x{3C} } { < } \l_tmpa_tl + \regex_replace_all:nnN { \x{3E} } { > } \l_tmpa_tl + % \regex_replace_all:nnN { \n } {\HCode{ \Hnewline }} \l_tmpa_tl + % replace \par command with blank lines + \regex_replace_all:nnN { \x{5C}par\b } {\x{A}\x{A}} \l_tmpa_tl + \tl_set:Nx \mmleqtoks{ \l_tmpa_tl } + + %\HCode{\l_tmpb_tl} +} +\ExplSyntaxOff + + +\def\AltMath#1${\mmlalteqtoks{#1}% + #1\HCode{</\a:mathml mrow><\a:mathml annotation encoding="application/x-tex">\mmleqtoks</\a:mathml annotation>}$} +\Configure{$}{\Configure{@math}{display="inline"}\DviMath\HCode{<\a:mathml semantics><\a:mathml mrow>}}{\HCode{</\a:mathml semantics>}\EndDviMath}{\expandafter\AltMath} + +\def\AltMathParen#1\){\mmlalteqtoks{#1}% + #1\HCode{</\a:mathml mrow><a\a:mathml nnotation encoding="application/x-tex">\mmleqtoks</\a:mathml annotation>}$} + +\def\AltMathParen#1\){\mmlalteqtoks{#1}#1\HCode{</\a:mathml mrow><\a:mathml annotation encoding="application/x-tex">\mmleqtoks</\a:mathml annotation>}\)} +%\Configure{()}{\Configure{@math}{display="inline"}\DviMath\HCode{<\a:mathml semantics><\a:mathml mrow>}\AltMathParen$}{\EndDviMath\HCode{</\a:mathml semantics>}} +\Configure{()} + {\Configure{@math}{%\a:mathml + display="inline" +}\csname a:mathml()\endcsname +\DviMath\HCode{<\a:mathml semantics><\a:mathml mrow>}$\expandafter\AltMathParen} +{$\HCode{</\a:mathml semantics>}\EndDviMath\csname b:mathml()\endcsname} + + +\long\def\AltDisplay#1\]{\mmlalteqtoks{#1}#1\HCode{</\a:mathml mrow><\a:mathml annotation encoding="application/x-tex">\mmleqtoks</\a:mathml annotation></\a:mathml semantics>}\]} +\Configure{[]}{\Configure{@math}{display="block"}\DviMath$$\DisplayMathtrue\HCode{<\a:mathml semantics><\a:mathml mrow>}\AltDisplay}{$$\EndDviMath} + + +% \long\def\MMLAltlDisplayDollars#1$${\mmlalteqtoks{\[#1\]}#1\HCode{</\a:mathml mrow><\a:mathml annotation encoding="application/x-tex">\mmleqtoks</\a:mathml annotation>}$$} + +% configuarartion of display math doesn't work yet. need to investigate it. +% \Configure{$$} +% {\Configure{@math}{%\a:mathml +% display="block" +% }\IgnorePar +% \ifvmode\else \HCode{<!--tex4ht:inline-->}\fi +% \EndP\DviMath\HCode{<\a:mathml semantics><\a:mathml mrow>}} +% {\HCode{</\a:mathml semantics>}\EndDviMath\ShowPar\par{\csname HCondtrue\endcsname\noindent}} +% {\DisplayMathtrue\expandafter\MMLAltlDisplayDollars} + + +% \renewcommand\eqannotate[1]{\mmlalteqtoks{#1}\HCode{<\a:mathml semantics><\a:mathml mrow>}#1\HCode{</\a:mathml mrow><\a:mathml annotation encoding="application/x-tex">\mmleqtoks</\a:mathml annotation></\a:mathml semantics>}} + + +% environment support +\newcommand\MMLVerbMathToks[2]{% + \mmlalteqtoks{\begin{#2} + #1 + \end{#2}}% + \begingroup% + \ifvmode\IgnorePar\fi\EndP\Configure{@math}{display="block"}\DviMath\DisplayMathtrue\HCode{<\a:mathml semantics><\a:mathml mrow>} + \Configure{$$}{}{}{} + \begin{old#2} + #1 + \end{old#2} + \HCode{</\a:mathml mrow><\a:mathml annotation encoding="application/x-tex">} + \HCode{\mmleqtoks} + \HCode{</\a:mathml annotation></\a:mathml semantics>} + \EndDviMath + \endgroup +} + +% we must handle equations separatelly. +% it is a bit messy +\newcommand\MMLVerbMathToksEquation[2]{% + \mmlalteqtoks{\begin{#2} + #1 + \end{#2}}% + \begingroup% + \def\@tempa{#2}% + \def\@equationname{equation}% + \def\mlabeledtr{mtr} + \ifx\@equationname\@tempa% + \def\mlabeledtr{mlabeledtr} % this element can be used to print the equation number, but it is supported only by MathJax + \fi + \ifvmode\IgnorePar\fi\EndP\Configure{@math}{display="block"}\DviMath\DisplayMathtrue\HCode{<\a:mathml semantics><\a:mathml mrow><\a:mathml mtable><\a:mathml \mlabeledtr><\a:mathml mtd>}% + \ifx\@equationname\@tempa% + \incr@eqnum% + \print@eqnum% + \HCode{</\a:mathml mtd><\a:mathml mtd>}% + \fi + #1% + \HCode{</\a:mathml mtd></\a:mathml \mlabeledtr></\a:mathml mtable></\a:mathml mrow><\a:mathml annotation encoding="application/x-tex">}% + \HCode{\mmleqtoks}% + \HCode{</\a:mathml annotation></\a:mathml semantics>}% + \EndDviMath% + \endgroup% +} + +\ExplSyntaxOn +\newcommand\MMLVerbMath[1]{% + \cs_if_exist:cTF{#1}{ + \expandafter\let\csname old#1\expandafter\endcsname\csname #1\endcsname + \expandafter\let\csname endold#1\expandafter\endcsname\csname end#1\endcsname + \RenewDocumentEnvironment{#1}{+!b}{% + \NoFonts\expandafter\MMLVerbMathToks\expandafter{##1}{#1}\EndNoFonts% + }{} + }{}% +} + +\newcommand\MMLVerbEquation[1]{% + \cs_if_exist:cTF{#1}{ + \expandafter\let\csname old#1\expandafter\endcsname\csname #1\endcsname + \expandafter\let\csname endold#1\expandafter\endcsname\csname end#1\endcsname + \RenewDocumentEnvironment{#1}{+!b}{% + \NoFonts\expandafter\MMLVerbMathToksEquation\expandafter{##1}{#1}\EndNoFonts% + }{} + }{}% +} +\ExplSyntaxOff + +% \MMLVerbEquation{equation} +% \MMLVerbEquation{equation*} + +\fi \Configure{multicolumn} {\let\sv:VBorder\VBorder \let\VBorder\empty @@ -483,8 +617,6 @@ accent="true">&\#x0332;</\a:mathml mo></\a:mathml munder>}% - - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{amsmath} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -626,7 +758,7 @@ accent="true">&\#x0332;</\a:mathml mo></\a:mathml munder>}% \HCode{</td><td class="eq-no">}% } {\ifvmode \IgnorePar\fi\EndP \HCode{</td></tr></table>}% - \ShowPar\IgnoreIndent\par} + \par\ShowPar\noindent} \Configure{equation*} {\ifvmode \IgnorePar\fi\EndP \HCode{<table class="equation-star"><tr><td>}% @@ -661,6 +793,43 @@ accent="true">&\#x0332;</\a:mathml mo></\a:mathml munder>}% \ShowPar\IgnoreIndent\par} \fi +\:CheckOption{texsource}\if:Option +\MMLVerbMath{subarray} +\MMLVerbMath{smallmatrix} +\MMLVerbMath{matrix} +\MMLVerbMath{pmatrix} +\MMLVerbMath{bmatrix} +\MMLVerbMath{Bmatrix} +\MMLVerbMath{vmatrix} +\MMLVerbMath{Vmatrix} +\MMLVerbMath{cases} +\MMLVerbMath{subequations} +\MMLVerbMath{aligned} +\MMLVerbMath{alignedat} +\MMLVerbMath{gathered} +\MMLVerbMath{gather} +\MMLVerbMath{gather*} +\MMLVerbMath{alignat} +\MMLVerbMath{alignat*} +\MMLVerbMath{xalignat} +\MMLVerbMath{xalignat*} +\MMLVerbMath{xxalignat} +\MMLVerbMath{align} +\MMLVerbMath{align*} +\MMLVerbMath{flalign} +\MMLVerbMath{flalign*} +\MMLVerbMath{split} +\MMLVerbMath{multline} +\MMLVerbMath{multline*} +% equations fails with errors, even though it worked in a .cfg +% I will need to investigate it more +% \MMLVerbEquation{equation} +% \MMLVerbEquation{equation*} +\MMLVerbMath{math} +\MMLVerbMath{displaymath} +\MMLVerbMath{eqnarray} +\MMLVerbMath{eqnarray*} +\fi \Configure{@begin} {split} {\let\tagform@=\:gobble } @@ -680,6 +849,8 @@ accent="true">&\#x0332;</\a:mathml mo></\a:mathml munder>}% + + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{plain} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -735,7 +906,6 @@ accent="true">&\#x0332;</\a:mathml mo></\a:mathml munder>}% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{array} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -913,6 +1083,17 @@ accent="true">&\#x0332;</\a:mathml mo></\a:mathml munder>}% + + + + + + + + + + + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{rlbabel} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -960,6 +1141,7 @@ accent="true">&\#x0332;</\a:mathml mo></\a:mathml munder>}% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{frenchb} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -1299,5 +1481,59 @@ accent="true">&\#x0332;</\a:mathml mo></\a:mathml munder>}% + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \endinput diff --git a/Master/texmf-dist/tex/generic/tex4ht/html4-math.4ht b/Master/texmf-dist/tex/generic/tex4ht/html4-math.4ht index 21c5761a00e..83eb47206c6 100644 --- a/Master/texmf-dist/tex/generic/tex4ht/html4-math.4ht +++ b/Master/texmf-dist/tex/generic/tex4ht/html4-math.4ht @@ -1,23 +1,23 @@ -% html4-math.4ht (2022-10-25-13:59), generated from tex4ht-html4.tex -% Copyright 2009-2022 TeX Users Group +% html4-math.4ht (2024-09-27-10:13), generated from tex4ht-html4.tex +% Copyright 2009-2024 TeX Users Group % Copyright 1999-2009 Eitan M. Gurari % % This work 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 +% https://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. % % This work has the LPPL maintenance status "maintained". % % The Current Maintainer of this work -% is the TeX4ht Project <http://tug.org/tex4ht>. +% is the TeX4ht Project <https://tug.org/tex4ht>. % % If you modify this program, changing the % version identification would be appreciated. -\immediate\write-1{version 2022-10-25-13:59} +\immediate\write-1{version 2024-09-27-10:13} \exit:ifnot{accents,% amsfonts,% @@ -327,16 +327,22 @@ ushort} }; } \fi +\NewConfigure{MathjaxInline}{2} +\NewConfigure{MathjaxBlock}{2} +\Configure{MathjaxInline}{\HCode{<span class="mathjax-inline">}}{\HCode{</span>}} +\Configure{MathjaxBlock}{\ifvmode\IgnorePar\fi\EndP\HCode{<div class="mathjax-block">}}{\HCode{</div>}} +\Configure{MathjaxEnv}{\ifvmode\IgnorePar\fi\EndP\HCode{<div class="mathjax-env mathjax-\@currenvir">}}{\HCode{</div>}} + \Configure{@HEAD}{\HCode{<script>window.MathJax = \a:MathJaxConfig</script>\Hnewline}} \Configure{MathjaxSource}{https://cdn.jsdelivr.net/npm/mathjax@3/es5/tex-chtml-full.js} -\Configure{@HEAD}{\HCode{ <script type="text/javascript" async="async" id="MathJax-script" src="\a:MathjaxSource"></script> \Hnewline}} +\Configure{@HEAD}{\ifx\a:MathjaxSource\@empty\else\HCode{<script type="text/javascript" async="async" id="MathJax-script" src="\a:MathjaxSource"></script> \Hnewline}\fi} \edef\:RestoreMathjaxCatcodes{\catcode`\noexpand \&=\the\catcode`\&} \def\:HandleMathjaxCatcodes{\edef\:RestoreMathjaxCatcodes{\catcode`\noexpand \&=\the\catcode`\&}\catcode`\&=11} -\Configure{$}{\:HandleMathjaxCatcodes}{\:RestoreMathjaxCatcodes}{\expandafter\AltMathOne} -\Configure{$$}{\:HandleMathjaxCatcodes}{\:RestoreMathjaxCatcodes}{\expandafter\AltlDisplayDollars} -% for some reason, it is necessary to specify the catcode change directly in the configuration -\Configure{()}{\:HandleMathjaxCatcodes\catcode`\&=11\AltlMath}{\:RestoreMathjaxCatcodes} -\Configure{[]}{\:HandleMathjaxCatcodes\catcode`\&=11\AltlDisplay}{\:RestoreMathjaxCatcodes} +\Configure{$}{\a:MathjaxInline\:HandleMathjaxCatcodes}{\:RestoreMathjaxCatcodes\b:MathjaxInline}{\expandafter\AltMathOne} +\Configure{()}{\a:MathjaxInline\:HandleMathjaxCatcodes\catcode`\&=11\AltlMath}{\:RestoreMathjaxCatcodes\b:MathjaxInline} +\Configure{$$}{\a:MathjaxBlock\:HandleMathjaxCatcodes}{\:RestoreMathjaxCatcodes\b:MathjaxBlock}{\expandafter\AltlDisplayDollars} +\Configure{[]}{\a:MathjaxBlock\:HandleMathjaxCatcodes\catcode`\&=11\AltlDisplay}{\:RestoreMathjaxCatcodes\b:MathjaxBlock} + \fi \NewConfigure{bar-css}{2} @@ -470,8 +476,6 @@ ushort} - - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{amsmath} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -846,6 +850,8 @@ ushort} + + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{plain} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -1007,7 +1013,6 @@ ushort} - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{array} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -1076,6 +1081,14 @@ ushort} + + + + + + + + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{eplain} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -1120,6 +1133,8 @@ ushort} + + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{fleqn} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -1151,6 +1166,7 @@ ushort} + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{gauss} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -1346,6 +1362,32 @@ ushort} + + + + + + + + + + + + + + + + + + + + + + + + + + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{accents} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -1379,7 +1421,6 @@ ushort} - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{ushort} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -1441,6 +1482,7 @@ ushort} + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{cancel} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -1485,7 +1527,6 @@ ushort} - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{th4} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -1591,5 +1632,18 @@ ushort} + + + + + + + + + + + + + \endinput diff --git a/Master/texmf-dist/tex/generic/tex4ht/html4.4ht b/Master/texmf-dist/tex/generic/tex4ht/html4.4ht index 447b565a0c6..b99511a5d3a 100644 --- a/Master/texmf-dist/tex/generic/tex4ht/html4.4ht +++ b/Master/texmf-dist/tex/generic/tex4ht/html4.4ht @@ -1,23 +1,23 @@ -% html4.4ht (2024-06-21-14:18), generated from tex4ht-html4.tex -% Copyright 2009-2024 TeX Users Group +% html4.4ht (2025-02-16-06:48), generated from tex4ht-html4.tex +% Copyright 2009-2025 TeX Users Group % Copyright 1997-2009 Eitan M. Gurari % % This work 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 +% https://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. % % This work has the LPPL maintenance status "maintained". % % The Current Maintainer of this work -% is the TeX4ht Project <http://tug.org/tex4ht>. +% is the TeX4ht Project <https://tug.org/tex4ht>. % % If you modify this program, changing the % version identification would be appreciated. -\immediate\write-1{version 2024-06-21-14:18} +\immediate\write-1{version 2025-02-16-06:48} \exit:ifnot{8859-6,% CJK,% @@ -117,12 +117,14 @@ foils,% fontspec,% framed,% francais,% +french,% frenchb,% g-brief,% galician,% german,% germanb,% gloss,% +glossaries,% glossary,% go,% graphics,% @@ -152,6 +154,7 @@ longtable,% ltugboat,% ltugproc,% ltxguide,% +lua-ul,% manju,% manmac,% marginnote,% @@ -166,6 +169,7 @@ microtype,% minitoc,% minted,% mls,% +moderncv,% moreverb,% multicol,% multind,% @@ -1469,6 +1473,25 @@ switches of tex4ht.c) {\end:itm \global\def\end:itm{\EndP\Tg</li>}\DeleteMark} {\HCode{<li class="\getClass{li}itemize">}\afterGetClass{li}\par\ShowPar } + +\:CheckOption{itemize+}\if:Option +\ConfigureList{itemize}% + {\EndP\HCode{<ul \a:LRdir + class="\getClass{itemize}itemize\expandafter\the + \csname @itemdepth\endcsname">}% + \afterGetClass{itemize}% + \PushMacro\end:itm +\global\let\end:itm=\empty} + {\PopMacro\end:itm \global\let\end:itm \end:itm +\ifvmode \IgnorePar\fi + \EndP\HCode{</li></ul>}\ShowPar} + {\end:itm \global\def\end:itm{\EndP\Tg</li>}\HCode{<li class="\getClass{li}itemize">}\par\ShowPar +\HCode{<span class="itemizeHead" aria-hidden="true">}\afterGetClass{li}} + {\HCode{</span>}} +\Css{.itemizeHead{float: left; margin-left: -1em; width: 1em;}} +\Css{li.itemize{list-style: none;}} +\fi + \NewConfigure{itemizeClass}{2} \Configure{itemizeClass}{}{} \NewConfigure{liClass}{2} @@ -2988,7 +3011,7 @@ j{01F0}H{021E}h{021F}\i{01D0}\j{01F0}% {} {\xdef\col:Css{\col:Css border-\ifnum \ar:cnt=0 left\else right\fi - :solid black 0.4pt;}% + :1px solid \VBorder:color;}% }{}{}% } {\ifx \col:Css\empty \else @@ -3086,6 +3109,7 @@ j{01F0}H{021E}h{021F}\i{01D0}\j{01F0}% \Configure{arrayparbox}{\ShowPar} \fi \let\VBorder\empty \let\AllColMargins\empty +\def\VBorder:color{black} \Configure{VBorder} {\let\VBorder\empty \let\AllColMargins\empty \global\let\GROUPS\empty \HAssign\NewGroup = 0 @@ -3095,10 +3119,10 @@ j{01F0}H{021E}h{021F}\i{01D0}\j{01F0}% % put vertical border for a column \ifnum\ar:cnt > 0% % in all other cases, we should put right border - \Css{\#TBL-\TableNo-\ar:cnt {border-right:1px solid black;}}% + \Css{\#TBL-\TableNo-\ar:cnt {border-right:1px solid \VBorder:color;}}% \else% % columns are numbered from 1. if \ar:cnt == 0 then it is the left border - \Css{\#TBL-\TableNo-1{border-left: 1px solid black;}}% + \Css{\#TBL-\TableNo-1{border-left: 1px solid \VBorder:color;}}% \fi% } {\Advance:\NewGroup by 1 @@ -3109,8 +3133,8 @@ j{01F0}H{021E}h{021F}\i{01D0}\j{01F0}% {\xdef\AllColMargins{\AllColMargins 0}} \Configure{HBorder} {<tr\Hnewline class="hline">} {<td><hr\xml:empty></td>} {</tr>} - {<tr\Hnewline class="cline">} - {<td></td>} {<td><hr\xml:empty></td>} {</tr>} + {<tr\Hnewline class="cline">} + {<td></td>} {<td style="border-top:1px solid \#\hline:color;"></td>} {</tr>} {<tr\Hnewline class="vspace" style="font-size:\HBorderspace">} {<td\Hnewline>\string </td>} {</tr>} @@ -3121,7 +3145,8 @@ j{01F0}H{021E}h{021F}\i{01D0}\j{01F0}% \Css{.hline hr, .cline hr{border:none;border-top:1px solid black;}} \Css{.hline {border-top: 1px solid black;}} \Css{.hline + .vspace:last-child{display:none;}} -\Css{.hline:first-child{border-bottom:1px solid black;border-top:none;}} +% why was there this rule? it adds unnecessary extra rule at the top of tables +% \Css{.hline:first-child{border-bottom:1px solid black;border-top:none;}} \def\putVBorder{\expandafter\put:VBorder\VBorder</>!*?: } \def\put:VBorder#1</#2>#3!*?: {\def\:temp{#2}\ifx\:temp\empty \HCode{\VBorder}% @@ -5636,7 +5661,7 @@ j{01F0}H{021E}h{021F}\i{01D0}\j{01F0}% \cur:th\:currentlabel\space-->}% } \Css{div.caption {text-indent:-2em; margin-left:3em; margin-right:1em; - text-align:left;}} + text-align:center; margin-top: 0.5rem;}} \Css{div.caption span.id{font-weight: bold; white-space: nowrap; }} @@ -8291,7 +8316,7 @@ j{01F0}H{021E}h{021F}\i{01D0}\j{01F0}% \cur:th\:currentlabel\space-->}% } \Css{div.caption {text-indent:-2em; margin-left:3em; margin-right:1em; - text-align:left;}} + text-align:center; margin-top: 0.5rem;}} \Css{div.caption span.id{font-weight: bold; white-space: nowrap; }} @@ -10943,7 +10968,7 @@ j{01F0}H{021E}h{021F}\i{01D0}\j{01F0}% \cur:th\:currentlabel\space-->}% } \Css{div.caption {text-indent:-2em; margin-left:3em; margin-right:1em; - text-align:left;}} + text-align:center; margin-top: 0.5rem;}} \Css{div.caption span.id{font-weight: bold; white-space: nowrap; }} @@ -11359,6 +11384,7 @@ j{01F0}H{021E}h{021F}\i{01D0}\j{01F0}% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{lettrine} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -11607,7 +11633,6 @@ height="\expandafter\int:pt\the\Gin@req@height!*?: " \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{graphicx} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -11620,6 +11645,7 @@ height="\expandafter\int:pt\the\Gin@req@height!*?: " %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{debug} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -11796,7 +11822,7 @@ height="\expandafter\int:pt\the\Gin@req@height!*?: " \cur:th\:currentlabel\space-->}% } \Css{div.caption {text-indent:-2em; margin-left:3em; margin-right:1em; - text-align:left;}} + text-align:center; margin-top: 0.5rem;}} \Css{div.caption span.id{font-weight: bold; white-space: nowrap; }} @@ -14222,6 +14248,7 @@ s{015B}u{00FA}y{00FD}z{017A}j{FFFD}J{FFDD}\i{00ED}\j{FFFD}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{amsbook} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -14382,7 +14409,7 @@ s{015B}u{00FA}y{00FD}z{017A}j{FFFD}J{FFDD}\i{00ED}\j{FFFD}% \cur:th\:currentlabel\space-->}% } \Css{div.caption {text-indent:-2em; margin-left:3em; margin-right:1em; - text-align:left;}} + text-align:center; margin-top: 0.5rem;}} \Css{div.caption span.id{font-weight: bold; white-space: nowrap; }} @@ -17016,7 +17043,7 @@ s{015B}u{00FA}y{00FD}z{017A}j{FFFD}J{FFDD}\i{00ED}\j{FFFD}% \cur:th\:currentlabel\space-->}% } \Css{div.caption {text-indent:-2em; margin-left:3em; margin-right:1em; - text-align:left;}} + text-align:center; margin-top: 0.5rem;}} \Css{div.caption span.id{font-weight: bold; white-space: nowrap; }} @@ -19444,7 +19471,6 @@ s{015B}u{00FA}y{00FD}z{017A}j{FFFD}J{FFDD}\i{00ED}\j{FFFD}% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{amsthm} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -19502,6 +19528,7 @@ s{015B}u{00FA}y{00FD}z{017A}j{FFFD}J{FFDD}\i{00ED}\j{FFFD}% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{amsppt} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -19932,7 +19959,6 @@ Y{0178}\i{00EF}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{plain} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -20556,7 +20582,21 @@ Y{0178}\i{00EF}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + \ConfigureHinput{glossaries} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + \Configure{glossentry} +{\ifvmode\IgnorePar\fi\EndP\HCode{<div class="glossary">}} +{\ifvmode\IgnorePar\fi\EndP\HCode{</div>}} + +\Configure{glsgroupskip}{\ifvmode\Ignore\Par\fi\EndP\HCode{<div class="glsgroupskip"></div>\Hnewline}} +\Css{.glsgroupskip{margin-bottom:1rem;}} +\Css{.glsgroupskip + .glsgroupskip{margin-bottom: 0;}} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\endinput\empty\empty\empty\empty\empty\empty +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{glossary} @@ -20571,6 +20611,7 @@ Y{0178}\i{00EF}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{letter} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -20984,7 +21025,6 @@ Y{0178}\i{00EF}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{array} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -21018,7 +21058,7 @@ Y{0178}\i{00EF}% {} {\xdef\col:Css{\col:Css border-\ifnum \ar:cnt=0 left\else right\fi - :solid black 0.4pt;}% + :1px solid \VBorder:color;}% }{}{}% } {\ifx \col:Css\empty \else @@ -21116,6 +21156,7 @@ Y{0178}\i{00EF}% \Configure{arrayparbox}{\ShowPar} \fi \let\VBorder\empty \let\AllColMargins\empty +\def\VBorder:color{black} \Configure{VBorder} {\let\VBorder\empty \let\AllColMargins\empty \global\let\GROUPS\empty \HAssign\NewGroup = 0 @@ -21125,10 +21166,10 @@ Y{0178}\i{00EF}% % put vertical border for a column \ifnum\ar:cnt > 0% % in all other cases, we should put right border - \Css{\#TBL-\TableNo-\ar:cnt {border-right:1px solid black;}}% + \Css{\#TBL-\TableNo-\ar:cnt {border-right:1px solid \VBorder:color;}}% \else% % columns are numbered from 1. if \ar:cnt == 0 then it is the left border - \Css{\#TBL-\TableNo-1{border-left: 1px solid black;}}% + \Css{\#TBL-\TableNo-1{border-left: 1px solid \VBorder:color;}}% \fi% } {\Advance:\NewGroup by 1 @@ -21139,8 +21180,8 @@ Y{0178}\i{00EF}% {\xdef\AllColMargins{\AllColMargins 0}} \Configure{HBorder} {<tr\Hnewline class="hline">} {<td><hr\xml:empty></td>} {</tr>} - {<tr\Hnewline class="cline">} - {<td></td>} {<td><hr\xml:empty></td>} {</tr>} + {<tr\Hnewline class="cline">} + {<td></td>} {<td style="border-top:1px solid \#\hline:color;"></td>} {</tr>} {<tr\Hnewline class="vspace" style="font-size:\HBorderspace">} {<td\Hnewline>\string </td>} {</tr>} @@ -21151,7 +21192,8 @@ Y{0178}\i{00EF}% \Css{.hline hr, .cline hr{border:none;border-top:1px solid black;}} \Css{.hline {border-top: 1px solid black;}} \Css{.hline + .vspace:last-child{display:none;}} -\Css{.hline:first-child{border-bottom:1px solid black;border-top:none;}} +% why was there this rule? it adds unnecessary extra rule at the top of tables +% \Css{.hline:first-child{border-bottom:1px solid black;border-top:none;}} \def\putVBorder{\expandafter\put:VBorder\VBorder</>!*?: } \def\put:VBorder#1</#2>#3!*?: {\def\:temp{#2}\ifx\:temp\empty \HCode{\VBorder}% @@ -21230,7 +21272,6 @@ Y{0178}\i{00EF}% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{tabularx} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -21246,6 +21287,7 @@ Y{0178}\i{00EF}% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{mwart} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -23565,7 +23607,7 @@ Y{0178}\i{00EF}% \cur:th\:currentlabel\space-->}% } \Css{div.caption {text-indent:-2em; margin-left:3em; margin-right:1em; - text-align:left;}} + text-align:center; margin-top: 0.5rem;}} \Css{div.caption span.id{font-weight: bold; white-space: nowrap; }} \ConfigureEnv{thebibliography}{\IgnorePar}{\ShowPar\par}{}{} @@ -26060,7 +26102,7 @@ Y{0178}\i{00EF}% \cur:th\:currentlabel\space-->}% } \Css{div.caption {text-indent:-2em; margin-left:3em; margin-right:1em; - text-align:left;}} + text-align:center; margin-top: 0.5rem;}} \Css{div.caption span.id{font-weight: bold; white-space: nowrap; }} \ConfigureEnv{thebibliography}{\IgnorePar}{\ShowPar\par}{}{} @@ -26210,7 +26252,6 @@ Y{0178}\i{00EF}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{mwbk} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -28556,7 +28597,7 @@ Y{0178}\i{00EF}% \cur:th\:currentlabel\space-->}% } \Css{div.caption {text-indent:-2em; margin-left:3em; margin-right:1em; - text-align:left;}} + text-align:center; margin-top: 0.5rem;}} \Css{div.caption span.id{font-weight: bold; white-space: nowrap; }} \ConfigureEnv{thebibliography}{\IgnorePar}{\ShowPar\par}{}{} @@ -28722,7 +28763,6 @@ Y{0178}\i{00EF}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{CJK} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -28779,6 +28819,19 @@ Y{0178}\i{00EF}% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + \ConfigureHinput{french} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + \Configure{part}{}{} + {\IgnorePar \EndP\HCode{<h1 class="partHead"\a:LRdir>}% + \HCode{<span class="titlemark">}\partname + \HCode{</span><br />}} + {\HCode{</h1>}\IgnoreIndent\par} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\endinput\empty\empty\empty\empty\empty\empty +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{moreverb} @@ -28818,7 +28871,6 @@ Y{0178}\i{00EF}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{fancyvrb} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -28868,6 +28920,7 @@ Y{0178}\i{00EF}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{psfig} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -29066,6 +29119,9 @@ Y{0178}\i{00EF}% % redefine default table configuration and put the color rule \def\a:HBorder{<tr class="hline" style="border-top:1px solid \#\hline:color">} + +% use the hline color also for vertial lines +\def\VBorder:color{\#\hline:color} % don't display <hr> elements in colored \hline \Css{tr.hline td hr{display:none}} @@ -29074,6 +29130,7 @@ Y{0178}\i{00EF}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{minitoc} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -29138,6 +29195,7 @@ Y{0178}\i{00EF}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{index} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -29166,6 +29224,7 @@ Y{0178}\i{00EF}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{multind} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -29198,7 +29257,6 @@ Y{0178}\i{00EF}% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{fancybox} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -29284,7 +29342,6 @@ Y{0178}\i{00EF}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{adjustbox} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -29331,6 +29388,7 @@ Y{0178}\i{00EF}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{transparent} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -29359,7 +29417,6 @@ Y{0178}\i{00EF}% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{alltt} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -29374,6 +29431,7 @@ Y{0178}\i{00EF}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{latin1} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -29509,7 +29567,6 @@ Y{0178}\i{00EF}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{eplain} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -30168,6 +30225,7 @@ Y{0178}\i{00EF}% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{tabulary} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -30360,6 +30418,7 @@ Y{0178}\i{00EF}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{bussproofs} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -30428,7 +30487,6 @@ Y{0178}\i{00EF}% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{verse} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -30503,6 +30561,7 @@ Y{0178}\i{00EF}% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{rlbabel} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -30527,6 +30586,7 @@ Y{0178}\i{00EF}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{hebtex} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -30590,7 +30650,6 @@ Y{0178}\i{00EF}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{abidir} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -30617,6 +30676,7 @@ Y{0178}\i{00EF}% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{koi8-r} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -30627,7 +30687,6 @@ Y{0178}\i{00EF}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{frenchb} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -30929,6 +30988,9 @@ description">}% + + + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{threeparttable} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -31024,6 +31086,7 @@ description">}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{tabto} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -31113,7 +31176,6 @@ description">}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{subscript} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -31126,6 +31188,7 @@ description">}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{subfigure} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -31158,7 +31221,7 @@ description">}% {\HCode{</span></div>}}% }% {\ifvmode\IgnorePar\fi\EndP\HCode{</div>}}% -\Css{div.subfigure {text-align:center;display:inline-block; max-width:45\%;}} +\Css{div.subfigure {text-align:center;display:inline-block; max-width:45\%; margin-right: 2rem;}} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -31257,7 +31320,6 @@ description">}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{picins} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -31367,7 +31429,6 @@ description">}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{ot4enc} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -31635,7 +31696,6 @@ description">}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{pd1enc} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -31895,6 +31955,7 @@ description">}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{revtex4} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -32171,7 +32232,7 @@ description">}% \cur:th\:currentlabel\space-->}% } \Css{div.caption {text-indent:-2em; margin-left:3em; margin-right:1em; - text-align:left;}} + text-align:center; margin-top: 0.5rem;}} \Css{div.caption span.id{font-weight: bold; white-space: nowrap; }} \Configure{abstractheading} @@ -32205,7 +32266,7 @@ description">}% \cur:th\:currentlabel\space-->}% } \Css{div.caption {text-indent:-2em; margin-left:3em; margin-right:1em; - text-align:left;}} + text-align:center; margin-top: 0.5rem;}} \Css{div.caption span.id{font-weight: bold; white-space: nowrap; }} @@ -32567,7 +32628,6 @@ description">}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{doc} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -32583,6 +32643,7 @@ description">}% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{scrbook} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -33353,7 +33414,6 @@ description">}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{scrartcl} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -33374,6 +33434,7 @@ description">}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{scrreprt} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -34916,7 +34977,6 @@ description">}% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{amsdtx} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -34950,6 +35010,9 @@ description">}% + + + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{llncs} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -35116,6 +35179,8 @@ description">}% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{cp1256} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -35126,7 +35191,6 @@ description">}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{8859-6} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -35172,6 +35236,7 @@ description">}% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{verbatim} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -35187,6 +35252,7 @@ description">}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{minted} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -35201,6 +35267,8 @@ description">}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{piton} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -35237,7 +35305,6 @@ description">}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{prosper} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -35399,6 +35466,7 @@ description">}% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{beamer} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -35769,6 +35837,7 @@ description">}% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{seminar} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -35782,7 +35851,6 @@ description">}% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{slides} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -35883,6 +35951,7 @@ description">}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{foils} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -35989,7 +36058,6 @@ description">}% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{xy} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -36009,6 +36077,7 @@ description">}% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{pictex} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -36022,6 +36091,7 @@ description">}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{diagrams} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -36079,7 +36149,6 @@ description">}% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{endfloat} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -36090,7 +36159,6 @@ description">}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{mfpic} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -36107,6 +36175,7 @@ description">}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{pb-diagram} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -36351,6 +36420,47 @@ description">}% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + \ConfigureHinput{moderncv} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + \Configure{cvhead}{\ifvmode\IgnorePar\fi\EndP\HCode{<div class="cvhead">}}{\ifvmode\IgnorePar\fi\EndP\HCode{</div>}} +\Configure{cvphoto}{\ifvmode\IgnorePar\fi\EndP\HCode{<div class="cvphoto">}}{\ifvmode\IgnorePar\fi\EndP\HCode{</div>}} + +\Configure{section}{\ifvmode\IgnorePar\fi\EndP\HCode{<h2>}}{\HCode{</h2>}} +\Configure{subsection}{\ifvmode\IgnorePar\fi\EndP\HCode{<h3>}}{\HCode{</h3>}} +\Configure{cvitem}{\ifvmode\IgnorePar\fi\EndP\HCode{<div class="cvitem"><span class="cvitemhead">}}{\HCode{</span><span class="cvitembody">}}{\HCode{</span></div>}} +\Configure{cvdoubleitem}{\ifvmode\IgnorePar\fi\EndP\HCode{<div class="cvdoubleitem">}}{\HCode{</div>}} +\Configure{cvlistitem}{\ifvmode\IgnorePar\fi\EndP\HCode{<div class="cvlistitem">}}{\HCode{</div>}} +\Configure{cvlistdoubleitem}{\ifvmode\IgnorePar\fi\EndP\HCode{<div class="cvlistdoubleitem">}}{\HCode{</div>}} + +\Configure{cvskillhead}{\ifvmode\IgnorePar\fi\EndP\HCode{<div class="cvskillhead">}}{\HCode{</div>}} +\Configure{cvskillentry}{\ifvmode\IgnorePar\fi\EndP\HCode{<div class="cvskillentry">}}{\HCode{</div>}} + +\Configure{cvskill}{\Picture*[skill level: \:cvskillamount]{}}{\EndPicture} + +\Css{.cvskillentry .tabular, .cvskillhead .tabular {margin:0pt;}} +\Css{.cvskillentry .tabular td:nth-child(1), .cvskillhead .tabular td:nth-child(1){width: 8ch}} +\Css{.cvskillentry .tabular td:nth-child(2), .cvskillhead .tabular td:nth-child(2){width: 12ch}} +\Css{.cvskillentry .tabular td:nth-child(3), .cvskillhead .tabular td:nth-child(3){width: 6ch}} +\Css{.cvskillentry .tabular td:nth-child(4), .cvskillhead .tabular td:nth-child(4){width: 54ch}} + +\Css{.cvitemhead{margin-right: 1em;}} + +\Css{ +@media (min-width:94ch) { +.cvitemhead{ + margin-left: -14ch; + width: 12ch; + float: left; + text-align: right; + } +}} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\endinput\empty\empty\empty\empty\empty\empty +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{vowel} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureEnv{vowel} @@ -36375,7 +36485,21 @@ description">}% {\end:itm \global\def\end:itm{\EndP\Tg</dd>}\HCode{<dt class="enumerate-enumitem">}\bgroup \bf} {\egroup\EndP\HCode{</dt><dd\Hnewline class="enumerate-enumitem">}} + \Css{dl.enumerate-enumitem{display:grid; grid-template-columns: 3ch 1fr; align-items: top; row-gap:1ch;}} +\Configure{enumitemnewlist}{% +\ConfigureList{\a:enumitemenv}% + {\EndP\HCode{<dl \a:LRdir class="enumerate-enumitem enumitem-\a:enumitemenv">}% + \PushMacro\end:itm +\global\let\end:itm=\empty} + {\PopMacro\end:itm \global\let\end:itm \end:itm +\EndP\HCode{</dd></dl>}\ShowPar} + {\end:itm \global\def\end:itm{\EndP\Tg</dd>}\HCode{<dt + class="enumerate-enumitem enumitem-\a:enumitemenv">}\bgroup \bf} + {\egroup\EndP\HCode{</dt><dd\Hnewline class="enumerate-enumitem">}} +} + + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -36384,6 +36508,7 @@ description">}% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{IEEEtran} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -36445,6 +36570,7 @@ description">}% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{linguex} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -36470,7 +36596,6 @@ description">}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{cgloss4e} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -36567,6 +36692,7 @@ description">}% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{diagram} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -36755,7 +36881,6 @@ description">}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{subeqnarray} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -36782,6 +36907,7 @@ description">}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{SIunits} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -36818,7 +36944,6 @@ description">}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{sistyle} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -36840,6 +36965,7 @@ description">}% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{chapterbib} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -36877,7 +37003,6 @@ description">}% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{appendix} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -36888,6 +37013,7 @@ description">}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{res} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -36962,7 +37088,6 @@ description">}% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{algorithmic} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -37052,6 +37177,7 @@ description">}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{algorithm} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -37076,7 +37202,9 @@ description">}% \ConfigureHinput{booktabs} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\ifdefined\hline:color\else \def\hline:color{000} +\fi \Configure{toprule} @@ -37124,7 +37252,6 @@ description">}% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{gloss} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -37208,7 +37335,6 @@ description">}% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{longdiv} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -37238,7 +37364,6 @@ description">}% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{tugboat} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -37338,6 +37463,7 @@ description">}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{ltugboat} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -37381,7 +37507,7 @@ description">}% \Css{.makesignature{margin-left:4em;}} \Css{.signaturemark{display:block-inline;margin-left:-1.33em;}} \@ifclassloaded{ltugproc}{}{% - \@ifpackageloaded{ltugproc}{}{\Configure{@BODY}{\rtitlex}} + \@ifpackageloaded{ltugproc}{}{\Configure{@BODY}{\@ifundefined{:rtitlexused}{\rtitlex}{}\def\:rtitlexused{}}} } \Configure{maketitle} {\ifvmode \IgnorePar\fi \EndP @@ -37416,9 +37542,10 @@ description">}% {\HCode{</h2>}\IgnoreIndent\EndNoFonts} \Configure{titlex} - {\HCode{<div class="titlex">}} + {\ifvmode\IgnorePar\fi\EndP\HCode{<div class="titlex">}} {\HCode{</div>}} \Css{div.titlex p{margin-bottom:1em;}} +\Css{div.titlex {text-align: center;}} \Configure{sectitle} {\ifvmode \IgnorePar\fi \EndP \HCode{<div class="sectitle">}% @@ -37432,7 +37559,6 @@ description">}% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{ltugproc} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -37490,6 +37616,7 @@ description">}% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{mls} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -37512,7 +37639,6 @@ description">}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{boxedminipage} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -37588,6 +37714,7 @@ description">}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{cancel} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -37614,7 +37741,6 @@ description">}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{paralist} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -37818,6 +37944,7 @@ description">}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{listings} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -37934,7 +38061,6 @@ description">}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{alphanum} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -38010,6 +38136,7 @@ description">}% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{epigraph} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -38047,7 +38174,6 @@ description">}% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{floatflt} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -38075,6 +38201,7 @@ description">}% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{acm-proc-article-sp} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -38261,7 +38388,7 @@ description">}% \cur:th\:currentlabel\space-->}% } \Css{div.caption {text-indent:-2em; margin-left:3em; margin-right:1em; - text-align:left;}} + text-align:center; margin-top: 0.5rem;}} \Css{div.caption span.id{font-weight: bold; white-space: nowrap; }} \Configure{proof} @@ -38395,7 +38522,6 @@ description">}% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{endnotes} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -38410,6 +38536,7 @@ description">}% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{web} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -38436,7 +38563,6 @@ description">}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{exerquiz} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -38535,6 +38661,7 @@ emailing the fix to gurari@cse.ohio-state.edu. Thanks\Hnewline + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{nicefrac} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -38610,6 +38737,7 @@ emailing the fix to gurari@cse.ohio-state.edu. Thanks\Hnewline %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{ProTex} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -38652,6 +38780,7 @@ emailing the fix to gurari@cse.ohio-state.edu. Thanks\Hnewline \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{th4} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -38859,7 +38988,6 @@ emailing the fix to gurari@cse.ohio-state.edu. Thanks\Hnewline - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{marginnote} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -38886,6 +39014,12 @@ emailing the fix to gurari@cse.ohio-state.edu. Thanks\Hnewline \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + + + + + + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{writer} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -39016,7 +39150,6 @@ emailing the fix to gurari@cse.ohio-state.edu. Thanks\Hnewline \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{syntax} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -39029,6 +39162,7 @@ emailing the fix to gurari@cse.ohio-state.edu. Thanks\Hnewline \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{soul} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -39082,6 +39216,20 @@ emailing the fix to gurari@cse.ohio-state.edu. Thanks\Hnewline %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + \ConfigureHinput{lua-ul} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + \Configure{highLight}{\HCode{<span class="highLight" style="background-color:\:highLightColor;">}}{\HCode{</span>}} +\Configure{strikeThrough}{\HCode{<span class="strikeThrough" style="text-decoration-color:\:strikeThroughColor;" >}}{\HCode{</span>}} +\Css{.strikeThrough{text-decoration: line-through;}} +\Configure{underLine}{\HCode{<span class="underLine" style="text-decoration-color:\:underLineColor;">}}{\HCode{</span>}} +\Css{.underLine{text-decoration: underline;}} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\endinput\empty\empty\empty\empty\empty\empty +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{manmac} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \Configure{chapter} @@ -40918,5 +41066,6 @@ y{\ht:special{t4ht@+\string&{35}x00FD{59}}y}% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + \endinput diff --git a/Master/texmf-dist/tex/generic/tex4ht/imakeidx.4ht b/Master/texmf-dist/tex/generic/tex4ht/imakeidx.4ht index fdeeb1ff93c..9911e72341b 100644 --- a/Master/texmf-dist/tex/generic/tex4ht/imakeidx.4ht +++ b/Master/texmf-dist/tex/generic/tex4ht/imakeidx.4ht @@ -1,4 +1,4 @@ -% imakeidx.4ht (2024-05-22-14:13), generated from tex4ht-4ht.tex +% imakeidx.4ht (2024-12-08-14:21), generated from tex4ht-4ht.tex % Copyright 2019-2024 TeX Users Group % % This work may be distributed and/or modified under the @@ -16,14 +16,14 @@ % % If you modify this program, changing the % version identification would be appreciated. -\immediate\write-1{version 2024-05-22-14:13} +\immediate\write-1{version 2024-12-08-14:21} \def\:temp#1#2#3{\html:addr% -\hbox{\Link-{}{dx\last:haddr +\hbox{\Link-{}{\a:indexhaddr }\EndLink}% \expandafter\protected@write\csname#1@idxfile\endcsname{}% -{\string\beforeentry{\RefFileNumber\FileNumber}{dx\last:haddr +{\string\beforeentry{\RefFileNumber\FileNumber}{\a:indexhaddr }{\a:makeindex}}% \o:imki@wrindexentrysplit:{#1}{#2}{#3}% } diff --git a/Master/texmf-dist/tex/generic/tex4ht/info4ht.4ht b/Master/texmf-dist/tex/generic/tex4ht/info4ht.4ht index 9c1210b5c2f..00ff9121450 100644 --- a/Master/texmf-dist/tex/generic/tex4ht/info4ht.4ht +++ b/Master/texmf-dist/tex/generic/tex4ht/info4ht.4ht @@ -2,8 +2,8 @@ \ifx\infoIVht\UnDeF\def\infoIVht#1//{}\fi\infoIVht[1]34...// -% info4ht.4ht (2021-04-17-18:22), generated from tex4ht-info.tex -% Copyright 2009-2021 TeX Users Group +% info4ht.4ht (2024-09-29-07:56), generated from tex4ht-info.tex +% Copyright 2009-2024 TeX Users Group % Copyright 2000-2009 Eitan M. Gurari % % This work may be distributed and/or modified under the @@ -21,7 +21,7 @@ % % If you modify this program, changing the % version identification would be appreciated. -\immediate\write-1{version 2021-04-17-18:22} +\immediate\write-1{version 2024-09-29-07:56} { \catcode`\@=0 \catcode`\\=11 @relax @gdef@infoIVht[#1]#2//{% @ifnum #1>1 @@ -58,7 +58,7 @@ -\ifx\infoIVht\UnDeF\def\infoIVht#1//{}\fi\infoIVht[580]629...// +\ifx\infoIVht\UnDeF\def\infoIVht#1//{}\fi\infoIVht[580]661...// \exit:ifnot{CJK,% Preamble,% @@ -118,11 +118,11 @@ web,% xy} -\ifx\infoIVht\UnDeF\def\infoIVht#1//{}\fi\infoIVht[580]629// +\ifx\infoIVht\UnDeF\def\infoIVht#1//{}\fi\infoIVht[580]661// -\ifx\infoIVht\UnDeF\def\infoIVht#1//{}\fi\infoIVht[580]629...// +\ifx\infoIVht\UnDeF\def\infoIVht#1//{}\fi\infoIVht[580]661...// %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -698,15 +698,15 @@ Cross-Linking #1 label #2 content -\Ref.....................................1 +\XRef.....................................1 \LikeRef.................................1 #1 label - \Tag and \Ref are tex4ht.sty commands introduced cross-referencing + \Tag and \XRef are tex4ht.sty commands introduced cross-referencing content through .xref auxiliary files. - \LikeRef is a variant of \Ref which doesn't verify whether the + \LikeRef is a variant of \XRef which doesn't verify whether the labels exit. It is mainly used in \Link and \edef environments. \ifTag ..................................3 @@ -720,7 +720,7 @@ Cross-Linking Load the named xref-type file .xref optional--`.xref' is assume for a default - + optional-- asks \Ref and \LikeRef commands + + optional-- asks \XRef and \LikeRef commands to use expanded tags `filename::tag', instead of just `tag' [prefix] optional--asks just for tags starting with the specified prefix. @@ -732,7 +732,7 @@ Cross-Linking Example: % a.tex - \LoadRef-[to:]{b}{from:#1} \Ref{from:filename} + \LoadRef-[to:]{b}{from:#1} \XRef{from:filename} \LikeRef{from:filename} % b.tex @@ -2928,7 +2928,6 @@ Other Hooks - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{amsart} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -3305,7 +3304,6 @@ Environments of amsthm: %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{amsmath} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -3470,6 +3468,7 @@ Environments of amstex1: \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{babel} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -3492,6 +3491,7 @@ Environments of amstex1: %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{plain} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -3553,9 +3553,6 @@ Environments of amstex1: - - - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{url} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -3575,6 +3572,8 @@ Environments of amstex1: \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{hyperref} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -3629,6 +3628,7 @@ htlatex-like commands. %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{array} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -3733,6 +3733,13 @@ Environments of array: + + + + + + + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{CJK} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -3755,6 +3762,7 @@ Environments of array: + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{moreverb} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -3784,6 +3792,7 @@ Environments of moreverb: \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{fancyvrb} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -3811,7 +3820,6 @@ Environments of fancyvrb: %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{psfig} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -3965,6 +3973,7 @@ Environments of amscd: \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{index} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -3986,6 +3995,8 @@ Environments of amscd: + + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{fancybox} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -4011,6 +4022,9 @@ Environments of amscd: + + + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{alltt} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -4036,6 +4050,7 @@ Environments of alltt: + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{vanilla} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -4082,6 +4097,7 @@ Environments of alltt: + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{ntheorem} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -4147,7 +4163,6 @@ Environments of ntheorem: - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{hebtex} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -4223,6 +4238,21 @@ Environments of ntheorem: + + + + + + + + + + + + + + + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{emulateapj} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -4264,6 +4294,7 @@ Environments of emulateapj: + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{aa} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -4383,6 +4414,11 @@ Environments of doc: + + + + + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{elsart} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -4454,6 +4490,9 @@ Environments of elsart: + + + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{seminar} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -4476,6 +4515,7 @@ Environments of seminar: %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{slides} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -4565,7 +4605,6 @@ Environments of foils: \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{slidesec} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -4587,6 +4626,7 @@ Environments of foils: %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{xy} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -4606,6 +4646,9 @@ Environments of foils: \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + + + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{pictex} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -4632,6 +4675,8 @@ Environments of foils: + + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{pb-diagram} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -4713,6 +4758,10 @@ Environments of pb-diagram: + + + + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{ltugboat} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -4745,6 +4794,8 @@ Environments of ltugboat: + + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{listings} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -4906,6 +4957,8 @@ Environments of exerquiz: + + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{ProTex} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -4931,7 +4984,6 @@ Environments of exerquiz: \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{th4} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -5308,9 +5360,32 @@ values. + + + + + + + + + + + + + + + + + + + + + + + \endinput -\ifx\infoIVht\UnDeF\def\infoIVht#1//{}\fi\infoIVht[580]629// +\ifx\infoIVht\UnDeF\def\infoIVht#1//{}\fi\infoIVht[580]661// diff --git a/Master/texmf-dist/tex/generic/tex4ht/jats.4ht b/Master/texmf-dist/tex/generic/tex4ht/jats.4ht index 4e946779867..c6add3efca5 100644 --- a/Master/texmf-dist/tex/generic/tex4ht/jats.4ht +++ b/Master/texmf-dist/tex/generic/tex4ht/jats.4ht @@ -1,22 +1,22 @@ -% jats.4ht (2024-02-23-14:41), generated from tex4ht-jats.tex +% jats.4ht (2024-08-13-13:15), generated from tex4ht-jats.tex % Copyright 2022-2024 TeX Users Group % % This work 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 +% https://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. % % This work has the LPPL maintenance status "maintained". % % The Current Maintainer of this work -% is the TeX4ht Project <http://tug.org/tex4ht>. +% is the TeX4ht Project <https://tug.org/tex4ht>. % % If you modify this program, changing the % version identification would be appreciated. -\immediate\write-1{version 2024-02-23-14:41} +\immediate\write-1{version 2024-08-13-13:15} \exit:ifnot{amsart,% amsbook,% @@ -490,6 +490,18 @@ url} {\EndNoFonts\HCode{</term><def>}\HtmlParOn\par\ShowPar } +\ConfigureList{thebibliography}% + {\ifvmode\IgnorePar\fi \EndP \HCode{<ref-list>}\let\en:bib=\empty} + {\en:bib \ifvmode\IgnorePar\fi \EndP \HCode{</ref-list>}} + {\en:bib\def\en:bib{\HCode{</mixed-citation></ref>}}% + \HCode{<ref><label>}% + \Configure{HtmlPar}% + {\EndP}% + {\EndP}% + {} {}% + } + {\HCode{</label><mixed-citation>}} + \Configure{chapter} @@ -713,6 +725,18 @@ url} {\EndNoFonts\HCode{</term><def>}\HtmlParOn\par\ShowPar } +\ConfigureList{thebibliography}% + {\ifvmode\IgnorePar\fi \EndP \HCode{<ref-list>}\let\en:bib=\empty} + {\en:bib \ifvmode\IgnorePar\fi \EndP \HCode{</ref-list>}} + {\en:bib\def\en:bib{\HCode{</mixed-citation></ref>}}% + \HCode{<ref><label>}% + \Configure{HtmlPar}% + {\EndP}% + {\EndP}% + {} {}% + } + {\HCode{</label><mixed-citation>}} + \ConfigureEnv{abstract} @@ -945,6 +969,18 @@ url} {\EndNoFonts\HCode{</term><def>}\HtmlParOn\par\ShowPar } +\ConfigureList{thebibliography}% + {\ifvmode\IgnorePar\fi \EndP \HCode{<ref-list>}\let\en:bib=\empty} + {\en:bib \ifvmode\IgnorePar\fi \EndP \HCode{</ref-list>}} + {\en:bib\def\en:bib{\HCode{</mixed-citation></ref>}}% + \HCode{<ref><label>}% + \Configure{HtmlPar}% + {\EndP}% + {\EndP}% + {} {}% + } + {\HCode{</label><mixed-citation>}} + \ConfigureEnv{abstract} @@ -976,8 +1012,6 @@ url} - - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{amsart} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -1565,6 +1599,7 @@ url} + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{biblatex} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -1634,7 +1669,6 @@ url} - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{url} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -1649,6 +1683,7 @@ url} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{hyperref} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -1739,7 +1774,6 @@ url} - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{memoir} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -1926,6 +1960,18 @@ url} {\EndNoFonts\HCode{</term><def>}\HtmlParOn\par\ShowPar } +\ConfigureList{thebibliography}% + {\ifvmode\IgnorePar\fi \EndP \HCode{<ref-list>}\let\en:bib=\empty} + {\en:bib \ifvmode\IgnorePar\fi \EndP \HCode{</ref-list>}} + {\en:bib\def\en:bib{\HCode{</mixed-citation></ref>}}% + \HCode{<ref><label>}% + \Configure{HtmlPar}% + {\EndP}% + {\EndP}% + {} {}% + } + {\HCode{</label><mixed-citation>}} + \ConfigureEnv{abstract} {\ifvmode\IgnorePar\fi\EndP\HCode{<abstract>\Hnewline}} @@ -2047,6 +2093,11 @@ url} + + + + + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{scrbook} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -2233,6 +2284,18 @@ url} {\EndNoFonts\HCode{</term><def>}\HtmlParOn\par\ShowPar } +\ConfigureList{thebibliography}% + {\ifvmode\IgnorePar\fi \EndP \HCode{<ref-list>}\let\en:bib=\empty} + {\en:bib \ifvmode\IgnorePar\fi \EndP \HCode{</ref-list>}} + {\en:bib\def\en:bib{\HCode{</mixed-citation></ref>}}% + \HCode{<ref><label>}% + \Configure{HtmlPar}% + {\EndP}% + {\EndP}% + {} {}% + } + {\HCode{</label><mixed-citation>}} + \Configure{chapter} @@ -2270,6 +2333,7 @@ url} \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{scrartcl} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -2456,6 +2520,18 @@ url} {\EndNoFonts\HCode{</term><def>}\HtmlParOn\par\ShowPar } +\ConfigureList{thebibliography}% + {\ifvmode\IgnorePar\fi \EndP \HCode{<ref-list>}\let\en:bib=\empty} + {\en:bib \ifvmode\IgnorePar\fi \EndP \HCode{</ref-list>}} + {\en:bib\def\en:bib{\HCode{</mixed-citation></ref>}}% + \HCode{<ref><label>}% + \Configure{HtmlPar}% + {\EndP}% + {\EndP}% + {} {}% + } + {\HCode{</label><mixed-citation>}} + \ConfigureEnv{abstract} @@ -2473,7 +2549,6 @@ url} \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{scrreprt} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -2660,6 +2735,18 @@ url} {\EndNoFonts\HCode{</term><def>}\HtmlParOn\par\ShowPar } +\ConfigureList{thebibliography}% + {\ifvmode\IgnorePar\fi \EndP \HCode{<ref-list>}\let\en:bib=\empty} + {\en:bib \ifvmode\IgnorePar\fi \EndP \HCode{</ref-list>}} + {\en:bib\def\en:bib{\HCode{</mixed-citation></ref>}}% + \HCode{<ref><label>}% + \Configure{HtmlPar}% + {\EndP}% + {\EndP}% + {} {}% + } + {\HCode{</label><mixed-citation>}} + \ConfigureEnv{abstract} @@ -2983,5 +3070,15 @@ url} + + + + + + + + + + \endinput diff --git a/Master/texmf-dist/tex/generic/tex4ht/latex.4ht b/Master/texmf-dist/tex/generic/tex4ht/latex.4ht index 910c0ef699e..950d69d4849 100644 --- a/Master/texmf-dist/tex/generic/tex4ht/latex.4ht +++ b/Master/texmf-dist/tex/generic/tex4ht/latex.4ht @@ -1,23 +1,23 @@ -% latex.4ht (2024-05-07-13:28), generated from tex4ht-4ht.tex +% latex.4ht (2025-02-05-13:01), generated from tex4ht-4ht.tex % Copyright 1997-2009 Eitan M. Gurari -% Copyright 2009-2024 TeX Users Group +% Copyright 2009-2025 TeX Users Group % % This work 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 +% https://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. % % This work has the LPPL maintenance status "maintained". % % The Current Maintainer of this work -% is the TeX4ht Project <http://tug.org/tex4ht>. +% is the TeX4ht Project <https://tug.org/tex4ht>. % % If you modify this program, changing the % version identification would be appreciated. -\immediate\write-1{version 2024-05-07-13:28} +\immediate\write-1{version 2025-02-05-13:01} \ifx\SaveMkHalignConf:g\:UnDef \else \expandafter\endinput\fi @@ -213,7 +213,7 @@ % load tuenc definitions for commands like \quotedblbase \ifdefined\old:DeclareTextSymbol\else \input binhex - \def\DeclareTextSymbol#1#2#3{\gdef#1{\ht:special{t4ht@+&{35}x\hex{#3}{59}}\a:HChar}} + \def\DeclareTextSymbol#1#2#3{\gdef\:tempa{\ht:special{t4ht@+&{35}x\hex{#3}{59}}\a:HChar}\HLet#1\:tempa} \input tuenc.def % this command is defined by tuenc, but doesn't work out of the box with TeX4ht \let\DeclareTextSymbol\old:DeclareTextSymbol @@ -226,6 +226,22 @@ \input tuenc-xetex.4ht \fi \fi +\def\:tempa#1{% +\ifcsname textcommabelow-#1\endcsname% +\protect\leavevmode\ht:special{t4ht@+\string&{35}x\csname textcommabelow-#1\endcsname{59}}x% +\else% +\o:textcommabelow:{#1}% +\fi% +} +\HLet\textcommabelow\:tempa + +\NewConfigure{textcommabelow}[2]{% + \expandafter\def\csname textcommabelow-#1\endcsname{#2}% +} +\Configure{textcommabelow}{S}{0218} +\Configure{textcommabelow}{s}{0219} +\Configure{textcommabelow}{T}{021A} +\Configure{textcommabelow}{t}{021B} \def\:tempc#1#2{\expandafter \ifx \csname accent \cf@encoding :#1\endcsname\relax \o:add@accent:{#1}{#2}% @@ -437,14 +453,23 @@ \let\o:ref\:ref \def\::ref#1{{\:SUBOff\:SUPOff\xdef\RefArg{#1}}\expandafter\o:ref \expandafter{\RefArg}} +\ExplSyntaxOn +\def\::ref#1{{\:SUBOff\:SUPOff\xdef\RefArg{#1}% + \SUBOn\SUPOn% + \def\rEfLiNK##1##2{\Link{##1}{}\tl_rescan:nn{}{##2}\EndLink}% + \expandafter\o:ref\expandafter{\RefArg}% +}} +\ExplSyntaxOff \DeclareDocumentCommand\:ref{s}{\IfBooleanTF{#1}{\Protect\::ref}{\Protect\::ref}} \let\ref\:ref -\def\::Ref#1{% - \let\olda:rEfLiNK\rEfLiNK%% - \def\rEfLiNK##1##2{\Link{##1}{}\edef\:ref:currentlabel{##2}\expandafter\MakeUppercase\:ref:currentlabel\EndLink}% - \::ref{#1}% - \let\rEfLiNK\olda:rEfLiNK% -} +\ExplSyntaxOn +\def\::Ref#1{{% + \:SUBOff\:SUPOff\xdef\RefArg{#1}% + \SUBOn\SUPOn% + \def\rEfLiNK##1##2{\tl_set_rescan:Nnn\l_tmpa_tl{}{##2}\Link{##1}{}\expandafter\MakeUppercase\l_tmpa_tl\EndLink}% + \expandafter\o:ref\expandafter{\RefArg}% +}} +\ExplSyntaxOff \DeclareDocumentCommand\:Ref{s}{\IfBooleanTF{#1}{\Protect\::Ref}{\Protect\::Ref}} \let\Ref\:Ref \let\:newl@bel\@newl@bel @@ -1335,15 +1360,26 @@ $\vcenter \append:def\@endtheorem{\c:newtheorem} \NewConfigure{newtheorem}{3} +\NewHookWithArguments{cmd/@sect/before}{8} +\NewReversedHookWithArguments{cmd/@sect/after}{8} +\NewHookWithArguments{cmd/@ssect/before}{5} +\NewReversedHookWithArguments{cmd/@ssect/after}{5} \let\no@ssect\@ssect -\def\@ssect#1#2#3#4#5{\:Sc3 - \no@ssect{#1}{#2}{#3}{#4}{\:Sc4#5\:Sc2}\HtmlEnv} +\def\@ssect#1#2#3#4#5{% + \UseHookWithArguments{cmd/@ssect/before}{5}{##1}{##2}{##3}{##4}{##5}% + \:Sc3\no@ssect{#1}{#2}{#3}{#4}{\:Sc4#5\:Sc2}\HtmlEnv% + \UseHookWithArguments{cmd/@ssect/after}{5}{##1}{##2}{##3}{##4}{##5}% +} \let\no@sect\@sect \def\@sect#1#2#3#4#5#6[#7]#8{% - \xdef\c:secnumdepth{#2}\:Sc3 - \no@sect{#1}{#2}{#3}{#4}{#5}{#6}[#7]{\:Sc4#8\:Sc2}\HtmlEnv} + \UseHookWithArguments{cmd/@sect/before}{8}{##1}{##2}{##3}{##4}{##5}{##6}{##7}{##8}% + \xdef\c:secnumdepth{#2}\:Sc3% + \no@sect{#1}{#2}{#3}{#4}{#5}{#6}[#7]{\:Sc4#8\:Sc2}\HtmlEnv% + \UseHookWithArguments{cmd/@sect/after}{8}{##1}{##2}{##3}{##4}{##5}{##6}{##7}{##8}% + } \let\:startsection\@startsection -\def\@startsection#1{\@ifstar{\Configure{secType}{like#1}}% +% spurious paragraph is inserted at the start of headings, we need to ignore it, using \IgnorePar +\def\@startsection#1{\ifvmode\HCode{}\IgnorePar\fi\@ifstar{\Configure{secType}{like#1}}% {\Configure{secType}{#1}}% \:Sc1\:startsection{#1}} \NewConfigure{secType}[1]{\def\sec:typ{#1}} @@ -1357,6 +1393,7 @@ $\vcenter \let\sv:Msect\M@sect \let\:Sc\:gobble \def\@sect##1##2##3##4##5##6[##7]##8{% + \UseHookWithArguments{cmd/@sect/before}{8}{##1}{##2}{##3}{##4}{##5}{##6}{##7}{##8}% \ifx \o:@seccntformat:\:UnDef \let\o:@seccntformat:\@seccntformat \fi @@ -1370,9 +1407,12 @@ $\vcenter % \let\@seccntformat=\o:@seccntformat: % - \HtmlEnv \Toc:Title{##7}\csname no:#1\endcsname{##8}}% + \HtmlEnv \Toc:Title{##7}\csname no:#1\endcsname{##8}% + \UseHookWithArguments{cmd/@sect/after}{8}{##1}{##2}{##3}{##4}{##5}{##6}{##7}{##8}% + }% % \def\@ssect##1##2##3##4##5{% + \UseHookWithArguments{cmd/@ssect/before}{5}{##1}{##2}{##3}{##4}{##5}% \gdef\ssect:ttl{##5}% % \let\@ssect\no@ssect @@ -1381,7 +1421,9 @@ $\vcenter \let\:Sc\sv:Sc \let\@sect\sv:sect \let\@ssect\sv:ssect \let\M@sect\sv:Msect % - \HtmlEnv \csname :like#1\endcsname{##5}}% + \HtmlEnv \csname :like#1\endcsname{##5}% + \UseHookWithArguments{cmd/@ssect/after}{5}{##1}{##2}{##3}{##4}{##5}% + }% \IgnorePar} \fi \pend:defI\@hangfrom{\a:@hangfrom} @@ -1439,8 +1481,8 @@ $\vcenter \begingroup \gHAdvance\TitleCount by 1 \protect:wrtoc - \edef\:temp{#2}% - \edef\:temp{\the\:tokwrite{\string\doTocEntry + \protected@edef\:temp{#2}% + \protected@edef\:temp{\the\:tokwrite{\string\doTocEntry \string\toc\expandafter\ifx\csname ext@#1\endcsname\relax #1\else\csname ext@#1\endcsname\fi {\csname @@ -1618,10 +1660,10 @@ $\vcenter \def\@wrglossary{\:wribefr\@glossaryfile\:wrglossary} \fi \def\:wribefr#1{\title:chs{\html:addr - \hbox{\Link-{}{dx\last:haddr + \hbox{\Link-{}{\a:indexhaddr }\EndLink}}{}% \edef\:temp{\write#1{\expandafter\string\a:idxmake{\RefFileNumber - \FileNumber}{\title:chs {dx\last:haddr + \FileNumber}{\title:chs {\a:indexhaddr }{\cur:th \:currentlabel}}{\a:makeindex}}}\:temp} \ifx \a:makeindex\:UnDef @@ -1630,6 +1672,30 @@ $\vcenter \ifx \beforeentry\:UnDef \def\beforeentry#1#2{} \fi \NewConfigure{idxmake}{1} \Configure{idxmake}{\beforeentry} +\NewConfigure{indexhaddr}{1} +\Configure{indexhaddr}{dx\last:haddr} +\:CheckOption{sec-index}\if:Option + +% from https://tex.stackexchange.com/a/141369/2891 +% for some reason it fails if the command includes :, so I use FourHT prefix to avoid collisions +\newcommand{\FourHTgetCurrentSectionNumber}{% + \ifnum\c@section=0 % + \thechapter + \else + \ifnum\c@subsection=0 % + \thesection + \else + \ifnum\c@subsubsection=0 % + \thesubsection + \else + \thesubsubsection + \fi + \fi + \fi +} +\Configure{makeindex}{\FourHTgetCurrentSectionNumber}% +\Configure{indexhaddr}{\CurSecHaddr}% +\fi \:CheckOption{no-bib} \if:Option\else \ifx \o:@citex:\:UnDef \let\o:@citex:\@citex\fi @@ -2338,26 +2404,26 @@ $\vcenter \expandafter\:temp\usepackage!*?: \def\:tempa{\@latex@e@error} \ifx \:temp\:tempa - % latex209.4ht (2024-05-07-13:28), generated from tex4ht-4ht.tex + % latex209.4ht (2025-02-05-13:01), generated from tex4ht-4ht.tex % Copyright 1997-2009 Eitan M. Gurari -% Copyright 2009-2024 TeX Users Group +% Copyright 2009-2025 TeX Users Group % % This work 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 +% https://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. % % This work has the LPPL maintenance status "maintained". % % The Current Maintainer of this work -% is the TeX4ht Project <http://tug.org/tex4ht>. +% is the TeX4ht Project <https://tug.org/tex4ht>. % % If you modify this program, changing the % version identification would be appreciated. -\immediate\write-1{version 2024-05-07-13:28} +\immediate\write-1{version 2025-02-05-13:01} \let\:fnsymbol\@fnsymbol \def\@fnsymbol#1{{\hbox{$\:fnsymbol{#1}$}}} diff --git a/Master/texmf-dist/tex/generic/tex4ht/lineno.4ht b/Master/texmf-dist/tex/generic/tex4ht/lineno.4ht index 01830d37b77..ba123b7764b 100644 --- a/Master/texmf-dist/tex/generic/tex4ht/lineno.4ht +++ b/Master/texmf-dist/tex/generic/tex4ht/lineno.4ht @@ -1,5 +1,5 @@ -% lineno.4ht (2023-05-21-07:16), generated from tex4ht-4ht.tex -% Copyright 2009-2023 TeX Users Group +% lineno.4ht (2024-11-24-07:37), generated from tex4ht-4ht.tex +% Copyright 2009-2024 TeX Users Group % Copyright 2000-2009 Eitan M. Gurari % % This work may be distributed and/or modified under the @@ -17,7 +17,7 @@ % % If you modify this program, changing the % version identification would be appreciated. -\immediate\write-1{version 2023-05-21-07:16} +\immediate\write-1{version 2024-11-24-07:37} \let\:tempc\linelabel @@ -41,7 +41,9 @@ % \linenumbers don't have any sense in the HTML output % moreover, they cause equations and possibly other elements to fail -\HLet\linenumbers\relax +\def\:tempa{\@ifnextchar [{\resetlinenumber }{\@ifstar {\resetlinenumber }{}}} +\HLet\linenumbers\:tempa + % if \linenumbers were used in the document preamble, we must disable them now: \LineNumbersfalse diff --git a/Master/texmf-dist/tex/generic/tex4ht/listings.4ht b/Master/texmf-dist/tex/generic/tex4ht/listings.4ht index 00b7058447c..4bb4811cb2d 100644 --- a/Master/texmf-dist/tex/generic/tex4ht/listings.4ht +++ b/Master/texmf-dist/tex/generic/tex4ht/listings.4ht @@ -1,23 +1,23 @@ -% listings.4ht (2024-06-10-14:03), generated from tex4ht-4ht.tex +% listings.4ht (2025-01-23-12:56), generated from tex4ht-4ht.tex % Copyright 2001-2009 Eitan M. Gurari -% Copyright 2009-2024 TeX Users Group +% Copyright 2009-2025 TeX Users Group % % This work 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 +% https://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. % % This work has the LPPL maintenance status "maintained". % % The Current Maintainer of this work -% is the TeX4ht Project <http://tug.org/tex4ht>. +% is the TeX4ht Project <https://tug.org/tex4ht>. % % If you modify this program, changing the % version identification would be appreciated. -\immediate\write-1{version 2024-06-10-14:03} +\immediate\write-1{version 2025-01-23-12:56} \@ifpackageloaded{xcolor}{}{% \RequirePackage{xcolor} @@ -51,14 +51,6 @@ \fi% } \NewConfigure{lstinline}{2} -\pend:defI\lst@MakeCaption{% - \let\lst:addcontentsline\addcontentsline - \def\addcontentsline{\gHAdvance\TitleCount by 1 - \lst:addcontentsline}% -} -\append:defI\lst@MakeCaption{% - \let\addcontentsline\lst:addcontentsline -} \ConfigureToc{lol} {}{\empty}{}{\newline} \lst@UserCommand\lstlistoflistings{\bgroup% \ifdefined\chapter\chapter*{\lstlistlistingname}\else\section*{\lstlistlistingname}\fi% @@ -105,6 +97,31 @@ \Configure{lst@Kern}{0.499em}{0.1em} \def\lst@outputspace{\HCode{ }} +\def\lst:newaddcontentsline#1#2#3{\gHAdvance\TitleCount by 1 + {\protect:wrtoc% + \protected@edef\:temp{#3}% + \protected@edef\:temp{\the\:tokwrite{\string\doTocEntry% + \string\toclol% identify this entry as list of listings + {\thetable}{\string\csname\space a:TocLink\string\endcsname% + {\FileNumber}{\cur:th \:currentlabel}{}{\ifx\:temp\empty\else \ignorespaces #3\fi}}% + {}\relax}}\:temp% +}}% +\pend:defI\lst@MakeCaption{% + \let\lst:addcontentsline\addcontentsline% + \let\addcontentsline\lst:newaddcontentsline% +} +\append:defI\lst@MakeCaption{% + % insert destination ID for the list of listings + \Link{}{\cur:th\:currentlabel}\EndLink + \let\addcontentsline\lst:addcontentsline +} +\ConfigureToc{lol} {}{\empty}{}{\newline} +\AtBeginDocument{% +\def\lstlistoflistings{\bgroup% + \ifdefined\chapter\chapter*{\lstlistlistingname}\else\section*{\lstlistlistingname}\fi% + \TableOfContents[lol]% + \egroup}} + \HLet\lst@frameInit=\empty \HLet\lst@frameExit=\empty diff --git a/Master/texmf-dist/tex/generic/tex4ht/longtable.4ht b/Master/texmf-dist/tex/generic/tex4ht/longtable.4ht index 49e7e6e43d4..79bb53de125 100644 --- a/Master/texmf-dist/tex/generic/tex4ht/longtable.4ht +++ b/Master/texmf-dist/tex/generic/tex4ht/longtable.4ht @@ -1,23 +1,23 @@ -% longtable.4ht (2023-04-10-13:46), generated from tex4ht-4ht.tex +% longtable.4ht (2024-09-30-13:40), generated from tex4ht-4ht.tex % Copyright 1997-2009 Eitan M. Gurari -% Copyright 2009-2023 TeX Users Group +% Copyright 2009-2024 TeX Users Group % % This work 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 +% https://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. % % This work has the LPPL maintenance status "maintained". % % The Current Maintainer of this work -% is the TeX4ht Project <http://tug.org/tex4ht>. +% is the TeX4ht Project <https://tug.org/tex4ht>. % % If you modify this program, changing the % version identification would be appreciated. -\immediate\write-1{version 2023-04-10-13:46} +\immediate\write-1{version 2024-09-30-13:40} \def\:tempc[#1]#2{% \gHAdvance\float:cnt 1 @@ -202,25 +202,8 @@ {\LT@t@bularcr}% {\LT@t@bularcr}} - \def\:tempc{% - \o:noalign:{\ifnum0=`}\fi - \penalty\@M - \futurelet\@let@token\LT@@hline} + \def\:tempc{\a:hline} \HLet\LT@hline\:tempc -\def\:tempc{% - \ifx\@let@token\hline - \global\let\@gtempa\@gobble - \gdef\LT@sep{\penalty-\@medpenalty\vskip\doublerulesep}% - \else - \global\let\@gtempa\@empty - \gdef\LT@sep{\penalty-\@lowpenalty\vskip-\arrayrulewidth}% - \fi - \ifnum0=`{\fi}% - \a:hline -% - \o:noalign:{\penalty\@M}% - \@gtempa} -\HLet\LT@@hline\:tempc \def\:tempc{% \o:noalign:\bgroup \gHAdvance\TitleCount 1 diff --git a/Master/texmf-dist/tex/generic/tex4ht/lua-ul.4ht b/Master/texmf-dist/tex/generic/tex4ht/lua-ul.4ht new file mode 100644 index 00000000000..59e50f78778 --- /dev/null +++ b/Master/texmf-dist/tex/generic/tex4ht/lua-ul.4ht @@ -0,0 +1,82 @@ +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% lua-ul.4ht (2024-10-03-13:41), generated from tex4ht-4ht.tex +% Copyright 2024 TeX Users Group +% +% This work 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. +% +% This work has the LPPL maintenance status "maintained". +% +% The Current Maintainer of this work +% is the TeX4ht Project <http://tug.org/tex4ht>. +% +% If you modify this program, changing the +% version identification would be appreciated. +\immediate\write-1{version 2024-10-03-13:41} + +\def\lua:ul:get:xcolorcss#1#2{% + \expandafter\extractcolorspec\expandafter{#1}{\tsf:color}% + \expandafter\convertcolorspec\tsf:color{HTML}\tsf:color% + \edef#2{\#\tsf:color}% +} + +\ExplSyntaxOn + +\NewConfigure{highLight}{2} +\NewDocumentCommand \:highLight {O{\l__luaul_highlight_color_tl} +m} { + \group_begin: + \lua:ul:get:xcolorcss{#1}\:highLightColor% + \a:highLight#2\b:highLight% + \group_end: +} + +\HLet\highLight\:highLight + +\NewConfigure{strikeThrough}{2} +\NewDocumentCommand \:strikeThrough {o +m} { + \group_begin: + \IfValueTF {#1} { + \lua:ul:get:xcolorcss{#1}\:strikeThroughColor% + }{\def\:strikeThroughColor{inherit}} + \a:strikeThrough#2\b:strikeThrough + \group_end: + } + +\HLet\strikeThrough\:strikeThrough + +\NewConfigure{underLine}{2} +\NewDocumentCommand \:underLine {o +m} { + \group_begin: + \IfValueTF {#1} { + \__luaul_parse_generic_keys:n { + #1 + } + }{} + \bool_if:NTF \l__luaul_color_set_bool { + % the \l__luaul_current_color_tl contains color in a format suitable for \convertcolorspec, + % so we cannot use \lua:ul:get:xcolorcss here + \expandafter\convertcolorspec\l__luaul_current_color_tl{HTML}\:tempa + \edef\:underLineColor{\#\:tempa}% + }{\def\:underLineColor{inherit}} + \a:underLine#2\b:underLine + \group_end: +} + +\HLet\underLine\:underLine + + +\bool_if:NT \l__luaul_soulnames_bool { + \cs_set_eq:NN \textul \underLine \cs_set_eq:NN \ul \textul + \cs_set_eq:NN \textst \strikeThrough \cs_set_eq:NN \st \textst + \cs_set_eq:NN \texthl \highLight \cs_set_eq:NN \hl \texthl +} + +\ExplSyntaxOff +\Hinput{lua-ul} +\endinput + diff --git a/Master/texmf-dist/tex/generic/tex4ht/makecell.4ht b/Master/texmf-dist/tex/generic/tex4ht/makecell.4ht new file mode 100644 index 00000000000..6a94196fea0 --- /dev/null +++ b/Master/texmf-dist/tex/generic/tex4ht/makecell.4ht @@ -0,0 +1,33 @@ +% makecell.4ht (2024-10-09-13:42), generated from tex4ht-4ht.tex +% Copyright 2024 TeX Users Group +% +% This work 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. +% +% This work has the LPPL maintenance status "maintained". +% +% The Current Maintainer of this work +% is the TeX4ht Project <http://tug.org/tex4ht>. +% +% If you modify this program, changing the +% version identification would be appreciated. +\immediate\write-1{version 2024-10-09-13:42} + + +\NewConfigure{makegapedcells}{1} +\def\:tempa{\a:makegapedcells} +\HLet\makegapedcells\:tempa + +\NewConfigure{nomakegapedcells}{1} +\def\:tempa{\a:nomakegapedcells} +\HLet\nomakegapedcells\:tempa + + +\Hinput{makecell} +\endinput + diff --git a/Master/texmf-dist/tex/generic/tex4ht/manyfoot-hooks.4ht b/Master/texmf-dist/tex/generic/tex4ht/manyfoot-hooks.4ht new file mode 100644 index 00000000000..093e78ad06b --- /dev/null +++ b/Master/texmf-dist/tex/generic/tex4ht/manyfoot-hooks.4ht @@ -0,0 +1,53 @@ +% manyfoot-hooks.4ht (2024-12-06-14:38), generated from tex4ht-4ht.tex +% Copyright 2024 TeX Users Group +% +% This work 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. +% +% This work has the LPPL maintenance status "maintained". +% +% The Current Maintainer of this work +% is the TeX4ht Project <http://tug.org/tex4ht>. +% +% If you modify this program, changing the +% version identification would be appreciated. +\immediate\write-1{version 2024-12-06-14:38} + + +\:AtEndOfPackage{% +\let\o:MFL@declare:\MFL@declare + +\def\manyfoot:declarefn#1{% + \expandafter\renewcommand\csname footnote#1\endcsname[1]{% + % save original footnote counters + \let\:origthefootnote\thefootnote% + \let\:origmpfn\@mpfn% + \let\:origminipageNum\minipageNum% + % \minipageNum is used in footnote links. we add the current suffix to produce unique links + % if different footnote types use the same number + \edef\minipageNum{\minipageNum #1}% + \renewcommand\thefootnote{\csname thefootnote#1\endcsname}% + % declare which counter should be used + \def\@mpfn{footnote#1}% + \footnote{##1}% + \let\thefootnote\:origthefootnote% + \let\@mpfn\:origmpfn% + \let\minipageNum\:origminipageNum% + }% +} + +\def\MFL@declare#1#2[#3]{% + \o:MFL@declare:{#1}{#2}[#3]% + \manyfoot:declarefn{#2}% +}% + + +} + +\endinput + diff --git a/Master/texmf-dist/tex/generic/tex4ht/manyfoot.4ht b/Master/texmf-dist/tex/generic/tex4ht/manyfoot.4ht new file mode 100644 index 00000000000..edca5a46fb7 --- /dev/null +++ b/Master/texmf-dist/tex/generic/tex4ht/manyfoot.4ht @@ -0,0 +1,25 @@ +% manyfoot.4ht (2024-12-04-13:41), generated from tex4ht-4ht.tex +% Copyright 2024 TeX Users Group +% +% This work 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. +% +% This work has the LPPL maintenance status "maintained". +% +% The Current Maintainer of this work +% is the TeX4ht Project <http://tug.org/tex4ht>. +% +% If you modify this program, changing the +% version identification would be appreciated. +\immediate\write-1{version 2024-12-04-13:41} + + + +\Hinput{manyfoot} +\endinput + diff --git a/Master/texmf-dist/tex/generic/tex4ht/mathjax-latex-4ht.4ht b/Master/texmf-dist/tex/generic/tex4ht/mathjax-latex-4ht.4ht index cfc53895a23..ebb64264b77 100644 --- a/Master/texmf-dist/tex/generic/tex4ht/mathjax-latex-4ht.4ht +++ b/Master/texmf-dist/tex/generic/tex4ht/mathjax-latex-4ht.4ht @@ -1,25 +1,32 @@ -% mathjax-latex-4ht.4ht (2024-02-25-08:28), generated from tex4ht-mathjax.tex -% Copyright 2018-2024 TeX Users Group +% mathjax-latex-4ht.4ht (2025-01-26-07:11), generated from tex4ht-mathjax.tex +% Copyright 2018-2025 TeX Users Group % % This work 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 +% https://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. % % This work has the LPPL maintenance status "maintained". % % The Current Maintainer of this work -% is the TeX4ht Project <http://tug.org/tex4ht>. +% is the TeX4ht Project <https://tug.org/tex4ht>. % % If you modify this program, changing the % version identification would be appreciated. -\immediate\write-1{version 2024-02-25-08:28} +\immediate\write-1{version 2025-01-26-07:11} \ExplSyntaxOn +\:CheckOption{fastmathjax}\if:Option +\DeclareRobustCommand\alteqtoks[1]{% + \tl_set:Ne \l_tmpa_tl {\detokenize{#1}} + \HCode{\l_tmpa_tl} +} + +\else \cs_new_protected:Npn \alteqtoks #1 { \tl_set:Ne \l_tmpa_tl {\detokenize{#1}} @@ -32,8 +39,9 @@ \tl_set:Ne \l_tmpb_tl{ \l_tmpa_tl } \HCode{\l_tmpb_tl} } -\ExplSyntaxOff +\fi +\ExplSyntaxOff \NewConfigure{MathJaxConfig}{1} \NewConfigure{MathJaxMacros}[1]{% \Configure{@BODY}{\bgroup\NoFonts\ttfamily\detokenize{\(}% @@ -48,10 +56,14 @@ % beginning of each display math \long\def\AltlDisplayDollars#1$${\alteqtoks{\[#1\]}$$} +\NewConfigure{MathjaxEnv}{2} + \newcommand\VerbMathToks[2]{% - \alteqtoks{\begin{#2} - #1 - \end{#2}}% + \a:MathjaxEnv% + \HCode{\string\begin{#2}}% + \alteqtoks{#1}% + \HCode{\string\end{#2}}% + \b:MathjaxEnv% } \ExplSyntaxOn \seq_new:N\:savedmathjaxenvs @@ -105,19 +117,19 @@ \VerbMath{aligned} \VerbMath{alignedat} \VerbMath{gathered} -\VerbMath{gather} +\VerbMath[equation]{gather} \VerbMath{gather*} -\VerbMath{alignat} +\VerbMath[equation]{alignat} \VerbMath{alignat*} \VerbMath{xalignat} \VerbMath{xalignat*} \VerbMath{xxalignat} -\VerbMath{align} +\VerbMath[equation]{align} \VerbMath{align*} -\VerbMath{flalign} +\VerbMath{flalign[equation]} \VerbMath{flalign*} -\VerbMath{split} -\VerbMath{multline} +\VerbMath[equation]{split} +\VerbMath[equation]{multline} \VerbMath{multline*} \VerbMath[equation]{equation} \VerbMath{equation*} @@ -162,7 +174,8 @@ }{} \@ifpackageloaded{tikz}{% -\tikzset{every picture/.append code={\:ignoretikzmatrix\RestoreMathJaxEnvironments}} +%\tikzset{every picture/.append code={\:ignoretikzmatrix\RestoreMathJaxEnvironments}} +\pend:def\tikz@installcommands{\RestoreMathJaxEnvironments} }{} } @@ -677,5 +690,38 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \endinput diff --git a/Master/texmf-dist/tex/generic/tex4ht/mathml.4ht b/Master/texmf-dist/tex/generic/tex4ht/mathml.4ht index 3de1fdb2fe2..cc26f4f36e3 100644 --- a/Master/texmf-dist/tex/generic/tex4ht/mathml.4ht +++ b/Master/texmf-dist/tex/generic/tex4ht/mathml.4ht @@ -1,23 +1,23 @@ -% mathml.4ht (2024-03-21-13:48), generated from tex4ht-mathml.tex -% Copyright 2009-2024 TeX Users Group +% mathml.4ht (2025-02-12-14:12), generated from tex4ht-mathml.tex +% Copyright 2009-2025 TeX Users Group % Copyright 1999-2009 Eitan M. Gurari % % This work 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 +% https://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. % % This work has the LPPL maintenance status "maintained". % % The Current Maintainer of this work -% is the TeX4ht Project <http://tug.org/tex4ht>. +% is the TeX4ht Project <https://tug.org/tex4ht>. % % If you modify this program, changing the % version identification would be appreciated. -\immediate\write-1{version 2024-03-21-13:48} +\immediate\write-1{version 2025-02-12-14:12} \exit:ifnot{Preamble,% accents,% @@ -34,6 +34,7 @@ array,% bm,% cancel,% dcolumn,% +esvect,% etex4ht,% fontmath,% gauss,% @@ -44,6 +45,7 @@ plain,% rlbabel,% sistyle,% siunitx,% +stmaryrd,% subeqnarray,% tex4ht,% ulem,% @@ -875,10 +877,12 @@ accent="true">&\#x0332;</\a:mathml mo></\a:mathml munder>}% {} {\HCode{<\a:mathml mover\Hnewline accent="true"><\a:mathml mrow\Hnewline>}#2\HCode{</\a:mathml mrow>}% \:widetilde:over \HCode{</\a:mathml mover>}} - \Configure{accent}\tilde\tilde{{}{}} - {} - {\HCode{<\a:mathml mover\Hnewline accent="true"><\a:mathml mrow\Hnewline>}#2\HCode{</\a:mathml mrow>}% - \:tilde:over \HCode{</\a:mathml mover>}} + % this configuration caused problems with text accents. + % we can use Unicode characters with tilde accents instead even in MathML + % \Configure{accent}\tilde\tilde{{}{}} + % {} + % {\HCode{<\a:mathml mover\Hnewline accent="true"><\a:mathml mrow\Hnewline>}#2\HCode{</\a:mathml mrow>}% + % \:tilde:over \HCode{</\a:mathml mover>}} \Configure{accent}\widehat\widehat{{}{}} {} {\HCode{<\a:mathml mover\Hnewline accent="true"><\a:mathml mrow\Hnewline>}#2\HCode{</\a:mathml mrow>}% @@ -922,7 +926,7 @@ accent="true">&\#x0332;</\a:mathml mo></\a:mathml munder>}% \def\:temp#1{\a:right{#1}\o:right:.\b:right{#1}}\HLet\right\:temp \Configure{left} {} - {\HCode{<\a:mathml mrow><\a:mathml mo \a:mathml fence="true" \a:mathml form="prefix"> + {\HCode{<\a:mathml mrow><\a:mathml mo \a:mathml fence="true" \a:mathml form="prefix">% \expandafter \ifx \csname \string#1:lr del\endcsname\relax #1\else \csname \string#1:lr del\endcsname\fi @@ -1412,14 +1416,19 @@ accent="true">&\#x0332;</\a:mathml mo></\a:mathml munder>}% \HLet\limsup\:tempa \def\:tempa{\mathop{\:limspaces{lim}{inf}}\limits} \HLet\liminf\:tempa -\def\:temp#1#2{\def#1{\PauseMathClass{\HCode{<mi mathvariant="normal">}\ht:special{t4ht@+\string&{35}x#2{59}}\a:HChar\HCode{</mi>}}\EndPauseMathClass}} -\:temp\Psi{03A8} +\def\:temp#1#2{\def\:tempa{\PauseMathClass{\HCode{<mi mathvariant="normal">}\ht:special{t4ht@+\string&{35}x#2{59}}\a:HChar\HCode{</mi>}}\EndPauseMathClass}\HLet#1\:tempa} +\:temp\Gamma{0393} \:temp\Delta{0394} +\:temp\Theta{0398} +\:temp\Lambda{039B} \:temp\Xi{039E} \:temp\Pi{03A0} \:temp\Sigma{03A3} \:temp\Upsilon{03A5} +\:temp\Phi{03A6} +\:temp\Psi{03A8} \:temp\Omega{03A9} + \AtBeginDocument{% \Configure{mathop*}{*}{}{}{\Configure{mathop}{*}{<\a:mathml mo>}{</\a:mathml mo>}{}} } @@ -1795,6 +1804,7 @@ accent="true">&\#x0332;</\a:mathml mo></\a:mathml munder>}% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{amsbsy} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -1807,7 +1817,6 @@ accent="true">&\#x0332;</\a:mathml mo></\a:mathml munder>}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{amsmath} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -1963,7 +1972,7 @@ accent="true">&\#x0332;</\a:mathml mo></\a:mathml munder>}% \:tempc{xalignat*}{xalignat-star} \:tempc{flalign*}{flalign-star} \Configure{gathered} - {\HCode{<\a:mathml mtable\Hnewline \mml:class="gathered">}} + {\HCode{<\a:mathml mtable\Hnewline \mml:class="gathered" \mtable:align:attribute>}} {\HCode{</\a:mathml mtable>}} {\HCode{<\a:mathml mtr>}} {\HCode{</\a:mathml mtr>}} {\HCode{\Hnewline<\a:mathml mtd>}} {\HCode{</\a:mathml mtd>}} @@ -2152,15 +2161,21 @@ accent="true">&\#x0332;</\a:mathml mo></\a:mathml munder>}% \ifx \ilimits@\o:displaylimits: \let\ilimits@\nolimits \fi +% thanks to Linas Stonys for this code +\def\mtable:align:attribute{% + \if t\Hlcr\space\a:mathml align="axis 1"\fi + \if b\Hlcr\space\a:mathml align="axis -1"\fi + } + \Configure{aligned} - {\HCode{<\a:mathml mtable\Hnewline \mml:class="aligned">}} + {\HCode{<\a:mathml mtable\Hnewline \mml:class="aligned" \mtable:align:attribute>}} {\HCode{</\a:mathml mtable>}} {\HCode{<\a:mathml mtr\Hnewline>}} {\HCode{</\a:mathml mtr>}} {\HCode{<\a:mathml mtd \a:mathml columnalign="\ifodd\HCol right\else left\fi" >}} {\HCode{</\a:mathml mtd>}} \Configure{alignedat} - {\HCode{<\a:mathml mtable\Hnewline \mml:class="alignedat">}} + {\HCode{<\a:mathml mtable\Hnewline \mml:class="alignedat" \mtable:align:attribute>}} {\HCode{</\a:mathml mtable>}} {\HCode{<\a:mathml mtr\Hnewline>}} {\HCode{</\a:mathml mtr>}} {\HCode{<\a:mathml mtd @@ -2179,6 +2194,7 @@ accent="true">&\#x0332;</\a:mathml mo></\a:mathml munder>}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{amsfonts} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -2190,7 +2206,6 @@ accent="true">&\#x0332;</\a:mathml mo></\a:mathml munder>}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{amstext} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -2264,6 +2279,7 @@ accent="true">&\#x0332;</\a:mathml mo></\a:mathml munder>}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{amstex} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -2747,10 +2763,12 @@ accent="true">&\#x0332;</\a:mathml mo></\a:mathml munder>}% {} {\HCode{<\a:mathml mover\Hnewline accent="true"><\a:mathml mrow\Hnewline>}#2\HCode{</\a:mathml mrow>}% \:widetilde:over \HCode{</\a:mathml mover>}} - \Configure{accent}\tilde\tilde{{}{}} - {} - {\HCode{<\a:mathml mover\Hnewline accent="true"><\a:mathml mrow\Hnewline>}#2\HCode{</\a:mathml mrow>}% - \:tilde:over \HCode{</\a:mathml mover>}} + % this configuration caused problems with text accents. + % we can use Unicode characters with tilde accents instead even in MathML + % \Configure{accent}\tilde\tilde{{}{}} + % {} + % {\HCode{<\a:mathml mover\Hnewline accent="true"><\a:mathml mrow\Hnewline>}#2\HCode{</\a:mathml mrow>}% + % \:tilde:over \HCode{</\a:mathml mover>}} \Configure{accent}\widehat\widehat{{}{}} {} {\HCode{<\a:mathml mover\Hnewline accent="true"><\a:mathml mrow\Hnewline>}#2\HCode{</\a:mathml mrow>}% @@ -2794,7 +2812,7 @@ accent="true">&\#x0332;</\a:mathml mo></\a:mathml munder>}% \def\:temp#1{\a:right{#1}\o:right:.\b:right{#1}}\HLet\right\:temp \Configure{left} {} - {\HCode{<\a:mathml mrow><\a:mathml mo \a:mathml fence="true" \a:mathml form="prefix"> + {\HCode{<\a:mathml mrow><\a:mathml mo \a:mathml fence="true" \a:mathml form="prefix">% \expandafter \ifx \csname \string#1:lr del\endcsname\relax #1\else \csname \string#1:lr del\endcsname\fi @@ -3476,6 +3494,8 @@ accent="true">&\#x0332;</\a:mathml mo></\a:mathml munder>}% + + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{vanilla} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -3517,6 +3537,8 @@ accent="true">&\#x0332;</\a:mathml mo></\a:mathml munder>}% + + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{amssymb} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -3928,6 +3950,11 @@ accent="true">&\#x0332;</\a:mathml mo></\a:mathml munder>}% + + + + + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{mathtools} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -3996,6 +4023,37 @@ accent="true">&\#x0332;</\a:mathml mo></\a:mathml munder>}% \HCode{</\a:mathml mtext>}% \fi \HCode{</\a:mathml mtd>}} +% support bidirectional harpoons +\def\:leftrightharpoons{\HCode{<\a:mathml mo stretchy="true">}\PauseMathClass\x:unicode{21CC}\EndPauseMathClass\HCode{</\a:mathml mo>}} +\def\:righleftharpoons{\HCode{<\a:mathml mo stretchy="true">}\PauseMathClass\x:unicode{21CB}\EndPauseMathClass\HCode{</\a:mathml mo>}} + +\providecommand*\:xleftrightharpoons[2][]{% +\ext@arrow 3095\:leftrightharpoons{#1}{#2}} + +\providecommand*\:xrightleftharpoons[2][]{% +\ext@arrow 3095\:leftrightharpoons{#1}{#2}} + +\HLet\xleftrightharpoons\:xleftrightharpoons +\HLet\xrightleftharpoons\:xrightleftharpoons + +% correctly place text under and over arrows +\def\:tempa#1#2#3#4#5#6#7{% + \bgroup% + \def\relbar{}% remove relbar in arrow fills + \def\arrowfill@##1##2##3##4{##1##2##3##4}% remove arrowfill@, to prevent errors + \@ifempty{#7}{% + \HCode{<\a:mathml munder><\a:mathml mrow><\a:mathml mo stretchy="true">}\PauseMathClass#5{}\EndPauseMathClass\HCode{</\a:mathml mo></\a:mathml mrow><\a:mathml mrow>}#6\HCode{</\a:mathml mrow></\a:mathml munder>}% + }{% + \@ifempty{#6}{% + \HCode{<\a:mathml mover><\a:mathml mrow><\a:mathml mo stretchy="true">}\PauseMathClass#5{}\EndPauseMathClass\HCode{</\a:mathml mo></\a:mathml mrow><\a:mathml mrow>}#7\HCode{</\a:mathml mrow></\a:mathml mover>}% + }{% + \HCode{<\a:mathml munderover><\a:mathml mrow><\a:mathml mo stretchy="true">}\PauseMathClass#5{}\EndPauseMathClass\HCode{</\a:mathml mo></\a:mathml mrow><\a:mathml mrow>}#6\HCode{</\a:mathml mrow><\a:mathml mrow>}#7\HCode{</\a:mathml mrow></\a:mathml munderover>}% + }% + }% + \egroup +} + +\HLet\ext@arrow\:tempa %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -4078,6 +4136,17 @@ accent="true">&\#x0332;</\a:mathml mo></\a:mathml munder>}% + + + + + + + + + + + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{accents} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -4179,7 +4248,6 @@ accent="true">&\#x0332;</\a:mathml mo></\a:mathml munder>}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{ushort} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -4217,6 +4285,7 @@ accent="true">&\#x0332;</\a:mathml mo></\a:mathml munder>}% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{bm} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -4263,9 +4332,6 @@ accent="true">&\#x0332;</\a:mathml mo></\a:mathml munder>}% - - - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{ulem} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -4296,6 +4362,7 @@ accent="true">&\#x0332;</\a:mathml mo></\a:mathml munder>}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{cancel} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -4339,6 +4406,29 @@ accent="true">&\#x0332;</\a:mathml mo></\a:mathml munder>}% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + \ConfigureHinput{stmaryrd} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\def\:tempa{\HCode{<\a:mathml mo fence="false">\string&\#x27E6;</\a:mathml mo>}} +\HLet\llbracket\:tempa +\def\:tempa{\HCode{<\a:mathml mo fence="false">\string&\#x27E7;</\a:mathml mo>}} +\HLet\rrbracket\:tempa +\Configure{mfenced}{\llbracket}{\string&\#x27E6;} +\Configure{mfenced}{\rrbracket}{\string&\#x27E7;} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\endinput\empty\empty\empty\empty\empty\empty +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + + + + + + + + @@ -4575,6 +4665,22 @@ accent="true">&\#x0332;</\a:mathml mo></\a:mathml munder>}% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + \ConfigureHinput{esvect} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + \def\:tempa#1{% +\bgroup\HCode{<\a:mathml mover><\a:mathml mrow>}#1\HCode{</\a:mathml mrow><\a:mathml mo \a:mathml stretchy="true">} +\PauseMathClass\fldr\EndPauseMathClass% +\HCode{</\a:mathml mo></\a:mathml mover>}\egroup +} + +\HRestore\ESV@vecteur +\HLet\ESV@vecteur\:tempa + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\endinput\empty\empty\empty\empty\empty\empty +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \endinput diff --git a/Master/texmf-dist/tex/generic/tex4ht/memoir.4ht b/Master/texmf-dist/tex/generic/tex4ht/memoir.4ht index e9d47c6ea24..66484ce7db4 100644 --- a/Master/texmf-dist/tex/generic/tex4ht/memoir.4ht +++ b/Master/texmf-dist/tex/generic/tex4ht/memoir.4ht @@ -1,24 +1,23 @@ -% memoir.4ht (2024-05-20-13:21), generated from tex4ht-4ht.tex +% memoir.4ht (2024-10-20-07:19), generated from tex4ht-4ht.tex % Copyright 2003-2009 Eitan M. Gurari -% Copyright 2003-2024 TeX Users Group % Copyright 2009-2024 TeX Users Group % % This work 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 +% https://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. % % This work has the LPPL maintenance status "maintained". % % The Current Maintainer of this work -% is the TeX4ht Project <http://tug.org/tex4ht>. +% is the TeX4ht Project <https://tug.org/tex4ht>. % % If you modify this program, changing the % version identification would be appreciated. -\immediate\write-1{version 2024-05-20-13:21} +\immediate\write-1{version 2024-10-20-07:19} \input book.4ht \input verse.4ht @@ -117,6 +116,7 @@ \HtmlEnv \Toc:Title{##8}\csname no:#1\endcsname{##9}}% % \def\@sect##1##2##3##4##5##6[##7]##8{% + \UseHookWithArguments{cmd/@sect/before}{8}{##1}{##2}{##3}{##4}{##5}{##6}{##7}{##8}% \ifx \o:@seccntformat:\:UnDef \let\o:@seccntformat:\@seccntformat \fi @@ -130,9 +130,12 @@ % \let\@seccntformat=\o:@seccntformat: % - \HtmlEnv \Toc:Title{##7}\csname no:#1\endcsname{##8}}% + \HtmlEnv \Toc:Title{##7}\csname no:#1\endcsname{##8}% + \UseHookWithArguments{cmd/@sect/after}{8}{##1}{##2}{##3}{##4}{##5}{##6}{##7}{##8}% + }% % \def\@ssect##1##2##3##4##5{% + \UseHookWithArguments{cmd/@ssect/before}{5}{##1}{##2}{##3}{##4}{##5}% \gdef\ssect:ttl{##5}% % \let\@ssect\no@ssect @@ -141,7 +144,9 @@ \let\:Sc\sv:Sc \let\@sect\sv:sect \let\@ssect\sv:ssect \let\M@sect\sv:Msect % - \HtmlEnv \csname :like#1\endcsname{##5}}% + \HtmlEnv \csname :like#1\endcsname{##5}% + \UseHookWithArguments{cmd/@ssect/after}{5}{##1}{##2}{##3}{##4}{##5}% + }% \IgnorePar} \fi diff --git a/Master/texmf-dist/tex/generic/tex4ht/mempatch.4ht b/Master/texmf-dist/tex/generic/tex4ht/mempatch.4ht index df88c5b0f1c..4a281473904 100644 --- a/Master/texmf-dist/tex/generic/tex4ht/mempatch.4ht +++ b/Master/texmf-dist/tex/generic/tex4ht/mempatch.4ht @@ -1,30 +1,23 @@ -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% mempatch.4ht 2009-05-21-09:32 % -% Copyright (C) 2003--2009 Eitan M. Gurari % -% % -% This work 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. % -% % -% This work has the LPPL maintenance status "maintained".% -% % -% This Current Maintainer of this work % -% is Eitan M. Gurari. % -% % -% If you modify this program your changing its signature % -% with a directive of the following form will be % -% appreciated. % -% \message{signature} % -% % -% gurari@cse.ohio-state.edu % -% http://www.cse.ohio-state.edu/~gurari % -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\immediate\write-1{version 2009-05-21-09:32} +% mempatch.4ht (2024-11-03-05:51), generated from tex4ht-4ht.tex +% Copyright 2003-2009 Eitan M. Gurari +% Copyright 2009-2024 TeX Users Group +% +% This work 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 +% https://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. +% +% This work has the LPPL maintenance status "maintained". +% +% The Current Maintainer of this work +% is the TeX4ht Project <https://tug.org/tex4ht>. +% +% If you modify this program, changing the +% version identification would be appreciated. +\immediate\write-1{version 2024-11-03-05:51} \let\no@Msect\M@sect \NewConfigure{@sec @ssect}[1]{% @@ -53,6 +46,7 @@ \HtmlEnv \Toc:Title{##8}\csname no:#1\endcsname{##9}}% % \def\@sect##1##2##3##4##5##6[##7]##8{% + \UseHookWithArguments{cmd/@sect/before}{8}{##1}{##2}{##3}{##4}{##5}{##6}{##7}{##8}% \ifx \o:@seccntformat:\:UnDef \let\o:@seccntformat:\@seccntformat \fi @@ -66,9 +60,12 @@ % \let\@seccntformat=\o:@seccntformat: % - \HtmlEnv \Toc:Title{##7}\csname no:#1\endcsname{##8}}% + \HtmlEnv \Toc:Title{##7}\csname no:#1\endcsname{##8}% + \UseHookWithArguments{cmd/@sect/after}{8}{##1}{##2}{##3}{##4}{##5}{##6}{##7}{##8}% + }% % \def\@ssect##1##2##3##4##5{% + \UseHookWithArguments{cmd/@ssect/before}{5}{##1}{##2}{##3}{##4}{##5}% \gdef\ssect:ttl{##5}% % \let\@ssect\no@ssect @@ -77,7 +74,9 @@ \let\:Sc\sv:Sc \let\@sect\sv:sect \let\@ssect\sv:ssect \let\M@sect\sv:Msect % - \HtmlEnv \csname :like#1\endcsname{##5}}% + \HtmlEnv \csname :like#1\endcsname{##5}% + \UseHookWithArguments{cmd/@ssect/after}{5}{##1}{##2}{##3}{##4}{##5}% + }% \IgnorePar} \fi diff --git a/Master/texmf-dist/tex/generic/tex4ht/metalogo.4ht b/Master/texmf-dist/tex/generic/tex4ht/metalogo.4ht new file mode 100644 index 00000000000..c8513ac3849 --- /dev/null +++ b/Master/texmf-dist/tex/generic/tex4ht/metalogo.4ht @@ -0,0 +1,35 @@ +% metalogo.4ht (2024-11-28-13:39), generated from tex4ht-4ht.tex +% Copyright 2024 TeX Users Group +% +% This work 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. +% +% This work has the LPPL maintenance status "maintained". +% +% The Current Maintainer of this work +% is the TeX4ht Project <http://tug.org/tex4ht>. +% +% If you modify this program, changing the +% version identification would be appreciated. +\immediate\write-1{version 2024-11-28-13:39} + + +\NewConfigure{XeLaTeX}{1} +\Configure{XeLaTeX}{Xe\LaTeX} +\def\:tempa{\a:XeLaTeX} +\HLet\XeLaTeX\:tempa + +\NewConfigure{XeTeX}{1} +\Configure{XeTeX}{Xe\TeX} +\def\:tempa{\a:XeTeX} +\HLet\XeTeX\:tempa + + +\Hinput{metalogo} +\endinput + diff --git a/Master/texmf-dist/tex/generic/tex4ht/minted.4ht b/Master/texmf-dist/tex/generic/tex4ht/minted.4ht index 7ff6a2778e0..b6beb7323b5 100644 --- a/Master/texmf-dist/tex/generic/tex4ht/minted.4ht +++ b/Master/texmf-dist/tex/generic/tex4ht/minted.4ht @@ -1,5 +1,5 @@ -% minted.4ht (2022-10-31-13:02), generated from tex4ht-4ht.tex -% Copyright 2022 TeX Users Group +% minted.4ht (2024-09-27-09:25), generated from tex4ht-4ht.tex +% Copyright 2022-2024 TeX Users Group % % This work may be distributed and/or modified under the % conditions of the LaTeX Project Public License, either @@ -16,7 +16,7 @@ % % If you modify this program, changing the % version identification would be appreciated. -\immediate\write-1{version 2022-10-31-13:02} +\immediate\write-1{version 2024-09-27-09:25} \NewConfigure{InlineCode}{2} @@ -43,23 +43,6 @@ % support for background color in Minted listings \NewConfigure{MintedColorbg}{2} -\renewenvironment{minted@colorbg}[1]{% - \colorlet{shadecolor}{#1}% - \extractcolorspec{shadecolor}{\:tempa}% - \expandafter\convertcolorspec\:tempa{HTML}\minted:bgcolor% - \a:MintedColorbg% - } - {\b:MintedColorbg\medskip\noindent} - -% support for background color in Minted listings -\NewConfigure{MintedColorbg}{2} -\renewenvironment{minted@colorbg}[1]{% - \colorlet{shadecolor}{#1}% - \extractcolorspec{shadecolor}{\:tempa}% - \expandafter\convertcolorspec\:tempa{HTML}\minted:bgcolor% - \a:MintedColorbg% - } - {\b:MintedColorbg\medskip\noindent} \NewConfigure{mintedfixes}[1]{\concat:config\a:mintedfixes{#1}} \let\a:mintedfixes\empty diff --git a/Master/texmf-dist/tex/generic/tex4ht/moderncv.4ht b/Master/texmf-dist/tex/generic/tex4ht/moderncv.4ht new file mode 100644 index 00000000000..c07dddde74d --- /dev/null +++ b/Master/texmf-dist/tex/generic/tex4ht/moderncv.4ht @@ -0,0 +1,168 @@ +% moderncv.4ht (2024-08-19-13:32), generated from tex4ht-4ht.tex +% Copyright 2024 TeX Users Group +% +% This work 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. +% +% This work has the LPPL maintenance status "maintained". +% +% The Current Maintainer of this work +% is the TeX4ht Project <http://tug.org/tex4ht>. +% +% If you modify this program, changing the +% version identification would be appreciated. +\immediate\write-1{version 2024-08-19-13:32} + +\NewConfigure{section}{2} +\RenewDocumentCommand\section{sm}{\a:section #2\b:section} + +\NewConfigure{subsection}{2} +\RenewDocumentCommand\subsection{sm}{\a:subsection #2\b:subsection} + + +\NewConfigure{cvitem}{3} +\renewcommand*{\cvitem}[3][.25em]{ +\a:cvitem #2\b:cvitem #3\c:cvitem +} + +\NewConfigure{cvdoubleitem}{2} +\renewcommand*{\cvdoubleitem}[5][.25em]{% +\a:cvdoubleitem +\cvitem{#2}{#3} +\cvitem{#4}{#5} +\b:cvdoubleitem +} + +\NewConfigure{cvlistitem}{2} +\renewcommand*{\cvlistitem}[2][.25em]{% + \a:cvlistitem\cvitem[#1]{\listitemsymbol}{#2}\b:cvlistitem +} + +\NewConfigure{cvlistdoubleitem}{2} +\renewcommand*{\cvlistdoubleitem}[3][.25em]{% + \a:cvlistdoubleitem% + \cvitem[#1]{\listitemsymbol}{#2}% + \cvitem[#1]{\listitemsymbol}{#3}% + \b:cvlistdoubleitem% +} + +\NewConfigure{cvhead}{2} +\NewConfigure{cvphoto}{2} + + +\renewcommand*{\makecvhead}{% + \a:cvhead + % recompute lengths (in case we are switching from letter to resume, or vice versa) + \recomputecvlengths% + % optional detailed information (pre-rendering) + \@initializebox{\makecvheaddetailsbox}% + \if@details% + \def\phonesdetails{}% + \collectionloop{phones}{% the key holds the phone type (=symbol command prefix), the item holds the number + \protected@edef\phonesdetails{\phonesdetails\protect\makenewline\csname\collectionloopkey phonesymbol\endcsname\collectionloopitem}}% + \def\socialsdetails{}% + \collectionloop{socials}{% the key holds the social type (=symbol command prefix), the item holds the link + \protected@edef\socialsdetails{\socialsdetails\protect\makenewline\csname\collectionloopkey socialsymbol\endcsname\collectionloopitem}}% + \savebox{\makecvheaddetailsbox}{% + \addressfont\color{color2}% + \if@left\begin{tabular}[b]{@{}r@{}}\fi% + \if@right\begin{tabular}[b]{@{}l@{}}\fi% + \ifthenelse{\isundefined{\@addressstreet}}{}{\makenewline\addresssymbol\@addressstreet% + \ifthenelse{\equal{\@addresscity}{}}{}{\makenewline\@addresscity}% if \addresstreet is defined, \addresscity and addresscountry will always be defined but could be empty + \ifthenelse{\equal{\@addresscountry}{}}{}{\makenewline\@addresscountry}}% + \ifthenelse{\isundefined{\@born}}{}{\makenewline\bornsymbol\@born}% + \phonesdetails% needs to be pre-rendered as loops and tabulars seem to conflict + \ifthenelse{\isundefined{\@email}}{}{\makenewline\emailsymbol\emaillink{\@email}}% + \ifthenelse{\isundefined{\@homepage}}{}{\makenewline\homepagesymbol\httpslink{\@homepage}}% + \socialsdetails% needs to be pre-rendered as loops and tabulars seem to conflict + \ifthenelse{\isundefined{\@extrainfo}}{}{\makenewline\@extrainfo}% + \end{tabular} + }\fi% + % optional photo (pre-rendering) + \@initializebox{\makecvheadpicturebox}% + \savebox{\makecvheadpicturebox}{% + \ifthenelse{\isundefined{\@photo}}% + {}% + {% + \a:cvphoto\includegraphics[]{\@photo}\b:cvphoto}% + }% + % name and title (pre-rendering) + \@initializelength{\makecvheaddetailswidth}\settowidth{\makecvheaddetailswidth}{\usebox{\makecvheaddetailsbox}}% + \@initializelength{\makecvheadpicturewidth}\settowidth{\makecvheadpicturewidth}{\usebox{\makecvheadpicturebox}}% + \ifthenelse{\lengthtest{\makecvheadnamewidth=0pt}}% check for dummy value (equivalent to \ifdim\makecvheadnamewidth=0pt) + {\setlength{\makecvheadnamewidth}{\textwidth-\makecvheaddetailswidth-\makecvheadpicturewidth}}% + {}% + \@initializebox{\makecvheadnamebox}% + \savebox{\makecvheadnamebox}{% + \begin{minipage}[b]{\makecvheadnamewidth}% + \if@left\raggedright\fi% + \if@right\raggedleft\fi% + \namestyle{\@firstname\ \@lastname}% + \ifthenelse{\equal{\@title}{}}{}{\\[1.25em]\titlestyle{\@title}}% + \end{minipage}}% + % rendering + \if@left% + \usebox{\makecvheadnamebox}% + \hfill% + \llap{\usebox{\makecvheaddetailsbox}}% \llap is used to suppress the width of the box, allowing overlap if the value of makecvheadnamewidth is forced + \usebox{\makecvheadpicturebox}\fi% + \if@right% + \usebox{\makecvheadpicturebox}% + \rlap{\usebox{\makecvheaddetailsbox}}% \llap is used to suppress the width of the box, allowing overlap if the value of makecvheadnamewidth is forced + \hfill% + \usebox{\makecvheadnamebox}\fi% + \\[2.5em]% + % optional quote + \ifthenelse{\isundefined{\@quote}}% + {}% + {{\centering\begin{minipage}{\quotewidth}\centering\quotestyle{\@quote}\end{minipage}\\[2.5em]}}% + \b:cvhead\par}% to avoid weird spacing bug at the first section if no blank line is left after \makecvhead + + +\RenewDocumentCommand\cvskilllegend{s +O{.25em} +O{\skillLegend@defaultLevelOne} +O{\skillLegend@defaultLevelTwo} +O{\skillLegend@defaultLevelThree} +O{\skillLegend@defaultLevelFour} +O{\skillLegend@defaultLevelFive} +m}{% +\begin{tabular}{l l l l l l} + \raggedleft\hintstyle{#8} & \cvskill{1}\, & \,{\skillLegend@FontSize #3} & \cvskill{3}\, &\,{\skillLegend@FontSize #5 } \\% + % + & \cvskill{2}\, & \,\multirow{2}{\cvskilllegend@leftdescriptorwidth}{{\skillLegend@FontSize #4}} & \cvskill{4}\, &\,{\skillLegend@FontSize #6 } \\% + % + & & & \cvskill{5}\, &\,{\skillLegend@FontSize #7 }% + \end{tabular}% +}% + + +\NewConfigure{cvskill}{2} +\def\:tempa#1{\def\:cvskillamount{#1}\a:cvskill\o:cvskill:{#1}\b:cvskill} +\HLet\cvskill\:tempa + +\NewConfigure{cvskillhead}{2} +\NewConfigure{cvskillentry}{2} +\RenewDocumentCommand\cvskillhead{O{.25em} +O{\skillMatrix@HeaderDefaultOne} +O{\skillMatrix@HeaderDefaultTwo} +O{\skillMatrix@HeaderDefaultThree} +O{\skillMatrix@HeaderDefaultFour}}{% + \begingroup + \a:cvskillhead + \begin{tabular}{ p{6em} p{12em} p{4em} p{20em}}% + { #2} & { #3} & { #4} & { #5} + \end{tabular}% + \b:cvskillhead + \endgroup + \par\addvspace{#1} +} + +\RenewDocumentCommand\cvskillentry{s +O{.25em} +m +m +m +m +m}{% +\a:cvskillentry +\cvitem{#3}{ + \begin{tabular}{ p{6em} p{12em} p{4em} p{20em}} + \centering \cvskill{#4} &\centering {#5} & \centering {#6} &{\itshape#7}% + \end{tabular}}% + \b:cvskillentry + \par\addvspace{#2} +} + + +\Hinput{moderncv} +\endinput + diff --git a/Master/texmf-dist/tex/generic/tex4ht/multind.4ht b/Master/texmf-dist/tex/generic/tex4ht/multind.4ht index f6dd5dfcd70..f50bf779fb3 100644 --- a/Master/texmf-dist/tex/generic/tex4ht/multind.4ht +++ b/Master/texmf-dist/tex/generic/tex4ht/multind.4ht @@ -1,39 +1,32 @@ -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% multind.4ht 2009-05-21-09:32 % -% Copyright (C) 1999--2009 Eitan M. Gurari % -% % -% This work 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. % -% % -% This work has the LPPL maintenance status "maintained".% -% % -% This Current Maintainer of this work % -% is Eitan M. Gurari. % -% % -% If you modify this program your changing its signature % -% with a directive of the following form will be % -% appreciated. % -% \message{signature} % -% % -% gurari@cse.ohio-state.edu % -% http://www.cse.ohio-state.edu/~gurari % -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\immediate\write-1{version 2009-05-21-09:32} +% multind.4ht (2025-01-05-08:19), generated from tex4ht-4ht.tex +% Copyright 1999-2009 Eitan M. Gurari +% Copyright 2009-2025 TeX Users Group +% +% This work 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 +% https://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. +% +% This work has the LPPL maintenance status "maintained". +% +% The Current Maintainer of this work +% is the TeX4ht Project <https://tug.org/tex4ht>. +% +% If you modify this program, changing the +% version identification would be appreciated. +\immediate\write-1{version 2025-01-05-08:19} \pend:defII\@wrindex{\warn:idx{##1}\@ifundefined{##1@idxfile}{}{\html:addr - \hbox{\Link-{}{dx\last:haddr + \hbox{\Link-{}{\a:indexhaddr }\EndLink}% \edef\:temp{\expandafter \write\csname ##1@idxfile\endcsname{\string \beforeentry{\RefFileNumber - \FileNumber}{dx\last:haddr + \FileNumber}{\a:indexhaddr }{\a:makeindex}}}\:temp }} \ifx \a:makeindex\:UnDef diff --git a/Master/texmf-dist/tex/generic/tex4ht/nicematrix.4ht b/Master/texmf-dist/tex/generic/tex4ht/nicematrix.4ht new file mode 100644 index 00000000000..c16def5b0fd --- /dev/null +++ b/Master/texmf-dist/tex/generic/tex4ht/nicematrix.4ht @@ -0,0 +1,28 @@ +% nicematrix.4ht (2024-10-18-14:47), generated from tex4ht-4ht.tex +% Copyright 2024 TeX Users Group +% +% This work 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. +% +% This work has the LPPL maintenance status "maintained". +% +% The Current Maintainer of this work +% is the TeX4ht Project <http://tug.org/tex4ht>. +% +% If you modify this program, changing the +% version identification would be appreciated. +\immediate\write-1{version 2024-10-18-14:47} + +\ExplSyntaxOn +\bool_set_true:N\g__nicematrix_no_test_for_array_bool + +\ExplSyntaxOff + +\Hinput{nicematrix} +\endinput + diff --git a/Master/texmf-dist/tex/generic/tex4ht/ooffice.4ht b/Master/texmf-dist/tex/generic/tex4ht/ooffice.4ht index 41866f00ee3..9d6ba91ede5 100644 --- a/Master/texmf-dist/tex/generic/tex4ht/ooffice.4ht +++ b/Master/texmf-dist/tex/generic/tex4ht/ooffice.4ht @@ -1,23 +1,23 @@ -% ooffice.4ht (2024-05-27-13:00), generated from tex4ht-ooffice.tex -% Copyright 2009-2024 TeX Users Group +% ooffice.4ht (2025-02-18-10:43), generated from tex4ht-ooffice.tex +% Copyright 2009-2025 TeX Users Group % Copyright 2001-2009 Maarten Wisse, James Naughton, Eitan M. Gurari % % This work 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 +% https://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. % % This work has the LPPL maintenance status "maintained". % % The Current Maintainer of this work -% is the TeX4ht Project <http://tug.org/tex4ht>. +% is the TeX4ht Project <https://tug.org/tex4ht>. % % If you modify this program, changing the % version identification would be appreciated. -\immediate\write-1{version 2024-05-27-13:00} +\immediate\write-1{version 2025-02-18-10:43} \exit:ifnot{Preamble,% algorithmicx,% @@ -34,6 +34,7 @@ biblatex,% book,% cgloss4e,% color,% +colortbl,% covington,% csquotes,% curve,% @@ -7105,6 +7106,7 @@ style:display-name="Footnote anchor" style:family="text"> + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{graphics} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -8208,6 +8210,7 @@ style:display-name="Footnote anchor" style:family="text"> \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{amsbook} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -8236,7 +8239,6 @@ style:display-name="Footnote anchor" style:family="text"> - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{amsmath} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -8255,6 +8257,7 @@ style:display-name="Footnote anchor" style:family="text"> + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{babel} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -8292,7 +8295,6 @@ Y{0178}\i{00EF}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{plain} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -8636,7 +8638,6 @@ Y{0178}\i{00EF}% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{longtable} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -8670,7 +8671,6 @@ Y{0178}\i{00EF}% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{tabularx} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -8704,6 +8704,7 @@ Y{0178}\i{00EF}% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{mwart} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -11505,7 +11506,6 @@ Y{0178}\i{00EF}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{mwbk} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -12935,7 +12935,6 @@ Y{0178}\i{00EF}% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{german} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -12959,7 +12958,6 @@ Y{0178}\i{00EF}% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{fancyvrb} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -12989,6 +12987,7 @@ Y{0178}\i{00EF}% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{color} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -13141,6 +13140,17 @@ Y{0178}\i{00EF}% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + \ConfigureHinput{colortbl} +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + \Configure{rowcolor}{\@gobble} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +\endinput\empty\empty\empty\empty\empty\empty +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + + @@ -13313,6 +13323,7 @@ Y{0178}\i{00EF}% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{frenchb} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -13367,6 +13378,10 @@ Y{0178}\i{00EF}% + + + + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{wrapfig} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -13391,7 +13406,6 @@ Y{0178}\i{00EF}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{subscript} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -13441,7 +13455,6 @@ Y{0178}\i{00EF}% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{scrbook} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -14937,7 +14950,6 @@ Y{0178}\i{00EF}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{scrartcl} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -16274,6 +16286,7 @@ Y{0178}\i{00EF}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{scrreprt} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -18459,6 +18472,8 @@ Y{0178}\i{00EF}% + + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{jurabib} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -18505,6 +18520,11 @@ Y{0178}\i{00EF}% + + + + + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{slides} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -18611,6 +18631,7 @@ Y{0178}\i{00EF}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{foils} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -18793,6 +18814,7 @@ Y{0178}\i{00EF}% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{pstricks} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -18850,7 +18872,6 @@ Y{0178}\i{00EF}% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{curve} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -19109,6 +19130,8 @@ Y{0178}\i{00EF}% + + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{enumerate} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -19217,6 +19240,7 @@ Y{0178}\i{00EF}% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{linguex} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -19246,7 +19270,6 @@ Y{0178}\i{00EF}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{cgloss4e} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -19410,6 +19433,7 @@ Y{0178}\i{00EF}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{pst-jtree} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -19497,7 +19521,6 @@ Y{0178}\i{00EF}% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{algorithmicx} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -19580,8 +19603,6 @@ Y{0178}\i{00EF}% - - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{ulem} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -19944,6 +19965,7 @@ Y{0178}\i{00EF}% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{listings} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -19999,7 +20021,6 @@ Y{0178}\i{00EF}% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{alphanum} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -20117,6 +20138,9 @@ Y{0178}\i{00EF}% + + + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{footmisc} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -20160,6 +20184,11 @@ Y{0178}\i{00EF}% + + + + + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{mdwlist} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -20370,6 +20399,7 @@ Y{0178}\i{00EF}% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{framed} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -20421,5 +20451,6 @@ Y{0178}\i{00EF}% + \endinput diff --git a/Master/texmf-dist/tex/generic/tex4ht/piton.4ht b/Master/texmf-dist/tex/generic/tex4ht/piton.4ht index b1140b4094b..fc79912f695 100644 --- a/Master/texmf-dist/tex/generic/tex4ht/piton.4ht +++ b/Master/texmf-dist/tex/generic/tex4ht/piton.4ht @@ -1,5 +1,5 @@ -% piton.4ht (2023-10-13-14:15), generated from tex4ht-4ht.tex -% Copyright 2023 TeX Users Group +% piton.4ht (2024-10-01-13:46), generated from tex4ht-4ht.tex +% Copyright 2023-2024 TeX Users Group % % This work may be distributed and/or modified under the % conditions of the LaTeX Project Public License, either @@ -16,10 +16,43 @@ % % If you modify this program, changing the % version identification would be appreciated. -\immediate\write-1{version 2023-10-13-14:15} +\immediate\write-1{version 2024-10-01-13:46} \ExplSyntaxOn +\IfPackageLoadedTF{xcolor}{}{\RequirePackage{xcolor}} + +\def\:pitonvisiblespace{ \HCode{\string&\#x2423;} } +\cs_new_protected:Npn \:__piton_replace_spaces:n #1 + { + \tl_set:Nn \l_tmpa_tl { #1 } + \bool_if:NTF \l__piton_show_spaces_bool + { + \tl_set:Nn \l__piton_space_tl {\:pitonvisiblespace} % U+2423 + \regex_replace_all:nnN { \x20 } {\c{:pitonvisiblespace}} \l_tmpa_tl + } + { + \bool_if:NTF \l__piton_break_lines_in_Piton_bool + { + \regex_replace_all:nnN + { \x20 } + { \c { __piton_breakable_space: } } + \l_tmpa_tl + \regex_replace_all:nnN + { \c { l__piton_space_tl } } + { \c { __piton_breakable_space: } } + \l_tmpa_tl + } + { + \regex_replace_all:nnN { \x20 } { \x20 } \l_tmpa_tl + } + } + \l_tmpa_tl + } + + +\HLet\__piton_replace_spaces:n\:__piton_replace_spaces:n + \NewConfigure{pitonline}{3} \NewConfigure{pitonnumber}{2} diff --git a/Master/texmf-dist/tex/generic/tex4ht/qtree.4ht b/Master/texmf-dist/tex/generic/tex4ht/qtree.4ht new file mode 100644 index 00000000000..be1c26b28e8 --- /dev/null +++ b/Master/texmf-dist/tex/generic/tex4ht/qtree.4ht @@ -0,0 +1,32 @@ +% qtree.4ht (2024-11-20-13:31), generated from tex4ht-4ht.tex +% Copyright 2024 TeX Users Group +% +% This work 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. +% +% This work has the LPPL maintenance status "maintained". +% +% The Current Maintainer of this work +% is the TeX4ht Project <http://tug.org/tex4ht>. +% +% If you modify this program, changing the +% version identification would be appreciated. +\immediate\write-1{version 2024-11-20-13:31} + + +\NewConfigure{qtree}{2} + +\pend:def\Tree{\a:qtree} +\append:def\endTree{\b:qtree} + +\Configure{qtree}{\Picture+[\csname a:Picture-alt\endcsname]{}}{\EndPicture} + + +\Hinput{qtree} +\endinput + diff --git a/Master/texmf-dist/tex/generic/tex4ht/resizegather-hooks.4ht b/Master/texmf-dist/tex/generic/tex4ht/resizegather-hooks.4ht new file mode 100644 index 00000000000..1595badca7a --- /dev/null +++ b/Master/texmf-dist/tex/generic/tex4ht/resizegather-hooks.4ht @@ -0,0 +1,27 @@ +% resizegather-hooks.4ht (2024-12-06-14:38), generated from tex4ht-4ht.tex +% Copyright 2024 TeX Users Group +% +% This work 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. +% +% This work has the LPPL maintenance status "maintained". +% +% The Current Maintainer of this work +% is the TeX4ht Project <http://tug.org/tex4ht>. +% +% If you modify this program, changing the +% version identification would be appreciated. +\immediate\write-1{version 2024-12-06-14:38} + + +% this option should be enough to disable redefinition of equations +% and other math environments +\PassOptionsToPackage{equations=false}{resizegather} + +\endinput + diff --git a/Master/texmf-dist/tex/generic/tex4ht/resizegather.4ht b/Master/texmf-dist/tex/generic/tex4ht/resizegather.4ht new file mode 100644 index 00000000000..88fd73c5bf6 --- /dev/null +++ b/Master/texmf-dist/tex/generic/tex4ht/resizegather.4ht @@ -0,0 +1,25 @@ +% resizegather.4ht (2024-12-06-14:38), generated from tex4ht-4ht.tex +% Copyright 2024 TeX Users Group +% +% This work 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. +% +% This work has the LPPL maintenance status "maintained". +% +% The Current Maintainer of this work +% is the TeX4ht Project <http://tug.org/tex4ht>. +% +% If you modify this program, changing the +% version identification would be appreciated. +\immediate\write-1{version 2024-12-06-14:38} + + + +\Hinput{resizegather} +\endinput + diff --git a/Master/texmf-dist/tex/generic/tex4ht/scrartcl.4ht b/Master/texmf-dist/tex/generic/tex4ht/scrartcl.4ht index 3f1a6354ebf..f3be8b05897 100644 --- a/Master/texmf-dist/tex/generic/tex4ht/scrartcl.4ht +++ b/Master/texmf-dist/tex/generic/tex4ht/scrartcl.4ht @@ -1,29 +1,31 @@ -% scrartcl.4ht (2021-10-19-14:11), generated from tex4ht-4ht.tex +% scrartcl.4ht (2025-02-06-13:10), generated from tex4ht-4ht.tex % Copyright 1999-2009 Eitan M. Gurari -% Copyright 2009-2021 TeX Users Group +% Copyright 2009-2025 TeX Users Group % % This work 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 +% https://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. % % This work has the LPPL maintenance status "maintained". % % The Current Maintainer of this work -% is the TeX4ht Project <http://tug.org/tex4ht>. +% is the TeX4ht Project <https://tug.org/tex4ht>. % % If you modify this program, changing the % version identification would be appreciated. -\immediate\write-1{version 2021-10-19-14:11} +\immediate\write-1{version 2025-02-06-13:10} \input article.4ht \Def:Section\minisec{}{#1} \let\:minisec=\minisec \def\minisec#1{\:minisec{#1}\@afterheading} +\newcommand*\scr:startsection[6]{\ifvmode\HCode{}\IgnorePar\fi\o:scr@startsection:{#1}{#2}{#3}{#4}{#5}{#6}} +\HLet\scr@startsection\scr:startsection \NewConfigure{subtitle}{2} \pend:defI\@makefntext{\IgnorePar} \let\scr@defineobsoletefonts\thr@@ diff --git a/Master/texmf-dist/tex/generic/tex4ht/scrbook.4ht b/Master/texmf-dist/tex/generic/tex4ht/scrbook.4ht index 7320657b4b9..c7197d078bc 100644 --- a/Master/texmf-dist/tex/generic/tex4ht/scrbook.4ht +++ b/Master/texmf-dist/tex/generic/tex4ht/scrbook.4ht @@ -1,23 +1,23 @@ -% scrbook.4ht (2023-04-10-13:46), generated from tex4ht-4ht.tex +% scrbook.4ht (2025-02-06-13:10), generated from tex4ht-4ht.tex % Copyright 1999-2009 Eitan M. Gurari -% Copyright 2009-2023 TeX Users Group +% Copyright 2009-2025 TeX Users Group % % This work 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 +% https://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. % % This work has the LPPL maintenance status "maintained". % % The Current Maintainer of this work -% is the TeX4ht Project <http://tug.org/tex4ht>. +% is the TeX4ht Project <https://tug.org/tex4ht>. % % If you modify this program, changing the % version identification would be appreciated. -\immediate\write-1{version 2023-04-10-13:46} +\immediate\write-1{version 2025-02-06-13:10} \let\o:maketitle:\maketitle \let\o:maketitle:\maketitle @@ -391,6 +391,8 @@ A script of the form \Def:Section\minisec{}{#1} \let\:minisec=\minisec \def\minisec#1{\:minisec{#1}\@afterheading} +\newcommand*\scr:startsection[6]{\ifvmode\HCode{}\IgnorePar\fi\o:scr@startsection:{#1}{#2}{#3}{#4}{#5}{#6}} +\HLet\scr@startsection\scr:startsection \NewConfigure{subtitle}{2} \pend:defI\@makefntext{\IgnorePar} \let\scr@defineobsoletefonts\thr@@ diff --git a/Master/texmf-dist/tex/generic/tex4ht/scrreprt.4ht b/Master/texmf-dist/tex/generic/tex4ht/scrreprt.4ht index 306738e0748..48bac72e010 100644 --- a/Master/texmf-dist/tex/generic/tex4ht/scrreprt.4ht +++ b/Master/texmf-dist/tex/generic/tex4ht/scrreprt.4ht @@ -1,23 +1,23 @@ -% scrreprt.4ht (2023-04-10-13:46), generated from tex4ht-4ht.tex +% scrreprt.4ht (2025-02-06-13:10), generated from tex4ht-4ht.tex % Copyright (C) 1999-2009 Eitan M. Gurari -% Copyright 2009-2023 TeX Users Group +% Copyright 2009-2025 TeX Users Group % % This work 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 +% https://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. % % This work has the LPPL maintenance status "maintained". % % The Current Maintainer of this work -% is the TeX4ht Project <http://tug.org/tex4ht>. +% is the TeX4ht Project <https://tug.org/tex4ht>. % % If you modify this program, changing the % version identification would be appreciated. -\immediate\write-1{version 2023-04-10-13:46} +\immediate\write-1{version 2025-02-06-13:10} \let\o:maketitle:\maketitle \def\maketitle{\bgroup @@ -383,6 +383,8 @@ UnDFexyz}% \Def:Section\minisec{}{#1} \let\:minisec=\minisec \def\minisec#1{\:minisec{#1}\@afterheading} +\newcommand*\scr:startsection[6]{\ifvmode\HCode{}\IgnorePar\fi\o:scr@startsection:{#1}{#2}{#3}{#4}{#5}{#6}} +\HLet\scr@startsection\scr:startsection \NewConfigure{subtitle}{2} \pend:defI\@makefntext{\IgnorePar} \let\scr@defineobsoletefonts\thr@@ diff --git a/Master/texmf-dist/tex/generic/tex4ht/splitidx.4ht b/Master/texmf-dist/tex/generic/tex4ht/splitidx.4ht index b02443f2b07..e0f229fc9ea 100644 --- a/Master/texmf-dist/tex/generic/tex4ht/splitidx.4ht +++ b/Master/texmf-dist/tex/generic/tex4ht/splitidx.4ht @@ -1,30 +1,23 @@ -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% splitidx.4ht 2009-05-21-09:32 % -% Copyright (C) 2003--2009 Eitan M. Gurari % -% % -% This work 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. % -% % -% This work has the LPPL maintenance status "maintained".% -% % -% This Current Maintainer of this work % -% is Eitan M. Gurari. % -% % -% If you modify this program your changing its signature % -% with a directive of the following form will be % -% appreciated. % -% \message{signature} % -% % -% gurari@cse.ohio-state.edu % -% http://www.cse.ohio-state.edu/~gurari % -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\immediate\write-1{version 2009-05-21-09:32} +% splitidx.4ht (2025-01-05-08:19), generated from tex4ht-4ht.tex +% Copyright 2003-2009 Eitan M. Gurari +% Copyright 2009-2025 TeX Users Group +% +% This work 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 +% https://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. +% +% This work has the LPPL maintenance status "maintained". +% +% The Current Maintainer of this work +% is the TeX4ht Project <https://tug.org/tex4ht>. +% +% If you modify this program, changing the +% version identification would be appreciated. +\immediate\write-1{version 2025-01-05-08:19} \def\warn:idx#1{% \expandafter\ifx \csname #1warn:idx\endcsname\relax @@ -46,20 +39,20 @@ \if@splitidx \warn:idx{##1}% \@ifundefined{@indexfile@##1}{}{\html:addr - \hbox{\Link-{}{dx\last:haddr + \hbox{\Link-{}{\a:indexhaddr }\EndLink}% \edef\:temp{\expandafter \write\csname @indexfile@##1\endcsname{\expandafter \string\a:idxmake{\RefFileNumber - \FileNumber}{dx\last:haddr + \FileNumber}{\a:indexhaddr }{\a:makeindex}}}\:temp}% \else \warn:idx{\jobname}% - \html:addr \hbox{\Link-{}{dx\last:haddr + \html:addr \hbox{\Link-{}{\a:indexhaddr }\EndLink \edef\:temp{% \write\@indexfile{\expandafter\string\a:idxmake{\RefFileNumber - \FileNumber}{dx\last:haddr + \FileNumber}{\a:indexhaddr }{\a:makeindex}}}\:temp}% \fi } diff --git a/Master/texmf-dist/tex/generic/tex4ht/standalone.4ht b/Master/texmf-dist/tex/generic/tex4ht/standalone.4ht new file mode 100644 index 00000000000..e022c4adb2c --- /dev/null +++ b/Master/texmf-dist/tex/generic/tex4ht/standalone.4ht @@ -0,0 +1,29 @@ +% standalone.4ht (2025-01-23-12:56), generated from tex4ht-4ht.tex +% Copyright 2025 TeX Users Group +% +% This work 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. +% +% This work has the LPPL maintenance status "maintained". +% +% The Current Maintainer of this work +% is the TeX4ht Project <http://tug.org/tex4ht>. +% +% If you modify this program, changing the +% version identification would be appreciated. +\immediate\write-1{version 2025-01-23-12:56} + +% save the original meaning if we want to use it eventually +\let\:standaloneenv\standaloneenv +% but disable if by default +\let\standaloneenv\@gobble + + +\Hinput{standalone} +\endinput + diff --git a/Master/texmf-dist/tex/generic/tex4ht/stmaryrd.4ht b/Master/texmf-dist/tex/generic/tex4ht/stmaryrd.4ht new file mode 100644 index 00000000000..74c11de6878 --- /dev/null +++ b/Master/texmf-dist/tex/generic/tex4ht/stmaryrd.4ht @@ -0,0 +1,25 @@ +% stmaryrd.4ht (2024-10-11-14:13), generated from tex4ht-4ht.tex +% Copyright 2024 TeX Users Group +% +% This work 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. +% +% This work has the LPPL maintenance status "maintained". +% +% The Current Maintainer of this work +% is the TeX4ht Project <http://tug.org/tex4ht>. +% +% If you modify this program, changing the +% version identification would be appreciated. +\immediate\write-1{version 2024-10-11-14:13} + + + +\Hinput{stmaryrd} +\endinput + diff --git a/Master/texmf-dist/tex/generic/tex4ht/svg.4ht b/Master/texmf-dist/tex/generic/tex4ht/svg.4ht index 1a745704f07..172c9be5a3e 100644 --- a/Master/texmf-dist/tex/generic/tex4ht/svg.4ht +++ b/Master/texmf-dist/tex/generic/tex4ht/svg.4ht @@ -1,5 +1,5 @@ -% svg.4ht (2021-04-18-08:39), generated from tex4ht-4ht.tex -% Copyright 2018-2021 TeX Users Group +% svg.4ht (2025-01-09-13:20), generated from tex4ht-4ht.tex +% Copyright 2018-2025 TeX Users Group % % This work may be distributed and/or modified under the % conditions of the LaTeX Project Public License, either @@ -16,7 +16,7 @@ % % If you modify this program, changing the % version identification would be appreciated. -\immediate\write-1{version 2021-04-18-08:39} +\immediate\write-1{version 2025-01-09-13:20} \renewcommand\includesvg[2][]{% % get file name with \svgpath support @@ -39,7 +39,7 @@ \fi% \expandafter\includegraphics\expandafter[\svg@tempb]{\svg@file@base.\svg@file@ext} \else - \typeout{SVG file #1 cannot be found} + \PackageWarning{svg.4ht}{SVG file "#2" cannot be found} \fi } diff --git a/Master/texmf-dist/tex/generic/tex4ht/tagpdf-base-hooks.4ht b/Master/texmf-dist/tex/generic/tex4ht/tagpdf-base-hooks.4ht index 4793862b311..dcf308775ee 100644 --- a/Master/texmf-dist/tex/generic/tex4ht/tagpdf-base-hooks.4ht +++ b/Master/texmf-dist/tex/generic/tex4ht/tagpdf-base-hooks.4ht @@ -1,4 +1,4 @@ -% tagpd-base-hooks.4ht (2024-05-06-13:37), generated from tex4ht-4ht.tex +% tagpd-base-hooks.4ht (2024-07-26-15:08), generated from tex4ht-4ht.tex % Copyright 2024 TeX Users Group % % This work may be distributed and/or modified under the @@ -16,10 +16,7 @@ % % If you modify this program, changing the % version identification would be appreciated. -\immediate\write-1{version 2024-05-06-13:37} +\immediate\write-1{version 2024-07-26-15:08} -% ignore tagpdf's specials -% we use csname, because \ExplSyntaxOn .. Off caused catcode issues -\expandafter\def\csname __tag_whatsits:\endcsname{} \endinput diff --git a/Master/texmf-dist/tex/generic/tex4ht/tagpdf-hooks.4ht b/Master/texmf-dist/tex/generic/tex4ht/tagpdf-hooks.4ht index c012b7967b8..02db5485f63 100644 --- a/Master/texmf-dist/tex/generic/tex4ht/tagpdf-hooks.4ht +++ b/Master/texmf-dist/tex/generic/tex4ht/tagpdf-hooks.4ht @@ -1,4 +1,4 @@ -% tagpdf-hooks.4ht (2024-05-03-14:34), generated from tex4ht-4ht.tex +% tagpdf-hooks.4ht (2024-07-26-15:08), generated from tex4ht-4ht.tex % Copyright 2022-2024 TeX Users Group % % This work may be distributed and/or modified under the @@ -16,11 +16,9 @@ % % If you modify this program, changing the % version identification would be appreciated. -\immediate\write-1{version 2024-05-03-14:34} +\immediate\write-1{version 2024-07-26-15:08} \ExplSyntaxOn -% ignore tagpdf's specials -\cs_set_protected:Npn \__tag_whatsits: {} \ExplSyntaxOff \:AtEndOfPackage{% \RenewDocumentCommand \tagpdfsetup { m }{} diff --git a/Master/texmf-dist/tex/generic/tex4ht/tex4ht.4ht b/Master/texmf-dist/tex/generic/tex4ht/tex4ht.4ht index 4a90577d7c4..6c942eb4a52 100644 --- a/Master/texmf-dist/tex/generic/tex4ht/tex4ht.4ht +++ b/Master/texmf-dist/tex/generic/tex4ht/tex4ht.4ht @@ -1,26 +1,26 @@ \ifnum\the\catcode`\%=14\else \expandafter\edef\csname \string:RestoreCatcodes\endcsname{\catcode`\%\the \catcode`\%}\catcode`\%14\fi -% tex4ht.4ht (2024-05-06-13:38), generated from tex4ht-options.tex -% Copyright 2009-2024 TeX Users Group +% tex4ht.4ht (2025-02-09-08:05), generated from tex4ht-options.tex +% Copyright 2009-2025 TeX Users Group % Copyright 1997-2009 Eitan M. Gurari % % This work 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 +% https://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. % % This work has the LPPL maintenance status "maintained". % % The Current Maintainer of this work -% is the TeX4ht Project <http://tug.org/tex4ht>. +% is the TeX4ht Project <https://tug.org/tex4ht>. % % If you modify this program, changing the % version identification would be appreciated. -\immediate\write-1{version 2024-05-06-13:38} +\immediate\write-1{version 2025-02-09-08:05} \expandafter\edef\csname :RestoreCatcodes\endcsname{% \expandafter\ifx \csname :RestoreCatcodes\endcsname\relax\else diff --git a/Master/texmf-dist/tex/generic/tex4ht/tex4ht.sty b/Master/texmf-dist/tex/generic/tex4ht/tex4ht.sty index 18a85e36ce7..4536875479e 100644 --- a/Master/texmf-dist/tex/generic/tex4ht/tex4ht.sty +++ b/Master/texmf-dist/tex/generic/tex4ht/tex4ht.sty @@ -1,26 +1,26 @@ \ifnum\the\catcode`\%=14\else\expandafter\edef\csname \string:RestoreCatcodes\endcsname{\catcode`\%\the \catcode`\%}\catcode`\%14\fi -% tex4ht.sty (2024-05-06-13:36), generated from tex4ht-sty.tex -% Copyright 2009-2024 TeX Users Group +% tex4ht.sty (2025-02-03-13:10), generated from tex4ht-sty.tex +% Copyright 2009-2025 TeX Users Group % Copyright 1996-2009 Eitan M. Gurari % % This work 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 +% https://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. % % This work has the LPPL maintenance status "maintained". % % The Current Maintainer of this work -% is the TeX4ht Project <http://tug.org/tex4ht>. +% is the TeX4ht Project <https://tug.org/tex4ht>. % % If you modify this program, changing the % version identification would be appreciated. -\immediate\write-1{version 2024-05-06-13:36} +\immediate\write-1{version 2025-02-03-13:10} \ifx \Preamble\UnDef \else @@ -1446,7 +1446,7 @@ \fi \fi } -\def\Ref#1{\expandafter\ifx +\def\XRef#1{\expandafter\ifx \csname cw:#1\endcsname \relax \:NoTag{#1}% \else \csname cw:#1\endcsname \fi} \def\LikeRef#1{\expandafter\ifx @@ -1486,7 +1486,7 @@ \openin15=\jobname.xref \ifeof15 \def\:NoTag#1{\hbox{$???$}} \else \def\:NoTag#1{\hbox{$???$} - \:warning{\string\Ref\string{\string#1\string}?}} + \:warning{\string\XRef\string{\string#1\string}?}} \ifx \:::HRefTag\:UnDef\else \pend:defII\:::HRefTag{% \if \relax##1\relax\else @@ -2503,7 +2503,7 @@ \:tempa_ \def\x:SUBOn{\def_{\ifmmode \expandafter\pr:sb - \else \expandafter\sys:sb\fi}\let\sb=_ + \else \expandafter\sys:sb\fi}\let\sb=_% } \x:SUBOn @@ -2516,18 +2516,18 @@ \:CheckOption{_13} \if:Option \def\no:restore{\let\no:restore\:UnDef \mathcode`\_"8000 \catcode`\_13 } - \append:def\SUBOn{\mathcode`\_"8000 \catcode`\_13 \let\sb=_ + \append:def\SUBOn{\mathcode`\_"8000 \catcode`\_13 \let\sb=_% } \else \Log:Note{for \string_ of catcode 13, use the command line option `\string_13'} \def\no:restore{\let\no:restore\:UnDef \mathcode`\_"8000 \catcode`\_12 } - \append:def\SUBOn{\mathcode`\_"8000 \catcode`\_12 \let\sb=_ + \append:def\SUBOn{\mathcode`\_"8000 \catcode`\_12 \let\sb=_% } \fi \bgroup - \SUBOn \def\:temp{\let\sb=_ + \SUBOn \def\:temp{\let\sb=_% } \expandafter \egroup \:temp \fi @@ -2589,7 +2589,7 @@ \:tempb^ \def\x:SUPOn{\def^{\ifmmode \expandafter\pr:sp - \else \expandafter\sys:sp\fi}\let\sp=^ + \else \expandafter\sys:sp\fi}\let\sp=^% } \x:SUPOn @@ -2621,17 +2621,17 @@ \def\:tempc{#2}\fi}} \append:def\no:restore{\mathcode`\^"8000 \catcode`\^13 } - \append:def\SUPOn{\mathcode`\^"8000 \catcode`\^13 \let\sp=^ + \append:def\SUPOn{\mathcode`\^"8000 \catcode`\^13 \let\sp=^% } \else \Log:Note{for \string^ of catcode 13, use the command line option `\string^13'}% \append:def\no:restore{\mathcode`\^"8000 \catcode`\^12 } - \append:def\SUPOn{\mathcode`\^"8000 \catcode`\^12 \let\sp=^ + \append:def\SUPOn{\mathcode`\^"8000 \catcode`\^12 \let\sp=^% } \fi \bgroup - \SUPOn \def\:temp{\let\sp=^ + \SUPOn \def\:temp{\let\sp=^% } \expandafter \egroup \:temp \fi diff --git a/Master/texmf-dist/tex/generic/tex4ht/th4.4ht b/Master/texmf-dist/tex/generic/tex4ht/th4.4ht index 894c2416d4c..1bfc57b5a3c 100644 --- a/Master/texmf-dist/tex/generic/tex4ht/th4.4ht +++ b/Master/texmf-dist/tex/generic/tex4ht/th4.4ht @@ -1,23 +1,23 @@ -% th4.4ht (2021-12-02-14:01), generated from tex4ht-4ht.tex +% th4.4ht (2024-09-24-10:22), generated from tex4ht-4ht.tex % Copyright 1997-2009 Eitan M. Gurari -% Copyright 2009-2021 TeX Users Group +% Copyright 2009-2024 TeX Users Group % % This work 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 +% https://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. % % This work has the LPPL maintenance status "maintained". % % The Current Maintainer of this work -% is the TeX4ht Project <http://tug.org/tex4ht>. +% is the TeX4ht Project <https://tug.org/tex4ht>. % % If you modify this program, changing the % version identification would be appreciated. -\immediate\write-1{version 2021-12-02-14:01} +\immediate\write-1{version 2024-09-24-10:22} \ifHtml @@ -420,19 +420,19 @@ \def\TagCh#1{\Tag{#1(C }{\theChapterCounter}\Tag {#1(c }{\:curch}} -\def\RefCh#1{\Link{\LikeRef{#1(c }}{}Chapter\ \Ref +\def\RefCh#1{\Link{\LikeRef{#1(c }}{}Chapter\ \XRef {#1(C }\EndLink} \def\TagApp#1{\Tag{#1(A }{\theChapterCounter}\Tag {#1(a }{\:curch}} -\def\RefApp#1{\Link{\LikeRef{#1(a }}{}Appendix\ \Ref +\def\RefApp#1{\Link{\LikeRef{#1(a }}{}Appendix\ \XRef {#1(A }\EndLink} \def\TagSec#1{\Tag{#1(S }{\theSectionCounter}\Tag {#1(s }{\:cursec}} -\def\RefSec#1{\Link{\LikeRef{#1(s }}{}Section\ \Ref +\def\RefSec#1{\Link{\LikeRef{#1(s }}{}Section\ \XRef {#1(S }\EndLink} \def\TagPage#1{% \Link{}{page#1}\EndLink\Tag{#1}{}} -\def\RefPage#1{\Link{page#1}{}\Ref{#1}\EndLink} +\def\RefPage#1{\Link{page#1}{}\XRef{#1}\EndLink} \def\List#1{\begingroup {\hfil\break\IgnorePar}% \HAssign\ListCounter0 diff --git a/Master/texmf-dist/tex/generic/tex4ht/unicode.4ht b/Master/texmf-dist/tex/generic/tex4ht/unicode.4ht index c88859b04cc..506d0d78b51 100644 --- a/Master/texmf-dist/tex/generic/tex4ht/unicode.4ht +++ b/Master/texmf-dist/tex/generic/tex4ht/unicode.4ht @@ -1,23 +1,23 @@ -% unicode.4ht (2023-04-02-08:01), generated from tex4ht-unicode.tex -% Copyright 2009-2023 TeX Users Group +% unicode.4ht (2024-12-15-07:18), generated from tex4ht-unicode.tex +% Copyright 2009-2024 TeX Users Group % Copyright 1998-2009 Eitan M. Gurari % % This work 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 +% https://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. % % This work has the LPPL maintenance status "maintained". % % The Current Maintainer of this work -% is the TeX4ht Project <http://tug.org/tex4ht>. +% is the TeX4ht Project <https://tug.org/tex4ht>. % % If you modify this program, changing the % version identification would be appreciated. -\immediate\write-1{version 2023-04-02-08:01} +\immediate\write-1{version 2024-12-15-07:18} \exit:ifnot{8859-6,% SIunits,% @@ -301,6 +301,35 @@ e{0113}I{012A}i{012B}O{014C}o{014D}U{016A}u{016B}Y{0232}% y{0233}G{1E20}g{1E21}% {}{}} {\a:accents{}{#1}} {\b:accents{bar}{#1}{#2}} + %%%% +\def\:tempa#1{% +\Configure{accent}\ddot\ddot{H{1E26}h{1E27}W{1E84}w{1E85}X{1E8C}x{1E8D}% +t{1E97}A{00C4}E{00CB}I{00CF}O{00D6}U{00DC}% +a{00E4}e{00EB}i{00EF}o{00F6}u{00FC}y{00FF}% +Y{0178}\i{00EF}% +{}{34}} + {\a:accents{}{##1}} {\b:accents{uml}{##1}{##2}} +\expand:after{\Configure{accent}}\csname #1\string\"\expandafter\endcsname + \csname #1\string\"\endcsname{H{1E26}h{1E27}W{1E84}w{1E85}X{1E8C}x{1E8D}% +t{1E97}A{00C4}E{00CB}I{00CF}O{00D6}U{00DC}% +a{00E4}e{00EB}i{00EF}o{00F6}u{00FC}y{00FF}% +Y{0178}\i{00EF}% +{}{34}} + {\a:accents{}{##1}} {\b:accents{uml}{##1}{##2}} +\expand:after{\Configure{accent}}\csname #1\string\r\expandafter\endcsname + \csname #1\string\r\endcsname{A{00C5}a{00E5}U{016E}u{016F}% +{}{}} + {\a:accents{}{##1}} {\b:accents{uml}{##1}{##2}} +\expand:after{\Configure{accent}}\csname #1\string\v\expandafter\endcsname + \csname #1\string\v\endcsname{C{010C}c{010D}D{010E}d{010F}% +E{011A}e{011B}L{013D}l{013E}N{0147}n{0148}R{0158}r{0159}% +S{0160}s{0161}T{0164}t{0165}Z{017D}z{017E}A{01CD}a{01CE}I{01CF}% +i{01D0}O{01D1}o{01D2}U{01D3}u{01D4}G{01E6}g{01E7}K{01E8}k{01E9}% +j{01F0}H{021E}h{021F}\i{01D0}\j{01F0}% +{}{}} + {\a:accents{}{##1}} {\b:accents{check}{##1}{##2}} +} +\:tempa{T5} \ifx \mathml:on\:UnDef % this configuration causes wrong rendering of accents in the default TeX4ht @@ -572,6 +601,7 @@ R{1E5E}r{1E5F}T{1E6E}t{1E6F}Z{1E94}z{1E95}h{1E96}% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{amsart} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -615,7 +645,6 @@ R{1E5E}r{1E5F}T{1E6E}t{1E6F}Z{1E94}z{1E95}h{1E96}% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{amsmath} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -683,6 +712,7 @@ R{1E5E}r{1E5F}T{1E6E}t{1E6F}Z{1E94}z{1E95}h{1E96}% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{amstex1} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -698,6 +728,7 @@ R{1E5E}r{1E5F}T{1E6E}t{1E6F}Z{1E94}z{1E95}h{1E96}% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{amsppt} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -712,6 +743,7 @@ R{1E5E}r{1E5F}T{1E6E}t{1E6F}Z{1E94}z{1E95}h{1E96}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{babel} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -733,7 +765,6 @@ Y{0178}\i{00EF}% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{plain} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -961,6 +992,35 @@ e{0113}I{012A}i{012B}O{014C}o{014D}U{016A}u{016B}Y{0232}% y{0233}G{1E20}g{1E21}% {}{}} {\a:accents{}{#1}} {\b:accents{bar}{#1}{#2}} + %%%% +\def\:tempa#1{% +\Configure{accent}\ddot\ddot{H{1E26}h{1E27}W{1E84}w{1E85}X{1E8C}x{1E8D}% +t{1E97}A{00C4}E{00CB}I{00CF}O{00D6}U{00DC}% +a{00E4}e{00EB}i{00EF}o{00F6}u{00FC}y{00FF}% +Y{0178}\i{00EF}% +{}{34}} + {\a:accents{}{##1}} {\b:accents{uml}{##1}{##2}} +\expand:after{\Configure{accent}}\csname #1\string\"\expandafter\endcsname + \csname #1\string\"\endcsname{H{1E26}h{1E27}W{1E84}w{1E85}X{1E8C}x{1E8D}% +t{1E97}A{00C4}E{00CB}I{00CF}O{00D6}U{00DC}% +a{00E4}e{00EB}i{00EF}o{00F6}u{00FC}y{00FF}% +Y{0178}\i{00EF}% +{}{34}} + {\a:accents{}{##1}} {\b:accents{uml}{##1}{##2}} +\expand:after{\Configure{accent}}\csname #1\string\r\expandafter\endcsname + \csname #1\string\r\endcsname{A{00C5}a{00E5}U{016E}u{016F}% +{}{}} + {\a:accents{}{##1}} {\b:accents{uml}{##1}{##2}} +\expand:after{\Configure{accent}}\csname #1\string\v\expandafter\endcsname + \csname #1\string\v\endcsname{C{010C}c{010D}D{010E}d{010F}% +E{011A}e{011B}L{013D}l{013E}N{0147}n{0148}R{0158}r{0159}% +S{0160}s{0161}T{0164}t{0165}Z{017D}z{017E}A{01CD}a{01CE}I{01CF}% +i{01D0}O{01D1}o{01D2}U{01D3}u{01D4}G{01E6}g{01E7}K{01E8}k{01E9}% +j{01F0}H{021E}h{021F}\i{01D0}\j{01F0}% +{}{}} + {\a:accents{}{##1}} {\b:accents{check}{##1}{##2}} +} +\:tempa{T5} \ifx \mathml:on\:UnDef % this configuration causes wrong rendering of accents in the default TeX4ht @@ -1212,6 +1272,22 @@ R{1E5E}r{1E5F}T{1E6E}t{1E6F}Z{1E94}z{1E95}h{1E96}% + + + + + + + + + + + + + + + + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{revsymb} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -1272,6 +1348,15 @@ R{1E5E}r{1E5F}T{1E6E}t{1E6F}Z{1E94}z{1E95}h{1E96}% + + + + + + + + + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{cp1256} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -1282,7 +1367,6 @@ R{1E5E}r{1E5F}T{1E6E}t{1E6F}Z{1E94}z{1E95}h{1E96}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{8859-6} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -1356,6 +1440,18 @@ R{1E5E}r{1E5F}T{1E6E}t{1E6F}Z{1E94}z{1E95}h{1E96}% + + + + + + + + + + + + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{eurosym} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -1368,6 +1464,7 @@ R{1E5E}r{1E5F}T{1E6E}t{1E6F}Z{1E94}z{1E95}h{1E96}% \endinput\empty\empty\empty\empty\empty\empty %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{SIunits} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -1379,7 +1476,6 @@ R{1E5E}r{1E5F}T{1E6E}t{1E6F}Z{1E94}z{1E95}h{1E96}% %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{sistyle} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -1480,6 +1576,13 @@ R{1E5E}r{1E5F}T{1E6E}t{1E6F}Z{1E94}z{1E95}h{1E96}% + + + + + + + %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% \ConfigureHinput{cp850} %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% @@ -1684,6 +1787,35 @@ e{0113}I{012A}i{012B}O{014C}o{014D}U{016A}u{016B}Y{0232}% y{0233}G{1E20}g{1E21}% {}{}} {\a:accents{}{#1}} {\b:accents{bar}{#1}{#2}} + %%%% +\def\:tempa#1{% +\Configure{accent}\ddot\ddot{H{1E26}h{1E27}W{1E84}w{1E85}X{1E8C}x{1E8D}% +t{1E97}A{00C4}E{00CB}I{00CF}O{00D6}U{00DC}% +a{00E4}e{00EB}i{00EF}o{00F6}u{00FC}y{00FF}% +Y{0178}\i{00EF}% +{}{34}} + {\a:accents{}{##1}} {\b:accents{uml}{##1}{##2}} +\expand:after{\Configure{accent}}\csname #1\string\"\expandafter\endcsname + \csname #1\string\"\endcsname{H{1E26}h{1E27}W{1E84}w{1E85}X{1E8C}x{1E8D}% +t{1E97}A{00C4}E{00CB}I{00CF}O{00D6}U{00DC}% +a{00E4}e{00EB}i{00EF}o{00F6}u{00FC}y{00FF}% +Y{0178}\i{00EF}% +{}{34}} + {\a:accents{}{##1}} {\b:accents{uml}{##1}{##2}} +\expand:after{\Configure{accent}}\csname #1\string\r\expandafter\endcsname + \csname #1\string\r\endcsname{A{00C5}a{00E5}U{016E}u{016F}% +{}{}} + {\a:accents{}{##1}} {\b:accents{uml}{##1}{##2}} +\expand:after{\Configure{accent}}\csname #1\string\v\expandafter\endcsname + \csname #1\string\v\endcsname{C{010C}c{010D}D{010E}d{010F}% +E{011A}e{011B}L{013D}l{013E}N{0147}n{0148}R{0158}r{0159}% +S{0160}s{0161}T{0164}t{0165}Z{017D}z{017E}A{01CD}a{01CE}I{01CF}% +i{01D0}O{01D1}o{01D2}U{01D3}u{01D4}G{01E6}g{01E7}K{01E8}k{01E9}% +j{01F0}H{021E}h{021F}\i{01D0}\j{01F0}% +{}{}} + {\a:accents{}{##1}} {\b:accents{check}{##1}{##2}} +} +\:tempa{T5} \fi @@ -1811,6 +1943,35 @@ e{0113}I{012A}i{012B}O{014C}o{014D}U{016A}u{016B}Y{0232}% y{0233}G{1E20}g{1E21}% {}{}} {\a:accents{}{#1}} {\b:accents{bar}{#1}{#2}} + %%%% +\def\:tempa#1{% +\Configure{accent}\ddot\ddot{H{1E26}h{1E27}W{1E84}w{1E85}X{1E8C}x{1E8D}% +t{1E97}A{00C4}E{00CB}I{00CF}O{00D6}U{00DC}% +a{00E4}e{00EB}i{00EF}o{00F6}u{00FC}y{00FF}% +Y{0178}\i{00EF}% +{}{34}} + {\a:accents{}{##1}} {\b:accents{uml}{##1}{##2}} +\expand:after{\Configure{accent}}\csname #1\string\"\expandafter\endcsname + \csname #1\string\"\endcsname{H{1E26}h{1E27}W{1E84}w{1E85}X{1E8C}x{1E8D}% +t{1E97}A{00C4}E{00CB}I{00CF}O{00D6}U{00DC}% +a{00E4}e{00EB}i{00EF}o{00F6}u{00FC}y{00FF}% +Y{0178}\i{00EF}% +{}{34}} + {\a:accents{}{##1}} {\b:accents{uml}{##1}{##2}} +\expand:after{\Configure{accent}}\csname #1\string\r\expandafter\endcsname + \csname #1\string\r\endcsname{A{00C5}a{00E5}U{016E}u{016F}% +{}{}} + {\a:accents{}{##1}} {\b:accents{uml}{##1}{##2}} +\expand:after{\Configure{accent}}\csname #1\string\v\expandafter\endcsname + \csname #1\string\v\endcsname{C{010C}c{010D}D{010E}d{010F}% +E{011A}e{011B}L{013D}l{013E}N{0147}n{0148}R{0158}r{0159}% +S{0160}s{0161}T{0164}t{0165}Z{017D}z{017E}A{01CD}a{01CE}I{01CF}% +i{01D0}O{01D1}o{01D2}U{01D3}u{01D4}G{01E6}g{01E7}K{01E8}k{01E9}% +j{01F0}H{021E}h{021F}\i{01D0}\j{01F0}% +{}{}} + {\a:accents{}{##1}} {\b:accents{check}{##1}{##2}} +} +\:tempa{T5} \fi @@ -1937,6 +2098,35 @@ e{0113}I{012A}i{012B}O{014C}o{014D}U{016A}u{016B}Y{0232}% y{0233}G{1E20}g{1E21}% {}{}} {\a:accents{}{#1}} {\b:accents{bar}{#1}{#2}} + %%%% +\def\:tempa#1{% +\Configure{accent}\ddot\ddot{H{1E26}h{1E27}W{1E84}w{1E85}X{1E8C}x{1E8D}% +t{1E97}A{00C4}E{00CB}I{00CF}O{00D6}U{00DC}% +a{00E4}e{00EB}i{00EF}o{00F6}u{00FC}y{00FF}% +Y{0178}\i{00EF}% +{}{34}} + {\a:accents{}{##1}} {\b:accents{uml}{##1}{##2}} +\expand:after{\Configure{accent}}\csname #1\string\"\expandafter\endcsname + \csname #1\string\"\endcsname{H{1E26}h{1E27}W{1E84}w{1E85}X{1E8C}x{1E8D}% +t{1E97}A{00C4}E{00CB}I{00CF}O{00D6}U{00DC}% +a{00E4}e{00EB}i{00EF}o{00F6}u{00FC}y{00FF}% +Y{0178}\i{00EF}% +{}{34}} + {\a:accents{}{##1}} {\b:accents{uml}{##1}{##2}} +\expand:after{\Configure{accent}}\csname #1\string\r\expandafter\endcsname + \csname #1\string\r\endcsname{A{00C5}a{00E5}U{016E}u{016F}% +{}{}} + {\a:accents{}{##1}} {\b:accents{uml}{##1}{##2}} +\expand:after{\Configure{accent}}\csname #1\string\v\expandafter\endcsname + \csname #1\string\v\endcsname{C{010C}c{010D}D{010E}d{010F}% +E{011A}e{011B}L{013D}l{013E}N{0147}n{0148}R{0158}r{0159}% +S{0160}s{0161}T{0164}t{0165}Z{017D}z{017E}A{01CD}a{01CE}I{01CF}% +i{01D0}O{01D1}o{01D2}U{01D3}u{01D4}G{01E6}g{01E7}K{01E8}k{01E9}% +j{01F0}H{021E}h{021F}\i{01D0}\j{01F0}% +{}{}} + {\a:accents{}{##1}} {\b:accents{check}{##1}{##2}} +} +\:tempa{T5} \fi @@ -2121,6 +2311,35 @@ e{0113}I{012A}i{012B}O{014C}o{014D}U{016A}u{016B}Y{0232}% y{0233}G{1E20}g{1E21}% {}{}} {\a:accents{}{#1}} {\b:accents{bar}{#1}{#2}} + %%%% +\def\:tempa#1{% +\Configure{accent}\ddot\ddot{H{1E26}h{1E27}W{1E84}w{1E85}X{1E8C}x{1E8D}% +t{1E97}A{00C4}E{00CB}I{00CF}O{00D6}U{00DC}% +a{00E4}e{00EB}i{00EF}o{00F6}u{00FC}y{00FF}% +Y{0178}\i{00EF}% +{}{34}} + {\a:accents{}{##1}} {\b:accents{uml}{##1}{##2}} +\expand:after{\Configure{accent}}\csname #1\string\"\expandafter\endcsname + \csname #1\string\"\endcsname{H{1E26}h{1E27}W{1E84}w{1E85}X{1E8C}x{1E8D}% +t{1E97}A{00C4}E{00CB}I{00CF}O{00D6}U{00DC}% +a{00E4}e{00EB}i{00EF}o{00F6}u{00FC}y{00FF}% +Y{0178}\i{00EF}% +{}{34}} + {\a:accents{}{##1}} {\b:accents{uml}{##1}{##2}} +\expand:after{\Configure{accent}}\csname #1\string\r\expandafter\endcsname + \csname #1\string\r\endcsname{A{00C5}a{00E5}U{016E}u{016F}% +{}{}} + {\a:accents{}{##1}} {\b:accents{uml}{##1}{##2}} +\expand:after{\Configure{accent}}\csname #1\string\v\expandafter\endcsname + \csname #1\string\v\endcsname{C{010C}c{010D}D{010E}d{010F}% +E{011A}e{011B}L{013D}l{013E}N{0147}n{0148}R{0158}r{0159}% +S{0160}s{0161}T{0164}t{0165}Z{017D}z{017E}A{01CD}a{01CE}I{01CF}% +i{01D0}O{01D1}o{01D2}U{01D3}u{01D4}G{01E6}g{01E7}K{01E8}k{01E9}% +j{01F0}H{021E}h{021F}\i{01D0}\j{01F0}% +{}{}} + {\a:accents{}{##1}} {\b:accents{check}{##1}{##2}} +} +\:tempa{T5} \fi @@ -2204,5 +2423,10 @@ s{015B}u{00FA}y{00FD}z{017A}j{FFFD}J{FFDD}\i{00ED}\j{FFFD}% + + + + + \endinput diff --git a/Master/texmf-dist/tex/generic/tex4ht/usepackage.4ht b/Master/texmf-dist/tex/generic/tex4ht/usepackage.4ht index fef5bf8c851..5349e5cc900 100644 --- a/Master/texmf-dist/tex/generic/tex4ht/usepackage.4ht +++ b/Master/texmf-dist/tex/generic/tex4ht/usepackage.4ht @@ -1,4 +1,4 @@ -% usepackage.4ht (2024-05-03-14:34), generated from tex4ht-4ht.tex +% usepackage.4ht (2024-12-06-14:38), generated from tex4ht-4ht.tex % Copyright 2003-2009 Eitan M. Gurari % Copyright 2009-2024 TeX Users Group % @@ -6,18 +6,18 @@ % 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 +% https://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. % % This work has the LPPL maintenance status "maintained". % % The Current Maintainer of this work -% is the TeX4ht Project <http://tug.org/tex4ht>. +% is the TeX4ht Project <https://tug.org/tex4ht>. % % If you modify this program, changing the % version identification would be appreciated. -\immediate\write-1{version 2024-05-03-14:34} +\immediate\write-1{version 2024-12-06-14:38} \def\:temp{tex4ht}\ifx \:temp\@currname \:warning{\string\usepackage{tex4ht} again?} @@ -85,17 +85,22 @@ \AddToHook{package/hypdoc/before}{\SUPOff} \AddToHook{package/hypdoc/after}{\SUPOn} \Configure{PackageHooks}{mathtools.sty}{mathtools-hooks.4ht} +\Configure{PackageHooks}{resizegather.sty}{resizegather-hooks.4ht} \Configure{PackageHooks}{babel.sty}{babel-sty-hooks.4ht} \Configure{PackageHooks}{minted.sty}{minted-sty-hooks.4ht} \Configure{PackageHooks}{xyling.sty}{xyling-hooks.4ht} \Configure{PackageHooks}{graphics.sty}{graphics-hooks.4ht} \Configure{PackageHooks}{graphbox.sty}{graphbox-hooks.4ht} \Configure{PackageHooks}{xcolor.sty}{xcolor-hooks.4ht} +\Configure{PackageHooks}{colortbl.sty}{colortbl-hooks.4ht} +\Configure{PackageHooks}{enumitem.sty}{enumitem-hooks.4ht} \Configure{PackageHooks}{imakeidx.sty}{imakeidx-hooks.4ht} \Configure{PackageHooks}{fancyhdr.sty}{fancyhdr-hooks.4ht} \Configure{PackageHooks}{exerquiz.sty}{exerquiz-hooks.4ht} \Configure{PackageHooks}{hyperxmp.sty}{hyperxmp-hooks.4ht} \Configure{PackageHooks}{datetime2.sty}{datetime2-hooks.4ht} +\Configure{PackageHooks}{manyfoot.sty}{manyfoot-hooks.4ht} +\Configure{PackageHooks}{bigfoot.sty}{bigfoot-hooks.4ht} \endinput diff --git a/Master/texmf-dist/tex/generic/tikzducks/t-tikzducks.mkiv b/Master/texmf-dist/tex/generic/tikzducks/t-tikzducks.mkiv deleted file mode 100644 index 19af36180b6..00000000000 --- a/Master/texmf-dist/tex/generic/tikzducks/t-tikzducks.mkiv +++ /dev/null @@ -1,62 +0,0 @@ -% !TeX root = ./testing/context_duck.tex -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% -% The tikzducks package -% A package to bring rubber ducks into tikz -% Maintained by samcarter -% -% Project repository and bug tracker: -% https://github.com/samcarter/tikzducks -% -% Released under the LaTeX Project Public License v1.3c or later -% See http://www.latex-project.org/lppl.txt -% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -% Code for this ConTeXt User Module kindly provided by @JairoAdelRio https://github.com/samcarter/tikzducks/pull/25 -\writestatus{loading}{ConTeXt User Module / TikZDucks 2024/04/27 version v1.8 Draw rubber ducks in TikZ} - -\setupcolors[state=start] -\usemodule[tikz] -\enabledirectives[colors.pgf] -\usetikzlibrary[patterns] % for the wizard hat -\usetikzlibrary[calc] -\definecolor[duck@overleafcol][x=48AC3C] - -\catcode`\@=11 - -% Defining commands not available in context %%%%%%%%%%%%%%%%%%%%%%%%% -\define[2]\scalebox{\scale[factor={\ctxlua{context(3*#1)}}]{#2}} -\let\tiny\tfxx -\let\pdfrandomseed\randomseed - -% Duck %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\def\duck{\dosingleempty\doduck} -\def\doduck[#1]{% - \iffirstargument - \startscope% - \tikzset{/duck/.cd,#1}% - \duck@draw% - \stopscope% - \else - \startscope% - \tikzset{/duck/.cd}% - \duck@draw% - \stopscope% - \fi% -} - -% Stripes %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\def\stripes{\dosingleempty\dostripes} -\def\dostripes[#1]{% - \iffirstargument - \tikzset{/stripes/.cd,#1}\stripes@draw - \else - \tikzset{/stripes/.cd}\stripes@draw - \fi -} - -\input tikzducks-generic.tex - -\catcode`\@=12 -\endinput diff --git a/Master/texmf-dist/tex/generic/tikzducks/tikzducks-generic.tex b/Master/texmf-dist/tex/generic/tikzducks/tikzducks-generic.tex deleted file mode 100644 index 25acd13301a..00000000000 --- a/Master/texmf-dist/tex/generic/tikzducks/tikzducks-generic.tex +++ /dev/null @@ -1,1843 +0,0 @@ -% !TeX root = ./testing/test.tex -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% -% The tikzducks package -% A package to bring rubber ducks into tikz -% Maintained by samcarter -% -% Project repository and bug tracker: -% https://github.com/samcarter/tikzducks -% -% Released under the LaTeX Project Public License v1.3c or later -% See http://www.latex-project.org/lppl.txt -% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -\newif\ifduck@name -\newif\ifduck@invisible -% Environment %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\newif\ifduck@water -% body parts %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\newif\ifduck@grumpy -\newif\ifduck@laughing -\newif\ifduck@parrot -% hair styles %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\newif\ifduck@shorthair -\newif\ifduck@longhair -\newif\ifduck@crazyhair -\newif\ifduck@recedinghair -\newif\ifduck@eyebrow -\newif\ifduck@beard -\newif\ifduck@mohican -\newif\ifduck@mullet -\newif\ifduck@parting -% clothing %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\newif\ifduck@clothing -\newif\ifduck@tshirt -\newif\ifduck@jacket -\newif\ifduck@tie -\newif\ifduck@cape -\newif\ifduck@stripes -\newif\ifduck@bowtie -\newif\ifduck@lapel -\newif\ifduck@aodai -\newif\ifduck@scarf -% Headgear %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\newif\ifduck@alien -\newif\ifduck@hat -\newif\ifduck@cap -\newif\ifduck@santa -\newif\ifduck@unicorn -\newif\ifduck@magichat -\newif\ifduck@chef -\newif\ifduck@witch -\newif\ifduck@graduate -\newif\ifduck@beret -\newif\ifduck@crown -\newif\ifduck@queencrown -\newif\ifduck@kingcrown -\newif\ifduck@peakedcap -\newif\ifduck@bunny -\newif\ifduck@tophat -\newif\ifduck@darthvader -\newif\ifduck@harlequin -\newif\ifduck@strawhat -\newif\ifduck@helmet -\newif\ifduck@viking -\newif\ifduck@devil -\newif\ifduck@conicalhat -\newif\ifduck@sailor -\newif\ifduck@bobblehat -% Accessories %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\newif\ifduck@glasses -\newif\ifduck@sunglasses -\newif\ifduck@squareglasses -\newif\ifduck@icecream -\newif\ifduck@book -\newif\ifduck@magicwand -\newif\ifduck@cricket -\newif\ifduck@rollingpin -\newif\ifduck@signpost -\newif\ifduck@lightsaber -\newif\ifduck@cake -\newif\ifduck@pizza -\newif\ifduck@hockey -\newif\ifduck@baguette -\newif\ifduck@football -\newif\ifduck@mask -\newif\ifduck@necklace -\newif\ifduck@milkshake -\newif\ifduck@wine -\newif\ifduck@prison -\newif\ifduck@speech -\newif\ifduck@think -\newif\ifduck@torch -\newif\ifduck@easter -\newif\ifduck@basket -\newif\ifduck@buttons -\newif\ifduck@sheep -\newif\ifduck@horsetail -\newif\ifduck@crozier -\newif\ifduck@davidlikespineapplepizza -\newif\ifduck@wing -\newif\ifduck@stethoscope -\newif\ifduck@neckerchief -\newif\ifduck@snowduck -\newif\ifduck@vampire -\newif\ifduck@crystalball -\newif\ifduck@cheese -\newif\ifduck@shovel -\newif\ifduck@pickaxe -\newif\ifduck@strawbroom -\newif\ifduck@broom -\newif\ifduck@umbrella -\newif\ifduck@umbrellaclosed -\newif\ifduck@handbag -\newif\ifduck@cocktail -\newif\ifduck@overleaf -\newif\ifduck@banana -\newif\ifduck@stick - -\tikzset{ - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - % - % Pass unknown keys on to tikz - % - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - /duck/.search also={/tikz,/pgf}, - /duck/.cd, - name/.code= \duck@nametrue \def\duck@name{#1}, - invisible/.code = \duck@invisibletrue, - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - % - % Environment - % - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - water/.code = \duck@watertrue - \def\duck@water{#1}, - water/.default = blue, - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - % - % body parts - % - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - body/.code = \def\duck@body{#1}, - body = yellow!70!brown, - head/.code = \def\duck@head{#1}, - eye/.code = \def\duck@eye{#1}, - eye = white!85!yellow, - pupil/.code = \def\duck@pupil{#1}, - pupil = black, - bill/.code = \def\duck@bill{#1}, - bill = orange!50!brown, - grumpy/.code = \duck@grumpytrue, - laughing/.code = \duck@laughingtrue, - parrot/.code = \duck@parrottrue, - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - % - % clothing - % - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - tshirt/.code = \duck@tshirttrue - \duck@clothingtrue - \def\duck@tshirt{#1}, - tshirt/.default = white, - jacket/.code = \duck@jackettrue - \duck@clothingtrue - \def\duck@jacket{#1}, - jacket/.default = blue, - tie/.code = \duck@tietrue - \def\duck@tie{#1}, - tie/.default = blue, - cape/.code = \duck@capetrue - \duck@clothingtrue - \def\duck@cape{#1}, - cape/.default = red, - stripes/.code = \duck@stripestrue - \duck@clothingtrue - \def\duck@stripes{#1}, - stripes/.default = \stripes , - bowtie/.code = \duck@bowtietrue - \def\duck@bowtie{#1}, - bow tie/.forward to = /duck/bowtie, - bowtie/.default = black, - lapel/.code = \duck@lapeltrue - \def\duck@lapel{#1}, - lapel/.default = black, - aodai/.code = \duck@aodaitrue - \duck@clothingtrue - \def\duck@aodai{#1}, - ao dai/.forward to = /duck/aodai, - aodai/.default = blue!50!black, - scarf/.code = \duck@scarftrue - \def\duck@scarf{#1}, - scarf/.default = red!70!black, - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - % - % hair styles - % - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - shorthair/.code = \duck@shorthairtrue - \def\duck@hair{#1}, - short hair/.forward to = /duck/shorthair, - shorthair/.default = brown, - longhair/.code = \duck@longhairtrue - \def\duck@hair{#1}, - long hair/.forward to = /duck/longhair, - longhair/.default = brown, - crazyhair/.code = \duck@crazyhairtrue - \def\duck@hair{#1}, - crazy hair/.forward to = /duck/crazyhair, - crazyhair/.default = brown, - recedinghair/.code = \duck@recedinghairtrue - \def\duck@hair{#1}, - receding hair/.forward to = /duck/recedinghair, - recedinghair/.default = brown, - eyebrow/.code = \duck@eyebrowtrue - \def\duck@eyebrow{#1}, - eyebrow/.default = brown, - beard/.code = \duck@beardtrue - \def\duck@beard{#1}, - beard/.default = brown, - mohican/.code = \duck@mohicantrue - \def\duck@hair{#1}, - mohican/.default = brown, - mullet/.code = \duck@mullettrue - \def\duck@hair{#1}, - mullet/.default = brown, - parting/.code = \duck@partingtrue - \def\duck@hair{#1}, - parting/.default = brown, - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - % - % Headgear - % - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - alien/.code = \duck@alientrue - \def\duck@alien{#1}, - alien/.default = green, - hat/.code = \duck@hattrue - \def\duck@hat{#1}, - hat/.default = brown, - cap/.code = \duck@captrue - \def\duck@cap{#1}, - cap/.default = blue, - santa/.code = \duck@santatrue - \def\duck@santa{#1}, - santa/.default = red!80!black, - chef/.code = \duck@cheftrue - \def\duck@chef{#1}, - chef/.default = gray!20!white, - graduate/.code = \duck@graduatetrue - \def\duck@graduate{#1}, - graduate/.default = black, - tassel/.code = \def\duck@tassel{#1}, - tassel = red, - beret/.code = \duck@berettrue - \def\duck@beret{#1}, - beret/.default = black, - unicorn/.code = \duck@unicorntrue - \def\duck@unicorn{#1}, - unicorn/.default = pink, - magichat/.code = \duck@magichattrue - \def\duck@magichat{#1}, - magic hat/.forward to = /duck/magichat, - magichat/.default = violet, - magicstars/.code = \def\duck@magicstars{#1}, - magic stars/.forward to = /duck/magicstars, - magicstars = yellow!80!brown, - witch/.code = \duck@witchtrue - \def\duck@witch{#1}, - witch/.default = black, - crown/.code = \duck@crowntrue - \def\duck@crown{#1}, - crown/.default = yellow, - queencrown/.code = \duck@queencrowntrue - \def\duck@queencrown{#1}, - queen crown/.forward to = /duck/queencrown, - queencrown/.default = yellow, - kingcrown/.code = \duck@kingcrowntrue - \def\duck@kingcrown{#1}, - king crown/.forward to = /duck/kingcrown, - kingcrown/.default = gray, - bunny/.code = \duck@bunnytrue - \def\duck@bunny{#1}, - bunny/.default = \duck@body, - inear/.code = \def\duck@inear{#1}, - in ear/.forward to = /duck/inear, - inear = \duck@bunny!50!white, - peakedcap/.code = \duck@peakedcaptrue - \def\duck@peakedcap{#1}, - peaked cap/.forward to = /duck/peakedcap, - peakedcap/.default = blue, - tophat/.code = \duck@tophattrue - \def\duck@tophat{#1}, - top hat/.forward to = /duck/tophat, - tophat/.default = black, - darthvader/.code = \duck@darthvadertrue - \def\duck@darthvader{#1}, - darth vader/.forward to = /duck/darthvader, - darthvader/.default = black, - harlequin/.code = \duck@harlequintrue - \def\duck@harlequin{#1}, - harlequin/.default = blue, - niuqelrah/.code = \def\duck@niuqelrah{#1}, - niuqelrah = red, - strawhat/.code = \duck@strawhattrue - \def\duck@strawhat{#1}, - straw hat/.forward to = /duck/strawhat, - strawhat/.default = gray!30!white, - ribbon/.code = \def\duck@ribbon{#1}, - ribbon = black, - helmet/.code = \duck@helmettrue - \def\duck@helmet{#1}, - helmet/.default = gray, - devil/.code = \duck@deviltrue - \def\duck@devil{#1}, - devil/.default = red, - viking/.code = \duck@vikingtrue - \def\duck@viking{#1} - \duck@deviltrue - \def\duck@devil{brown!20!white}, - viking/.default = gray, - conicalhat/.code = \duck@conicalhattrue - \def\duck@conicalhat{#1}, - conical hat/.forward to = /duck/conicalhat, - conicalhat/.default = brown!90!orange!90!white, - sailor/.code = \duck@sailortrue - \def\duck@sailor{#1}, - sailor/.default = white!80!gray, - bobblehat/.code = \duck@bobblehattrue - \def\duck@bobblehat{#1}, - bobble hat/.forward to = /duck/bobblehat, - bobblehat/.default = red!70!black, - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - % - % Accessories - % - %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - glasses/.code = \duck@glassestrue - \def\duck@glasses{#1}, - glasses/.default = black, - sunglasses/.code = \duck@sunglassestrue - \def\duck@sunglasses{#1}, - sunglasses/.default = black, - squareglasses/.code = \duck@squareglassestrue - \def\duck@squareglasses{#1}, - square glasses/.forward to = /duck/squareglasses, - squareglasses/.default = black, - icecream/.code = \duck@icecreamtrue - \def\duck@cone{#1}, - ice cream/.forward to = /duck/icecream, - icecream/.default = brown!60!gray, - flavoura/.code = \def\duck@flavoura{#1}, - flavour a/.forward to = /duck/flavoura, - flavoura = brown!50!black, - flavourb/.code = \def\duck@flavourb{#1}, - flavour b/.forward to = /duck/flavourb, - flavourb = white!70!brown, - flavourc/.code = \def\duck@flavourc{#1}, - flavour c/.forward to = /duck/flavourc, - flavourc = red!50!white, - book/.code = \duck@booktrue - \def\duck@book{#1}, - bookcolour/.code = \def\duck@bookcolour{#1}, - book colour/.forward to = /duck/bookcolour, - book color/.forward to = /duck/bookcolour, - bookcolor/.forward to = /duck/bookcolour, - bookcolour = brown, - signpost/.code = \duck@signposttrue - \def\duck@signpost{#1}, - sign post/.forward to = /duck/signpost, - signcolour/.code = \def\duck@signcolour{#1}, - sign colour/.forward to = /duck/signcolour, - sign color/.forward to = /duck/signcolour, - signcolor/.forward to = /duck/signcolour, - signcolour = brown!50!black, - signback/.code = \def\duck@signback{#1}, - sign back/.forward to = /duck/signback, - signback = green!40!black, - magicwand/.code = \duck@magicwandtrue, - magic want/.forward to = /duck/magicwand, - cricket/.code = \duck@crickettrue - \def\duck@cricket{#1}, - cricket/.default = brown, - rollingpin/.code = \duck@rollingpintrue - \def\duck@rollingpin{#1}, - rolling pin/.forward to = /duck/rollingpin, - rollingpin/.default = brown, - lightsaber/.code = \duck@lightsabertrue - \def\duck@lightsaber{#1}, - light saber/.forward to = /duck/lightsaber, - lightsaber/.default = green, - cake/.code = \duck@caketrue - \def\duck@cake{#1}, - cake/.default = violet, - pizza/.code = \duck@pizzatrue, - hockey/.code = \duck@hockeytrue - \def\duck@hockey{#1}, - hockey/.default = brown, - baguette/.code = \duck@baguettetrue - \def\duck@baguette{#1}, - baguette/.default = brown, - football/.code = \duck@footballtrue - \def\duck@football{#1}, - football/.default = white, - mask/.code = \duck@masktrue - \def\duck@mask{#1}, - mask/.default = black, - necklace/.code = \duck@necklacetrue - \def\duck@necklace{#1}, - necklace/.default = white!80!gray, - milkshake/.code = \duck@milkshaketrue - \def\duck@milkshake{#1}, - milkshake/.default = red!20!white, - wine/.code = \duck@winetrue - \def\duck@wine{#1}, - wine/.default = red!70!black, - prison/.code = \duck@prisontrue - \def\duck@prison{#1}, - prison/.default = gray, - speech/.code = \duck@speechtrue - \def\duck@speech{#1}, - think/.code = \duck@thinktrue - \def\duck@think{#1}, - bubblecolour/.code = \def\duck@bubblecolour{#1}, - bubble colour/.forward to = /duck/bubblecolour, - bubble color/.forward to = /duck/bubblecolour, - bubblecolor/.forward to = /duck/bubblecolour, - bubblecolour = gray!30!white, - torch/.code = \duck@torchtrue - \def\duck@torch{#1}, - torch/.default = gray, - basket/.code = \duck@baskettrue - \def\duck@basket{#1}, - basket/.default = brown!70!gray, - easter/.code = \duck@eastertrue - \duck@baskettrue - \def\duck@basket{#1}, - easter/.default = brown!70!gray, - egga/.code = \def\duck@egga{#1}, - egg a/.forward to = /duck/egga, - egga = blue, - eggb/.code = \def\duck@eggb{#1}, - egg b/.forward to = /duck/eggb, - eggb = green, - eggc/.code = \def\duck@eggc{#1}, - egg c/.forward to = /duck/eggc, - eggc = red, - buttons/.code = \duck@buttonstrue - \def\duck@buttons{#1}, - buttons/.default = black, - sheep/.code = \duck@sheeptrue - \def\duck@sheep{#1}, - sheep/.default = \duck@body, - horsetail/.code = \duck@horsetailtrue - \def\duck@horsetail{#1}, - horsetail/.default = brown, - crozier/.code = \duck@croziertrue - \def\duck@crozier{#1}, - crozier/.default = brown, - davidlikespineapplepizza/.code = \duck@davidlikespineapplepizzatrue - \duck@speechtrue - \def\duck@speech{\scalebox{\scalingfactor}{\scalebox{0.9}{\tiny ih, che schifo!}}}, - david likes pineapple pizza/.forward to = /duck/davidlikespineapplepizza, - wing/.code = \duck@wingtrue - \def\duck@wing{#1}, - wing/.default = yellow!50!brown, - stethoscope/.code = \duck@stethoscopetrue - \def\duck@stethoscope{#1}, - stethoscope/.default = gray, - neckerchief/.code = \duck@neckerchieftrue - \def\duck@neckerchief{#1}, - neckerchief/.default = brown, - woggle/.code = \def\duck@woggle{#1}, - woggle = brown!50!black, - snowduck/.code = \duck@snowducktrue - \def\duck@snowduck{#1} - \def\duck@eye{#1} - \def\duck@body{#1} - \duck@tophattrue - \def\duck@tophat{black} - \duck@buttonstrue - \def\duck@buttons{black}, - snow duck/.forward to = /duck/snowduck, - snowduck/.default = gray!15!white, - vampire/.code = \duck@vampiretrue - \def\duck@vampire{#1}, - vampire/.default = white!85!yellow, - crystalball/.code = \duck@crystalballtrue - \def\duck@crystalball{#1}, - crystal ball/.forward to = /duck/crystalball, - crystalball/.default = cyan, - cheese/.code = \duck@cheesetrue - \def\duck@cheese{#1}, - cheese/.default = orange, - shovel/.code = \duck@shoveltrue - \def\duck@shovel{#1}, - shovel/.default = gray, - pickaxe/.code = \duck@pickaxetrue - \def\duck@pickaxe{#1}, - pickaxe/.default = gray, - strawbroom/.code = \duck@strawbroomtrue - \def\duck@strawbroom{#1}, - strawbroom/.default = brown!50!white, - strawbroomstick/.code = \def\duck@strawbroomstick{#1}, - strawbroomstick = brown, - strawbroomribbon/.code = \def\duck@strawbroomribbon{#1}, - strawbroomribbon = red!50!black, - broom/.code = \duck@broomtrue - \def\duck@broom{#1}, - broom/.default = brown, - broomstick/.code = \def\duck@broomstick{#1}, - broomstick = gray!50!black, - umbrella/.code = \duck@umbrellatrue - \def\duck@umbrella{#1}, - umbrella/.default = cyan, - umbrellaclosed/.code = \duck@umbrellaclosedtrue - \def\duck@umbrellaclosed{#1}, - umbrellaclosed/.default = cyan, - umbrella closed/.forward to = /duck/umbrellaclosed, - handbag/.code = \duck@handbagtrue - \def\duck@handbag{#1}, - handbag/.default = red!70!black, - cocktail/.code = \duck@cocktailtrue, - overleaf/.code = \duck@overleaftrue - \def\duck@body{duck@overleafcol} - \duck@graduatetrue - \def\duck@graduate{black} - \duck@squareglassestrue - \def\duck@squareglasses{black}, - banana/.code = \duck@bananatrue - \def\duck@banana{#1}, - banana/.default = yellow!80!orange, - stick/.code = \duck@sticktrue - \def\duck@stick{#1}, - stick/.default = red!60!green, - leaf/.code = \def\duck@leaf{#1}, - leaf = green!70!red -} - -\def\duck@draw{ -%\scope -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% -% minimal bounding box size -% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@invisible -\else - \path (0.1,0.1) rectangle (2.1,2.12); -\fi -% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% -% defining some coordinates -% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@name - \coordinate (\duck@name-wing) at (0.8,0.7); - \coordinate (\duck@name-head) at (0.9,2); - \coordinate (\duck@name-bill) at (0.5,1.3); - \coordinate (\duck@name-tail) at (1.82,1.41); -\fi -\coordinate (wing) at (0.8,0.7); -\coordinate (head) at (0.9,2); -\coordinate (bill) at (0.5,1.3); -\coordinate (tail) at (1.82,1.41); -% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% -% store the current scale factor -% from https://github.com/samcarter/tikzlings/issues/3#issuecomment-461373494 -% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\pgfgettransformentries{\tmpscaleA}{\tmpscaleB}{\tmpscaleC}{\tmpscaleD}{\tmp}{\tmp}% -\pgfmathsetmacro{\scalingfactor}{sqrt(abs(\tmpscaleA*\tmpscaleD-\tmpscaleB*\tmpscaleC))*sqrt(abs((\pgf@xx/1cm)*(\pgf@yy/1cm)-(\pgf@xy/1cm)*(\pgf@yx/1cm)))}% -\pgfmathsetmacro{\xscalefactor}{\tmpscaleA} -\pgfmathsetmacro{\yscalefactor}{\tmpscaleD} -% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% -% Environment -% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% -% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\csname duckhookbackground\endcsname -% -% water %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@water - \fill[\duck@water, even odd rule] (1.00,0.40) ellipse[x radius=0.88, y radius=0.35] (1.00,0.40) ellipse[x radius=0.75, y radius=0.25]; - \fill[\duck@water, even odd rule] (1.00,0.40) ellipse[x radius=1.05, y radius=0.50] (1.00,0.40) ellipse[x radius=0.95, y radius=0.42]; - \fill[\duck@water, even odd rule] (1.00,0.40) ellipse[x radius=1.23, y radius=0.63] (1.00,0.40) ellipse[x radius=1.17, y radius=0.57]; - \fill[\duck@water, even odd rule] (1.00,0.40) ellipse[x radius=1.42, y radius=0.77] (1.00,0.40) ellipse[x radius=1.38, y radius=0.73]; -\fi -% -% sheep %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@sheep - \fill[\duck@sheep] (0.65,1.95) circle[radius=0.15] (0.50,1.75) circle[radius=0.15] (0.46,1.51) circle[radius=0.15] (0.37,1.00) circle[radius=0.15] (0.23,0.80) circle[radius=0.15] (0.20,0.60) circle[radius=0.15] (0.25,0.45) circle[radius=0.15] (0.35,0.30) circle[radius=0.15] (0.55,0.25) circle[radius=0.15] (0.75,0.20) circle[radius=0.15] (0.95,0.16) circle[radius=0.15] (1.15,0.20) circle[radius=0.15] (1.35,0.23) circle[radius=0.15] (1.55,0.30) circle[radius=0.15] (1.75,0.38) circle[radius=0.15] (1.95,0.50) circle[radius=0.15] (2.05,0.65) circle[radius=0.15] (2.10,0.85) circle[radius=0.15] (2.05,1.00) circle[radius=0.15] (2.00,1.15) circle[radius=0.15] (1.85,1.35) circle[radius=0.15] (1.60,1.25) circle[radius=0.15] (1.35,1.25) circle[radius=0.15] (1.30,1.50) circle[radius=0.15] (1.30,1.70) circle[radius=0.15] (1.20,1.90) circle[radius=0.15] (0.85,2.05) circle[radius=0.15] (1.05,2.00) circle[radius=0.15]; -\fi -% -% devil (back horn) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@devil - \fill[\duck@devil] (0.7723,2.3756) .. controls (0.6369,2.1184) and (0.7916,2.0228) .. (0.8360,1.9897) .. controls (0.8744,1.9675) and (0.8774,1.9511) .. (0.8853,1.9173) .. controls (0.8853,1.8595) and (0.8407,1.8127) .. (0.7856,1.8127) .. controls (0.7535,1.8178) and (0.7240,1.8231) .. (0.6965,1.8545) .. controls (0.6965,1.8545) and (0.4451,2.2259) .. (0.7723,2.3756) -- cycle; -\fi -% Conical Hat (background) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@conicalhat - \fill[\duck@conicalhat!50!black,rotate=-21] (0.265,1.915) ellipse[x radius=0.79, y radius=0.1]; - \fill[\duck@conicalhat!30!black] (0.5501,0.9739) -- (0.2002,1.9676) -- (0.2946,2.0008) -- (0.6445,1.0072) -- cycle; -\fi -% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% -% body parts -% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@invisible -\else -% -% body %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\fill[\duck@body,overlay] \duckpathbody; -% -% head %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifdefined\duck@head\else\let\duck@head=\duck@body\fi -\fill[\duck@head] - (0.90,1.50) ellipse[x radius=0.50, y radius=0.625]; -% -% bill %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@grumpy - \fill[\duck@bill] \duckpathgrumpybill; -\else - \ifduck@laughing - \fill[\duck@bill!80!black,overlay] (0.40,1.20) .. controls (0.54,1.36) and (0.65,1.31) .. (0.91,1.37) .. controls (0.45,1.06) and (0.36,1.18) .. (0.40,1.20) -- cycle; - \fill[\duck@bill,overlay] (0.41,1.47) .. controls (0.64,1.53) and (0.54,1.30) .. (0.91,1.37) .. controls (-0.02,1.10) and (0.28,1.37) .. (0.41,1.47) -- cycle; - \else - \ifduck@parrot - \fill[\duck@bill!80!black] - (0.40,1.45) .. controls (0.51,1.48) and (0.54,1.44) .. (0.59,1.39) .. controls (0.63,1.34) and (0.69,1.34) .. (0.86,1.35) .. controls (0.43,1.15) and (0.37,1.13) .. (0.34,1.20) .. controls (0.52,1.27) and (0.34,1.40) .. (0.40,1.45) -- cycle; - \fill[\duck@bill] - (0.39,1.49) .. controls (0.50,1.52) and (0.54,1.44) .. (0.59,1.39) .. controls (0.63,1.34) and (0.68,1.34) .. (0.86,1.35) .. controls (0.43,1.15) and (0.54,1.40) .. (0.22,1.20) .. controls (0.24,1.52) and (0.39,1.49) .. (0.39,1.49) -- cycle; - \else - \fill[\duck@bill] \duckpathbill; - \fi - \fi -\fi -% -% Superhero mask %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% has to be behind the eyes -\ifduck@mask - \scope - \clip (0.90,1.50) ellipse[x radius=0.50, y radius=0.625]; - \fill[\duck@mask,rotate=-15] (-0.1,1.59) rectangle (1.3,1.88); - \endscope -\fi% -% -% right eye %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\fill[\duck@eye, rotate=-20] - (0.23,1.7675) ellipse[x radius=0.0893, y radius=0.125]; -\fill[\duck@pupil, rotate=-20] - (0.26,1.7575) ellipse[x radius=0.0357, y radius=0.0714]; -% -% left eye %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\fill[\duck@eye, rotate=-20] - (-0.06,1.74) ellipse[x radius=0.0786, y radius=0.1143]; -\fill[\duck@pupil, rotate=-20] - (-0.03,1.73) ellipse[x radius=0.0286, y radius=0.0643]; -% -\fi % from no duck -% -% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\csname duckhookbody\endcsname -% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% -% clothing -% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% -% Strap of the conical hat %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@conicalhat - \ifduck@clothing - \fill[\duck@conicalhat!30!black] (1.5943,1.5059) .. controls (1.4384,1.3576) and (1.2780,1.2120) .. (1.0987,1.0923) -- (1.0617,0.9549) .. controls (1.2151,1.0361) and (1.3476,1.1504) .. (1.4785,1.2630) .. controls (1.5417,1.3187) and (1.6038,1.3757) .. (1.6644,1.4344) -- cycle; - \else - \fill[\duck@conicalhat!30!black] (1.5943,1.5059) .. controls (1.4384,1.3576) and (1.2780,1.2120) .. (1.0987,1.0923) .. controls (0.9540,0.9995) and (0.7864,0.9875) .. (0.6358,1.0398) .. controls (0.6727,0.9043) and (0.9752,0.9113) .. (1.0617,0.9549) .. controls (1.2151,1.0361) and (1.3476,1.1504) .. (1.4785,1.2630) .. controls (1.5417,1.3187) and (1.6038,1.3757) .. (1.6644,1.4344) -- cycle; - \fi -\fi -% -% tshirt %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@tshirt - \fill[\duck@tshirt,overlay] \duckpathtshirt; -\fi -% -% tie %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@tie - \fill[\duck@tie,rotate=-12] (0.32,0.7) rectangle (0.43,1.15); -\fi -% -% jacket %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@jacket - \fill[\duck@jacket,overlay] \duckpathjacket; -\fi -% -% Ão dà i %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@aodai - \fill[\duck@aodai,overlay] (1.819,1.419) .. controls (2.871,0.120) and (0.711,-0.145) .. (0.296,0.251) .. controls (-0.118,0.647) and (0.232,1.073) .. (0.440,1.128) -- (0.567,0.927) .. controls (0.567,0.927) and (0.543,0.906) .. (0.509,0.882) -- (0.481,0.929) -- (0.458,0.915) -- (0.487,0.868) .. controls (0.473,0.859) and (0.457,0.850) .. (0.441,0.842) -- (0.422,0.894) -- (0.397,0.885) -- (0.417,0.831) .. controls (0.404,0.826) and (0.391,0.821) .. (0.378,0.818) -- (0.364,0.869) -- (0.338,0.862) -- (0.351,0.815) .. controls (0.334,0.814) and (0.318,0.817) .. (0.304,0.825) .. controls (0.303,0.774) and (0.329,0.759) .. (0.365,0.763) -- (0.376,0.722) -- (0.402,0.729) -- (0.391,0.768) .. controls (0.405,0.772) and (0.420,0.778) .. (0.435,0.784) -- (0.447,0.750) -- (0.472,0.759) -- (0.459,0.796) .. controls (0.477,0.805) and (0.496,0.815) .. (0.512,0.825) -- (0.533,0.791) -- (0.556,0.805) -- (0.535,0.840) .. controls (0.567,0.860) and (0.590,0.877) .. (0.590,0.877) .. controls (1.011,1.168) and (0.887,0.936) .. (1.819,1.419) -- cycle; -\fi -% -% lapel %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@lapel - \fill[\duck@lapel] (0.490,1.145) .. controls (0.3984,1.13) and (0.3515,1.08) .. (0.3515,1.08) -- (0.4265,1.0192) -- (0.35,0.98) -- (0.513,0.700) -- (1.0089,0.9162) -- (0.9547,0.9868) -- (1.1194,0.9782) -- (1.0822,1.135) .. controls (0.9616,1.1) and (0.8648,1.0300) .. (0.513,0.700) -- cycle; -\fi -% -% stripes for football jersey %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@stripes - \duck@stripes -\fi -% -% superhero cape %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@cape - \fill[\duck@cape,overlay] \duckpathcape; -\fi -% -% bowtie %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@bowtie - \fill[\duck@bowtie] (0.4382, 1.1105) .. controls (0.3984, 1.0671) and (0.3911, 0.9535) .. (0.4116, 0.9176) .. controls (0.4958, 0.9064) and (0.565, 0.9487) .. (0.565, 0.9487) -- (0.6448, 0.9398) .. controls (0.6448, 0.9398) and (0.6777, 0.8844) .. (0.804, 0.8689) .. controls (0.8323, 0.9056) and (0.8422, 1.0026) .. (0.8284, 1.0551) .. controls (0.7881, 1.0942) and (0.6537, 1.0285) .. (0.6537, 1.0285) -- (0.5739, 1.0374) .. controls (0.5739, 1.0374) and (0.5436, 1.0956) .. (0.4382, 1.1105) -- cycle; -\fi -% -% necklace (not really clothing, but needs to be below the hair) %%%%% -\ifduck@necklace - \fill[\duck@necklace] (0.5000,1.112) circle[radius=0.032] (0.5100,1.050) circle[radius=0.032] (0.5200,0.990) circle[radius=0.032] (0.5400,0.931) circle[radius=0.032] (0.5825,0.885) circle[radius=0.032] (0.6450,0.885) circle[radius=0.032] (0.7000,0.910) circle[radius=0.032] (0.7500,0.945) circle[radius=0.032] (0.8000,0.980) circle[radius=0.032] (0.8500,1.020) circle[radius=0.032] (0.9000,1.050) circle[radius=0.032] (0.9500,1.080) circle[radius=0.032] (1.0000,1.110) circle[radius=0.032] (1.0550,1.130) circle[radius=0.032] (1.1100,1.150) circle[radius=0.032] (1.1650,1.165) circle[radius=0.032] (1.2200,1.180) circle[radius=0.032] (1.2750,1.195) circle[radius=0.032] (1.3300,1.210) circle[radius=0.032]; -\fi -% -% Scout neckerchief %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@neckerchief - \fill[\duck@neckerchief] - (0.3650,1.0892) .. controls (0.4127,1.1589) and (0.4900,1.1450) .. (0.4900,1.1450) .. controls (0.6500,0.9300) and (1.1366,1.2400) .. (1.3675,1.2649) .. controls (1.4131,1.2533) and (1.4052,1.2446) .. (1.4099,1.2124) .. controls (1.3028,1.0810) and (0.7415,0.8930) .. (0.6807,0.9076) .. controls (0.8257,0.7387) and (0.6347,0.7168) .. (0.7151,0.4426) .. controls (0.6059,0.5672) and (0.5513,0.6588) .. (0.5938,0.8388) .. controls (0.5871,0.6953) and (0.4493,0.7565) .. (0.4716,0.4967) .. controls (0.3682,0.6697) and (0.3820,0.7984) .. (0.5321,0.9351) .. controls (0.4635,0.9699) and (0.4115,1.0215) .. (0.3650,1.0892) -- cycle; - \fill[\duck@woggle, rounded corners=\scalingfactor*1, rotate=-10] (0.33,1.05) rectangle (0.55,0.98); -\fi -% -% Scarf %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@scarf - \fill[\duck@scarf] (1.3780,1.2876) .. controls (1.1405,1.0484) and (0.7278,0.8710) .. (0.4865,1.1319) .. controls (0.4312,1.1245) and (0.3749,1.1088) .. (0.3443,1.0553) .. controls (0.4097,0.9269) and (0.4360,0.9534) .. (0.5231,0.8623) -- (0.4780,0.5230) -- (0.5666,0.5486) -- (0.6442,0.5011) -- (0.6584,0.6852) -- (0.6881,0.3913) -- (0.7782,0.4358) -- (0.8543,0.4133) -- (0.7988,0.8309) .. controls (1.0539,0.8635) and (1.1298,0.8415) .. (1.4849,1.1302) .. controls (1.4898,1.1985) and (1.4313,1.2543) .. (1.3780,1.2876) -- cycle; -\fi -% -% buttons (same argument as for the necklace) -\ifduck@buttons - \ifduck@jacket - \fill[\duck@buttons] (0.49,0.6) circle[radius=0.05] (0.46,0.45) circle[radius=0.05] (0.45,0.3) circle[radius=0.05]; - \else - \fill[\duck@buttons] (0.53,0.75) circle[radius=0.05] (0.5,0.6) circle[radius=0.05] (0.47,0.45) circle[radius=0.05]; - \fi -\fi -% -% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\csname duckhookclothing\endcsname -% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% -% hair styles -% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% -% short hair %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@shorthair - \path (0.1,0.1) rectangle (2.1,2.25); - \fill[\duck@hair,overlay] \duckpathshorthair; -\fi -% -% long hair %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@longhair - \path (0.1,0.1) rectangle (2.1,2.25); - \fill[\duck@hair,overlay] \duckpathlonghair; -\fi -% -% crazy hair %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@crazyhair - \path (0.1,0.1) rectangle (2.1,2.4); - \fill[\duck@hair,overlay] \duckpathcrazyhair; -\fi -% -% receding hair %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@recedinghair - \path (0.1,0.1) rectangle (2.1,2.18); - \fill[\duck@hair,overlay] \duckpathrecedinghair; -\fi -% -% mohican hair %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@mohican - \path (0.1,0.1) rectangle (2.1,2.24); - \fill[\duck@hair,overlay] \duckpathmohican; -\fi -% -% mullet hair %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@mullet - \path (0.1,0.1) rectangle (2.1,2.17); - \fill[\duck@hair,overlay] \duckpathmullet; -\fi -% -% middle parting %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@parting - \path (0.1,0.1) rectangle (2.1,2.22); - \fill[\duck@hair,overlay] (1.4053,1.5403) .. controls (1.5524,2.2939) and (0.3739,2.5180) .. (0.4084,1.6117) .. controls (0.4248,1.8921) and (0.7860,1.9734) .. (0.7860,1.9734) .. controls (1.1125,1.5754) and (1.3375,1.4715) .. (1.4053,1.5403) -- cycle; -\fi -% -% eye brow %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\pgfkeys{/duck/eyebrow/.@def/.get=\duck@test} -\ifx\duck@eyebrow\duck@test - \ifdefined\duck@hair\let\duck@eyebrow=\duck@hair\fi -\fi% -\ifduck@eyebrow - \fill[\duck@eyebrow, rounded corners=\scalingfactor*1, rotate=60] (1.92,0.21) rectangle (1.98,-0.01); - \fill[\duck@eyebrow, rounded corners=\scalingfactor*1, rotate=100] (1.67,-0.77) rectangle (1.73,-0.95); -\fi -% -% beard %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\pgfkeys{/duck/beard/.@def/.get=\duck@test} -\ifx\duck@beard\duck@test - \ifdefined\duck@hair\let\duck@beard=\duck@hair\fi -\fi% -\ifduck@beard - \fill[\duck@beard] (1.3,1.3) circle[radius=0.12] (1.2,1.15) circle[radius=0.12] (0.5,1.05) circle[radius=0.1] (0.525,0.90) circle[radius=0.12] (0.525,0.75) circle[radius=0.12] (0.65,0.65) circle[radius=0.14] (0.75,0.75) circle[radius=0.12] (0.85,0.85) circle[radius=0.12] (0.95,0.95) circle[radius=0.12] (1.05,1.05) circle[radius=0.12] (1.15,1.25) circle[radius=0.12] (1,1.20) circle[radius=0.12] (0.85,1.20) circle[radius=0.12] (0.75,1.15) circle[radius=0.12] (0.65,1.10) circle[radius=0.12] (0.58,1.07) circle[radius=0.12] (0.44,1.46) circle[radius=0.06] (0.52,1.45) circle[radius=0.06] (0.6, 1.41) circle[radius=0.06] (0.68,1.36) circle[radius=0.06] (0.76,1.34) circle[radius=0.06] (0.86,1.26) circle[radius=0.12] (0.38,1.44) circle[radius=0.03] (1,1.28) circle[radius=0.12]; - \fill[\duck@beard] (1.3,1.3) -- (0.5,1.05) -- (0.65,0.65) -- cycle; -\fi% -% -% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\csname duckhookhair\endcsname -% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% -% Headgear -% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% -% alien %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@alien - \fill[\duck@alien,rotate=-25] (0.09,2.1) rectangle (0.16,2.6); - \fill[\duck@alien,rotate=5] (0.79,1.86) rectangle (0.86,2.25); - \fill[\duck@alien] (1.20,2.30) circle[radius=0.07]; - \fill[\duck@alien] (0.62,2.35) circle[radius=0.07]; -\fi -% -% hat %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@hat - \ifdefined\duck@hair % with hair - \fill[\duck@hat,rotate=-15] (0.44,2.1) ellipse[x radius=0.7, y radius=0.1]; - \fill[\duck@hat,rotate=-15] (0.0,2.1) rectangle (0.88,2.4); - \fill[\duck@hat,rotate=-15] (0.44,2.4) ellipse[x radius=0.44, y radius=0.08]; - \else % without hair - \fill[\duck@hat,rotate=-15] (0.44,2.1) ellipse[x radius=0.6, y radius=0.1]; - \fill[\duck@hat,rotate=-15] (0.07,2.1) rectangle (0.81,2.4); - \fill[\duck@hat,rotate=-15] (0.44,2.4) ellipse[x radius=0.37, y radius=0.08]; - \fi -\fi -% -% cap %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@cap - \fill[\duck@cap, start angle=0, end angle=150, radius=0.5] (1.4,1.75) arc; - \fill[\duck@cap,rotate=-15] (0.3,2.05) ellipse[x radius=0.6, y radius=0.15]; -\fi -% -% Santa %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@santa - \fill[\duck@santa] - (0.430,1.803) .. controls (0.590,2.174) and (0.837,2.065) .. - (1.118,1.954) .. controls (1.679,1.731) and (1.328,1.193) .. - (1.647,1.057) .. controls (1.638,1.255) and (1.745,2.104) .. - (1.168,2.270) .. controls (0.867,2.356) and (0.536,2.280) .. - (0.430,1.803) -- cycle; - \fill[white!80!brown] - (0.44,1.733) .. controls (0.211,2.299) and (1.082,2.188) .. - (1.456,1.759) .. controls (1.534,1.637) and (1.480,1.545) .. - (1.400,1.566) .. controls (1.265,1.714) and (0.577,2.267) .. - (0.44,1.733) -- cycle; - \fill[white!80!brown] (1.6,1.0) circle[radius=0.17]; -\fi -% -% Chef hat %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@chef - \fill[\duck@chef,rotate=-15] (0.44,2.1) ellipse[x radius=0.37, y radius=0.08]; - \fill[\duck@chef,rotate=-15] (0.07,2.1) rectangle (0.81,2.55); - \fill[\duck@chef] (1.01,2.47) circle[radius=0.17]; - \fill[\duck@chef] (1.24,2.35) circle[radius=0.15]; - \fill[\duck@chef] (0.77,2.40) circle[radius=0.12]; - \fill[\duck@chef] (1.39,2.20) circle[radius=0.12]; -\fi -% -% graduate hat %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@graduate - \fill[\duck@graduate,rotate=-15] (0.44,2.1) ellipse[x radius=0.37, y radius=0.1]; - \fill[\duck@graduate,rotate=-15] (0.07,2.1) rectangle (0.81,2.3); - \fill[\duck@graduate] (0.3,2.25) -- (1.05,2.35) -- (1.7,1.95) -- (0.92,1.85) -- cycle; - \fill[\duck@tassel,rounded corners=\scalingfactor*1] (1.12,1.89) -- (1.01,2.1) -- (1.09,2.11) -- (1.2,1.9) -- (1.2,1.3) -- (1.12,1.3) -- cycle; - \fill[\duck@tassel] (1.16,1.3) ellipse[x radius=0.06, y radius=0.12]; -\fi -% -% beret %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@beret - \fill[\duck@beret,rotate=-25] (0.13,2.15) ellipse[x radius=0.5, y radius=0.17]; - \fill[\duck@beret,rotate=-25] (0.13,2.25) ellipse[x radius=0.55, y radius=0.17]; - \fill[\duck@beret,rotate=-25] (0.13,2.4) circle[radius=0.08]; -\fi -% -% unicorn %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@unicorn - \fill[\duck@unicorn,rotate=25] (1.48,1.4375)--(1.60,1.9)--(1.72,1.4375); - \fill[\duck@body!100,rotate=25] (1.50,1.43)--(1.60,1.8375)--(1.70,1.43); -\fi -% -% magic hat %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@magichat - \path[preaction={fill, \duck@magichat!100},rotate=-5, - pattern=fivepointed stars, pattern color=\duck@magicstars!100] - (0.36,1.95)--(0.86,2.95)--(1.20,1.85); -\fi -% -% witch %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@witch - \fill[\duck@witch,rotate=-15] (0.44,2.13) ellipse[x radius=0.75, y radius=0.17]; - \fill[\duck@witch,rotate=-15] (0.05,2.2)--(0.45,3.2)--(0.82,2.2); -\fi -% -% crown %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@crown - \path (0.7,1.95) rectangle (1.4,2.45); - \fill[\duck@crown,overlay] \duckpathcrown; -\fi -% -% Queen crown %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@queencrown - \fill[\duck@queencrown] \duckpathqueencrown; -\fi -% -% King crown %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@kingcrown - \fill[\duck@kingcrown] \duckpathkingcrown; -\fi -% -% Bunny ears %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@bunny - \path (0.55,1.9) rectangle (1.2,2.55); - \pgfinterruptboundingbox - \scope - \clip[rotate=-5] (0.68,2.38) ellipse[x radius=0.3, y radius=0.4]; - \fill[\duck@bunny,rotate=-5] (1.06,2.2) ellipse[x radius=0.3, y radius=0.4] (0.28,2.26) ellipse[x radius=0.3, y radius=0.4]; - \endscope - - \scope - \clip[rotate=-5] (0.68,2.38) ellipse[x radius=0.25, y radius=0.35]; - \fill[\duck@inear,rotate=-5] (1.06,2.2) ellipse[x radius=0.25, y radius=0.35] (0.28,2.26) ellipse[x radius=0.25, y radius=0.35]; - \endscope - \endpgfinterruptboundingbox -\fi -% -% peaked cap %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@peakedcap - \fill[\duck@peakedcap,rotate=-15] (0.35,2.05) ellipse[x radius=0.5, y radius=0.15]; - \fill[\duck@peakedcap,rotate=-25] (0.13,2.15) ellipse[x radius=0.5, y radius=0.17]; - \fill[\duck@peakedcap,rotate=-35] (-0.25,2.2) ellipse[x radius=0.55, y radius=0.17]; -\fi -% -% tophat %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@tophat - \fill[\duck@tophat,rotate=-15] (0.44,2.1) ellipse[x radius=0.48, y radius=0.1]; - \fill[\duck@tophat,rotate=-15] (0.12,2.1) -- (0.75,2.1) -- (0.81,2.55) -- (0.07,2.55) -- cycle; - \fill[\duck@tophat,rotate=-15] (0.44,2.55) ellipse[x radius=0.37, y radius=0.08]; -\fi -% -% darth vader %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@darthvader - \path (0.1,0.1) rectangle (2.1,2.22); - \fill[\duck@darthvader,overlay] \duckpathdarthvader; -\fi -% -% Harlequin duck %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@harlequin - \path (0.19,1.85) rectangle (1.85,2.67); - \fill[\duck@harlequin,overlay] (0.6006,1.9719) .. controls (0.7432,1.8954) and (0.9320,1.8698) .. (0.9320,1.8698) -- (1.0404,2.3839) .. controls (0.9223,2.8873) and (0.1755,2.5634) .. (0.3019,2.2958) .. controls (0.5807,2.5024) and (0.7251,2.3376) .. (0.6006,1.9719) -- cycle; - \fill[\duck@niuqelrah,overlay] (1.2853,1.8902) .. controls (1.1177,1.8507) and (0.9278,1.8703) .. (0.9278,1.8703) -- (1.0404,2.3839) .. controls (1.3637,2.8347) and (1.9373,2.3532) .. (1.7049,2.1284) .. controls (1.5267,2.3895) and (1.3204,2.2666) .. (1.2853,1.8902) -- cycle; - \fill[\duck@harlequin] (1.7,2.07) circle[radius=0.1]; - \fill[\duck@niuqelrah] (0.3,2.23) circle[radius=0.1]; -\fi -% -% Straw hat %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@strawhat - \fill[\duck@strawhat,rotate=-15] (0.44,2.0) ellipse[x radius=0.75, y radius=0.1]; - \fill[\duck@strawhat,rotate=-15] (0.1,2.05) rectangle (0.78,2.5); - \fill[\duck@strawhat,rotate=-15] (0.44,2.5) ellipse[x radius=0.34, y radius=0.08]; - \fill[\duck@strawhat,rotate=-15] (-0.3,2.02) -- (1.18,2.02) -- (0.78,2.2) -- (0.1,2.2) -- cycle; - \fill[\duck@ribbon,rotate=-15] (0.44,2.2) ellipse[x radius=0.34, y radius=0.08]; - \fill[\duck@ribbon,rotate=-15] (0.1,2.2) rectangle (0.78,2.3); - \fill[\duck@strawhat,rotate=-15] (0.44,2.3) ellipse[x radius=0.34, y radius=0.08]; -\fi -% -% helmet %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@helmet - \fill[\duck@helmet] (1.4331,1.5155) .. controls (1.4365,1.7226) and (1.3866,2.0493) .. (1.0429,2.1279) .. controls (0.7050,2.2052) and (0.4794,1.9294) .. (0.4481,1.8183) .. controls (0.6062,1.8381) and (1.1506,1.7480) .. (1.4331,1.5155) -- cycle; - \fill[\duck@helmet!70!black] (1.0282,2.1360) .. controls (0.9395,2.1312) and (0.8696,2.0652) .. (0.8152,2.0010) .. controls (0.7824,1.9609) and (0.7546,1.9169) .. (0.7309,1.8709) .. controls (0.6510,1.8859) and (0.5703,1.8971) .. (0.4892,1.9024) .. controls (0.4595,1.8831) and (0.4114,1.7962) .. (0.4743,1.7961) .. controls (0.5446,1.7868) and (0.6149,1.7767) .. (0.6845,1.7629) .. controls (0.6647,1.7052) and (0.6469,1.6454) .. (0.6401,1.5851) -- (0.6583,1.5355) -- (0.7069,1.5673) .. controls (0.7193,1.6285) and (0.7363,1.6889) .. (0.7590,1.7471) .. controls (0.9991,1.6922) and (1.2114,1.6182) .. (1.4111,1.4722) .. controls (1.4369,1.4960) and (1.4536,1.5229) .. (1.4475,1.5553) .. controls (1.4417,1.5927) and (1.4030,1.6066) .. (1.3766,1.6276) .. controls (1.2054,1.7408) and (1.0085,1.8089) .. (0.8095,1.8546) .. controls (0.8733,1.9674) and (0.9684,2.0703) .. (1.0932,2.1138) .. controls (1.0751,2.1288) and (1.0515,2.1362) .. (1.0282,2.1360) -- cycle; - \fill[\duck@helmet!50!white] (0.502,1.845) circle[radius=0.015] (0.586,1.835) circle[radius=0.015] (0.684,1.822) circle[radius=0.015] (0.791,1.799) circle[radius=0.015] (0.899,1.770) circle[radius=0.015] (1.003,1.741) circle[radius=0.015] (1.099,1.706) circle[radius=0.015] (1.185,1.673) circle[radius=0.015] (1.276,1.629) circle[radius=0.015] (1.360,1.581) circle[radius=0.015] (0.676,1.606) circle[radius=0.015] (0.695,1.666) circle[radius=0.015] (0.714,1.729) circle[radius=0.015] (0.784,1.889) circle[radius=0.015] (0.835,1.968) circle[radius=0.015] (0.896,2.034) circle[radius=0.015] (0.957,2.081) circle[radius=0.015] (1.020,2.115) circle[radius=0.015] (1.422,1.535) circle[radius=0.015] (0.502,1.845) circle[radius=0.015]; -\fi -% -% Viking %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@viking - \fill[\duck@viking] (1.4331,1.5155) .. controls (1.4365,1.7226) and (1.3866,2.0493) .. (1.0429,2.1279) .. controls (0.7050,2.2052) and (0.4794,1.9294) .. (0.4481,1.8183) .. controls (0.6062,1.8381) and (1.1506,1.7480) .. (1.4331,1.5155) -- cycle; - \fill[\duck@viking!70!black] (1.0282,2.1360) .. controls (0.9395,2.1312) and (0.8696,2.0652) .. (0.8152,2.0010) .. controls (0.7824,1.9609) and (0.7546,1.9169) .. (0.7309,1.8709) .. controls (0.6510,1.8859) and (0.5703,1.8971) .. (0.4892,1.9024) .. controls (0.4595,1.8831) and (0.4114,1.7962) .. (0.4743,1.7961) .. controls (0.5446,1.7868) and (0.6149,1.7767) .. (0.6845,1.7629) .. controls (0.6845,1.7629) and (0.6845,1.7629) .. (0.7590,1.7471) .. controls (0.9991,1.6922) and (1.2114,1.6182) .. (1.4111,1.4722) .. controls (1.4369,1.4960) and (1.4536,1.5229) .. (1.4475,1.5553) .. controls (1.4417,1.5927) and (1.4030,1.6066) .. (1.3766,1.6276) .. controls (1.2054,1.7408) and (1.0085,1.8089) .. (0.8095,1.8546) .. controls (0.8733,1.9674) and (0.9684,2.0703) .. (1.0932,2.1138) .. controls (1.0751,2.1288) and (1.0515,2.1362) .. (1.0282,2.1360) -- cycle; - \fill[\duck@viking!50!white] (0.502,1.845) circle[radius=0.015] (0.586,1.835) circle[radius=0.015] (0.684,1.822) circle[radius=0.015] (0.791,1.799) circle[radius=0.015] (0.899,1.770) circle[radius=0.015] (1.003,1.741) circle[radius=0.015] (1.099,1.706) circle[radius=0.015] (1.185,1.673) circle[radius=0.015] (1.276,1.629) circle[radius=0.015] (1.360,1.581) circle[radius=0.015] (0.784,1.889) circle[radius=0.015] (0.835,1.968) circle[radius=0.015] (0.896,2.034) circle[radius=0.015] (0.957,2.081) circle[radius=0.015] (1.020,2.115) circle[radius=0.015] (1.422,1.535) circle[radius=0.015]; -\fi -% -% devil (front horn) %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@devil - \fill[\duck@devil] (1.2185,2.3521) .. controls (1.3540,2.0950) and (1.1993,1.9994) .. (1.1548,1.9663) .. controls (1.1165,1.9441) and (1.1134,1.9277) .. (1.1056,1.8938) .. controls (1.1056,1.8361) and (1.1502,1.7893) .. (1.2052,1.7893) .. controls (1.2373,1.7944) and (1.2669,1.7996) .. (1.2944,1.8311) .. controls (1.2944,1.8311) and (1.5458,2.2025) .. (1.2185,2.3521) -- cycle; -\fi -% -% Conical Hat %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@conicalhat - \path (0.19,1.4) rectangle (1.68,2.32); - \fill[\duck@conicalhat,overlay] (1.6722,1.4137) .. controls (1.6722,1.4337) and (1.3592,1.6230) .. (0.9513,1.7735) .. controls (0.5433,1.9239) and (0.1948,1.9784) .. (0.1948,1.9754) .. controls (0.2049,2.0230) and (1.1428,2.36) .. (1.1428,2.3) .. controls (1.1428,2.35) and (1.6821,1.4784) .. (1.6722,1.4137) -- cycle; -\fi -% -% Sailor hat %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@sailor - \fill[\duck@sailor] (1.0390,2.2743) .. controls (0.9475,2.2748) and (0.8569,2.2355) .. (0.7943,2.1690) .. controls (0.7147,2.1872) and (0.6335,2.2098) .. (0.5512,2.2029) .. controls (0.5524,2.1164) and (0.5536,2.0299) .. (0.5547,1.9434) .. controls (0.6637,1.9348) and (0.7679,1.8974) .. (0.8716,1.8653) .. controls (1.0321,1.8101) and (1.1932,1.7522) .. (1.3420,1.6697) .. controls (1.3671,1.6622) and (1.3911,1.6147) .. (1.4083,1.6518) .. controls (1.4623,1.7160) and (1.5163,1.7802) .. (1.5702,1.8444) .. controls (1.5154,1.8979) and (1.4433,1.9287) .. (1.3757,1.9624) .. controls (1.3666,2.1156) and (1.2403,2.2511) .. (1.0881,2.2707) .. controls (1.0718,2.2731) and (1.0554,2.2743) .. (1.0390,2.2743) -- cycle; -\fi -% -% Bobble hat %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@bobblehat - \pgfinterruptboundingbox - \fill[\duck@bobblehat] (0.4639,1.7996) .. controls (0.5789,1.8438) and (1.3853,1.6023) .. (1.4046,1.4672) .. controls (1.4581,1.5025) and (1.5242,1.5917) .. (1.4544,1.6879) .. controls (1.5205,2.1879) and (0.7711,2.3780) .. (0.5562,1.9848) .. controls (0.4314,1.9650) and (0.4277,1.8625) .. (0.4639,1.7996) -- cycle; - \fill[\duck@bobblehat] (1.1,2.2) circle [radius=0.1]; - \endpgfinterruptboundingbox - \path (0.43,1.3) rectangle (1.5,2.3); -\fi -% -% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\csname duckhookhat\endcsname -% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% -% Accessories -% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% -% sunglasses %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@sunglasses - \fill[\duck@sunglasses,rotate=-17] (0.42,1.8) rectangle (0.8,1.84); - \fill[\duck@sunglasses,rotate=-17] (0.12,1.8) rectangle (0.22,1.84); - \fill[\duck@sunglasses,rotate=-20] (0.23,1.7675) circle[radius=0.14]; - \fill[\duck@sunglasses,rotate=-20] (-0.06,1.74) circle[radius=0.13]; -\fi -% -% glasses %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@glasses - \fill[\duck@glasses,rotate=-17] (0.42,1.8) rectangle (0.8,1.84); - \fill[\duck@glasses,rotate=-17] (0.12,1.8) rectangle (0.22,1.84); - \fill[\duck@glasses,rotate=-20,even odd rule] (0.23,1.7675) circle[radius=0.14] (0.23,1.7675) circle[radius=0.11]; - \fill[\duck@glasses,rotate=-20,even odd rule] (-0.06,1.74) circle[radius=0.13] (-0.06,1.74) circle[radius=0.095]; -\fi -% -% square glasses -\ifduck@squareglasses - \fill[\duck@squareglasses,rotate=-17] (0.43,1.8) rectangle (0.8,1.84); - \fill[\duck@squareglasses,rotate=-17] (0.12,1.8) rectangle (0.22,1.84); - \fill[\duck@squareglasses,rotate=-20,rounded corners=\scalingfactor*2,even odd rule] (-0.16,1.62) -- (-0.18,1.85) -- (0.05,1.87) -- (0.04,1.62) -- cycle [rounded corners=\scalingfactor*1.5] (-0.14,1.64) -- (-0.16,1.83) -- (0.03,1.85) -- (0.02,1.64) -- cycle; - \fill[\duck@squareglasses,rotate=-20,rounded corners=\scalingfactor*2,even odd rule] (0.12,1.63) -- (0.10,1.88) -- (0.36,1.90) -- (0.35,1.65) -- cycle [rounded corners=\scalingfactor*1.5] (0.14,1.65) -- (0.12,1.86) -- (0.34,1.88) -- (0.33,1.67) -- cycle; -\fi -% -% icecream %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@icecream - \fill[\duck@cone,rotate=-20] (0.35,1.20)--(0.50,0.60)--(0.75,1.20); - \fill[\duck@flavoura] (0.85,1.03) circle[radius=0.12]; - \fill[\duck@flavourb] (1.05,0.95) circle[radius=0.12]; - \fill[\duck@flavourc] (0.95,1.1) circle[radius=0.12]; -\fi -% -% book %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@book - \fill[\duck@bookcolour,rotate=-20] - (0.40,1.20) rectangle (0.80,0.60); - \node[rotate=-20*\yscalefactor/\xscalefactor, color=white] at (0.88,0.70) {\duck@book};% -\fi -% -% signpost %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@signpost - \fill[\duck@signcolour, rounded corners=\scalingfactor*1, rotate=-20] (0.8,0.75) rectangle (0.9,1.75); - \fill[\duck@signcolour, rounded corners=\scalingfactor*1, rotate=-20] (0.4,1.7) rectangle (1.3,2.4); - \fill[\duck@signback, rounded corners=\scalingfactor*1, rotate=-20] (0.45,1.75) rectangle (1.25,2.35); - \node[rotate=-20*\yscalefactor/\xscalefactor, color=white] at (1.5,1.65) {\duck@signpost}; -\fi -% -% speech bubble %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@speech - \fill[\duck@bubblecolour] (-0.5,1.8) ellipse[x radius=0.7, y radius=0.3]; - \fill[\duck@bubblecolour] (-0.2,1.54) -- (0.2,1.35) -- (0.0,1.6) -- cycle; - \node at (-0.5,1.8) {\duck@speech}; -\fi -% -% think bubble %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@think - \fill[\duck@bubblecolour] (2,2.4) ellipse[x radius=0.7, y radius=0.35]; - \fill[\duck@bubblecolour] (1.55,2.35) circle[radius=0.25] (2.0,2.15) circle[radius=0.25] (2.4,2.25) circle[radius=0.25] (1.6,2.55) circle[radius=0.25] (2.0,2.6) circle[radius=0.25] (2.35,2.5) circle[radius=0.25] (1.65,1.95) circle[radius=0.1] (1.55,1.80) circle[radius=0.06] (1.47,1.70) circle[radius=0.03]; - \node at (2,2.4) {\duck@think}; -\fi -% -% magic wand %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@magicwand - \fill[black,rotate=-30] (0.27,1.23) rectangle (0.37,0.65); - \fill[white,rotate=-30] (0.27,1.13) rectangle (0.37,1.03); -\fi -% -% cricket bat %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@cricket - \fill[\duck@cricket, rounded corners=\scalingfactor*2, rotate=-30] (0.4,1.2) rectangle (0.7,2.2); - \fill[\duck@cricket, rounded corners=\scalingfactor*1, rotate=-30] (0.5,0.8) rectangle (0.6,1.3); -\fi -% -% rollingpin %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@rollingpin - \fill[\duck@rollingpin, rounded corners=\scalingfactor*2, rotate=-60] (-0.18,0.85) rectangle (0.08,1.75); - \fill[\duck@rollingpin, rounded corners=\scalingfactor*1, rotate=-60] (-0.1,0.65) rectangle (0.0,1.95); -\fi -% -% lightsaber %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@lightsaber - \fill[\duck@lightsaber, rounded corners=\scalingfactor*1, rotate=-30] (0.5,0.9) rectangle (0.6,2.5); - \fill[gray!80!black, rounded corners=\scalingfactor*1, rotate=-30] (0.47,0.7) rectangle (0.63,1.2); -\fi -% -% cake %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@cake - \fill[\duck@cake] (1.00,0.50) ellipse[x radius=0.4, y radius=0.2]; - \fill[\duck@cake] (0.6,0.5) rectangle (1.4,0.7); - \fill[\duck@cake] (1.00,0.70) ellipse[x radius=0.4, y radius=0.2]; - \fill[\duck@cake!50!white] (0.75,0.75) rectangle (0.8,0.95); - \fill[\duck@cake!50!white] (1.2,0.75) rectangle (1.25,0.95); - \fill[\duck@cake!50!white] (0.975,0.65) rectangle (1.025,0.85); - \fill[white!85!yellow] (1.0,0.93) ellipse[x radius=0.03, y radius=0.06]; - \fill[white!85!yellow] (1.225,1.03) ellipse[x radius=0.03, y radius=0.06]; - \fill[white!85!yellow] (0.775,1.03) ellipse[x radius=0.03, y radius=0.06]; -\fi -% -% pizza %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@pizza - \fill[brown] (1.00,0.60) ellipse[x radius=0.4, y radius=0.2]; - \fill[red!70!black] (1.00,0.60) ellipse[x radius=0.34, y radius=0.16]; - \fill[white!85!yellow] (1.15,0.65) ellipse[x radius=0.065, y radius=0.04]; - \fill[white!85!yellow] (0.81,0.57) ellipse[x radius=0.065, y radius=0.04]; - \fill[white!85!yellow] (0.95,0.68) ellipse[x radius=0.065, y radius=0.04]; - \fill[white!85!yellow] (1.02,0.54) ellipse[x radius=0.065, y radius=0.04]; - \fill[green!40!brown] (1.09,0.54) ellipse[x radius=0.07, y radius=0.02]; - \fill[green!40!brown,rotate=20] (1.0,0.34) ellipse[x radius=0.07, y radius=0.02]; - \fill[green!40!brown,rotate=-20] (0.9,1.05) ellipse[x radius=0.07, y radius=0.02]; - \fill[green!40!brown] (1.00,0.60) ellipse[x radius=0.03, y radius=0.06]; -\fi -% -% no pizza %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@davidlikespineapplepizza - \fill[brown] (1.00,0.60) ellipse[x radius=0.4, y radius=0.2]; - \fill[red!70!black] (1.00,0.60) ellipse[x radius=0.34, y radius=0.16]; - \fill[yellow!70!brown] (1.15,0.65) ellipse[x radius=0.08, y radius=0.06]; - \fill[red!70!black] (1.15,0.65) ellipse[x radius=0.04, y radius=0.03]; - \fill[yellow!70!brown] (0.81,0.57) ellipse[x radius=0.08, y radius=0.06]; - \fill[red!70!black] (0.81,0.57) ellipse[x radius=0.04, y radius=0.03]; - \fill[yellow!70!brown] (0.95,0.68) ellipse[x radius=0.08, y radius=0.06]; - \fill[red!70!black] (0.95,0.68) ellipse[x radius=0.04, y radius=0.03]; - \fill[yellow!70!brown] (1.02,0.54) ellipse[x radius=0.08, y radius=0.06]; - \fill[red!70!black] (1.02,0.54) ellipse[x radius=0.04, y radius=0.03]; - \fill[green!40!brown] (1.09,0.54) ellipse[x radius=0.07, y radius=0.02]; - \fill[green!40!brown,rotate=20] (1.0,0.34) ellipse[x radius=0.07, y radius=0.02]; - \fill[green!40!brown,rotate=-20] (0.9,1.05) ellipse[x radius=0.07, y radius=0.02]; - \fill[green!40!brown] (1.00,0.60) ellipse[x radius=0.03, y radius=0.06]; -\fi -% -% Hockey stick %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@hockey - \fill[\duck@hockey, rounded corners=\scalingfactor*1, rotate=-30] (0.5,0.6) rectangle (0.6,2.1); - \fill[\duck@hockey, rounded corners=\scalingfactor*3] (0.2,0.2) rectangle (0.85,0.4); -\fi -% -% baguette %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@baguette - \fill[\duck@baguette!70!white, rounded corners=\scalingfactor*4, rotate=-30] (0.4,0.72) rectangle (0.7,2.0); - \fill[\duck@baguette!80!black, rotate=5] (1.44,1.1) ellipse[x radius=0.1, y radius=0.03] (1.30,0.9) ellipse[x radius=0.1, y radius=0.03] (1.16,0.7) ellipse[x radius=0.1, y radius=0.03] (1.02,0.5) ellipse[x radius=0.1, y radius=0.03]; -\fi -% -% football %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@football - \fill[\duck@football] (1.2,0.33) circle[radius=0.32]; - \scope - \clip (1.2,0.33) circle[radius=0.32]; - \fill[black] (1.06,0.30) -- (1.01,0.17) -- (1.14,0.08) -- (1.26,0.14) -- (1.20,0.28) -- cycle (1.37,0.14) -- (1.46,0.27) -- (1.59,0.27) -- (1.41,0.04) -- cycle (1.28,0.38) -- (1.22,0.52) -- (1.33,0.61) -- (1.45,0.51) -- (1.43,0.37) -- cycle (0.87,0.44) -- (1.02,0.40) -- (1.10,0.53) -- (1.07,0.62) -- (0.94,0.57) -- cycle; - \endscope -\fi -% -% milkshake %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@milkshake - \fill[cyan!10!white, rotate=-10] (0.8,0.50) ellipse[x radius=0.17, y radius=0.05]; - \fill[cyan!10!white, rotate=-10] (0.8,0.55) ellipse[x radius=0.12, y radius=0.03]; - \scope - \clip[rotate=-10] (0.58,0.5) rectangle (1.02,1.03); - \fill[cyan!10!white, rotate=-10] (0.8,0.94) ellipse[x radius=0.18, y radius=0.4]; - \fill[\duck@milkshake, rotate=-10] (0.8,0.94) ellipse[x radius=0.15, y radius=0.36]; - \endscope - \fill[white!85!yellow] (0.83,0.92) circle[radius=0.05] (0.88,0.9) circle[radius=0.05] (0.93,0.92) circle[radius=0.05] (0.99,0.91) circle[radius=0.05] (1.06,0.86) circle[radius=0.05] (1.13,0.87) circle[radius=0.05] (0.85,0.99) circle[radius=0.05] (0.9,0.98) circle[radius=0.07] (1.0,0.98) circle[radius=0.07] (1.1,0.95) circle[radius=0.07]; - \fill[red!90!black] (1.0,1.1) circle[radius=0.05]; - \fill[white!85!yellow] (0.94,1.05) circle[radius=0.05] (1.03,1.03) circle[radius=0.05]; - \fill[cyan!10!white, rotate=-10] (0.8,0.50) ellipse[x radius=0.17, y radius=0.05]; - \fill[red!90!black,rotate=20] (1.2,0.58) rectangle (1.22,0.85); -\fi -% -% wine %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@wine - \fill[cyan!10!white, rotate=-10] (0.8,0.50) ellipse[x radius=0.17, y radius=0.05]; - \fill[cyan!10!white, rotate=-10] (0.8,0.55) ellipse[x radius=0.12, y radius=0.03]; - \fill[cyan!10!white, rotate=-10] (0.8,0.7) ellipse[x radius=0.03, y radius=0.2]; - \scope - \clip[rotate=-10] (0.58,0.5) rectangle (1.02,1.03); - \fill[cyan!10!white, rotate=-10] (0.8,1.1) ellipse[x radius=0.18, y radius=0.4]; - \endscope - \scope - \clip[rotate=-10] (0.58,0.5) rectangle (1.02,0.87); - \fill[\duck@wine, rotate=-10] (0.8,1.1) ellipse[x radius=0.15, y radius=0.36]; - \endscope -\fi -% -% prison duck %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@prison - \fill[\duck@prison] (1.5,0.25) circle[radius=0.3]; - \fill[\duck@prison, even odd rule] (1.2,0.1) ellipse[x radius=0.10, y radius=0.07] (1.2,0.1) ellipse[x radius=0.06, y radius=0.04] (1.05,-0.05) ellipse[x radius=0.10, y radius=0.07] (1.05,-0.05) ellipse[x radius=0.06, y radius=0.04] (0.87,-0.2) ellipse[x radius=0.10, y radius=0.07] (0.87,-0.2) ellipse[x radius=0.06, y radius=0.04]; - \fill[\duck@prison, even odd rule] (0.72,-0.2) ellipse[x radius=0.10, y radius=0.07] (0.72,-0.2) ellipse[x radius=0.06, y radius=0.04]; - \fill[\duck@prison,even odd rule,rotate=70] (0.4,-1.05) ellipse[x radius=0.1, y radius=0.07] (0.4,-1.05) ellipse[x radius=0.06, y radius=0.04] (0.2,-0.95) ellipse[x radius=0.1, y radius=0.07] (0.2,-0.95) ellipse[x radius=0.06, y radius=0.04] (0.22,-0.58) ellipse[x radius=0.1, y radius=0.07] (0.22,-0.58) ellipse[x radius=0.06, y radius=0.04]; - \fill[\duck@prison,even odd rule,rotate=110](-0.33,-0.55) ellipse[x radius=0.1, y radius=0.07] (-0.33,-0.55) ellipse[x radius=0.06, y radius=0.04]; - \scope - \clip[rotate=-12] (0.45,0.15) rectangle (0.63,0.25); - \fill[\duck@prison,even odd rule,rotate=110](-0.07,-0.6) ellipse[x radius=0.1, y radius=0.07] (-0.07,-0.6) ellipse[x radius=0.06, y radius=0.04]; - \endscope -\fi -% -% torch %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@torch - \fill[red!50!yellow] \duckpathtorch; - \fill[red!25!yellow, scale=0.67, xshift=17, yshift=15] \duckpathtorch; - \fill[white!50!yellow, scale=0.4, xshift=53.5, yshift=45.3] \duckpathtorch; - \fill[\duck@torch,rounded corners=\scalingfactor*1] - (1.1,0.96) -- (0.77,0.25) -- (0.83,0.25) -- (1.3,0.86) -- cycle; - \fill[\duck@torch,rotate=-28] - (0.62,1.32) ellipse[x radius=0.2, y radius=0.08]; -\fi% -% -% sheep %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@sheep - \scope - \clip[rotate=-5] (1.2,1.7) ellipse[x radius=0.3, y radius=0.4]; - \fill[\duck@bill,rotate=-5] (0.8,1.5) ellipse[x radius=0.3, y radius=0.4]; - \endscope -\fi -% -% basket %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@basket - \fill[\duck@basket, start angle=180, end angle=360, x radius=0.35, y radius=0.35] (0.65,0.61) arc -- cycle; - \fill[\duck@basket, start angle=180, end angle=0, even odd rule] [x radius=0.35, y radius=0.5] (0.65,0.6) arc -- cycle [x radius=0.3, y radius=0.45] (0.7,0.6) arc -- cycle; - \fill[\duck@basket, even odd rule] (1,0.6) ellipse[x radius=0.35, y radius=0.1] (1,0.6) ellipse[x radius=0.3, y radius=0.07]; - \fill[\duck@basket!75!black] (1,0.6) ellipse[x radius=0.3, y radius=0.07]; -\fi% -% -% easter basket %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@easter - \scope - \clip [start angle=180, end angle=0, x radius=0.3, y radius=0.45] (0.7,0.6) arc -- cycle [start angle=180, end angle=360, x radius=0.3, y radius=0.07] (0.7,0.6) arc -- cycle; - \fill[\duck@eggb, rotate=-5] (0.95,0.72) ellipse[x radius=0.09, y radius=0.13]; - \fill[\duck@egga, rotate=10] (0.94,0.42) ellipse[x radius=0.09, y radius=0.13]; - \fill[\duck@eggc, rotate=-30] (0.7,1.08) ellipse[x radius=0.09, y radius=0.13]; - \endscope -\fi% -% -% horse tail %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\pgfkeys{/duck/horsetail/.@def/.get=\duck@test} -\ifx\duck@horsetail\duck@test - \ifdefined\duck@hair\let\duck@horsetail=\duck@hair\fi -\fi% -\ifduck@horsetail - \path (0.1,0.1) rectangle (2.82,2.14); - \fill[\duck@horsetail,overlay] \duckpathhorsetail; -\fi -% -% crozier %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@crozier - \scope - \clip [rotate=-20] (0.6,2.3) rectangle (1.1,1.999); - \fill[even odd rule,\duck@crozier] (1.5,1.6) circle[radius=0.2] (1.5,1.6) circle[radius=0.1]; - \endscope - \fill[\duck@crozier,rotate=-20] (0.663,0.5) rectangle (0.763,2.0); -\fi -% -% stethoscope %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@stethoscope - \fill[\duck@stethoscope,rounded corners=\scalingfactor*0.5,rotate=-18] (0.08,0.7) rectangle (0.13,1.24); - \fill[\duck@stethoscope] (0.35,0.7) circle[radius=0.1]; - \scope - \fill[\duck@stethoscope,rounded corners=\scalingfactor*0.5,rotate=-30] (0.53,1.3) rectangle (0.58,1.72); - \clip[rotate=-30] (0.36,0.89) -- (0.36,1.36) -- (0.79,1.36) -- (0.79,0.89) -- (0.65,0.89) -- (0.65,0.96) -- (0.5,0.96) -- (0.5,0.89) -- cycle ; - \fill [\duck@stethoscope,rounded corners=\scalingfactor*3,rotate=-30,even odd rule] (0.775,1.35) rectangle (0.375,0.9) [rounded corners=\scalingfactor*2] (0.725,1.3) rectangle (0.425,0.95); - \endscope -\fi -% -% snow duck %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@snowduck - \fill[black, rotate=-25] (0.65,0.65) rectangle (0.7,1.8); - \fill[black, rotate=35] (1.55,0.15) rectangle (1.6,0.5); - \fill[black, rotate=-35] (0.4,1.7) rectangle (0.45,2.0); - \fill[black, rotate=-60] (-0.3,2.0) rectangle (-0.35,1.65); -\fi -% -% vampire %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@vampire - \ifduck@laughing - \fill[\duck@vampire] (0.55,1.28) -- (0.575,1.22) -- (0.6,1.29) -- cycle; - \else - \fill[\duck@vampire] (0.6,1.20) -- (0.625,1.16) -- (0.65,1.223) -- cycle; - \fi -\fi -% -% crystal ball %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@crystalball - \shade[ball color=\duck@crystalball,opacity=0.7] (0.93,0.5) circle[radius=0.33]; -\fi -% -% Cheese %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@cheese - \scope[xshift=26,yshift=-2] - \fill[\duck@cheese] (-0.3200,0.8058) -- (0.0608,0.7220) -- (0.0608,0.6366) -- (-0.3200,0.5410) -- (0.2143,0.4236) .. controls (0.3395,0.4810) and (0.4241,0.5627) .. (0.4117,0.6253) -- (0.4117,0.7634) .. controls (0.4261,0.8618) and (0.2607,0.8954) .. (0.1907,0.8962) -- cycle; - \fill[\duck@cheese!35!white] (-0.3200,0.8057) -- (-0.3200,0.5410) -- (0.2143,0.4236) -- (0.2143,0.7381) -- cycle; - \fill[\duck@cheese] (-0.23,0.71) circle[radius=0.04] (0.0,0.55) circle[radius=0.04] (-0.23,0.58) circle[radius=0.02] (-0.15,0.6) circle[radius=0.02] (-0.1,0.7) circle[radius=0.02] (0.1,0.65) circle[radius=0.02] (0,0.65) circle[radius=0.02] (0.1,0.5) circle[radius=0.02] (0.07,0.55) circle[radius=0.01] (0.12,0.6) circle[radius=0.01] (-0.08,0.54) circle[radius=0.01]; - \endscope -\fi -% -% shovel %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@shovel - \fill[brown!80!black,rotate around={-23:(0.91, 0.88)}] (0.87, 0.28) rectangle ++(0.1,1.4); - \fill[\duck@shovel] (0.6133, 0.9536) .. controls (0.8388, 0.8117) and (0.9253, 0.7517) .. (1.1962, 0.6696) -- (0.8332, 0.1263) .. controls (0.6458, 0.11) and (0.5417, 0.1644) .. (0.4517, 0.3034) -- cycle; -\fi -% -% pickaxe %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@pickaxe - \fill[brown!80!black,rotate around={-23:(0.91, 0.88)}] (0.87, 0.28) rectangle ++(0.1,1.4); - \fill[\duck@pickaxe] (-0.0085, 0.6858) .. controls (0.6422, 0.3523) and (0.7609, 0.3068) .. (1.4114, 0.1108) .. controls (0.6589, 0.1246) and (0.5556, 0.1887) .. (-0.0085, 0.6858) -- cycle; -\fi -% -% strawbroom %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@strawbroom - \fill[\duck@strawbroomstick] (0.9160,0.5478) -- (1.2792,1.6574) .. controls (1.3063,1.6961) and (1.3956,1.6649) .. (1.3688,1.6176) -- (0.9508,0.5179) .. controls (0.9360,0.5142) and (0.9202,0.5331) .. (0.9160,0.5478) -- cycle; - \fill[\duck@strawbroom] (0.5528,0.2890) .. controls (0.6449,0.3598) and (0.7460,0.5693) .. (0.8911,0.6871) .. controls (0.9481,0.7215) and (1.0395,0.6925) .. (1.0553,0.6224) .. controls (1.1219,0.4385) and (0.9965,0.2147) .. (1.0056,0.1000) .. controls (0.8926,0.0241) and (0.5950,0.2078) .. (0.5528,0.2890) -- cycle; - \draw[\duck@strawbroomribbon,line width=\scalingfactor*0.4pt] (0.7916,0.5876) .. controls (0.7916,0.5876) and (0.8210,0.5404) .. (0.8451,0.5304) .. controls (0.8708,0.5197) and (0.9021,0.5419) .. (0.9284,0.5329) .. controls (0.9544,0.5240) and (0.9663,0.4903) .. (0.9919,0.4806) .. controls (1.0148,0.4720) and (1.0653,0.4781) .. (1.0653,0.4781); - \draw[\duck@strawbroomribbon,line width=\scalingfactor*0.4pt] (0.7565,0.5493) .. controls (0.7565,0.5493) and (0.7897,0.4961) .. (0.8169,0.4848) .. controls (0.8458,0.4727) and (0.8812,0.4978) .. (0.9109,0.4876) .. controls (0.9401,0.4776) and (0.9535,0.4396) .. (0.9824,0.4287) .. controls (1.0083,0.4189) and (1.0652,0.4259) .. (1.0652,0.4259); -\fi -% -% broom %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@broom - \scope[rotate=-10] - \draw[\duck@broomstick,line width=\scalingfactor*1.8pt] (0.9, 1.8) -- ++(0,-1.4); - \draw[\duck@broomstick,line width=\scalingfactor*1.8pt] (0.6, 0.42) -- ++(0.6,0); - \fill[\duck@broom] (0.6, 0.40) -- ++(-0.05,-0.1) -- ++(0.7,0) -- ++(-0.05, 0.1) -- cycle; - \endscope -\fi -% -% umbrella %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@umbrella - \path (0.2,0.4) rectangle (2.22,2.7); - \fill[gray,overlay] (0.6922,0.5942) -- (0.7426,0.6103) .. controls (0.8276,0.3884) and (0.8855,0.4523) .. (0.9333,0.6543) -- (0.9334,0.6545) -- (0.9335,0.6547) .. controls (1.0347,1.0671) and (1.2906,1.9565) .. (1.2906,1.9565) -- (1.3415,1.9419) .. controls (1.3415,1.9419) and (1.0855,1.0519) .. (0.9849,0.6423) -- (0.9848,0.6420) .. controls (0.9240,0.3633) and (0.7874,0.3312) .. (0.6922,0.5942) -- cycle; - \fill[\duck@umbrella,overlay] (0.2185,1.9927) .. controls (0.3559,2.1962) and (0.6837,2.0720) .. (0.6761,1.8240) .. controls (0.8398,2.0111) and (1.1891,1.9216) .. (1.1685,1.6915) .. controls (1.3000,1.8765) and (1.6639,1.7626) .. (1.6607,1.5356) .. controls (1.7865,1.7271) and (2.1350,1.6950) .. (2.1626,1.4589) .. controls (2.4996,2.5771) and (0.5644,3.2631) .. (0.2185,1.9927) -- cycle; -\fi -% -% closed umbrella %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@umbrellaclosed - \fill[gray] (1.3401,0.6996) -- (1.2872,0.7019) .. controls (1.2840,0.9395) and (1.2076,0.8995) .. (1.0930,0.7264) -- (1.0929,0.7262) -- (1.0928,0.7261) .. controls (0.8555,0.3739) and (0.9223,0.4608) .. (0.9223,0.4608) -- (0.8795,0.4920) .. controls (0.8795,0.4920) and (0.8131,0.4057) .. (1.0488,0.7554) -- (1.0489,0.7556) .. controls (1.2022,0.9963) and (1.3414,0.9793) .. (1.3401,0.6996) -- cycle; - \fill[\duck@umbrellaclosed] (0.6827,0.1263) -- (0.8038,0.6188) -- (0.9548,0.6494) -- (0.9520,0.8231) -- (1.1945,0.6529) -- (1.0218,0.5885) -- (1.0465,0.4566) -- cycle; -\fi -% -% handbag %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@handbag - \fill[\duck@handbag] (0.7811,0.1751) -- (1.4913,0.3097) -- (1.3315,0.7086) -- (0.7832,0.6152) -- cycle; - \fill[\duck@handbag!70!black] (0.8857,0.4354) .. controls (0.7861,0.9811) and (1.1796,1.0719) .. (1.2866,0.5155) -- (1.2043,0.4996) .. controls (1.1247,0.8952) and (0.9051,0.8883) .. (0.9676,0.4536) -- cycle; -\fi -% -% cocktail %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@cocktail - \fill[cyan!10!white, rotate=-10] (0.8,0.50) ellipse[x radius=0.17, y radius=0.05]; - \fill[cyan!10!white, rotate=-10] (0.8,0.55) ellipse[x radius=0.12, y radius=0.03]; - \fill[cyan!10!white, rotate=-10] (0.8,0.7) ellipse[x radius=0.03, y radius=0.2]; - \fill[cyan!10!white] (0.92,0.6) -- (0.75,0.9) -- (1.18,0.83) -- cycle; - \fill[gray!60!white] (0.928,0.64) -- (0.85,0.77) -- (1.08,0.77) -- cycle; - \fill[green!40!brown!60!white] (0.94,0.71) circle[radius=0.04]; - \fill[red!80!black] (0.94,0.72) circle[radius=0.01]; -\fi -% -% banana %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@banana - \begin{scope}[yshift=10,xshift=19,rotate=-25,scale=1.3] - \fill[\duck@banana!30!] (0.02,0) .. controls (0.21,0.20) and (0.21,0.40) .. (0.02,0.6) arc [start angle=60,end angle=120, radius =0.04] .. controls (0.07,0.40) and (0.07,0.20) .. (-0.02,0) --cycle ; - %peel - \begin{scope} - \clip (-0.04,-0.01) rectangle (0.20,0.3); - \fill[\duck@banana] (0.03,0) .. controls (0.22,0.20) and (0.22,0.40) .. (0.03,0.6) arc [start angle=60,end angle=120, radius =0.06] .. controls (0.06,0.40) and (0.06,0.20) .. (-0.03,0); - \end{scope} - \fill[\duck@banana!60!] (0.12,0.3) arc [start angle=140, end angle=-100, y radius=0.20, x radius=0.06] arc [start angle=-90, end angle=90, y radius=0.15, x radius=0.02] (0.12,0.3) arc [start angle=60, end angle=270, y radius=0.15, x radius=0.1] arc [start angle=270, end angle=90, y radius=0.13, x radius=0.04]; - \end{scope} -\fi -% -% stick %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@stick - \begin{scope}[rotate=-30,yshift=16,xshift=12] - %leaf - \begin{scope}[rotate=60, xshift=8.2,yshift=8.1] - \fill[\duck@leaf] (-0.01,0) .. controls (-0.1,0) and (-0.02, 0.2) .. (0,0.2) .. controls (0.02, 0.2) and (0.1,0) .. (0.01,0.0); - \path[clip] (-0.04,-0.04)-- (-0.01,0) .. controls (-0.1,0) and (-0.02, 0.2) .. (0,0.2) .. controls (0.02, 0.2) and (0.1,0) .. (0.01,0)-- (0.04,-0.04) --cycle; - \draw[\duck@leaf!80!, line width=0.1] (0,-0.04) -- (0,0.2) \foreach \i in {0.02,0.04,...,0.2} {(0,\i) -- ++(0.1,\i) (0,\i) -- ++(-0.1,\i)} ; - \end{scope} - %stick itself - \fill[\duck@stick!90!red] (-0.04,0.8) -- (-0.04,0.4) arc[start angle=345,end angle=270,radius=0.03] -- ++(0,-0.01) arc[start angle=90,end angle=15,radius=0.03] -- (-0.04,0) arc [start angle=180, end angle=360 ,x radius=0.04, y radius=0.02] -- (0.04, 0.4) arc [start angle=180, end angle=120, radius=0.08] arc [start angle=-90, end angle=90, x radius=0.02, y radius=0.04] arc [start angle=240, end angle=180, radius=0.08] -- (0.04,0.75) arc [start angle=0, end angle=120 ,x radius=0.04, y radius=0.02] --cycle; - \fill[\duck@stick!90!] (0.08, 0.51) ellipse [x radius=0.02, y radius=0.04] (0,0.75) ellipse [x radius=0.04, y radius=0.02] ; - \draw[\duck@stick!90!red, line width=0.06] (0.08, 0.51) ellipse [x radius=0.016, y radius=0.032] - ellipse [x radius=0.012, y radius=0.024] ellipse [x radius=0.008, y radius=0.016] (0,0.75) ellipse [y radius=0.016, x radius=0.032] ellipse [y radius=0.012, x radius=0.024] ellipse [y radius=0.008, x radius=0.016] ; - \fill[\duck@stick!90!red] (0.08, 0.51) ellipse [x radius=0.004, y radius=0.008] (0,0.75) ellipse [x radius=0.008, y radius=0.004]; - \end{scope} -\fi -% -% overleaf duck %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@overleaf - \fill[white] \duckpathoverleaf; -\fi -% -% wing %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ifduck@wing - \fill[\duck@wing] \duckpathwing; -\fi -% -% adding hook for users to customise %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\csname duckhookforeground\endcsname -% -%\draw (current bounding box.north west) rectangle (current bounding box.south east);% For debugging bounding boxes -% -%\endscope -}% from `\def\duck@draw{` at the very beginning - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% -% Random ducks -% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -\pgfmathdeclarerandomlist{head}{{shorthair}{longhair}{crazyhair}{mohican}{mullet}{beard}{alien}{hat}{cap}{santa}{chef}{graduate}{beret}{magichat}{witch}{crown}{bunny}{peakedcap}{tophat}{queencrown}{kingcrown}{harlequin}{strawhat}{parting}} -\pgfmathdeclarerandomlist{accessories}{{glasses}{sunglasses}{icecream}{book}{signpost}{magicwand}{cricket}{rollingpin}{lightsaber}{cake}{pizza}{hockey}{baguette}{football}{mask}{necklace}{milkshake}{wine}{prison}{cape}{torch}{crozier}{easter}{stethoscope}{neckerchief}{cheese}{shovel}{pickaxe}{crystalball}} - -\def\shuffleducks{% - \pgfmathrandomitem{\head}{head}% - \edef\randomhead{\head}% - \pgfmathrandomitem{\accessories}{accessories}% - \edef\randomaccessories{\accessories}% -} - -\newcommand*{\randuck}[1][]{% - \shuffleducks% - \duck[\randomhead, \randomaccessories, #1]% -} - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% -% Defining some of the more complicate paths for easy reuse -% -% naming scheme is \duckpath<name> -% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -% body parts %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -\def\duckpathbody{% - (0.513,1.145) .. controls (0.267, 1.102) and (-0.125,0.657) .. - (0.289,0.261) .. controls (0.704,-0.135) and ( 2.863,0.130) .. - (1.818,1.419) .. controls (0.938, 0.946) and ( 1.240,1.379) .. - (0.513,1.145) -- cycle -} - -\def\duckpathgrumpybill{% - (0.406,1.472) .. controls (0.643,1.530) and (0.643,1.530) .. - (0.800,1.300) .. controls (0.083,0.850) and (0.269,1.369) .. - (0.406,1.472) -- cycle -} - -\def\duckpathbill{% - (0.406,1.472) .. controls (0.643,1.530) and (0.541,1.303) .. - (0.910,1.370) .. controls (0.083,0.850) and (0.269,1.369) .. - (0.406,1.472) -- cycle -} - -\def\duckpathwing{% - (1.47,0.56) .. controls (1.51,0.59) and (1.57,0.62) .. - (1.60,0.66) .. controls (1.61,0.70) and (1.51,0.69) .. - (1.47,0.69) .. controls (1.48,0.72) and (1.41,0.76) .. - (1.37,0.74) .. controls (1.35,0.79) and (1.33,0.81) .. - (1.25,0.80) .. controls (1.25,0.86) and (1.18,0.88) .. - (1.15,0.88) .. controls (1.20,1.01) and (0.40,0.79) .. - (0.52,0.57) .. controls (0.63,0.26) and (1.22,0.43) .. - (1.47,0.56) -- cycle -} - -% clothing %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -\def\duckpathtshirt{% - (0.490,1.145) .. controls (0.267, 1.102) and (-0.125,0.657) .. - (0.289,0.261) .. controls (0.704,-0.135) and ( 2.863,0.130) .. - (1.818,1.419) .. controls (0.938, 0.976) and ( 1.240,1.279) .. - (0.590,1.000) -- cycle -} - -\def\duckpathjacket{% - (0.490,1.145) .. controls (0.267, 1.102) and (-0.125,0.657) .. - (0.289,0.261) .. controls (0.704,-0.135) and ( 2.863,0.130) .. - (1.818,1.419) .. controls (0.880, 0.946) and ( 1.240,1.378) .. - (0.513,0.700) -- cycle -} - -% hair styles %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -\def\duckpathshorthair{% - (1.3947,1.4175) .. controls (1.4546,1.4518) and (1.4699,1.6566) .. - (1.4343,1.7992) .. controls (1.2528,2.5033) and (0.2339,2.2710) .. - (0.4151,1.5907) .. controls (0.4345,1.8709) and (0.7421,2.0999) .. - (0.9494,1.9054) .. controls (1.2241,1.6476) and (1.3316,1.3814) .. - (1.3947,1.4175) -- cycle -} - -\def\duckpathlonghair{% - (1.4508,0.7565) .. controls (1.5146,0.7888) and (1.5854,0.8216) .. - (1.6247,0.8831) .. controls (1.5859,0.8847) and (1.4726,0.9457) .. - (1.5587,0.9706) .. controls (1.6317,0.9685) and (1.7016,1.0046) .. - (1.7314,1.0734) .. controls (1.7931,1.1660) and (1.6616,1.1176) .. - (1.6277,1.1566) .. controls (1.6853,1.1741) and (1.7840,1.1829) .. - (1.8123,1.2244) .. controls (1.7022,1.2488) and (1.5688,1.2663) .. - (1.5063,1.3739) .. controls (1.4619,1.5143) and (1.4696,1.6649) .. - (1.4340,1.8076) .. controls (1.2524,2.5117) and (0.2335,2.2794) .. - (0.4060,1.5991) .. controls (0.4341,1.8793) and (0.6629,2.1130) .. - (0.9011,1.9578) .. controls (1.2427,1.7382) and (1.3350,1.4214) .. - (1.0905,1.0610) .. controls (1.0597,1.0109) and (1.1103,0.9166) .. - (1.1805,0.8670) .. controls (1.2507,0.8174) and (1.3503,0.7853) .. - (1.4508,0.7565) -- cycle -} - -\def\duckpathcrazyhair{% - (0.1977,1.9023) .. controls (0.2633,2.0599) and (0.4819,2.0547) .. - (0.4713,2.0879) .. controls (0.4647,2.2106) and (0.2516,2.2392) .. - (0.2516,2.2392) .. controls (0.4352,2.2933) and (0.7427,1.9304) .. - (0.5743,2.3885) .. controls (0.6017,2.3633) and (0.8307,2.1739) .. - (0.8082,2.4245) .. controls (0.8271,2.2885) and (0.9195,2.2400) .. - (0.9933,2.2673) .. controls (1.0814,2.6593) and (0.9688,2.0034) .. - (1.3350,2.3615) .. controls (1.3657,2.3292) and (1.1627,2.1043) .. - (1.3424,2.1387) .. controls (1.3102,1.8312) and (1.5049,2.2623) .. - (1.5049,2.2623) .. controls (1.5049,2.2623) and (1.4675,2.0493) .. - (1.4287,1.9560) .. controls (1.4287,1.9560) and (1.6830,1.9470) .. - (1.7178,1.8823) .. controls (1.1926,1.8054) and (2.0160,1.7277) .. - (1.4923,1.7275) .. controls (1.5366,1.6685) and (1.3013,1.6009) .. - (1.6500,1.5946) .. controls (0.8836,1.5797) and (1.2764,1.9221) .. - (0.8957,2.0442) .. controls (0.5516,2.0958) and (0.5228,1.8527) .. - (0.4695,1.7963) .. controls (0.4825,1.9607) and (0.3601,1.9095) .. - (0.1977,1.9023) -- cycle -} - -\def\duckpathrecedinghair{% - (1.3385,1.4841) .. controls (1.4243,1.4529) and (1.4877,1.7127) .. - (1.3964,1.8658) .. controls (1.1071,2.3511) and (0.5189,2.1609) .. - (0.4381,1.6816) .. controls (0.4575,1.9618) and (0.9007,2.2059) .. - (1.1308,2.0390) .. controls (1.4703,1.7469) and (1.0343,1.5949) .. - (1.3385,1.4841) -- cycle -} - -\def\duckpathmohican{% - (0.7632,1.7935) .. controls (0.9223,2.3084) and (1.3870,1.8580) .. - (1.3920,1.5854) .. controls (1.4233,2.1466) and (0.6812,2.5808) .. - (0.6725,1.8166) .. controls (0.6725,1.8166) and (0.7615,1.7926) .. - (0.7632,1.7935) -- cycle -} - -\def\duckpathmullet{% - (1.3723,1.2684) .. controls (1.3723,1.2684) and (1.5129,1.5571) .. - (1.4435,1.7815) .. controls (1.2652,2.3572) and (0.3342,2.2633) .. - (0.4106,1.5424) .. controls (0.4204,1.6825) and (0.5692,1.9195) .. - (0.5692,1.9195) .. controls (0.5692,1.9195) and (0.8475,1.8402) .. - (1.1031,1.7844) .. controls (1.0808,1.6260) and (1.1130,1.4754) .. - (1.1130,1.4754) .. controls (1.1956,1.4198) and (1.3001,1.3369) .. - (1.3723,1.2684) -- cycle -} - -% Acessoires %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -\def\duckpathqueencrown{% - (0.7370,2.0732) .. controls (0.6966,2.2091) and (0.6769,2.3503) .. - (0.6354,2.4859) .. controls (0.6149,2.5164) and (0.5958,2.5732) .. - (0.6498,2.5808) .. controls (0.6973,2.5907) and (0.7091,2.5350) .. - (0.6926,2.5016) .. controls (0.6967,2.4544) and (0.7188,2.4109) .. - (0.7340,2.3665) .. controls (0.7415,2.3472) and (0.7619,2.2862) .. - (0.7676,2.3381) .. controls (0.7755,2.3852) and (0.7871,2.4329) .. - (0.7833,2.4808) .. controls (0.7597,2.5148) and (0.7834,2.5720) .. - (0.8294,2.5570) .. controls (0.8775,2.5457) and (0.8536,2.4937) .. - (0.8436,2.4638) .. controls (0.8502,2.3973) and (0.8640,2.3313) .. - (0.8798,2.2664) .. controls (0.9047,2.2750) and (0.9168,2.3261) .. - (0.9342,2.3514) .. controls (0.9492,2.3853) and (0.9714,2.4171) .. - (0.9773,2.4540) .. controls (0.9645,2.4873) and (0.9766,2.5358) .. - (1.0204,2.5303) .. controls (1.0646,2.5298) and (1.0691,2.4725) .. - (1.0443,2.4460) .. controls (1.0440,2.3935) and (1.0580,2.3419) .. - (1.0671,2.2905) .. controls (1.0706,2.2719) and (1.0788,2.2126) .. - (1.0985,2.2554) .. controls (1.1269,2.3087) and (1.1558,2.3623) .. - (1.1772,2.4187) .. controls (1.1697,2.4515) and (1.1716,2.5081) .. - (1.2210,2.5018) .. controls (1.2706,2.4969) and (1.2686,2.4403) .. - (1.2406,2.4126) .. controls (1.2279,2.3600) and (1.2211,2.3057) .. - (1.2172,2.2518) .. controls (1.2296,2.2439) and (1.2538,2.2943) .. - (1.2693,2.3112) .. controls (1.2908,2.3467) and (1.3228,2.3784) .. - (1.3316,2.4200) .. controls (1.3203,2.4624) and (1.3708,2.5014) .. - (1.4051,2.4678) .. controls (1.4448,2.4342) and (1.3945,2.3994) .. - (1.3765,2.3710) .. controls (1.3022,2.2536) and (1.2440,2.1265) .. - (1.1686,2.0097) .. controls (0.9649,1.9465) and (0.8367,1.9955) .. - (0.7370,2.0732) -- cycle -} - -\def\duckpathkingcrown{% - (0.6572,2.0396) .. controls (0.6637,2.0838) and (0.6716,2.1289) .. - (0.6684,2.1735) .. controls (0.6481,2.2496) and (0.5923,2.3131) .. - (0.5818,2.3921) .. controls (0.5738,2.4607) and (0.6167,2.5343) .. - (0.6862,2.5502) .. controls (0.7548,2.5703) and (0.8210,2.5304) .. - (0.8720,2.4881) .. controls (0.8984,2.4712) and (0.9239,2.4324) .. - (0.9486,2.4249) .. controls (0.9524,2.4691) and (0.9566,2.5158) .. - (0.9844,2.5527) .. controls (1.0052,2.5845) and (1.0390,2.6282) .. - (1.0820,2.6127) .. controls (1.1212,2.5899) and (1.1378,2.5421) .. - (1.1478,2.5003) .. controls (1.1576,2.4639) and (1.1336,2.4180) .. - (1.1349,2.3906) .. controls (1.2050,2.4269) and (1.2847,2.4629) .. - (1.3654,2.4429) .. controls (1.4292,2.4285) and (1.4864,2.3679) .. - (1.4793,2.2998) .. controls (1.4859,2.2404) and (1.4407,2.1925) .. - (1.4006,2.1551) .. controls (1.3681,2.1232) and (1.3290,2.0951) .. - (1.3072,2.0544) .. controls (1.2904,2.0121) and (1.2805,1.9674) .. - (1.2738,1.9225) .. controls (1.1221,1.8892) and (0.9586,1.8836) .. - (0.8112,1.9386) .. controls (0.7535,1.9608) and (0.6999,1.9945) .. - (0.6572,2.0396) -- cycle -} - -\def\duckpathdarthvader{% - (0.4264,1.9092) .. controls (0.4347,1.9248) and (0.4612,1.9186) .. - (0.4969,1.9783) .. controls (0.5499,2.0670) and (0.7559,2.2377) .. - (0.9889,2.2057) .. controls (1.2691,2.1668) and (1.4075,1.8829) .. - (1.4176,1.7421) .. controls (1.4279,1.5955) and (1.5246,1.3484) .. - (1.5246,1.3484) -- - (0.9846,1.2036) .. controls (1.0898,1.2735) and (1.0667,1.5598) .. - (1.0555,1.6034) .. controls (0.9758,1.9147) and (0.8121,1.8681) .. - (0.7174,1.7694) .. controls (0.5671,2.0370) and (0.4103,1.7556) .. - (0.4132,1.472) -- - (0.3529,1.415) .. controls (0.3529,1.43938) and (0.3893,1.8379).. - (0.4264,1.9092) -- cycle -} - -\def\duckpathhorsetail{% - (1.7248,1.3553) .. controls (2.0530,1.3369) and (2.1427,1.1604) .. - (2.2915,0.9970) .. controls (2.4759,0.7946) and (2.9531,0.8890) .. - (2.7668,0.9003) .. controls (2.4670,0.9184) and (2.5158,1.1488) .. - (2.3907,1.3152) .. controls (2.2788,1.4641) and (1.9414,1.5945) .. - (1.7248,1.3553) -- cycle -} - -\def\duckpathcape{% - (0.225,0.966) .. controls (1.314,0.961) and (2.070,0.650) .. - (2.042,1.245) .. controls (1.863,1.164) and (1.844,1.173) .. - (1.792,1.340) .. controls (1.635,1.235) and (1.620,1.268) .. - (1.567,1.393) .. controls (1.358,1.086) and (0.664,1.096) .. - (0.460,1.110) .. controls (0.461,1.133) and (0.305,1.077) .. - (0.235,0.966) -- cycle -} - -\def\duckpathcrown{% - (0.7365,2.0616) .. controls (0.7365,2.0616) and (0.7771,2.1763) .. - (0.6959,2.4650) -- (0.8895,2.2378) -- (1.0391,2.3943) -- - (1.1260,2.1961) -- - (1.3938,2.3318) .. controls (1.1927,2.1132) and (1.2194,1.9764) .. - (1.2194,1.9764) .. controls (1.0774,1.9202) and (0.8507,1.9601) .. - (0.7365,2.0616) -- cycle -} - -\def\duckpathtorch{% - (1.4338,1.0258) .. controls (1.4308,0.8877) and (1.3468,0.8997) .. - (1.2447,0.7481) .. controls (1.1427,0.8982) and (1.0721,0.8892) .. - (1.0646,1.0243) .. controls (1.0541,1.1714) and (1.2642,1.1654) .. - (1.2492,1.3860) .. controls (1.3093,1.3110) and (1.4383,1.2705) .. - (1.4338,1.0258) -- cycle -} - -\def\duckpathoverleaf{% - (1.2699,0.6095) .. controls (1.2710,0.5992) and (1.2752,0.5910) .. (1.2822,0.5852) .. controls (1.2892,0.5793) and (1.2983,0.5763) .. (1.3095,0.5763) .. controls (1.3165,0.5762) and (1.3233,0.5778) .. (1.3295,0.5809) .. controls (1.3353,0.5840) and (1.3401,0.5885) .. (1.3436,0.5940) -- (1.3792,0.5940) .. controls (1.3731,0.5785) and (1.3640,0.5664) .. (1.3521,0.5578) .. controls (1.3398,0.5492) and (1.3252,0.5447) .. (1.3103,0.5449) .. controls (1.3002,0.5448) and (1.2902,0.5467) .. (1.2808,0.5505) .. controls (1.2718,0.5544) and (1.2636,0.5601) .. (1.2567,0.5672) .. controls (1.2500,0.5742) and (1.2446,0.5825) .. (1.2410,0.5915) .. controls (1.2372,0.6005) and (1.2353,0.6101) .. (1.2353,0.6198) .. controls (1.2352,0.6294) and (1.2370,0.6389) .. (1.2404,0.6479) .. controls (1.2438,0.6567) and (1.2489,0.6647) .. (1.2554,0.6715) .. controls (1.2625,0.6790) and (1.2709,0.6850) .. (1.2802,0.6892) .. controls (1.2891,0.6933) and (1.2988,0.6954) .. (1.3086,0.6955) .. controls (1.3207,0.6955) and (1.3325,0.6926) .. (1.3432,0.6871) .. controls (1.3540,0.6813) and (1.3633,0.6732) .. (1.3705,0.6634) .. controls (1.3751,0.6571) and (1.3786,0.6501) .. (1.3807,0.6427) .. controls (1.3831,0.6341) and (1.3842,0.6253) .. (1.3841,0.6164) .. controls (1.3840,0.6139) and (1.3839,0.6119) .. (1.3837,0.6092) .. controls (1.3458,0.6093) and (1.3079,0.6094) .. (1.2699,0.6095) -- cycle(1.3486,0.6358) .. controls (1.3458,0.6453) and (1.3410,0.6525) .. (1.3343,0.6575) .. controls (1.3276,0.6625) and (1.3192,0.6650) .. (1.3090,0.6650) .. controls (1.3004,0.6651) and (1.2920,0.6622) .. (1.2852,0.6570) .. controls (1.2783,0.6517) and (1.2733,0.6443) .. (1.2711,0.6359) .. controls (1.2969,0.6359) and (1.3228,0.6358) .. (1.3486,0.6358) -- cycle(1.5160,0.5487) -- (1.5160,0.5662) .. controls (1.5122,0.5593) and (1.5064,0.5538) .. (1.4992,0.5505) .. controls (1.4920,0.5471) and (1.4828,0.5455) .. (1.4715,0.5455) .. controls (1.4505,0.5455) and (1.4329,0.5527) .. (1.4187,0.5670) .. controls (1.4046,0.5814) and (1.3976,0.5993) .. (1.3975,0.6206) .. controls (1.3975,0.6303) and (1.3993,0.6401) .. (1.4029,0.6492) .. controls (1.4063,0.6580) and (1.4114,0.6661) .. (1.4180,0.6729) .. controls (1.4246,0.6801) and (1.4327,0.6857) .. (1.4416,0.6895) .. controls (1.4509,0.6932) and (1.4608,0.6950) .. (1.4708,0.6949) .. controls (1.4800,0.6951) and (1.4891,0.6933) .. (1.4976,0.6896) .. controls (1.5050,0.6862) and (1.5112,0.6807) .. (1.5156,0.6739) -- (1.5156,0.6911) -- (1.5480,0.6911) -- (1.5480,0.5485) -- (1.5160,0.5485) -- (1.5160,0.5487) -- cycle(1.4436,0.5910) .. controls (1.4513,0.5831) and (1.4619,0.5787) .. (1.4729,0.5789) .. controls (1.4833,0.5789) and (1.4926,0.5829) .. (1.5006,0.5911) .. controls (1.5083,0.5986) and (1.5126,0.6088) .. (1.5126,0.6196) .. controls (1.5127,0.6307) and (1.5084,0.6414) .. (1.5006,0.6494) .. controls (1.4926,0.6577) and (1.4833,0.6619) .. (1.4727,0.6619) .. controls (1.4618,0.6621) and (1.4514,0.6577) .. (1.4439,0.6499) .. controls (1.4361,0.6423) and (1.4318,0.6318) .. (1.4317,0.6205) .. controls (1.4315,0.6092) and (1.4355,0.5991) .. (1.4436,0.5910) -- cycle(1.6366,0.6913) -- (1.6366,0.6617) -- (1.6127,0.6617) -- (1.6127,0.5487) -- (1.5806,0.5487) -- (1.5806,0.6617) -- (1.5637,0.6617) -- (1.5637,0.6913) -- (1.5796,0.6913) -- (1.5796,0.6952) .. controls (1.5796,0.7102) and (1.5838,0.7214) .. (1.5922,0.7288) .. controls (1.6005,0.7362) and (1.6131,0.7399) .. (1.6300,0.7399) .. controls (1.6324,0.7398) and (1.6347,0.7396) .. (1.6370,0.7395) -- (1.6370,0.7097) -- (1.6347,0.7097) .. controls (1.6272,0.7097) and (1.6218,0.7084) .. (1.6186,0.7059) .. controls (1.6154,0.7034) and (1.6138,0.6993) .. (1.6138,0.6936) -- (1.6138,0.6910) .. controls (1.6214,0.6913) and (1.6290,0.6912) .. (1.6366,0.6913) -- cycle(1.1906,0.5487) -- (1.2231,0.5487) -- (1.2231,0.7374) -- (1.1906,0.7374) -- cycle(0.9820,0.6095) .. controls (0.9831,0.5992) and (0.9872,0.5910) .. (0.9943,0.5852) .. controls (1.0013,0.5793) and (1.0104,0.5763) .. (1.0216,0.5763) .. controls (1.0285,0.5762) and (1.0354,0.5778) .. (1.0416,0.5809) .. controls (1.0474,0.5839) and (1.0522,0.5885) .. (1.0556,0.5940) -- (1.0914,0.5940) .. controls (1.0854,0.5785) and (1.0763,0.5664) .. (1.0643,0.5578) .. controls (1.0522,0.5492) and (1.0382,0.5449) .. (1.0225,0.5449) .. controls (1.0124,0.5448) and (1.0024,0.5467) .. (0.9931,0.5505) .. controls (0.9840,0.5544) and (0.9758,0.5601) .. (0.9690,0.5672) .. controls (0.9622,0.5742) and (0.9569,0.5825) .. (0.9532,0.5915) .. controls (0.9495,0.6005) and (0.9475,0.6101) .. (0.9475,0.6198) .. controls (0.9475,0.6294) and (0.9492,0.6389) .. (0.9527,0.6479) .. controls (0.9560,0.6567) and (0.9611,0.6647) .. (0.9677,0.6715) .. controls (0.9747,0.6790) and (0.9830,0.6850) .. (0.9924,0.6892) .. controls (1.0012,0.6933) and (1.0109,0.6955) .. (1.0207,0.6955) .. controls (1.0327,0.6955) and (1.0446,0.6927) .. (1.0552,0.6871) .. controls (1.0660,0.6813) and (1.0753,0.6732) .. (1.0826,0.6634) .. controls (1.0871,0.6571) and (1.0906,0.6501) .. (1.0926,0.6427) .. controls (1.0949,0.6341) and (1.0960,0.6253) .. (1.0959,0.6164) .. controls (1.0959,0.6139) and (1.0957,0.6119) .. (1.0956,0.6092) .. controls (1.0577,0.6100) and (1.0199,0.6095) .. (0.9820,0.6095) -- cycle(1.0606,0.6358) .. controls (1.0578,0.6453) and (1.0531,0.6526) .. (1.0463,0.6575) .. controls (1.0397,0.6625) and (1.0312,0.6650) .. (1.0210,0.6650) .. controls (1.0124,0.6651) and (1.0041,0.6622) .. (0.9973,0.6570) .. controls (0.9903,0.6517) and (0.9853,0.6443) .. (0.9830,0.6359) .. controls (1.0089,0.6359) and (1.0348,0.6358) .. (1.0606,0.6358) -- cycle(1.1761,0.6624) .. controls (1.1632,0.6614) and (1.1542,0.6580) .. (1.1492,0.6523) .. controls (1.1441,0.6465) and (1.1415,0.6363) .. (1.1415,0.6214) -- (1.1415,0.5487) -- (1.1083,0.5487) -- (1.1083,0.6913) -- (1.1394,0.6913) -- (1.1394,0.6748) .. controls (1.1438,0.6808) and (1.1494,0.6856) .. (1.1559,0.6891) .. controls (1.1621,0.6923) and (1.1690,0.6938) .. (1.1760,0.6937) .. controls (1.1760,0.6833) and (1.1761,0.6728) .. (1.1761,0.6624) -- cycle(0.8646,0.8092) .. controls (0.8244,0.8248) and (0.6787,0.8306) .. (0.6784,0.7437) .. controls (0.6359,0.7165) and (0.6078,0.6721) .. (0.6078,0.6246) .. controls (0.6077,0.5410) and (0.7016,0.4916) .. (0.7705,0.5391) .. controls (0.8394,0.5866) and (0.8268,0.6919) .. (0.7486,0.7217) .. controls (0.7411,0.7246) and (0.7248,0.7297) .. (0.7117,0.7286) .. controls (0.6931,0.7168) and (0.6704,0.6924) .. (0.6597,0.6682) .. controls (0.6918,0.7064) and (0.7528,0.6983) .. (0.7737,0.6530) .. controls (0.7947,0.6076) and (0.7614,0.5559) .. (0.7115,0.5562) .. controls (0.6914,0.5562) and (0.6724,0.5649) .. (0.6594,0.5802) .. controls (0.6410,0.6019) and (0.6363,0.6254) .. (0.6400,0.6484) .. controls (0.6532,0.7289) and (0.7487,0.7748) .. (0.8197,0.7924) .. controls (0.7966,0.7801) and (0.7548,0.7600) .. (0.7255,0.7380) .. controls (0.8108,0.7051) and (0.8246,0.7770) .. (0.8646,0.8092) -- cycle(0.8731,0.5487) -- (0.8189,0.6913) -- (0.8542,0.6913) -- (0.8874,0.5965) -- (0.9217,0.6913) -- (0.9561,0.6913) -- (0.8991,0.5487) -- cycle -} - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% -% Picture mode ducks -% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -\def\picduck{% - % bill %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - \qbezier(6.5,29.5)(-1,17.5)(16.8,27.3) - \qbezier(6.5,29.5)(9,30.5)(11.4,28.0) - \qbezier(11.4,28.0)(13.5,26.5)(16.8,27.3) - % head %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - \qbezier(06.5,29.5)(6,41.5)(16.8,42.4) - \qbezier(16.8,42.4)(29,41)(25.3,24) - % body %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - \qbezier(7.8,23.2)(8,22.8)(8,22.5) - \qbezier(8,22.5)(-5,9)(8,3) - \qbezier(8,3)(22,-2)(35,6.5) - \qbezier(35,6.5)(46,15)(35,28.3) - \qbezier(35,28.3)(30,25)(25.3,24) - % right eye %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - \qbezier(13,32)(13.8,34.5)(16,34) - \qbezier(16,34)(17.3,33.2)(16.7,31) - \qbezier(16.7,31)(16,29.1)(14.5,29.3) - \qbezier(14.5,29.3)(12.7,29.5)(13,32) - \put(15.3,31.3){\circle*{1.8}} - % left eye %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - \qbezier(7.7,33.2)(8.4,35.7)(10.3,35) - \qbezier(10.3,35)(11.2,34)(10.4,32.2) - \qbezier(10.4,32.2)(9.7,30.7)(8.7,30.7) - \qbezier(8.7,30.7)(7.2,30.9)(7.7,33.2) - \put(9.5,32.7){\circle*{1.5}} -} - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% 32237378723223 -% 23737232212232237822 -% 3282232232232232232<3723 -% 382232232232232232232232232 -% 72232322323323223223223223282 -% 7503223223522332322322322322372 -% 9hklke23232<252<2322322322322323 -% 9jzltrg22320fklke23232232232232232 -% 0lzp ye252qkzliuk92323223223223223 -% 2dkfaw233<fzl, .g623232232232232282 -% 3<<432325<eklits9232322322322322322 -% ++#@o$;<32329edw22322322322322322323 -% o++oo@oooo%::12<<<<123223223223223223 328 -% o++o+oo+o+oooooO@=*:<32232232232232232 323782282 -% +o+oo+o+oooooo%-:12232232232232232232 23237322322373 -% ++@+++o o+%-:<32232232232232232232232 32237822322322322322 -% +oOoo&><<32232232232232232232232232282822322322322322322372 -% 37232232232232232232232232232232232232232232232232232237< -% 728282232232232232232232232232232232232232232232232232232232 -% 282232232232232232232232232232232232232232232232232232232232232 -% 282232232232232232232232232232232232232232232232232232232232232282 -% 7322322322322322322322322322322322322322322322322322322322322322322 -% 23223223223223223223223223223223223223223223223223223223223223223223 -%322322322322322322322322322322322322322322322322322322322322322322322 -%322322322322322322322322322322322322322322322322322322322322322322322 -%232232232232232232232232232232232232232232232232232232232232232232282 -%82232232232232232232232232232232232232232232232232232232232232232282 -%3223223223223223223223223223223223223223223223223223223223223223282 -%273223223223223223223223223223223223223223223223223223223223223723 -% 273223223223223223223223223223223223223223223223223223223223723 -% 228223223223223223223223223223223223223223223223223223228232 -% 2822322322322322322322322322322322322322322322322378232 -% 2378223223223223223223223223223223223223223782232 -% 322378282232232232232232232232282878223223 -% 223232232282828282322322323223 -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% -% stripes for sports jerseys -% -% code contributed by Carla Maggi -% https://tex.stackexchange.com/a/387126/36296 -% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -\tikzset{ - /stripes/.cd, - color/.code = \def\stripes@color{#1}, - distance/.code = \def\stripes@distance{#1}, - width/.code = \def\stripes@width{#1}, - height/.code = \def\stripes@height{#1}, - initialx/.code = \def\stripes@initialx{#1}, - initialy/.code = \def\stripes@initialy{#1}, - rotate/.code = \def\stripes@rotate{#1}, - emblem/.code = \def\stripes@emblem{#1}, - % setting defaults %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - color = black, - distance = 0.3, - width = 0.15, - height = 2.7, - initialx = 0.1, - initialy = -0.3, - rotate = -10, - emblem = \empty -} - -\def\stripes@draw{% - \path (0.1,0.1) rectangle (2.1,1.45); - \pgfinterruptboundingbox - \scope - \clip \duckpathjacket; - \foreach \shifta in {0,\stripes@distance,...,2.4}{% - \fill[\stripes@color,rotate around={\stripes@rotate:(1.2,0.9)}] - ($(\stripes@initialx,\stripes@initialy)+(\shifta,0)$) rectangle ($(\stripes@initialx,\stripes@initialy)+(\shifta,0)+(\stripes@width,\stripes@height)$); - } - \endscope - \endpgfinterruptboundingbox - \node at (wing) {\stripes@emblem }; -} -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -%.........................%%%%%%%%%%%%%%%%%%%......................... -%....................%%%%%%%%%............%%%%%%%%.................... -%................%%%%%%....%%...................%%%%%%................ -%.............%%%%%.......%%%.......................%%%%%............. -%...........%%%%........%%%%%%%%%...................%%%%%%%........... -%.........%%%........%%%%%%%%%%%%%%%%..............%%%%%%%%%%......... -%.......%%%.......%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%....... -%......%%%...%%%%%%%%%%%%%%%%%%%%%%%%%%..............%%%%%%%%%%%...... -%.....%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%................%%%%%%%%%%%..... -%...%%%%........%%%%%%%%%%%%%%%%%%%%%...................%%%%%%%%%%%... -%...%%%..........%%%%%%%%%%%%%%%%%%%.....................%%%%%%%%%%... -%..%%%............%%%%%%%%%%%%%%%%%.......................%%%%%%%%%%.. -%.%%%%............%%%%%%%%%%%%%%%%%........................%%%%%%%%%%. -%.%%%..............%%%%%%%.......%%%......................%%%.....%%%. -%%%%..............%%...............%%%...................%%%.......%%% -%%%..............%%.................%%%..................%%.........%% -%%%%............%%%...................%%%...............%%..........%% -%%%%...........%%%.....................%%%.............%%...........%% -%%%%%..........%%........................%%%%%%%%%%%%%%%%...........%% -%%%%%........%%%........................%%%%%%%%%%%%%%%%%%.........%%% -%.%%%%%%%%%%%%%%%......................%%%%%%%%%%%%%%%%%%%.........%%. -%.%%%%%%%%%%%%%%%%.....................%%%%%%%%%%%%%%%%%%%........%%%. -%..%%%%%%%%%%%%%%%%...................%%%%%%%%%%%%%%%%%%%%%.......%%.. -%...%%%%%%%%%%%%%%%%%................%%%%%%%%%%%%%%%%%%%%%%......%%... -%...%%%%%%%%%%%%%%%%%%............%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%.... -%.....%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%....%%%..... -%......%%%%%%%%%%%%%%%%................%%%%%%%%%%%%%%%%......%%%...... -%.......%%%%%%%%%%%%%%....................%%%%%%%%%%........%%%....... -%.........%%%%%%%%%%%........................%%%%.........%%%......... -%...........%%%%%%%%%........................%%........%%%%........... -%.............%%%%%%%%%.....................%%......%%%%%............. -%................%%%%%%%%.................%%%...%%%%%%................ -%....................%%%%%%%%......%%%%%%%%%%%%%%%.................... -%..........................%%%%%%%%%%%%%%%%%.......................... -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% diff --git a/Master/texmf-dist/tex/generic/tikzducks/tikzducks-plain.tex b/Master/texmf-dist/tex/generic/tikzducks/tikzducks-plain.tex deleted file mode 100644 index 9b01fb4d626..00000000000 --- a/Master/texmf-dist/tex/generic/tikzducks/tikzducks-plain.tex +++ /dev/null @@ -1,61 +0,0 @@ -% !TeX root = ./testing/plain_duck.tex -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% -% The tikzducks package -% A package to bring rubber ducks into tikz -% Maintained by samcarter -% -% Project repository and bug tracker: -% https://github.com/samcarter/tikzducks -% -% Released under the LaTeX Project Public License v1.3c or later -% See http://www.latex-project.org/lppl.txt -% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% - -\input miniltx -\input graphicx.sty -\input tikz.tex -\usetikzlibrary{calc}% -\usetikzlibrary{patterns}% - -\catcode`\@=11 - -\let\pdfrandomseed\randomseed -\font\tiny=cmr5 - -% Duck %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\def\duck{\futurelet\next\doduck} -\def\doduck{% - \ifx[\next %] - \expandafter\doduckopt - \else - \scope%% - \tikzset{/duck/.cd}% - \duck@draw% - \endscope%% - \fi -} -\def\doduckopt[#1]{% - \scope%% - \tikzset{/duck/.cd,#1}% - \duck@draw% - \endscope%% -} - -% Stripes %%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\def\stripes{\futurelet\next\dostripes} -\def\dostripes{ - \ifx[\next %] - \expandafter\dostripesopt - \else - \tikzset{/stripes/.cd}\stripes@draw - \fi -} -\def\dostripesopt[#1]{% - \tikzset{/stripes/.cd,#1}\stripes@draw -} - -\input tikzducks-generic.tex - -\catcode`\@=12
\ No newline at end of file diff --git a/Master/texmf-dist/tex/generic/tikzducks/tikzducks.sty b/Master/texmf-dist/tex/generic/tikzducks/tikzducks.sty deleted file mode 100644 index 786b0e269a5..00000000000 --- a/Master/texmf-dist/tex/generic/tikzducks/tikzducks.sty +++ /dev/null @@ -1,52 +0,0 @@ -% !TeX root = ./testing/test.tex -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% -% The tikzducks package -% A package to bring rubber ducks into tikz -% Maintained by samcarter -% -% Project repository and bug tracker: -% https://github.com/samcarter/tikzducks -% -% Released under the LaTeX Project Public License v1.3c or later -% See http://www.latex-project.org/lppl.txt -% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\ProvidesPackage{tikzducks}[2024/04/27 version v1.8 Draw rubber ducks in TikZ] - -\RequirePackage{expl3} -\RequirePackage{tikz} -\usetikzlibrary{patterns} % for the wizard hat -\usetikzlibrary{calc} % for the sports jerseys - -\definecolor{duck@overleafcol}{RGB}{72,172,60} - -\newcommand*{\duck}[1][]{% - \begin{scope}% - \tikzset{/duck/.cd,#1}% - \duck@draw% - \end{scope}% -} - -\ExplSyntaxOn -\ifdefined\sys_rand_seed: - \pgfmathsetseed {\sys_rand_seed:} -\else - \ifdefined\pdfrandomseed % pdflatex - \else - \ifdefined\randomseed - \let\pdfrandomseed\randomseed % post TL19 xelatex and lualatex - \else - \let\pdfrandomseed\time % pre TL19 xelatex - \fi - \fi - \pgfmathsetseed{\number\pdfrandomseed} -\fi -\ExplSyntaxOff - -\newcommand*{\stripes}[1][]{% - \tikzset{/stripes/.cd,#1}% - \stripes@draw% -} - -\input tikzducks-generic diff --git a/Master/texmf-dist/tex/generic/tikzducks/tikzlibraryducks.code.tex b/Master/texmf-dist/tex/generic/tikzducks/tikzlibraryducks.code.tex deleted file mode 100644 index 4c90b1f0e63..00000000000 --- a/Master/texmf-dist/tex/generic/tikzducks/tikzlibraryducks.code.tex +++ /dev/null @@ -1,24 +0,0 @@ -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -% -% TikZ library for the tikzducks package -% A package to bring rubber ducks into tikz -% Maintained by samcarter -% -% Project repository and bug tracker: -% https://github.com/samcarter/tikzducks -% -% Released under the LaTeX Project Public License v1.3c or later -% See http://www.latex-project.org/lppl.txt -% -%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% -\usepackage{tikzducks} - -% This is all that is needed ... -\tikzset{ - duck/.pic={% - \duck@draw - }, - duck/.search also={,/tikz,/pgf}, -} - - diff --git a/Master/texmf-dist/tex/generic/tracklang/tracklang-region-codes.tex b/Master/texmf-dist/tex/generic/tracklang/tracklang-region-codes.tex index 7e0a92796f6..e0d21bfe3de 100644 --- a/Master/texmf-dist/tex/generic/tracklang/tracklang-region-codes.tex +++ b/Master/texmf-dist/tex/generic/tracklang/tracklang-region-codes.tex @@ -7,7 +7,7 @@ %% tracklang.dtx (with options: `tracklang-region-codes.tex,package') %% %% tracklang.dtx -%% Copyright 2022 Nicola Talbot +%% Copyright 2025 Nicola Talbot %% %% This work may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, either version 1.3 @@ -52,7 +52,7 @@ \expandafter\endinput \fi \expandafter\def\csname ver@tracklang-region-codes.tex\endcsname{% - 2022/12/13 v1.6.1 (NLCT) Track Languages Regions}% + 2025/01/26 v1.6.4 (NLCT) Track Languages Regions}% \def\TrackLangRegionMap#1#2#3{% \@tracklang@enamedef{@tracklang@region@numtoalphaii@#1}{#2}% \@tracklang@enamedef{@tracklang@region@numtoalphaiii@#1}{#3}% diff --git a/Master/texmf-dist/tex/generic/tracklang/tracklang-scripts.tex b/Master/texmf-dist/tex/generic/tracklang/tracklang-scripts.tex index 82e2f091e38..c3a2af98c12 100644 --- a/Master/texmf-dist/tex/generic/tracklang/tracklang-scripts.tex +++ b/Master/texmf-dist/tex/generic/tracklang/tracklang-scripts.tex @@ -7,7 +7,7 @@ %% tracklang.dtx (with options: `tracklang-scripts.tex,package') %% %% tracklang.dtx -%% Copyright 2022 Nicola Talbot +%% Copyright 2025 Nicola Talbot %% %% This work may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, either version 1.3 @@ -52,7 +52,7 @@ \expandafter\endinput \fi \expandafter\def\csname ver@tracklang-scripts.tex\endcsname{% - 2022/12/13 v1.6.1 (NLCT) Track Languages Scripts (Generic)}% + 2025/01/26 v1.6.4 (NLCT) Track Languages Scripts (Generic)}% \def\TrackLangScriptMap#1#2#3#4#5{% \@tracklang@enamedef{TrackLangScript#1}{#1}% \@tracklang@enamedef{@tracklang@script@numtoalpha@#2}{#1}% diff --git a/Master/texmf-dist/tex/generic/tracklang/tracklang.tex b/Master/texmf-dist/tex/generic/tracklang/tracklang.tex index 65286d045d1..c0621564520 100644 --- a/Master/texmf-dist/tex/generic/tracklang/tracklang.tex +++ b/Master/texmf-dist/tex/generic/tracklang/tracklang.tex @@ -7,7 +7,7 @@ %% tracklang.dtx (with options: `tracklang.tex,package') %% %% tracklang.dtx -%% Copyright 2022 Nicola Talbot +%% Copyright 2025 Nicola Talbot %% %% This work may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, either version 1.3 @@ -52,7 +52,7 @@ \expandafter\endinput \fi \expandafter\def\csname ver@tracklang.tex\endcsname{% - 2022/12/13 v1.6.1 (NLCT) Track Languages Generic Code} + 2025/01/26 v1.6.4 (NLCT) Track Languages Generic Code} \long\def\@tracklang@ifundef#1#2#3{% \ifcsname#1\endcsname \expandafter\ifx\csname #1\endcsname\relax @@ -78,9 +78,11 @@ } \fi \ifx\@@input\undefined - \let\@tracklang@input\input + \let\@tracklang@input\input + \def\@tracklang@inputfile#1{\input #1\relax} \else - \let\@tracklang@input\@@input + \let\@tracklang@input\@@input + \def\@tracklang@inputfile#1{\input{#1}} \fi \ifx\@nnil\undefined \def\@tracklang@nnil{\@nil} @@ -574,6 +576,7 @@ } \def\@tracklang@languages{} \def\@tracklang@dialects{} +\def\@tracklang@regions{} \def\@tracklang@ifinlist#1#2#3#4{% \def\@tracklang@doifinlist##1,#1,##2\end@tracklang@doifinlist{% \def\@before{##1}% @@ -619,6 +622,10 @@ \def\AddTrackedLanguage#1{% \AddTrackedDialect{#1}{#1}% } +\def\AddTrackedRegion#1#2{% + \AddTrackedIsoLanguage{3166-1}{#1}{#2}% + \@tracklang@add{#1}{\@tracklang@regions}% +} \def\@tracklang@known@langs{} \def\TrackLangNewLanguage#1#2#3#4#5#6#7{% \@tracklang@add{#1}{\@tracklang@known@langs}% @@ -983,7 +990,9 @@ \@tracklang@ifundef{@tracklang@knowniso@3166@#1}% {}% {% - \AddTrackedIsoLanguage{3166-1}% + \expandafter \expandafter \expandafter + \AddTrackedRegion + \expandafter \expandafter \expandafter {\csname @tracklang@knowniso@3166@#1\endcsname}{#1}% }% } @@ -1360,7 +1369,7 @@ \@end@tracklang@hasthirdchar {% \ifx\TrackLangIfKnownNumericRegion\undefined - \@tracklang@input tracklang-region-codes.tex + \@tracklang@inputfile{tracklang-region-codes.tex}% \fi \TrackLangIfKnownNumericRegion{\@tracklang@split@pre}% {% @@ -1389,28 +1398,28 @@ \def\TrackLangAddExtraRegionFile#1{% \ifx\TrackLangRegionMap\undefined \else - \@tracklang@input #1\relax + \@tracklang@inputfile{#1}% \fi \@tracklang@add{#1}{\@tracklang@extra@region@filelist}% } \def\@tracklang@input@extra@region@files{% \@tracklang@for\@tracklang@currfile:=\@tracklang@extra@region@filelist\do {% - \@tracklang@input\@tracklang@currfile + \@tracklang@inputfile{\@tracklang@currfile}% }% } \def\@tracklang@extra@script@filelist{} \def\TrackLangAddExtraScriptFile#1{% \ifx\TrackLangScriptMap\undefined \else - \@tracklang@input #1\relax + \@tracklang@inputfile{#1}% \fi \@tracklang@add{#1}{\@tracklang@extra@script@filelist}% } \def\@tracklang@input@extra@script@files{% \@tracklang@for\@tracklang@currfile:=\@tracklang@extra@script@filelist\do {% - \@tracklang@input\@tracklang@currfile + \@tracklang@inputfile{\@tracklang@currfile}% }% } \def\GetTrackedDialectFromLanguageTag#1#2{% @@ -1578,15 +1587,16 @@ \expandafter\@tracklang@hasthirdchar \@TrackLangEnvLang\relax\relax\relax\@end@tracklang@hasthirdchar {% - \AddTrackedIsoLanguage{639-2}{\@TrackLangEnvLang}{\@tracklang@lang}% + \AddTrackedIsoLanguage{639-2}{\@TrackLangEnvLang}{undetermined}% }% {% - \AddTrackedIsoLanguage{639-1}{\@TrackLangEnvLang}{\@tracklang@lang}% + \AddTrackedIsoLanguage{639-1}{\@TrackLangEnvLang}{undetermined}% }% }% \ifx\@TrackLangEnvTerritory\empty \else - \AddTrackedIsoLanguage{3166-1}{\@TrackLangEnvTerritory}% + \expandafter\AddTrackedRegion\expandafter + {\@TrackLangEnvTerritory}% {\@tracklang@dialect}% \fi \ifx\@TrackLangEnvModifier\empty @@ -1779,6 +1789,7 @@ \TrackLangDeclareLanguageOption{samoan}{sm}{smo}{}{}{}{Latn} \TrackLangDeclareLanguageOption{sango}{sg}{sag}{}{}{}{Latn} \TrackLangDeclareLanguageOption{sardinian}{sc}{srd}{}{}{IT}{Latn} +\TrackLangDeclareLanguageOption{scots}{}{sco}{}{}{}{Latn} \TrackLangDeclareLanguageOption{scottish}{gd}{gla}{}{}{}{Latn} \TrackLangDeclareLanguageOption{serbian}{sr}{srp}{}{}{}{Cyrl} \TrackLangDeclareLanguageOption{shona}{sn}{sna}{}{}{}{Latn} @@ -1870,14 +1881,14 @@ \@tracklang@namedef{@tracklang@add@#1}{% \AddTrackedDialect{#1}{#2}% \AddTrackedLanguageIsoCodes{#2}% - \AddTrackedIsoLanguage{3166-1}{#3}{#1}% + \AddTrackedRegion{#3}{#1}% \def\@tracklang@dialect{#1}% }% \else \@tracklang@namedef{@tracklang@add@#1}{% \AddTrackedDialect{#1}{#2}% \AddTrackedLanguageIsoCodes{#2}% - \AddTrackedIsoLanguage{3166-1}{#3}{#1}% + \AddTrackedRegion{#3}{#1}% \SetTrackedDialectVariant{#1}{#5}% \def\@tracklang@dialect{#1}% }% @@ -1887,7 +1898,7 @@ \@tracklang@namedef{@tracklang@add@#1}{% \AddTrackedDialect{#1}{#2}% \AddTrackedLanguageIsoCodes{#2}% - \AddTrackedIsoLanguage{3166-1}{#3}{#1}% + \AddTrackedRegion{#3}{#1}% \SetTrackedDialectModifier{#1}{#4}% \def\@tracklang@dialect{#1}% }% @@ -1895,7 +1906,7 @@ \@tracklang@namedef{@tracklang@add@#1}{% \AddTrackedDialect{#1}{#2}% \AddTrackedLanguageIsoCodes{#2}% - \AddTrackedIsoLanguage{3166-1}{#3}{#1}% + \AddTrackedRegion{#3}{#1}% \SetTrackedDialectModifier{#1}{#4}% \SetTrackedDialectVariant{#1}{#5}% \def\@tracklang@dialect{#1}% @@ -2139,6 +2150,16 @@ \long\def\ForEachTrackedDialect#1#2{% \@tracklang@for#1:=\@tracklang@dialects\do{#2}% } +\long\def\AnyTrackedRegions#1#2{% + \ifx\@tracklang@regions\empty + #2% + \else + #1% + \fi +} +\long\def\ForEachTrackedRegion#1#2{% + \@tracklang@for#1:=\@tracklang@regions\do{#2}% +} \long\def\AnyTrackedLanguages#1#2{% \ifx\@tracklang@languages\empty #2% @@ -2148,6 +2169,81 @@ } \long\def\IfTrackedLanguageFileExists#1#2#3#4#5{% \@tracklang@verbose{Finding file for dialect `#1'}% + \def\@@tracklang@test@if@file@exists@for@dialect{% + \@tracklang@test@if@file@exists@for@dialect + }% + \def\@@tracklang@test@if@file@exists@for@region{% + \@tracklang@test@if@file@exists@for@region + }% + \def\CurrentTrackedTag{}% + \SetCurrentTrackedDialect{#1}% + \IfTrackedDialect{#1}% + {% + \edef\CurrentTrackedIsoCodeI{\TrackedIsoCodeFromLanguage + {639-1}{\CurrentTrackedLanguage}}% + \edef\CurrentTrackedIsoCodeII{\TrackedIsoCodeFromLanguage + {639-2}{\CurrentTrackedLanguage}}% + \edef\CurrentTrackedIsoCodeIII{\TrackedIsoCodeFromLanguage + {639-3}{\CurrentTrackedLanguage}}% + \@tracklang@test@if@file@exists@for@tag{#1}{#2}{#3}% + \@tracklang@if@file@exists{#4}{#5}% + }% + {#5}% unknown dialect +} +\long\def\IfTrackedLanguageFileExistsOmitOnlyRegion#1#2#3#4#5{% + \@tracklang@verbose{Finding file for dialect `#1'}% + \def\@@tracklang@test@if@file@exists@for@dialect{% + \@tracklang@test@if@file@exists@for@dialect + }% + \def\@@tracklang@test@if@file@exists@for@region{% + \@tracklang@test@if@file@exists@for@notregiononly + }% + \def\CurrentTrackedTag{}% + \SetCurrentTrackedDialect{#1}% + \IfTrackedDialect{#1}% + {% + \edef\CurrentTrackedIsoCodeI{\TrackedIsoCodeFromLanguage + {639-1}{\CurrentTrackedLanguage}}% + \edef\CurrentTrackedIsoCodeII{\TrackedIsoCodeFromLanguage + {639-2}{\CurrentTrackedLanguage}}% + \edef\CurrentTrackedIsoCodeIII{\TrackedIsoCodeFromLanguage + {639-3}{\CurrentTrackedLanguage}}% + \@tracklang@test@if@file@exists@for@tag{#1}{#2}{#3}% + \@tracklang@if@file@exists{#4}{#5}% + }% + {#5}% unknown dialect +} +\long\def\IfTrackedLanguageFileExistsOmitDialectLabelOmitOnlyRegion#1#2#3#4#5{% + \@tracklang@verbose{Finding file for dialect `#1'}% + \def\@@tracklang@test@if@file@exists@for@dialect{% + \@tracklang@test@if@file@exists@for@skipdialectlabel + }% + \def\@@tracklang@test@if@file@exists@for@region{% + \@tracklang@test@if@file@exists@for@notregiononly + }% + \def\CurrentTrackedTag{}% + \SetCurrentTrackedDialect{#1}% + \IfTrackedDialect{#1}% + {% + \edef\CurrentTrackedIsoCodeI{\TrackedIsoCodeFromLanguage + {639-1}{\CurrentTrackedLanguage}}% + \edef\CurrentTrackedIsoCodeII{\TrackedIsoCodeFromLanguage + {639-2}{\CurrentTrackedLanguage}}% + \edef\CurrentTrackedIsoCodeIII{\TrackedIsoCodeFromLanguage + {639-3}{\CurrentTrackedLanguage}}% + \@tracklang@test@if@file@exists@for@tag{#1}{#2}{#3}% + \@tracklang@if@file@exists{#4}{#5}% + }% + {#5}% unknown dialect +} +\long\def\IfTrackedLanguageFileExistsOmitDialectLabel#1#2#3#4#5{% + \@tracklang@verbose{Finding file for dialect `#1'}% + \def\@@tracklang@test@if@file@exists@for@dialect{% + \@tracklang@test@if@file@exists@for@skipdialectlabel + }% + \def\@@tracklang@test@if@file@exists@for@region{% + \@tracklang@test@if@file@exists@for@region + }% \def\CurrentTrackedTag{}% \SetCurrentTrackedDialect{#1}% \IfTrackedDialect{#1}% @@ -2166,7 +2262,7 @@ \def\@tracklang@test@if@file@exists@noop#1#2#3{} \def\@tracklang@test@if@file@exists@for@tag#1#2#3{% \let\CurrentTrackedTag\CurrentTrackedLanguageTag - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \@tracklang@verbose{Testing tag (exact) `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -2174,13 +2270,16 @@ }% {% \let\@tracklang@if@file@exists\@tracklang@secondoftwo - \let\@tracklang@test@if@file@exists@next\@tracklang@test@if@file@exists@for@dialect + \let\@tracklang@test@if@file@exists@next\@@tracklang@test@if@file@exists@for@dialect }% \@tracklang@test@if@file@exists@next{#1}{#2}{#3}% } +\def\@@tracklang@test@if@file@exists@for@dialect{% + \@tracklang@test@if@file@exists@for@dialect +} \def\@tracklang@test@if@file@exists@for@dialect#1#2#3{% \edef\CurrentTrackedTag{#1}% - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \@tracklang@verbose{Testing tag (dialect) `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -2203,13 +2302,36 @@ }% {% \let\CurrentTrackedIsoCode\empty - \let\@tracklang@test@if@file@exists@next\@tracklang@test@if@file@exists@for@scriptregion + \let\@tracklang@test@if@file@exists@next\@@tracklang@test@if@file@exists@for@region }% }% }% }% \@tracklang@test@if@file@exists@next{#1}{#2}{#3}% } +\def\@tracklang@test@if@file@exists@for@skipdialectlabel#1#2#3{% + \IfTrackedLanguageHasIsoCode{639-1}{\CurrentTrackedLanguage}% + {% + \let\@tracklang@test@if@file@exists@next\@tracklang@test@if@file@exists@for@langIscriptregion + }% + {% + \IfTrackedLanguageHasIsoCode{639-2}{\CurrentTrackedLanguage}% + {% + \let\@tracklang@test@if@file@exists@next\@tracklang@test@if@file@exists@for@langIIscriptregion + }% + {% + \IfTrackedLanguageHasIsoCode{639-3}{\CurrentTrackedLanguage}% + {% + \let\@tracklang@test@if@file@exists@next\@tracklang@test@if@file@exists@for@langIIIscriptregion + }% + {% + \let\CurrentTrackedIsoCode\empty + \let\@tracklang@test@if@file@exists@next\@@tracklang@test@if@file@exists@for@region + }% + }% + }% + \@tracklang@test@if@file@exists@next{#1}{#2}{#3}% +} \def\@tracklang@test@if@file@exists@for@langIscriptregion#1#2#3{% \let\CurrentTrackedIsoCode\CurrentTrackedIsoCodeI \let\CurrentTrackedTag\CurrentTrackedIsoCode @@ -2225,7 +2347,7 @@ \else \edef\CurrentTrackedTag{\CurrentTrackedTag-\CurrentTrackedRegion}% \fi - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \@tracklang@verbose{Testing tag (639-1 [sublang] [script] [region]) `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -2238,7 +2360,7 @@ \let\@tracklang@test@if@file@exists@next\@tracklang@test@if@file@exists@for@langII \else \let\CurrentTrackedTag\CurrentTrackedIsoCode - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \@tracklang@verbose{Testing tag (639-1 [no script region]) `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -2253,7 +2375,7 @@ \let\@tracklang@test@if@file@exists@next\@tracklang@test@if@file@exists@for@langIskipscript \else \edef\CurrentTrackedTag{\CurrentTrackedIsoCode-\CurrentTrackedDialectScript}% - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \@tracklang@verbose{Testing tag (639-1 script [no region])`\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -2270,7 +2392,7 @@ \let\@tracklang@test@if@file@exists@next\@tracklang@test@if@file@exists@for@langIskipregion \else \edef\CurrentTrackedTag{\CurrentTrackedIsoCode-\CurrentTrackedRegion}% - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \@tracklang@verbose{Testing tag (639-1 [no script] region) `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -2286,7 +2408,8 @@ \else \edef\CurrentTrackedTag{\CurrentTrackedIsoCode-\CurrentTrackedDialectScript -\CurrentTrackedRegion}% - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \@tracklang@verbose{Testing tag (639-1 [omit sublang] script region) + `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -2316,7 +2439,8 @@ \else \edef\CurrentTrackedTag{\CurrentTrackedTag-\CurrentTrackedRegion}% \fi - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \@tracklang@verbose{Testing tag (639-2 [sublang] [script] [region]) + `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -2329,7 +2453,8 @@ \let\@tracklang@test@if@file@exists@next\@tracklang@test@if@file@exists@for@langIII \else \let\CurrentTrackedTag\CurrentTrackedIsoCode - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \@tracklang@verbose{Testing tag (639-2 [omit sublang] [no script region]) + `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -2344,7 +2469,8 @@ \let\@tracklang@test@if@file@exists@next\@tracklang@test@if@file@exists@for@langIIskipscript \else \edef\CurrentTrackedTag{\CurrentTrackedIsoCode-\CurrentTrackedDialectScript}% - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \@tracklang@verbose{Testing tag (639-2 [omit sublang] script [no region]) + `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -2361,7 +2487,8 @@ \let\@tracklang@test@if@file@exists@next\@tracklang@test@if@file@exists@for@langIIskipregion \else \edef\CurrentTrackedTag{\CurrentTrackedIsoCode-\CurrentTrackedRegion}% - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \@tracklang@verbose{Testing tag (639-2 [omit sublang] [no script] region) + `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -2377,7 +2504,8 @@ \else \edef\CurrentTrackedTag{\CurrentTrackedIsoCode-\CurrentTrackedDialectScript -\CurrentTrackedRegion}% - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \@tracklang@verbose{Testing tag (639-2 [omit sublang] script region) + `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -2407,7 +2535,8 @@ \else \edef\CurrentTrackedTag{\CurrentTrackedTag-\CurrentTrackedRegion}% \fi - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \@tracklang@verbose{Testing tag (639-3 [sublang] [script] [region]) + `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -2420,7 +2549,8 @@ \let\@tracklang@test@if@file@exists@next\@tracklang@test@if@file@exists@for@langvariant \else \let\CurrentTrackedTag\CurrentTrackedIsoCode - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \@tracklang@verbose{Testing tag (639-3 [omit sublang] [no script region]) + `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -2435,7 +2565,8 @@ \let\@tracklang@test@if@file@exists@next\@tracklang@test@if@file@exists@for@langIIIskipscript \else \edef\CurrentTrackedTag{\CurrentTrackedIsoCode-\CurrentTrackedDialectScript}% - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \@tracklang@verbose{Testing tag (639-3 [omit sublang] script [no region]) + `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -2452,7 +2583,8 @@ \let\@tracklang@test@if@file@exists@next\@tracklang@test@if@file@exists@for@langIIIskipregion \else \edef\CurrentTrackedTag{\CurrentTrackedIsoCode-\CurrentTrackedRegion}% - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \@tracklang@verbose{Testing tag (639-3 [omit sublang] [no script] region) + `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -2468,7 +2600,8 @@ \else \edef\CurrentTrackedTag{\CurrentTrackedIsoCode-\CurrentTrackedDialectScript -\CurrentTrackedRegion}% - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \@tracklang@verbose{Testing tag (639-3 [omit sublang] script region) + `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -2489,7 +2622,7 @@ \else \edef\CurrentTrackedTag{\CurrentTrackedTag-\CurrentTrackedDialectSubLang}% \fi - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \@tracklang@verbose{Testing tag (639-1 [sublang]) `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -2514,7 +2647,7 @@ }% \else \let\CurrentTrackedTag\CurrentTrackedIsoCode - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \@tracklang@verbose{Testing tag (639-1 [omit sublang]) `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -2549,7 +2682,7 @@ \edef\CurrentTrackedTag{\CurrentTrackedTag-\CurrentTrackedDialectSubLang}% \fi \edef\CurrentTrackedTag{\CurrentTrackedTag-\CurrentTrackedDialectScript}% - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \@tracklang@verbose{Testing tag (639-2 [sublang] script) `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -2560,7 +2693,8 @@ \let\@tracklang@test@if@file@exists@next\@tracklang@test@if@file@exists@for@langIIskipscript \else \edef\CurrentTrackedTag{\CurrentTrackedIsoCode-\CurrentTrackedDialectScript}% - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \@tracklang@verbose{Testing tag (639-2 [omit sublang] script) + `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -2579,7 +2713,7 @@ \else \edef\CurrentTrackedTag{\CurrentTrackedTag-\CurrentTrackedDialectSubLang}% \fi - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \@tracklang@verbose{Testing tag (639-1 [sublang]) `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -2597,7 +2731,7 @@ }% \else \let\CurrentTrackedTag\CurrentTrackedIsoCode - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \@tracklang@verbose{Testing tag (639-2 [omit sublang]) `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -2625,7 +2759,7 @@ \edef\CurrentTrackedTag{\CurrentTrackedTag-\CurrentTrackedDialectSubLang}% \fi \edef\CurrentTrackedTag{\CurrentTrackedTag-\CurrentTrackedDialectScript}% - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \@tracklang@verbose{Testing tag (639-3 [sublang] script) `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -2636,7 +2770,7 @@ \let\@tracklang@test@if@file@exists@next\@tracklang@test@if@file@exists@for@langIIIskipscript \else \edef\CurrentTrackedTag{\CurrentTrackedIsoCode-\CurrentTrackedDialectScript}% - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \@tracklang@verbose{Testing tag (639-3 [omit sublang]) `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -2655,7 +2789,7 @@ \else \edef\CurrentTrackedTag{\CurrentTrackedTag-\CurrentTrackedDialectSubLang}% \fi - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \@tracklang@verbose{Testing tag (639-3 [sublang]) `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -2666,7 +2800,7 @@ \let\@tracklang@test@if@file@exists@next\@tracklang@test@if@file@exists@for@langvariant \else \let\CurrentTrackedTag\CurrentTrackedIsoCode - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \@tracklang@verbose{Testing tag (639-3 [omit sublang])`\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -2685,7 +2819,7 @@ \else \edef\CurrentTrackedTag{\CurrentTrackedTag-\CurrentTrackedDialectSubLang}% \fi - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \@tracklang@verbose{Testing tag (639-1 [sublang]) `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -2710,7 +2844,7 @@ }% \else \let\CurrentTrackedTag\CurrentTrackedIsoCode - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \@tracklang@verbose{Testing tag (639-1 [omit sublang]) `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -2744,8 +2878,8 @@ \else \edef\CurrentTrackedTag{\CurrentTrackedTag-\CurrentTrackedDialectSubLang}% \fi - \edef\CurrentTrackedTag{\CurrentTrackedTag-\CurrentTrackedDialectScript}% - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \edef\CurrentTrackedTag{\CurrentTrackedTag-\CurrentTrackedDialectRegion}% + \@tracklang@verbose{Testing tag (639-2 [sublang] region) `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -2755,8 +2889,9 @@ \ifx\CurrentTrackedDialectSubLang\empty \let\@tracklang@test@if@file@exists@next\@tracklang@test@if@file@exists@for@langIIskipregion \else - \edef\CurrentTrackedTag{\CurrentTrackedIsoCode-\CurrentTrackedDialectScript}% - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \edef\CurrentTrackedTag{\CurrentTrackedIsoCode-\CurrentTrackedDialectRegion}% + \@tracklang@verbose{Testing tag (639-2 [omit sublang] region) + `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -2775,7 +2910,7 @@ \else \edef\CurrentTrackedTag{\CurrentTrackedTag-\CurrentTrackedDialectSubLang}% \fi - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \@tracklang@verbose{Testing tag (639-2 [sublang]) `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -2793,7 +2928,7 @@ }% \else \let\CurrentTrackedTag\CurrentTrackedIsoCode - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \@tracklang@verbose{Testing tag (639-2 [omit sublang])`\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -2820,8 +2955,8 @@ \else \edef\CurrentTrackedTag{\CurrentTrackedTag-\CurrentTrackedDialectSubLang}% \fi - \edef\CurrentTrackedTag{\CurrentTrackedTag-\CurrentTrackedDialectScript}% - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \edef\CurrentTrackedTag{\CurrentTrackedTag-\CurrentTrackedDialectRegion}% + \@tracklang@verbose{Testing tag (639-2 [sublang] region) `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -2831,8 +2966,9 @@ \ifx\CurrentTrackedDialectSubLang\empty \let\@tracklang@test@if@file@exists@next\@tracklang@test@if@file@exists@for@langIIskipregion \else - \edef\CurrentTrackedTag{\CurrentTrackedIsoCode-\CurrentTrackedDialectScript}% - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \edef\CurrentTrackedTag{\CurrentTrackedIsoCode-\CurrentTrackedDialectRegion}% + \@tracklang@verbose{Testing tag (639-2 [omit sublang] region) + `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -2851,7 +2987,7 @@ \else \edef\CurrentTrackedTag{\CurrentTrackedTag-\CurrentTrackedDialectSubLang}% \fi - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \@tracklang@verbose{Testing tag (639-2 [sublang]) `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -2862,7 +2998,8 @@ \let\@tracklang@test@if@file@exists@next\@tracklang@test@if@file@exists@for@langvariant \else \let\CurrentTrackedTag\CurrentTrackedIsoCode - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \@tracklang@verbose{Testing tag (639-2 [omit sublang]) + `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -2882,8 +3019,8 @@ \else \edef\CurrentTrackedTag{\CurrentTrackedTag-\CurrentTrackedDialectSubLang}% \fi - \edef\CurrentTrackedTag{\CurrentTrackedTag-\CurrentTrackedDialectScript}% - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \edef\CurrentTrackedTag{\CurrentTrackedTag-\CurrentTrackedDialectRegion}% + \@tracklang@verbose{Testing tag (639-3 [sublang] region) `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -2893,8 +3030,9 @@ \ifx\CurrentTrackedDialectSubLang\empty \let\@tracklang@test@if@file@exists@next\@tracklang@test@if@file@exists@for@langIIskipregion \else - \edef\CurrentTrackedTag{\CurrentTrackedIsoCode-\CurrentTrackedDialectScript}% - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \edef\CurrentTrackedTag{\CurrentTrackedIsoCode-\CurrentTrackedDialectRegion}% + \@tracklang@verbose{Testing tag (639-3 [omit sublang] region) + `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -2917,7 +3055,7 @@ \edef\CurrentTrackedTag{\CurrentTrackedTag-\CurrentTrackedDialectSubLang}% \fi \edef\CurrentTrackedTag{\CurrentTrackedTag-\CurrentTrackedRegion}% - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \@tracklang@verbose{Testing tag (639-1 [sublang] region) `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -2927,8 +3065,9 @@ \ifx\CurrentTrackedDialectSubLang\empty \let\@tracklang@test@if@file@exists@next\@tracklang@test@if@file@exists@for@langIscriptskipregion \else - \edef\CurrentTrackedTag{\CurrentTrackedIsoCode-\CurrentTrackedRegion}% - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \edef\CurrentTrackedTag{\CurrentTrackedIsoCode-\CurrentTrackedRegion}% + \@tracklang@verbose{Testing tag (639-1 [omit sublang] region) + `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -2952,7 +3091,7 @@ \edef\CurrentTrackedTag{\CurrentTrackedTag-\CurrentTrackedDialectSubLang}% \fi \edef\CurrentTrackedTag{\CurrentTrackedTag-\CurrentTrackedDialectScript}% - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \@tracklang@verbose{Testing tag (639-1 [sublang] script) `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -2963,7 +3102,8 @@ \let\@tracklang@test@if@file@exists@next\@tracklang@test@if@file@exists@for@langIskipscriptskipregion \else \edef\CurrentTrackedTag{\CurrentTrackedIsoCode-\CurrentTrackedDialectScript}% - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \@tracklang@verbose{Testing tag (639-1 [omit sublang] script) + `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -2982,7 +3122,7 @@ \else \edef\CurrentTrackedTag{\CurrentTrackedTag-\CurrentTrackedDialectSubLang}% \fi - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \@tracklang@verbose{Testing tag (639-1 [sublang]) `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -3003,12 +3143,12 @@ \let\@tracklang@test@if@file@exists@next\@tracklang@test@if@file@exists@for@langIIIscriptregion }% {% - \let\@tracklang@test@if@file@exists@next\@tracklang@test@if@file@exists@for@region + \let\@tracklang@test@if@file@exists@next\@@tracklang@test@if@file@exists@for@region }% }% \else \let\CurrentTrackedTag\CurrentTrackedIsoCode - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \@tracklang@verbose{Testing tag (639-1 [omit sublang]) `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -3028,7 +3168,7 @@ \let\@tracklang@test@if@file@exists@next\@tracklang@test@if@file@exists@for@langIIIscriptregion }% {% - \let\@tracklang@test@if@file@exists@next\@tracklang@test@if@file@exists@for@region + \let\@tracklang@test@if@file@exists@next\@@tracklang@test@if@file@exists@for@region }% }% }% @@ -3046,7 +3186,7 @@ \edef\CurrentTrackedTag{\CurrentTrackedTag-\CurrentTrackedDialectSubLang}% \fi \edef\CurrentTrackedTag{\CurrentTrackedTag-\CurrentTrackedRegion}% - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \@tracklang@verbose{Testing tag (639-2 [sublang] region) `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -3056,8 +3196,9 @@ \ifx\CurrentTrackedDialectSubLang\empty \let\@tracklang@test@if@file@exists@next\@tracklang@test@if@file@exists@for@langIIscriptskipregion \else - \edef\CurrentTrackedTag{\CurrentTrackedIsoCode-\CurrentTrackedRegion}% - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \edef\CurrentTrackedTag{\CurrentTrackedIsoCode-\CurrentTrackedRegion}% + \@tracklang@verbose{Testing tag (639-2 [omit sublang] region) + `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -3081,7 +3222,7 @@ \edef\CurrentTrackedTag{\CurrentTrackedTag-\CurrentTrackedDialectSubLang}% \fi \edef\CurrentTrackedTag{\CurrentTrackedTag-\CurrentTrackedDialectScript}% - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \@tracklang@verbose{Testing tag (639-2 [sublang] script) `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -3092,7 +3233,8 @@ \let\@tracklang@test@if@file@exists@next\@tracklang@test@if@file@exists@for@langIIskipscriptskipregion \else \edef\CurrentTrackedTag{\CurrentTrackedIsoCode-\CurrentTrackedDialectScript}% - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \@tracklang@verbose{Testing tag (639-2 [omit sublang] script) + `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -3111,7 +3253,7 @@ \else \edef\CurrentTrackedTag{\CurrentTrackedTag-\CurrentTrackedDialectSubLang}% \fi - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \@tracklang@verbose{Testing tag (639-2 [sublang]) `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -3126,11 +3268,11 @@ \let\@tracklang@test@if@file@exists@next\@tracklang@test@if@file@exists@for@langIIIscriptregion }% {% - \let\@tracklang@test@if@file@exists@next\@tracklang@test@if@file@exists@for@region + \let\@tracklang@test@if@file@exists@next\@@tracklang@test@if@file@exists@for@region }% \else \let\CurrentTrackedTag\CurrentTrackedIsoCode - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \@tracklang@verbose{Testing tag (639-2 [omit sublang]) `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -3144,7 +3286,7 @@ \let\@tracklang@test@if@file@exists@next\@tracklang@test@if@file@exists@for@langIIIscriptregion }% {% - \let\@tracklang@test@if@file@exists@next\@tracklang@test@if@file@exists@for@region + \let\@tracklang@test@if@file@exists@next\@@tracklang@test@if@file@exists@for@region }% }% \fi @@ -3161,7 +3303,7 @@ \edef\CurrentTrackedTag{\CurrentTrackedTag-\CurrentTrackedDialectSubLang}% \fi \edef\CurrentTrackedTag{\CurrentTrackedTag-\CurrentTrackedRegion}% - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \@tracklang@verbose{Testing tag (639-3 [sublang] region) `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -3172,7 +3314,8 @@ \let\@tracklang@test@if@file@exists@next\@tracklang@test@if@file@exists@for@langIIIscriptskipregion \else \edef\CurrentTrackedTag{\CurrentTrackedIsoCode-\CurrentTrackedRegion}% - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \@tracklang@verbose{Testing tag (639-3 [omit sublang] region) + `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -3196,7 +3339,7 @@ \edef\CurrentTrackedTag{\CurrentTrackedTag-\CurrentTrackedDialectSubLang}% \fi \edef\CurrentTrackedTag{\CurrentTrackedTag-\CurrentTrackedDialectScript}% - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \@tracklang@verbose{Testing tag (639-3 [sublang] script) `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -3207,7 +3350,8 @@ \let\@tracklang@test@if@file@exists@next\@tracklang@test@if@file@exists@for@langIIIskipscriptskipregion \else \edef\CurrentTrackedTag{\CurrentTrackedIsoCode-\CurrentTrackedDialectScript}% - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \@tracklang@verbose{Testing tag (639-3 [omit sublang] script) + `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -3226,7 +3370,7 @@ \else \edef\CurrentTrackedTag{\CurrentTrackedTag-\CurrentTrackedDialectSubLang}% \fi - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \@tracklang@verbose{Testing tag (639-3 [sublang]) `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -3234,17 +3378,18 @@ }% {% \ifx\CurrentTrackedDialectSubLang\empty - \let\@tracklang@test@if@file@exists@next\@tracklang@test@if@file@exists@for@region + \let\@tracklang@test@if@file@exists@next\@@tracklang@test@if@file@exists@for@region \else \let\CurrentTrackedTag\CurrentTrackedIsoCode - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \@tracklang@verbose{Testing tag (639-3 [omit sublang]) + `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo \let\@tracklang@test@if@file@exists@next\@tracklang@test@if@file@exists@noop }% {% - \let\@tracklang@test@if@file@exists@next\@tracklang@test@if@file@exists@for@region + \let\@tracklang@test@if@file@exists@next\@@tracklang@test@if@file@exists@for@region }% \fi }% @@ -3259,7 +3404,7 @@ \else \edef\CurrentTrackedTag{\CurrentTrackedIsoCode-\CurrentTrackedDialectSubLang}% \fi - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \@tracklang@verbose{Testing tag (639-2 [sublang]) `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -3270,7 +3415,8 @@ \let\@tracklang@test@if@file@exists@next\@tracklang@test@if@file@exists@for@langIII \else \let\CurrentTrackedTag\CurrentTrackedIsoCode - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \@tracklang@verbose{Testing tag (639-2 [omit sublang]) + `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -3296,7 +3442,7 @@ \else \edef\CurrentTrackedTag{\CurrentTrackedIsoCode-\CurrentTrackedDialectSubLang}% \fi - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \@tracklang@verbose{Testing tag (639-3 [sublang]) `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -3307,7 +3453,8 @@ \let\@tracklang@test@if@file@exists@next\@tracklang@test@if@file@exists@for@langvariant \else \let\CurrentTrackedTag\CurrentTrackedIsoCode - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \@tracklang@verbose{Testing tag (639-3 [omit sublang]) + `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -3324,9 +3471,12 @@ }% \@tracklang@test@if@file@exists@next{#1}{#2}{#3}% } +\def\@@tracklang@test@if@file@exists@for@region{% + \@tracklang@test@if@file@exists@for@region +} \def\@tracklang@test@if@file@exists@for@region#1#2#3{% \let\CurrentTrackedTag\CurrentTrackedRegion - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \@tracklang@verbose{Testing tag (region) `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -3337,6 +3487,9 @@ }% \@tracklang@test@if@file@exists@next{#1}{#2}{#3}% } +\def\@tracklang@test@if@file@exists@for@notregiononly#1#2#3{% + \@tracklang@test@if@file@exists@for@langvariant{#1}{#2}{#3}% +} \def\@tracklang@test@if@file@exists@for@langvariant#1#2#3{% \ifx\CurrentTrackedDialectVariant\empty \let\@tracklang@test@if@file@exists@next\@tracklang@test@if@file@exists@for@rootlang @@ -3371,7 +3524,7 @@ \edef\CurrentTrackedTag{\CurrentTrackedTag-\CurrentTrackedDialectSubLang}% \fi \edef\CurrentTrackedTag{\CurrentTrackedTag-\CurrentTrackedDialectVariant}% - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \@tracklang@verbose{Testing tag (639-1 [sublang] variant) `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -3402,7 +3555,7 @@ \edef\CurrentTrackedTag{\CurrentTrackedTag-\CurrentTrackedDialectSubLang}% \fi \edef\CurrentTrackedTag{\CurrentTrackedTag-\CurrentTrackedDialectVariant}% - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \@tracklang@verbose{Testing tag (639-2 [sublang] variant) `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -3427,7 +3580,7 @@ \edef\CurrentTrackedTag{\CurrentTrackedTag-\CurrentTrackedDialectSubLang}% \fi \edef\CurrentTrackedTag{\CurrentTrackedTag-\CurrentTrackedDialectVariant}% - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \@tracklang@verbose{Testing tag (639-3 [sublang] variant) `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -3440,7 +3593,7 @@ } \def\@tracklang@test@if@file@exists@for@rootlang#1#2#3{% \let\CurrentTrackedTag\CurrentTrackedLanguage - \@tracklang@verbose{Testing tag `\CurrentTrackedTag'}% + \@tracklang@verbose{Testing tag (root) `\CurrentTrackedTag'}% \@tracklang@IfFileExists{#2\CurrentTrackedTag#3}% {% \let\@tracklang@if@file@exists\@tracklang@firstoftwo @@ -3673,7 +3826,8 @@ \string\TrackLangProvidesResource\space must be loaded with \string\TrackLangRequireDialect}% \fi - \ProvidesFile{\TrackLangRequireDialectPrefix-#1.ldf}% + \expandafter\ProvidesFile\expandafter + {\TrackLangRequireDialectPrefix-#1.ldf}% } \fi \def\TrackLangAddToHook{\noop@TrackLangAddToHook} @@ -3795,7 +3949,7 @@ {% \@tracklang@IfFileExists{\TrackLangRequireDialectPrefix-#1.ldf}% {% - \input \TrackLangRequireDialectPrefix-#1.ldf + \@tracklang@inputfile{\TrackLangRequireDialectPrefix-#1.ldf}% }% {% \@tracklang@warn{No `\TrackLangRequireDialectPrefix' support for @@ -3817,7 +3971,7 @@ {% \@tracklang@IfFileExists{\TrackLangRequireDialectPrefix-#1.ldf}% {% - \input \TrackLangRequireDialectPrefix-#1.ldf + \@tracklang@inputfile{\TrackLangRequireDialectPrefix-#1.ldf}% #2% }% {% @@ -3838,7 +3992,7 @@ {% \@tracklang@IfFileExists{\TrackLangRequireDialectPrefix-#1.ldf}% {% - \input \TrackLangRequireDialectPrefix-#1.ldf + \@tracklang@inputfile{\TrackLangRequireDialectPrefix-#1.ldf}% }% {#2}% }% @@ -3854,7 +4008,7 @@ \@tracklang@next } \def\@noop@TrackLangRequireDialect[#1]#2#3{% - \@tracklang@err{\string\TrackLangRequireDialect\space + \@tracklang@err{\string\TrackLangRequireDialect...\space only permitted within resource files} } \def\@TrackLangRequireDialect#1{% @@ -3873,20 +4027,125 @@ {#2-}% prefix {.ldf}% suffix {% - \let\TrackLangRequireResource\@TrackLangRequireResource - \let\TrackLangRequireResourceOrDo\@TrackLangRequireResourceOrDo - \let\TrackLangRequestResource\@TrackLangRequestResource - \let\TrackLangRequireDialect\noop@TrackLangRequireDialect - \let\TrackLangAddToHook\@TrackLangAddToHook - #1% - \let\TrackLangRequireResource\noop@TrackLangRequireResource - \let\TrackLangRequireResourceOrDo\noop@TrackLangRequireResourceOrDo - \let\TrackLangRequestResource\noop@TrackLangRequestResource - \let\TrackLangRequireDialect\@TrackLangRequireDialect - \let\TrackLangAddToHook\noop@TrackLangAddToHook + \@@TrackLang@RequireDialect{#1}% + }% + {% + \@tracklang@warn{No `#2' support for dialect `#3' + \ifTrackLangShowWarnings + \else + (switch on tracklang's verbose mode for search attempts) + \fi + }% + }% +} +\def\@@TrackLang@RequireDialect#1{% + \let\TrackLangRequireResource\@TrackLangRequireResource + \let\TrackLangRequireResourceOrDo\@TrackLangRequireResourceOrDo + \let\TrackLangRequestResource\@TrackLangRequestResource + \let\TrackLangRequireDialect\noop@TrackLangRequireDialect + \let\TrackLangRequireDialectOmitDialectLabel\noop@TrackLangRequireDialect + \let\TrackLangRequireDialectOmitDialectLabelOmitOnlyRegion + \noop@TrackLangRequireDialect + \let\TrackLangRequireDialectOmitOnlyRegion\noop@TrackLangRequireDialect + \let\TrackLangAddToHook\@TrackLangAddToHook + #1% + \let\TrackLangRequireResource\noop@TrackLangRequireResource + \let\TrackLangRequireResourceOrDo\noop@TrackLangRequireResourceOrDo + \let\TrackLangRequestResource\noop@TrackLangRequestResource + \let\TrackLangRequireDialect\@TrackLangRequireDialect + \let\TrackLangRequireDialectOmitDialectLabel + \@TrackLangRequireDialectOmitDialectLabel + \let\TrackLangRequireDialectOmitDialectLabelOmitOnlyRegion + \@TrackLangRequireDialectOmitDialectLabelOmitOnlyRegion + \let\TrackLangRequireDialectOmitOnlyRegion + \@TrackLangRequireDialectOmitOnlyRegion + \let\TrackLangAddToHook\noop@TrackLangAddToHook +} +\def\TrackLangRequireDialectOmitDialectLabel{% + \@TrackLangRequireDialectOmitDialectLabel} +\def\@TrackLangRequireDialectOmitDialectLabel#1{% + \ifx[#1\relax + \def\@tracklang@next{\@@TrackLangRequireDialectOmitDialectLabel[}% + \else + \def\@tracklang@next{% + \@@TrackLangRequireDialectOmitDialectLabel + [\TrackLangRequireResource{\CurrentTrackedTag}]{#1}}% + \fi + \@tracklang@next +} +\def\@@TrackLangRequireDialectOmitDialectLabel[#1]#2#3{% + \def\TrackLangRequireDialectPrefix{#2}% + \IfTrackedLanguageFileExistsOmitDialectLabel{#3}% + {#2-}% prefix + {.ldf}% suffix + {% + \@@TrackLang@RequireDialect{#1}% + }% + {% + \@tracklang@warn{No `#2' support for dialect `#3' + \ifTrackLangShowWarnings + \else + (switch on tracklang's verbose mode for search attempts) + \fi + }% + }% +} +\def\TrackLangRequireDialectOmitDialectLabelOmitOnlyRegion{% + \@TrackLangRequireDialectOmitDialectLabelOmitOnlyRegion} +\def\@TrackLangRequireDialectOmitDialectLabelOmitOnlyRegion#1{% + \ifx[#1\relax + \def\@tracklang@next{\@@TrackLangRequireDialectOmitDialectLabelOmitOnlyRegion[}% + \else + \def\@tracklang@next{% + \@@TrackLangRequireDialectOmitDialectLabelOmitOnlyRegion + [\TrackLangRequireResource{\CurrentTrackedTag}]{#1}}% + \fi + \@tracklang@next +} +\def\@@TrackLangRequireDialectOmitDialectLabelOmitOnlyRegion[#1]#2#3{% + \def\TrackLangRequireDialectPrefix{#2}% + \IfTrackedLanguageFileExistsOmitDialectLabelOmitOnlyRegion{#3}% + {#2-}% prefix + {.ldf}% suffix + {% + \@@TrackLang@RequireDialect{#1}% }% {% - \@tracklang@warn{No `#2' support for dialect `#3'}% + \@tracklang@warn{No `#2' support for dialect `#3' + \ifTrackLangShowWarnings + \else + (switch on tracklang's verbose mode for search attempts) + \fi + }% + }% +} +\def\TrackLangRequireDialectOmitOnlyRegion{% + \@TrackLangRequireDialectOmitOnlyRegion} +\def\@TrackLangRequireDialectOmitOnlyRegion#1{% + \ifx[#1\relax + \def\@tracklang@next{\@@TrackLangRequireDialectOmitOnlyRegion[}% + \else + \def\@tracklang@next{% + \@@TrackLangRequireDialectOmitOnlyRegion + [\TrackLangRequireResource{\CurrentTrackedTag}]{#1}}% + \fi + \@tracklang@next +} +\def\@@TrackLangRequireDialectOmitOnlyRegion[#1]#2#3{% + \def\TrackLangRequireDialectPrefix{#2}% + \IfTrackedLanguageFileExistsOmitOnlyRegion{#3}% + {#2-}% prefix + {.ldf}% suffix + {% + \@@TrackLang@RequireDialect{#1}% + }% + {% + \@tracklang@warn{No `#2' support for dialect `#3' + \ifTrackLangShowWarnings + \else + (switch on tracklang's verbose mode for search attempts) + \fi + }% }% } \@tracklang@restore@at diff --git a/Master/texmf-dist/tex/generic/tuple/tuple.sty b/Master/texmf-dist/tex/generic/tuple/tuple.sty new file mode 100644 index 00000000000..e18ff0ba149 --- /dev/null +++ b/Master/texmf-dist/tex/generic/tuple/tuple.sty @@ -0,0 +1,20 @@ +%____________________________________________________________________ +% Author : Christian Tellechea | +% Status : Maintained | +% Email : unbonpetit@netc.fr | +% Package URL: https://www.ctan.org/pkg/tuple | +% Copyright : Christian Tellechea 2024 | +% Licence : Released under the LaTeX Project Public License v1.3c | +% or later, see http://www.latex-project.org/lppl.txt | +% Files : 1) tuple.tex | +% 2) tuple.sty | +% 3) README | +% 4) tuple-doc-fr.tex | +% 5) tuple-doc-fr.pdf | +% 6) tuple-doc-en.tex | +% 7) tuple-doc-en.pdf | +%-------------------------------------------------------------------- +\expandafter\let\csname tpl_fromsty\endcsname\relax +\input tuple.tex +\ProvidesPackage\tplname[\tpldate\space v\tplversion\space Expandable operations for tuples of numbers (CT)] +\endinput
\ No newline at end of file diff --git a/Master/texmf-dist/tex/generic/tuple/tuple.tex b/Master/texmf-dist/tex/generic/tuple/tuple.tex new file mode 100644 index 00000000000..ed8b345a140 --- /dev/null +++ b/Master/texmf-dist/tex/generic/tuple/tuple.tex @@ -0,0 +1,1157 @@ +% !TeX encoding = UTF-8 +% Ce fichier contient le code de l'extension "tuple" +% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% % +\def\tplname {tuple} % +\def\tplversion {0.2} % +% % +\def\tpldate {2024/12/20} % +% % +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% + +%____________________________________________________________________ +% Author : Christian Tellechea | +% Status : Maintained | +% Email : unbonpetit@netc.fr | +% Package URL: https://www.ctan.org/pkg/tuple | +% Copyright : Christian Tellechea 2024 | +% Licence : Released under the LaTeX Project Public License v1.3c | +% or later, see http://www.latex-project.org/lppl.txt | +% Files : 1) tuple.tex | +% 2) tuple.sty | +% 3) README | +% 4) tuple-doc-fr.tex | +% 5) tuple-doc-fr.pdf | +% 6) tuple-doc-en.tex | +% 7) tuple-doc-en.pdf | +%-------------------------------------------------------------------- + +\csname tpl_load_once\endcsname +\expandafter\let\csname tpl_load_once\endcsname\endinput + +\expandafter\edef\csname tpl_restorecatcode\endcsname{\catcode\number`\_=\the\catcode`\_\relax } +\catcode`\_11 + +\def\tpl_exec_first\fi\tpl_exec_second#1#2{\fi#1} +\def\tpl_exec_second#1#2{#2} +\ifdefined\tpl_fromsty\tpl_exec_first\fi\tpl_exec_second + {% + \def\tpl_error#1{\PackageError\tplname{#1}{Read the \tplname\space manual}}% pour LaTeX + } + {% + \def\tpl_error#1{\errmessage{Package \tplname\space Error: #1^^J}}% pour TeX + \immediate\write -1 {Package: \tpldate\space v\tplversion\space Expandable operations for tuples of numbers (CT)}% + \input expl3-generic.tex % pour fp + }% + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%% Macros diverses %%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\def\tpl_stripsp#1{% + \def\tpl_stripsp##1##2{\expanded{\tpl_stripsp_i\_marksp##2\__nil\_marksp#1\_marksp\_nil{##1}}}% + \def\tpl_stripsp_i##1\_marksp#1##2\_marksp##3\_nil{\tpl_stripsp_ii##3##1##2\__nil#1\__nil\_nil}% + \def\tpl_stripsp_ii##1#1\__nil##2\_nil{\tpl_stripsp_iii##1##2\_nil}% + \def\tpl_stripsp_iii##1##2\__nil##3\_nil##4{\unexpanded{##4{##2}}}% +} +\tpl_stripsp{ } +\def\tpl_swaparg#1#2{#2{#1}} +\def\tpl_e_second#1#2{\expandafter\tpl_swaparg\expandafter{#2}{#1}} +\def\tpl_x_second#1#2{\expandafter\tpl_swaparg\expandafter{\expanded{#2}}{#1}} +\def\tpl_swaptwo#1#2{#2#1} +\def\tpl_e_after#1#2{\expandafter\tpl_swaptwo\expandafter{#2}{#1}} +\def\tpl_x_after#1#2{\expandafter\tpl_swaptwo\expandafter{\expanded{#2}}{#1}} +\def\tpl_error_inmethod#1{{\tpl_error{#1}}{-1}} +\def\tpl_gobone#1{} +\def\tpl_gobtonil#1\_nil{} +\def\tpl_firsttonil#1#2\_nil{#1} +\def\tpl_antefi#1\fi{\fi#1} +\def\tpl_testifx#1{\ifx#1\tpl_exec_first\fi\tpl_exec_second} +\def\tpl_testifnum#1{\ifnum#1\tpl_exec_first\fi\tpl_exec_second} +\def\tpl_testifcsname#1{\ifcsname#1\endcsname\tpl_exec_first\fi\tpl_exec_second} +\def\tpl_cs_enxp#1{\expandafter\noexpand\csname#1\endcsname} +\def\tpl_ifempty#1#2#3{\tpl_ifempty_a#1\_YN{#3}\_YN{#2}\_nil} +\def\tpl_ifempty_a#1#2\_YN#3#4\_nil{#3} +\def\tpl_foreach#1\in#2\do#3{% #1=macro recevant chaque élément #2=liste d'éléments #3=code + \def\tpl_foreach_a##1,{% + \ifx\tpl_foreach_a##1\else + \def#1{##1}% + #3% + \expandafter\tpl_foreach_a + \fi + }% + \expandafter\tpl_foreach_a#2,\tpl_foreach_a,% 1-développer #2 au cas où... +} + +%--------------- +% indexage développable d'un tuple +%--------------- +\def\tpl_index_tuple#1{\tpl_index_tuple_a0#1,\relax,}% +\def\tpl_index_tuple_a#1#2,{% TODO : le faire 8 par 8 ? + \ifx\relax#2\else + \tpl_antefi + #1:#2,\tpl_e_second\tpl_index_tuple_a{\the\numexpr#1+1}% + \fi% +} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%% Choix options %%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\def\tpl_testifstreq#1#2{% teste si #1=#2 + \tpl_stripsp{\def\tpl__tmpa}{#1}% + \tpl_stripsp{\def\tpl__tmpb}{#2}% + \tpl_testifx{\tpl__tmpa\tpl__tmpb} +} +\def\tplsetmode#1{% + \tpl_testifstreq{#1}{int} + {% + \tpl_set_mode_a#1:\_nil + } + {% + \tpl_ifddot{#1} + {\tpl_set_mode_a#1\_nil} + {\tpl_error{":" expected in "\detokenize{#1}"}}% + }% +} +\def\tpl_set_mode_a#1:#2\_nil{% + \let\tpl_expr_eval\fpeval + \tpl_testifstreq{#1}{int} + {% + \def\tplfpcompare##1##2##3{\ifnum##1##2##3 \tpl_exec_first\fi\tpl_exec_second}% + \def\tpl_item_add##1##2{\the\numexpr##1+##2\relax}% + \def\tpl_item_addsq##1##2{\the\numexpr##1+##2*##2\relax}% + } + {% + \tpl_testifstreq{#1}{dec} + {% + \tpl_testifstreq{#2}{long} + {% + \tpl_e_after{\let\tplfpcompare}{\csname fp_compare:nNnTF\endcsname}% + \def\tpl_item_add##1##2{\fpeval{##1+##2}}% + \def\tpl_item_addsq##1##2{\fpeval{##1+##2*##2}}% + } + {% + \tpl_testifstreq{#2}{short} + {% + \def\tplfpcompare##1##2##3{\ifdim##1pt##2##3pt \tpl_exec_first\fi\tpl_exec_second}% + \let\tpl_item_add\tpl_short_short_add + \def\tpl_item_addsq##1##2{\tpl_x_second\tpl_short_short_add{\tpl_short_mult{##2}{##2}}{##1}}% + }% + {% + \tpl_error{number 'short' or 'long' expected in '\detokenize{#1:#2}'}% + }% + }% + } + {% + \tpl_error{number "long" or "dec" expected in "\detokenize{#1:#2}"}% + }% + }% +} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%% Moteur rudimentaire de calcul %%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +% Macros développables sur les +% décimaux courts "#8.#8" +\def\tpl_gob_zeros#1{% + \tpl_testifx{0#1} + \tpl_gob_zeros + {\tpl_testifx{\empty#1}0{#1}}% +} +\def\tpl_split_iv_iv#1{\tpl_split_iv_iv_a#1{}{}{}{}{}{}{}{}{}\_nil}% coupe le nombre #1 en 2 nombres de 4 chiffres +\def\tpl_esplit_iv_iv#1{\expandafter\tpl_split_iv_iv_a#1{}{}{}{}{}{}{}{}{}\_nil}% coupe le nombre #1 en 2 nombres de 4 chiffres +\def\tpl_split_iv_iv_a#1#2#3#4#5#6#7#8#9{\tpl_split_iv_iv_b#9#8#7#6#5#4#3#2#1000000000} +\def\tpl_split_iv_iv_b#1#2#3#4#5#6#7#8#9{{#9#8#7#6#5}{#4#3#2#1}\tpl_gobtonil} + +\def\tpl_pack_iv_iv#1{\tpl_pack_iv_iv_a#100000000\_nil} +\def\tpl_pack_iv_iv_a#1#2#3#4#5#6#7#8{{#1#2#3#4}{#5#6#7#8}\tpl_gobtonil} +%--------------- +% multiplication #8.#8 * #8*#8 -> #16.#8 +%--------------- +\def\tpl_ifdot#1#2#3{\tpl_ifdot_a#1\_YN{#2}\mark_dot.\_YN{#3}\mark_dot\_nil}% #1 contient-il "." ? #2=T #3=F +\def\tpl_ifdot_a#1.#2\_YN#3\mark_dot#4\_nil{#3}% + +\def\tpl_hi#1{\expandafter\tpl_hi_a\the\numexpr#1\relax{}{}{}{}{}{}{}{}{}\_nil} +\def\tpl_hi_a#1#2#3#4#5#6#7#8#9{\tpl_hi_b#9#8#7#6#5#4#3#2#1000000000} +\def\tpl_hi_b#1#2#3#4#5#6#7#8#9{#9#8#7#6#5\tpl_gobtonil} + +\def\tpl_pack_hi_unpack_lo#1#2{\expandafter\tpl_pack_hi_unpack_lo_a\the\numexpr#2\relax{}{}{}{}{}{}{}{}{}\_nil{#1}} +\def\tpl_pack_hi_unpack_lo_a#1#2#3#4#5#6#7#8#9{\tpl_pack_hi_unpack_lo_b#9#8#7#6#5#4#3#2#1000000000} +\def\tpl_pack_hi_unpack_lo_b#1#2#3#4#5#6#7#8#9{\tpl_pack_hi_unpack_lo_c{#9#8#7#6#5}{#4#3#2#1}} +\def\tpl_pack_hi_unpack_lo_c#1#2#3\_nil#4{#4{#1}#2} + +\def\tpl_short_mult#1#2{% #1=a,b #2=c,d (a,b,c,d 8 chiffres max chacun) + \tpl_short_mult_a#1\relax#2\relax +} +\def\tpl_short_mult_a#1#2\relax#3#4\relax{% + \tpl_x_after\tpl_short_mult_b{\unless\ifx-#1+\fi#1#2\relax\unless\ifx-#3+\fi#3#4\relax}% +} +\def\tpl_short_mult_b#1#2\relax#3#4\relax{% + \unless\ifx#1#3-\fi + \tpl_x_after\tpl_short_mult_c{0#2\tpl_ifdot{#2}{}{.0}\relax0#4\tpl_ifdot{#4}{}{.0}\relax}% +} +\def\tpl_short_mult_c#1.#2\relax#3.#4\relax{% #1=hi(a) + \tpl_x_after\tpl_short_mult_d{\tpl_split_iv_iv{#1}\tpl_pack_iv_iv{#2}\tpl_split_iv_iv{#3}\tpl_pack_iv_iv{#4}}% +} +\def\tpl_short_mult_d#1#2#3#4#5#6#7#8{% #1=a1 #2=a0 . #3=b1 #4=b0 +% * #5=c1 #6=c0 . #7=d1 #8=d0 + \tpl_pack_hi_unpack_lo{\tpl_short_mult_e{#1}{#2}{#3}{#4}{#5}{#6}{#7}{#8}}{% + #8*#2+#3*#7+#6*#4+\tpl_hi{#8*#3+#7*#4+\tpl_hi{#4*#8}}% d0a0 + d1b1 +c0b0 + hi(d0b1 + d1b0 + hi(b0d0)) + }% +} +\def\tpl_short_mult_e#1#2#3#4#5#6#7#8#9{% #1=a1 #2=a0 . #3=b1 #4=b0 * #5=c1 #6=c0 . #7=d1 #8=d0 #9=retenue pour rang suivan + \tpl_pack_hi_unpack_lo{\tpl_short_mult_f{#1}{#2}{#3}{#5}{#6}{#7}}{#9+#8*#1+#7*#2+#6*#3+#5*#4}% d0a1+d1a0+c0b1+c1b0 +} +\def\tpl_short_mult_f#1#2#3#4#5#6#7{% #1=a1 #2=a0 #3=b1 #4=c1 #5=c0 #6=d1 #7=retenue + \tpl_pack_hi_unpack_lo{\tpl_short_mult_g{#1}{#2}{#4}{#5}}{#7+#1*#6+#2*#5+#3*#4}.% d1a1+c0a0+c1b1% +} +\def\tpl_short_mult_g#1#2#3#4#5{% #1=a1 #2=a0 #3=c1 #4=c0 #5=retenue + \tpl_pack_hi_unpack_lo{\tpl_short_mult_h{#1}{#3}}{#5+#1*#4+#2*#3}% +} +\def\tpl_short_mult_h#1#2#3{\expandafter\tpl_gob_zeros\the\numexpr#1*#2+#3\relax} +%--------------- +% addition #16.#8 + #16.#8 -> #16.#8 (décimaux non signés) +%--------------- +\def\tpl_split_viii_viii#1{\tpl_split_viii_viii_a#1{}{}{}{}{}{}{}{}{}{}{}{}{}{}{}{}\_nil} +\def\tpl_split_viii_viii_a#1#2#3#4#5#6#7#8{\tpl_split_viii_viii_b{#8#7#6#5#4#3#2#1}} +\def\tpl_split_viii_viii_b#1#2#3#4#5#6#7#8#9{\tpl_split_viii_viii_c#9#8#7#6#5#4#3#2#100000000000000000} +\def\tpl_split_viii_viii_c#1#2#3#4#5#6#7#8{\tpl_split_viii_viii_d{#8#7#6#5#4#3#2#1}} +\def\tpl_split_viii_viii_d#1#2#3#4#5#6#7#8#9{{#9#8#7#6#5#4#3#2}{#1}\tpl_gobtonil} + +\def\tpl_decpart_format_viii#1{\tpl_decpart_format_viii_a#100000000\_nil} +\def\tpl_decpart_format_viii_a#1#2#3#4#5#6#7#8{#1#2#3#4#5#6#7#8\tpl_gobtonil} +\def\tpl_shortadd#1#2{% #1=décimal ou entier ; #2 de la forme 'x.y' + \tpl_x_after{\tpl_shortadd_a#1}{\tpl_ifdot{#1}{}{.0}}\relax#2\relax +} +\def\tpl_shortadd_a#1.#2\relax#3.#4\relax{% a.b + c.d + \tpl_x_after\tpl_shortadd_b{\tpl_split_viii_viii{#1}\tpl_split_viii_viii{#3}{\the\numexpr\tpl_decpart_format_viii{#2}+\tpl_decpart_format_viii{#4}\relax}}% +} +\def\tpl_shortadd_b#1#2#3#4#5{% #1=hi8(a) #2=lo8(a) #3=hi8(c) #4=lo8(c) #5=b+c + \tpl_x_after{\tpl_shortadd_c{#1}{#3}}{\the\numexpr#2+#4\tpl_testifnum{#5>99999999 }{+1\relax!.\tpl_gobone}{\relax!.}#5}% +} +\def\tpl_shortadd_c#1#2#3!{% #1=hi8(a) #2=hi8(c) #3=lo8(a)+lo8(c)+retenue + \the\numexpr#1+#2\tpl_testifnum{#3>99999999 }{+1\relax\tpl_gobone}{\relax}#3% +} +%--------------- +% addition entiers signés <signe>#8.#8 +%--------------- +\def\tpl_intpart_format#1{% + \tpl_ifempty{#1}{+0}{\tpl_intpart_format_a#1\_nil}% +} +\def\tpl_intpart_format_a#1#2\_nil{% + \ifx#1--\tpl_ifempty{#2}0{}% + \else + \ifx#1++\tpl_ifempty{#2}0{}% + \else+#1% + \fi + \fi#2% +} +\def\tpl_short_short_add#1#2{% a.b + c.d + \tpl_x_after\tpl_short_short_add_a{#1\tpl_ifdot{#1}{}{.0}\relax#2\tpl_ifdot{#2}{}{.0}\relax}% +} +\def\tpl_short_short_add_a#1.#2\relax#3.#4\relax{% + \tpl_x_after\tpl_short_short_add_b{% + \tpl_intpart_format{#1}.\tpl_decpart_format_viii{#2}\relax + \tpl_intpart_format{#3}.\tpl_decpart_format_viii{#4}\relax% + }% +} +\def\tpl_short_short_add_b#1#2.#3\relax#4#5.#6\relax{% #1=+/- #2.#3 "+" #4=+/- #5.#6 + \tpl_testifx{#1#4}% mêmes signes ? + {% + \ifx-#1-\fi% afficher le signe - + \tpl_e_second\tpl_short_short_add_c{\the\numexpr#3+#6}{#2}{#5}% + } + {% signes différents + \tpl_x_after\tpl_short_short_add_d{\the\numexpr#1#2#4#5\relax.\the\numexpr#1#3#4#6\relax}\_nil + }% +} +\def\tpl_short_short_add_c#1#2#3{% relatifs de mêmes signes : #1=somme (dec part) #2=intpart(a) #3=intpart(b) + \the\numexpr#2+#3\ifnum#1>99999999 +1\fi.\tpl_decpart_format{#1}% +} +\def\tpl_short_short_add_d#1.#2\_nil{% + \tpl_x_after\tpl_short_short_add_e{\unless\ifnum#1<0 +\fi#1.\unless\ifnum#2<0 +\fi}#2\_nil +} +\def\tpl_short_short_add_e#1#2.#3#4\_nil{%résultat : #1=signe #2=intpart #3=signe #4=decpart + \ifx#1#3% memes signes + \the\numexpr#1#2\relax.\expandafter\tpl_gobone\the\numexpr#4+100000000\relax% + \else + \ifnum#2=0 + #30.\tpl_decpart_format{#4}% prendre le signe de decpart + \else + \ifnum#4=0 + #1#2% + \else + \tpl_x_after\tpl_short_short_add_f{\the\numexpr#1#2#31\relax.\expandafter\tpl_abs\the\numexpr#3#4#1100000000\relax}\_nil{#1}% + \fi + \fi + \fi +} +\def\tpl_short_short_add_f#1.#2\_nil#3{% #1=intpart final #2=decpart final #3=signe intpart + \ifnum#1=0 #3\fi#1.\tpl_decpart_format{#2}% +} +\def\tpl_abs#1{\unless\ifx-#1#1\fi} +\def\tpl_decpart_format#1{\expandafter\tpl_decpart_format_a\the\numexpr100000000+#1\relax\_nil} +\def\tpl_decpart_format_a#1#2#3#4#5#6#7#8#9{\expandafter\tpl_decpart_format_b\the\numexpr#9#8#7#6#5#4#3#2\relax{}{}{}{}{}{}{}{}{}} +\def\tpl_decpart_format_b#1#2#3#4#5#6#7#8{#8#7#6#5#4#3#2#1\tpl_gobtonil} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%% Quicksort développable %%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%--------------- +% Effectue un quicksort en indexant en +% même temps les éléments sous la forme "idx:val" +%--------------- +\def\tpl_quicksort_and_index#1{\tpl_quicksort_and_index_a0;{#1}?}% #1= tuple finissant par "," +\def\tpl_quicksort_and_index_a#1;#2{\tpl_quicksort_and_index_b{#1}#2!,}% #1=index de départ #2= tuple finissant par "," +\def\tpl_quicksort_and_index_b#1#2,{% + \tpl_testifx{!#2} + {\tpl_quicksort_and_index_d{#1}} + {\tpl_quicksort_and_index_c{#1}{}{}{#2}}% +} +\def\tpl_quicksort_and_index_c#1#2#3#4#5,{% #1=index courant #2=part lt #3=part gt #4=pivot #5=élément courant + \tpl_testifx{!#5}% partition achevée -> partitionner "part lt" et passer les arguments <pivot><part gt> pour la macro + {% \tpl_quicksort_and_index_d lancée à la fin du partitionnement de "part lt" + \tpl_quicksort_and_index_a#1;{#2}{#4}{#3}% arg {#4}{#3} lus à la fin par \tpl_quicksort_and_index_d + } + {% + \tplfpcompare{#5}<{#4} + {\tpl_quicksort_and_index_c{#1}{#2#5,}{#3}} + {\tpl_quicksort_and_index_c{#1}{#2}{#3#5,}}% + {#4}% + }% +} +\def\tpl_quicksort_and_index_d#1#2{% #1=index ancien #2=pivot #3=part gt (à suivre, non lu par cette macro) + \ifx?#2\else\tpl_antefi#1:#2,\expandafter\tpl_quicksort_and_index_a\the\numexpr#1+1;\fi +} + +%TODO : insertion sort && fusion sort + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%% Macros pour set, get, split %%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\def\tpl_csdef#1{\expandafter\def\csname#1\endcsname} +\def\tpl_csedef#1{\expandafter\edef\csname#1\endcsname} +\tpl_foreach\__temp\in{1,2,3,4,5,6,7,8,9}\do{% définition des macros qui parcourent le tuple indexé + \tpl_csdef {get_\__temp\expandafter}\expandafter##\expandafter1\__temp:##2,{##2\tpl_gobtonil}% + \tpl_csedef{split_\__temp\expandafter}\expandafter\_nil\expandafter##\expandafter1\__temp:##2,{##1\__temp:##2,?}% + \tpl_csedef{set_\__temp\expandafter}\expandafter##\expandafter1\expandafter\_nil\expandafter##\expandafter2\__temp:##3,{##2\__temp:##1,}% + \tpl_csdef {gobto_\the\numexpr\__temp+1\relax 0\expandafter}\expandafter##\expandafter1\__temp 9:##2,{}% + \tpl_csdef {gobto_\the\numexpr\__temp+1\relax 00\expandafter}\expandafter##\expandafter1\__temp 99:##2,{}% + \tpl_csdef {gobto_\the\numexpr\__temp+1\relax 000\expandafter}\expandafter##\expandafter1\__temp 999:##2,{}% + \tpl_csdef {gobto_\the\numexpr\__temp+1\relax0000\expandafter}\expandafter##\expandafter1\__temp9999:##2,{}% + \tpl_csedef{passto_\__temp 0\expandafter}\expandafter##\expandafter1\expandafter\_nil\expandafter##\expandafter2\the\numexpr\__temp 0-1:##3,{##2\the\numexpr\__temp 0-1:##3,##1\noexpand\_nil}% + \tpl_csedef{passto_\__temp 00\expandafter}\expandafter##\expandafter1\expandafter\_nil\expandafter##\expandafter2\the\numexpr\__temp 00-1:##3,{##2\the\numexpr\__temp 00-1:##3,##1\noexpand\_nil}% + \tpl_csedef{passto_\__temp 000\expandafter}\expandafter##\expandafter1\expandafter\_nil\expandafter##\expandafter2\the\numexpr\__temp 000-1:##3,{##2\the\numexpr\__temp 000-1:##3,##1\noexpand\_nil}% + \tpl_csedef{passto_\__temp0000\expandafter}\expandafter##\expandafter1\expandafter\_nil\expandafter##\expandafter2\the\numexpr\__temp0000-1:##3,{##2\the\numexpr\__temp0000-1:##3,##1\noexpand\_nil}% +} +\tpl_csdef{get_0}#10:#2,{#2\tpl_gobtonil}% +\tpl_csdef{split_0}\_nil#10:#2,{#10:#2,?}% +\tpl_csdef{set_0}#1\_nil#20:#3,{#20:#1,}% +\tpl_csdef{gobto_10}#19:#2,{} +\tpl_csdef{gobto_100}#199:#2,{} +\tpl_csdef{gobto_1000}#1999:#2,{} +\tpl_csdef{gobto_10000}#19999:#2,{} +\tpl_csdef{gobto_00}{} +\tpl_csdef{gobto_000}{} +\tpl_csdef{gobto_0000}{} +\tpl_csdef{passto_00}{} +\tpl_csdef{passto_000}{} +\tpl_csdef{passto_0000}{} + +\def\tpl_reverse#1{\tpl_reverse_a#1{}{}{}{}{}{}{}{}{}\_nil} +\def\tpl_reverse_a#1#2#3#4#5#6#7#8#9{#9#8#7#6#5#4#3#2#1\tpl_gobtonil} +%--------------- +% getitem (développable) +%--------------- +\def\tpl_getitem#1#2{% #1=index #2=tuple + \tpl_x_after\tpl_getitem_a{\tpl_reverse{#1}}\relax#2\_nil% #2=tuple (finissant par ",") +} +\def\tpl_getitem_a#1{% #1=chiffre unités + \expandafter\tpl_getitem_b\csname get_#1\endcsname{0}% +} +\def\tpl_getitem_b#1#2#3{% #1=commandes à exécuter #2=nb de 0 #3=chiffre courant + \tpl_testifx{\relax#3} + {\tpl_getitem_c#1\_nil} + {\tpl_e_second\tpl_getitem_b{\csname gobto_#3#2\endcsname#1}{#20}}% +} +\def\tpl_getitem_c#1#2\_nil{% + \tpl_ifempty{#2} + {} + {\expanded{\unexpanded{\tpl_getitem_c#2\_nil}\expandafter\expandafter\expandafter}}#1% +} +%--------------- +% set item (développable) +%-------------- +\def\tpl_setitem#1#2#3{% #1=index #2=valeur #3=tuple + \tpl_x_after\tpl_setitem_a{{#2}\tpl_reverse{#1}}\relax#3% #3=tuple (finissant par ",") +} +\def\tpl_setitem_a#1#2{% #1= valeur #2=chiffre unités + \tpl_e_second\tpl_setitem_b{\csname set_#2\endcsname#1}{0}% +} +\def\tpl_setitem_b#1#2#3{% #1=commandes à exécuter #2=nb de 0 #3=chiffre courant + \tpl_testifx{\relax#3} + {#1\_nil} + {\tpl_e_second\tpl_setitem_b{\csname passto_#3#2\endcsname#1}{#20}}% +} +%--------------- +% split at index (développable) +%-------------- +\def\tpl_split#1#2{% #1=index #2=tuple -> coupe avec "?" le tuple après l'index #1 et renvoie 'tuple1?tuple2' + \tpl_x_after\tpl_split_a{\tpl_reverse{#1}}\relax#2% #2=tuple (finissant par ",") +} +\def\tpl_split_a#1{% #1=chiffre unités + \tpl_e_second\tpl_setitem_b{\csname split_#1\endcsname}{0}% +} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%% Constructeur de tuple %%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\def\newtuple#1{% + \tpl_x_after\tpl_newtuple_a{\tpl_stripsp\detokenize{#1}}\_nil +} +\def\tpl_newtuple_a#1\_nil#2{% + \tpl_ifempty{#1} + {% + \tpl_error{Impossible to define a tuple with an empty name}% + } + {% + \tpl_testifcsname{tpl_tuple(#1)} + {\tpl_error{Tuple '#1' already defined}}% + {\tpl_csedef{tpl_tuple(#1)}{\tpl_e_second\tpl_newtuple_b{\detokenize\expandafter{\expanded{#2}}}}}% + }% +} +%--------------- +% \tpl_newtuple_b est développable et renvoie : +% (len,sum,sumsq){tuple indexé}{tuple ordonné indexé} +%-------------- +\def\tpl_newtuple_b#1{% + \tpl_ifempty{#1} + {(0,0,0,nan,nan){}{}} + {\tpl_newtuple_c(0,0,0){}{}#1,\relax,}% +} +\def\tpl_newtuple_c(#1,#2,#3)#4#5#6,{% #1=index courant #2=sum #3=sumsq #4=éléments lus indexés #5=éléments lus désindexés #6=élément courant + \tpl_testifx{\relax#6}% fin atteinte -> trouver min, max et renvoyer le tout "(len,sum,sum:x^2,min,max){tuple indexé}{tuple ordonné indexé}" + {\tpl_x_second{(#1,#2,#3){#4}}{\tpl_e_second\tpl_quicksort_and_index{\tpl_gobone#5,}}}% manger ',' qui commence #5 + {\tpl_stripsp\tpl_newtuple_d{#6}(#1,#2,#3){#4}{#5}}% +} +\def\tpl_newtuple_d#1{% #1=item en cours + \tpl_ifempty{#1} + {% + \tpl_newtuple_c + } + {% + \tpl_ifddot{#1}% si ":" est contenu dans #1, c'est indexé + {\tpl_newtuple_f#1\_nil}% traiter ce qui est après ":" + {\tpl_newtuple_e{#1}}% + }% +} +\def\tpl_newtuple_e#1(#2,#3,#4)#5#6{% #1=item en cours #2=index courant #3=sum #4=sumsq #5=éléments déjà triés #6=elements non indexés + \tpl_x_after\tpl_newtuple_c{(\the\numexpr#2+1,\tpl_item_add{#3}{#1},\tpl_item_addsq{#4}{#1})}{#5#2:#1,}{#6,#1}% +} +\def\tpl_newtuple_f#1:#2\_nil{% + \tpl_ifempty{#2} + {\tpl_newtuple_c} + {\tpl_newtuple_e{#2}}% +} +\def\tpl_ifddot#1#2#3{\tpl_ifddot_a#1\_YN{#2}\mark_ddot:\_YN{#3}\mark_ddot\_nil}% #1 contient-il ":" ? #2=T #3=F +\def\tpl_ifddot_a#1:#2\_YN#3\mark_ddot#4\_nil{#3}% + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%% Les méthodes %%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\def\tpl_error_only_for_tuples #1{\tpl_error_inmethod{Method '#1' only available for tuples}} +\def\tpl_error_no_argument #1#2{\tpl_error_inmethod{Method '#1' does not accept argument '\detokenize{#2}'}} +\def\tpl_error_argument_required#1{\tpl_error_inmethod{Method '#1' requires an argument}} +\def\tpl_error_empty_tuple#1{\tpl_error_inmethod{Method '#1' not compatible with an empty tuple}} +%--------------- +% Méthode len (développable) +%-------------- +\def\tpl_method_len#1#2#3{% #1=arg méthode #2=résultat méthodes précédentes #3=flag + \tpl_ifempty{#1} + {% + \tpl_testifnum{#3<1 } + {\tpl_error_only_for_tuples{len}} + {\tpl_method_len_a#2\_nil}% + } + {% + \tpl_error_no_argument{len}{#1}% + }% +} +\def\tpl_method_len_a(#1,#2\_nil{{#1}{0}}% renvoie un nombre +%--------------- +% Méthode sum (développable) +%-------------- +\def\tpl_method_sum#1#2#3{% #1=arg méthode #2=résultat méthodes précédentes #3=flag + \tpl_ifempty{#1} + {% + \tpl_testifnum{#3<1 } + {\tpl_error_only_for_tuples{sum}} + {\tpl_method_sum_a#2\_nil}% + } + {% + \tpl_error_no_argument{sum}{#1}%% + }% +} +\def\tpl_method_sum_a(#1,#2,#3\_nil{{#2}{0}}% renvoie un nombre +%--------------- +% Méthode min (développable) +%--------------- +\def\tpl_method_min#1#2#3{% #1=arg méthode #2=résultat méthodes précédentes #3=flag + \tpl_ifempty{#1} + {% + \tpl_testifnum{#3<1 } + {\tpl_error_only_for_tuples{min}} + {\tpl_method_min_a#2\_nil}% + } + {% + \tpl_error_no_argument{min}{#1}%% + }% +} +\def\tpl_method_min_a#1)#2#3\_nil{% + \tpl_ifempty{#3} + {\tpl_error_empty_tuple{min}} + {\tpl_method_min_b#3\_nil}% +} +\def\tpl_method_min_b0:#1,#2\_nil{{#1}{0}}% renvoie un nombre +%--------------- +% Méthode max (développable) +%--------------- +\def\tpl_method_max#1#2#3{% #1=arg méthode #2=résultat méthodes précédentes #3=flag + \tpl_ifempty{#1} + {% + \tpl_testifnum{#3<1 } + {\tpl_error_only_for_tuples{max}} + {\tpl_method_max_a#2\_nil}% + } + {% + \tpl_error_no_argument{max}{#1}% + }% +} +\def\tpl_method_max_a(#1,#2)#3#4\_nil{% + \tpl_ifempty{#4} + {\tpl_error_empty_tuple{max}} + {{\tpl_e_second\tpl_getitem{\the\numexpr#1-1}{#4}}{0}}% renvoie un nombre +} +%--------------- +% Méthode mean (développable) +%--------------- +\def\tpl_method_mean#1#2#3{% #1=arg méthode #2=résultat méthodes précédentes #3=flag + \tpl_ifempty{#1} + {% + \tpl_testifnum{#3<1 } + {\tpl_error_only_for_tuples{mean}} + {\tpl_method_mean_a#2\_nil}% + } + {% + \tpl_error_no_argument{mean}{#1}%% + }% +} +\def\tpl_method_mean_a(#1,#2,#3\_nil{% #1=arg méthode #2=résultat méthodes précédentes #3=flag + \tpl_testifnum{#1=0 } + {\tpl_error_empty_tuple{mean}} + {{\tpl_expr_eval{#2/#1}}{0}}% renvoie un nombre +}% +%--------------- +% Méthode med (développable) +%--------------- +\def\tpl_method_med#1#2#3{% #1=arg méthode #2=résultat méthodes précédentes #3=flag + \tpl_ifempty{#1} + {% + \tpl_testifnum{#3<1 } + {\tpl_error_only_for_tuples{med}} + {\tpl_method_med_a#2\_nil}% + } + {% + \tpl_error_no_argument{med}{#1}%% + }% +} +\def\tpl_method_med_a(#1,#2)#3#4\_nil{% + \tpl_testifnum{#1=0 } + {\tpl_error_empty_tuple{med}} + {\tpl_method_quantile_a0.5\_nil(#1,#2){#3}{#4}\_nil}% renvoie un nombre +} +%--------------- +% Méthode quantile (développable) +%--------------- +\def\tpl_method_quantile#1#2#3{% #1=arg méthode #2=résultat méthodes précédentes #3=flag + \tpl_ifempty{#1} + {% + \tpl_error_argument_required{quantile}% + }% + {% + \tpl_testifnum{#3<1 } + {% + \tpl_error_only_for_tuples{quantile}% + } + {% + \tpl_testifnum{0\ifdim #1pt<0pt \else1\fi\ifdim#1pt<1pt 1\fi=11 }% si #1 dans [0 ; 1[ + {\tpl_method_quantile_a#1\_nil#2\_nil}% + {\tpl_error_inmethod{Method 'quantile': argument '#1' not in [0;1-]}}% + }% + }% +} +\def\tpl_method_quantile_a#1\_nil(#2,#3)#4#5\_nil{% + \tpl_testifnum{#2=0 } + {\tpl_error_empty_tuple{quantile}} + {\tpl_x_after\tpl_method_quantile_b{{\tpl_expr_eval{(#2-1)*#1+1}}{\tpl_expr_eval{trunc((#2-1)*#1+1)}}}{#5}}% renvoie un nombre +} +\def\tpl_method_quantile_b#1#2#3{% #1=(len-1)*p+1 #2=E(#1) #3=tuple trié + {% + \tpl_expr_eval{% interpolation linéaire + (1-#1+#2)*\tpl_e_second\tpl_getitem{\the\numexpr#2-1\relax}{#3}% + +% + (#1-#2)*\tpl_getitem{#2}{#3}% + }% + }% + {0}% +} +%--------------- +% Méthode stdev (développable) +%--------------- +\def\tpl_method_stdev#1#2#3{% #1=arg méthode #2=résultat méthodes précédentes #3=flag + \tpl_ifempty{#1} + {% + \tpl_testifnum{#3<1 } + {\tpl_error_only_for_tuples{stdev}} + {\tpl_method_stdev_a#2\_nil}% + } + {% + \tpl_error_no_argument{stdev}{#1}%% + }% +} +\def\tpl_method_stdev_a(#1,#2,#3)#4\_nil{% + \tpl_testifnum{#1=0 } + {\tpl_error_empty_tuple{stdev}} + {{\tpl_expr_eval{sqrt(#3/#1-(#2/#1)**2)}}{0}}% renvoie un nombre +} +%--------------- +% Méthode get (développable) +%--------------- +\def\tpl_method_get#1#2#3{% #1=arg méthode #2=résultat méthodes précédentes #3=flag + \tpl_ifempty{#1} + {% + \tpl_error_inmethod{Method 'get': argument required}% + } + {% + \tpl_testifnum{#3<1 } + {\tpl_error_only_for_tuples{get}}% + {\tpl_e_second\tpl_method_get_a{\the\numexpr#1\relax}#2\_nil}% + }% +} +\def\tpl_method_get_a#1(#2,#3)#4#5\_nil{% + \tpl_testifnum{#2=0 } + {% + \tpl_error_empty_tuple{get}% + } + {% + \tpl_testifnum{0\ifnum#1>-1 1\fi\ifnum#1<#2 1\fi=11 }% si index dans [0 ; len -1] + {% + {\tpl_getitem{#1}{#4}}{0}% + } + {% + \tpl_testifnum{0\ifnum#1<0 1\fi\ifnum\numexpr#1+#2+1>0 1\fi=11 }% si index dans [-len ; -1] + {{\tpl_e_second\tpl_getitem{\the\numexpr#1+#2\relax}{#4}}{0}} + {\tpl_error_inmethod{Method 'get': invalid index '\detokenize{#1}'}}% + }% + }% +} +%--------------- +% Méthode set (développable) +%--------------- +\def\tpl_method_set#1#2#3{% #1=arg méthode ("index1:val1,index2:val2, etc") #2=résultat méthodes précédentes #3=flag + \tpl_ifempty{#1} + {% + \tpl_error_inmethod{Method 'set': argument required}% + } + {\tpl_testifnum{#3<1 } + {\tpl_error_only_for_tuples{set}}% + {\tpl_x_after\tpl_method_set_a{#1}\_nil#2\_nil}% xdévelopper #1 et dégrouper #1 et #3 + }% +} +\def\tpl_method_set_a#1\_nil(#2,#3)#4#5\_nil{% #2=len + \tpl_testifnum{#2=0 }% si tuple vide, on envoie '0:0,' avec len=1 + {\tpl_method_set_b{0:0,}{1}#1,\relax:\relax,\_nil} + {\tpl_method_set_b{#4}{#2}#1,\relax:\relax,\_nil}% +} +\def\tpl_method_set_b#1#2#3:#4,{% #1=tuple #2=len #3=index courant #4=valeur courante + \tpl_testifx{\relax#3} + {% + {\tpl_newtuple_b{#1}}{1}\tpl_gobtonil + } + {% + \tpl_testifnum{0\ifnum#3>-1 1\fi\ifnum#3<#2 1\fi=11 }% si index dans [0 ; len-1] + {% + \tpl_x_second\tpl_method_set_b{\tpl_setitem{#3}{#4}{#1}}{#2}% + }% + {% + \tpl_testifnum{0\ifnum#3<0 1\fi\ifnum\numexpr#3+#2+1>0 1\fi=11 }% si index dans [-len ; -1] + {\tpl_x_second\tpl_method_set_b{\tpl_e_second\tpl_setitem{\the\numexpr#3+#2}{#4}{#1}}{#2}} + {\tpl_error_inmethod{Method 'set': invalid index '#3'}\tpl_gobtonil}% + }% + }% +} +%--------------- +% Méthode sorted (développable) +%--------------- +\def\tpl_method_sorted#1#2#3{% #1=arg méthode #2=résultat méthodes précédentes #3=flag + \tpl_ifempty{#1} + {% + \tpl_testifnum{#3<1 } + {\tpl_error_only_for_tuples{sorted}}% + {\tpl_method_sorted_a#2\_nil}% + } + {% + \tpl_error_no_argument{sorted}{#1}%% + }% +} +\def\tpl_method_sorted_a(#1)#2#3\_nil{% + {(#1){\tpl_ifempty{#3}{#2}{#3}}{}}{1}% +} +%--------------- +% Méthode store (_NON_ développable) +%--------------- +\def\tpl_ifcs#1{% #1 est-il constitué d'une seule séquence de contrôle ? + \tpl_testifnum{\tpl_ifempty{#1}0{\tpl_e_second\tpl_ifempty{\tpl_gobone#1}10}\ifnum\expandafter\expandafter\expandafter`\expandafter\tpl_firsttonil\string#1.\_nil=\escapechar1\fi=11 }% +} +\def\tpl_method_store#1#2#3{% #1=arg méthode #2=len #3=index courant #4=valeur courante + \tpl_ifempty{#1} + {% + \tpl_error_argument_required{store}% + } + {% + \tpl_testifnum{#3<1 } + \tpl_method_store_a + \tpl_method_store_b + #1\_nil#2\_nil + }% +} +\def\tpl_method_store_a#1\_nil#2\_nil{% #1=arg méthode #2=résultat méthodes précédentes + \tpl_ifcs{#1} + {\unexpanded{{\def#1{#2}}}{-1}}% bloquer le développement + {\tpl_error_inmethod{Method 'store': unexpected argument '\detokenize{#1}'}}% +} +\def\tpl_method_store_b#1\_nil(#2,#3)#4#5\_nil{% #1=arg méthode #2=arg méthode #3=flag #4=résultat méthodes précédentes + \tpl_ifempty{#1} + {\tpl_error_inmethod{Method 'store': impossible to define a tuple with an empty name}} + {{\noexpand\tpl_csedef{tpl_tuple(\tpl_stripsp\detokenize{#1})}{\tpl_e_second\tpl_newtuple_b{\detokenize\expandafter{\expanded{#4}}}}}{-1}}% bypass \newtuple pour permettre de modifier le tuple initial +} +%--------------- +% Méthode split (_NON_ développable) +%--------------- +\def\tpl_method_split#1#2#3{% #1=arg méthode #2=résultat méthodes précédentes + \tpl_ifempty{#1} + {% + \tpl_error_inmethod{Method 'split': argument required}% + } + {% + \tpl_testifnum{#3>0 } + {\tpl_method_split_a#1\_nil#2\_nil}% dégrouper #1 et #3 + {\tpl_error_only_for_tuples{split}}% + }% +} + +\def\tpl_method_split_a#1#2#3\_nil(#4,#5)#6#7\_nil{% #1=index de coupure #2=nom tuple 1 #3=nom tuple2 + \tpl_testifnum{#4=0 } + {% + \tpl_error_empty_tuple{split}% + } + {% + \tpl_testifnum{\tpl_ifempty{#2}01\tpl_ifempty{#3}01=11 }% si les deux noms ne sont pas vide + {% + \tpl_testifnum{0\ifnum#1>-1 1\fi\ifnum#1<\numexpr#4-1\relax1\fi=11 }% si #1 dans [0;len-2] + {% + \tpl_x_after\tpl_method_split_b{\tpl_split{#1}{#6}}?{#2}{#3}% + } + {% + \tpl_testifnum{0\ifnum#1<-1 1\fi\ifnum\numexpr#1+#4+1>0 1\fi=11 }% si #1 dans [-len ; -2] + {\tpl_x_after\tpl_method_split_b{\tpl_e_second\tpl_split{\the\numexpr#1+#4}{#6}}?{#2}{#3}} + {\tpl_error_inmethod{Method 'split': invalid index '#1"}}% + }% + } + {% + \tpl_error_inmethod{Method 'split': empty name not allowed}% + }% + }% +} +\def\tpl_method_split_b#1?#2?#3#4{% + {% + \noexpand\tpl_csedef{tpl_tuple(\tpl_stripsp\detokenize{#3})}{\tpl_e_second\tpl_newtuple_b{\detokenize\expandafter{\expanded{#1}}}}% + \noexpand\tpl_csedef{tpl_tuple(\tpl_stripsp\detokenize{#4})}{\tpl_e_second\tpl_newtuple_b{\detokenize\expandafter{\expanded{#2}}}}% + }% + {-1}% +} +%--------------- +% Méthode add (développable) +%--------------- +\def\tpl_method_add#1#2#3{% #1=arg méthode (index1:items,index2:items,...) #2=résultat méthodes précédentes #3=flag + \tpl_ifempty{#1} + {% + \tpl_error_inmethod{Method 'add': argument required}% + } + {% + \tpl_testifnum{#3>0 } + {\tpl_x_after\tpl_method_add_a{#1}\_nil#2\_nil}% xdévelopper # et dégrouper #1 et #3 + {\tpl_error_only_for_tuples{add}}% + }% +} +\def\tpl_method_add_a#1\_nil(#2,#3)#4#5\_nil{% #2=len + \tpl_method_add_b{#4}{#2}#1,\relax:\relax,\_nil +} + +\def\tpl_method_add_b#1#2#3:#4,{% #1=tuple #2=len #3=index courant #4=item(s) + \tpl_testifx{\relax#3} + {% + {\tpl_newtuple_b{#1}}{1}% + \tpl_gobtonil + } + {% + \tpl_testifnum{#3<0 } + {% + \tpl_testifnum{\numexpr#3+#2+2>0 }% si index dans [-n-1 ; -1] + {\tpl_x_second{\tpl_method_add_c{#1}{#2}}{\the\numexpr#3+#2+1}{#4}}% + {\tpl_error_inmethod{Method 'add': invalid index '\detokenize{#3:#4}'}\tpl_gobtonil}% + } + {% + \tpl_method_add_c{#1}{#2}{#3}{#4}% + }% + }% +} +\def\tpl_method_add_c#1#2#3#4{% #1=tuple #2=len #3=index courant #4=item(s) + \tpl_testifnum{#3=0 } + {% + \tpl_method_add_b{#4,#1}{#2}% si index=0 : ajouter au début + } + {% + \tpl_testifnum{#3=#2 } + {% + \tpl_method_add_b{#1#4,}{#2}% si index=len : ajouter #4 à la fin + } + {% + \tpl_testifnum{0\ifnum#3>0 1\fi\ifnum#3<#2 1\fi=11 }% si index dans [1 ; len-1] + {\tpl_x_after\tpl_method_add_d{\expandafter\tpl_split\expandafter{\the\numexpr#3-1}{#1}}?{#4}{#2}} + {\tpl_error_inmethod{Method 'add': invalid index '\detokenize{#3:#4}'}\tpl_gobtonil}% + }% + }% +} + +\def\tpl_method_add_d#1?#2?#3#4{%#1=tuple 1 #2=tuple 2 #3=items à insérer #4=len + \tpl_method_add_b{#1#3,#2}{#4}% +} +%--------------- +% Méthode op (développable) +%--------------- +\def\tpl_eval_op#1#2{\tpl_subst_idx_a#1\?{\tpl_subst_idx_b#1\_nil{#2}}\_markit idx\?{\tpl_subst_val{#1}}\_markit\_nil} +\def\tpl_subst_idx_a#1idx#2\?#3\_markit#4\_nil{#3}% +\def\tpl_subst_idx_b#1idx#2\_nil#3{\tpl_eval_op{#1#3#2}{#3}} +\def\tpl_subst_val#1#2{\tpl_subst_val_a#1\?{\tpl_subst_val_b#1\_nil{#2}}\_markit val\?{\tpl_expr_eval{#1}}\_markit\_nil} +\def\tpl_subst_val_a#1val#2\?#3\_markit#4\_nil{#3}% +\def\tpl_subst_val_b#1val#2\_nil#3{\tpl_subst_val{#1#3#2}{#3}} +\def\tpl_method_op#1#2#3{% #1=arg méthode f(idx, val) #2=résultat méthodes précédentes #3=flag + \tpl_ifempty{#1} + {% + \tpl_error_argument_required{op}% + } + {% + \tpl_testifnum{#3<1 } + {\tpl_error_only_for_tuples{op}} + {\tpl_method_op_a#1\_nil#2\_nil}% + }% +} +\def\tpl_method_op_a#1\_nil#2)#3#4\_nil{% + {\tpl_x_second\tpl_newtuple_b{\tpl_method_op_b{#1}#3\relax:\relax,}}{1}% +} +\def\tpl_method_op_b#1#2:#3,{% + \tpl_testifx{\relax#2} + {} + {#2:\tpl_eval_op{#1}{#2}{#3},\tpl_method_op_b{#1}}% +} +%--------------- +% Méthode filter (développable) +%--------------- +\def\tpl_method_filter#1#2#3{% #1=arg méthode f(idx, val) #2=résultat méthodes précédentes #3=flag + \tpl_ifempty{#1} + {% + \tpl_error_argument_required{filter}% + } + {% + \tpl_testifnum{#3<1 } + {\tpl_error_only_for_tuples{filter}} + {\tpl_method_filter_a#1\_nil#2\_nil}% + }% +} +\def\tpl_method_filter_a#1\_nil#2)#3#4\_nil{% + {\tpl_x_second\tpl_newtuple_b{\tpl_method_filter_b{#1}#3\relax:\relax,}}{1}% +} +\def\tpl_method_filter_b#1#2:#3,{% + \tpl_testifx{\relax#2} + {} + {% + \tpl_testifnum{\tpl_eval_op{#1}{#2}{#3}=1 } + {#2:#3,} + {}% + \tpl_method_filter_b{#1}% + }% +} +%--------------- +% Méthode pos (développable) +%--------------- +\def\tpl_method_pos#1#2#3{% #1=arg méthode {valeur} #2=résultat méthodes précédentes #3=flag + \tpl_ifempty{#1} + {% + \tpl_error_argument_required{pos}% + } + {% + \tpl_testifnum{#3<1 } + {\tpl_error_only_for_tuples{pos}} + {\tpl_method_pos_a#1[1]\_nil#2\_nil}% + }% +} +\def\tpl_method_pos_a#1[#2]#3\_nil#4)#5#6\_nil{% + {\tpl_method_pos_b{1}{#2}{#1}#5\relax:\relax,\_nil}{0}% +} +\def\tpl_method_pos_b#1#2#3#4:#5,{% #1=occurrence en cours #2=occurrence souhaitée #3=nombre cherché + \tpl_testifx{\relax#4} + {% + -1\tpl_gobtonil% si occurrence non trouvée, renvoyer -1 + } + {% + \tplfpcompare{#3}={#5}% nombres correspondent ? + {% + \tpl_testifnum{#1=#2 }% occurrence souhaitée ? + {#4\tpl_gobtonil} + {\tpl_e_second\tpl_method_pos_b{\the\numexpr#1+1}{#2}{#3}}% + }% à la première occurrence, renvoyer #2 + {% + \tpl_method_pos_b{#1}{#2}{#3}% + }% + }% +} +%--------------- +% Méthode comp (développable) +%--------------- +\def\tpl_eval_comp#1#2{\tpl_subst_xa_a#1\?{\tpl_subst_xa_b#1\_nil{#2}}\_markit xa\?{\tpl_subst_xb{#1}}\_markit\_nil} +\def\tpl_subst_xa_a#1xa#2\?#3\_markit#4\_nil{#3}% +\def\tpl_subst_xa_b#1xa#2\_nil#3{\tpl_eval_comp{#1#3#2}{#3}} +\def\tpl_subst_xb#1#2{\tpl_subst_xb_a#1\?{\tpl_subst_xb_b#1\_nil{#2}}\_markit xb\?{\tpl_expr_eval{#1}}\_markit\_nil} +\def\tpl_subst_xb_a#1xb#2\?#3\_markit#4\_nil{#3}% +\def\tpl_subst_xb_b#1xb#2\_nil#3{\tpl_subst_xb{#1#3#2}{#3}} +\def\tpl_method_comp#1#2#3{% #1=arg méthode "{op}{nom tuple B}" #2=résultat méthodes précédentes #3=flag + \tpl_ifempty{#1} + {% + \tpl_error_inmethod{Method 'comp' requires arguments}% + } + {% + \tpl_testifnum{#3<1 } + {\tpl_error_only_for_tuples{comp}} + {\tpl_method_comp_a#1\_nil#2\_nil}% + }% +} +\def\tpl_method_comp_a#1#2\_nil#3\_nil{% + \tpl_testifcsname{tpl_tuple(\tpl_stripsp\detokenize{#2})} + {\tpl_x_after\tpl_method_comp_b{{#1}\csname tpl_tuple(\tpl_stripsp\detokenize{#2})\endcsname}#3} + {\tpl_error_inmethod{Method 'comp': tuple '#2' undefined}}% +} +\def\tpl_method_comp_b#1(#2,#3)#4#5(#6,#7)#8#9{% + \tpl_testifnum{#2=#6 } + {{\tpl_x_second\tpl_newtuple_b{\tpl_method_comp_c{#1}#4\relax:\relax,\_nil#8\relax:\relax,\_nil}}{1}} + {\tpl_error_inmethod{Method 'comp' requires tuple with same length}}% +} +\def\tpl_method_comp_c#1#2:#3,#4\_nil#5:#6,#7\_nil{% + \tpl_testifx{\relax#3} + {} + {#2:\tpl_eval_comp{#1}{#6}{#3},\tpl_method_comp_c{#1}#4\_nil#7\_nil}% +} +%--------------- +% Méthode show (développable ou _NON_ développable, dépend des macros \tplformat et \tplsep) +%--------------- +\def\tpl_method_show#1#2#3{% #1=arg méthode #2=résultat méthodes précédentes #3=flag + \tpl_testifnum{#3=1 } + {{\tpl_method_show_a#2}{0}} + {\tpl_error_only_for_tuples{show}}% +} +\def\tpl_method_show_a#1)#2#3{\tpl_unindex\tplformat\tplsep{#2}} +\def\tplformat#1#2{#2}% #1=index en cours #2=item en cours +\def\tplsep{, } +%--------------- +% Méthode end_exe (privée et développable) +%--------------- +\def\tpl_method_end_exe#1#2#3{% #1=arg méthode #2=résultat méthodes précédentes #3=flag + {% + \tpl_testifnum{#3=1 } + {\tpl_method_end_exe_a#2} + {\unexpanded{#2}}% diriger vers l'affichage si flag<1 + }% + {-1}% +} +\def\tpl_method_end_exe_a#1)#2#3{\tpl_unindex\tpl_method_end_exe_format\tpl_method_end_exe_sep{#2}} +\def\tpl_method_end_exe_format#1#2{#2} +\def\tpl_method_end_exe_sep{, } +%--------------- +% macro \tpl_unindex +%--------------- +\def\tpl_unindex#1#2#3{% #1=macro pour formater un item #2=macro séparateur #3=tuple indexé + \tpl_ifempty{#3} + {}% + {\tpl_unindex_a{#1}{#2}#3\relax:\relax,}% +} +\def\tpl_unindex_a#1#2#3:#4,#5{% #1=macro pour formater un item #2=macro séparateur #3=index courant #4=item courant #5=prochain index + \unexpanded\expandafter{#1{#3}{#4}}% afficher l'item + \tpl_testifx{\relax#5} + {% + \tpl_unindex_b + } + {% + #2% afficher le séparateur + \tpl_unindex_a{#1}{#2}#5% + }% +} +\def\tpl_unindex_b#1,{} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%% La macro utilisateur \tplexe %%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\def\tplexe#1{% + \tpl_exea#1.end_exe.\_nil +} +\def\tpl_exea#1.{% #1=nom du tuple TODO:tester trié ou pas + \tpl_testifcsname{tpl_tuple(\tpl_stripsp\detokenize{#1})} + {\expandafter\expandafter\expandafter\tpl_exeb\csname tpl_tuple(\tpl_stripsp\detokenize{#1})\endcsname1} + {\tpl_error{Tuple '\detokenize{#1}' not defined}\tpl_gobtonil}% +} +% Flag +% -1 : c'est la dernière méthode appelée, les autres sont ignorées +% 0 : résultat est un nombre ou est affichable +% 1 : résultat est un tuple +\def\tpl_exeb(#1)#2#3#4{% #1=flag #2=données du tuple #3=tuple non indexé #4=tuple indexé + \tpl_exec{(#1){#2}{#3}}{#4}%{#5}% grouper les argument du tuple +} +\def\tpl_exec#1#2{% #1=résultat des dernières méthodes (soit le tuple entier (carac){tupleNTR}{tuple TR}, soit un nombre) #2=flag + \tpl_testifnum{#2=-1 } + {#1\tpl_gobtonil}% renvoie #1 et ignore toutes les autres méthodes + {\tpl_exed{#1}{#2}}% +} +\def\tpl_exed#1#2#3.{% #1=résultat des dernières méthodes (soit le tuple entier (carac){tupleNTR}{tuple TR}, soit un nombre) #2=flag #3=méthode (et arguments) en cours de traitement + \tpl_x_after\tpl_exee{\tpl_split_method_args{#3}}{#1}{#2}% +} +\def\tpl_exee#1#2#3#4{% #1=nom méthode #2=arg méthode #3=argument laissé par les méthodes #4=flag + \tpl_testifcsname{tpl_method_#1} + {\tpl_x_after\tpl_exec{\csname tpl_method_#1\endcsname{#2}{#3}{#4}}}% 3 arg à chaque méthode 1er=arg méthode #2=résultat précédent #3=flag + {\tpl_error{Unknown method "#1"}\tpl_gobtonil}% +} + +\def\tpl_list_methods{len,sum,min,max,mean,med,quantile,stdev,get,set,sorted,store,split,add,op,filter,pos,comp,show,end_exe} +\def\tpl_iftrueempty#1{\if\relax\detokenize{#1}\relax\tpl_exec_first\fi\tpl_exec_second} +\tpl_foreach\_temp\in\tpl_list_methods\do{% + \tpl_csedef{tpl_try_\_temp}##1{% + \tpl_cs_enxp{tpl_try_\_temp _a}##1\noexpand\__nil\_temp\noexpand\___nil\noexpand\_nil + }% + \tpl_csedef{tpl_try_\_temp _a\expandafter}\expandafter##\expandafter1\_temp##2\_nil{% + \noexpand\tpl_iftrueempty{##1}% ##1 ne _doit_ pas être ' ' donc la syntaxe ". method" est invalide + {{\_temp}{\noexpand\tpl_sanitize_arg##2}\noexpand\tpl_gobtonil}% <- argument Vrai + }% +} +\def\tpl_split_method_args#1{% #1=<méthode><arg> -> retour {methode}{arg} ou {methode}{{arg1}{arg2}{arg3}...} + \tpl_e_after{\tpl_split_method_args_a{#1}}\tpl_list_methods,\relax,\_nil +} +\def\tpl_split_method_args_a#1#2,{% + \tpl_testifx{\relax#2} + {% + {\detokenize{#1}}{}\tpl_gobtonil + } + {% + \csname tpl_try_#2\endcsname{#1}% + %{} <- inclus dans la macro \tpl_try_<methode>_a + {\tpl_split_method_args_a{#1}}% <- argument Faux + }% +} +\def\tpl_sanitize_arg#1\__nil#2\___nil{\tpl_stripsp\unexpanded{#1}} + +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +%%%% La macro utilisateur \gentuple %%% +%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%% +\def\tpl_strip_lastcomma#1{\tpl_strip_lastcomma_i#1\empty\tpl_gobtonil, \empty\_nil}% +\def\tpl_strip_lastcomma_i#1, \empty{#1} +\def\tpl_id#1{#1} +\def\tpl_is_while#1{\tpl_stripsp{\expandafter\tpl_is_while_a\tpl_id}{#1}\while\_nil} +\def\tpl_is_while_a#1\while#2\_nil{\tpl_ifempty{#1}{\tpl_is_while_b#2\_nil}{\tpl_exec_second}} +\def\tpl_is_while_b#1\while#2\_nil{\tpl_ifempty{#1#2}} +\def\tpl_is_until#1{\tpl_stripsp{\expandafter\tpl_is_until_a\tpl_id}{#1}\until\_nil} +\def\tpl_is_until_a#1\until#2\_nil{\tpl_ifempty{#1}{\tpl_is_until_b#2\_nil}{\tpl_exec_second}} +\def\tpl_is_until_b#1\until#2\_nil{\tpl_ifempty{#1#2}} +\def\gentuple#1{% + \tpl_x_second\tpl_strip_lastcomma{\tpl_gentuple_a#1\_nil}% +} +\def\tpl_gentuple_a#1\genrule#2;#3\_nil{% #1=amorce #2=expression de génération #3=\while|\until <condition> + \tpl_stripsp{\expandafter\tpl_gentuple_b\tpl_id}{#3}\_nil#1\genrule#2;% +} +\def\tpl_gentuple_b#1#2\_nil#3\genrule#4;{% #1=\while|\until #2=condition #3=amorce #4=expression de génération + \tpl_is_while{#1} + {% + \tpl_gentuple_c0{}{}#3\relax,{#4}{#2}\tpl_gentuple_g + } + {% + \tpl_is_until{#1} + {\tpl_gentuple_c0{}{}#3\relax,{#4}{#2}\tpl_gentuple_f} + {\tpl_error{\string\while\space or \string\until\space expected before condition}}% + }% +} +\def\tpl_gentuple_c#1#2#3#4,{% #1=index en cours #2=n1,n2,n3,... #3={n1}{n2}{n3}... #4=item d'amorce en cours + \tpl_testifx{\relax#4} + {#2\tpl_gentuple_e{#1}{#1}{#3}}% afficher l'amorce '#2' puis aller à la macro récursive + {\tpl_e_second\tpl_gentuple_c{\the\numexpr#1+1}{#2#4,}{#3{#4}}}% +} +\def\tpl_gentuple_e#1#2#3#4#5#6{% #1=index en cours #2=nb de variables #3=dernières valeurs #4=expression de génération #5=condition arret #6=\tpl_gentuple_g(while) ou \tpl_gentuple_f(until) + \tpl_x_second{#6}{\tpl_expr_eval{\tpl_subst_allvalues{#2}{#4}{#3}{#1}}}% <- #1=valeur pour \i (index courant) + {#1}{#2}{#3}{#4}{#5}% +} +\def\tpl_gentuple_f#1#2#3#4#5#6{% #1=item en cours #2=index en cours #3=nb de variables #4=dernières valeurs #5=expression de génération #6=condition arret (until) + #1% afficher '#1,' avant de faire le test + \ifnum\tpl_x_second\tpl_subst_val{\tpl_subst_i{#6}{#2}}{#1}=0 % tant que condition d'arrêt non vérifiée + \tpl_antefi + , % séparateur si pas le dernier + \tpl_x_after\tpl_gentuple_e{{\the\numexpr#2+1}{#3}{\tpl_gobone#4{#1}}}{#5}{#6}\tpl_gentuple_f% puis recommencer + \fi +} +\def\tpl_gentuple_g#1#2#3#4#5#6{% #1=item en cours #2=index en cours #3=nb de variables #4=dernières valeurs #5=expression de génération #6=condition de poursuite (while) + \ifnum\tpl_x_second\tpl_subst_val{\tpl_subst_i{#6}{#2}}{#1}=1 % tant que condition de poursuite en vérifiée + \tpl_antefi + #1, % séparateur toujours présent, même arès le dernier nombre + \expandafter\tpl_gentuple_e\expanded{{\the\numexpr#2+1}{#3}{\tpl_gobone#4{#1}}}{#5}{#6}\tpl_gentuple_g% puis recommencer + \fi +} +%--------------- +% macros auxiliaires pour \gentuple +%--------------- +\tpl_foreach\__temp\in{i,1,2,3,4,5,6,7,8,9}\do{% définition des macros de remplacement \1, \2, etc + \tpl_csedef{tpl_subst_\__temp}##1##2{\tpl_cs_enxp{tpl_subst_\__temp _a}##1\noexpand\?{\tpl_cs_enxp{tpl_subst_\__temp _b}##1\noexpand\_nil{##2}}\noexpand\_markit\tpl_cs_enxp{\__temp}\noexpand\?{\noexpand\unexpanded{##1}}\noexpand\_markit\noexpand\_nil}% + \tpl_csdef {tpl_subst_\__temp _a\expandafter}\expandafter##\expandafter1\csname\__temp\endcsname##2\?##3\_markit##4\_nil{##3}% + \tpl_csedef{tpl_subst_\__temp _b\expandafter}\expandafter##\expandafter1\csname\__temp\endcsname##2\_nil##3{\tpl_cs_enxp{tpl_subst_\__temp}{##1##3##2}{##3}}% +} +\def\tpl_subst_allvalues#1#2#3{% #1=nombre de variables #2=expression où il y a \1, \2, etc #3=valeurs pour les variables #4=valeur pour \i + \tpl_subst_allvalues_a{1}{#1}{#2}#3{}{}{}{}{}{}{}{}{}\_nil%{#4}% <- ajouter l'index courant qui est la valeur pour \i +} +\def\tpl_subst_allvalues_a#1#2#3#4{% #1=n° de remplacement en cours #2=nb total de remplacements #3=expression #4=valeur de la variable n°#1 + \tpl_testifnum{#1>#2 } + {\tpl_firsttonil{\tpl_subst_i{#3}}}% <- mange tout jusqu'au \_nil puis lit la valeur pour \i + {\tpl_x_after\tpl_subst_allvalues_a{{\the\numexpr#1+1}{#2}{\csname tpl_subst_#1\endcsname{#3}{#4}}}}% +} + +\tpl_restorecatcode +\tplsetmode{dec : long} +\endinput + +Versions : + _____________________________________________________________________________ +| Version | Date | Changements | +|-----------------------------------------------------------------------------| +| 0.1 | 16/11/2024 | Première version | +|-----------------------------------------------------------------------------| +| 0.2 | 20/12/2024 | * choix du type de nombres dans le tuple : "int", | +| | | "dec:short" ou bien "dec:long" (défaut) | +| | | * index négatifs possibles pour les méthodes get, | +| | | set, add et split | +| | | * ajout d'un moteur de calcul rudimentaire pour les | +| | | décimaux #8.#8 avec produit de type #16.#8 | +| | | * la méthode 'pos' admet un argument optionnel pour | +| | | indiquer l'occurrence cherchée | +|-----------------------------------------------------------------------------|
\ No newline at end of file diff --git a/Master/texmf-dist/tex/generic/unicode-data/BidiBrackets.txt b/Master/texmf-dist/tex/generic/unicode-data/BidiBrackets.txt index 8cebea41544..db4e41b6e6a 100644 --- a/Master/texmf-dist/tex/generic/unicode-data/BidiBrackets.txt +++ b/Master/texmf-dist/tex/generic/unicode-data/BidiBrackets.txt @@ -1,8 +1,8 @@ -# BidiBrackets-15.1.0.txt -# Date: 2023-01-18 -# © 2023 Unicode®, Inc. +# BidiBrackets-16.0.0.txt +# Date: 2024-02-02 +# © 2024 Unicode®, Inc. # Unicode and the Unicode Logo are registered trademarks of Unicode, Inc. in the U.S. and other countries. -# For terms of use, see https://www.unicode.org/terms_of_use.html +# For terms of use and license, see https://www.unicode.org/terms_of_use.html # # Unicode Character Database # For documentation, see https://www.unicode.org/reports/tr44/ diff --git a/Master/texmf-dist/tex/generic/unicode-data/BidiMirroring.txt b/Master/texmf-dist/tex/generic/unicode-data/BidiMirroring.txt index 7e58cc4d715..d8f60cb79fe 100644 --- a/Master/texmf-dist/tex/generic/unicode-data/BidiMirroring.txt +++ b/Master/texmf-dist/tex/generic/unicode-data/BidiMirroring.txt @@ -1,7 +1,8 @@ -# BidiMirroring-15.1.0.txt -# Date: 2023-01-05 -# © 2023 Unicode®, Inc. -# For terms of use, see https://www.unicode.org/terms_of_use.html +# BidiMirroring-16.0.0.txt +# Date: 2024-01-30 +# © 2024 Unicode®, Inc. +# Unicode and the Unicode Logo are registered trademarks of Unicode, Inc. in the U.S. and other countries. +# For terms of use and license, see https://www.unicode.org/terms_of_use.html # # Unicode Character Database # For documentation, see https://www.unicode.org/reports/tr44/ @@ -15,7 +16,7 @@ # value, for which there is another Unicode character that typically has a glyph # that is the mirror image of the original character's glyph. # -# The repertoire covered by the file is Unicode 15.1.0. +# The repertoire covered by the file is Unicode 16.0.0. # # The file contains a list of lines with mappings from one code point # to another one for character-based mirroring. @@ -44,7 +45,8 @@ # # This file was originally created by Markus Scherer. # Extended for Unicode 3.2, 4.0, 4.1, 5.0, 5.1, 5.2, and 6.0 by Ken Whistler, -# and for subsequent versions by Ken Whistler, Laurentiu Iancu, and Roozbeh Pournader. +# and for subsequent versions by Ken Whistler, Laurentiu Iancu, Roozbeh Pournader, +# and Robin Leroy. # # Historical and Compatibility Information: # @@ -542,6 +544,7 @@ FF63; FF62 # [BEST FIT] HALFWIDTH RIGHT CORNER BRACKET # 225F; QUESTIONED EQUAL TO # 2260; NOT EQUAL TO # 2262; NOT IDENTICAL TO +# 226D; NOT EQUIVALENT TO # 228C; MULTISET # 22A7; MODELS # 22AA; TRIPLE VERTICAL BAR RIGHT TURNSTILE diff --git a/Master/texmf-dist/tex/generic/unicode-data/CaseFolding.txt b/Master/texmf-dist/tex/generic/unicode-data/CaseFolding.txt index 69c5c64b4c6..1b7a9c156c7 100644 --- a/Master/texmf-dist/tex/generic/unicode-data/CaseFolding.txt +++ b/Master/texmf-dist/tex/generic/unicode-data/CaseFolding.txt @@ -1,8 +1,8 @@ -# CaseFolding-15.1.0.txt -# Date: 2023-05-12, 21:53:10 GMT -# © 2023 Unicode®, Inc. +# CaseFolding-16.0.0.txt +# Date: 2024-04-30, 21:48:11 GMT +# © 2024 Unicode®, Inc. # Unicode and the Unicode Logo are registered trademarks of Unicode, Inc. in the U.S. and other countries. -# For terms of use, see https://www.unicode.org/terms_of_use.html +# For terms of use and license, see https://www.unicode.org/terms_of_use.html # # Unicode Character Database # For documentation, see https://www.unicode.org/reports/tr44/ @@ -603,6 +603,7 @@ 1C86; C; 044A; # CYRILLIC SMALL LETTER TALL HARD SIGN 1C87; C; 0463; # CYRILLIC SMALL LETTER TALL YAT 1C88; C; A64B; # CYRILLIC SMALL LETTER UNBLENDED UK +1C89; C; 1C8A; # CYRILLIC CAPITAL LETTER TJE 1C90; C; 10D0; # GEORGIAN MTAVRULI CAPITAL LETTER AN 1C91; C; 10D1; # GEORGIAN MTAVRULI CAPITAL LETTER BAN 1C92; C; 10D2; # GEORGIAN MTAVRULI CAPITAL LETTER GAN @@ -1240,9 +1241,13 @@ A7C5; C; 0282; # LATIN CAPITAL LETTER S WITH HOOK A7C6; C; 1D8E; # LATIN CAPITAL LETTER Z WITH PALATAL HOOK A7C7; C; A7C8; # LATIN CAPITAL LETTER D WITH SHORT STROKE OVERLAY A7C9; C; A7CA; # LATIN CAPITAL LETTER S WITH SHORT STROKE OVERLAY +A7CB; C; 0264; # LATIN CAPITAL LETTER RAMS HORN +A7CC; C; A7CD; # LATIN CAPITAL LETTER S WITH DIAGONAL STROKE A7D0; C; A7D1; # LATIN CAPITAL LETTER CLOSED INSULAR G A7D6; C; A7D7; # LATIN CAPITAL LETTER MIDDLE SCOTS S A7D8; C; A7D9; # LATIN CAPITAL LETTER SIGMOID S +A7DA; C; A7DB; # LATIN CAPITAL LETTER LAMBDA +A7DC; C; 019B; # LATIN CAPITAL LETTER LAMBDA WITH STROKE A7F5; C; A7F6; # LATIN CAPITAL LETTER REVERSED HALF H AB70; C; 13A0; # CHEROKEE SMALL LETTER A AB71; C; 13A1; # CHEROKEE SMALL LETTER E @@ -1525,6 +1530,28 @@ FF3A; C; FF5A; # FULLWIDTH LATIN CAPITAL LETTER Z 10CB0; C; 10CF0; # OLD HUNGARIAN CAPITAL LETTER EZS 10CB1; C; 10CF1; # OLD HUNGARIAN CAPITAL LETTER ENT-SHAPED SIGN 10CB2; C; 10CF2; # OLD HUNGARIAN CAPITAL LETTER US +10D50; C; 10D70; # GARAY CAPITAL LETTER A +10D51; C; 10D71; # GARAY CAPITAL LETTER CA +10D52; C; 10D72; # GARAY CAPITAL LETTER MA +10D53; C; 10D73; # GARAY CAPITAL LETTER KA +10D54; C; 10D74; # GARAY CAPITAL LETTER BA +10D55; C; 10D75; # GARAY CAPITAL LETTER JA +10D56; C; 10D76; # GARAY CAPITAL LETTER SA +10D57; C; 10D77; # GARAY CAPITAL LETTER WA +10D58; C; 10D78; # GARAY CAPITAL LETTER LA +10D59; C; 10D79; # GARAY CAPITAL LETTER GA +10D5A; C; 10D7A; # GARAY CAPITAL LETTER DA +10D5B; C; 10D7B; # GARAY CAPITAL LETTER XA +10D5C; C; 10D7C; # GARAY CAPITAL LETTER YA +10D5D; C; 10D7D; # GARAY CAPITAL LETTER TA +10D5E; C; 10D7E; # GARAY CAPITAL LETTER RA +10D5F; C; 10D7F; # GARAY CAPITAL LETTER NYA +10D60; C; 10D80; # GARAY CAPITAL LETTER FA +10D61; C; 10D81; # GARAY CAPITAL LETTER NA +10D62; C; 10D82; # GARAY CAPITAL LETTER PA +10D63; C; 10D83; # GARAY CAPITAL LETTER HA +10D64; C; 10D84; # GARAY CAPITAL LETTER OLD KA +10D65; C; 10D85; # GARAY CAPITAL LETTER OLD NA 118A0; C; 118C0; # WARANG CITI CAPITAL LETTER NGAA 118A1; C; 118C1; # WARANG CITI CAPITAL LETTER A 118A2; C; 118C2; # WARANG CITI CAPITAL LETTER WI diff --git a/Master/texmf-dist/tex/generic/unicode-data/EastAsianWidth.txt b/Master/texmf-dist/tex/generic/unicode-data/EastAsianWidth.txt index 02df4df475c..99f7a31ea5d 100644 --- a/Master/texmf-dist/tex/generic/unicode-data/EastAsianWidth.txt +++ b/Master/texmf-dist/tex/generic/unicode-data/EastAsianWidth.txt @@ -1,8 +1,8 @@ -# EastAsianWidth-15.1.0.txt -# Date: 2023-07-28, 23:34:08 GMT -# © 2023 Unicode®, Inc. +# EastAsianWidth-16.0.0.txt +# Date: 2024-04-30, 21:48:20 GMT +# © 2024 Unicode®, Inc. # Unicode and the Unicode Logo are registered trademarks of Unicode, Inc. in the U.S. and other countries. -# For terms of use, see https://www.unicode.org/terms_of_use.html +# For terms of use and license, see https://www.unicode.org/terms_of_use.html # # Unicode Character Database # For documentation, see https://www.unicode.org/reports/tr44/ @@ -334,7 +334,7 @@ 0888 ; N # Sk ARABIC RAISED ROUND DOT 0889..088E ; N # Lo [6] ARABIC LETTER NOON WITH INVERTED SMALL V..ARABIC VERTICAL TAIL 0890..0891 ; N # Cf [2] ARABIC POUND MARK ABOVE..ARABIC PIASTRE MARK ABOVE -0898..089F ; N # Mn [8] ARABIC SMALL HIGH WORD AL-JUZ..ARABIC HALF MADDA OVER MADDA +0897..089F ; N # Mn [9] ARABIC PEPET..ARABIC HALF MADDA OVER MADDA 08A0..08C8 ; N # Lo [41] ARABIC LETTER BEH WITH SMALL V BELOW..ARABIC LETTER GRAF 08C9 ; N # Lm ARABIC SMALL FARSI YEH 08CA..08E1 ; N # Mn [24] ARABIC SMALL HIGH FARSI YEH..ARABIC SMALL HIGH SIGN SAFHA @@ -819,12 +819,13 @@ 1B42 ; N # Mn BALINESE VOWEL SIGN PEPET 1B43..1B44 ; N # Mc [2] BALINESE VOWEL SIGN PEPET TEDUNG..BALINESE ADEG ADEG 1B45..1B4C ; N # Lo [8] BALINESE LETTER KAF SASAK..BALINESE LETTER ARCHAIC JNYA +1B4E..1B4F ; N # Po [2] BALINESE INVERTED CARIK SIKI..BALINESE INVERTED CARIK PAREREN 1B50..1B59 ; N # Nd [10] BALINESE DIGIT ZERO..BALINESE DIGIT NINE 1B5A..1B60 ; N # Po [7] BALINESE PANTI..BALINESE PAMENENG 1B61..1B6A ; N # So [10] BALINESE MUSICAL SYMBOL DONG..BALINESE MUSICAL SYMBOL DANG GEDE 1B6B..1B73 ; N # Mn [9] BALINESE MUSICAL SYMBOL COMBINING TEGEH..BALINESE MUSICAL SYMBOL COMBINING GONG 1B74..1B7C ; N # So [9] BALINESE MUSICAL SYMBOL RIGHT-HAND OPEN DUG..BALINESE MUSICAL SYMBOL LEFT-HAND OPEN PING -1B7D..1B7E ; N # Po [2] BALINESE PANTI LANTANG..BALINESE PAMADA LANTANG +1B7D..1B7F ; N # Po [3] BALINESE PANTI LANTANG..BALINESE PANTI BAWAK 1B80..1B81 ; N # Mn [2] SUNDANESE SIGN PANYECEK..SUNDANESE SIGN PANGLAYAR 1B82 ; N # Mc SUNDANESE SIGN PANGWISAD 1B83..1BA0 ; N # Lo [30] SUNDANESE LETTER A..SUNDANESE LETTER HA @@ -859,7 +860,7 @@ 1C5A..1C77 ; N # Lo [30] OL CHIKI LETTER LA..OL CHIKI LETTER OH 1C78..1C7D ; N # Lm [6] OL CHIKI MU TTUDDAG..OL CHIKI AHAD 1C7E..1C7F ; N # Po [2] OL CHIKI PUNCTUATION MUCAAD..OL CHIKI PUNCTUATION DOUBLE MUCAAD -1C80..1C88 ; N # Ll [9] CYRILLIC SMALL LETTER ROUNDED VE..CYRILLIC SMALL LETTER UNBLENDED UK +1C80..1C8A ; N # L& [11] CYRILLIC SMALL LETTER ROUNDED VE..CYRILLIC SMALL LETTER TJE 1C90..1CBA ; N # Lu [43] GEORGIAN MTAVRULI CAPITAL LETTER AN..GEORGIAN MTAVRULI CAPITAL LETTER AIN 1CBD..1CBF ; N # Lu [3] GEORGIAN MTAVRULI CAPITAL LETTER AEN..GEORGIAN MTAVRULI CAPITAL LETTER LABIAL SIGN 1CC0..1CC7 ; N # Po [8] SUNDANESE PUNCTUATION BINDU SURYA..SUNDANESE PUNCTUATION BINDU BA SATANGA @@ -1142,7 +1143,7 @@ 23F1..23F2 ; N # So [2] STOPWATCH..TIMER CLOCK 23F3 ; W # So HOURGLASS WITH FLOWING SAND 23F4..23FF ; N # So [12] BLACK MEDIUM LEFT-POINTING TRIANGLE..OBSERVER EYE SYMBOL -2400..2426 ; N # So [39] SYMBOL FOR NULL..SYMBOL FOR SUBSTITUTE FORM TWO +2400..2429 ; N # So [42] SYMBOL FOR NULL..SYMBOL FOR DELETE MEDIUM SHADE FORM 2440..244A ; N # So [11] OCR HOOK..OCR DOUBLE BACKSLASH 2460..249B ; A # No [60] CIRCLED DIGIT ONE..NUMBER TWENTY FULL STOP 249C..24E9 ; A # So [78] PARENTHESIZED LATIN SMALL LETTER A..CIRCLED LATIN SMALL LETTER Z @@ -1195,7 +1196,9 @@ 261C ; A # So WHITE LEFT POINTING INDEX 261D ; N # So WHITE UP POINTING INDEX 261E ; A # So WHITE RIGHT POINTING INDEX -261F..263F ; N # So [33] WHITE DOWN POINTING INDEX..MERCURY +261F..262F ; N # So [17] WHITE DOWN POINTING INDEX..YIN YANG +2630..2637 ; W # So [8] TRIGRAM FOR HEAVEN..TRIGRAM FOR EARTH +2638..263F ; N # So [8] WHEEL OF DHARMA..MERCURY 2640 ; A # So FEMALE SIGN 2641 ; N # So EARTH 2642 ; A # So MALE SIGN @@ -1213,7 +1216,9 @@ 266F ; A # Sm MUSIC SHARP SIGN 2670..267E ; N # So [15] WEST SYRIAC CROSS..PERMANENT PAPER SIGN 267F ; W # So WHEELCHAIR SYMBOL -2680..2692 ; N # So [19] DIE FACE-1..HAMMER AND PICK +2680..2689 ; N # So [10] DIE FACE-1..BLACK CIRCLE WITH TWO WHITE DOTS +268A..268F ; W # So [6] MONOGRAM FOR YANG..DIGRAM FOR GREATER YIN +2690..2692 ; N # So [3] WHITE FLAG..HAMMER AND PICK 2693 ; W # So ANCHOR 2694..269D ; N # So [10] CROSSED SWORDS..OUTLINED WHITE STAR 269E..269F ; A # So [2] THREE LINES CONVERGING RIGHT..THREE LINES CONVERGING LEFT @@ -1487,7 +1492,7 @@ 3192..3195 ; W # No [4] IDEOGRAPHIC ANNOTATION ONE MARK..IDEOGRAPHIC ANNOTATION FOUR MARK 3196..319F ; W # So [10] IDEOGRAPHIC ANNOTATION TOP MARK..IDEOGRAPHIC ANNOTATION MAN MARK 31A0..31BF ; W # Lo [32] BOPOMOFO LETTER BU..BOPOMOFO LETTER AH -31C0..31E3 ; W # So [36] CJK STROKE T..CJK STROKE Q +31C0..31E5 ; W # So [38] CJK STROKE T..CJK STROKE SZP 31EF ; W # So IDEOGRAPHIC DESCRIPTION CHARACTER SUBTRACTION 31F0..31FF ; W # Lo [16] KATAKANA LETTER SMALL KU..KATAKANA LETTER SMALL RO 3200..321E ; W # So [31] PARENTHESIZED HANGUL KIYEOK..PARENTHESIZED KOREAN CHARACTER O HU @@ -1503,7 +1508,7 @@ 32C0..32FF ; W # So [64] IDEOGRAPHIC TELEGRAPH SYMBOL FOR JANUARY..SQUARE ERA NAME REIWA 3300..33FF ; W # So [256] SQUARE APAATO..SQUARE GAL 3400..4DBF ; W # Lo [6592] CJK UNIFIED IDEOGRAPH-3400..CJK UNIFIED IDEOGRAPH-4DBF -4DC0..4DFF ; N # So [64] HEXAGRAM FOR THE CREATIVE HEAVEN..HEXAGRAM FOR BEFORE COMPLETION +4DC0..4DFF ; W # So [64] HEXAGRAM FOR THE CREATIVE HEAVEN..HEXAGRAM FOR BEFORE COMPLETION 4E00..9FFF ; W # Lo [20992] CJK UNIFIED IDEOGRAPH-4E00..CJK UNIFIED IDEOGRAPH-9FFF A000..A014 ; W # Lo [21] YI SYLLABLE IT..YI SYLLABLE E A015 ; W # Lm YI SYLLABLE WU @@ -1543,10 +1548,10 @@ A788 ; N # Lm MODIFIER LETTER LOW CIRCUMFLEX ACCENT A789..A78A ; N # Sk [2] MODIFIER LETTER COLON..MODIFIER LETTER SHORT EQUALS SIGN A78B..A78E ; N # L& [4] LATIN CAPITAL LETTER SALTILLO..LATIN SMALL LETTER L WITH RETROFLEX HOOK AND BELT A78F ; N # Lo LATIN LETTER SINOLOGICAL DOT -A790..A7CA ; N # L& [59] LATIN CAPITAL LETTER N WITH DESCENDER..LATIN SMALL LETTER S WITH SHORT STROKE OVERLAY +A790..A7CD ; N # L& [62] LATIN CAPITAL LETTER N WITH DESCENDER..LATIN SMALL LETTER S WITH DIAGONAL STROKE A7D0..A7D1 ; N # L& [2] LATIN CAPITAL LETTER CLOSED INSULAR G..LATIN SMALL LETTER CLOSED INSULAR G A7D3 ; N # Ll LATIN SMALL LETTER DOUBLE THORN -A7D5..A7D9 ; N # L& [5] LATIN SMALL LETTER DOUBLE WYNN..LATIN SMALL LETTER SIGMOID S +A7D5..A7DC ; N # L& [8] LATIN SMALL LETTER DOUBLE WYNN..LATIN CAPITAL LETTER LAMBDA WITH STROKE A7F2..A7F4 ; N # Lm [3] MODIFIER LETTER CAPITAL C..MODIFIER LETTER CAPITAL Q A7F5..A7F6 ; N # L& [2] LATIN CAPITAL LETTER REVERSED HALF H..LATIN SMALL LETTER REVERSED HALF H A7F7 ; N # Lo LATIN EPIGRAPHIC LETTER SIDEWAYS I @@ -1870,6 +1875,7 @@ FFFD ; A # So REPLACEMENT CHARACTER 105A3..105B1 ; N # Ll [15] VITHKUQI SMALL LETTER HA..VITHKUQI SMALL LETTER RE 105B3..105B9 ; N # Ll [7] VITHKUQI SMALL LETTER SE..VITHKUQI SMALL LETTER XE 105BB..105BC ; N # Ll [2] VITHKUQI SMALL LETTER Y..VITHKUQI SMALL LETTER ZE +105C0..105F3 ; N # Lo [52] TODHRI LETTER A..TODHRI LETTER OO 10600..10736 ; N # Lo [311] LINEAR A SIGN AB001..LINEAR A SIGN A664 10740..10755 ; N # Lo [22] LINEAR A SIGN A701 A..LINEAR A SIGN A732 JE 10760..10767 ; N # Lo [8] LINEAR A SIGN A800..LINEAR A SIGN A807 @@ -1942,12 +1948,23 @@ FFFD ; A # So REPLACEMENT CHARACTER 10D00..10D23 ; N # Lo [36] HANIFI ROHINGYA LETTER A..HANIFI ROHINGYA MARK NA KHONNA 10D24..10D27 ; N # Mn [4] HANIFI ROHINGYA SIGN HARBAHAY..HANIFI ROHINGYA SIGN TASSI 10D30..10D39 ; N # Nd [10] HANIFI ROHINGYA DIGIT ZERO..HANIFI ROHINGYA DIGIT NINE +10D40..10D49 ; N # Nd [10] GARAY DIGIT ZERO..GARAY DIGIT NINE +10D4A..10D4D ; N # Lo [4] GARAY VOWEL SIGN A..GARAY VOWEL SIGN EE +10D4E ; N # Lm GARAY VOWEL LENGTH MARK +10D4F ; N # Lo GARAY SUKUN +10D50..10D65 ; N # Lu [22] GARAY CAPITAL LETTER A..GARAY CAPITAL LETTER OLD NA +10D69..10D6D ; N # Mn [5] GARAY VOWEL SIGN E..GARAY CONSONANT NASALIZATION MARK +10D6E ; N # Pd GARAY HYPHEN +10D6F ; N # Lm GARAY REDUPLICATION MARK +10D70..10D85 ; N # Ll [22] GARAY SMALL LETTER A..GARAY SMALL LETTER OLD NA +10D8E..10D8F ; N # Sm [2] GARAY PLUS SIGN..GARAY MINUS SIGN 10E60..10E7E ; N # No [31] RUMI DIGIT ONE..RUMI FRACTION TWO THIRDS 10E80..10EA9 ; N # Lo [42] YEZIDI LETTER ELIF..YEZIDI LETTER ET 10EAB..10EAC ; N # Mn [2] YEZIDI COMBINING HAMZA MARK..YEZIDI COMBINING MADDA MARK 10EAD ; N # Pd YEZIDI HYPHENATION MARK 10EB0..10EB1 ; N # Lo [2] YEZIDI LETTER LAM WITH DOT ABOVE..YEZIDI LETTER YOT WITH CIRCUMFLEX ABOVE -10EFD..10EFF ; N # Mn [3] ARABIC SMALL LOW WORD SAKTA..ARABIC SMALL LOW WORD MADDA +10EC2..10EC4 ; N # Lo [3] ARABIC LETTER DAL WITH TWO DOTS VERTICALLY BELOW..ARABIC LETTER KAF WITH TWO DOTS VERTICALLY BELOW +10EFC..10EFF ; N # Mn [4] ARABIC COMBINING ALEF OVERLAY..ARABIC SMALL LOW WORD MADDA 10F00..10F1C ; N # Lo [29] OLD SOGDIAN LETTER ALEPH..OLD SOGDIAN LETTER FINAL TAW WITH VERTICAL TAIL 10F1D..10F26 ; N # No [10] OLD SOGDIAN NUMBER ONE..OLD SOGDIAN FRACTION ONE HALF 10F27 ; N # Lo OLD SOGDIAN LIGATURE AYIN-DALETH @@ -2064,6 +2081,26 @@ FFFD ; A # So REPLACEMENT CHARACTER 11362..11363 ; N # Mc [2] GRANTHA VOWEL SIGN VOCALIC L..GRANTHA VOWEL SIGN VOCALIC LL 11366..1136C ; N # Mn [7] COMBINING GRANTHA DIGIT ZERO..COMBINING GRANTHA DIGIT SIX 11370..11374 ; N # Mn [5] COMBINING GRANTHA LETTER A..COMBINING GRANTHA LETTER PA +11380..11389 ; N # Lo [10] TULU-TIGALARI LETTER A..TULU-TIGALARI LETTER VOCALIC LL +1138B ; N # Lo TULU-TIGALARI LETTER EE +1138E ; N # Lo TULU-TIGALARI LETTER AI +11390..113B5 ; N # Lo [38] TULU-TIGALARI LETTER OO..TULU-TIGALARI LETTER LLLA +113B7 ; N # Lo TULU-TIGALARI SIGN AVAGRAHA +113B8..113BA ; N # Mc [3] TULU-TIGALARI VOWEL SIGN AA..TULU-TIGALARI VOWEL SIGN II +113BB..113C0 ; N # Mn [6] TULU-TIGALARI VOWEL SIGN U..TULU-TIGALARI VOWEL SIGN VOCALIC LL +113C2 ; N # Mc TULU-TIGALARI VOWEL SIGN EE +113C5 ; N # Mc TULU-TIGALARI VOWEL SIGN AI +113C7..113CA ; N # Mc [4] TULU-TIGALARI VOWEL SIGN OO..TULU-TIGALARI SIGN CANDRA ANUNASIKA +113CC..113CD ; N # Mc [2] TULU-TIGALARI SIGN ANUSVARA..TULU-TIGALARI SIGN VISARGA +113CE ; N # Mn TULU-TIGALARI SIGN VIRAMA +113CF ; N # Mc TULU-TIGALARI SIGN LOOPED VIRAMA +113D0 ; N # Mn TULU-TIGALARI CONJOINER +113D1 ; N # Lo TULU-TIGALARI REPHA +113D2 ; N # Mn TULU-TIGALARI GEMINATION MARK +113D3 ; N # Lo TULU-TIGALARI SIGN PLUTA +113D4..113D5 ; N # Po [2] TULU-TIGALARI DANDA..TULU-TIGALARI DOUBLE DANDA +113D7..113D8 ; N # Po [2] TULU-TIGALARI SIGN OM PUSHPIKA..TULU-TIGALARI SIGN SHRII PUSHPIKA +113E1..113E2 ; N # Mn [2] TULU-TIGALARI VEDIC TONE SVARITA..TULU-TIGALARI VEDIC TONE ANUDATTA 11400..11434 ; N # Lo [53] NEWA LETTER A..NEWA LETTER HA 11435..11437 ; N # Mc [3] NEWA VOWEL SIGN AA..NEWA VOWEL SIGN II 11438..1143F ; N # Mn [8] NEWA VOWEL SIGN U..NEWA VOWEL SIGN AI @@ -2123,8 +2160,11 @@ FFFD ; A # So REPLACEMENT CHARACTER 116B8 ; N # Lo TAKRI LETTER ARCHAIC KHA 116B9 ; N # Po TAKRI ABBREVIATION SIGN 116C0..116C9 ; N # Nd [10] TAKRI DIGIT ZERO..TAKRI DIGIT NINE +116D0..116E3 ; N # Nd [20] MYANMAR PAO DIGIT ZERO..MYANMAR EASTERN PWO KAREN DIGIT NINE 11700..1171A ; N # Lo [27] AHOM LETTER KA..AHOM LETTER ALTERNATE BA -1171D..1171F ; N # Mn [3] AHOM CONSONANT SIGN MEDIAL LA..AHOM CONSONANT SIGN MEDIAL LIGATING RA +1171D ; N # Mn AHOM CONSONANT SIGN MEDIAL LA +1171E ; N # Mc AHOM CONSONANT SIGN MEDIAL RA +1171F ; N # Mn AHOM CONSONANT SIGN MEDIAL LIGATING RA 11720..11721 ; N # Mc [2] AHOM VOWEL SIGN A..AHOM VOWEL SIGN AA 11722..11725 ; N # Mn [4] AHOM VOWEL SIGN I..AHOM VOWEL SIGN UU 11726 ; N # Mc AHOM VOWEL SIGN E @@ -2195,6 +2235,9 @@ FFFD ; A # So REPLACEMENT CHARACTER 11AB0..11ABF ; N # Lo [16] CANADIAN SYLLABICS NATTILIK HI..CANADIAN SYLLABICS SPA 11AC0..11AF8 ; N # Lo [57] PAU CIN HAU LETTER PA..PAU CIN HAU GLOTTAL STOP FINAL 11B00..11B09 ; N # Po [10] DEVANAGARI HEAD MARK..DEVANAGARI SIGN MINDU +11BC0..11BE0 ; N # Lo [33] SUNUWAR LETTER DEVI..SUNUWAR LETTER KLOKO +11BE1 ; N # Po SUNUWAR SIGN PVO +11BF0..11BF9 ; N # Nd [10] SUNUWAR DIGIT ZERO..SUNUWAR DIGIT NINE 11C00..11C08 ; N # Lo [9] BHAIKSUKI LETTER A..BHAIKSUKI LETTER VOCALIC L 11C0A..11C2E ; N # Lo [37] BHAIKSUKI LETTER E..BHAIKSUKI LETTER HA 11C2F ; N # Mc BHAIKSUKI VOWEL SIGN AA @@ -2253,6 +2296,7 @@ FFFD ; A # So REPLACEMENT CHARACTER 11F42 ; N # Mn KAWI CONJOINER 11F43..11F4F ; N # Po [13] KAWI DANDA..KAWI PUNCTUATION CLOSING SPIRAL 11F50..11F59 ; N # Nd [10] KAWI DIGIT ZERO..KAWI DIGIT NINE +11F5A ; N # Mn KAWI SIGN NUKTA 11FB0 ; N # Lo LISU LETTER YHA 11FC0..11FD4 ; N # No [21] TAMIL FRACTION ONE THREE-HUNDRED-AND-TWENTIETH..TAMIL FRACTION DOWNSCALING FACTOR KIIZH 11FD5..11FDC ; N # So [8] TAMIL SIGN NEL..TAMIL SIGN MUKKURUNI @@ -2270,7 +2314,13 @@ FFFD ; A # So REPLACEMENT CHARACTER 13440 ; N # Mn EGYPTIAN HIEROGLYPH MIRROR HORIZONTALLY 13441..13446 ; N # Lo [6] EGYPTIAN HIEROGLYPH FULL BLANK..EGYPTIAN HIEROGLYPH WIDE LOST SIGN 13447..13455 ; N # Mn [15] EGYPTIAN HIEROGLYPH MODIFIER DAMAGED AT TOP START..EGYPTIAN HIEROGLYPH MODIFIER DAMAGED +13460..143FA ; N # Lo [3995] EGYPTIAN HIEROGLYPH-13460..EGYPTIAN HIEROGLYPH-143FA 14400..14646 ; N # Lo [583] ANATOLIAN HIEROGLYPH A001..ANATOLIAN HIEROGLYPH A530 +16100..1611D ; N # Lo [30] GURUNG KHEMA LETTER A..GURUNG KHEMA LETTER SA +1611E..16129 ; N # Mn [12] GURUNG KHEMA VOWEL SIGN AA..GURUNG KHEMA VOWEL LENGTH MARK +1612A..1612C ; N # Mc [3] GURUNG KHEMA CONSONANT SIGN MEDIAL YA..GURUNG KHEMA CONSONANT SIGN MEDIAL HA +1612D..1612F ; N # Mn [3] GURUNG KHEMA SIGN ANUSVARA..GURUNG KHEMA SIGN THOLHOMA +16130..16139 ; N # Nd [10] GURUNG KHEMA DIGIT ZERO..GURUNG KHEMA DIGIT NINE 16800..16A38 ; N # Lo [569] BAMUM LETTER PHASE-A NGKUE MFON..BAMUM LETTER PHASE-F VUEQ 16A40..16A5E ; N # Lo [31] MRO LETTER TA..MRO LETTER TEK 16A60..16A69 ; N # Nd [10] MRO DIGIT ZERO..MRO DIGIT NINE @@ -2291,6 +2341,11 @@ FFFD ; A # So REPLACEMENT CHARACTER 16B5B..16B61 ; N # No [7] PAHAWH HMONG NUMBER TENS..PAHAWH HMONG NUMBER TRILLIONS 16B63..16B77 ; N # Lo [21] PAHAWH HMONG SIGN VOS LUB..PAHAWH HMONG SIGN CIM NRES TOS 16B7D..16B8F ; N # Lo [19] PAHAWH HMONG CLAN SIGN TSHEEJ..PAHAWH HMONG CLAN SIGN VWJ +16D40..16D42 ; N # Lm [3] KIRAT RAI SIGN ANUSVARA..KIRAT RAI SIGN VISARGA +16D43..16D6A ; N # Lo [40] KIRAT RAI LETTER A..KIRAT RAI VOWEL SIGN AU +16D6B..16D6C ; N # Lm [2] KIRAT RAI SIGN VIRAMA..KIRAT RAI SIGN SAAT +16D6D..16D6F ; N # Po [3] KIRAT RAI SIGN YUPI..KIRAT RAI DOUBLE DANDA +16D70..16D79 ; N # Nd [10] KIRAT RAI DIGIT ZERO..KIRAT RAI DIGIT NINE 16E40..16E7F ; N # L& [64] MEDEFAIDRIN CAPITAL LETTER M..MEDEFAIDRIN SMALL LETTER Y 16E80..16E96 ; N # No [23] MEDEFAIDRIN DIGIT ZERO..MEDEFAIDRIN DIGIT THREE ALTERNATE FORM 16E97..16E9A ; N # Po [4] MEDEFAIDRIN COMMA..MEDEFAIDRIN EXCLAMATION OH @@ -2308,6 +2363,7 @@ FFFD ; A # So REPLACEMENT CHARACTER 17000..187F7 ; W # Lo [6136] TANGUT IDEOGRAPH-17000..TANGUT IDEOGRAPH-187F7 18800..18AFF ; W # Lo [768] TANGUT COMPONENT-001..TANGUT COMPONENT-768 18B00..18CD5 ; W # Lo [470] KHITAN SMALL SCRIPT CHARACTER-18B00..KHITAN SMALL SCRIPT CHARACTER-18CD5 +18CFF ; W # Lo KHITAN SMALL SCRIPT CHARACTER-18CFF 18D00..18D08 ; W # Lo [9] TANGUT IDEOGRAPH-18D00..TANGUT IDEOGRAPH-18D08 1AFF0..1AFF3 ; W # Lm [4] KATAKANA LETTER MINNAN TONE-2..KATAKANA LETTER MINNAN TONE-5 1AFF5..1AFFB ; W # Lm [7] KATAKANA LETTER MINNAN TONE-7..KATAKANA LETTER MINNAN NASALIZED TONE-5 @@ -2327,6 +2383,9 @@ FFFD ; A # So REPLACEMENT CHARACTER 1BC9D..1BC9E ; N # Mn [2] DUPLOYAN THICK LETTER SELECTOR..DUPLOYAN DOUBLE MARK 1BC9F ; N # Po DUPLOYAN PUNCTUATION CHINOOK FULL STOP 1BCA0..1BCA3 ; N # Cf [4] SHORTHAND FORMAT LETTER OVERLAP..SHORTHAND FORMAT UP STEP +1CC00..1CCEF ; N # So [240] UP-POINTING GO-KART..OUTLINED LATIN CAPITAL LETTER Z +1CCF0..1CCF9 ; N # Nd [10] OUTLINED DIGIT ZERO..OUTLINED DIGIT NINE +1CD00..1CEB3 ; N # So [436] BLOCK OCTANT-3..BLACK RIGHT TRIANGLE CARET 1CF00..1CF2D ; N # Mn [46] ZNAMENNY COMBINING MARK GORAZDO NIZKO S KRYZHEM ON LEFT..ZNAMENNY COMBINING MARK KRYZH ON LEFT 1CF30..1CF46 ; N # Mn [23] ZNAMENNY COMBINING TONAL RANGE MARK MRACHNO..ZNAMENNY PRIZNAK MODIFIER ROG 1CF50..1CFC3 ; N # So [116] ZNAMENNY NEUME KRYUK..ZNAMENNY NEUME PAUK @@ -2349,8 +2408,9 @@ FFFD ; A # So REPLACEMENT CHARACTER 1D245 ; N # So GREEK MUSICAL LEIMMA 1D2C0..1D2D3 ; N # No [20] KAKTOVIK NUMERAL ZERO..KAKTOVIK NUMERAL NINETEEN 1D2E0..1D2F3 ; N # No [20] MAYAN NUMERAL ZERO..MAYAN NUMERAL NINETEEN -1D300..1D356 ; N # So [87] MONOGRAM FOR EARTH..TETRAGRAM FOR FOSTERING -1D360..1D378 ; N # No [25] COUNTING ROD UNIT DIGIT ONE..TALLY MARK FIVE +1D300..1D356 ; W # So [87] MONOGRAM FOR EARTH..TETRAGRAM FOR FOSTERING +1D360..1D376 ; W # No [23] COUNTING ROD UNIT DIGIT ONE..IDEOGRAPHIC TALLY MARK FIVE +1D377..1D378 ; N # No [2] TALLY MARK ONE..TALLY MARK FIVE 1D400..1D454 ; N # L& [85] MATHEMATICAL BOLD CAPITAL A..MATHEMATICAL ITALIC SMALL G 1D456..1D49C ; N # L& [71] MATHEMATICAL ITALIC SMALL I..MATHEMATICAL SCRIPT CAPITAL A 1D49E..1D49F ; N # Lu [2] MATHEMATICAL SCRIPT CAPITAL C..MATHEMATICAL SCRIPT CAPITAL D @@ -2431,6 +2491,11 @@ FFFD ; A # So REPLACEMENT CHARACTER 1E4EB ; N # Lm NAG MUNDARI SIGN OJOD 1E4EC..1E4EF ; N # Mn [4] NAG MUNDARI SIGN MUHOR..NAG MUNDARI SIGN SUTUH 1E4F0..1E4F9 ; N # Nd [10] NAG MUNDARI DIGIT ZERO..NAG MUNDARI DIGIT NINE +1E5D0..1E5ED ; N # Lo [30] OL ONAL LETTER O..OL ONAL LETTER EG +1E5EE..1E5EF ; N # Mn [2] OL ONAL SIGN MU..OL ONAL SIGN IKIR +1E5F0 ; N # Lo OL ONAL SIGN HODDOND +1E5F1..1E5FA ; N # Nd [10] OL ONAL DIGIT ZERO..OL ONAL DIGIT NINE +1E5FF ; N # Po OL ONAL ABBREVIATION SIGN 1E7E0..1E7E6 ; N # Lo [7] ETHIOPIC SYLLABLE HHYA..ETHIOPIC SYLLABLE HHYO 1E7E8..1E7EB ; N # Lo [4] ETHIOPIC SYLLABLE GURAGE HHWA..ETHIOPIC SYLLABLE HHWE 1E7ED..1E7EE ; N # Lo [2] ETHIOPIC SYLLABLE GURAGE MWI..ETHIOPIC SYLLABLE GURAGE MWEE @@ -2574,7 +2639,8 @@ FFFD ; A # So REPLACEMENT CHARACTER 1F850..1F859 ; N # So [10] LEFTWARDS SANS-SERIF ARROW..UP DOWN SANS-SERIF ARROW 1F860..1F887 ; N # So [40] WIDE-HEADED LEFTWARDS LIGHT BARB ARROW..WIDE-HEADED SOUTH WEST VERY HEAVY BARB ARROW 1F890..1F8AD ; N # So [30] LEFTWARDS TRIANGLE ARROWHEAD..WHITE ARROW SHAFT WIDTH TWO THIRDS -1F8B0..1F8B1 ; N # So [2] ARROW POINTING UPWARDS THEN NORTH WEST..ARROW POINTING RIGHTWARDS THEN CURVING SOUTH WEST +1F8B0..1F8BB ; N # So [12] ARROW POINTING UPWARDS THEN NORTH WEST..SOUTH WEST ARROW FROM BAR +1F8C0..1F8C1 ; N # So [2] LEFTWARDS ARROW FROM DOWNWARDS ARROW..RIGHTWARDS ARROW FROM DOWNWARDS ARROW 1F900..1F90B ; N # So [12] CIRCLED CROSS FORMEE WITH FOUR DOTS..DOWNWARD FACING NOTCHED HOOK WITH DOT 1F90C..1F93A ; W # So [47] PINCHED FINGERS..FENCER 1F93B ; N # So MODERN PENTATHLON @@ -2584,14 +2650,13 @@ FFFD ; A # So REPLACEMENT CHARACTER 1FA00..1FA53 ; N # So [84] NEUTRAL CHESS KING..BLACK CHESS KNIGHT-BISHOP 1FA60..1FA6D ; N # So [14] XIANGQI RED GENERAL..XIANGQI BLACK SOLDIER 1FA70..1FA7C ; W # So [13] BALLET SHOES..CRUTCH -1FA80..1FA88 ; W # So [9] YO-YO..FLUTE -1FA90..1FABD ; W # So [46] RINGED PLANET..WING -1FABF..1FAC5 ; W # So [7] GOOSE..PERSON WITH CROWN -1FACE..1FADB ; W # So [14] MOOSE..PEA POD -1FAE0..1FAE8 ; W # So [9] MELTING FACE..SHAKING FACE +1FA80..1FA89 ; W # So [10] YO-YO..HARP +1FA8F..1FAC6 ; W # So [56] SHOVEL..FINGERPRINT +1FACE..1FADC ; W # So [15] MOOSE..ROOT VEGETABLE +1FADF..1FAE9 ; W # So [11] SPLATTER..FACE WITH BAGS UNDER EYES 1FAF0..1FAF8 ; W # So [9] HAND WITH INDEX FINGER AND THUMB CROSSED..RIGHTWARDS PUSHING HAND 1FB00..1FB92 ; N # So [147] BLOCK SEXTANT-1..UPPER HALF INVERSE MEDIUM SHADE AND LOWER HALF BLOCK -1FB94..1FBCA ; N # So [55] LEFT HALF INVERSE MEDIUM SHADE AND RIGHT HALF BLOCK..WHITE UP-POINTING CHEVRON +1FB94..1FBEF ; N # So [92] LEFT HALF INVERSE MEDIUM SHADE AND RIGHT HALF BLOCK..TOP LEFT JUSTIFIED LOWER RIGHT QUARTER BLACK CIRCLE 1FBF0..1FBF9 ; N # Nd [10] SEGMENTED DIGIT ZERO..SEGMENTED DIGIT NINE 20000..2A6DF ; W # Lo [42720] CJK UNIFIED IDEOGRAPH-20000..CJK UNIFIED IDEOGRAPH-2A6DF 2A6E0..2A6FF ; W # Cn [32] <reserved-2A6E0>..<reserved-2A6FF> diff --git a/Master/texmf-dist/tex/generic/unicode-data/GraphemeBreakProperty.txt b/Master/texmf-dist/tex/generic/unicode-data/GraphemeBreakProperty.txt index 12453cbdb54..a863397ddab 100644 --- a/Master/texmf-dist/tex/generic/unicode-data/GraphemeBreakProperty.txt +++ b/Master/texmf-dist/tex/generic/unicode-data/GraphemeBreakProperty.txt @@ -1,8 +1,8 @@ -# GraphemeBreakProperty-15.1.0.txt -# Date: 2023-01-05, 20:34:41 GMT -# © 2023 Unicode®, Inc. +# GraphemeBreakProperty-16.0.0.txt +# Date: 2024-05-31, 18:09:38 GMT +# © 2024 Unicode®, Inc. # Unicode and the Unicode Logo are registered trademarks of Unicode, Inc. in the U.S. and other countries. -# For terms of use, see https://www.unicode.org/terms_of_use.html +# For terms of use and license, see https://www.unicode.org/terms_of_use.html # # Unicode Character Database # For documentation, see https://www.unicode.org/reports/tr44/ @@ -27,6 +27,7 @@ 110BD ; Prepend # Cf KAITHI NUMBER SIGN 110CD ; Prepend # Cf KAITHI NUMBER SIGN ABOVE 111C2..111C3 ; Prepend # Lo [2] SHARADA SIGN JIHVAMULIYA..SHARADA SIGN UPADHMANIYA +113D1 ; Prepend # Lo TULU-TIGALARI REPHA 1193F ; Prepend # Lo DIVES AKURU PREFIXED NASAL SIGN 11941 ; Prepend # Lo DIVES AKURU INITIAL RA 11A3A ; Prepend # Lo ZANABAZAR SQUARE CLUSTER-INITIAL LETTER RA @@ -34,7 +35,7 @@ 11D46 ; Prepend # Lo MASARAM GONDI REPHA 11F02 ; Prepend # Lo KAWI SIGN REPHA -# Total code points: 27 +# Total code points: 28 # ================================================ @@ -106,7 +107,7 @@ E01F0..E0FFF ; Control # Cn [3600] <reserved-E01F0>..<reserved-E0FFF> 0825..0827 ; Extend # Mn [3] SAMARITAN VOWEL SIGN SHORT A..SAMARITAN VOWEL SIGN U 0829..082D ; Extend # Mn [5] SAMARITAN VOWEL SIGN LONG I..SAMARITAN MARK NEQUDAA 0859..085B ; Extend # Mn [3] MANDAIC AFFRICATION MARK..MANDAIC GEMINATION MARK -0898..089F ; Extend # Mn [8] ARABIC SMALL HIGH WORD AL-JUZ..ARABIC HALF MADDA OVER MADDA +0897..089F ; Extend # Mn [9] ARABIC PEPET..ARABIC HALF MADDA OVER MADDA 08CA..08E1 ; Extend # Mn [24] ARABIC SMALL HIGH FARSI YEH..ARABIC SMALL HIGH SIGN SAFHA 08E3..0902 ; Extend # Mn [32] ARABIC TURNED DAMMA BELOW..DEVANAGARI SIGN ANUSVARA 093A ; Extend # Mn DEVANAGARI VOWEL SIGN OE @@ -163,8 +164,11 @@ E01F0..E0FFF ; Control # Cn [3600] <reserved-E01F0>..<reserved-E0FFF> 0C81 ; Extend # Mn KANNADA SIGN CANDRABINDU 0CBC ; Extend # Mn KANNADA SIGN NUKTA 0CBF ; Extend # Mn KANNADA VOWEL SIGN I +0CC0 ; Extend # Mc KANNADA VOWEL SIGN II 0CC2 ; Extend # Mc KANNADA VOWEL SIGN UU 0CC6 ; Extend # Mn KANNADA VOWEL SIGN E +0CC7..0CC8 ; Extend # Mc [2] KANNADA VOWEL SIGN EE..KANNADA VOWEL SIGN AI +0CCA..0CCB ; Extend # Mc [2] KANNADA VOWEL SIGN O..KANNADA VOWEL SIGN OO 0CCC..0CCD ; Extend # Mn [2] KANNADA VOWEL SIGN AU..KANNADA SIGN VIRAMA 0CD5..0CD6 ; Extend # Mc [2] KANNADA LENGTH MARK..KANNADA AI LENGTH MARK 0CE2..0CE3 ; Extend # Mn [2] KANNADA VOWEL SIGN VOCALIC L..KANNADA VOWEL SIGN VOCALIC LL @@ -210,7 +214,9 @@ E01F0..E0FFF ; Control # Cn [3600] <reserved-E01F0>..<reserved-E0FFF> 109D ; Extend # Mn MYANMAR VOWEL SIGN AITON AI 135D..135F ; Extend # Mn [3] ETHIOPIC COMBINING GEMINATION AND VOWEL LENGTH MARK..ETHIOPIC COMBINING GEMINATION MARK 1712..1714 ; Extend # Mn [3] TAGALOG VOWEL SIGN I..TAGALOG SIGN VIRAMA +1715 ; Extend # Mc TAGALOG SIGN PAMUDPOD 1732..1733 ; Extend # Mn [2] HANUNOO VOWEL SIGN I..HANUNOO VOWEL SIGN U +1734 ; Extend # Mc HANUNOO SIGN PAMUDPOD 1752..1753 ; Extend # Mn [2] BUHID VOWEL SIGN I..BUHID VOWEL SIGN U 1772..1773 ; Extend # Mn [2] TAGBANWA VOWEL SIGN I..TAGBANWA VOWEL SIGN U 17B4..17B5 ; Extend # Mn [2] KHMER VOWEL INHERENT AQ..KHMER VOWEL INHERENT AA @@ -242,17 +248,22 @@ E01F0..E0FFF ; Control # Cn [3600] <reserved-E01F0>..<reserved-E0FFF> 1B34 ; Extend # Mn BALINESE SIGN REREKAN 1B35 ; Extend # Mc BALINESE VOWEL SIGN TEDUNG 1B36..1B3A ; Extend # Mn [5] BALINESE VOWEL SIGN ULU..BALINESE VOWEL SIGN RA REPA +1B3B ; Extend # Mc BALINESE VOWEL SIGN RA REPA TEDUNG 1B3C ; Extend # Mn BALINESE VOWEL SIGN LA LENGA +1B3D ; Extend # Mc BALINESE VOWEL SIGN LA LENGA TEDUNG 1B42 ; Extend # Mn BALINESE VOWEL SIGN PEPET +1B43..1B44 ; Extend # Mc [2] BALINESE VOWEL SIGN PEPET TEDUNG..BALINESE ADEG ADEG 1B6B..1B73 ; Extend # Mn [9] BALINESE MUSICAL SYMBOL COMBINING TEGEH..BALINESE MUSICAL SYMBOL COMBINING GONG 1B80..1B81 ; Extend # Mn [2] SUNDANESE SIGN PANYECEK..SUNDANESE SIGN PANGLAYAR 1BA2..1BA5 ; Extend # Mn [4] SUNDANESE CONSONANT SIGN PANYAKRA..SUNDANESE VOWEL SIGN PANYUKU 1BA8..1BA9 ; Extend # Mn [2] SUNDANESE VOWEL SIGN PAMEPET..SUNDANESE VOWEL SIGN PANEULEUNG +1BAA ; Extend # Mc SUNDANESE SIGN PAMAAEH 1BAB..1BAD ; Extend # Mn [3] SUNDANESE SIGN VIRAMA..SUNDANESE CONSONANT SIGN PASANGAN WA 1BE6 ; Extend # Mn BATAK SIGN TOMPI 1BE8..1BE9 ; Extend # Mn [2] BATAK VOWEL SIGN PAKPAK E..BATAK VOWEL SIGN EE 1BED ; Extend # Mn BATAK VOWEL SIGN KARO O 1BEF..1BF1 ; Extend # Mn [3] BATAK VOWEL SIGN U FOR SIMALUNGUN SA..BATAK CONSONANT SIGN H +1BF2..1BF3 ; Extend # Mc [2] BATAK PANGOLAT..BATAK PANONGONAN 1C2C..1C33 ; Extend # Mn [8] LEPCHA VOWEL SIGN E..LEPCHA CONSONANT SIGN T 1C36..1C37 ; Extend # Mn [2] LEPCHA SIGN RAN..LEPCHA SIGN NUKTA 1CD0..1CD2 ; Extend # Mn [3] VEDIC TONE KARSHANA..VEDIC TONE PRENKHA @@ -289,10 +300,12 @@ A8E0..A8F1 ; Extend # Mn [18] COMBINING DEVANAGARI DIGIT ZERO..COMBINING DEV A8FF ; Extend # Mn DEVANAGARI VOWEL SIGN AY A926..A92D ; Extend # Mn [8] KAYAH LI VOWEL UE..KAYAH LI TONE CALYA PLOPHU A947..A951 ; Extend # Mn [11] REJANG VOWEL SIGN I..REJANG CONSONANT SIGN R +A953 ; Extend # Mc REJANG VIRAMA A980..A982 ; Extend # Mn [3] JAVANESE SIGN PANYANGGA..JAVANESE SIGN LAYAR A9B3 ; Extend # Mn JAVANESE SIGN CECAK TELU A9B6..A9B9 ; Extend # Mn [4] JAVANESE VOWEL SIGN WULU..JAVANESE VOWEL SIGN SUKU MENDUT A9BC..A9BD ; Extend # Mn [2] JAVANESE VOWEL SIGN PEPET..JAVANESE CONSONANT SIGN KERET +A9C0 ; Extend # Mc JAVANESE PANGKON A9E5 ; Extend # Mn MYANMAR SIGN SHAN SAW AA29..AA2E ; Extend # Mn [6] CHAM VOWEL SIGN AA..CHAM VOWEL SIGN OE AA31..AA32 ; Extend # Mn [2] CHAM VOWEL SIGN AU..CHAM VOWEL SIGN UE @@ -324,8 +337,9 @@ FF9E..FF9F ; Extend # Lm [2] HALFWIDTH KATAKANA VOICED SOUND MARK..HALFWIDT 10A3F ; Extend # Mn KHAROSHTHI VIRAMA 10AE5..10AE6 ; Extend # Mn [2] MANICHAEAN ABBREVIATION MARK ABOVE..MANICHAEAN ABBREVIATION MARK BELOW 10D24..10D27 ; Extend # Mn [4] HANIFI ROHINGYA SIGN HARBAHAY..HANIFI ROHINGYA SIGN TASSI +10D69..10D6D ; Extend # Mn [5] GARAY VOWEL SIGN E..GARAY CONSONANT NASALIZATION MARK 10EAB..10EAC ; Extend # Mn [2] YEZIDI COMBINING HAMZA MARK..YEZIDI COMBINING MADDA MARK -10EFD..10EFF ; Extend # Mn [3] ARABIC SMALL LOW WORD SAKTA..ARABIC SMALL LOW WORD MADDA +10EFC..10EFF ; Extend # Mn [4] ARABIC COMBINING ALEF OVERLAY..ARABIC SMALL LOW WORD MADDA 10F46..10F50 ; Extend # Mn [11] SOGDIAN COMBINING DOT BELOW..SOGDIAN COMBINING STROKE BELOW 10F82..10F85 ; Extend # Mn [4] OLD UYGHUR COMBINING DOT ABOVE..OLD UYGHUR COMBINING TWO DOTS BELOW 11001 ; Extend # Mn BRAHMI SIGN ANUSVARA @@ -342,10 +356,12 @@ FF9E..FF9F ; Extend # Lm [2] HALFWIDTH KATAKANA VOICED SOUND MARK..HALFWIDT 11173 ; Extend # Mn MAHAJANI SIGN NUKTA 11180..11181 ; Extend # Mn [2] SHARADA SIGN CANDRABINDU..SHARADA SIGN ANUSVARA 111B6..111BE ; Extend # Mn [9] SHARADA VOWEL SIGN U..SHARADA VOWEL SIGN O +111C0 ; Extend # Mc SHARADA SIGN VIRAMA 111C9..111CC ; Extend # Mn [4] SHARADA SANDHI MARK..SHARADA EXTRA SHORT VOWEL MARK 111CF ; Extend # Mn SHARADA SIGN INVERTED CANDRABINDU 1122F..11231 ; Extend # Mn [3] KHOJKI VOWEL SIGN U..KHOJKI VOWEL SIGN AI 11234 ; Extend # Mn KHOJKI SIGN ANUSVARA +11235 ; Extend # Mc KHOJKI SIGN VIRAMA 11236..11237 ; Extend # Mn [2] KHOJKI SIGN NUKTA..KHOJKI SIGN SHADDA 1123E ; Extend # Mn KHOJKI SIGN SUKUN 11241 ; Extend # Mn KHOJKI VOWEL SIGN VOCALIC R @@ -355,9 +371,20 @@ FF9E..FF9F ; Extend # Lm [2] HALFWIDTH KATAKANA VOICED SOUND MARK..HALFWIDT 1133B..1133C ; Extend # Mn [2] COMBINING BINDU BELOW..GRANTHA SIGN NUKTA 1133E ; Extend # Mc GRANTHA VOWEL SIGN AA 11340 ; Extend # Mn GRANTHA VOWEL SIGN II +1134D ; Extend # Mc GRANTHA SIGN VIRAMA 11357 ; Extend # Mc GRANTHA AU LENGTH MARK 11366..1136C ; Extend # Mn [7] COMBINING GRANTHA DIGIT ZERO..COMBINING GRANTHA DIGIT SIX 11370..11374 ; Extend # Mn [5] COMBINING GRANTHA LETTER A..COMBINING GRANTHA LETTER PA +113B8 ; Extend # Mc TULU-TIGALARI VOWEL SIGN AA +113BB..113C0 ; Extend # Mn [6] TULU-TIGALARI VOWEL SIGN U..TULU-TIGALARI VOWEL SIGN VOCALIC LL +113C2 ; Extend # Mc TULU-TIGALARI VOWEL SIGN EE +113C5 ; Extend # Mc TULU-TIGALARI VOWEL SIGN AI +113C7..113C9 ; Extend # Mc [3] TULU-TIGALARI VOWEL SIGN OO..TULU-TIGALARI AU LENGTH MARK +113CE ; Extend # Mn TULU-TIGALARI SIGN VIRAMA +113CF ; Extend # Mc TULU-TIGALARI SIGN LOOPED VIRAMA +113D0 ; Extend # Mn TULU-TIGALARI CONJOINER +113D2 ; Extend # Mn TULU-TIGALARI GEMINATION MARK +113E1..113E2 ; Extend # Mn [2] TULU-TIGALARI VEDIC TONE SVARITA..TULU-TIGALARI VEDIC TONE ANUDATTA 11438..1143F ; Extend # Mn [8] NEWA VOWEL SIGN U..NEWA VOWEL SIGN AI 11442..11444 ; Extend # Mn [3] NEWA SIGN VIRAMA..NEWA SIGN ANUSVARA 11446 ; Extend # Mn NEWA SIGN NUKTA @@ -379,14 +406,17 @@ FF9E..FF9F ; Extend # Lm [2] HALFWIDTH KATAKANA VOICED SOUND MARK..HALFWIDT 116AB ; Extend # Mn TAKRI SIGN ANUSVARA 116AD ; Extend # Mn TAKRI VOWEL SIGN AA 116B0..116B5 ; Extend # Mn [6] TAKRI VOWEL SIGN U..TAKRI VOWEL SIGN AU +116B6 ; Extend # Mc TAKRI SIGN VIRAMA 116B7 ; Extend # Mn TAKRI SIGN NUKTA -1171D..1171F ; Extend # Mn [3] AHOM CONSONANT SIGN MEDIAL LA..AHOM CONSONANT SIGN MEDIAL LIGATING RA +1171D ; Extend # Mn AHOM CONSONANT SIGN MEDIAL LA +1171F ; Extend # Mn AHOM CONSONANT SIGN MEDIAL LIGATING RA 11722..11725 ; Extend # Mn [4] AHOM VOWEL SIGN I..AHOM VOWEL SIGN UU 11727..1172B ; Extend # Mn [5] AHOM VOWEL SIGN AW..AHOM SIGN KILLER 1182F..11837 ; Extend # Mn [9] DOGRA VOWEL SIGN U..DOGRA SIGN ANUSVARA 11839..1183A ; Extend # Mn [2] DOGRA SIGN VIRAMA..DOGRA SIGN NUKTA 11930 ; Extend # Mc DIVES AKURU VOWEL SIGN AA 1193B..1193C ; Extend # Mn [2] DIVES AKURU SIGN ANUSVARA..DIVES AKURU SIGN CANDRABINDU +1193D ; Extend # Mc DIVES AKURU SIGN HALANTA 1193E ; Extend # Mn DIVES AKURU VIRAMA 11943 ; Extend # Mn DIVES AKURU SIGN NUKTA 119D4..119D7 ; Extend # Mn [4] NANDINAGARI VOWEL SIGN U..NANDINAGARI VOWEL SIGN VOCALIC RR @@ -419,20 +449,25 @@ FF9E..FF9F ; Extend # Lm [2] HALFWIDTH KATAKANA VOICED SOUND MARK..HALFWIDT 11F00..11F01 ; Extend # Mn [2] KAWI SIGN CANDRABINDU..KAWI SIGN ANUSVARA 11F36..11F3A ; Extend # Mn [5] KAWI VOWEL SIGN I..KAWI VOWEL SIGN VOCALIC R 11F40 ; Extend # Mn KAWI VOWEL SIGN EU +11F41 ; Extend # Mc KAWI SIGN KILLER 11F42 ; Extend # Mn KAWI CONJOINER +11F5A ; Extend # Mn KAWI SIGN NUKTA 13440 ; Extend # Mn EGYPTIAN HIEROGLYPH MIRROR HORIZONTALLY 13447..13455 ; Extend # Mn [15] EGYPTIAN HIEROGLYPH MODIFIER DAMAGED AT TOP START..EGYPTIAN HIEROGLYPH MODIFIER DAMAGED +1611E..16129 ; Extend # Mn [12] GURUNG KHEMA VOWEL SIGN AA..GURUNG KHEMA VOWEL LENGTH MARK +1612D..1612F ; Extend # Mn [3] GURUNG KHEMA SIGN ANUSVARA..GURUNG KHEMA SIGN THOLHOMA 16AF0..16AF4 ; Extend # Mn [5] BASSA VAH COMBINING HIGH TONE..BASSA VAH COMBINING HIGH-LOW TONE 16B30..16B36 ; Extend # Mn [7] PAHAWH HMONG MARK CIM TUB..PAHAWH HMONG MARK CIM TAUM 16F4F ; Extend # Mn MIAO SIGN CONSONANT MODIFIER BAR 16F8F..16F92 ; Extend # Mn [4] MIAO TONE RIGHT..MIAO TONE BELOW 16FE4 ; Extend # Mn KHITAN SMALL SCRIPT FILLER +16FF0..16FF1 ; Extend # Mc [2] VIETNAMESE ALTERNATE READING MARK CA..VIETNAMESE ALTERNATE READING MARK NHAY 1BC9D..1BC9E ; Extend # Mn [2] DUPLOYAN THICK LETTER SELECTOR..DUPLOYAN DOUBLE MARK 1CF00..1CF2D ; Extend # Mn [46] ZNAMENNY COMBINING MARK GORAZDO NIZKO S KRYZHEM ON LEFT..ZNAMENNY COMBINING MARK KRYZH ON LEFT 1CF30..1CF46 ; Extend # Mn [23] ZNAMENNY COMBINING TONAL RANGE MARK MRACHNO..ZNAMENNY PRIZNAK MODIFIER ROG -1D165 ; Extend # Mc MUSICAL SYMBOL COMBINING STEM +1D165..1D166 ; Extend # Mc [2] MUSICAL SYMBOL COMBINING STEM..MUSICAL SYMBOL COMBINING SPRECHGESANG STEM 1D167..1D169 ; Extend # Mn [3] MUSICAL SYMBOL COMBINING TREMOLO-1..MUSICAL SYMBOL COMBINING TREMOLO-3 -1D16E..1D172 ; Extend # Mc [5] MUSICAL SYMBOL COMBINING FLAG-1..MUSICAL SYMBOL COMBINING FLAG-5 +1D16D..1D172 ; Extend # Mc [6] MUSICAL SYMBOL COMBINING AUGMENTATION DOT..MUSICAL SYMBOL COMBINING FLAG-5 1D17B..1D182 ; Extend # Mn [8] MUSICAL SYMBOL COMBINING ACCENT..MUSICAL SYMBOL COMBINING LOURE 1D185..1D18B ; Extend # Mn [7] MUSICAL SYMBOL COMBINING DOIT..MUSICAL SYMBOL COMBINING TRIPLE TONGUE 1D1AA..1D1AD ; Extend # Mn [4] MUSICAL SYMBOL COMBINING DOWN BOW..MUSICAL SYMBOL COMBINING SNAP PIZZICATO @@ -453,13 +488,14 @@ FF9E..FF9F ; Extend # Lm [2] HALFWIDTH KATAKANA VOICED SOUND MARK..HALFWIDT 1E2AE ; Extend # Mn TOTO SIGN RISING TONE 1E2EC..1E2EF ; Extend # Mn [4] WANCHO TONE TUP..WANCHO TONE KOINI 1E4EC..1E4EF ; Extend # Mn [4] NAG MUNDARI SIGN MUHOR..NAG MUNDARI SIGN SUTUH +1E5EE..1E5EF ; Extend # Mn [2] OL ONAL SIGN MU..OL ONAL SIGN IKIR 1E8D0..1E8D6 ; Extend # Mn [7] MENDE KIKAKUI COMBINING NUMBER TEENS..MENDE KIKAKUI COMBINING NUMBER MILLIONS 1E944..1E94A ; Extend # Mn [7] ADLAM ALIF LENGTHENER..ADLAM NUKTA 1F3FB..1F3FF ; Extend # Sk [5] EMOJI MODIFIER FITZPATRICK TYPE-1-2..EMOJI MODIFIER FITZPATRICK TYPE-6 E0020..E007F ; Extend # Cf [96] TAG SPACE..CANCEL TAG E0100..E01EF ; Extend # Mn [240] VARIATION SELECTOR-17..VARIATION SELECTOR-256 -# Total code points: 2130 +# Total code points: 2198 # ================================================ @@ -496,10 +532,8 @@ E0100..E01EF ; Extend # Mn [240] VARIATION SELECTOR-17..VARIATION SELECTOR-256 0C41..0C44 ; SpacingMark # Mc [4] TELUGU VOWEL SIGN U..TELUGU VOWEL SIGN VOCALIC RR 0C82..0C83 ; SpacingMark # Mc [2] KANNADA SIGN ANUSVARA..KANNADA SIGN VISARGA 0CBE ; SpacingMark # Mc KANNADA VOWEL SIGN AA -0CC0..0CC1 ; SpacingMark # Mc [2] KANNADA VOWEL SIGN II..KANNADA VOWEL SIGN U +0CC1 ; SpacingMark # Mc KANNADA VOWEL SIGN U 0CC3..0CC4 ; SpacingMark # Mc [2] KANNADA VOWEL SIGN VOCALIC R..KANNADA VOWEL SIGN VOCALIC RR -0CC7..0CC8 ; SpacingMark # Mc [2] KANNADA VOWEL SIGN EE..KANNADA VOWEL SIGN AI -0CCA..0CCB ; SpacingMark # Mc [2] KANNADA VOWEL SIGN O..KANNADA VOWEL SIGN OO 0CF3 ; SpacingMark # Mc KANNADA SIGN COMBINING ANUSVARA ABOVE RIGHT 0D02..0D03 ; SpacingMark # Mc [2] MALAYALAM SIGN ANUSVARA..MALAYALAM SIGN VISARGA 0D3F..0D40 ; SpacingMark # Mc [2] MALAYALAM VOWEL SIGN I..MALAYALAM VOWEL SIGN II @@ -517,8 +551,6 @@ E0100..E01EF ; Extend # Mn [240] VARIATION SELECTOR-17..VARIATION SELECTOR-256 103B..103C ; SpacingMark # Mc [2] MYANMAR CONSONANT SIGN MEDIAL YA..MYANMAR CONSONANT SIGN MEDIAL RA 1056..1057 ; SpacingMark # Mc [2] MYANMAR VOWEL SIGN VOCALIC R..MYANMAR VOWEL SIGN VOCALIC RR 1084 ; SpacingMark # Mc MYANMAR VOWEL SIGN SHAN E -1715 ; SpacingMark # Mc TAGALOG SIGN PAMUDPOD -1734 ; SpacingMark # Mc HANUNOO SIGN PAMUDPOD 17B6 ; SpacingMark # Mc KHMER VOWEL SIGN AA 17BE..17C5 ; SpacingMark # Mc [8] KHMER VOWEL SIGN OE..KHMER VOWEL SIGN AU 17C7..17C8 ; SpacingMark # Mc [2] KHMER SIGN REAHMUK..KHMER SIGN YUUKALEAPINTU @@ -531,17 +563,13 @@ E0100..E01EF ; Extend # Mn [240] VARIATION SELECTOR-17..VARIATION SELECTOR-256 1A57 ; SpacingMark # Mc TAI THAM CONSONANT SIGN LA TANG LAI 1A6D..1A72 ; SpacingMark # Mc [6] TAI THAM VOWEL SIGN OY..TAI THAM VOWEL SIGN THAM AI 1B04 ; SpacingMark # Mc BALINESE SIGN BISAH -1B3B ; SpacingMark # Mc BALINESE VOWEL SIGN RA REPA TEDUNG -1B3D..1B41 ; SpacingMark # Mc [5] BALINESE VOWEL SIGN LA LENGA TEDUNG..BALINESE VOWEL SIGN TALING REPA TEDUNG -1B43..1B44 ; SpacingMark # Mc [2] BALINESE VOWEL SIGN PEPET TEDUNG..BALINESE ADEG ADEG +1B3E..1B41 ; SpacingMark # Mc [4] BALINESE VOWEL SIGN TALING..BALINESE VOWEL SIGN TALING REPA TEDUNG 1B82 ; SpacingMark # Mc SUNDANESE SIGN PANGWISAD 1BA1 ; SpacingMark # Mc SUNDANESE CONSONANT SIGN PAMINGKAL 1BA6..1BA7 ; SpacingMark # Mc [2] SUNDANESE VOWEL SIGN PANAELAENG..SUNDANESE VOWEL SIGN PANOLONG -1BAA ; SpacingMark # Mc SUNDANESE SIGN PAMAAEH 1BE7 ; SpacingMark # Mc BATAK VOWEL SIGN E 1BEA..1BEC ; SpacingMark # Mc [3] BATAK VOWEL SIGN I..BATAK VOWEL SIGN O 1BEE ; SpacingMark # Mc BATAK VOWEL SIGN U -1BF2..1BF3 ; SpacingMark # Mc [2] BATAK PANGOLAT..BATAK PANONGONAN 1C24..1C2B ; SpacingMark # Mc [8] LEPCHA SUBJOINED LETTER YA..LEPCHA VOWEL SIGN UU 1C34..1C35 ; SpacingMark # Mc [2] LEPCHA CONSONANT SIGN NYIN-DO..LEPCHA CONSONANT SIGN KANG 1CE1 ; SpacingMark # Mc VEDIC TONE ATHARVAVEDIC INDEPENDENT SVARITA @@ -550,11 +578,11 @@ A823..A824 ; SpacingMark # Mc [2] SYLOTI NAGRI VOWEL SIGN A..SYLOTI NAGRI V A827 ; SpacingMark # Mc SYLOTI NAGRI VOWEL SIGN OO A880..A881 ; SpacingMark # Mc [2] SAURASHTRA SIGN ANUSVARA..SAURASHTRA SIGN VISARGA A8B4..A8C3 ; SpacingMark # Mc [16] SAURASHTRA CONSONANT SIGN HAARU..SAURASHTRA VOWEL SIGN AU -A952..A953 ; SpacingMark # Mc [2] REJANG CONSONANT SIGN H..REJANG VIRAMA +A952 ; SpacingMark # Mc REJANG CONSONANT SIGN H A983 ; SpacingMark # Mc JAVANESE SIGN WIGNYAN A9B4..A9B5 ; SpacingMark # Mc [2] JAVANESE VOWEL SIGN TARUNG..JAVANESE VOWEL SIGN TOLONG A9BA..A9BB ; SpacingMark # Mc [2] JAVANESE VOWEL SIGN TALING..JAVANESE VOWEL SIGN DIRGA MURE -A9BE..A9C0 ; SpacingMark # Mc [3] JAVANESE CONSONANT SIGN PENGKAL..JAVANESE PANGKON +A9BE..A9BF ; SpacingMark # Mc [2] JAVANESE CONSONANT SIGN PENGKAL..JAVANESE CONSONANT SIGN CAKRA AA2F..AA30 ; SpacingMark # Mc [2] CHAM VOWEL SIGN O..CHAM VOWEL SIGN AI AA33..AA34 ; SpacingMark # Mc [2] CHAM CONSONANT SIGN YA..CHAM CONSONANT SIGN RA AA4D ; SpacingMark # Mc CHAM CONSONANT SIGN FINAL H @@ -574,18 +602,20 @@ ABEC ; SpacingMark # Mc MEETEI MAYEK LUM IYEK 11145..11146 ; SpacingMark # Mc [2] CHAKMA VOWEL SIGN AA..CHAKMA VOWEL SIGN EI 11182 ; SpacingMark # Mc SHARADA SIGN VISARGA 111B3..111B5 ; SpacingMark # Mc [3] SHARADA VOWEL SIGN AA..SHARADA VOWEL SIGN II -111BF..111C0 ; SpacingMark # Mc [2] SHARADA VOWEL SIGN AU..SHARADA SIGN VIRAMA +111BF ; SpacingMark # Mc SHARADA VOWEL SIGN AU 111CE ; SpacingMark # Mc SHARADA VOWEL SIGN PRISHTHAMATRA E 1122C..1122E ; SpacingMark # Mc [3] KHOJKI VOWEL SIGN AA..KHOJKI VOWEL SIGN II 11232..11233 ; SpacingMark # Mc [2] KHOJKI VOWEL SIGN O..KHOJKI VOWEL SIGN AU -11235 ; SpacingMark # Mc KHOJKI SIGN VIRAMA 112E0..112E2 ; SpacingMark # Mc [3] KHUDAWADI VOWEL SIGN AA..KHUDAWADI VOWEL SIGN II 11302..11303 ; SpacingMark # Mc [2] GRANTHA SIGN ANUSVARA..GRANTHA SIGN VISARGA 1133F ; SpacingMark # Mc GRANTHA VOWEL SIGN I 11341..11344 ; SpacingMark # Mc [4] GRANTHA VOWEL SIGN U..GRANTHA VOWEL SIGN VOCALIC RR 11347..11348 ; SpacingMark # Mc [2] GRANTHA VOWEL SIGN EE..GRANTHA VOWEL SIGN AI -1134B..1134D ; SpacingMark # Mc [3] GRANTHA VOWEL SIGN OO..GRANTHA SIGN VIRAMA +1134B..1134C ; SpacingMark # Mc [2] GRANTHA VOWEL SIGN OO..GRANTHA VOWEL SIGN AU 11362..11363 ; SpacingMark # Mc [2] GRANTHA VOWEL SIGN VOCALIC L..GRANTHA VOWEL SIGN VOCALIC LL +113B9..113BA ; SpacingMark # Mc [2] TULU-TIGALARI VOWEL SIGN I..TULU-TIGALARI VOWEL SIGN II +113CA ; SpacingMark # Mc TULU-TIGALARI SIGN CANDRA ANUNASIKA +113CC..113CD ; SpacingMark # Mc [2] TULU-TIGALARI SIGN ANUSVARA..TULU-TIGALARI SIGN VISARGA 11435..11437 ; SpacingMark # Mc [3] NEWA VOWEL SIGN AA..NEWA VOWEL SIGN II 11440..11441 ; SpacingMark # Mc [2] NEWA VOWEL SIGN O..NEWA VOWEL SIGN AU 11445 ; SpacingMark # Mc NEWA SIGN VISARGA @@ -602,13 +632,12 @@ ABEC ; SpacingMark # Mc MEETEI MAYEK LUM IYEK 1163E ; SpacingMark # Mc MODI SIGN VISARGA 116AC ; SpacingMark # Mc TAKRI SIGN VISARGA 116AE..116AF ; SpacingMark # Mc [2] TAKRI VOWEL SIGN I..TAKRI VOWEL SIGN II -116B6 ; SpacingMark # Mc TAKRI SIGN VIRAMA +1171E ; SpacingMark # Mc AHOM CONSONANT SIGN MEDIAL RA 11726 ; SpacingMark # Mc AHOM VOWEL SIGN E 1182C..1182E ; SpacingMark # Mc [3] DOGRA VOWEL SIGN AA..DOGRA VOWEL SIGN II 11838 ; SpacingMark # Mc DOGRA SIGN VISARGA 11931..11935 ; SpacingMark # Mc [5] DIVES AKURU VOWEL SIGN I..DIVES AKURU VOWEL SIGN E 11937..11938 ; SpacingMark # Mc [2] DIVES AKURU VOWEL SIGN AI..DIVES AKURU VOWEL SIGN O -1193D ; SpacingMark # Mc DIVES AKURU SIGN HALANTA 11940 ; SpacingMark # Mc DIVES AKURU MEDIAL YA 11942 ; SpacingMark # Mc DIVES AKURU MEDIAL RA 119D1..119D3 ; SpacingMark # Mc [3] NANDINAGARI VOWEL SIGN AA..NANDINAGARI VOWEL SIGN II @@ -629,13 +658,10 @@ ABEC ; SpacingMark # Mc MEETEI MAYEK LUM IYEK 11F03 ; SpacingMark # Mc KAWI SIGN VISARGA 11F34..11F35 ; SpacingMark # Mc [2] KAWI VOWEL SIGN AA..KAWI VOWEL SIGN ALTERNATE AA 11F3E..11F3F ; SpacingMark # Mc [2] KAWI VOWEL SIGN E..KAWI VOWEL SIGN AI -11F41 ; SpacingMark # Mc KAWI SIGN KILLER +1612A..1612C ; SpacingMark # Mc [3] GURUNG KHEMA CONSONANT SIGN MEDIAL YA..GURUNG KHEMA CONSONANT SIGN MEDIAL HA 16F51..16F87 ; SpacingMark # Mc [55] MIAO SIGN ASPIRATION..MIAO VOWEL SIGN UI -16FF0..16FF1 ; SpacingMark # Mc [2] VIETNAMESE ALTERNATE READING MARK CA..VIETNAMESE ALTERNATE READING MARK NHAY -1D166 ; SpacingMark # Mc MUSICAL SYMBOL COMBINING SPRECHGESANG STEM -1D16D ; SpacingMark # Mc MUSICAL SYMBOL COMBINING AUGMENTATION DOT -# Total code points: 395 +# Total code points: 378 # ================================================ @@ -648,8 +674,10 @@ A960..A97C ; L # Lo [29] HANGUL CHOSEONG TIKEUT-MIEUM..HANGUL CHOSEONG SSANG 1160..11A7 ; V # Lo [72] HANGUL JUNGSEONG FILLER..HANGUL JUNGSEONG O-YAE D7B0..D7C6 ; V # Lo [23] HANGUL JUNGSEONG O-YEO..HANGUL JUNGSEONG ARAEA-E +16D63 ; V # Lo KIRAT RAI VOWEL SIGN AA +16D67..16D6A ; V # Lo [4] KIRAT RAI VOWEL SIGN E..KIRAT RAI VOWEL SIGN AU -# Total code points: 95 +# Total code points: 100 # ================================================ diff --git a/Master/texmf-dist/tex/generic/unicode-data/LineBreak.txt b/Master/texmf-dist/tex/generic/unicode-data/LineBreak.txt index b6bc6793927..3ce25821747 100644 --- a/Master/texmf-dist/tex/generic/unicode-data/LineBreak.txt +++ b/Master/texmf-dist/tex/generic/unicode-data/LineBreak.txt @@ -1,8 +1,8 @@ -# LineBreak-15.1.0.txt -# Date: 2023-07-28, 13:19:22 GMT [KW] -# © 2023 Unicode®, Inc. +# LineBreak-16.0.0.txt +# Date: 2024-07-29, 16:26:55 GMT +# © 2024 Unicode®, Inc. # Unicode and the Unicode Logo are registered trademarks of Unicode, Inc. in the U.S. and other countries. -# For terms of use, see https://www.unicode.org/terms_of_use.html +# For terms of use and license, see https://www.unicode.org/terms_of_use.html # # Unicode Character Database # For documentation, see https://www.unicode.org/reports/tr44/ @@ -280,7 +280,7 @@ 0888 ; AL # Sk ARABIC RAISED ROUND DOT 0889..088E ; AL # Lo [6] ARABIC LETTER NOON WITH INVERTED SMALL V..ARABIC VERTICAL TAIL 0890..0891 ; NU # Cf [2] ARABIC POUND MARK ABOVE..ARABIC PIASTRE MARK ABOVE -0898..089F ; CM # Mn [8] ARABIC SMALL HIGH WORD AL-JUZ..ARABIC HALF MADDA OVER MADDA +0897..089F ; CM # Mn [9] ARABIC PEPET..ARABIC HALF MADDA OVER MADDA 08A0..08C8 ; AL # Lo [41] ARABIC LETTER BEH WITH SMALL V BELOW..ARABIC LETTER GRAF 08C9 ; AL # Lm ARABIC SMALL FARSI YEH 08CA..08E1 ; CM # Mn [24] ARABIC SMALL HIGH FARSI YEH..ARABIC SMALL HIGH SIGN SAFHA @@ -748,7 +748,7 @@ 1980..19AB ; SA # Lo [44] NEW TAI LUE LETTER HIGH QA..NEW TAI LUE LETTER LOW SUA 19B0..19C9 ; SA # Lo [26] NEW TAI LUE VOWEL SIGN VOWEL SHORTENER..NEW TAI LUE TONE MARK-2 19D0..19D9 ; NU # Nd [10] NEW TAI LUE DIGIT ZERO..NEW TAI LUE DIGIT NINE -19DA ; SA # No NEW TAI LUE THAM DIGIT ONE +19DA ; NU # No NEW TAI LUE THAM DIGIT ONE 19DE..19DF ; SA # So [2] NEW TAI LUE SIGN LAE..NEW TAI LUE SIGN LAEV 19E0..19FF ; AL # So [32] KHMER SYMBOL PATHAMASAT..KHMER SYMBOL DAP-PRAM ROC 1A00..1A16 ; AL # Lo [23] BUGINESE LETTER KA..BUGINESE LETTER HA @@ -790,14 +790,15 @@ 1B43 ; CM # Mc BALINESE VOWEL SIGN PEPET TEDUNG 1B44 ; VI # Mc BALINESE ADEG ADEG 1B45..1B4C ; AK # Lo [8] BALINESE LETTER KAF SASAK..BALINESE LETTER ARCHAIC JNYA -1B50..1B59 ; ID # Nd [10] BALINESE DIGIT ZERO..BALINESE DIGIT NINE +1B4E..1B4F ; BA # Po [2] BALINESE INVERTED CARIK SIKI..BALINESE INVERTED CARIK PAREREN +1B50..1B59 ; AS # Nd [10] BALINESE DIGIT ZERO..BALINESE DIGIT NINE 1B5A..1B5B ; BA # Po [2] BALINESE PANTI..BALINESE PAMADA 1B5C ; ID # Po BALINESE WINDU 1B5D..1B60 ; BA # Po [4] BALINESE CARIK PAMUNGKAH..BALINESE PAMENENG 1B61..1B6A ; ID # So [10] BALINESE MUSICAL SYMBOL DONG..BALINESE MUSICAL SYMBOL DANG GEDE 1B6B..1B73 ; CM # Mn [9] BALINESE MUSICAL SYMBOL COMBINING TEGEH..BALINESE MUSICAL SYMBOL COMBINING GONG 1B74..1B7C ; ID # So [9] BALINESE MUSICAL SYMBOL RIGHT-HAND OPEN DUG..BALINESE MUSICAL SYMBOL LEFT-HAND OPEN PING -1B7D..1B7E ; BA # Po [2] BALINESE PANTI LANTANG..BALINESE PAMADA LANTANG +1B7D..1B7F ; BA # Po [3] BALINESE PANTI LANTANG..BALINESE PANTI BAWAK 1B80..1B81 ; CM # Mn [2] SUNDANESE SIGN PANYECEK..SUNDANESE SIGN PANGLAYAR 1B82 ; CM # Mc SUNDANESE SIGN PANGWISAD 1B83..1BA0 ; AL # Lo [30] SUNDANESE LETTER A..SUNDANESE LETTER HA @@ -832,7 +833,7 @@ 1C5A..1C77 ; AL # Lo [30] OL CHIKI LETTER LA..OL CHIKI LETTER OH 1C78..1C7D ; AL # Lm [6] OL CHIKI MU TTUDDAG..OL CHIKI AHAD 1C7E..1C7F ; BA # Po [2] OL CHIKI PUNCTUATION MUCAAD..OL CHIKI PUNCTUATION DOUBLE MUCAAD -1C80..1C88 ; AL # Ll [9] CYRILLIC SMALL LETTER ROUNDED VE..CYRILLIC SMALL LETTER UNBLENDED UK +1C80..1C8A ; AL # L& [11] CYRILLIC SMALL LETTER ROUNDED VE..CYRILLIC SMALL LETTER TJE 1C90..1CBA ; AL # Lu [43] GEORGIAN MTAVRULI CAPITAL LETTER AN..GEORGIAN MTAVRULI CAPITAL LETTER AIN 1CBD..1CBF ; AL # Lu [3] GEORGIAN MTAVRULI CAPITAL LETTER AEN..GEORGIAN MTAVRULI CAPITAL LETTER LABIAL SIGN 1CC0..1CC7 ; AL # Po [8] SUNDANESE PUNCTUATION BINDU SURYA..SUNDANESE PUNCTUATION BINDU BA SATANGA @@ -1017,12 +1018,7 @@ 214C..214D ; AL # So [2] PER SIGN..AKTIESELSKAB 214E ; AL # Ll TURNED SMALL F 214F ; AL # So SYMBOL FOR SAMARITAN SOURCE -2150..2153 ; AL # No [4] VULGAR FRACTION ONE SEVENTH..VULGAR FRACTION ONE THIRD -2154..2155 ; AI # No [2] VULGAR FRACTION TWO THIRDS..VULGAR FRACTION ONE FIFTH -2156..215A ; AL # No [5] VULGAR FRACTION TWO FIFTHS..VULGAR FRACTION FIVE SIXTHS -215B ; AI # No VULGAR FRACTION ONE EIGHTH -215C..215D ; AL # No [2] VULGAR FRACTION THREE EIGHTHS..VULGAR FRACTION FIVE EIGHTHS -215E ; AI # No VULGAR FRACTION SEVEN EIGHTHS +2150..215E ; AI # No [15] VULGAR FRACTION ONE SEVENTH..VULGAR FRACTION SEVEN EIGHTHS 215F ; AL # No FRACTION NUMERATOR ONE 2160..216B ; AI # Nl [12] ROMAN NUMERAL ONE..ROMAN NUMERAL TWELVE 216C..216F ; AL # Nl [4] ROMAN NUMERAL FIFTY..ROMAN NUMERAL ONE THOUSAND @@ -1133,7 +1129,7 @@ 23E2..23EF ; AL # So [14] WHITE TRAPEZIUM..BLACK RIGHT-POINTING TRIANGLE WITH DOUBLE VERTICAL BAR 23F0..23F3 ; ID # So [4] ALARM CLOCK..HOURGLASS WITH FLOWING SAND 23F4..23FF ; AL # So [12] BLACK MEDIUM LEFT-POINTING TRIANGLE..OBSERVER EYE SYMBOL -2400..2426 ; AL # So [39] SYMBOL FOR NULL..SYMBOL FOR SUBSTITUTE FORM TWO +2400..2429 ; AL # So [42] SYMBOL FOR NULL..SYMBOL FOR DELETE MEDIUM SHADE FORM 2440..244A ; AL # So [11] OCR HOOK..OCR DOUBLE BACKSLASH 2460..249B ; AI # No [60] CIRCLED DIGIT ONE..NUMBER TWENTY FULL STOP 249C..24E9 ; AI # So [78] PARENTHESIZED LATIN SMALL LETTER A..CIRCLED LATIN SMALL LETTER Z @@ -1407,13 +1403,13 @@ 2E52 ; AL # Po TIRONIAN SIGN CAPITAL ET 2E53..2E54 ; EX # Po [2] MEDIEVAL EXCLAMATION MARK..MEDIEVAL QUESTION MARK 2E55 ; OP # Ps LEFT SQUARE BRACKET WITH STROKE -2E56 ; CL # Pe RIGHT SQUARE BRACKET WITH STROKE +2E56 ; CP # Pe RIGHT SQUARE BRACKET WITH STROKE 2E57 ; OP # Ps LEFT SQUARE BRACKET WITH DOUBLE STROKE -2E58 ; CL # Pe RIGHT SQUARE BRACKET WITH DOUBLE STROKE +2E58 ; CP # Pe RIGHT SQUARE BRACKET WITH DOUBLE STROKE 2E59 ; OP # Ps TOP HALF LEFT PARENTHESIS -2E5A ; CL # Pe TOP HALF RIGHT PARENTHESIS +2E5A ; CP # Pe TOP HALF RIGHT PARENTHESIS 2E5B ; OP # Ps BOTTOM HALF LEFT PARENTHESIS -2E5C ; CL # Pe BOTTOM HALF RIGHT PARENTHESIS +2E5C ; CP # Pe BOTTOM HALF RIGHT PARENTHESIS 2E5D ; BA # Pd OBLIQUE HYPHEN 2E80..2E99 ; ID # So [26] CJK RADICAL REPEAT..CJK RADICAL RAP 2E9B..2EF3 ; ID # So [89] CJK RADICAL CHOKE..CJK RADICAL C-SIMPLIFIED TURTLE @@ -1519,7 +1515,7 @@ 3192..3195 ; ID # No [4] IDEOGRAPHIC ANNOTATION ONE MARK..IDEOGRAPHIC ANNOTATION FOUR MARK 3196..319F ; ID # So [10] IDEOGRAPHIC ANNOTATION TOP MARK..IDEOGRAPHIC ANNOTATION MAN MARK 31A0..31BF ; ID # Lo [32] BOPOMOFO LETTER BU..BOPOMOFO LETTER AH -31C0..31E3 ; ID # So [36] CJK STROKE T..CJK STROKE Q +31C0..31E5 ; ID # So [38] CJK STROKE T..CJK STROKE SZP 31EF ; ID # So IDEOGRAPHIC DESCRIPTION CHARACTER SUBTRACTION 31F0..31FF ; CJ # Lo [16] KATAKANA LETTER SMALL KU..KATAKANA LETTER SMALL RO 3200..321E ; ID # So [31] PARENTHESIZED HANGUL KIYEOK..PARENTHESIZED KOREAN CHARACTER O HU @@ -1578,10 +1574,10 @@ A788 ; AL # Lm MODIFIER LETTER LOW CIRCUMFLEX ACCENT A789..A78A ; AL # Sk [2] MODIFIER LETTER COLON..MODIFIER LETTER SHORT EQUALS SIGN A78B..A78E ; AL # L& [4] LATIN CAPITAL LETTER SALTILLO..LATIN SMALL LETTER L WITH RETROFLEX HOOK AND BELT A78F ; AL # Lo LATIN LETTER SINOLOGICAL DOT -A790..A7CA ; AL # L& [59] LATIN CAPITAL LETTER N WITH DESCENDER..LATIN SMALL LETTER S WITH SHORT STROKE OVERLAY +A790..A7CD ; AL # L& [62] LATIN CAPITAL LETTER N WITH DESCENDER..LATIN SMALL LETTER S WITH DIAGONAL STROKE A7D0..A7D1 ; AL # L& [2] LATIN CAPITAL LETTER CLOSED INSULAR G..LATIN SMALL LETTER CLOSED INSULAR G A7D3 ; AL # Ll LATIN SMALL LETTER DOUBLE THORN -A7D5..A7D9 ; AL # L& [5] LATIN SMALL LETTER DOUBLE WYNN..LATIN SMALL LETTER SIGMOID S +A7D5..A7DC ; AL # L& [8] LATIN SMALL LETTER DOUBLE WYNN..LATIN CAPITAL LETTER LAMBDA WITH STROKE A7F2..A7F4 ; AL # Lm [3] MODIFIER LETTER CAPITAL C..MODIFIER LETTER CAPITAL Q A7F5..A7F6 ; AL # L& [2] LATIN CAPITAL LETTER REVERSED HALF H..LATIN SMALL LETTER REVERSED HALF H A7F7 ; AL # Lo LATIN EPIGRAPHIC LETTER SIDEWAYS I @@ -1643,7 +1639,7 @@ A9C1..A9C6 ; ID # Po [6] JAVANESE LEFT RERENGGAN..JAVANESE PADA WINDU A9C7..A9C9 ; BA # Po [3] JAVANESE PADA PANGKAT..JAVANESE PADA LUNGSI A9CA..A9CD ; ID # Po [4] JAVANESE PADA ADEG..JAVANESE TURNED PADA PISELEH A9CF ; BA # Lm JAVANESE PANGRANGKEP -A9D0..A9D9 ; ID # Nd [10] JAVANESE DIGIT ZERO..JAVANESE DIGIT NINE +A9D0..A9D9 ; AS # Nd [10] JAVANESE DIGIT ZERO..JAVANESE DIGIT NINE A9DE..A9DF ; ID # Po [2] JAVANESE PADA TIRTA TUMETES..JAVANESE PADA ISEN-ISEN A9E0..A9E4 ; SA # Lo [5] MYANMAR LETTER SHAN GHA..MYANMAR LETTER SHAN BHA A9E5 ; SA # Mn MYANMAR SIGN SHAN SAW @@ -1662,7 +1658,7 @@ AA43 ; CM # Mn CHAM CONSONANT SIGN FINAL NG AA44..AA4B ; BA # Lo [8] CHAM LETTER FINAL CH..CHAM LETTER FINAL SS AA4C ; CM # Mn CHAM CONSONANT SIGN FINAL M AA4D ; CM # Mc CHAM CONSONANT SIGN FINAL H -AA50..AA59 ; ID # Nd [10] CHAM DIGIT ZERO..CHAM DIGIT NINE +AA50..AA59 ; AS # Nd [10] CHAM DIGIT ZERO..CHAM DIGIT NINE AA5C ; ID # Po CHAM PUNCTUATION SPIRAL AA5D..AA5F ; BA # Po [3] CHAM PUNCTUATION DANDA..CHAM PUNCTUATION TRIPLE DANDA AA60..AA6F ; SA # Lo [16] MYANMAR LETTER KHAMTI GA..MYANMAR LETTER KHAMTI FA @@ -2552,14 +2548,26 @@ FDF0..FDFB ; AL # Lo [12] ARABIC LIGATURE SALLA USED AS KORANIC STOP SIGN FDFC ; PO # Sc RIAL SIGN FDFD..FDFF ; AL # So [3] ARABIC LIGATURE BISMILLAH AR-RAHMAN AR-RAHEEM..ARABIC LIGATURE AZZA WA JALL FE00..FE0F ; CM # Mn [16] VARIATION SELECTOR-1..VARIATION SELECTOR-16 -FE10 ; IS # Po PRESENTATION FORM FOR VERTICAL COMMA -FE11..FE12 ; CL # Po [2] PRESENTATION FORM FOR VERTICAL IDEOGRAPHIC COMMA..PRESENTATION FORM FOR VERTICAL IDEOGRAPHIC FULL STOP -FE13..FE14 ; IS # Po [2] PRESENTATION FORM FOR VERTICAL COLON..PRESENTATION FORM FOR VERTICAL SEMICOLON +FE10..FE12 ; CL # Po [3] PRESENTATION FORM FOR VERTICAL COMMA..PRESENTATION FORM FOR VERTICAL IDEOGRAPHIC FULL STOP +FE13..FE14 ; NS # Po [2] PRESENTATION FORM FOR VERTICAL COLON..PRESENTATION FORM FOR VERTICAL SEMICOLON FE15..FE16 ; EX # Po [2] PRESENTATION FORM FOR VERTICAL EXCLAMATION MARK..PRESENTATION FORM FOR VERTICAL QUESTION MARK FE17 ; OP # Ps PRESENTATION FORM FOR VERTICAL LEFT WHITE LENTICULAR BRACKET FE18 ; CL # Pe PRESENTATION FORM FOR VERTICAL RIGHT WHITE LENTICULAR BRAKCET FE19 ; IN # Po PRESENTATION FORM FOR VERTICAL HORIZONTAL ELLIPSIS -FE20..FE2F ; CM # Mn [16] COMBINING LIGATURE LEFT HALF..COMBINING CYRILLIC TITLO RIGHT HALF +FE20 ; GL # Mn COMBINING LIGATURE LEFT HALF +FE21 ; CM # Mn COMBINING LIGATURE RIGHT HALF +FE22 ; GL # Mn COMBINING DOUBLE TILDE LEFT HALF +FE23 ; CM # Mn COMBINING DOUBLE TILDE RIGHT HALF +FE24 ; GL # Mn COMBINING MACRON LEFT HALF +FE25 ; CM # Mn COMBINING MACRON RIGHT HALF +FE26..FE27 ; GL # Mn [2] COMBINING CONJOINING MACRON..COMBINING LIGATURE LEFT HALF BELOW +FE28 ; CM # Mn COMBINING LIGATURE RIGHT HALF BELOW +FE29 ; GL # Mn COMBINING TILDE LEFT HALF BELOW +FE2A ; CM # Mn COMBINING TILDE RIGHT HALF BELOW +FE2B ; GL # Mn COMBINING MACRON LEFT HALF BELOW +FE2C ; CM # Mn COMBINING MACRON RIGHT HALF BELOW +FE2D..FE2E ; GL # Mn [2] COMBINING CONJOINING MACRON BELOW..COMBINING CYRILLIC TITLO LEFT HALF +FE2F ; CM # Mn COMBINING CYRILLIC TITLO RIGHT HALF FE30 ; ID # Po PRESENTATION FORM FOR VERTICAL TWO DOT LEADER FE31..FE32 ; ID # Pd [2] PRESENTATION FORM FOR VERTICAL EM DASH..PRESENTATION FORM FOR VERTICAL EN DASH FE33..FE34 ; ID # Pc [2] PRESENTATION FORM FOR VERTICAL LOW LINE..PRESENTATION FORM FOR VERTICAL WAVY LOW LINE @@ -2721,6 +2729,7 @@ FFFD ; AI # So REPLACEMENT CHARACTER 105A3..105B1 ; AL # Ll [15] VITHKUQI SMALL LETTER HA..VITHKUQI SMALL LETTER RE 105B3..105B9 ; AL # Ll [7] VITHKUQI SMALL LETTER SE..VITHKUQI SMALL LETTER XE 105BB..105BC ; AL # Ll [2] VITHKUQI SMALL LETTER Y..VITHKUQI SMALL LETTER ZE +105C0..105F3 ; AL # Lo [52] TODHRI LETTER A..TODHRI LETTER OO 10600..10736 ; AL # Lo [311] LINEAR A SIGN AB001..LINEAR A SIGN A664 10740..10755 ; AL # Lo [22] LINEAR A SIGN A701 A..LINEAR A SIGN A732 JE 10760..10767 ; AL # Lo [8] LINEAR A SIGN A800..LINEAR A SIGN A807 @@ -2795,12 +2804,23 @@ FFFD ; AI # So REPLACEMENT CHARACTER 10D00..10D23 ; AL # Lo [36] HANIFI ROHINGYA LETTER A..HANIFI ROHINGYA MARK NA KHONNA 10D24..10D27 ; CM # Mn [4] HANIFI ROHINGYA SIGN HARBAHAY..HANIFI ROHINGYA SIGN TASSI 10D30..10D39 ; NU # Nd [10] HANIFI ROHINGYA DIGIT ZERO..HANIFI ROHINGYA DIGIT NINE +10D40..10D49 ; NU # Nd [10] GARAY DIGIT ZERO..GARAY DIGIT NINE +10D4A..10D4D ; AL # Lo [4] GARAY VOWEL SIGN A..GARAY VOWEL SIGN EE +10D4E ; AL # Lm GARAY VOWEL LENGTH MARK +10D4F ; AL # Lo GARAY SUKUN +10D50..10D65 ; AL # Lu [22] GARAY CAPITAL LETTER A..GARAY CAPITAL LETTER OLD NA +10D69..10D6D ; CM # Mn [5] GARAY VOWEL SIGN E..GARAY CONSONANT NASALIZATION MARK +10D6E ; BA # Pd GARAY HYPHEN +10D6F ; AL # Lm GARAY REDUPLICATION MARK +10D70..10D85 ; AL # Ll [22] GARAY SMALL LETTER A..GARAY SMALL LETTER OLD NA +10D8E..10D8F ; AL # Sm [2] GARAY PLUS SIGN..GARAY MINUS SIGN 10E60..10E7E ; AL # No [31] RUMI DIGIT ONE..RUMI FRACTION TWO THIRDS 10E80..10EA9 ; AL # Lo [42] YEZIDI LETTER ELIF..YEZIDI LETTER ET 10EAB..10EAC ; CM # Mn [2] YEZIDI COMBINING HAMZA MARK..YEZIDI COMBINING MADDA MARK 10EAD ; BA # Pd YEZIDI HYPHENATION MARK 10EB0..10EB1 ; AL # Lo [2] YEZIDI LETTER LAM WITH DOT ABOVE..YEZIDI LETTER YOT WITH CIRCUMFLEX ABOVE -10EFD..10EFF ; CM # Mn [3] ARABIC SMALL LOW WORD SAKTA..ARABIC SMALL LOW WORD MADDA +10EC2..10EC4 ; AL # Lo [3] ARABIC LETTER DAL WITH TWO DOTS VERTICALLY BELOW..ARABIC LETTER KAF WITH TWO DOTS VERTICALLY BELOW +10EFC..10EFF ; CM # Mn [4] ARABIC COMBINING ALEF OVERLAY..ARABIC SMALL LOW WORD MADDA 10F00..10F1C ; AL # Lo [29] OLD SOGDIAN LETTER ALEPH..OLD SOGDIAN LETTER FINAL TAW WITH VERTICAL TAIL 10F1D..10F26 ; AL # No [10] OLD SOGDIAN NUMBER ONE..OLD SOGDIAN FRACTION ONE HALF 10F27 ; AL # Lo OLD SOGDIAN LIGATURE AYIN-DALETH @@ -2929,6 +2949,27 @@ FFFD ; AI # So REPLACEMENT CHARACTER 11362..11363 ; CM # Mc [2] GRANTHA VOWEL SIGN VOCALIC L..GRANTHA VOWEL SIGN VOCALIC LL 11366..1136C ; CM # Mn [7] COMBINING GRANTHA DIGIT ZERO..COMBINING GRANTHA DIGIT SIX 11370..11374 ; CM # Mn [5] COMBINING GRANTHA LETTER A..COMBINING GRANTHA LETTER PA +11380..11389 ; AS # Lo [10] TULU-TIGALARI LETTER A..TULU-TIGALARI LETTER VOCALIC LL +1138B ; AS # Lo TULU-TIGALARI LETTER EE +1138E ; AS # Lo TULU-TIGALARI LETTER AI +11390..11391 ; AS # Lo [2] TULU-TIGALARI LETTER OO..TULU-TIGALARI LETTER AU +11392..113B5 ; AK # Lo [36] TULU-TIGALARI LETTER KA..TULU-TIGALARI LETTER LLLA +113B7 ; ID # Lo TULU-TIGALARI SIGN AVAGRAHA +113B8..113BA ; CM # Mc [3] TULU-TIGALARI VOWEL SIGN AA..TULU-TIGALARI VOWEL SIGN II +113BB..113C0 ; CM # Mn [6] TULU-TIGALARI VOWEL SIGN U..TULU-TIGALARI VOWEL SIGN VOCALIC LL +113C2 ; CM # Mc TULU-TIGALARI VOWEL SIGN EE +113C5 ; CM # Mc TULU-TIGALARI VOWEL SIGN AI +113C7..113CA ; CM # Mc [4] TULU-TIGALARI VOWEL SIGN OO..TULU-TIGALARI SIGN CANDRA ANUNASIKA +113CC..113CD ; CM # Mc [2] TULU-TIGALARI SIGN ANUSVARA..TULU-TIGALARI SIGN VISARGA +113CE ; CM # Mn TULU-TIGALARI SIGN VIRAMA +113CF ; CM # Mc TULU-TIGALARI SIGN LOOPED VIRAMA +113D0 ; VI # Mn TULU-TIGALARI CONJOINER +113D1 ; AP # Lo TULU-TIGALARI REPHA +113D2 ; CM # Mn TULU-TIGALARI GEMINATION MARK +113D3 ; ID # Lo TULU-TIGALARI SIGN PLUTA +113D4..113D5 ; ID # Po [2] TULU-TIGALARI DANDA..TULU-TIGALARI DOUBLE DANDA +113D7..113D8 ; ID # Po [2] TULU-TIGALARI SIGN OM PUSHPIKA..TULU-TIGALARI SIGN SHRII PUSHPIKA +113E1..113E2 ; CM # Mn [2] TULU-TIGALARI VEDIC TONE SVARITA..TULU-TIGALARI VEDIC TONE ANUDATTA 11400..11434 ; AL # Lo [53] NEWA LETTER A..NEWA LETTER HA 11435..11437 ; CM # Mc [3] NEWA VOWEL SIGN AA..NEWA VOWEL SIGN II 11438..1143F ; CM # Mn [8] NEWA VOWEL SIGN U..NEWA VOWEL SIGN AI @@ -2994,8 +3035,11 @@ FFFD ; AI # So REPLACEMENT CHARACTER 116B8 ; AL # Lo TAKRI LETTER ARCHAIC KHA 116B9 ; AL # Po TAKRI ABBREVIATION SIGN 116C0..116C9 ; NU # Nd [10] TAKRI DIGIT ZERO..TAKRI DIGIT NINE +116D0..116E3 ; NU # Nd [20] MYANMAR PAO DIGIT ZERO..MYANMAR EASTERN PWO KAREN DIGIT NINE 11700..1171A ; SA # Lo [27] AHOM LETTER KA..AHOM LETTER ALTERNATE BA -1171D..1171F ; SA # Mn [3] AHOM CONSONANT SIGN MEDIAL LA..AHOM CONSONANT SIGN MEDIAL LIGATING RA +1171D ; SA # Mn AHOM CONSONANT SIGN MEDIAL LA +1171E ; SA # Mc AHOM CONSONANT SIGN MEDIAL RA +1171F ; SA # Mn AHOM CONSONANT SIGN MEDIAL LIGATING RA 11720..11721 ; SA # Mc [2] AHOM VOWEL SIGN A..AHOM VOWEL SIGN AA 11722..11725 ; SA # Mn [4] AHOM VOWEL SIGN I..AHOM VOWEL SIGN UU 11726 ; SA # Mc AHOM VOWEL SIGN E @@ -3031,7 +3075,7 @@ FFFD ; AI # So REPLACEMENT CHARACTER 11942 ; CM # Mc DIVES AKURU MEDIAL RA 11943 ; CM # Mn DIVES AKURU SIGN NUKTA 11944..11946 ; BA # Po [3] DIVES AKURU DOUBLE DANDA..DIVES AKURU END OF TEXT MARK -11950..11959 ; ID # Nd [10] DIVES AKURU DIGIT ZERO..DIVES AKURU DIGIT NINE +11950..11959 ; AS # Nd [10] DIVES AKURU DIGIT ZERO..DIVES AKURU DIGIT NINE 119A0..119A7 ; AL # Lo [8] NANDINAGARI LETTER A..NANDINAGARI LETTER VOCALIC RR 119AA..119D0 ; AL # Lo [39] NANDINAGARI LETTER E..NANDINAGARI LETTER RRA 119D1..119D3 ; CM # Mc [3] NANDINAGARI VOWEL SIGN AA..NANDINAGARI VOWEL SIGN II @@ -3071,6 +3115,9 @@ FFFD ; AI # So REPLACEMENT CHARACTER 11AB0..11ABF ; AL # Lo [16] CANADIAN SYLLABICS NATTILIK HI..CANADIAN SYLLABICS SPA 11AC0..11AF8 ; AL # Lo [57] PAU CIN HAU LETTER PA..PAU CIN HAU GLOTTAL STOP FINAL 11B00..11B09 ; BB # Po [10] DEVANAGARI HEAD MARK..DEVANAGARI SIGN MINDU +11BC0..11BE0 ; AL # Lo [33] SUNUWAR LETTER DEVI..SUNUWAR LETTER KLOKO +11BE1 ; AL # Po SUNUWAR SIGN PVO +11BF0..11BF9 ; NU # Nd [10] SUNUWAR DIGIT ZERO..SUNUWAR DIGIT NINE 11C00..11C08 ; AL # Lo [9] BHAIKSUKI LETTER A..BHAIKSUKI LETTER VOCALIC L 11C0A..11C2E ; AL # Lo [37] BHAIKSUKI LETTER E..BHAIKSUKI LETTER HA 11C2F ; CM # Mc BHAIKSUKI VOWEL SIGN AA @@ -3132,6 +3179,7 @@ FFFD ; AI # So REPLACEMENT CHARACTER 11F43..11F44 ; BA # Po [2] KAWI DANDA..KAWI DOUBLE DANDA 11F45..11F4F ; ID # Po [11] KAWI PUNCTUATION SECTION MARKER..KAWI PUNCTUATION CLOSING SPIRAL 11F50..11F59 ; AS # Nd [10] KAWI DIGIT ZERO..KAWI DIGIT NINE +11F5A ; CM # Mn KAWI SIGN NUKTA 11FB0 ; AL # Lo LISU LETTER YHA 11FC0..11FD4 ; AL # No [21] TAMIL FRACTION ONE THREE-HUNDRED-AND-TWENTIETH..TAMIL FRACTION DOWNSCALING FACTOR KIIZH 11FD5..11FDC ; AL # So [8] TAMIL SIGN NEL..TAMIL SIGN MUKKURUNI @@ -3170,10 +3218,16 @@ FFFD ; AI # So REPLACEMENT CHARACTER 13440 ; CM # Mn EGYPTIAN HIEROGLYPH MIRROR HORIZONTALLY 13441..13446 ; AL # Lo [6] EGYPTIAN HIEROGLYPH FULL BLANK..EGYPTIAN HIEROGLYPH WIDE LOST SIGN 13447..13455 ; CM # Mn [15] EGYPTIAN HIEROGLYPH MODIFIER DAMAGED AT TOP START..EGYPTIAN HIEROGLYPH MODIFIER DAMAGED +13460..143FA ; AL # Lo [3995] EGYPTIAN HIEROGLYPH-13460..EGYPTIAN HIEROGLYPH-143FA 14400..145CD ; AL # Lo [462] ANATOLIAN HIEROGLYPH A001..ANATOLIAN HIEROGLYPH A409 145CE ; OP # Lo ANATOLIAN HIEROGLYPH A410 BEGIN LOGOGRAM MARK 145CF ; CL # Lo ANATOLIAN HIEROGLYPH A410A END LOGOGRAM MARK 145D0..14646 ; AL # Lo [119] ANATOLIAN HIEROGLYPH A411..ANATOLIAN HIEROGLYPH A530 +16100..1611D ; AS # Lo [30] GURUNG KHEMA LETTER A..GURUNG KHEMA LETTER SA +1611E..16129 ; CM # Mn [12] GURUNG KHEMA VOWEL SIGN AA..GURUNG KHEMA VOWEL LENGTH MARK +1612A..1612C ; CM # Mc [3] GURUNG KHEMA CONSONANT SIGN MEDIAL YA..GURUNG KHEMA CONSONANT SIGN MEDIAL HA +1612D..1612F ; CM # Mn [3] GURUNG KHEMA SIGN ANUSVARA..GURUNG KHEMA SIGN THOLHOMA +16130..16139 ; AS # Nd [10] GURUNG KHEMA DIGIT ZERO..GURUNG KHEMA DIGIT NINE 16800..16A38 ; AL # Lo [569] BAMUM LETTER PHASE-A NGKUE MFON..BAMUM LETTER PHASE-F VUEQ 16A40..16A5E ; AL # Lo [31] MRO LETTER TA..MRO LETTER TEK 16A60..16A69 ; NU # Nd [10] MRO DIGIT ZERO..MRO DIGIT NINE @@ -3195,6 +3249,12 @@ FFFD ; AI # So REPLACEMENT CHARACTER 16B5B..16B61 ; AL # No [7] PAHAWH HMONG NUMBER TENS..PAHAWH HMONG NUMBER TRILLIONS 16B63..16B77 ; AL # Lo [21] PAHAWH HMONG SIGN VOS LUB..PAHAWH HMONG SIGN CIM NRES TOS 16B7D..16B8F ; AL # Lo [19] PAHAWH HMONG CLAN SIGN TSHEEJ..PAHAWH HMONG CLAN SIGN VWJ +16D40..16D42 ; AL # Lm [3] KIRAT RAI SIGN ANUSVARA..KIRAT RAI SIGN VISARGA +16D43..16D6A ; AL # Lo [40] KIRAT RAI LETTER A..KIRAT RAI VOWEL SIGN AU +16D6B..16D6C ; AL # Lm [2] KIRAT RAI SIGN VIRAMA..KIRAT RAI SIGN SAAT +16D6D ; AL # Po KIRAT RAI SIGN YUPI +16D6E..16D6F ; BA # Po [2] KIRAT RAI DANDA..KIRAT RAI DOUBLE DANDA +16D70..16D79 ; NU # Nd [10] KIRAT RAI DIGIT ZERO..KIRAT RAI DIGIT NINE 16E40..16E7F ; AL # L& [64] MEDEFAIDRIN CAPITAL LETTER M..MEDEFAIDRIN SMALL LETTER Y 16E80..16E96 ; AL # No [23] MEDEFAIDRIN DIGIT ZERO..MEDEFAIDRIN DIGIT THREE ALTERNATE FORM 16E97..16E98 ; BA # Po [2] MEDEFAIDRIN COMMA..MEDEFAIDRIN FULL STOP @@ -3213,6 +3273,7 @@ FFFD ; AI # So REPLACEMENT CHARACTER 17000..187F7 ; ID # Lo [6136] TANGUT IDEOGRAPH-17000..TANGUT IDEOGRAPH-187F7 18800..18AFF ; ID # Lo [768] TANGUT COMPONENT-001..TANGUT COMPONENT-768 18B00..18CD5 ; AL # Lo [470] KHITAN SMALL SCRIPT CHARACTER-18B00..KHITAN SMALL SCRIPT CHARACTER-18CD5 +18CFF ; AL # Lo KHITAN SMALL SCRIPT CHARACTER-18CFF 18D00..18D08 ; ID # Lo [9] TANGUT IDEOGRAPH-18D00..TANGUT IDEOGRAPH-18D08 1AFF0..1AFF3 ; AL # Lm [4] KATAKANA LETTER MINNAN TONE-2..KATAKANA LETTER MINNAN TONE-5 1AFF5..1AFFB ; AL # Lm [7] KATAKANA LETTER MINNAN TONE-7..KATAKANA LETTER MINNAN NASALIZED TONE-5 @@ -3232,6 +3293,9 @@ FFFD ; AI # So REPLACEMENT CHARACTER 1BC9D..1BC9E ; CM # Mn [2] DUPLOYAN THICK LETTER SELECTOR..DUPLOYAN DOUBLE MARK 1BC9F ; BA # Po DUPLOYAN PUNCTUATION CHINOOK FULL STOP 1BCA0..1BCA3 ; CM # Cf [4] SHORTHAND FORMAT LETTER OVERLAP..SHORTHAND FORMAT UP STEP +1CC00..1CCEF ; AL # So [240] UP-POINTING GO-KART..OUTLINED LATIN CAPITAL LETTER Z +1CCF0..1CCF9 ; NU # Nd [10] OUTLINED DIGIT ZERO..OUTLINED DIGIT NINE +1CD00..1CEB3 ; AL # So [436] BLOCK OCTANT-3..BLACK RIGHT TRIANGLE CARET 1CF00..1CF2D ; CM # Mn [46] ZNAMENNY COMBINING MARK GORAZDO NIZKO S KRYZHEM ON LEFT..ZNAMENNY COMBINING MARK KRYZH ON LEFT 1CF30..1CF46 ; CM # Mn [23] ZNAMENNY COMBINING TONAL RANGE MARK MRACHNO..ZNAMENNY PRIZNAK MODIFIER ROG 1CF50..1CFC3 ; AL # So [116] ZNAMENNY NEUME KRYUK..ZNAMENNY NEUME PAUK @@ -3337,6 +3401,11 @@ FFFD ; AI # So REPLACEMENT CHARACTER 1E4EB ; AL # Lm NAG MUNDARI SIGN OJOD 1E4EC..1E4EF ; CM # Mn [4] NAG MUNDARI SIGN MUHOR..NAG MUNDARI SIGN SUTUH 1E4F0..1E4F9 ; NU # Nd [10] NAG MUNDARI DIGIT ZERO..NAG MUNDARI DIGIT NINE +1E5D0..1E5ED ; AL # Lo [30] OL ONAL LETTER O..OL ONAL LETTER EG +1E5EE..1E5EF ; CM # Mn [2] OL ONAL SIGN MU..OL ONAL SIGN IKIR +1E5F0 ; AL # Lo OL ONAL SIGN HODDOND +1E5F1..1E5FA ; NU # Nd [10] OL ONAL DIGIT ZERO..OL ONAL DIGIT NINE +1E5FF ; AL # Po OL ONAL ABBREVIATION SIGN 1E7E0..1E7E6 ; AL # Lo [7] ETHIOPIC SYLLABLE HHYA..ETHIOPIC SYLLABLE HHYO 1E7E8..1E7EB ; AL # Lo [4] ETHIOPIC SYLLABLE GURAGE HHWA..ETHIOPIC SYLLABLE HHWE 1E7ED..1E7EE ; AL # Lo [2] ETHIOPIC SYLLABLE GURAGE MWI..ETHIOPIC SYLLABLE GURAGE MWEE @@ -3404,14 +3473,13 @@ FFFD ; AI # So REPLACEMENT CHARACTER 1F0D1..1F0F5 ; ID # So [37] PLAYING CARD ACE OF CLUBS..PLAYING CARD TRUMP-21 1F0F6..1F0FF ; ID # Cn [10] <reserved-1F0F6>..<reserved-1F0FF> 1F100..1F10C ; AI # No [13] DIGIT ZERO FULL STOP..DINGBAT NEGATIVE CIRCLED SANS-SERIF DIGIT ZERO -1F10D..1F10F ; ID # So [3] CIRCLED ZERO WITH SLASH..CIRCLED DOLLAR SIGN WITH OVERLAID BACKSLASH +1F10D..1F10F ; AL # So [3] CIRCLED ZERO WITH SLASH..CIRCLED DOLLAR SIGN WITH OVERLAID BACKSLASH 1F110..1F12D ; AI # So [30] PARENTHESIZED LATIN CAPITAL LETTER A..CIRCLED CD 1F12E..1F12F ; AL # So [2] CIRCLED WZ..COPYLEFT SYMBOL 1F130..1F169 ; AI # So [58] SQUARED LATIN CAPITAL LETTER A..NEGATIVE CIRCLED LATIN CAPITAL LETTER Z -1F16A..1F16C ; AL # So [3] RAISED MC SIGN..RAISED MR SIGN -1F16D..1F16F ; ID # So [3] CIRCLED CC..CIRCLED HUMAN FIGURE +1F16A..1F16F ; AL # So [6] RAISED MC SIGN..CIRCLED HUMAN FIGURE 1F170..1F1AC ; AI # So [61] NEGATIVE SQUARED LATIN CAPITAL LETTER A..SQUARED VOD -1F1AD ; ID # So MASK WORK SYMBOL +1F1AD ; AL # So MASK WORK SYMBOL 1F1AE..1F1E5 ; ID # Cn [56] <reserved-1F1AE>..<reserved-1F1E5> 1F1E6..1F1FF ; RI # So [26] REGIONAL INDICATOR SYMBOL LETTER A..REGIONAL INDICATOR SYMBOL LETTER Z 1F200..1F202 ; ID # So [3] SQUARE HIRAGANA HOKA..SQUARED KATAKANA SA @@ -3521,17 +3589,12 @@ FFFD ; AI # So REPLACEMENT CHARACTER 1F7F0 ; ID # So HEAVY EQUALS SIGN 1F7F1..1F7FF ; ID # Cn [15] <reserved-1F7F1>..<reserved-1F7FF> 1F800..1F80B ; AL # So [12] LEFTWARDS ARROW WITH SMALL TRIANGLE ARROWHEAD..DOWNWARDS ARROW WITH LARGE TRIANGLE ARROWHEAD -1F80C..1F80F ; ID # Cn [4] <reserved-1F80C>..<reserved-1F80F> 1F810..1F847 ; AL # So [56] LEFTWARDS ARROW WITH SMALL EQUILATERAL ARROWHEAD..DOWNWARDS HEAVY ARROW -1F848..1F84F ; ID # Cn [8] <reserved-1F848>..<reserved-1F84F> 1F850..1F859 ; AL # So [10] LEFTWARDS SANS-SERIF ARROW..UP DOWN SANS-SERIF ARROW -1F85A..1F85F ; ID # Cn [6] <reserved-1F85A>..<reserved-1F85F> 1F860..1F887 ; AL # So [40] WIDE-HEADED LEFTWARDS LIGHT BARB ARROW..WIDE-HEADED SOUTH WEST VERY HEAVY BARB ARROW -1F888..1F88F ; ID # Cn [8] <reserved-1F888>..<reserved-1F88F> 1F890..1F8AD ; AL # So [30] LEFTWARDS TRIANGLE ARROWHEAD..WHITE ARROW SHAFT WIDTH TWO THIRDS -1F8AE..1F8AF ; ID # Cn [2] <reserved-1F8AE>..<reserved-1F8AF> -1F8B0..1F8B1 ; ID # So [2] ARROW POINTING UPWARDS THEN NORTH WEST..ARROW POINTING RIGHTWARDS THEN CURVING SOUTH WEST -1F8B2..1F8FF ; ID # Cn [78] <reserved-1F8B2>..<reserved-1F8FF> +1F8B0..1F8BB ; AL # So [12] ARROW POINTING UPWARDS THEN NORTH WEST..SOUTH WEST ARROW FROM BAR +1F8C0..1F8C1 ; AL # So [2] LEFTWARDS ARROW FROM DOWNWARDS ARROW..RIGHTWARDS ARROW FROM DOWNWARDS ARROW 1F900..1F90B ; AL # So [12] CIRCLED CROSS FORMEE WITH FOUR DOTS..DOWNWARD FACING NOTCHED HOOK WITH DOT 1F90C ; EB # So PINCHED FINGERS 1F90D..1F90E ; ID # So [2] WHITE HEART..BROWN HEART @@ -3563,21 +3626,20 @@ FFFD ; AI # So REPLACEMENT CHARACTER 1FA6E..1FA6F ; ID # Cn [2] <reserved-1FA6E>..<reserved-1FA6F> 1FA70..1FA7C ; ID # So [13] BALLET SHOES..CRUTCH 1FA7D..1FA7F ; ID # Cn [3] <reserved-1FA7D>..<reserved-1FA7F> -1FA80..1FA88 ; ID # So [9] YO-YO..FLUTE -1FA89..1FA8F ; ID # Cn [7] <reserved-1FA89>..<reserved-1FA8F> -1FA90..1FABD ; ID # So [46] RINGED PLANET..WING -1FABE ; ID # Cn <reserved-1FABE> -1FABF..1FAC2 ; ID # So [4] GOOSE..PEOPLE HUGGING +1FA80..1FA89 ; ID # So [10] YO-YO..HARP +1FA8A..1FA8E ; ID # Cn [5] <reserved-1FA8A>..<reserved-1FA8E> +1FA8F..1FAC2 ; ID # So [52] SHOVEL..PEOPLE HUGGING 1FAC3..1FAC5 ; EB # So [3] PREGNANT MAN..PERSON WITH CROWN -1FAC6..1FACD ; ID # Cn [8] <reserved-1FAC6>..<reserved-1FACD> -1FACE..1FADB ; ID # So [14] MOOSE..PEA POD -1FADC..1FADF ; ID # Cn [4] <reserved-1FADC>..<reserved-1FADF> -1FAE0..1FAE8 ; ID # So [9] MELTING FACE..SHAKING FACE -1FAE9..1FAEF ; ID # Cn [7] <reserved-1FAE9>..<reserved-1FAEF> +1FAC6 ; ID # So FINGERPRINT +1FAC7..1FACD ; ID # Cn [7] <reserved-1FAC7>..<reserved-1FACD> +1FACE..1FADC ; ID # So [15] MOOSE..ROOT VEGETABLE +1FADD..1FADE ; ID # Cn [2] <reserved-1FADD>..<reserved-1FADE> +1FADF..1FAE9 ; ID # So [11] SPLATTER..FACE WITH BAGS UNDER EYES +1FAEA..1FAEF ; ID # Cn [6] <reserved-1FAEA>..<reserved-1FAEF> 1FAF0..1FAF8 ; EB # So [9] HAND WITH INDEX FINGER AND THUMB CROSSED..RIGHTWARDS PUSHING HAND 1FAF9..1FAFF ; ID # Cn [7] <reserved-1FAF9>..<reserved-1FAFF> 1FB00..1FB92 ; AL # So [147] BLOCK SEXTANT-1..UPPER HALF INVERSE MEDIUM SHADE AND LOWER HALF BLOCK -1FB94..1FBCA ; AL # So [55] LEFT HALF INVERSE MEDIUM SHADE AND RIGHT HALF BLOCK..WHITE UP-POINTING CHEVRON +1FB94..1FBEF ; AL # So [92] LEFT HALF INVERSE MEDIUM SHADE AND RIGHT HALF BLOCK..TOP LEFT JUSTIFIED LOWER RIGHT QUARTER BLACK CIRCLE 1FBF0..1FBF9 ; NU # Nd [10] SEGMENTED DIGIT ZERO..SEGMENTED DIGIT NINE 1FC00..1FFFD ; ID # Cn [1022] <reserved-1FC00>..<reserved-1FFFD> 20000..2A6DF ; ID # Lo [42720] CJK UNIFIED IDEOGRAPH-20000..CJK UNIFIED IDEOGRAPH-2A6DF diff --git a/Master/texmf-dist/tex/generic/unicode-data/PropList.txt b/Master/texmf-dist/tex/generic/unicode-data/PropList.txt index 777e8a28818..fae2831e7a5 100644 --- a/Master/texmf-dist/tex/generic/unicode-data/PropList.txt +++ b/Master/texmf-dist/tex/generic/unicode-data/PropList.txt @@ -1,8 +1,8 @@ -# PropList-15.1.0.txt -# Date: 2023-08-01, 21:56:53 GMT -# © 2023 Unicode®, Inc. +# PropList-16.0.0.txt +# Date: 2024-05-31, 18:09:48 GMT +# © 2024 Unicode®, Inc. # Unicode and the Unicode Logo are registered trademarks of Unicode, Inc. in the U.S. and other countries. -# For terms of use, see https://www.unicode.org/terms_of_use.html +# For terms of use and license, see https://www.unicode.org/terms_of_use.html # # Unicode Character Database # For documentation, see https://www.unicode.org/reports/tr44/ @@ -62,9 +62,10 @@ FE31..FE32 ; Dash # Pd [2] PRESENTATION FORM FOR VERTICAL EM DASH..PRESENTA FE58 ; Dash # Pd SMALL EM DASH FE63 ; Dash # Pd SMALL HYPHEN-MINUS FF0D ; Dash # Pd FULLWIDTH HYPHEN-MINUS +10D6E ; Dash # Pd GARAY HYPHEN 10EAD ; Dash # Pd YEZIDI HYPHENATION MARK -# Total code points: 30 +# Total code points: 31 # ================================================ @@ -132,7 +133,8 @@ FF63 ; Quotation_Mark # Pe HALFWIDTH RIGHT CORNER BRACKET 0700..070A ; Terminal_Punctuation # Po [11] SYRIAC END OF PARAGRAPH..SYRIAC CONTRACTION 070C ; Terminal_Punctuation # Po SYRIAC HARKLEAN METOBELUS 07F8..07F9 ; Terminal_Punctuation # Po [2] NKO COMMA..NKO EXCLAMATION MARK -0830..083E ; Terminal_Punctuation # Po [15] SAMARITAN PUNCTUATION NEQUDAA..SAMARITAN PUNCTUATION ANNAAU +0830..0835 ; Terminal_Punctuation # Po [6] SAMARITAN PUNCTUATION NEQUDAA..SAMARITAN PUNCTUATION SHIYYAALAA +0837..083E ; Terminal_Punctuation # Po [8] SAMARITAN PUNCTUATION MELODIC QITSA..SAMARITAN PUNCTUATION ANNAAU 085E ; Terminal_Punctuation # Po MANDAIC PUNCTUATION 0964..0965 ; Terminal_Punctuation # Po [2] DEVANAGARI DANDA..DEVANAGARI DOUBLE DANDA 0E5A..0E5B ; Terminal_Punctuation # Po [2] THAI CHARACTER ANGKHANKHU..THAI CHARACTER KHOMUT @@ -149,13 +151,16 @@ FF63 ; Quotation_Mark # Pe HALFWIDTH RIGHT CORNER BRACKET 1808..1809 ; Terminal_Punctuation # Po [2] MONGOLIAN MANCHU COMMA..MONGOLIAN MANCHU FULL STOP 1944..1945 ; Terminal_Punctuation # Po [2] LIMBU EXCLAMATION MARK..LIMBU QUESTION MARK 1AA8..1AAB ; Terminal_Punctuation # Po [4] TAI THAM SIGN KAAN..TAI THAM SIGN SATKAANKUU +1B4E..1B4F ; Terminal_Punctuation # Po [2] BALINESE INVERTED CARIK SIKI..BALINESE INVERTED CARIK PAREREN 1B5A..1B5B ; Terminal_Punctuation # Po [2] BALINESE PANTI..BALINESE PAMADA 1B5D..1B5F ; Terminal_Punctuation # Po [3] BALINESE CARIK PAMUNGKAH..BALINESE CARIK PAREREN -1B7D..1B7E ; Terminal_Punctuation # Po [2] BALINESE PANTI LANTANG..BALINESE PAMADA LANTANG +1B7D..1B7F ; Terminal_Punctuation # Po [3] BALINESE PANTI LANTANG..BALINESE PANTI BAWAK 1C3B..1C3F ; Terminal_Punctuation # Po [5] LEPCHA PUNCTUATION TA-ROL..LEPCHA PUNCTUATION TSHOOK 1C7E..1C7F ; Terminal_Punctuation # Po [2] OL CHIKI PUNCTUATION MUCAAD..OL CHIKI PUNCTUATION DOUBLE MUCAAD +2024 ; Terminal_Punctuation # Po ONE DOT LEADER 203C..203D ; Terminal_Punctuation # Po [2] DOUBLE EXCLAMATION MARK..INTERROBANG 2047..2049 ; Terminal_Punctuation # Po [3] DOUBLE QUESTION MARK..EXCLAMATION QUESTION MARK +2CF9..2CFB ; Terminal_Punctuation # Po [3] COPTIC OLD NUBIAN FULL STOP..COPTIC OLD NUBIAN INDIRECT QUESTION MARK 2E2E ; Terminal_Punctuation # Po REVERSED QUESTION MARK 2E3C ; Terminal_Punctuation # Po STENOGRAPHIC FULL STOP 2E41 ; Terminal_Punctuation # Po REVERSED COMMA @@ -174,6 +179,8 @@ AA5D..AA5F ; Terminal_Punctuation # Po [3] CHAM PUNCTUATION DANDA..CHAM PUN AADF ; Terminal_Punctuation # Po TAI VIET SYMBOL KOI KOI AAF0..AAF1 ; Terminal_Punctuation # Po [2] MEETEI MAYEK CHEIKHAN..MEETEI MAYEK AHANG KHUDAM ABEB ; Terminal_Punctuation # Po MEETEI MAYEK CHEIKHEI +FE12 ; Terminal_Punctuation # Po PRESENTATION FORM FOR VERTICAL IDEOGRAPHIC FULL STOP +FE15..FE16 ; Terminal_Punctuation # Po [2] PRESENTATION FORM FOR VERTICAL EXCLAMATION MARK..PRESENTATION FORM FOR VERTICAL QUESTION MARK FE50..FE52 ; Terminal_Punctuation # Po [3] SMALL COMMA..SMALL FULL STOP FE54..FE57 ; Terminal_Punctuation # Po [4] SMALL SEMICOLON..SMALL EXCLAMATION MARK FF01 ; Terminal_Punctuation # Po FULLWIDTH EXCLAMATION MARK @@ -201,6 +208,7 @@ FF64 ; Terminal_Punctuation # Po HALFWIDTH IDEOGRAPHIC COMMA 111DE..111DF ; Terminal_Punctuation # Po [2] SHARADA SECTION MARK-1..SHARADA SECTION MARK-2 11238..1123C ; Terminal_Punctuation # Po [5] KHOJKI DANDA..KHOJKI DOUBLE SECTION MARK 112A9 ; Terminal_Punctuation # Po MULTANI SECTION MARK +113D4..113D5 ; Terminal_Punctuation # Po [2] TULU-TIGALARI DANDA..TULU-TIGALARI DOUBLE DANDA 1144B..1144D ; Terminal_Punctuation # Po [3] NEWA DANDA..NEWA COMMA 1145A..1145B ; Terminal_Punctuation # Po [2] NEWA DOUBLE COMMA..NEWA PLACEHOLDER MARK 115C2..115C5 ; Terminal_Punctuation # Po [4] SIDDHAM DANDA..SIDDHAM SEPARATOR BAR @@ -221,11 +229,12 @@ FF64 ; Terminal_Punctuation # Po HALFWIDTH IDEOGRAPHIC COMMA 16AF5 ; Terminal_Punctuation # Po BASSA VAH FULL STOP 16B37..16B39 ; Terminal_Punctuation # Po [3] PAHAWH HMONG SIGN VOS THOM..PAHAWH HMONG SIGN CIM CHEEM 16B44 ; Terminal_Punctuation # Po PAHAWH HMONG SIGN XAUS +16D6E..16D6F ; Terminal_Punctuation # Po [2] KIRAT RAI DANDA..KIRAT RAI DOUBLE DANDA 16E97..16E98 ; Terminal_Punctuation # Po [2] MEDEFAIDRIN COMMA..MEDEFAIDRIN FULL STOP 1BC9F ; Terminal_Punctuation # Po DUPLOYAN PUNCTUATION CHINOOK FULL STOP 1DA87..1DA8A ; Terminal_Punctuation # Po [4] SIGNWRITING COMMA..SIGNWRITING COLON -# Total code points: 278 +# Total code points: 291 # ================================================ @@ -430,6 +439,7 @@ FF41..FF46 ; Hex_Digit # L& [6] FULLWIDTH LATIN SMALL LETTER A..FULLWIDTH L # ================================================ 0345 ; Other_Alphabetic # Mn COMBINING GREEK YPOGEGRAMMENI +0363..036F ; Other_Alphabetic # Mn [13] COMBINING LATIN SMALL LETTER A..COMBINING LATIN SMALL LETTER X 05B0..05BD ; Other_Alphabetic # Mn [14] HEBREW POINT SHEVA..HEBREW POINT METEG 05BF ; Other_Alphabetic # Mn HEBREW POINT RAFE 05C1..05C2 ; Other_Alphabetic # Mn [2] HEBREW POINT SHIN DOT..HEBREW POINT SIN DOT @@ -450,6 +460,7 @@ FF41..FF46 ; Hex_Digit # L& [6] FULLWIDTH LATIN SMALL LETTER A..FULLWIDTH L 081B..0823 ; Other_Alphabetic # Mn [9] SAMARITAN MARK EPENTHETIC YUT..SAMARITAN VOWEL SIGN A 0825..0827 ; Other_Alphabetic # Mn [3] SAMARITAN VOWEL SIGN SHORT A..SAMARITAN VOWEL SIGN U 0829..082C ; Other_Alphabetic # Mn [4] SAMARITAN VOWEL SIGN LONG I..SAMARITAN VOWEL SIGN SUKUN +0897 ; Other_Alphabetic # Mn ARABIC PEPET 08D4..08DF ; Other_Alphabetic # Mn [12] ARABIC SMALL HIGH WORD AR-RUB..ARABIC SMALL HIGH WORD WAQFA 08E3..08E9 ; Other_Alphabetic # Mn [7] ARABIC TURNED DAMMA BELOW..ARABIC CURLY KASRATAN 08F0..0902 ; Other_Alphabetic # Mn [19] ARABIC OPEN FATHATAN..DEVANAGARI SIGN ANUSVARA @@ -634,7 +645,7 @@ FF41..FF46 ; Hex_Digit # L& [6] FULLWIDTH LATIN SMALL LETTER A..FULLWIDTH L 1C2C..1C33 ; Other_Alphabetic # Mn [8] LEPCHA VOWEL SIGN E..LEPCHA CONSONANT SIGN T 1C34..1C35 ; Other_Alphabetic # Mc [2] LEPCHA CONSONANT SIGN NYIN-DO..LEPCHA CONSONANT SIGN KANG 1C36 ; Other_Alphabetic # Mn LEPCHA SIGN RAN -1DE7..1DF4 ; Other_Alphabetic # Mn [14] COMBINING LATIN SMALL LETTER ALPHA..COMBINING LATIN SMALL LETTER U WITH DIAERESIS +1DD3..1DF4 ; Other_Alphabetic # Mn [34] COMBINING LATIN SMALL LETTER FLATTENED OPEN A ABOVE..COMBINING LATIN SMALL LETTER U WITH DIAERESIS 24B6..24E9 ; Other_Alphabetic # So [52] CIRCLED LATIN CAPITAL LETTER A..CIRCLED LATIN SMALL LETTER Z 2DE0..2DFF ; Other_Alphabetic # Mn [32] COMBINING CYRILLIC LETTER BE..COMBINING CYRILLIC LETTER IOTIFIED BIG YUS A674..A67B ; Other_Alphabetic # Mn [8] COMBINING CYRILLIC LETTER UKRAINIAN IE..COMBINING CYRILLIC LETTER OMEGA @@ -689,7 +700,9 @@ FB1E ; Other_Alphabetic # Mn HEBREW POINT JUDEO-SPANISH VARIKA 10A05..10A06 ; Other_Alphabetic # Mn [2] KHAROSHTHI VOWEL SIGN E..KHAROSHTHI VOWEL SIGN O 10A0C..10A0F ; Other_Alphabetic # Mn [4] KHAROSHTHI VOWEL LENGTH MARK..KHAROSHTHI SIGN VISARGA 10D24..10D27 ; Other_Alphabetic # Mn [4] HANIFI ROHINGYA SIGN HARBAHAY..HANIFI ROHINGYA SIGN TASSI +10D69 ; Other_Alphabetic # Mn GARAY VOWEL SIGN E 10EAB..10EAC ; Other_Alphabetic # Mn [2] YEZIDI COMBINING HAMZA MARK..YEZIDI COMBINING MADDA MARK +10EFC ; Other_Alphabetic # Mn ARABIC COMBINING ALEF OVERLAY 11000 ; Other_Alphabetic # Mc BRAHMI SIGN CANDRABINDU 11001 ; Other_Alphabetic # Mn BRAHMI SIGN ANUSVARA 11002 ; Other_Alphabetic # Mc BRAHMI SIGN VISARGA @@ -732,6 +745,12 @@ FB1E ; Other_Alphabetic # Mn HEBREW POINT JUDEO-SPANISH VARIKA 1134B..1134C ; Other_Alphabetic # Mc [2] GRANTHA VOWEL SIGN OO..GRANTHA VOWEL SIGN AU 11357 ; Other_Alphabetic # Mc GRANTHA AU LENGTH MARK 11362..11363 ; Other_Alphabetic # Mc [2] GRANTHA VOWEL SIGN VOCALIC L..GRANTHA VOWEL SIGN VOCALIC LL +113B8..113BA ; Other_Alphabetic # Mc [3] TULU-TIGALARI VOWEL SIGN AA..TULU-TIGALARI VOWEL SIGN II +113BB..113C0 ; Other_Alphabetic # Mn [6] TULU-TIGALARI VOWEL SIGN U..TULU-TIGALARI VOWEL SIGN VOCALIC LL +113C2 ; Other_Alphabetic # Mc TULU-TIGALARI VOWEL SIGN EE +113C5 ; Other_Alphabetic # Mc TULU-TIGALARI VOWEL SIGN AI +113C7..113CA ; Other_Alphabetic # Mc [4] TULU-TIGALARI VOWEL SIGN OO..TULU-TIGALARI SIGN CANDRA ANUNASIKA +113CC..113CD ; Other_Alphabetic # Mc [2] TULU-TIGALARI SIGN ANUSVARA..TULU-TIGALARI SIGN VISARGA 11435..11437 ; Other_Alphabetic # Mc [3] NEWA VOWEL SIGN AA..NEWA VOWEL SIGN II 11438..1143F ; Other_Alphabetic # Mn [8] NEWA VOWEL SIGN U..NEWA VOWEL SIGN AI 11440..11441 ; Other_Alphabetic # Mc [2] NEWA VOWEL SIGN O..NEWA VOWEL SIGN AU @@ -761,7 +780,9 @@ FB1E ; Other_Alphabetic # Mn HEBREW POINT JUDEO-SPANISH VARIKA 116AD ; Other_Alphabetic # Mn TAKRI VOWEL SIGN AA 116AE..116AF ; Other_Alphabetic # Mc [2] TAKRI VOWEL SIGN I..TAKRI VOWEL SIGN II 116B0..116B5 ; Other_Alphabetic # Mn [6] TAKRI VOWEL SIGN U..TAKRI VOWEL SIGN AU -1171D..1171F ; Other_Alphabetic # Mn [3] AHOM CONSONANT SIGN MEDIAL LA..AHOM CONSONANT SIGN MEDIAL LIGATING RA +1171D ; Other_Alphabetic # Mn AHOM CONSONANT SIGN MEDIAL LA +1171E ; Other_Alphabetic # Mc AHOM CONSONANT SIGN MEDIAL RA +1171F ; Other_Alphabetic # Mn AHOM CONSONANT SIGN MEDIAL LIGATING RA 11720..11721 ; Other_Alphabetic # Mc [2] AHOM VOWEL SIGN A..AHOM VOWEL SIGN AA 11722..11725 ; Other_Alphabetic # Mn [4] AHOM VOWEL SIGN I..AHOM VOWEL SIGN UU 11726 ; Other_Alphabetic # Mc AHOM VOWEL SIGN E @@ -818,6 +839,9 @@ FB1E ; Other_Alphabetic # Mn HEBREW POINT JUDEO-SPANISH VARIKA 11F36..11F3A ; Other_Alphabetic # Mn [5] KAWI VOWEL SIGN I..KAWI VOWEL SIGN VOCALIC R 11F3E..11F3F ; Other_Alphabetic # Mc [2] KAWI VOWEL SIGN E..KAWI VOWEL SIGN AI 11F40 ; Other_Alphabetic # Mn KAWI VOWEL SIGN EU +1611E..16129 ; Other_Alphabetic # Mn [12] GURUNG KHEMA VOWEL SIGN AA..GURUNG KHEMA VOWEL LENGTH MARK +1612A..1612C ; Other_Alphabetic # Mc [3] GURUNG KHEMA CONSONANT SIGN MEDIAL YA..GURUNG KHEMA CONSONANT SIGN MEDIAL HA +1612D..1612E ; Other_Alphabetic # Mn [2] GURUNG KHEMA SIGN ANUSVARA..GURUNG KHEMA CONSONANT SIGN MEDIAL RA 16F4F ; Other_Alphabetic # Mn MIAO SIGN CONSONANT MODIFIER BAR 16F51..16F87 ; Other_Alphabetic # Mc [55] MIAO SIGN ASPIRATION..MIAO VOWEL SIGN UI 16F8F..16F92 ; Other_Alphabetic # Mn [4] MIAO TONE RIGHT..MIAO TONE BELOW @@ -834,7 +858,7 @@ FB1E ; Other_Alphabetic # Mn HEBREW POINT JUDEO-SPANISH VARIKA 1F150..1F169 ; Other_Alphabetic # So [26] NEGATIVE CIRCLED LATIN CAPITAL LETTER A..NEGATIVE CIRCLED LATIN CAPITAL LETTER Z 1F170..1F189 ; Other_Alphabetic # So [26] NEGATIVE SQUARED LATIN CAPITAL LETTER A..NEGATIVE SQUARED LATIN CAPITAL LETTER Z -# Total code points: 1425 +# Total code points: 1495 # ================================================ @@ -849,7 +873,7 @@ FA70..FAD9 ; Ideographic # Lo [106] CJK COMPATIBILITY IDEOGRAPH-FA70..CJK COM 16FE4 ; Ideographic # Mn KHITAN SMALL SCRIPT FILLER 17000..187F7 ; Ideographic # Lo [6136] TANGUT IDEOGRAPH-17000..TANGUT IDEOGRAPH-187F7 18800..18CD5 ; Ideographic # Lo [1238] TANGUT COMPONENT-001..KHITAN SMALL SCRIPT CHARACTER-18CD5 -18D00..18D08 ; Ideographic # Lo [9] TANGUT IDEOGRAPH-18D00..TANGUT IDEOGRAPH-18D08 +18CFF..18D08 ; Ideographic # Lo [10] KHITAN SMALL SCRIPT CHARACTER-18CFF..TANGUT IDEOGRAPH-18D08 1B170..1B2FB ; Ideographic # Lo [396] NUSHU CHARACTER-1B170..NUSHU CHARACTER-1B2FB 20000..2A6DF ; Ideographic # Lo [42720] CJK UNIFIED IDEOGRAPH-20000..CJK UNIFIED IDEOGRAPH-2A6DF 2A700..2B739 ; Ideographic # Lo [4154] CJK UNIFIED IDEOGRAPH-2A700..CJK UNIFIED IDEOGRAPH-2B739 @@ -861,7 +885,7 @@ FA70..FAD9 ; Ideographic # Lo [106] CJK COMPATIBILITY IDEOGRAPH-FA70..CJK COM 30000..3134A ; Ideographic # Lo [4939] CJK UNIFIED IDEOGRAPH-30000..CJK UNIFIED IDEOGRAPH-3134A 31350..323AF ; Ideographic # Lo [4192] CJK UNIFIED IDEOGRAPH-31350..CJK UNIFIED IDEOGRAPH-323AF -# Total code points: 106476 +# Total code points: 106477 # ================================================ @@ -932,6 +956,7 @@ FA70..FAD9 ; Ideographic # Lo [106] CJK COMPATIBILITY IDEOGRAPH-FA70..CJK COM 0D3B..0D3C ; Diacritic # Mn [2] MALAYALAM SIGN VERTICAL BAR VIRAMA..MALAYALAM SIGN CIRCULAR VIRAMA 0D4D ; Diacritic # Mn MALAYALAM SIGN VIRAMA 0DCA ; Diacritic # Mn SINHALA SIGN AL-LAKUNA +0E3A ; Diacritic # Mn THAI CHARACTER PHINTHU 0E47..0E4C ; Diacritic # Mn [6] THAI CHARACTER MAITAIKHU..THAI CHARACTER THANTHAKHAT 0E4E ; Diacritic # Mn THAI CHARACTER YAMAKKAN 0EBA ; Diacritic # Mn LAO SIGN PALI VIRAMA @@ -955,9 +980,11 @@ FA70..FAD9 ; Ideographic # Lo [106] CJK COMPATIBILITY IDEOGRAPH-FA70..CJK COM 135D..135F ; Diacritic # Mn [3] ETHIOPIC COMBINING GEMINATION AND VOWEL LENGTH MARK..ETHIOPIC COMBINING GEMINATION MARK 1714 ; Diacritic # Mn TAGALOG SIGN VIRAMA 1715 ; Diacritic # Mc TAGALOG SIGN PAMUDPOD +1734 ; Diacritic # Mc HANUNOO SIGN PAMUDPOD 17C9..17D3 ; Diacritic # Mn [11] KHMER SIGN MUUSIKATOAN..KHMER SIGN BATHAMASAT 17DD ; Diacritic # Mn KHMER SIGN ATTHACAN 1939..193B ; Diacritic # Mn [3] LIMBU SIGN MUKPHRENG..LIMBU SIGN SA-I +1A60 ; Diacritic # Mn TAI THAM SIGN SAKOT 1A75..1A7C ; Diacritic # Mn [8] TAI THAM SIGN TONE-1..TAI THAM SIGN KHUEN-LUE KARAN 1A7F ; Diacritic # Mn TAI THAM COMBINING CRYPTOGRAMMIC DOT 1AB0..1ABD ; Diacritic # Mn [14] COMBINING DOUBLED CIRCUMFLEX ACCENT..COMBINING PARENTHESES BELOW @@ -968,6 +995,8 @@ FA70..FAD9 ; Ideographic # Lo [106] CJK COMPATIBILITY IDEOGRAPH-FA70..CJK COM 1B6B..1B73 ; Diacritic # Mn [9] BALINESE MUSICAL SYMBOL COMBINING TEGEH..BALINESE MUSICAL SYMBOL COMBINING GONG 1BAA ; Diacritic # Mc SUNDANESE SIGN PAMAAEH 1BAB ; Diacritic # Mn SUNDANESE SIGN VIRAMA +1BE6 ; Diacritic # Mn BATAK SIGN TOMPI +1BF2..1BF3 ; Diacritic # Mc [2] BATAK PANGOLAT..BATAK PANONGONAN 1C36..1C37 ; Diacritic # Mn [2] LEPCHA SIGN RAN..LEPCHA SIGN NUKTA 1C78..1C7D ; Diacritic # Lm [6] OL CHIKI MU TTUDDAG..OL CHIKI AHAD 1CD0..1CD2 ; Diacritic # Mn [3] VEDIC TONE KARSHANA..VEDIC TONE PRENKHA @@ -1006,6 +1035,8 @@ A720..A721 ; Diacritic # Sk [2] MODIFIER LETTER STRESS AND HIGH TONE..MODIF A788 ; Diacritic # Lm MODIFIER LETTER LOW CIRCUMFLEX ACCENT A789..A78A ; Diacritic # Sk [2] MODIFIER LETTER COLON..MODIFIER LETTER SHORT EQUALS SIGN A7F8..A7F9 ; Diacritic # Lm [2] MODIFIER LETTER CAPITAL H WITH STROKE..MODIFIER LETTER SMALL LIGATURE OE +A806 ; Diacritic # Mn SYLOTI NAGRI SIGN HASANTA +A82C ; Diacritic # Mn SYLOTI NAGRI SIGN ALTERNATE HASANTA A8C4 ; Diacritic # Mn SAURASHTRA SIGN VIRAMA A8E0..A8F1 ; Diacritic # Mn [18] COMBINING DEVANAGARI DIGIT ZERO..COMBINING DEVANAGARI SIGN AVAGRAHA A92B..A92D ; Diacritic # Mn [3] KAYAH LI TONE PLOPHU..KAYAH LI TONE CALYA PLOPHU @@ -1039,9 +1070,13 @@ FFE3 ; Diacritic # Sk FULLWIDTH MACRON 10780..10785 ; Diacritic # Lm [6] MODIFIER LETTER SMALL CAPITAL AA..MODIFIER LETTER SMALL B WITH HOOK 10787..107B0 ; Diacritic # Lm [42] MODIFIER LETTER SMALL DZ DIGRAPH..MODIFIER LETTER SMALL V WITH RIGHT HOOK 107B2..107BA ; Diacritic # Lm [9] MODIFIER LETTER SMALL CAPITAL Y..MODIFIER LETTER SMALL S WITH CURL +10A38..10A3A ; Diacritic # Mn [3] KHAROSHTHI SIGN BAR ABOVE..KHAROSHTHI SIGN DOT BELOW +10A3F ; Diacritic # Mn KHAROSHTHI VIRAMA 10AE5..10AE6 ; Diacritic # Mn [2] MANICHAEAN ABBREVIATION MARK ABOVE..MANICHAEAN ABBREVIATION MARK BELOW 10D22..10D23 ; Diacritic # Lo [2] HANIFI ROHINGYA MARK SAKIN..HANIFI ROHINGYA MARK NA KHONNA 10D24..10D27 ; Diacritic # Mn [4] HANIFI ROHINGYA SIGN HARBAHAY..HANIFI ROHINGYA SIGN TASSI +10D4E ; Diacritic # Lm GARAY VOWEL LENGTH MARK +10D69..10D6D ; Diacritic # Mn [5] GARAY VOWEL SIGN E..GARAY CONSONANT NASALIZATION MARK 10EFD..10EFF ; Diacritic # Mn [3] ARABIC SMALL LOW WORD SAKTA..ARABIC SMALL LOW WORD MADDA 10F46..10F50 ; Diacritic # Mn [11] SOGDIAN COMBINING DOT BELOW..SOGDIAN COMBINING STROKE BELOW 10F82..10F85 ; Diacritic # Mn [4] OLD UYGHUR COMBINING DOT ABOVE..OLD UYGHUR COMBINING TWO DOTS BELOW @@ -1055,10 +1090,16 @@ FFE3 ; Diacritic # Sk FULLWIDTH MACRON 11235 ; Diacritic # Mc KHOJKI SIGN VIRAMA 11236 ; Diacritic # Mn KHOJKI SIGN NUKTA 112E9..112EA ; Diacritic # Mn [2] KHUDAWADI SIGN NUKTA..KHUDAWADI SIGN VIRAMA -1133C ; Diacritic # Mn GRANTHA SIGN NUKTA +1133B..1133C ; Diacritic # Mn [2] COMBINING BINDU BELOW..GRANTHA SIGN NUKTA 1134D ; Diacritic # Mc GRANTHA SIGN VIRAMA 11366..1136C ; Diacritic # Mn [7] COMBINING GRANTHA DIGIT ZERO..COMBINING GRANTHA DIGIT SIX 11370..11374 ; Diacritic # Mn [5] COMBINING GRANTHA LETTER A..COMBINING GRANTHA LETTER PA +113CE ; Diacritic # Mn TULU-TIGALARI SIGN VIRAMA +113CF ; Diacritic # Mc TULU-TIGALARI SIGN LOOPED VIRAMA +113D0 ; Diacritic # Mn TULU-TIGALARI CONJOINER +113D2 ; Diacritic # Mn TULU-TIGALARI GEMINATION MARK +113D3 ; Diacritic # Lo TULU-TIGALARI SIGN PLUTA +113E1..113E2 ; Diacritic # Mn [2] TULU-TIGALARI VEDIC TONE SVARITA..TULU-TIGALARI VEDIC TONE ANUDATTA 11442 ; Diacritic # Mn NEWA SIGN VIRAMA 11446 ; Diacritic # Mn NEWA SIGN NUKTA 114C2..114C3 ; Diacritic # Mn [2] TIRHUTA SIGN VIRAMA..TIRHUTA SIGN NUKTA @@ -1079,9 +1120,14 @@ FFE3 ; Diacritic # Sk FULLWIDTH MACRON 11D42 ; Diacritic # Mn MASARAM GONDI SIGN NUKTA 11D44..11D45 ; Diacritic # Mn [2] MASARAM GONDI SIGN HALANTA..MASARAM GONDI VIRAMA 11D97 ; Diacritic # Mn GUNJALA GONDI VIRAMA +11F41 ; Diacritic # Mc KAWI SIGN KILLER +11F42 ; Diacritic # Mn KAWI CONJOINER +11F5A ; Diacritic # Mn KAWI SIGN NUKTA 13447..13455 ; Diacritic # Mn [15] EGYPTIAN HIEROGLYPH MODIFIER DAMAGED AT TOP START..EGYPTIAN HIEROGLYPH MODIFIER DAMAGED +1612F ; Diacritic # Mn GURUNG KHEMA SIGN THOLHOMA 16AF0..16AF4 ; Diacritic # Mn [5] BASSA VAH COMBINING HIGH TONE..BASSA VAH COMBINING HIGH-LOW TONE 16B30..16B36 ; Diacritic # Mn [7] PAHAWH HMONG MARK CIM TUB..PAHAWH HMONG MARK CIM TAUM +16D6B..16D6C ; Diacritic # Lm [2] KIRAT RAI SIGN VIRAMA..KIRAT RAI SIGN SAAT 16F8F..16F92 ; Diacritic # Mn [4] MIAO TONE RIGHT..MIAO TONE BELOW 16F93..16F9F ; Diacritic # Lm [13] MIAO LETTER TONE-2..MIAO LETTER REFORMED TONE-8 16FF0..16FF1 ; Diacritic # Mc [2] VIETNAMESE ALTERNATE READING MARK CA..VIETNAMESE ALTERNATE READING MARK NHAY @@ -1099,11 +1145,12 @@ FFE3 ; Diacritic # Sk FULLWIDTH MACRON 1E130..1E136 ; Diacritic # Mn [7] NYIAKENG PUACHUE HMONG TONE-B..NYIAKENG PUACHUE HMONG TONE-D 1E2AE ; Diacritic # Mn TOTO SIGN RISING TONE 1E2EC..1E2EF ; Diacritic # Mn [4] WANCHO TONE TUP..WANCHO TONE KOINI +1E5EE..1E5EF ; Diacritic # Mn [2] OL ONAL SIGN MU..OL ONAL SIGN IKIR 1E8D0..1E8D6 ; Diacritic # Mn [7] MENDE KIKAKUI COMBINING NUMBER TEENS..MENDE KIKAKUI COMBINING NUMBER MILLIONS 1E944..1E946 ; Diacritic # Mn [3] ADLAM ALIF LENGTHENER..ADLAM GEMINATION MARK 1E948..1E94A ; Diacritic # Mn [3] ADLAM CONSONANT MODIFIER..ADLAM NUKTA -# Total code points: 1144 +# Total code points: 1178 # ================================================ @@ -1111,6 +1158,8 @@ FFE3 ; Diacritic # Sk FULLWIDTH MACRON 02D0..02D1 ; Extender # Lm [2] MODIFIER LETTER TRIANGULAR COLON..MODIFIER LETTER HALF TRIANGULAR COLON 0640 ; Extender # Lm ARABIC TATWEEL 07FA ; Extender # Lm NKO LAJANYALAN +0A71 ; Extender # Mn GURMUKHI ADDAK +0AFB ; Extender # Mn GUJARATI SIGN SHADDA 0B55 ; Extender # Mn ORIYA SIGN OVERLINE 0E46 ; Extender # Lm THAI CHARACTER MAIYAMOK 0EC6 ; Extender # Lm LAO KO LA @@ -1132,16 +1181,23 @@ AADD ; Extender # Lm TAI VIET SYMBOL SAM AAF3..AAF4 ; Extender # Lm [2] MEETEI MAYEK SYLLABLE REPETITION MARK..MEETEI MAYEK WORD REPETITION MARK FF70 ; Extender # Lm HALFWIDTH KATAKANA-HIRAGANA PROLONGED SOUND MARK 10781..10782 ; Extender # Lm [2] MODIFIER LETTER SUPERSCRIPT TRIANGULAR COLON..MODIFIER LETTER SUPERSCRIPT HALF TRIANGULAR COLON +10D4E ; Extender # Lm GARAY VOWEL LENGTH MARK +10D6A ; Extender # Mn GARAY CONSONANT GEMINATION MARK +10D6F ; Extender # Lm GARAY REDUPLICATION MARK +11237 ; Extender # Mn KHOJKI SIGN SHADDA 1135D ; Extender # Lo GRANTHA SIGN PLUTA +113D2 ; Extender # Mn TULU-TIGALARI GEMINATION MARK +113D3 ; Extender # Lo TULU-TIGALARI SIGN PLUTA 115C6..115C8 ; Extender # Po [3] SIDDHAM REPETITION MARK-1..SIDDHAM REPETITION MARK-3 11A98 ; Extender # Mn SOYOMBO GEMINATION MARK 16B42..16B43 ; Extender # Lm [2] PAHAWH HMONG SIGN VOS NRUA..PAHAWH HMONG SIGN IB YAM 16FE0..16FE1 ; Extender # Lm [2] TANGUT ITERATION MARK..NUSHU ITERATION MARK 16FE3 ; Extender # Lm OLD CHINESE ITERATION MARK 1E13C..1E13D ; Extender # Lm [2] NYIAKENG PUACHUE HMONG SIGN XW XW..NYIAKENG PUACHUE HMONG SYLLABLE LENGTHENER +1E5EF ; Extender # Mn OL ONAL SIGN IKIR 1E944..1E946 ; Extender # Mn [3] ADLAM ALIF LENGTHENER..ADLAM GEMINATION MARK -# Total code points: 50 +# Total code points: 59 # ================================================ @@ -1217,27 +1273,51 @@ FFFFE..FFFFF ; Noncharacter_Code_Point # Cn [2] <noncharacter-FFFFE>..<noncha 0B57 ; Other_Grapheme_Extend # Mc ORIYA AU LENGTH MARK 0BBE ; Other_Grapheme_Extend # Mc TAMIL VOWEL SIGN AA 0BD7 ; Other_Grapheme_Extend # Mc TAMIL AU LENGTH MARK +0CC0 ; Other_Grapheme_Extend # Mc KANNADA VOWEL SIGN II 0CC2 ; Other_Grapheme_Extend # Mc KANNADA VOWEL SIGN UU +0CC7..0CC8 ; Other_Grapheme_Extend # Mc [2] KANNADA VOWEL SIGN EE..KANNADA VOWEL SIGN AI +0CCA..0CCB ; Other_Grapheme_Extend # Mc [2] KANNADA VOWEL SIGN O..KANNADA VOWEL SIGN OO 0CD5..0CD6 ; Other_Grapheme_Extend # Mc [2] KANNADA LENGTH MARK..KANNADA AI LENGTH MARK 0D3E ; Other_Grapheme_Extend # Mc MALAYALAM VOWEL SIGN AA 0D57 ; Other_Grapheme_Extend # Mc MALAYALAM AU LENGTH MARK 0DCF ; Other_Grapheme_Extend # Mc SINHALA VOWEL SIGN AELA-PILLA 0DDF ; Other_Grapheme_Extend # Mc SINHALA VOWEL SIGN GAYANUKITTA +1715 ; Other_Grapheme_Extend # Mc TAGALOG SIGN PAMUDPOD +1734 ; Other_Grapheme_Extend # Mc HANUNOO SIGN PAMUDPOD 1B35 ; Other_Grapheme_Extend # Mc BALINESE VOWEL SIGN TEDUNG +1B3B ; Other_Grapheme_Extend # Mc BALINESE VOWEL SIGN RA REPA TEDUNG +1B3D ; Other_Grapheme_Extend # Mc BALINESE VOWEL SIGN LA LENGA TEDUNG +1B43..1B44 ; Other_Grapheme_Extend # Mc [2] BALINESE VOWEL SIGN PEPET TEDUNG..BALINESE ADEG ADEG +1BAA ; Other_Grapheme_Extend # Mc SUNDANESE SIGN PAMAAEH +1BF2..1BF3 ; Other_Grapheme_Extend # Mc [2] BATAK PANGOLAT..BATAK PANONGONAN 200C ; Other_Grapheme_Extend # Cf ZERO WIDTH NON-JOINER 302E..302F ; Other_Grapheme_Extend # Mc [2] HANGUL SINGLE DOT TONE MARK..HANGUL DOUBLE DOT TONE MARK +A953 ; Other_Grapheme_Extend # Mc REJANG VIRAMA +A9C0 ; Other_Grapheme_Extend # Mc JAVANESE PANGKON FF9E..FF9F ; Other_Grapheme_Extend # Lm [2] HALFWIDTH KATAKANA VOICED SOUND MARK..HALFWIDTH KATAKANA SEMI-VOICED SOUND MARK +111C0 ; Other_Grapheme_Extend # Mc SHARADA SIGN VIRAMA +11235 ; Other_Grapheme_Extend # Mc KHOJKI SIGN VIRAMA 1133E ; Other_Grapheme_Extend # Mc GRANTHA VOWEL SIGN AA +1134D ; Other_Grapheme_Extend # Mc GRANTHA SIGN VIRAMA 11357 ; Other_Grapheme_Extend # Mc GRANTHA AU LENGTH MARK +113B8 ; Other_Grapheme_Extend # Mc TULU-TIGALARI VOWEL SIGN AA +113C2 ; Other_Grapheme_Extend # Mc TULU-TIGALARI VOWEL SIGN EE +113C5 ; Other_Grapheme_Extend # Mc TULU-TIGALARI VOWEL SIGN AI +113C7..113C9 ; Other_Grapheme_Extend # Mc [3] TULU-TIGALARI VOWEL SIGN OO..TULU-TIGALARI AU LENGTH MARK +113CF ; Other_Grapheme_Extend # Mc TULU-TIGALARI SIGN LOOPED VIRAMA 114B0 ; Other_Grapheme_Extend # Mc TIRHUTA VOWEL SIGN AA 114BD ; Other_Grapheme_Extend # Mc TIRHUTA VOWEL SIGN SHORT O 115AF ; Other_Grapheme_Extend # Mc SIDDHAM VOWEL SIGN AA +116B6 ; Other_Grapheme_Extend # Mc TAKRI SIGN VIRAMA 11930 ; Other_Grapheme_Extend # Mc DIVES AKURU VOWEL SIGN AA -1D165 ; Other_Grapheme_Extend # Mc MUSICAL SYMBOL COMBINING STEM -1D16E..1D172 ; Other_Grapheme_Extend # Mc [5] MUSICAL SYMBOL COMBINING FLAG-1..MUSICAL SYMBOL COMBINING FLAG-5 +1193D ; Other_Grapheme_Extend # Mc DIVES AKURU SIGN HALANTA +11F41 ; Other_Grapheme_Extend # Mc KAWI SIGN KILLER +16FF0..16FF1 ; Other_Grapheme_Extend # Mc [2] VIETNAMESE ALTERNATE READING MARK CA..VIETNAMESE ALTERNATE READING MARK NHAY +1D165..1D166 ; Other_Grapheme_Extend # Mc [2] MUSICAL SYMBOL COMBINING STEM..MUSICAL SYMBOL COMBINING SPRECHGESANG STEM +1D16D..1D172 ; Other_Grapheme_Extend # Mc [6] MUSICAL SYMBOL COMBINING AUGMENTATION DOT..MUSICAL SYMBOL COMBINING FLAG-5 E0020..E007F ; Other_Grapheme_Extend # Cf [96] TAG SPACE..CANCEL TAG -# Total code points: 127 +# Total code points: 160 # ================================================ @@ -1462,13 +1542,16 @@ FF65 ; Other_ID_Continue # Po HALFWIDTH KATAKANA MIDDLE DOT 1809 ; Sentence_Terminal # Po MONGOLIAN MANCHU FULL STOP 1944..1945 ; Sentence_Terminal # Po [2] LIMBU EXCLAMATION MARK..LIMBU QUESTION MARK 1AA8..1AAB ; Sentence_Terminal # Po [4] TAI THAM SIGN KAAN..TAI THAM SIGN SATKAANKUU +1B4E..1B4F ; Sentence_Terminal # Po [2] BALINESE INVERTED CARIK SIKI..BALINESE INVERTED CARIK PAREREN 1B5A..1B5B ; Sentence_Terminal # Po [2] BALINESE PANTI..BALINESE PAMADA 1B5E..1B5F ; Sentence_Terminal # Po [2] BALINESE CARIK SIKI..BALINESE CARIK PAREREN -1B7D..1B7E ; Sentence_Terminal # Po [2] BALINESE PANTI LANTANG..BALINESE PAMADA LANTANG +1B7D..1B7F ; Sentence_Terminal # Po [3] BALINESE PANTI LANTANG..BALINESE PANTI BAWAK 1C3B..1C3C ; Sentence_Terminal # Po [2] LEPCHA PUNCTUATION TA-ROL..LEPCHA PUNCTUATION NYET THYOOM TA-ROL 1C7E..1C7F ; Sentence_Terminal # Po [2] OL CHIKI PUNCTUATION MUCAAD..OL CHIKI PUNCTUATION DOUBLE MUCAAD +2024 ; Sentence_Terminal # Po ONE DOT LEADER 203C..203D ; Sentence_Terminal # Po [2] DOUBLE EXCLAMATION MARK..INTERROBANG 2047..2049 ; Sentence_Terminal # Po [3] DOUBLE QUESTION MARK..EXCLAMATION QUESTION MARK +2CF9..2CFB ; Sentence_Terminal # Po [3] COPTIC OLD NUBIAN FULL STOP..COPTIC OLD NUBIAN INDIRECT QUESTION MARK 2E2E ; Sentence_Terminal # Po REVERSED QUESTION MARK 2E3C ; Sentence_Terminal # Po STENOGRAPHIC FULL STOP 2E53..2E54 ; Sentence_Terminal # Po [2] MEDIEVAL EXCLAMATION MARK..MEDIEVAL QUESTION MARK @@ -1484,6 +1567,8 @@ A9C8..A9C9 ; Sentence_Terminal # Po [2] JAVANESE PADA LINGSA..JAVANESE PADA AA5D..AA5F ; Sentence_Terminal # Po [3] CHAM PUNCTUATION DANDA..CHAM PUNCTUATION TRIPLE DANDA AAF0..AAF1 ; Sentence_Terminal # Po [2] MEETEI MAYEK CHEIKHAN..MEETEI MAYEK AHANG KHUDAM ABEB ; Sentence_Terminal # Po MEETEI MAYEK CHEIKHEI +FE12 ; Sentence_Terminal # Po PRESENTATION FORM FOR VERTICAL IDEOGRAPHIC FULL STOP +FE15..FE16 ; Sentence_Terminal # Po [2] PRESENTATION FORM FOR VERTICAL EXCLAMATION MARK..PRESENTATION FORM FOR VERTICAL QUESTION MARK FE52 ; Sentence_Terminal # Po SMALL FULL STOP FE56..FE57 ; Sentence_Terminal # Po [2] SMALL QUESTION MARK..SMALL EXCLAMATION MARK FF01 ; Sentence_Terminal # Po FULLWIDTH EXCLAMATION MARK @@ -1502,6 +1587,7 @@ FF61 ; Sentence_Terminal # Po HALFWIDTH IDEOGRAPHIC FULL STOP 11238..11239 ; Sentence_Terminal # Po [2] KHOJKI DANDA..KHOJKI DOUBLE DANDA 1123B..1123C ; Sentence_Terminal # Po [2] KHOJKI SECTION MARK..KHOJKI DOUBLE SECTION MARK 112A9 ; Sentence_Terminal # Po MULTANI SECTION MARK +113D4..113D5 ; Sentence_Terminal # Po [2] TULU-TIGALARI DANDA..TULU-TIGALARI DOUBLE DANDA 1144B..1144C ; Sentence_Terminal # Po [2] NEWA DANDA..NEWA DOUBLE DANDA 115C2..115C3 ; Sentence_Terminal # Po [2] SIDDHAM DANDA..SIDDHAM DOUBLE DANDA 115C9..115D7 ; Sentence_Terminal # Po [15] SIDDHAM END OF TEXT MARK..SIDDHAM SECTION MARK WITH CIRCLES AND FOUR ENCLOSURES @@ -1518,11 +1604,12 @@ FF61 ; Sentence_Terminal # Po HALFWIDTH IDEOGRAPHIC FULL STOP 16AF5 ; Sentence_Terminal # Po BASSA VAH FULL STOP 16B37..16B38 ; Sentence_Terminal # Po [2] PAHAWH HMONG SIGN VOS THOM..PAHAWH HMONG SIGN VOS TSHAB CEEB 16B44 ; Sentence_Terminal # Po PAHAWH HMONG SIGN XAUS +16D6E..16D6F ; Sentence_Terminal # Po [2] KIRAT RAI DANDA..KIRAT RAI DOUBLE DANDA 16E98 ; Sentence_Terminal # Po MEDEFAIDRIN FULL STOP 1BC9F ; Sentence_Terminal # Po DUPLOYAN PUNCTUATION CHINOOK FULL STOP 1DA88 ; Sentence_Terminal # Po SIGNWRITING FULL STOP -# Total code points: 156 +# Total code points: 170 # ================================================ @@ -1640,8 +1727,8 @@ E0100..E01EF ; Variation_Selector # Mn [240] VARIATION SELECTOR-17..VARIATION S 239B..23B3 ; Pattern_Syntax # Sm [25] LEFT PARENTHESIS UPPER HOOK..SUMMATION BOTTOM 23B4..23DB ; Pattern_Syntax # So [40] TOP SQUARE BRACKET..FUSE 23DC..23E1 ; Pattern_Syntax # Sm [6] TOP PARENTHESIS..BOTTOM TORTOISE SHELL BRACKET -23E2..2426 ; Pattern_Syntax # So [69] WHITE TRAPEZIUM..SYMBOL FOR SUBSTITUTE FORM TWO -2427..243F ; Pattern_Syntax # Cn [25] <reserved-2427>..<reserved-243F> +23E2..2429 ; Pattern_Syntax # So [72] WHITE TRAPEZIUM..SYMBOL FOR DELETE MEDIUM SHADE FORM +242A..243F ; Pattern_Syntax # Cn [22] <reserved-242A>..<reserved-243F> 2440..244A ; Pattern_Syntax # So [11] OCR HOOK..OCR DOUBLE BACKSLASH 244B..245F ; Pattern_Syntax # Cn [21] <reserved-244B>..<reserved-245F> 2500..25B6 ; Pattern_Syntax # So [183] BOX DRAWINGS LIGHT HORIZONTAL..BLACK RIGHT-POINTING TRIANGLE @@ -1824,4 +1911,18 @@ FE45..FE46 ; Pattern_Syntax # Po [2] SESAME DOT..WHITE SESAME DOT # Total code points: 26 +# ================================================ + +0654..0655 ; Modifier_Combining_Mark # Mn [2] ARABIC HAMZA ABOVE..ARABIC HAMZA BELOW +0658 ; Modifier_Combining_Mark # Mn ARABIC MARK NOON GHUNNA +06DC ; Modifier_Combining_Mark # Mn ARABIC SMALL HIGH SEEN +06E3 ; Modifier_Combining_Mark # Mn ARABIC SMALL LOW SEEN +06E7..06E8 ; Modifier_Combining_Mark # Mn [2] ARABIC SMALL HIGH YEH..ARABIC SMALL HIGH NOON +08CA..08CB ; Modifier_Combining_Mark # Mn [2] ARABIC SMALL HIGH FARSI YEH..ARABIC SMALL HIGH YEH BARREE WITH TWO DOTS BELOW +08CD..08CF ; Modifier_Combining_Mark # Mn [3] ARABIC SMALL HIGH ZAH..ARABIC LARGE ROUND DOT BELOW +08D3 ; Modifier_Combining_Mark # Mn ARABIC SMALL LOW WAW +08F3 ; Modifier_Combining_Mark # Mn ARABIC SMALL HIGH WAW + +# Total code points: 14 + # EOF diff --git a/Master/texmf-dist/tex/generic/unicode-data/ScriptExtensions.txt b/Master/texmf-dist/tex/generic/unicode-data/ScriptExtensions.txt index 23141fb8241..140901a872c 100644 --- a/Master/texmf-dist/tex/generic/unicode-data/ScriptExtensions.txt +++ b/Master/texmf-dist/tex/generic/unicode-data/ScriptExtensions.txt @@ -1,8 +1,8 @@ -# ScriptExtensions-15.1.0.txt -# Date: 2023-02-01, 23:02:24 GMT -# © 2023 Unicode®, Inc. +# ScriptExtensions-16.0.0.txt +# Date: 2024-07-30, 19:38:00 GMT +# © 2024 Unicode®, Inc. # Unicode and the Unicode Logo are registered trademarks of Unicode, Inc. in the U.S. and other countries. -# For terms of use, see https://www.unicode.org/terms_of_use.html +# For terms of use and license, see https://www.unicode.org/terms_of_use.html # # Unicode Character Database # For documentation, see https://www.unicode.org/reports/tr44/ @@ -21,615 +21,213 @@ # values in that set is not material, but for stability in presentation # it is given here as alphabetical. # -# The Script_Extensions values are presented in sorted order in the file. -# They are sorted first by the number of Script property values in their sets, -# and then alphabetically by first differing Script property value. -# -# Following each distinct Script_Extensions value is the list of code -# points associated with that value, listed in code point order. -# # All code points not explicitly listed for Script_Extensions -# have as their value the corresponding Script property value +# have as their value the corresponding Script property value. # # @missing: 0000..10FFFF; <script> - -# ================================================ - -# Property: Script_Extensions - -# ================================================ - -# Script_Extensions=Beng - -1CF7 ; Beng # Mc VEDIC SIGN ATIKRAMA - -# Total code points: 1 - -# ================================================ - -# Script_Extensions=Deva - -1CD1 ; Deva # Mn VEDIC TONE SHARA -1CD4 ; Deva # Mn VEDIC SIGN YAJURVEDIC MIDLINE SVARITA -1CDB ; Deva # Mn VEDIC TONE TRIPLE SVARITA -1CDE..1CDF ; Deva # Mn [2] VEDIC TONE TWO DOTS BELOW..VEDIC TONE THREE DOTS BELOW -1CE2..1CE8 ; Deva # Mn [7] VEDIC SIGN VISARGA SVARITA..VEDIC SIGN VISARGA ANUDATTA WITH TAIL -1CEB..1CEC ; Deva # Lo [2] VEDIC SIGN ANUSVARA VAMAGOMUKHA..VEDIC SIGN ANUSVARA VAMAGOMUKHA WITH TAIL -1CEE..1CF1 ; Deva # Lo [4] VEDIC SIGN HEXIFORM LONG ANUSVARA..VEDIC SIGN ANUSVARA UBHAYATO MUKHA - -# Total code points: 18 - -# ================================================ - -# Script_Extensions=Dupl - -1BCA0..1BCA3 ; Dupl # Cf [4] SHORTHAND FORMAT LETTER OVERLAP..SHORTHAND FORMAT UP STEP - -# Total code points: 4 - -# ================================================ - -# Script_Extensions=Grek - -0342 ; Grek # Mn COMBINING GREEK PERISPOMENI -0345 ; Grek # Mn COMBINING GREEK YPOGEGRAMMENI -1DC0..1DC1 ; Grek # Mn [2] COMBINING DOTTED GRAVE ACCENT..COMBINING DOTTED ACUTE ACCENT - -# Total code points: 4 - -# ================================================ - -# Script_Extensions=Hani - -3006 ; Hani # Lo IDEOGRAPHIC CLOSING MARK -303E..303F ; Hani # So [2] IDEOGRAPHIC VARIATION INDICATOR..IDEOGRAPHIC HALF FILL SPACE -3190..3191 ; Hani # So [2] IDEOGRAPHIC ANNOTATION LINKING MARK..IDEOGRAPHIC ANNOTATION REVERSE MARK -3192..3195 ; Hani # No [4] IDEOGRAPHIC ANNOTATION ONE MARK..IDEOGRAPHIC ANNOTATION FOUR MARK -3196..319F ; Hani # So [10] IDEOGRAPHIC ANNOTATION TOP MARK..IDEOGRAPHIC ANNOTATION MAN MARK -31C0..31E3 ; Hani # So [36] CJK STROKE T..CJK STROKE Q -3220..3229 ; Hani # No [10] PARENTHESIZED IDEOGRAPH ONE..PARENTHESIZED IDEOGRAPH TEN -322A..3247 ; Hani # So [30] PARENTHESIZED IDEOGRAPH MOON..CIRCLED IDEOGRAPH KOTO -3280..3289 ; Hani # No [10] CIRCLED IDEOGRAPH ONE..CIRCLED IDEOGRAPH TEN -328A..32B0 ; Hani # So [39] CIRCLED IDEOGRAPH MOON..CIRCLED IDEOGRAPH NIGHT -32C0..32CB ; Hani # So [12] IDEOGRAPHIC TELEGRAPH SYMBOL FOR JANUARY..IDEOGRAPHIC TELEGRAPH SYMBOL FOR DECEMBER -32FF ; Hani # So SQUARE ERA NAME REIWA -3358..3370 ; Hani # So [25] IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR ZERO..IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TWENTY-FOUR -337B..337F ; Hani # So [5] SQUARE ERA NAME HEISEI..SQUARE CORPORATION -33E0..33FE ; Hani # So [31] IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY ONE..IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY THIRTY-ONE -1D360..1D371 ; Hani # No [18] COUNTING ROD UNIT DIGIT ONE..COUNTING ROD TENS DIGIT NINE -1F250..1F251 ; Hani # So [2] CIRCLED IDEOGRAPH ADVANTAGE..CIRCLED IDEOGRAPH ACCEPT - -# Total code points: 238 - -# ================================================ - -# Script_Extensions=Latn - -0363..036F ; Latn # Mn [13] COMBINING LATIN SMALL LETTER A..COMBINING LATIN SMALL LETTER X - -# Total code points: 13 - -# ================================================ - -# Script_Extensions=Nand - -1CFA ; Nand # Lo VEDIC SIGN DOUBLE ANUSVARA ANTARGOMUKHA - -# Total code points: 1 - -# ================================================ - -# Script_Extensions=Syrc - -1DFA ; Syrc # Mn COMBINING DOT BELOW LEFT - -# Total code points: 1 - -# ================================================ - -# Script_Extensions=Arab Copt - -102E0 ; Arab Copt # Mn COPTIC EPACT THOUSANDS MARK -102E1..102FB ; Arab Copt # No [27] COPTIC EPACT DIGIT ONE..COPTIC EPACT NUMBER NINE HUNDRED - -# Total code points: 28 - -# ================================================ - -# Script_Extensions=Arab Nkoo - -FD3E ; Arab Nkoo # Pe ORNATE LEFT PARENTHESIS -FD3F ; Arab Nkoo # Ps ORNATE RIGHT PARENTHESIS - -# Total code points: 2 - -# ================================================ - -# Script_Extensions=Arab Rohg - -06D4 ; Arab Rohg # Po ARABIC FULL STOP - -# Total code points: 1 - -# ================================================ - -# Script_Extensions=Arab Syrc - -064B..0655 ; Arab Syrc # Mn [11] ARABIC FATHATAN..ARABIC HAMZA BELOW -0670 ; Arab Syrc # Mn ARABIC LETTER SUPERSCRIPT ALEF - -# Total code points: 12 - -# ================================================ - -# Script_Extensions=Arab Thaa - -FDF2 ; Arab Thaa # Lo ARABIC LIGATURE ALLAH ISOLATED FORM -FDFD ; Arab Thaa # So ARABIC LIGATURE BISMILLAH AR-RAHMAN AR-RAHEEM - -# Total code points: 2 - -# ================================================ - -# Script_Extensions=Beng Deva - -1CD5..1CD6 ; Beng Deva # Mn [2] VEDIC TONE YAJURVEDIC AGGRAVATED INDEPENDENT SVARITA..VEDIC TONE YAJURVEDIC INDEPENDENT SVARITA -1CD8 ; Beng Deva # Mn VEDIC TONE CANDRA BELOW -1CE1 ; Beng Deva # Mc VEDIC TONE ATHARVAVEDIC INDEPENDENT SVARITA -1CEA ; Beng Deva # Lo VEDIC SIGN ANUSVARA BAHIRGOMUKHA -1CED ; Beng Deva # Mn VEDIC SIGN TIRYAK -1CF5..1CF6 ; Beng Deva # Lo [2] VEDIC SIGN JIHVAMULIYA..VEDIC SIGN UPADHMANIYA -A8F1 ; Beng Deva # Mn COMBINING DEVANAGARI SIGN AVAGRAHA - -# Total code points: 9 - -# ================================================ - -# Script_Extensions=Bopo Hani - -302A..302D ; Bopo Hani # Mn [4] IDEOGRAPHIC LEVEL TONE MARK..IDEOGRAPHIC ENTERING TONE MARK - -# Total code points: 4 - -# ================================================ - -# Script_Extensions=Bugi Java - -A9CF ; Bugi Java # Lm JAVANESE PANGRANGKEP - -# Total code points: 1 - -# ================================================ - -# Script_Extensions=Cprt Linb - -10102 ; Cprt Linb # Po AEGEAN CHECK MARK -10137..1013F ; Cprt Linb # So [9] AEGEAN WEIGHT BASE UNIT..AEGEAN MEASURE THIRD SUBUNIT - -# Total code points: 10 - -# ================================================ - -# Script_Extensions=Cyrl Glag - -0484 ; Cyrl Glag # Mn COMBINING CYRILLIC PALATALIZATION -0487 ; Cyrl Glag # Mn COMBINING CYRILLIC POKRYTIE -2E43 ; Cyrl Glag # Po DASH WITH LEFT UPTURN -A66F ; Cyrl Glag # Mn COMBINING CYRILLIC VZMET - -# Total code points: 4 - -# ================================================ - -# Script_Extensions=Cyrl Latn - -0485..0486 ; Cyrl Latn # Mn [2] COMBINING CYRILLIC DASIA PNEUMATA..COMBINING CYRILLIC PSILI PNEUMATA - -# Total code points: 2 - -# ================================================ - -# Script_Extensions=Cyrl Perm - -0483 ; Cyrl Perm # Mn COMBINING CYRILLIC TITLO - -# Total code points: 1 - -# ================================================ - -# Script_Extensions=Cyrl Syrc - -1DF8 ; Cyrl Syrc # Mn COMBINING DOT ABOVE LEFT - -# Total code points: 1 - -# ================================================ - -# Script_Extensions=Deva Gran - -1CD3 ; Deva Gran # Po VEDIC SIGN NIHSHVASA -1CF3 ; Deva Gran # Lo VEDIC SIGN ROTATED ARDHAVISARGA -1CF8..1CF9 ; Deva Gran # Mn [2] VEDIC TONE RING ABOVE..VEDIC TONE DOUBLE RING ABOVE - -# Total code points: 4 - -# ================================================ - -# Script_Extensions=Deva Nand - -1CE9 ; Deva Nand # Lo VEDIC SIGN ANUSVARA ANTARGOMUKHA - -# Total code points: 1 - -# ================================================ - -# Script_Extensions=Deva Shrd - -1CD7 ; Deva Shrd # Mn VEDIC TONE YAJURVEDIC KATHAKA INDEPENDENT SVARITA -1CD9 ; Deva Shrd # Mn VEDIC TONE YAJURVEDIC KATHAKA INDEPENDENT SVARITA SCHROEDER -1CDC..1CDD ; Deva Shrd # Mn [2] VEDIC TONE KATHAKA ANUDATTA..VEDIC TONE DOT BELOW -1CE0 ; Deva Shrd # Mn VEDIC TONE RIGVEDIC KASHMIRI INDEPENDENT SVARITA - -# Total code points: 5 - -# ================================================ - -# Script_Extensions=Deva Taml - -A8F3 ; Deva Taml # Lo DEVANAGARI SIGN CANDRABINDU VIRAMA - -# Total code points: 1 - -# ================================================ - -# Script_Extensions=Geor Latn - -10FB ; Geor Latn # Po GEORGIAN PARAGRAPH SEPARATOR - -# Total code points: 1 - -# ================================================ - -# Script_Extensions=Gran Taml - -0BE6..0BEF ; Gran Taml # Nd [10] TAMIL DIGIT ZERO..TAMIL DIGIT NINE -0BF0..0BF2 ; Gran Taml # No [3] TAMIL NUMBER TEN..TAMIL NUMBER ONE THOUSAND -0BF3 ; Gran Taml # So TAMIL DAY SIGN -11301 ; Gran Taml # Mn GRANTHA SIGN CANDRABINDU -11303 ; Gran Taml # Mc GRANTHA SIGN VISARGA -1133B..1133C ; Gran Taml # Mn [2] COMBINING BINDU BELOW..GRANTHA SIGN NUKTA -11FD0..11FD1 ; Gran Taml # No [2] TAMIL FRACTION ONE QUARTER..TAMIL FRACTION ONE HALF-1 -11FD3 ; Gran Taml # No TAMIL FRACTION THREE QUARTERS - -# Total code points: 21 - -# ================================================ - -# Script_Extensions=Gujr Khoj - -0AE6..0AEF ; Gujr Khoj # Nd [10] GUJARATI DIGIT ZERO..GUJARATI DIGIT NINE - -# Total code points: 10 - -# ================================================ - -# Script_Extensions=Guru Mult - -0A66..0A6F ; Guru Mult # Nd [10] GURMUKHI DIGIT ZERO..GURMUKHI DIGIT NINE - -# Total code points: 10 - -# ================================================ - -# Script_Extensions=Hani Latn - -A700..A707 ; Hani Latn # Sk [8] MODIFIER LETTER CHINESE TONE YIN PING..MODIFIER LETTER CHINESE TONE YANG RU - -# Total code points: 8 - -# ================================================ - -# Script_Extensions=Hira Kana - -3031..3035 ; Hira Kana # Lm [5] VERTICAL KANA REPEAT MARK..VERTICAL KANA REPEAT MARK LOWER HALF -3099..309A ; Hira Kana # Mn [2] COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK..COMBINING KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK -309B..309C ; Hira Kana # Sk [2] KATAKANA-HIRAGANA VOICED SOUND MARK..KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK -30A0 ; Hira Kana # Pd KATAKANA-HIRAGANA DOUBLE HYPHEN -30FC ; Hira Kana # Lm KATAKANA-HIRAGANA PROLONGED SOUND MARK -FF70 ; Hira Kana # Lm HALFWIDTH KATAKANA-HIRAGANA PROLONGED SOUND MARK -FF9E..FF9F ; Hira Kana # Lm [2] HALFWIDTH KATAKANA VOICED SOUND MARK..HALFWIDTH KATAKANA SEMI-VOICED SOUND MARK - -# Total code points: 14 - -# ================================================ - -# Script_Extensions=Knda Nand - -0CE6..0CEF ; Knda Nand # Nd [10] KANNADA DIGIT ZERO..KANNADA DIGIT NINE - -# Total code points: 10 - -# ================================================ - -# Script_Extensions=Latn Mong - -202F ; Latn Mong # Zs NARROW NO-BREAK SPACE - -# Total code points: 1 - -# ================================================ - -# Script_Extensions=Mani Ougr - -10AF2 ; Mani Ougr # Po MANICHAEAN PUNCTUATION DOUBLE DOT WITHIN DOT - -# Total code points: 1 - -# ================================================ - -# Script_Extensions=Mong Phag - -1802..1803 ; Mong Phag # Po [2] MONGOLIAN COMMA..MONGOLIAN FULL STOP -1805 ; Mong Phag # Po MONGOLIAN FOUR DOTS - -# Total code points: 3 - -# ================================================ - -# Script_Extensions=Arab Syrc Thaa - -061C ; Arab Syrc Thaa # Cf ARABIC LETTER MARK - -# Total code points: 1 - -# ================================================ - -# Script_Extensions=Arab Thaa Yezi - -0660..0669 ; Arab Thaa Yezi # Nd [10] ARABIC-INDIC DIGIT ZERO..ARABIC-INDIC DIGIT NINE - -# Total code points: 10 - -# ================================================ - -# Script_Extensions=Beng Cakm Sylo - -09E6..09EF ; Beng Cakm Sylo # Nd [10] BENGALI DIGIT ZERO..BENGALI DIGIT NINE - -# Total code points: 10 - -# ================================================ - -# Script_Extensions=Cakm Mymr Tale - -1040..1049 ; Cakm Mymr Tale # Nd [10] MYANMAR DIGIT ZERO..MYANMAR DIGIT NINE - -# Total code points: 10 - -# ================================================ - -# Script_Extensions=Cpmn Cprt Linb - -10100..10101 ; Cpmn Cprt Linb # Po [2] AEGEAN WORD SEPARATOR LINE..AEGEAN WORD SEPARATOR DOT - -# Total code points: 2 - -# ================================================ - -# Script_Extensions=Cprt Lina Linb - -10107..10133 ; Cprt Lina Linb # No [45] AEGEAN NUMBER ONE..AEGEAN NUMBER NINETY THOUSAND - -# Total code points: 45 - -# ================================================ - -# Script_Extensions=Deva Gran Knda - -1CF4 ; Deva Gran Knda # Mn VEDIC TONE CANDRA ABOVE - -# Total code points: 1 - -# ================================================ - -# Script_Extensions=Deva Gran Latn - -20F0 ; Deva Gran Latn # Mn COMBINING ASTERISK ABOVE - -# Total code points: 1 - -# ================================================ - -# Script_Extensions=Hani Hira Kana - -303C ; Hani Hira Kana # Lo MASU MARK -303D ; Hani Hira Kana # Po PART ALTERNATION MARK - -# Total code points: 2 - -# ================================================ - -# Script_Extensions=Kali Latn Mymr - -A92E ; Kali Latn Mymr # Po KAYAH LI SIGN CWI - -# Total code points: 1 - -# ================================================ - -# Script_Extensions=Beng Deva Gran Knda - -1CD0 ; Beng Deva Gran Knda # Mn VEDIC TONE KARSHANA -1CD2 ; Beng Deva Gran Knda # Mn VEDIC TONE PRENKHA - -# Total code points: 2 - -# ================================================ - -# Script_Extensions=Buhd Hano Tagb Tglg - -1735..1736 ; Buhd Hano Tagb Tglg # Po [2] PHILIPPINE SINGLE PUNCTUATION..PHILIPPINE DOUBLE PUNCTUATION - -# Total code points: 2 - -# ================================================ - -# Script_Extensions=Deva Dogr Kthi Mahj - -0966..096F ; Deva Dogr Kthi Mahj # Nd [10] DEVANAGARI DIGIT ZERO..DEVANAGARI DIGIT NINE - -# Total code points: 10 - -# ================================================ - -# Script_Extensions=Bopo Hang Hani Hira Kana - -3003 ; Bopo Hang Hani Hira Kana # Po DITTO MARK -3013 ; Bopo Hang Hani Hira Kana # So GETA MARK -301C ; Bopo Hang Hani Hira Kana # Pd WAVE DASH -301D ; Bopo Hang Hani Hira Kana # Ps REVERSED DOUBLE PRIME QUOTATION MARK -301E..301F ; Bopo Hang Hani Hira Kana # Pe [2] DOUBLE PRIME QUOTATION MARK..LOW DOUBLE PRIME QUOTATION MARK -3030 ; Bopo Hang Hani Hira Kana # Pd WAVY DASH -3037 ; Bopo Hang Hani Hira Kana # So IDEOGRAPHIC TELEGRAPH LINE FEED SEPARATOR SYMBOL -FE45..FE46 ; Bopo Hang Hani Hira Kana # Po [2] SESAME DOT..WHITE SESAME DOT - -# Total code points: 10 - -# ================================================ - -# Script_Extensions=Arab Nkoo Rohg Syrc Thaa Yezi - -060C ; Arab Nkoo Rohg Syrc Thaa Yezi # Po ARABIC COMMA -061B ; Arab Nkoo Rohg Syrc Thaa Yezi # Po ARABIC SEMICOLON - -# Total code points: 2 - -# ================================================ - -# Script_Extensions=Bopo Hang Hani Hira Kana Yiii - -3001..3002 ; Bopo Hang Hani Hira Kana Yiii # Po [2] IDEOGRAPHIC COMMA..IDEOGRAPHIC FULL STOP -3008 ; Bopo Hang Hani Hira Kana Yiii # Ps LEFT ANGLE BRACKET -3009 ; Bopo Hang Hani Hira Kana Yiii # Pe RIGHT ANGLE BRACKET -300A ; Bopo Hang Hani Hira Kana Yiii # Ps LEFT DOUBLE ANGLE BRACKET -300B ; Bopo Hang Hani Hira Kana Yiii # Pe RIGHT DOUBLE ANGLE BRACKET -300C ; Bopo Hang Hani Hira Kana Yiii # Ps LEFT CORNER BRACKET -300D ; Bopo Hang Hani Hira Kana Yiii # Pe RIGHT CORNER BRACKET -300E ; Bopo Hang Hani Hira Kana Yiii # Ps LEFT WHITE CORNER BRACKET -300F ; Bopo Hang Hani Hira Kana Yiii # Pe RIGHT WHITE CORNER BRACKET -3010 ; Bopo Hang Hani Hira Kana Yiii # Ps LEFT BLACK LENTICULAR BRACKET -3011 ; Bopo Hang Hani Hira Kana Yiii # Pe RIGHT BLACK LENTICULAR BRACKET -3014 ; Bopo Hang Hani Hira Kana Yiii # Ps LEFT TORTOISE SHELL BRACKET -3015 ; Bopo Hang Hani Hira Kana Yiii # Pe RIGHT TORTOISE SHELL BRACKET -3016 ; Bopo Hang Hani Hira Kana Yiii # Ps LEFT WHITE LENTICULAR BRACKET -3017 ; Bopo Hang Hani Hira Kana Yiii # Pe RIGHT WHITE LENTICULAR BRACKET -3018 ; Bopo Hang Hani Hira Kana Yiii # Ps LEFT WHITE TORTOISE SHELL BRACKET -3019 ; Bopo Hang Hani Hira Kana Yiii # Pe RIGHT WHITE TORTOISE SHELL BRACKET -301A ; Bopo Hang Hani Hira Kana Yiii # Ps LEFT WHITE SQUARE BRACKET -301B ; Bopo Hang Hani Hira Kana Yiii # Pe RIGHT WHITE SQUARE BRACKET -30FB ; Bopo Hang Hani Hira Kana Yiii # Po KATAKANA MIDDLE DOT -FF61 ; Bopo Hang Hani Hira Kana Yiii # Po HALFWIDTH IDEOGRAPHIC FULL STOP -FF62 ; Bopo Hang Hani Hira Kana Yiii # Ps HALFWIDTH LEFT CORNER BRACKET -FF63 ; Bopo Hang Hani Hira Kana Yiii # Pe HALFWIDTH RIGHT CORNER BRACKET -FF64..FF65 ; Bopo Hang Hani Hira Kana Yiii # Po [2] HALFWIDTH IDEOGRAPHIC COMMA..HALFWIDTH KATAKANA MIDDLE DOT - -# Total code points: 26 - -# ================================================ - -# Script_Extensions=Deva Knda Mlym Orya Taml Telu - -1CDA ; Deva Knda Mlym Orya Taml Telu # Mn VEDIC TONE DOUBLE SVARITA - -# Total code points: 1 - -# ================================================ - -# Script_Extensions=Adlm Arab Nkoo Rohg Syrc Thaa Yezi - -061F ; Adlm Arab Nkoo Rohg Syrc Thaa Yezi # Po ARABIC QUESTION MARK - -# Total code points: 1 - -# ================================================ - -# Script_Extensions=Adlm Arab Mand Mani Ougr Phlp Rohg Sogd Syrc - -0640 ; Adlm Arab Mand Mani Ougr Phlp Rohg Sogd Syrc # Lm ARABIC TATWEEL - -# Total code points: 1 - -# ================================================ - -# Script_Extensions=Beng Deva Gran Knda Mlym Nand Orya Sinh Telu Tirh - -1CF2 ; Beng Deva Gran Knda Mlym Nand Orya Sinh Telu Tirh # Lo VEDIC SIGN ARDHAVISARGA - -# Total code points: 1 - -# ================================================ - -# Script_Extensions=Deva Dogr Gujr Guru Khoj Kthi Mahj Modi Sind Takr Tirh - -A836..A837 ; Deva Dogr Gujr Guru Khoj Kthi Mahj Modi Sind Takr Tirh # So [2] NORTH INDIC QUARTER MARK..NORTH INDIC PLACEHOLDER MARK -A839 ; Deva Dogr Gujr Guru Khoj Kthi Mahj Modi Sind Takr Tirh # So NORTH INDIC QUANTITY MARK - -# Total code points: 3 - -# ================================================ - -# Script_Extensions=Beng Deva Gran Gujr Guru Knda Latn Mlym Orya Taml Telu Tirh - -0952 ; Beng Deva Gran Gujr Guru Knda Latn Mlym Orya Taml Telu Tirh # Mn DEVANAGARI STRESS SIGN ANUDATTA - -# Total code points: 1 - -# ================================================ - -# Script_Extensions=Deva Dogr Gujr Guru Khoj Kthi Mahj Modi Shrd Sind Takr Tirh - -A838 ; Deva Dogr Gujr Guru Khoj Kthi Mahj Modi Shrd Sind Takr Tirh # Sc NORTH INDIC RUPEE MARK - -# Total code points: 1 - -# ================================================ - -# Script_Extensions=Beng Deva Gran Gujr Guru Knda Latn Mlym Orya Shrd Taml Telu Tirh - -0951 ; Beng Deva Gran Gujr Guru Knda Latn Mlym Orya Shrd Taml Telu Tirh # Mn DEVANAGARI STRESS SIGN UDATTA - -# Total code points: 1 - -# ================================================ - -# Script_Extensions=Deva Dogr Gujr Guru Khoj Knda Kthi Mahj Modi Nand Shrd Sind Takr Tirh - -A833..A835 ; Deva Dogr Gujr Guru Khoj Knda Kthi Mahj Modi Nand Shrd Sind Takr Tirh # No [3] NORTH INDIC FRACTION ONE SIXTEENTH..NORTH INDIC FRACTION THREE SIXTEENTHS - -# Total code points: 3 - -# ================================================ - -# Script_Extensions=Deva Dogr Gujr Guru Khoj Knda Kthi Mahj Mlym Modi Nand Shrd Sind Takr Tirh - -A830..A832 ; Deva Dogr Gujr Guru Khoj Knda Kthi Mahj Mlym Modi Nand Shrd Sind Takr Tirh # No [3] NORTH INDIC FRACTION ONE QUARTER..NORTH INDIC FRACTION THREE QUARTERS - -# Total code points: 3 - -# ================================================ - -# Script_Extensions=Beng Deva Dogr Gong Gonm Gran Gujr Guru Knda Mahj Mlym Nand Orya Sind Sinh Sylo Takr Taml Telu Tirh - -0964 ; Beng Deva Dogr Gong Gonm Gran Gujr Guru Knda Mahj Mlym Nand Orya Sind Sinh Sylo Takr Taml Telu Tirh # Po DEVANAGARI DANDA - -# Total code points: 1 - -# ================================================ - -# Script_Extensions=Beng Deva Dogr Gong Gonm Gran Gujr Guru Knda Limb Mahj Mlym Nand Orya Sind Sinh Sylo Takr Taml Telu Tirh - -0965 ; Beng Deva Dogr Gong Gonm Gran Gujr Guru Knda Limb Mahj Mlym Nand Orya Sind Sinh Sylo Takr Taml Telu Tirh # Po DEVANAGARI DOUBLE DANDA - -# Total code points: 1 +00B7 ; Avst Cari Copt Dupl Elba Geor Glag Gong Goth Grek Hani Latn Lydi Mahj Perm Shaw #Po MIDDLE DOT +02BC ; Beng Cyrl Deva Latn Lisu Thai Toto #Lm MODIFIER LETTER APOSTROPHE +02C7 ; Bopo Latn # Lm CARON +02C9..02CB ; Bopo Latn # Lm [3] MODIFIER LETTER MACRON..MODIFIER LETTER GRAVE ACCENT +02CD ; Latn Lisu # Lm MODIFIER LETTER LOW MACRON +02D7 ; Latn Thai # Sk MODIFIER LETTER MINUS SIGN +02D9 ; Bopo Latn # Sk DOT ABOVE +0300 ; Cher Copt Cyrl Grek Latn Perm Sunu Tale #Mn COMBINING GRAVE ACCENT +0301 ; Cher Cyrl Grek Latn Osge Sunu Tale Todr #Mn COMBINING ACUTE ACCENT +0302 ; Cher Cyrl Latn Tfng # Mn COMBINING CIRCUMFLEX ACCENT +0303 ; Glag Latn Sunu Syrc Thai # Mn COMBINING TILDE +0304 ; Aghb Cher Copt Cyrl Goth Grek Latn Osge Syrc Tfng Todr #Mn COMBINING MACRON +0305 ; Copt Elba Glag Goth Kana Latn # Mn COMBINING OVERLINE +0306 ; Cyrl Grek Latn Perm # Mn COMBINING BREVE +0307 ; Copt Dupl Hebr Latn Perm Syrc Tale Tfng Todr #Mn COMBINING DOT ABOVE +0308 ; Armn Cyrl Dupl Goth Grek Hebr Latn Perm Syrc Tale #Mn COMBINING DIAERESIS +0309 ; Latn Tfng # Mn COMBINING HOOK ABOVE +030A ; Dupl Latn Syrc # Mn COMBINING RING ABOVE +030B ; Cher Cyrl Latn Osge # Mn COMBINING DOUBLE ACUTE ACCENT +030C ; Cher Latn Tale # Mn COMBINING CARON +030D ; Latn Sunu # Mn COMBINING VERTICAL LINE ABOVE +030E ; Ethi Latn # Mn COMBINING DOUBLE VERTICAL LINE ABOVE +0310 ; Latn Sunu # Mn COMBINING CANDRABINDU +0311 ; Cyrl Latn Todr # Mn COMBINING INVERTED BREVE +0313 ; Grek Latn Perm Todr # Mn COMBINING COMMA ABOVE +0320 ; Latn Syrc # Mn COMBINING MINUS SIGN BELOW +0323 ; Cher Dupl Kana Latn Syrc # Mn COMBINING DOT BELOW +0324 ; Cher Dupl Latn Syrc # Mn COMBINING DIAERESIS BELOW +0325 ; Latn Syrc # Mn COMBINING RING BELOW +032D ; Latn Sunu Syrc # Mn COMBINING CIRCUMFLEX ACCENT BELOW +032E ; Latn Syrc # Mn COMBINING BREVE BELOW +0330 ; Cher Latn Syrc # Mn COMBINING TILDE BELOW +0331 ; Aghb Cher Goth Latn Sunu Thai # Mn COMBINING MACRON BELOW +0342 ; Grek # Mn COMBINING GREEK PERISPOMENI +0345 ; Grek # Mn COMBINING GREEK YPOGEGRAMMENI +0358 ; Latn Osge # Mn COMBINING DOT ABOVE RIGHT +035E ; Aghb Latn Todr # Mn COMBINING DOUBLE MACRON +0363..036F ; Latn # Mn [13] COMBINING LATIN SMALL LETTER A..COMBINING LATIN SMALL LETTER X +0374 ; Copt Grek # Lm GREEK NUMERAL SIGN +0375 ; Copt Grek # Sk GREEK LOWER NUMERAL SIGN +0483 ; Cyrl Perm # Mn COMBINING CYRILLIC TITLO +0484 ; Cyrl Glag # Mn COMBINING CYRILLIC PALATALIZATION +0485..0486 ; Cyrl Latn # Mn [2] COMBINING CYRILLIC DASIA PNEUMATA..COMBINING CYRILLIC PSILI PNEUMATA +0487 ; Cyrl Glag # Mn COMBINING CYRILLIC POKRYTIE +0589 ; Armn Geor Glag # Po ARMENIAN FULL STOP +060C ; Arab Gara Nkoo Rohg Syrc Thaa Yezi #Po ARABIC COMMA +061B ; Arab Gara Nkoo Rohg Syrc Thaa Yezi #Po ARABIC SEMICOLON +061C ; Arab Syrc Thaa # Cf ARABIC LETTER MARK +061F ; Adlm Arab Gara Nkoo Rohg Syrc Thaa Yezi #Po ARABIC QUESTION MARK +0640 ; Adlm Arab Mand Mani Ougr Phlp Rohg Sogd Syrc #Lm ARABIC TATWEEL +064B..0655 ; Arab Syrc # Mn [11] ARABIC FATHATAN..ARABIC HAMZA BELOW +0660..0669 ; Arab Thaa Yezi # Nd [10] ARABIC-INDIC DIGIT ZERO..ARABIC-INDIC DIGIT NINE +0670 ; Arab Syrc # Mn ARABIC LETTER SUPERSCRIPT ALEF +06D4 ; Arab Rohg # Po ARABIC FULL STOP +0951 ; Beng Deva Gran Gujr Guru Knda Latn Mlym Orya Shrd Taml Telu Tirh #Mn DEVANAGARI STRESS SIGN UDATTA +0952 ; Beng Deva Gran Gujr Guru Knda Latn Mlym Orya Taml Telu Tirh #Mn DEVANAGARI STRESS SIGN ANUDATTA +0964 ; Beng Deva Dogr Gong Gonm Gran Gujr Guru Knda Mahj Mlym Nand Onao Orya Sind Sinh Sylo Takr Taml Telu Tirh #Po DEVANAGARI DANDA +0965 ; Beng Deva Dogr Gong Gonm Gran Gujr Gukh Guru Knda Limb Mahj Mlym Nand Onao Orya Sind Sinh Sylo Takr Taml Telu Tirh #Po DEVANAGARI DOUBLE DANDA +0966..096F ; Deva Dogr Kthi Mahj # Nd [10] DEVANAGARI DIGIT ZERO..DEVANAGARI DIGIT NINE +09E6..09EF ; Beng Cakm Sylo # Nd [10] BENGALI DIGIT ZERO..BENGALI DIGIT NINE +0A66..0A6F ; Guru Mult # Nd [10] GURMUKHI DIGIT ZERO..GURMUKHI DIGIT NINE +0AE6..0AEF ; Gujr Khoj # Nd [10] GUJARATI DIGIT ZERO..GUJARATI DIGIT NINE +0BE6..0BEF ; Gran Taml # Nd [10] TAMIL DIGIT ZERO..TAMIL DIGIT NINE +0BF0..0BF2 ; Gran Taml # No [3] TAMIL NUMBER TEN..TAMIL NUMBER ONE THOUSAND +0BF3 ; Gran Taml # So TAMIL DAY SIGN +0CE6..0CEF ; Knda Nand Tutg # Nd [10] KANNADA DIGIT ZERO..KANNADA DIGIT NINE +1040..1049 ; Cakm Mymr Tale # Nd [10] MYANMAR DIGIT ZERO..MYANMAR DIGIT NINE +10FB ; Geor Glag Latn # Po GEORGIAN PARAGRAPH SEPARATOR +16EB..16ED ; Runr # Po [3] RUNIC SINGLE PUNCTUATION..RUNIC CROSS PUNCTUATION +1735..1736 ; Buhd Hano Tagb Tglg # Po [2] PHILIPPINE SINGLE PUNCTUATION..PHILIPPINE DOUBLE PUNCTUATION +1802..1803 ; Mong Phag # Po [2] MONGOLIAN COMMA..MONGOLIAN FULL STOP +1805 ; Mong Phag # Po MONGOLIAN FOUR DOTS +1CD0 ; Beng Deva Gran Knda # Mn VEDIC TONE KARSHANA +1CD1 ; Deva # Mn VEDIC TONE SHARA +1CD2 ; Beng Deva Gran Knda # Mn VEDIC TONE PRENKHA +1CD3 ; Deva Gran Knda # Po VEDIC SIGN NIHSHVASA +1CD4 ; Deva # Mn VEDIC SIGN YAJURVEDIC MIDLINE SVARITA +1CD5..1CD6 ; Beng Deva # Mn [2] VEDIC TONE YAJURVEDIC AGGRAVATED INDEPENDENT SVARITA..VEDIC TONE YAJURVEDIC INDEPENDENT SVARITA +1CD7 ; Deva Shrd # Mn VEDIC TONE YAJURVEDIC KATHAKA INDEPENDENT SVARITA +1CD8 ; Beng Deva # Mn VEDIC TONE CANDRA BELOW +1CD9 ; Deva Shrd # Mn VEDIC TONE YAJURVEDIC KATHAKA INDEPENDENT SVARITA SCHROEDER +1CDA ; Deva Knda Mlym Orya Taml Telu # Mn VEDIC TONE DOUBLE SVARITA +1CDB ; Deva # Mn VEDIC TONE TRIPLE SVARITA +1CDC..1CDD ; Deva Shrd # Mn [2] VEDIC TONE KATHAKA ANUDATTA..VEDIC TONE DOT BELOW +1CDE..1CDF ; Deva # Mn [2] VEDIC TONE TWO DOTS BELOW..VEDIC TONE THREE DOTS BELOW +1CE0 ; Deva Shrd # Mn VEDIC TONE RIGVEDIC KASHMIRI INDEPENDENT SVARITA +1CE1 ; Beng Deva # Mc VEDIC TONE ATHARVAVEDIC INDEPENDENT SVARITA +1CE2..1CE8 ; Deva # Mn [7] VEDIC SIGN VISARGA SVARITA..VEDIC SIGN VISARGA ANUDATTA WITH TAIL +1CE9 ; Deva Nand # Lo VEDIC SIGN ANUSVARA ANTARGOMUKHA +1CEA ; Beng Deva # Lo VEDIC SIGN ANUSVARA BAHIRGOMUKHA +1CEB..1CEC ; Deva # Lo [2] VEDIC SIGN ANUSVARA VAMAGOMUKHA..VEDIC SIGN ANUSVARA VAMAGOMUKHA WITH TAIL +1CED ; Beng Deva # Mn VEDIC SIGN TIRYAK +1CEE..1CF1 ; Deva # Lo [4] VEDIC SIGN HEXIFORM LONG ANUSVARA..VEDIC SIGN ANUSVARA UBHAYATO MUKHA +1CF2 ; Beng Deva Gran Knda Mlym Nand Orya Sinh Telu Tirh Tutg #Lo VEDIC SIGN ARDHAVISARGA +1CF3 ; Deva Gran # Lo VEDIC SIGN ROTATED ARDHAVISARGA +1CF4 ; Deva Gran Knda Tutg # Mn VEDIC TONE CANDRA ABOVE +1CF5..1CF6 ; Beng Deva # Lo [2] VEDIC SIGN JIHVAMULIYA..VEDIC SIGN UPADHMANIYA +1CF7 ; Beng # Mc VEDIC SIGN ATIKRAMA +1CF8..1CF9 ; Deva Gran # Mn [2] VEDIC TONE RING ABOVE..VEDIC TONE DOUBLE RING ABOVE +1CFA ; Nand # Lo VEDIC SIGN DOUBLE ANUSVARA ANTARGOMUKHA +1DC0..1DC1 ; Grek # Mn [2] COMBINING DOTTED GRAVE ACCENT..COMBINING DOTTED ACUTE ACCENT +1DF8 ; Cyrl Latn Syrc # Mn COMBINING DOT ABOVE LEFT +1DFA ; Syrc # Mn COMBINING DOT BELOW LEFT +202F ; Latn Mong Phag # Zs NARROW NO-BREAK SPACE +204F ; Adlm Arab # Po REVERSED SEMICOLON +205A ; Cari Geor Glag Hung Lyci Orkh # Po TWO DOT PUNCTUATION +205D ; Cari Grek Hung Mero # Po TRICOLON +20F0 ; Deva Gran Latn # Mn COMBINING ASTERISK ABOVE +2E17 ; Copt Latn # Pd DOUBLE OBLIQUE HYPHEN +2E30 ; Avst Orkh # Po RING POINT +2E31 ; Avst Cari Geor Hung Kthi Lydi Samr #Po WORD SEPARATOR MIDDLE DOT +2E3C ; Dupl # Po STENOGRAPHIC FULL STOP +2E41 ; Adlm Arab Hung # Po REVERSED COMMA +2E43 ; Cyrl Glag # Po DASH WITH LEFT UPTURN +2FF0..2FFF ; Hani Tang # So [16] IDEOGRAPHIC DESCRIPTION CHARACTER LEFT TO RIGHT..IDEOGRAPHIC DESCRIPTION CHARACTER ROTATION +3001 ; Bopo Hang Hani Hira Kana Mong Yiii #Po IDEOGRAPHIC COMMA +3002 ; Bopo Hang Hani Hira Kana Mong Phag Yiii #Po IDEOGRAPHIC FULL STOP +3003 ; Bopo Hang Hani Hira Kana # Po DITTO MARK +3006 ; Hani # Lo IDEOGRAPHIC CLOSING MARK +3008 ; Bopo Hang Hani Hira Kana Mong Tibt Yiii #Ps LEFT ANGLE BRACKET +3009 ; Bopo Hang Hani Hira Kana Mong Tibt Yiii #Pe RIGHT ANGLE BRACKET +300A ; Bopo Hang Hani Hira Kana Lisu Mong Tibt Yiii #Ps LEFT DOUBLE ANGLE BRACKET +300B ; Bopo Hang Hani Hira Kana Lisu Mong Tibt Yiii #Pe RIGHT DOUBLE ANGLE BRACKET +300C ; Bopo Hang Hani Hira Kana Yiii # Ps LEFT CORNER BRACKET +300D ; Bopo Hang Hani Hira Kana Yiii # Pe RIGHT CORNER BRACKET +300E ; Bopo Hang Hani Hira Kana Yiii # Ps LEFT WHITE CORNER BRACKET +300F ; Bopo Hang Hani Hira Kana Yiii # Pe RIGHT WHITE CORNER BRACKET +3010 ; Bopo Hang Hani Hira Kana Yiii # Ps LEFT BLACK LENTICULAR BRACKET +3011 ; Bopo Hang Hani Hira Kana Yiii # Pe RIGHT BLACK LENTICULAR BRACKET +3013 ; Bopo Hang Hani Hira Kana # So GETA MARK +3014 ; Bopo Hang Hani Hira Kana Yiii # Ps LEFT TORTOISE SHELL BRACKET +3015 ; Bopo Hang Hani Hira Kana Yiii # Pe RIGHT TORTOISE SHELL BRACKET +3016 ; Bopo Hang Hani Hira Kana Yiii # Ps LEFT WHITE LENTICULAR BRACKET +3017 ; Bopo Hang Hani Hira Kana Yiii # Pe RIGHT WHITE LENTICULAR BRACKET +3018 ; Bopo Hang Hani Hira Kana Yiii # Ps LEFT WHITE TORTOISE SHELL BRACKET +3019 ; Bopo Hang Hani Hira Kana Yiii # Pe RIGHT WHITE TORTOISE SHELL BRACKET +301A ; Bopo Hang Hani Hira Kana Yiii # Ps LEFT WHITE SQUARE BRACKET +301B ; Bopo Hang Hani Hira Kana Yiii # Pe RIGHT WHITE SQUARE BRACKET +301C ; Bopo Hang Hani Hira Kana # Pd WAVE DASH +301D ; Bopo Hang Hani Hira Kana # Ps REVERSED DOUBLE PRIME QUOTATION MARK +301E..301F ; Bopo Hang Hani Hira Kana # Pe [2] DOUBLE PRIME QUOTATION MARK..LOW DOUBLE PRIME QUOTATION MARK +302A..302D ; Bopo Hani # Mn [4] IDEOGRAPHIC LEVEL TONE MARK..IDEOGRAPHIC ENTERING TONE MARK +3030 ; Bopo Hang Hani Hira Kana # Pd WAVY DASH +3031..3035 ; Hira Kana # Lm [5] VERTICAL KANA REPEAT MARK..VERTICAL KANA REPEAT MARK LOWER HALF +3037 ; Bopo Hang Hani Hira Kana # So IDEOGRAPHIC TELEGRAPH LINE FEED SEPARATOR SYMBOL +303C ; Hani Hira Kana # Lo MASU MARK +303D ; Hani Hira Kana # Po PART ALTERNATION MARK +303E..303F ; Hani # So [2] IDEOGRAPHIC VARIATION INDICATOR..IDEOGRAPHIC HALF FILL SPACE +3099..309A ; Hira Kana # Mn [2] COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK..COMBINING KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK +309B..309C ; Hira Kana # Sk [2] KATAKANA-HIRAGANA VOICED SOUND MARK..KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK +30A0 ; Hira Kana # Pd KATAKANA-HIRAGANA DOUBLE HYPHEN +30FB ; Bopo Hang Hani Hira Kana Yiii # Po KATAKANA MIDDLE DOT +30FC ; Hira Kana # Lm KATAKANA-HIRAGANA PROLONGED SOUND MARK +3190..3191 ; Hani # So [2] IDEOGRAPHIC ANNOTATION LINKING MARK..IDEOGRAPHIC ANNOTATION REVERSE MARK +3192..3195 ; Hani # No [4] IDEOGRAPHIC ANNOTATION ONE MARK..IDEOGRAPHIC ANNOTATION FOUR MARK +3196..319F ; Hani # So [10] IDEOGRAPHIC ANNOTATION TOP MARK..IDEOGRAPHIC ANNOTATION MAN MARK +31C0..31E5 ; Hani # So [38] CJK STROKE T..CJK STROKE SZP +31EF ; Hani Tang # So IDEOGRAPHIC DESCRIPTION CHARACTER SUBTRACTION +3220..3229 ; Hani # No [10] PARENTHESIZED IDEOGRAPH ONE..PARENTHESIZED IDEOGRAPH TEN +322A..3247 ; Hani # So [30] PARENTHESIZED IDEOGRAPH MOON..CIRCLED IDEOGRAPH KOTO +3280..3289 ; Hani # No [10] CIRCLED IDEOGRAPH ONE..CIRCLED IDEOGRAPH TEN +328A..32B0 ; Hani # So [39] CIRCLED IDEOGRAPH MOON..CIRCLED IDEOGRAPH NIGHT +32C0..32CB ; Hani # So [12] IDEOGRAPHIC TELEGRAPH SYMBOL FOR JANUARY..IDEOGRAPHIC TELEGRAPH SYMBOL FOR DECEMBER +32FF ; Hani # So SQUARE ERA NAME REIWA +3358..3370 ; Hani # So [25] IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR ZERO..IDEOGRAPHIC TELEGRAPH SYMBOL FOR HOUR TWENTY-FOUR +337B..337F ; Hani # So [5] SQUARE ERA NAME HEISEI..SQUARE CORPORATION +33E0..33FE ; Hani # So [31] IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY ONE..IDEOGRAPHIC TELEGRAPH SYMBOL FOR DAY THIRTY-ONE +A66F ; Cyrl Glag # Mn COMBINING CYRILLIC VZMET +A700..A707 ; Hani Latn # Sk [8] MODIFIER LETTER CHINESE TONE YIN PING..MODIFIER LETTER CHINESE TONE YANG RU +A830..A832 ; Deva Dogr Gujr Guru Khoj Knda Kthi Mahj Mlym Modi Nand Shrd Sind Takr Tirh Tutg #No [3] NORTH INDIC FRACTION ONE QUARTER..NORTH INDIC FRACTION THREE QUARTERS +A833..A835 ; Deva Dogr Gujr Guru Khoj Knda Kthi Mahj Modi Nand Shrd Sind Takr Tirh Tutg #No [3] NORTH INDIC FRACTION ONE SIXTEENTH..NORTH INDIC FRACTION THREE SIXTEENTHS +A836..A837 ; Deva Dogr Gujr Guru Khoj Kthi Mahj Modi Sind Takr Tirh #So [2] NORTH INDIC QUARTER MARK..NORTH INDIC PLACEHOLDER MARK +A838 ; Deva Dogr Gujr Guru Khoj Kthi Mahj Modi Shrd Sind Takr Tirh #Sc NORTH INDIC RUPEE MARK +A839 ; Deva Dogr Gujr Guru Khoj Kthi Mahj Modi Sind Takr Tirh #So NORTH INDIC QUANTITY MARK +A8F1 ; Beng Deva Tutg # Mn COMBINING DEVANAGARI SIGN AVAGRAHA +A8F3 ; Deva Taml # Lo DEVANAGARI SIGN CANDRABINDU VIRAMA +A92E ; Kali Latn Mymr # Po KAYAH LI SIGN CWI +A9CF ; Bugi Java # Lm JAVANESE PANGRANGKEP +FD3E ; Arab Nkoo # Pe ORNATE LEFT PARENTHESIS +FD3F ; Arab Nkoo # Ps ORNATE RIGHT PARENTHESIS +FDF2 ; Arab Thaa # Lo ARABIC LIGATURE ALLAH ISOLATED FORM +FDFD ; Arab Thaa # So ARABIC LIGATURE BISMILLAH AR-RAHMAN AR-RAHEEM +FE45..FE46 ; Bopo Hang Hani Hira Kana # Po [2] SESAME DOT..WHITE SESAME DOT +FF61 ; Bopo Hang Hani Hira Kana Yiii # Po HALFWIDTH IDEOGRAPHIC FULL STOP +FF62 ; Bopo Hang Hani Hira Kana Yiii # Ps HALFWIDTH LEFT CORNER BRACKET +FF63 ; Bopo Hang Hani Hira Kana Yiii # Pe HALFWIDTH RIGHT CORNER BRACKET +FF64..FF65 ; Bopo Hang Hani Hira Kana Yiii # Po [2] HALFWIDTH IDEOGRAPHIC COMMA..HALFWIDTH KATAKANA MIDDLE DOT +FF70 ; Hira Kana # Lm HALFWIDTH KATAKANA-HIRAGANA PROLONGED SOUND MARK +FF9E..FF9F ; Hira Kana # Lm [2] HALFWIDTH KATAKANA VOICED SOUND MARK..HALFWIDTH KATAKANA SEMI-VOICED SOUND MARK +10100..10101 ; Cpmn Cprt Linb # Po [2] AEGEAN WORD SEPARATOR LINE..AEGEAN WORD SEPARATOR DOT +10102 ; Cprt Linb # Po AEGEAN CHECK MARK +10107..10133 ; Cprt Lina Linb # No [45] AEGEAN NUMBER ONE..AEGEAN NUMBER NINETY THOUSAND +10137..1013F ; Cprt Linb # So [9] AEGEAN WEIGHT BASE UNIT..AEGEAN MEASURE THIRD SUBUNIT +102E0 ; Arab Copt # Mn COPTIC EPACT THOUSANDS MARK +102E1..102FB ; Arab Copt # No [27] COPTIC EPACT DIGIT ONE..COPTIC EPACT NUMBER NINE HUNDRED +10AF2 ; Mani Ougr # Po MANICHAEAN PUNCTUATION DOUBLE DOT WITHIN DOT +11301 ; Gran Taml # Mn GRANTHA SIGN CANDRABINDU +11303 ; Gran Taml # Mc GRANTHA SIGN VISARGA +1133B..1133C ; Gran Taml # Mn [2] COMBINING BINDU BELOW..GRANTHA SIGN NUKTA +11FD0..11FD1 ; Gran Taml # No [2] TAMIL FRACTION ONE QUARTER..TAMIL FRACTION ONE HALF-1 +11FD3 ; Gran Taml # No TAMIL FRACTION THREE QUARTERS +1BCA0..1BCA3 ; Dupl # Cf [4] SHORTHAND FORMAT LETTER OVERLAP..SHORTHAND FORMAT UP STEP +1D360..1D371 ; Hani # No [18] COUNTING ROD UNIT DIGIT ONE..COUNTING ROD TENS DIGIT NINE +1F250..1F251 ; Hani # So [2] CIRCLED IDEOGRAPH ADVANTAGE..CIRCLED IDEOGRAPH ACCEPT # EOF diff --git a/Master/texmf-dist/tex/generic/unicode-data/Scripts.txt b/Master/texmf-dist/tex/generic/unicode-data/Scripts.txt index 0b3f717cb20..443a6d2dd61 100644 --- a/Master/texmf-dist/tex/generic/unicode-data/Scripts.txt +++ b/Master/texmf-dist/tex/generic/unicode-data/Scripts.txt @@ -1,8 +1,8 @@ -# Scripts-15.1.0.txt -# Date: 2023-07-28, 16:01:07 GMT -# © 2023 Unicode®, Inc. +# Scripts-16.0.0.txt +# Date: 2024-04-30, 21:48:40 GMT +# © 2024 Unicode®, Inc. # Unicode and the Unicode Logo are registered trademarks of Unicode, Inc. in the U.S. and other countries. -# For terms of use, see https://www.unicode.org/terms_of_use.html +# For terms of use and license, see https://www.unicode.org/terms_of_use.html # # Unicode Character Database # For documentation, see https://www.unicode.org/reports/tr44/ @@ -224,7 +224,7 @@ 239B..23B3 ; Common # Sm [25] LEFT PARENTHESIS UPPER HOOK..SUMMATION BOTTOM 23B4..23DB ; Common # So [40] TOP SQUARE BRACKET..FUSE 23DC..23E1 ; Common # Sm [6] TOP PARENTHESIS..BOTTOM TORTOISE SHELL BRACKET -23E2..2426 ; Common # So [69] WHITE TRAPEZIUM..SYMBOL FOR SUBSTITUTE FORM TWO +23E2..2429 ; Common # So [72] WHITE TRAPEZIUM..SYMBOL FOR DELETE MEDIUM SHADE FORM 2440..244A ; Common # So [11] OCR HOOK..OCR DOUBLE BACKSLASH 2460..249B ; Common # No [60] CIRCLED DIGIT ONE..NUMBER TWENTY FULL STOP 249C..24E9 ; Common # So [78] PARENTHESIZED LATIN SMALL LETTER A..CIRCLED LATIN SMALL LETTER Z @@ -398,7 +398,7 @@ 3190..3191 ; Common # So [2] IDEOGRAPHIC ANNOTATION LINKING MARK..IDEOGRAPHIC ANNOTATION REVERSE MARK 3192..3195 ; Common # No [4] IDEOGRAPHIC ANNOTATION ONE MARK..IDEOGRAPHIC ANNOTATION FOUR MARK 3196..319F ; Common # So [10] IDEOGRAPHIC ANNOTATION TOP MARK..IDEOGRAPHIC ANNOTATION MAN MARK -31C0..31E3 ; Common # So [36] CJK STROKE T..CJK STROKE Q +31C0..31E5 ; Common # So [38] CJK STROKE T..CJK STROKE SZP 31EF ; Common # So IDEOGRAPHIC DESCRIPTION CHARACTER SUBTRACTION 3220..3229 ; Common # No [10] PARENTHESIZED IDEOGRAPH ONE..PARENTHESIZED IDEOGRAPH TEN 322A..3247 ; Common # So [30] PARENTHESIZED IDEOGRAPH MOON..CIRCLED IDEOGRAPH KOTO @@ -522,6 +522,9 @@ FFFC..FFFD ; Common # So [2] OBJECT REPLACEMENT CHARACTER..REPLACEMENT CHAR 101D0..101FC ; Common # So [45] PHAISTOS DISC SIGN PEDESTRIAN..PHAISTOS DISC SIGN WAVY BAND 102E1..102FB ; Common # No [27] COPTIC EPACT DIGIT ONE..COPTIC EPACT NUMBER NINE HUNDRED 1BCA0..1BCA3 ; Common # Cf [4] SHORTHAND FORMAT LETTER OVERLAP..SHORTHAND FORMAT UP STEP +1CC00..1CCEF ; Common # So [240] UP-POINTING GO-KART..OUTLINED LATIN CAPITAL LETTER Z +1CCF0..1CCF9 ; Common # Nd [10] OUTLINED DIGIT ZERO..OUTLINED DIGIT NINE +1CD00..1CEB3 ; Common # So [436] BLOCK OCTANT-3..BLACK RIGHT TRIANGLE CARET 1CF50..1CFC3 ; Common # So [116] ZNAMENNY NEUME KRYUK..ZNAMENNY NEUME PAUK 1D000..1D0F5 ; Common # So [246] BYZANTINE MUSICAL SYMBOL PSILI..BYZANTINE MUSICAL SYMBOL GORGON NEO KATO 1D100..1D126 ; Common # So [39] MUSICAL SYMBOL SINGLE BARLINE..MUSICAL SYMBOL DRUM CLEF-2 @@ -614,23 +617,23 @@ FFFC..FFFD ; Common # So [2] OBJECT REPLACEMENT CHARACTER..REPLACEMENT CHAR 1F850..1F859 ; Common # So [10] LEFTWARDS SANS-SERIF ARROW..UP DOWN SANS-SERIF ARROW 1F860..1F887 ; Common # So [40] WIDE-HEADED LEFTWARDS LIGHT BARB ARROW..WIDE-HEADED SOUTH WEST VERY HEAVY BARB ARROW 1F890..1F8AD ; Common # So [30] LEFTWARDS TRIANGLE ARROWHEAD..WHITE ARROW SHAFT WIDTH TWO THIRDS -1F8B0..1F8B1 ; Common # So [2] ARROW POINTING UPWARDS THEN NORTH WEST..ARROW POINTING RIGHTWARDS THEN CURVING SOUTH WEST +1F8B0..1F8BB ; Common # So [12] ARROW POINTING UPWARDS THEN NORTH WEST..SOUTH WEST ARROW FROM BAR +1F8C0..1F8C1 ; Common # So [2] LEFTWARDS ARROW FROM DOWNWARDS ARROW..RIGHTWARDS ARROW FROM DOWNWARDS ARROW 1F900..1FA53 ; Common # So [340] CIRCLED CROSS FORMEE WITH FOUR DOTS..BLACK CHESS KNIGHT-BISHOP 1FA60..1FA6D ; Common # So [14] XIANGQI RED GENERAL..XIANGQI BLACK SOLDIER 1FA70..1FA7C ; Common # So [13] BALLET SHOES..CRUTCH -1FA80..1FA88 ; Common # So [9] YO-YO..FLUTE -1FA90..1FABD ; Common # So [46] RINGED PLANET..WING -1FABF..1FAC5 ; Common # So [7] GOOSE..PERSON WITH CROWN -1FACE..1FADB ; Common # So [14] MOOSE..PEA POD -1FAE0..1FAE8 ; Common # So [9] MELTING FACE..SHAKING FACE +1FA80..1FA89 ; Common # So [10] YO-YO..HARP +1FA8F..1FAC6 ; Common # So [56] SHOVEL..FINGERPRINT +1FACE..1FADC ; Common # So [15] MOOSE..ROOT VEGETABLE +1FADF..1FAE9 ; Common # So [11] SPLATTER..FACE WITH BAGS UNDER EYES 1FAF0..1FAF8 ; Common # So [9] HAND WITH INDEX FINGER AND THUMB CROSSED..RIGHTWARDS PUSHING HAND 1FB00..1FB92 ; Common # So [147] BLOCK SEXTANT-1..UPPER HALF INVERSE MEDIUM SHADE AND LOWER HALF BLOCK -1FB94..1FBCA ; Common # So [55] LEFT HALF INVERSE MEDIUM SHADE AND RIGHT HALF BLOCK..WHITE UP-POINTING CHEVRON +1FB94..1FBEF ; Common # So [92] LEFT HALF INVERSE MEDIUM SHADE AND RIGHT HALF BLOCK..TOP LEFT JUSTIFIED LOWER RIGHT QUARTER BLACK CIRCLE 1FBF0..1FBF9 ; Common # Nd [10] SEGMENTED DIGIT ZERO..SEGMENTED DIGIT NINE E0001 ; Common # Cf LANGUAGE TAG E0020..E007F ; Common # Cf [96] TAG SPACE..CANCEL TAG -# Total code points: 8306 +# Total code points: 9053 # ================================================ @@ -673,10 +676,10 @@ A770 ; Latin # Lm MODIFIER LETTER US A771..A787 ; Latin # L& [23] LATIN SMALL LETTER DUM..LATIN SMALL LETTER INSULAR T A78B..A78E ; Latin # L& [4] LATIN CAPITAL LETTER SALTILLO..LATIN SMALL LETTER L WITH RETROFLEX HOOK AND BELT A78F ; Latin # Lo LATIN LETTER SINOLOGICAL DOT -A790..A7CA ; Latin # L& [59] LATIN CAPITAL LETTER N WITH DESCENDER..LATIN SMALL LETTER S WITH SHORT STROKE OVERLAY +A790..A7CD ; Latin # L& [62] LATIN CAPITAL LETTER N WITH DESCENDER..LATIN SMALL LETTER S WITH DIAGONAL STROKE A7D0..A7D1 ; Latin # L& [2] LATIN CAPITAL LETTER CLOSED INSULAR G..LATIN SMALL LETTER CLOSED INSULAR G A7D3 ; Latin # L& LATIN SMALL LETTER DOUBLE THORN -A7D5..A7D9 ; Latin # L& [5] LATIN SMALL LETTER DOUBLE WYNN..LATIN SMALL LETTER SIGMOID S +A7D5..A7DC ; Latin # L& [8] LATIN SMALL LETTER DOUBLE WYNN..LATIN CAPITAL LETTER LAMBDA WITH STROKE A7F2..A7F4 ; Latin # Lm [3] MODIFIER LETTER CAPITAL C..MODIFIER LETTER CAPITAL Q A7F5..A7F6 ; Latin # L& [2] LATIN CAPITAL LETTER REVERSED HALF H..LATIN SMALL LETTER REVERSED HALF H A7F7 ; Latin # Lo LATIN EPIGRAPHIC LETTER SIDEWAYS I @@ -699,7 +702,7 @@ FF41..FF5A ; Latin # L& [26] FULLWIDTH LATIN SMALL LETTER A..FULLWIDTH LATIN 1DF0B..1DF1E ; Latin # L& [20] LATIN SMALL LETTER ESH WITH DOUBLE BAR..LATIN SMALL LETTER S WITH CURL 1DF25..1DF2A ; Latin # L& [6] LATIN SMALL LETTER D WITH MID-HEIGHT LEFT HOOK..LATIN SMALL LETTER T WITH MID-HEIGHT LEFT HOOK -# Total code points: 1481 +# Total code points: 1487 # ================================================ @@ -769,7 +772,7 @@ AB65 ; Greek # L& GREEK LETTER SMALL CAPITAL OMEGA 0487 ; Cyrillic # Mn COMBINING CYRILLIC POKRYTIE 0488..0489 ; Cyrillic # Me [2] COMBINING CYRILLIC HUNDRED THOUSANDS SIGN..COMBINING CYRILLIC MILLIONS SIGN 048A..052F ; Cyrillic # L& [166] CYRILLIC CAPITAL LETTER SHORT I WITH TAIL..CYRILLIC SMALL LETTER EL WITH DESCENDER -1C80..1C88 ; Cyrillic # L& [9] CYRILLIC SMALL LETTER ROUNDED VE..CYRILLIC SMALL LETTER UNBLENDED UK +1C80..1C8A ; Cyrillic # L& [11] CYRILLIC SMALL LETTER ROUNDED VE..CYRILLIC SMALL LETTER TJE 1D2B ; Cyrillic # L& CYRILLIC LETTER SMALL CAPITAL EL 1D78 ; Cyrillic # Lm MODIFIER LETTER CYRILLIC EN 2DE0..2DFF ; Cyrillic # Mn [32] COMBINING CYRILLIC LETTER BE..COMBINING CYRILLIC LETTER IOTIFIED BIG YUS @@ -788,7 +791,7 @@ FE2E..FE2F ; Cyrillic # Mn [2] COMBINING CYRILLIC TITLO LEFT HALF..COMBININ 1E030..1E06D ; Cyrillic # Lm [62] MODIFIER LETTER CYRILLIC SMALL A..MODIFIER LETTER CYRILLIC SMALL STRAIGHT U WITH STROKE 1E08F ; Cyrillic # Mn COMBINING CYRILLIC SMALL LETTER BYELORUSSIAN-UKRAINIAN I -# Total code points: 506 +# Total code points: 508 # ================================================ @@ -868,7 +871,7 @@ FB46..FB4F ; Hebrew # Lo [10] HEBREW LETTER TSADI WITH DAGESH..HEBREW LIGATU 0888 ; Arabic # Sk ARABIC RAISED ROUND DOT 0889..088E ; Arabic # Lo [6] ARABIC LETTER NOON WITH INVERTED SMALL V..ARABIC VERTICAL TAIL 0890..0891 ; Arabic # Cf [2] ARABIC POUND MARK ABOVE..ARABIC PIASTRE MARK ABOVE -0898..089F ; Arabic # Mn [8] ARABIC SMALL HIGH WORD AL-JUZ..ARABIC HALF MADDA OVER MADDA +0897..089F ; Arabic # Mn [9] ARABIC PEPET..ARABIC HALF MADDA OVER MADDA 08A0..08C8 ; Arabic # Lo [41] ARABIC LETTER BEH WITH SMALL V BELOW..ARABIC LETTER GRAF 08C9 ; Arabic # Lm ARABIC SMALL FARSI YEH 08CA..08E1 ; Arabic # Mn [24] ARABIC SMALL HIGH FARSI YEH..ARABIC SMALL HIGH SIGN SAFHA @@ -886,7 +889,8 @@ FDFD..FDFF ; Arabic # So [3] ARABIC LIGATURE BISMILLAH AR-RAHMAN AR-RAHEEM. FE70..FE74 ; Arabic # Lo [5] ARABIC FATHATAN ISOLATED FORM..ARABIC KASRATAN ISOLATED FORM FE76..FEFC ; Arabic # Lo [135] ARABIC FATHA ISOLATED FORM..ARABIC LIGATURE LAM WITH ALEF FINAL FORM 10E60..10E7E ; Arabic # No [31] RUMI DIGIT ONE..RUMI FRACTION TWO THIRDS -10EFD..10EFF ; Arabic # Mn [3] ARABIC SMALL LOW WORD SAKTA..ARABIC SMALL LOW WORD MADDA +10EC2..10EC4 ; Arabic # Lo [3] ARABIC LETTER DAL WITH TWO DOTS VERTICALLY BELOW..ARABIC LETTER KAF WITH TWO DOTS VERTICALLY BELOW +10EFC..10EFF ; Arabic # Mn [4] ARABIC COMBINING ALEF OVERLAY..ARABIC SMALL LOW WORD MADDA 1EE00..1EE03 ; Arabic # Lo [4] ARABIC MATHEMATICAL ALEF..ARABIC MATHEMATICAL DAL 1EE05..1EE1F ; Arabic # Lo [27] ARABIC MATHEMATICAL WAW..ARABIC MATHEMATICAL DOTLESS QAF 1EE21..1EE22 ; Arabic # Lo [2] ARABIC MATHEMATICAL INITIAL BEH..ARABIC MATHEMATICAL INITIAL JEEM @@ -922,7 +926,7 @@ FE76..FEFC ; Arabic # Lo [135] ARABIC FATHA ISOLATED FORM..ARABIC LIGATURE LA 1EEAB..1EEBB ; Arabic # Lo [17] ARABIC MATHEMATICAL DOUBLE-STRUCK LAM..ARABIC MATHEMATICAL DOUBLE-STRUCK GHAIN 1EEF0..1EEF1 ; Arabic # Sm [2] ARABIC MATHEMATICAL OPERATOR MEEM WITH HAH WITH TATWEEL..ARABIC MATHEMATICAL OPERATOR HAH WITH DAL -# Total code points: 1368 +# Total code points: 1373 # ================================================ @@ -1369,8 +1373,9 @@ AA7B ; Myanmar # Mc MYANMAR SIGN PAO KAREN TONE AA7C ; Myanmar # Mn MYANMAR SIGN TAI LAING TONE-2 AA7D ; Myanmar # Mc MYANMAR SIGN TAI LAING TONE-5 AA7E..AA7F ; Myanmar # Lo [2] MYANMAR LETTER SHWE PALAUNG CHA..MYANMAR LETTER SHWE PALAUNG SHA +116D0..116E3 ; Myanmar # Nd [20] MYANMAR PAO DIGIT ZERO..MYANMAR EASTERN PWO KAREN DIGIT NINE -# Total code points: 223 +# Total code points: 243 # ================================================ @@ -1888,14 +1893,15 @@ A82C ; Syloti_Nagri # Mn SYLOTI NAGRI SIGN ALTERNATE HASANTA 1B42 ; Balinese # Mn BALINESE VOWEL SIGN PEPET 1B43..1B44 ; Balinese # Mc [2] BALINESE VOWEL SIGN PEPET TEDUNG..BALINESE ADEG ADEG 1B45..1B4C ; Balinese # Lo [8] BALINESE LETTER KAF SASAK..BALINESE LETTER ARCHAIC JNYA +1B4E..1B4F ; Balinese # Po [2] BALINESE INVERTED CARIK SIKI..BALINESE INVERTED CARIK PAREREN 1B50..1B59 ; Balinese # Nd [10] BALINESE DIGIT ZERO..BALINESE DIGIT NINE 1B5A..1B60 ; Balinese # Po [7] BALINESE PANTI..BALINESE PAMENENG 1B61..1B6A ; Balinese # So [10] BALINESE MUSICAL SYMBOL DONG..BALINESE MUSICAL SYMBOL DANG GEDE 1B6B..1B73 ; Balinese # Mn [9] BALINESE MUSICAL SYMBOL COMBINING TEGEH..BALINESE MUSICAL SYMBOL COMBINING GONG 1B74..1B7C ; Balinese # So [9] BALINESE MUSICAL SYMBOL RIGHT-HAND OPEN DUG..BALINESE MUSICAL SYMBOL LEFT-HAND OPEN PING -1B7D..1B7E ; Balinese # Po [2] BALINESE PANTI LANTANG..BALINESE PAMADA LANTANG +1B7D..1B7F ; Balinese # Po [3] BALINESE PANTI LANTANG..BALINESE PANTI BAWAK -# Total code points: 124 +# Total code points: 127 # ================================================ @@ -2108,8 +2114,9 @@ AADE..AADF ; Tai_Viet # Po [2] TAI VIET SYMBOL HO HOI..TAI VIET SYMBOL KOI 13440 ; Egyptian_Hieroglyphs # Mn EGYPTIAN HIEROGLYPH MIRROR HORIZONTALLY 13441..13446 ; Egyptian_Hieroglyphs # Lo [6] EGYPTIAN HIEROGLYPH FULL BLANK..EGYPTIAN HIEROGLYPH WIDE LOST SIGN 13447..13455 ; Egyptian_Hieroglyphs # Mn [15] EGYPTIAN HIEROGLYPH MODIFIER DAMAGED AT TOP START..EGYPTIAN HIEROGLYPH MODIFIER DAMAGED +13460..143FA ; Egyptian_Hieroglyphs # Lo [3995] EGYPTIAN HIEROGLYPH-13460..EGYPTIAN HIEROGLYPH-143FA -# Total code points: 1110 +# Total code points: 5105 # ================================================ @@ -2615,7 +2622,9 @@ ABF0..ABF9 ; Meetei_Mayek # Nd [10] MEETEI MAYEK DIGIT ZERO..MEETEI MAYEK DI # ================================================ 11700..1171A ; Ahom # Lo [27] AHOM LETTER KA..AHOM LETTER ALTERNATE BA -1171D..1171F ; Ahom # Mn [3] AHOM CONSONANT SIGN MEDIAL LA..AHOM CONSONANT SIGN MEDIAL LIGATING RA +1171D ; Ahom # Mn AHOM CONSONANT SIGN MEDIAL LA +1171E ; Ahom # Mc AHOM CONSONANT SIGN MEDIAL RA +1171F ; Ahom # Mn AHOM CONSONANT SIGN MEDIAL LIGATING RA 11720..11721 ; Ahom # Mc [2] AHOM VOWEL SIGN A..AHOM VOWEL SIGN AA 11722..11725 ; Ahom # Mn [4] AHOM VOWEL SIGN I..AHOM VOWEL SIGN UU 11726 ; Ahom # Mc AHOM VOWEL SIGN E @@ -2949,8 +2958,9 @@ ABF0..ABF9 ; Meetei_Mayek # Nd [10] MEETEI MAYEK DIGIT ZERO..MEETEI MAYEK DI 16FE4 ; Khitan_Small_Script # Mn KHITAN SMALL SCRIPT FILLER 18B00..18CD5 ; Khitan_Small_Script # Lo [470] KHITAN SMALL SCRIPT CHARACTER-18B00..KHITAN SMALL SCRIPT CHARACTER-18CD5 +18CFF ; Khitan_Small_Script # Lo KHITAN SMALL SCRIPT CHARACTER-18CFF -# Total code points: 471 +# Total code points: 472 # ================================================ @@ -3018,8 +3028,9 @@ ABF0..ABF9 ; Meetei_Mayek # Nd [10] MEETEI MAYEK DIGIT ZERO..MEETEI MAYEK DI 11F42 ; Kawi # Mn KAWI CONJOINER 11F43..11F4F ; Kawi # Po [13] KAWI DANDA..KAWI PUNCTUATION CLOSING SPIRAL 11F50..11F59 ; Kawi # Nd [10] KAWI DIGIT ZERO..KAWI DIGIT NINE +11F5A ; Kawi # Mn KAWI SIGN NUKTA -# Total code points: 86 +# Total code points: 87 # ================================================ @@ -3030,4 +3041,88 @@ ABF0..ABF9 ; Meetei_Mayek # Nd [10] MEETEI MAYEK DIGIT ZERO..MEETEI MAYEK DI # Total code points: 42 +# ================================================ + +10D40..10D49 ; Garay # Nd [10] GARAY DIGIT ZERO..GARAY DIGIT NINE +10D4A..10D4D ; Garay # Lo [4] GARAY VOWEL SIGN A..GARAY VOWEL SIGN EE +10D4E ; Garay # Lm GARAY VOWEL LENGTH MARK +10D4F ; Garay # Lo GARAY SUKUN +10D50..10D65 ; Garay # L& [22] GARAY CAPITAL LETTER A..GARAY CAPITAL LETTER OLD NA +10D69..10D6D ; Garay # Mn [5] GARAY VOWEL SIGN E..GARAY CONSONANT NASALIZATION MARK +10D6E ; Garay # Pd GARAY HYPHEN +10D6F ; Garay # Lm GARAY REDUPLICATION MARK +10D70..10D85 ; Garay # L& [22] GARAY SMALL LETTER A..GARAY SMALL LETTER OLD NA +10D8E..10D8F ; Garay # Sm [2] GARAY PLUS SIGN..GARAY MINUS SIGN + +# Total code points: 69 + +# ================================================ + +16100..1611D ; Gurung_Khema # Lo [30] GURUNG KHEMA LETTER A..GURUNG KHEMA LETTER SA +1611E..16129 ; Gurung_Khema # Mn [12] GURUNG KHEMA VOWEL SIGN AA..GURUNG KHEMA VOWEL LENGTH MARK +1612A..1612C ; Gurung_Khema # Mc [3] GURUNG KHEMA CONSONANT SIGN MEDIAL YA..GURUNG KHEMA CONSONANT SIGN MEDIAL HA +1612D..1612F ; Gurung_Khema # Mn [3] GURUNG KHEMA SIGN ANUSVARA..GURUNG KHEMA SIGN THOLHOMA +16130..16139 ; Gurung_Khema # Nd [10] GURUNG KHEMA DIGIT ZERO..GURUNG KHEMA DIGIT NINE + +# Total code points: 58 + +# ================================================ + +16D40..16D42 ; Kirat_Rai # Lm [3] KIRAT RAI SIGN ANUSVARA..KIRAT RAI SIGN VISARGA +16D43..16D6A ; Kirat_Rai # Lo [40] KIRAT RAI LETTER A..KIRAT RAI VOWEL SIGN AU +16D6B..16D6C ; Kirat_Rai # Lm [2] KIRAT RAI SIGN VIRAMA..KIRAT RAI SIGN SAAT +16D6D..16D6F ; Kirat_Rai # Po [3] KIRAT RAI SIGN YUPI..KIRAT RAI DOUBLE DANDA +16D70..16D79 ; Kirat_Rai # Nd [10] KIRAT RAI DIGIT ZERO..KIRAT RAI DIGIT NINE + +# Total code points: 58 + +# ================================================ + +1E5D0..1E5ED ; Ol_Onal # Lo [30] OL ONAL LETTER O..OL ONAL LETTER EG +1E5EE..1E5EF ; Ol_Onal # Mn [2] OL ONAL SIGN MU..OL ONAL SIGN IKIR +1E5F0 ; Ol_Onal # Lo OL ONAL SIGN HODDOND +1E5F1..1E5FA ; Ol_Onal # Nd [10] OL ONAL DIGIT ZERO..OL ONAL DIGIT NINE +1E5FF ; Ol_Onal # Po OL ONAL ABBREVIATION SIGN + +# Total code points: 44 + +# ================================================ + +11BC0..11BE0 ; Sunuwar # Lo [33] SUNUWAR LETTER DEVI..SUNUWAR LETTER KLOKO +11BE1 ; Sunuwar # Po SUNUWAR SIGN PVO +11BF0..11BF9 ; Sunuwar # Nd [10] SUNUWAR DIGIT ZERO..SUNUWAR DIGIT NINE + +# Total code points: 44 + +# ================================================ + +105C0..105F3 ; Todhri # Lo [52] TODHRI LETTER A..TODHRI LETTER OO + +# Total code points: 52 + +# ================================================ + +11380..11389 ; Tulu_Tigalari # Lo [10] TULU-TIGALARI LETTER A..TULU-TIGALARI LETTER VOCALIC LL +1138B ; Tulu_Tigalari # Lo TULU-TIGALARI LETTER EE +1138E ; Tulu_Tigalari # Lo TULU-TIGALARI LETTER AI +11390..113B5 ; Tulu_Tigalari # Lo [38] TULU-TIGALARI LETTER OO..TULU-TIGALARI LETTER LLLA +113B7 ; Tulu_Tigalari # Lo TULU-TIGALARI SIGN AVAGRAHA +113B8..113BA ; Tulu_Tigalari # Mc [3] TULU-TIGALARI VOWEL SIGN AA..TULU-TIGALARI VOWEL SIGN II +113BB..113C0 ; Tulu_Tigalari # Mn [6] TULU-TIGALARI VOWEL SIGN U..TULU-TIGALARI VOWEL SIGN VOCALIC LL +113C2 ; Tulu_Tigalari # Mc TULU-TIGALARI VOWEL SIGN EE +113C5 ; Tulu_Tigalari # Mc TULU-TIGALARI VOWEL SIGN AI +113C7..113CA ; Tulu_Tigalari # Mc [4] TULU-TIGALARI VOWEL SIGN OO..TULU-TIGALARI SIGN CANDRA ANUNASIKA +113CC..113CD ; Tulu_Tigalari # Mc [2] TULU-TIGALARI SIGN ANUSVARA..TULU-TIGALARI SIGN VISARGA +113CE ; Tulu_Tigalari # Mn TULU-TIGALARI SIGN VIRAMA +113CF ; Tulu_Tigalari # Mc TULU-TIGALARI SIGN LOOPED VIRAMA +113D0 ; Tulu_Tigalari # Mn TULU-TIGALARI CONJOINER +113D1 ; Tulu_Tigalari # Lo TULU-TIGALARI REPHA +113D2 ; Tulu_Tigalari # Mn TULU-TIGALARI GEMINATION MARK +113D3 ; Tulu_Tigalari # Lo TULU-TIGALARI SIGN PLUTA +113D4..113D5 ; Tulu_Tigalari # Po [2] TULU-TIGALARI DANDA..TULU-TIGALARI DOUBLE DANDA +113D7..113D8 ; Tulu_Tigalari # Po [2] TULU-TIGALARI SIGN OM PUSHPIKA..TULU-TIGALARI SIGN SHRII PUSHPIKA +113E1..113E2 ; Tulu_Tigalari # Mn [2] TULU-TIGALARI VEDIC TONE SVARITA..TULU-TIGALARI VEDIC TONE ANUDATTA + +# Total code points: 80 + # EOF diff --git a/Master/texmf-dist/tex/generic/unicode-data/SpecialCasing.txt b/Master/texmf-dist/tex/generic/unicode-data/SpecialCasing.txt index de08450a6b9..e83aba432f4 100644 --- a/Master/texmf-dist/tex/generic/unicode-data/SpecialCasing.txt +++ b/Master/texmf-dist/tex/generic/unicode-data/SpecialCasing.txt @@ -1,28 +1,28 @@ -# SpecialCasing-15.1.0.txt -# Date: 2023-01-05, 20:35:03 GMT -# © 2023 Unicode®, Inc. +# SpecialCasing-16.0.0.txt +# Date: 2024-05-10, 22:49:00 GMT +# © 2024 Unicode®, Inc. # Unicode and the Unicode Logo are registered trademarks of Unicode, Inc. in the U.S. and other countries. -# For terms of use, see https://www.unicode.org/terms_of_use.html +# For terms of use and license, see https://www.unicode.org/terms_of_use.html # # Unicode Character Database # For documentation, see https://www.unicode.org/reports/tr44/ # # Special Casing # -# This file is a supplement to the UnicodeData.txt file. It does not define any -# properties, but rather provides additional information about the casing of -# Unicode characters, for situations when casing incurs a change in string length -# or is dependent on context or locale. For compatibility, the UnicodeData.txt -# file only contains simple case mappings for characters where they are one-to-one -# and independent of context and language. The data in this file, combined with +# This file is a supplement to the UnicodeData.txt file. The data in this file, combined with # the simple case mappings in UnicodeData.txt, defines the full case mappings # Lowercase_Mapping (lc), Titlecase_Mapping (tc), and Uppercase_Mapping (uc). +# For compatibility, the UnicodeData.txt file only contains simple case mappings +# for characters where they are one-to-one (and independent of context and language). +# +# For historical reasons, this file also provides additional information about the casing +# of Unicode characters for selected situations when casing is dependent on context or locale. # # Note that the preferred mechanism for defining tailored casing operations is # the Unicode Common Locale Data Repository (CLDR). For more information, see the # discussion of case mappings and case algorithms in the Unicode Standard. # -# All code points not listed in this file that do not have a simple case mappings +# All code points not listed in this file that do not have simple case mappings # in UnicodeData.txt map to themselves. # ================================================================================ # Format diff --git a/Master/texmf-dist/tex/generic/unicode-data/UnicodeData.txt b/Master/texmf-dist/tex/generic/unicode-data/UnicodeData.txt index bdcc41850d7..64258a37395 100644 --- a/Master/texmf-dist/tex/generic/unicode-data/UnicodeData.txt +++ b/Master/texmf-dist/tex/generic/unicode-data/UnicodeData.txt @@ -409,7 +409,7 @@ 0198;LATIN CAPITAL LETTER K WITH HOOK;Lu;0;L;;;;;N;LATIN CAPITAL LETTER K HOOK;;;0199; 0199;LATIN SMALL LETTER K WITH HOOK;Ll;0;L;;;;;N;LATIN SMALL LETTER K HOOK;;0198;;0198 019A;LATIN SMALL LETTER L WITH BAR;Ll;0;L;;;;;N;LATIN SMALL LETTER BARRED L;;023D;;023D -019B;LATIN SMALL LETTER LAMBDA WITH STROKE;Ll;0;L;;;;;N;LATIN SMALL LETTER BARRED LAMBDA;;;; +019B;LATIN SMALL LETTER LAMBDA WITH STROKE;Ll;0;L;;;;;N;LATIN SMALL LETTER BARRED LAMBDA;;A7DC;;A7DC 019C;LATIN CAPITAL LETTER TURNED M;Lu;0;L;;;;;N;;;;026F; 019D;LATIN CAPITAL LETTER N WITH LEFT HOOK;Lu;0;L;;;;;N;LATIN CAPITAL LETTER N HOOK;;;0272; 019E;LATIN SMALL LETTER N WITH LONG RIGHT LEG;Ll;0;L;;;;;N;;;0220;;0220 @@ -610,7 +610,7 @@ 0261;LATIN SMALL LETTER SCRIPT G;Ll;0;L;;;;;N;;;A7AC;;A7AC 0262;LATIN LETTER SMALL CAPITAL G;Ll;0;L;;;;;N;;;;; 0263;LATIN SMALL LETTER GAMMA;Ll;0;L;;;;;N;;;0194;;0194 -0264;LATIN SMALL LETTER RAMS HORN;Ll;0;L;;;;;N;LATIN SMALL LETTER BABY GAMMA;;;; +0264;LATIN SMALL LETTER RAMS HORN;Ll;0;L;;;;;N;LATIN SMALL LETTER BABY GAMMA;;A7CB;;A7CB 0265;LATIN SMALL LETTER TURNED H;Ll;0;L;;;;;N;;;A78D;;A78D 0266;LATIN SMALL LETTER H WITH HOOK;Ll;0;L;;;;;N;LATIN SMALL LETTER H HOOK;;A7AA;;A7AA 0267;LATIN SMALL LETTER HENG WITH HOOK;Ll;0;L;;;;;N;LATIN SMALL LETTER HENG HOOK;;;; @@ -2123,6 +2123,7 @@ 088E;ARABIC VERTICAL TAIL;Lo;0;AL;;;;;N;;;;; 0890;ARABIC POUND MARK ABOVE;Cf;0;AN;;;;;N;;;;; 0891;ARABIC PIASTRE MARK ABOVE;Cf;0;AN;;;;;N;;;;; +0897;ARABIC PEPET;Mn;230;NSM;;;;;N;;;;; 0898;ARABIC SMALL HIGH WORD AL-JUZ;Mn;230;NSM;;;;;N;;;;; 0899;ARABIC SMALL LOW WORD ISHMAAM;Mn;220;NSM;;;;;N;;;;; 089A;ARABIC SMALL LOW WORD IMAALA;Mn;220;NSM;;;;;N;;;;; @@ -6213,6 +6214,8 @@ 1B4A;BALINESE LETTER ZAL SASAK;Lo;0;L;;;;;N;;;;; 1B4B;BALINESE LETTER ASYURA SASAK;Lo;0;L;;;;;N;;;;; 1B4C;BALINESE LETTER ARCHAIC JNYA;Lo;0;L;;;;;N;;;;; +1B4E;BALINESE INVERTED CARIK SIKI;Po;0;L;;;;;N;;;;; +1B4F;BALINESE INVERTED CARIK PAREREN;Po;0;L;;;;;N;;;;; 1B50;BALINESE DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;; 1B51;BALINESE DIGIT ONE;Nd;0;L;;1;1;1;N;;;;; 1B52;BALINESE DIGIT TWO;Nd;0;L;;2;2;2;N;;;;; @@ -6260,6 +6263,7 @@ 1B7C;BALINESE MUSICAL SYMBOL LEFT-HAND OPEN PING;So;0;L;;;;;N;;;;; 1B7D;BALINESE PANTI LANTANG;Po;0;L;;;;;N;;;;; 1B7E;BALINESE PAMADA LANTANG;Po;0;L;;;;;N;;;;; +1B7F;BALINESE PANTI BAWAK;Po;0;L;;;;;N;;;;; 1B80;SUNDANESE SIGN PANYECEK;Mn;0;NSM;;;;;N;;;;; 1B81;SUNDANESE SIGN PANGLAYAR;Mn;0;NSM;;;;;N;;;;; 1B82;SUNDANESE SIGN PANGWISAD;Mc;0;L;;;;;N;;;;; @@ -6511,6 +6515,8 @@ 1C86;CYRILLIC SMALL LETTER TALL HARD SIGN;Ll;0;L;;;;;N;;;042A;;042A 1C87;CYRILLIC SMALL LETTER TALL YAT;Ll;0;L;;;;;N;;;0462;;0462 1C88;CYRILLIC SMALL LETTER UNBLENDED UK;Ll;0;L;;;;;N;;;A64A;;A64A +1C89;CYRILLIC CAPITAL LETTER TJE;Lu;0;L;;;;;N;;;;1C8A; +1C8A;CYRILLIC SMALL LETTER TJE;Ll;0;L;;;;;N;;;1C89;;1C89 1C90;GEORGIAN MTAVRULI CAPITAL LETTER AN;Lu;0;L;;;;;N;;;;10D0; 1C91;GEORGIAN MTAVRULI CAPITAL LETTER BAN;Lu;0;L;;;;;N;;;;10D1; 1C92;GEORGIAN MTAVRULI CAPITAL LETTER GAN;Lu;0;L;;;;;N;;;;10D2; @@ -7933,7 +7939,7 @@ 226A;MUCH LESS-THAN;Sm;0;ON;;;;;Y;MUCH LESS THAN;;;; 226B;MUCH GREATER-THAN;Sm;0;ON;;;;;Y;MUCH GREATER THAN;;;; 226C;BETWEEN;Sm;0;ON;;;;;N;;;;; -226D;NOT EQUIVALENT TO;Sm;0;ON;224D 0338;;;;N;;;;; +226D;NOT EQUIVALENT TO;Sm;0;ON;224D 0338;;;;Y;;;;; 226E;NOT LESS-THAN;Sm;0;ON;003C 0338;;;;Y;NOT LESS THAN;;;; 226F;NOT GREATER-THAN;Sm;0;ON;003E 0338;;;;Y;NOT GREATER THAN;;;; 2270;NEITHER LESS-THAN NOR EQUAL TO;Sm;0;ON;2264 0338;;;;Y;NEITHER LESS THAN NOR EQUAL TO;;;; @@ -8375,6 +8381,9 @@ 2424;SYMBOL FOR NEWLINE;So;0;ON;;;;;N;GRAPHIC FOR NEWLINE;;;; 2425;SYMBOL FOR DELETE FORM TWO;So;0;ON;;;;;N;;;;; 2426;SYMBOL FOR SUBSTITUTE FORM TWO;So;0;ON;;;;;N;;;;; +2427;SYMBOL FOR DELETE SQUARE CHECKER BOARD FORM;So;0;ON;;;;;N;;;;; +2428;SYMBOL FOR DELETE RECTANGULAR CHECKER BOARD FORM;So;0;ON;;;;;N;;;;; +2429;SYMBOL FOR DELETE MEDIUM SHADE FORM;So;0;ON;;;;;N;;;;; 2440;OCR HOOK;So;0;ON;;;;;N;;;;; 2441;OCR CHAIR;So;0;ON;;;;;N;;;;; 2442;OCR FORK;So;0;ON;;;;;N;;;;; @@ -11709,6 +11718,8 @@ 31E1;CJK STROKE HZZZG;So;0;ON;;;;;N;;;;; 31E2;CJK STROKE PG;So;0;ON;;;;;N;;;;; 31E3;CJK STROKE Q;So;0;ON;;;;;N;;;;; +31E4;CJK STROKE HXG;So;0;ON;;;;;N;;;;; +31E5;CJK STROKE SZP;So;0;ON;;;;;N;;;;; 31EF;IDEOGRAPHIC DESCRIPTION CHARACTER SUBTRACTION;So;0;ON;;;;;N;;;;; 31F0;KATAKANA LETTER SMALL KU;Lo;0;L;;;;;N;;;;; 31F1;KATAKANA LETTER SMALL SI;Lo;0;L;;;;;N;;;;; @@ -14260,6 +14271,9 @@ A7C7;LATIN CAPITAL LETTER D WITH SHORT STROKE OVERLAY;Lu;0;L;;;;;N;;;;A7C8; A7C8;LATIN SMALL LETTER D WITH SHORT STROKE OVERLAY;Ll;0;L;;;;;N;;;A7C7;;A7C7 A7C9;LATIN CAPITAL LETTER S WITH SHORT STROKE OVERLAY;Lu;0;L;;;;;N;;;;A7CA; A7CA;LATIN SMALL LETTER S WITH SHORT STROKE OVERLAY;Ll;0;L;;;;;N;;;A7C9;;A7C9 +A7CB;LATIN CAPITAL LETTER RAMS HORN;Lu;0;L;;;;;N;;;;0264; +A7CC;LATIN CAPITAL LETTER S WITH DIAGONAL STROKE;Lu;0;L;;;;;N;;;;A7CD; +A7CD;LATIN SMALL LETTER S WITH DIAGONAL STROKE;Ll;0;L;;;;;N;;;A7CC;;A7CC A7D0;LATIN CAPITAL LETTER CLOSED INSULAR G;Lu;0;L;;;;;N;;;;A7D1; A7D1;LATIN SMALL LETTER CLOSED INSULAR G;Ll;0;L;;;;;N;;;A7D0;;A7D0 A7D3;LATIN SMALL LETTER DOUBLE THORN;Ll;0;L;;;;;N;;;;; @@ -14268,6 +14282,9 @@ A7D6;LATIN CAPITAL LETTER MIDDLE SCOTS S;Lu;0;L;;;;;N;;;;A7D7; A7D7;LATIN SMALL LETTER MIDDLE SCOTS S;Ll;0;L;;;;;N;;;A7D6;;A7D6 A7D8;LATIN CAPITAL LETTER SIGMOID S;Lu;0;L;;;;;N;;;;A7D9; A7D9;LATIN SMALL LETTER SIGMOID S;Ll;0;L;;;;;N;;;A7D8;;A7D8 +A7DA;LATIN CAPITAL LETTER LAMBDA;Lu;0;L;;;;;N;;;;A7DB; +A7DB;LATIN SMALL LETTER LAMBDA;Ll;0;L;;;;;N;;;A7DA;;A7DA +A7DC;LATIN CAPITAL LETTER LAMBDA WITH STROKE;Lu;0;L;;;;;N;;;;019B; A7F2;MODIFIER LETTER CAPITAL C;Lm;0;L;<super> 0043;;;;N;;;;; A7F3;MODIFIER LETTER CAPITAL F;Lm;0;L;<super> 0046;;;;N;;;;; A7F4;MODIFIER LETTER CAPITAL Q;Lm;0;L;<super> 0051;;;;N;;;;; @@ -18001,6 +18018,58 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;; 105B9;VITHKUQI SMALL LETTER XE;Ll;0;L;;;;;N;;;10592;;10592 105BB;VITHKUQI SMALL LETTER Y;Ll;0;L;;;;;N;;;10594;;10594 105BC;VITHKUQI SMALL LETTER ZE;Ll;0;L;;;;;N;;;10595;;10595 +105C0;TODHRI LETTER A;Lo;0;L;;;;;N;;;;; +105C1;TODHRI LETTER AS;Lo;0;L;;;;;N;;;;; +105C2;TODHRI LETTER BA;Lo;0;L;;;;;N;;;;; +105C3;TODHRI LETTER MBA;Lo;0;L;;;;;N;;;;; +105C4;TODHRI LETTER CA;Lo;0;L;;;;;N;;;;; +105C5;TODHRI LETTER CHA;Lo;0;L;;;;;N;;;;; +105C6;TODHRI LETTER DA;Lo;0;L;;;;;N;;;;; +105C7;TODHRI LETTER NDA;Lo;0;L;;;;;N;;;;; +105C8;TODHRI LETTER DHA;Lo;0;L;;;;;N;;;;; +105C9;TODHRI LETTER EI;Lo;0;L;105D2 0307;;;;N;;;;; +105CA;TODHRI LETTER E;Lo;0;L;;;;;N;;;;; +105CB;TODHRI LETTER FA;Lo;0;L;;;;;N;;;;; +105CC;TODHRI LETTER GA;Lo;0;L;;;;;N;;;;; +105CD;TODHRI LETTER NGA;Lo;0;L;;;;;N;;;;; +105CE;TODHRI LETTER GJA;Lo;0;L;;;;;N;;;;; +105CF;TODHRI LETTER NGJA;Lo;0;L;;;;;N;;;;; +105D0;TODHRI LETTER HA;Lo;0;L;;;;;N;;;;; +105D1;TODHRI LETTER HJA;Lo;0;L;;;;;N;;;;; +105D2;TODHRI LETTER I;Lo;0;L;;;;;N;;;;; +105D3;TODHRI LETTER JA;Lo;0;L;;;;;N;;;;; +105D4;TODHRI LETTER KA;Lo;0;L;;;;;N;;;;; +105D5;TODHRI LETTER LA;Lo;0;L;;;;;N;;;;; +105D6;TODHRI LETTER LLA;Lo;0;L;;;;;N;;;;; +105D7;TODHRI LETTER MA;Lo;0;L;;;;;N;;;;; +105D8;TODHRI LETTER NA;Lo;0;L;;;;;N;;;;; +105D9;TODHRI LETTER NJAN;Lo;0;L;;;;;N;;;;; +105DA;TODHRI LETTER O;Lo;0;L;;;;;N;;;;; +105DB;TODHRI LETTER PA;Lo;0;L;;;;;N;;;;; +105DC;TODHRI LETTER QA;Lo;0;L;;;;;N;;;;; +105DD;TODHRI LETTER RA;Lo;0;L;;;;;N;;;;; +105DE;TODHRI LETTER RRA;Lo;0;L;;;;;N;;;;; +105DF;TODHRI LETTER SA;Lo;0;L;;;;;N;;;;; +105E0;TODHRI LETTER SHA;Lo;0;L;;;;;N;;;;; +105E1;TODHRI LETTER SHTA;Lo;0;L;;;;;N;;;;; +105E2;TODHRI LETTER TA;Lo;0;L;;;;;N;;;;; +105E3;TODHRI LETTER THA;Lo;0;L;;;;;N;;;;; +105E4;TODHRI LETTER U;Lo;0;L;105DA 0307;;;;N;;;;; +105E5;TODHRI LETTER VA;Lo;0;L;;;;;N;;;;; +105E6;TODHRI LETTER XA;Lo;0;L;;;;;N;;;;; +105E7;TODHRI LETTER NXA;Lo;0;L;;;;;N;;;;; +105E8;TODHRI LETTER XHA;Lo;0;L;;;;;N;;;;; +105E9;TODHRI LETTER NXHA;Lo;0;L;;;;;N;;;;; +105EA;TODHRI LETTER Y;Lo;0;L;;;;;N;;;;; +105EB;TODHRI LETTER JY;Lo;0;L;;;;;N;;;;; +105EC;TODHRI LETTER ZA;Lo;0;L;;;;;N;;;;; +105ED;TODHRI LETTER ZHA;Lo;0;L;;;;;N;;;;; +105EE;TODHRI LETTER GHA;Lo;0;L;;;;;N;;;;; +105EF;TODHRI LETTER STA;Lo;0;L;;;;;N;;;;; +105F0;TODHRI LETTER SKAN;Lo;0;L;;;;;N;;;;; +105F1;TODHRI LETTER KHA;Lo;0;L;;;;;N;;;;; +105F2;TODHRI LETTER PSA;Lo;0;L;;;;;N;;;;; +105F3;TODHRI LETTER OO;Lo;0;L;;;;;N;;;;; 10600;LINEAR A SIGN AB001;Lo;0;L;;;;;N;;;;; 10601;LINEAR A SIGN AB002;Lo;0;L;;;;;N;;;;; 10602;LINEAR A SIGN AB003;Lo;0;L;;;;;N;;;;; @@ -19322,6 +19391,75 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;; 10D37;HANIFI ROHINGYA DIGIT SEVEN;Nd;0;AN;;7;7;7;N;;;;; 10D38;HANIFI ROHINGYA DIGIT EIGHT;Nd;0;AN;;8;8;8;N;;;;; 10D39;HANIFI ROHINGYA DIGIT NINE;Nd;0;AN;;9;9;9;N;;;;; +10D40;GARAY DIGIT ZERO;Nd;0;AN;;0;0;0;N;;;;; +10D41;GARAY DIGIT ONE;Nd;0;AN;;1;1;1;N;;;;; +10D42;GARAY DIGIT TWO;Nd;0;AN;;2;2;2;N;;;;; +10D43;GARAY DIGIT THREE;Nd;0;AN;;3;3;3;N;;;;; +10D44;GARAY DIGIT FOUR;Nd;0;AN;;4;4;4;N;;;;; +10D45;GARAY DIGIT FIVE;Nd;0;AN;;5;5;5;N;;;;; +10D46;GARAY DIGIT SIX;Nd;0;AN;;6;6;6;N;;;;; +10D47;GARAY DIGIT SEVEN;Nd;0;AN;;7;7;7;N;;;;; +10D48;GARAY DIGIT EIGHT;Nd;0;AN;;8;8;8;N;;;;; +10D49;GARAY DIGIT NINE;Nd;0;AN;;9;9;9;N;;;;; +10D4A;GARAY VOWEL SIGN A;Lo;0;R;;;;;N;;;;; +10D4B;GARAY VOWEL SIGN I;Lo;0;R;;;;;N;;;;; +10D4C;GARAY VOWEL SIGN O;Lo;0;R;;;;;N;;;;; +10D4D;GARAY VOWEL SIGN EE;Lo;0;R;;;;;N;;;;; +10D4E;GARAY VOWEL LENGTH MARK;Lm;0;R;;;;;N;;;;; +10D4F;GARAY SUKUN;Lo;0;R;;;;;N;;;;; +10D50;GARAY CAPITAL LETTER A;Lu;0;R;;;;;N;;;;10D70; +10D51;GARAY CAPITAL LETTER CA;Lu;0;R;;;;;N;;;;10D71; +10D52;GARAY CAPITAL LETTER MA;Lu;0;R;;;;;N;;;;10D72; +10D53;GARAY CAPITAL LETTER KA;Lu;0;R;;;;;N;;;;10D73; +10D54;GARAY CAPITAL LETTER BA;Lu;0;R;;;;;N;;;;10D74; +10D55;GARAY CAPITAL LETTER JA;Lu;0;R;;;;;N;;;;10D75; +10D56;GARAY CAPITAL LETTER SA;Lu;0;R;;;;;N;;;;10D76; +10D57;GARAY CAPITAL LETTER WA;Lu;0;R;;;;;N;;;;10D77; +10D58;GARAY CAPITAL LETTER LA;Lu;0;R;;;;;N;;;;10D78; +10D59;GARAY CAPITAL LETTER GA;Lu;0;R;;;;;N;;;;10D79; +10D5A;GARAY CAPITAL LETTER DA;Lu;0;R;;;;;N;;;;10D7A; +10D5B;GARAY CAPITAL LETTER XA;Lu;0;R;;;;;N;;;;10D7B; +10D5C;GARAY CAPITAL LETTER YA;Lu;0;R;;;;;N;;;;10D7C; +10D5D;GARAY CAPITAL LETTER TA;Lu;0;R;;;;;N;;;;10D7D; +10D5E;GARAY CAPITAL LETTER RA;Lu;0;R;;;;;N;;;;10D7E; +10D5F;GARAY CAPITAL LETTER NYA;Lu;0;R;;;;;N;;;;10D7F; +10D60;GARAY CAPITAL LETTER FA;Lu;0;R;;;;;N;;;;10D80; +10D61;GARAY CAPITAL LETTER NA;Lu;0;R;;;;;N;;;;10D81; +10D62;GARAY CAPITAL LETTER PA;Lu;0;R;;;;;N;;;;10D82; +10D63;GARAY CAPITAL LETTER HA;Lu;0;R;;;;;N;;;;10D83; +10D64;GARAY CAPITAL LETTER OLD KA;Lu;0;R;;;;;N;;;;10D84; +10D65;GARAY CAPITAL LETTER OLD NA;Lu;0;R;;;;;N;;;;10D85; +10D69;GARAY VOWEL SIGN E;Mn;230;NSM;;;;;N;;;;; +10D6A;GARAY CONSONANT GEMINATION MARK;Mn;230;NSM;;;;;N;;;;; +10D6B;GARAY COMBINING DOT ABOVE;Mn;230;NSM;;;;;N;;;;; +10D6C;GARAY COMBINING DOUBLE DOT ABOVE;Mn;230;NSM;;;;;N;;;;; +10D6D;GARAY CONSONANT NASALIZATION MARK;Mn;230;NSM;;;;;N;;;;; +10D6E;GARAY HYPHEN;Pd;0;ON;;;;;N;;;;; +10D6F;GARAY REDUPLICATION MARK;Lm;0;R;;;;;N;;;;; +10D70;GARAY SMALL LETTER A;Ll;0;R;;;;;N;;;10D50;;10D50 +10D71;GARAY SMALL LETTER CA;Ll;0;R;;;;;N;;;10D51;;10D51 +10D72;GARAY SMALL LETTER MA;Ll;0;R;;;;;N;;;10D52;;10D52 +10D73;GARAY SMALL LETTER KA;Ll;0;R;;;;;N;;;10D53;;10D53 +10D74;GARAY SMALL LETTER BA;Ll;0;R;;;;;N;;;10D54;;10D54 +10D75;GARAY SMALL LETTER JA;Ll;0;R;;;;;N;;;10D55;;10D55 +10D76;GARAY SMALL LETTER SA;Ll;0;R;;;;;N;;;10D56;;10D56 +10D77;GARAY SMALL LETTER WA;Ll;0;R;;;;;N;;;10D57;;10D57 +10D78;GARAY SMALL LETTER LA;Ll;0;R;;;;;N;;;10D58;;10D58 +10D79;GARAY SMALL LETTER GA;Ll;0;R;;;;;N;;;10D59;;10D59 +10D7A;GARAY SMALL LETTER DA;Ll;0;R;;;;;N;;;10D5A;;10D5A +10D7B;GARAY SMALL LETTER XA;Ll;0;R;;;;;N;;;10D5B;;10D5B +10D7C;GARAY SMALL LETTER YA;Ll;0;R;;;;;N;;;10D5C;;10D5C +10D7D;GARAY SMALL LETTER TA;Ll;0;R;;;;;N;;;10D5D;;10D5D +10D7E;GARAY SMALL LETTER RA;Ll;0;R;;;;;N;;;10D5E;;10D5E +10D7F;GARAY SMALL LETTER NYA;Ll;0;R;;;;;N;;;10D5F;;10D5F +10D80;GARAY SMALL LETTER FA;Ll;0;R;;;;;N;;;10D60;;10D60 +10D81;GARAY SMALL LETTER NA;Ll;0;R;;;;;N;;;10D61;;10D61 +10D82;GARAY SMALL LETTER PA;Ll;0;R;;;;;N;;;10D62;;10D62 +10D83;GARAY SMALL LETTER HA;Ll;0;R;;;;;N;;;10D63;;10D63 +10D84;GARAY SMALL LETTER OLD KA;Ll;0;R;;;;;N;;;10D64;;10D64 +10D85;GARAY SMALL LETTER OLD NA;Ll;0;R;;;;;N;;;10D65;;10D65 +10D8E;GARAY PLUS SIGN;Sm;0;R;;;;;N;;;;; +10D8F;GARAY MINUS SIGN;Sm;0;R;;;;;N;;;;; 10E60;RUMI DIGIT ONE;No;0;AN;;;1;1;N;;;;; 10E61;RUMI DIGIT TWO;No;0;AN;;;2;2;N;;;;; 10E62;RUMI DIGIT THREE;No;0;AN;;;3;3;N;;;;; @@ -19400,6 +19538,10 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;; 10EAD;YEZIDI HYPHENATION MARK;Pd;0;R;;;;;N;;;;; 10EB0;YEZIDI LETTER LAM WITH DOT ABOVE;Lo;0;R;;;;;N;;;;; 10EB1;YEZIDI LETTER YOT WITH CIRCUMFLEX ABOVE;Lo;0;R;;;;;N;;;;; +10EC2;ARABIC LETTER DAL WITH TWO DOTS VERTICALLY BELOW;Lo;0;AL;;;;;N;;;;; +10EC3;ARABIC LETTER TAH WITH TWO DOTS VERTICALLY BELOW;Lo;0;AL;;;;;N;;;;; +10EC4;ARABIC LETTER KAF WITH TWO DOTS VERTICALLY BELOW;Lo;0;AL;;;;;N;;;;; +10EFC;ARABIC COMBINING ALEF OVERLAY;Mn;0;NSM;;;;;N;;;;; 10EFD;ARABIC SMALL LOW WORD SAKTA;Mn;220;NSM;;;;;N;;;;; 10EFE;ARABIC SMALL LOW WORD QASR;Mn;220;NSM;;;;;N;;;;; 10EFF;ARABIC SMALL LOW WORD MADDA;Mn;220;NSM;;;;;N;;;;; @@ -20264,6 +20406,86 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;; 11372;COMBINING GRANTHA LETTER NA;Mn;230;NSM;;;;;N;;;;; 11373;COMBINING GRANTHA LETTER VI;Mn;230;NSM;;;;;N;;;;; 11374;COMBINING GRANTHA LETTER PA;Mn;230;NSM;;;;;N;;;;; +11380;TULU-TIGALARI LETTER A;Lo;0;L;;;;;N;;;;; +11381;TULU-TIGALARI LETTER AA;Lo;0;L;;;;;N;;;;; +11382;TULU-TIGALARI LETTER I;Lo;0;L;;;;;N;;;;; +11383;TULU-TIGALARI LETTER II;Lo;0;L;11382 113C9;;;;N;;;;; +11384;TULU-TIGALARI LETTER U;Lo;0;L;;;;;N;;;;; +11385;TULU-TIGALARI LETTER UU;Lo;0;L;11384 113BB;;;;N;;;;; +11386;TULU-TIGALARI LETTER VOCALIC R;Lo;0;L;;;;;N;;;;; +11387;TULU-TIGALARI LETTER VOCALIC RR;Lo;0;L;;;;;N;;;;; +11388;TULU-TIGALARI LETTER VOCALIC L;Lo;0;L;;;;;N;;;;; +11389;TULU-TIGALARI LETTER VOCALIC LL;Lo;0;L;;;;;N;;;;; +1138B;TULU-TIGALARI LETTER EE;Lo;0;L;;;;;N;;;;; +1138E;TULU-TIGALARI LETTER AI;Lo;0;L;1138B 113C2;;;;N;;;;; +11390;TULU-TIGALARI LETTER OO;Lo;0;L;;;;;N;;;;; +11391;TULU-TIGALARI LETTER AU;Lo;0;L;11390 113C9;;;;N;;;;; +11392;TULU-TIGALARI LETTER KA;Lo;0;L;;;;;N;;;;; +11393;TULU-TIGALARI LETTER KHA;Lo;0;L;;;;;N;;;;; +11394;TULU-TIGALARI LETTER GA;Lo;0;L;;;;;N;;;;; +11395;TULU-TIGALARI LETTER GHA;Lo;0;L;;;;;N;;;;; +11396;TULU-TIGALARI LETTER NGA;Lo;0;L;;;;;N;;;;; +11397;TULU-TIGALARI LETTER CA;Lo;0;L;;;;;N;;;;; +11398;TULU-TIGALARI LETTER CHA;Lo;0;L;;;;;N;;;;; +11399;TULU-TIGALARI LETTER JA;Lo;0;L;;;;;N;;;;; +1139A;TULU-TIGALARI LETTER JHA;Lo;0;L;;;;;N;;;;; +1139B;TULU-TIGALARI LETTER NYA;Lo;0;L;;;;;N;;;;; +1139C;TULU-TIGALARI LETTER TTA;Lo;0;L;;;;;N;;;;; +1139D;TULU-TIGALARI LETTER TTHA;Lo;0;L;;;;;N;;;;; +1139E;TULU-TIGALARI LETTER DDA;Lo;0;L;;;;;N;;;;; +1139F;TULU-TIGALARI LETTER DDHA;Lo;0;L;;;;;N;;;;; +113A0;TULU-TIGALARI LETTER NNA;Lo;0;L;;;;;N;;;;; +113A1;TULU-TIGALARI LETTER TA;Lo;0;L;;;;;N;;;;; +113A2;TULU-TIGALARI LETTER THA;Lo;0;L;;;;;N;;;;; +113A3;TULU-TIGALARI LETTER DA;Lo;0;L;;;;;N;;;;; +113A4;TULU-TIGALARI LETTER DHA;Lo;0;L;;;;;N;;;;; +113A5;TULU-TIGALARI LETTER NA;Lo;0;L;;;;;N;;;;; +113A6;TULU-TIGALARI LETTER PA;Lo;0;L;;;;;N;;;;; +113A7;TULU-TIGALARI LETTER PHA;Lo;0;L;;;;;N;;;;; +113A8;TULU-TIGALARI LETTER BA;Lo;0;L;;;;;N;;;;; +113A9;TULU-TIGALARI LETTER BHA;Lo;0;L;;;;;N;;;;; +113AA;TULU-TIGALARI LETTER MA;Lo;0;L;;;;;N;;;;; +113AB;TULU-TIGALARI LETTER YA;Lo;0;L;;;;;N;;;;; +113AC;TULU-TIGALARI LETTER RA;Lo;0;L;;;;;N;;;;; +113AD;TULU-TIGALARI LETTER LA;Lo;0;L;;;;;N;;;;; +113AE;TULU-TIGALARI LETTER VA;Lo;0;L;;;;;N;;;;; +113AF;TULU-TIGALARI LETTER SHA;Lo;0;L;;;;;N;;;;; +113B0;TULU-TIGALARI LETTER SSA;Lo;0;L;;;;;N;;;;; +113B1;TULU-TIGALARI LETTER SA;Lo;0;L;;;;;N;;;;; +113B2;TULU-TIGALARI LETTER HA;Lo;0;L;;;;;N;;;;; +113B3;TULU-TIGALARI LETTER LLA;Lo;0;L;;;;;N;;;;; +113B4;TULU-TIGALARI LETTER RRA;Lo;0;L;;;;;N;;;;; +113B5;TULU-TIGALARI LETTER LLLA;Lo;0;L;;;;;N;;;;; +113B7;TULU-TIGALARI SIGN AVAGRAHA;Lo;0;L;;;;;N;;;;; +113B8;TULU-TIGALARI VOWEL SIGN AA;Mc;0;L;;;;;N;;;;; +113B9;TULU-TIGALARI VOWEL SIGN I;Mc;0;L;;;;;N;;;;; +113BA;TULU-TIGALARI VOWEL SIGN II;Mc;0;L;;;;;N;;;;; +113BB;TULU-TIGALARI VOWEL SIGN U;Mn;0;NSM;;;;;N;;;;; +113BC;TULU-TIGALARI VOWEL SIGN UU;Mn;0;NSM;;;;;N;;;;; +113BD;TULU-TIGALARI VOWEL SIGN VOCALIC R;Mn;0;NSM;;;;;N;;;;; +113BE;TULU-TIGALARI VOWEL SIGN VOCALIC RR;Mn;0;NSM;;;;;N;;;;; +113BF;TULU-TIGALARI VOWEL SIGN VOCALIC L;Mn;0;NSM;;;;;N;;;;; +113C0;TULU-TIGALARI VOWEL SIGN VOCALIC LL;Mn;0;NSM;;;;;N;;;;; +113C2;TULU-TIGALARI VOWEL SIGN EE;Mc;0;L;;;;;N;;;;; +113C5;TULU-TIGALARI VOWEL SIGN AI;Mc;0;L;113C2 113C2;;;;N;;;;; +113C7;TULU-TIGALARI VOWEL SIGN OO;Mc;0;L;113C2 113B8;;;;N;;;;; +113C8;TULU-TIGALARI VOWEL SIGN AU;Mc;0;L;113C2 113C9;;;;N;;;;; +113C9;TULU-TIGALARI AU LENGTH MARK;Mc;0;L;;;;;N;;;;; +113CA;TULU-TIGALARI SIGN CANDRA ANUNASIKA;Mc;0;L;;;;;N;;;;; +113CC;TULU-TIGALARI SIGN ANUSVARA;Mc;0;L;;;;;N;;;;; +113CD;TULU-TIGALARI SIGN VISARGA;Mc;0;L;;;;;N;;;;; +113CE;TULU-TIGALARI SIGN VIRAMA;Mn;9;NSM;;;;;N;;;;; +113CF;TULU-TIGALARI SIGN LOOPED VIRAMA;Mc;9;L;;;;;N;;;;; +113D0;TULU-TIGALARI CONJOINER;Mn;9;NSM;;;;;N;;;;; +113D1;TULU-TIGALARI REPHA;Lo;0;L;;;;;N;;;;; +113D2;TULU-TIGALARI GEMINATION MARK;Mn;0;NSM;;;;;N;;;;; +113D3;TULU-TIGALARI SIGN PLUTA;Lo;0;L;;;;;N;;;;; +113D4;TULU-TIGALARI DANDA;Po;0;L;;;;;N;;;;; +113D5;TULU-TIGALARI DOUBLE DANDA;Po;0;L;;;;;N;;;;; +113D7;TULU-TIGALARI SIGN OM PUSHPIKA;Po;0;L;;;;;N;;;;; +113D8;TULU-TIGALARI SIGN SHRII PUSHPIKA;Po;0;L;;;;;N;;;;; +113E1;TULU-TIGALARI VEDIC TONE SVARITA;Mn;0;NSM;;;;;N;;;;; +113E2;TULU-TIGALARI VEDIC TONE ANUDATTA;Mn;0;NSM;;;;;N;;;;; 11400;NEWA LETTER A;Lo;0;L;;;;;N;;;;; 11401;NEWA LETTER AA;Lo;0;L;;;;;N;;;;; 11402;NEWA LETTER I;Lo;0;L;;;;;N;;;;; @@ -20695,6 +20917,26 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;; 116C7;TAKRI DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;; 116C8;TAKRI DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;; 116C9;TAKRI DIGIT NINE;Nd;0;L;;9;9;9;N;;;;; +116D0;MYANMAR PAO DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;; +116D1;MYANMAR PAO DIGIT ONE;Nd;0;L;;1;1;1;N;;;;; +116D2;MYANMAR PAO DIGIT TWO;Nd;0;L;;2;2;2;N;;;;; +116D3;MYANMAR PAO DIGIT THREE;Nd;0;L;;3;3;3;N;;;;; +116D4;MYANMAR PAO DIGIT FOUR;Nd;0;L;;4;4;4;N;;;;; +116D5;MYANMAR PAO DIGIT FIVE;Nd;0;L;;5;5;5;N;;;;; +116D6;MYANMAR PAO DIGIT SIX;Nd;0;L;;6;6;6;N;;;;; +116D7;MYANMAR PAO DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;; +116D8;MYANMAR PAO DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;; +116D9;MYANMAR PAO DIGIT NINE;Nd;0;L;;9;9;9;N;;;;; +116DA;MYANMAR EASTERN PWO KAREN DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;; +116DB;MYANMAR EASTERN PWO KAREN DIGIT ONE;Nd;0;L;;1;1;1;N;;;;; +116DC;MYANMAR EASTERN PWO KAREN DIGIT TWO;Nd;0;L;;2;2;2;N;;;;; +116DD;MYANMAR EASTERN PWO KAREN DIGIT THREE;Nd;0;L;;3;3;3;N;;;;; +116DE;MYANMAR EASTERN PWO KAREN DIGIT FOUR;Nd;0;L;;4;4;4;N;;;;; +116DF;MYANMAR EASTERN PWO KAREN DIGIT FIVE;Nd;0;L;;5;5;5;N;;;;; +116E0;MYANMAR EASTERN PWO KAREN DIGIT SIX;Nd;0;L;;6;6;6;N;;;;; +116E1;MYANMAR EASTERN PWO KAREN DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;; +116E2;MYANMAR EASTERN PWO KAREN DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;; +116E3;MYANMAR EASTERN PWO KAREN DIGIT NINE;Nd;0;L;;9;9;9;N;;;;; 11700;AHOM LETTER KA;Lo;0;L;;;;;N;;;;; 11701;AHOM LETTER KHA;Lo;0;L;;;;;N;;;;; 11702;AHOM LETTER NGA;Lo;0;L;;;;;N;;;;; @@ -20723,7 +20965,7 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;; 11719;AHOM LETTER JHA;Lo;0;L;;;;;N;;;;; 1171A;AHOM LETTER ALTERNATE BA;Lo;0;L;;;;;N;;;;; 1171D;AHOM CONSONANT SIGN MEDIAL LA;Mn;0;NSM;;;;;N;;;;; -1171E;AHOM CONSONANT SIGN MEDIAL RA;Mn;0;NSM;;;;;N;;;;; +1171E;AHOM CONSONANT SIGN MEDIAL RA;Mc;0;L;;;;;N;;;;; 1171F;AHOM CONSONANT SIGN MEDIAL LIGATING RA;Mn;0;NSM;;;;;N;;;;; 11720;AHOM VOWEL SIGN A;Mc;0;L;;;;;N;;;;; 11721;AHOM VOWEL SIGN AA;Mc;0;L;;;;;N;;;;; @@ -21279,6 +21521,50 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;; 11B07;DEVANAGARI SIGN WESTERN NINE-LIKE BHALE;Po;0;L;;;;;N;;;;; 11B08;DEVANAGARI SIGN REVERSED NINE-LIKE BHALE;Po;0;L;;;;;N;;;;; 11B09;DEVANAGARI SIGN MINDU;Po;0;L;;;;;N;;;;; +11BC0;SUNUWAR LETTER DEVI;Lo;0;L;;;;;N;;;;; +11BC1;SUNUWAR LETTER TASLA;Lo;0;L;;;;;N;;;;; +11BC2;SUNUWAR LETTER EKO;Lo;0;L;;;;;N;;;;; +11BC3;SUNUWAR LETTER IMAR;Lo;0;L;;;;;N;;;;; +11BC4;SUNUWAR LETTER REU;Lo;0;L;;;;;N;;;;; +11BC5;SUNUWAR LETTER UTTHI;Lo;0;L;;;;;N;;;;; +11BC6;SUNUWAR LETTER KIK;Lo;0;L;;;;;N;;;;; +11BC7;SUNUWAR LETTER MA;Lo;0;L;;;;;N;;;;; +11BC8;SUNUWAR LETTER APPHO;Lo;0;L;;;;;N;;;;; +11BC9;SUNUWAR LETTER PIP;Lo;0;L;;;;;N;;;;; +11BCA;SUNUWAR LETTER GIL;Lo;0;L;;;;;N;;;;; +11BCB;SUNUWAR LETTER HAMSO;Lo;0;L;;;;;N;;;;; +11BCC;SUNUWAR LETTER CARMI;Lo;0;L;;;;;N;;;;; +11BCD;SUNUWAR LETTER NAH;Lo;0;L;;;;;N;;;;; +11BCE;SUNUWAR LETTER BUR;Lo;0;L;;;;;N;;;;; +11BCF;SUNUWAR LETTER JYAH;Lo;0;L;;;;;N;;;;; +11BD0;SUNUWAR LETTER LOACHA;Lo;0;L;;;;;N;;;;; +11BD1;SUNUWAR LETTER OTTHI;Lo;0;L;;;;;N;;;;; +11BD2;SUNUWAR LETTER SHYELE;Lo;0;L;;;;;N;;;;; +11BD3;SUNUWAR LETTER VARCA;Lo;0;L;;;;;N;;;;; +11BD4;SUNUWAR LETTER YAT;Lo;0;L;;;;;N;;;;; +11BD5;SUNUWAR LETTER AVA;Lo;0;L;;;;;N;;;;; +11BD6;SUNUWAR LETTER AAL;Lo;0;L;;;;;N;;;;; +11BD7;SUNUWAR LETTER DONGA;Lo;0;L;;;;;N;;;;; +11BD8;SUNUWAR LETTER THARI;Lo;0;L;;;;;N;;;;; +11BD9;SUNUWAR LETTER PHAR;Lo;0;L;;;;;N;;;;; +11BDA;SUNUWAR LETTER NGAR;Lo;0;L;;;;;N;;;;; +11BDB;SUNUWAR LETTER KHA;Lo;0;L;;;;;N;;;;; +11BDC;SUNUWAR LETTER SHYER;Lo;0;L;;;;;N;;;;; +11BDD;SUNUWAR LETTER CHELAP;Lo;0;L;;;;;N;;;;; +11BDE;SUNUWAR LETTER TENTU;Lo;0;L;;;;;N;;;;; +11BDF;SUNUWAR LETTER THELE;Lo;0;L;;;;;N;;;;; +11BE0;SUNUWAR LETTER KLOKO;Lo;0;L;;;;;N;;;;; +11BE1;SUNUWAR SIGN PVO;Po;0;L;;;;;N;;;;; +11BF0;SUNUWAR DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;; +11BF1;SUNUWAR DIGIT ONE;Nd;0;L;;1;1;1;N;;;;; +11BF2;SUNUWAR DIGIT TWO;Nd;0;L;;2;2;2;N;;;;; +11BF3;SUNUWAR DIGIT THREE;Nd;0;L;;3;3;3;N;;;;; +11BF4;SUNUWAR DIGIT FOUR;Nd;0;L;;4;4;4;N;;;;; +11BF5;SUNUWAR DIGIT FIVE;Nd;0;L;;5;5;5;N;;;;; +11BF6;SUNUWAR DIGIT SIX;Nd;0;L;;6;6;6;N;;;;; +11BF7;SUNUWAR DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;; +11BF8;SUNUWAR DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;; +11BF9;SUNUWAR DIGIT NINE;Nd;0;L;;9;9;9;N;;;;; 11C00;BHAIKSUKI LETTER A;Lo;0;L;;;;;N;;;;; 11C01;BHAIKSUKI LETTER AA;Lo;0;L;;;;;N;;;;; 11C02;BHAIKSUKI LETTER I;Lo;0;L;;;;;N;;;;; @@ -21693,6 +21979,7 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;; 11F57;KAWI DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;; 11F58;KAWI DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;; 11F59;KAWI DIGIT NINE;Nd;0;L;;9;9;9;N;;;;; +11F5A;KAWI SIGN NUKTA;Mn;0;NSM;;;;;N;;;;; 11FB0;LISU LETTER YHA;Lo;0;L;;;;;N;;;;; 11FC0;TAMIL FRACTION ONE THREE-HUNDRED-AND-TWENTIETH;No;0;L;;;;1/320;N;;;;; 11FC1;TAMIL FRACTION ONE ONE-HUNDRED-AND-SIXTIETH;No;0;L;;;;1/160;N;;;;; @@ -24188,6 +24475,4001 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;; 13453;EGYPTIAN HIEROGLYPH MODIFIER DAMAGED AT TOP AND END;Mn;0;NSM;;;;;N;;;;; 13454;EGYPTIAN HIEROGLYPH MODIFIER DAMAGED AT BOTTOM AND END;Mn;0;NSM;;;;;N;;;;; 13455;EGYPTIAN HIEROGLYPH MODIFIER DAMAGED;Mn;0;NSM;;;;;N;;;;; +13460;EGYPTIAN HIEROGLYPH-13460;Lo;0;L;;;;;N;;;;; +13461;EGYPTIAN HIEROGLYPH-13461;Lo;0;L;;;;;N;;;;; +13462;EGYPTIAN HIEROGLYPH-13462;Lo;0;L;;;;;N;;;;; +13463;EGYPTIAN HIEROGLYPH-13463;Lo;0;L;;;;;N;;;;; +13464;EGYPTIAN HIEROGLYPH-13464;Lo;0;L;;;;;N;;;;; +13465;EGYPTIAN HIEROGLYPH-13465;Lo;0;L;;;;;N;;;;; +13466;EGYPTIAN HIEROGLYPH-13466;Lo;0;L;;;;;N;;;;; +13467;EGYPTIAN HIEROGLYPH-13467;Lo;0;L;;;;;N;;;;; +13468;EGYPTIAN HIEROGLYPH-13468;Lo;0;L;;;;;N;;;;; +13469;EGYPTIAN HIEROGLYPH-13469;Lo;0;L;;;;;N;;;;; +1346A;EGYPTIAN HIEROGLYPH-1346A;Lo;0;L;;;;;N;;;;; +1346B;EGYPTIAN HIEROGLYPH-1346B;Lo;0;L;;;;;N;;;;; +1346C;EGYPTIAN HIEROGLYPH-1346C;Lo;0;L;;;;;N;;;;; +1346D;EGYPTIAN HIEROGLYPH-1346D;Lo;0;L;;;;;N;;;;; +1346E;EGYPTIAN HIEROGLYPH-1346E;Lo;0;L;;;;;N;;;;; +1346F;EGYPTIAN HIEROGLYPH-1346F;Lo;0;L;;;;;N;;;;; +13470;EGYPTIAN HIEROGLYPH-13470;Lo;0;L;;;;;N;;;;; +13471;EGYPTIAN HIEROGLYPH-13471;Lo;0;L;;;;;N;;;;; +13472;EGYPTIAN HIEROGLYPH-13472;Lo;0;L;;;;;N;;;;; +13473;EGYPTIAN HIEROGLYPH-13473;Lo;0;L;;;;;N;;;;; +13474;EGYPTIAN HIEROGLYPH-13474;Lo;0;L;;;;;N;;;;; +13475;EGYPTIAN HIEROGLYPH-13475;Lo;0;L;;;;;N;;;;; +13476;EGYPTIAN HIEROGLYPH-13476;Lo;0;L;;;;;N;;;;; +13477;EGYPTIAN HIEROGLYPH-13477;Lo;0;L;;;;;N;;;;; +13478;EGYPTIAN HIEROGLYPH-13478;Lo;0;L;;;;;N;;;;; +13479;EGYPTIAN HIEROGLYPH-13479;Lo;0;L;;;;;N;;;;; +1347A;EGYPTIAN HIEROGLYPH-1347A;Lo;0;L;;;;;N;;;;; +1347B;EGYPTIAN HIEROGLYPH-1347B;Lo;0;L;;;;;N;;;;; +1347C;EGYPTIAN HIEROGLYPH-1347C;Lo;0;L;;;;;N;;;;; +1347D;EGYPTIAN HIEROGLYPH-1347D;Lo;0;L;;;;;N;;;;; +1347E;EGYPTIAN HIEROGLYPH-1347E;Lo;0;L;;;;;N;;;;; +1347F;EGYPTIAN HIEROGLYPH-1347F;Lo;0;L;;;;;N;;;;; +13480;EGYPTIAN HIEROGLYPH-13480;Lo;0;L;;;;;N;;;;; +13481;EGYPTIAN HIEROGLYPH-13481;Lo;0;L;;;;;N;;;;; +13482;EGYPTIAN HIEROGLYPH-13482;Lo;0;L;;;;;N;;;;; +13483;EGYPTIAN HIEROGLYPH-13483;Lo;0;L;;;;;N;;;;; +13484;EGYPTIAN HIEROGLYPH-13484;Lo;0;L;;;;;N;;;;; +13485;EGYPTIAN HIEROGLYPH-13485;Lo;0;L;;;;;N;;;;; +13486;EGYPTIAN HIEROGLYPH-13486;Lo;0;L;;;;;N;;;;; +13487;EGYPTIAN HIEROGLYPH-13487;Lo;0;L;;;;;N;;;;; +13488;EGYPTIAN HIEROGLYPH-13488;Lo;0;L;;;;;N;;;;; +13489;EGYPTIAN HIEROGLYPH-13489;Lo;0;L;;;;;N;;;;; +1348A;EGYPTIAN HIEROGLYPH-1348A;Lo;0;L;;;;;N;;;;; +1348B;EGYPTIAN HIEROGLYPH-1348B;Lo;0;L;;;;;N;;;;; +1348C;EGYPTIAN HIEROGLYPH-1348C;Lo;0;L;;;;;N;;;;; +1348D;EGYPTIAN HIEROGLYPH-1348D;Lo;0;L;;;;;N;;;;; +1348E;EGYPTIAN HIEROGLYPH-1348E;Lo;0;L;;;;;N;;;;; +1348F;EGYPTIAN HIEROGLYPH-1348F;Lo;0;L;;;;;N;;;;; +13490;EGYPTIAN HIEROGLYPH-13490;Lo;0;L;;;;;N;;;;; +13491;EGYPTIAN HIEROGLYPH-13491;Lo;0;L;;;;;N;;;;; +13492;EGYPTIAN HIEROGLYPH-13492;Lo;0;L;;;;;N;;;;; +13493;EGYPTIAN HIEROGLYPH-13493;Lo;0;L;;;;;N;;;;; +13494;EGYPTIAN HIEROGLYPH-13494;Lo;0;L;;;;;N;;;;; +13495;EGYPTIAN HIEROGLYPH-13495;Lo;0;L;;;;;N;;;;; +13496;EGYPTIAN HIEROGLYPH-13496;Lo;0;L;;;;;N;;;;; +13497;EGYPTIAN HIEROGLYPH-13497;Lo;0;L;;;;;N;;;;; +13498;EGYPTIAN HIEROGLYPH-13498;Lo;0;L;;;;;N;;;;; +13499;EGYPTIAN HIEROGLYPH-13499;Lo;0;L;;;;;N;;;;; +1349A;EGYPTIAN HIEROGLYPH-1349A;Lo;0;L;;;;;N;;;;; +1349B;EGYPTIAN HIEROGLYPH-1349B;Lo;0;L;;;;;N;;;;; +1349C;EGYPTIAN HIEROGLYPH-1349C;Lo;0;L;;;;;N;;;;; +1349D;EGYPTIAN HIEROGLYPH-1349D;Lo;0;L;;;;;N;;;;; +1349E;EGYPTIAN HIEROGLYPH-1349E;Lo;0;L;;;;;N;;;;; +1349F;EGYPTIAN HIEROGLYPH-1349F;Lo;0;L;;;;;N;;;;; +134A0;EGYPTIAN HIEROGLYPH-134A0;Lo;0;L;;;;;N;;;;; +134A1;EGYPTIAN HIEROGLYPH-134A1;Lo;0;L;;;;;N;;;;; +134A2;EGYPTIAN HIEROGLYPH-134A2;Lo;0;L;;;;;N;;;;; +134A3;EGYPTIAN HIEROGLYPH-134A3;Lo;0;L;;;;;N;;;;; +134A4;EGYPTIAN HIEROGLYPH-134A4;Lo;0;L;;;;;N;;;;; +134A5;EGYPTIAN HIEROGLYPH-134A5;Lo;0;L;;;;;N;;;;; +134A6;EGYPTIAN HIEROGLYPH-134A6;Lo;0;L;;;;;N;;;;; +134A7;EGYPTIAN HIEROGLYPH-134A7;Lo;0;L;;;;;N;;;;; +134A8;EGYPTIAN HIEROGLYPH-134A8;Lo;0;L;;;;;N;;;;; +134A9;EGYPTIAN HIEROGLYPH-134A9;Lo;0;L;;;;;N;;;;; +134AA;EGYPTIAN HIEROGLYPH-134AA;Lo;0;L;;;;;N;;;;; +134AB;EGYPTIAN HIEROGLYPH-134AB;Lo;0;L;;;;;N;;;;; +134AC;EGYPTIAN HIEROGLYPH-134AC;Lo;0;L;;;;;N;;;;; +134AD;EGYPTIAN HIEROGLYPH-134AD;Lo;0;L;;;;;N;;;;; +134AE;EGYPTIAN HIEROGLYPH-134AE;Lo;0;L;;;;;N;;;;; +134AF;EGYPTIAN HIEROGLYPH-134AF;Lo;0;L;;;;;N;;;;; +134B0;EGYPTIAN HIEROGLYPH-134B0;Lo;0;L;;;;;N;;;;; +134B1;EGYPTIAN HIEROGLYPH-134B1;Lo;0;L;;;;;N;;;;; +134B2;EGYPTIAN HIEROGLYPH-134B2;Lo;0;L;;;;;N;;;;; +134B3;EGYPTIAN HIEROGLYPH-134B3;Lo;0;L;;;;;N;;;;; +134B4;EGYPTIAN HIEROGLYPH-134B4;Lo;0;L;;;;;N;;;;; +134B5;EGYPTIAN HIEROGLYPH-134B5;Lo;0;L;;;;;N;;;;; +134B6;EGYPTIAN HIEROGLYPH-134B6;Lo;0;L;;;;;N;;;;; +134B7;EGYPTIAN HIEROGLYPH-134B7;Lo;0;L;;;;;N;;;;; +134B8;EGYPTIAN HIEROGLYPH-134B8;Lo;0;L;;;;;N;;;;; +134B9;EGYPTIAN HIEROGLYPH-134B9;Lo;0;L;;;;;N;;;;; +134BA;EGYPTIAN HIEROGLYPH-134BA;Lo;0;L;;;;;N;;;;; +134BB;EGYPTIAN HIEROGLYPH-134BB;Lo;0;L;;;;;N;;;;; +134BC;EGYPTIAN HIEROGLYPH-134BC;Lo;0;L;;;;;N;;;;; +134BD;EGYPTIAN HIEROGLYPH-134BD;Lo;0;L;;;;;N;;;;; +134BE;EGYPTIAN HIEROGLYPH-134BE;Lo;0;L;;;;;N;;;;; +134BF;EGYPTIAN HIEROGLYPH-134BF;Lo;0;L;;;;;N;;;;; +134C0;EGYPTIAN HIEROGLYPH-134C0;Lo;0;L;;;;;N;;;;; +134C1;EGYPTIAN HIEROGLYPH-134C1;Lo;0;L;;;;;N;;;;; +134C2;EGYPTIAN HIEROGLYPH-134C2;Lo;0;L;;;;;N;;;;; +134C3;EGYPTIAN HIEROGLYPH-134C3;Lo;0;L;;;;;N;;;;; +134C4;EGYPTIAN HIEROGLYPH-134C4;Lo;0;L;;;;;N;;;;; +134C5;EGYPTIAN HIEROGLYPH-134C5;Lo;0;L;;;;;N;;;;; +134C6;EGYPTIAN HIEROGLYPH-134C6;Lo;0;L;;;;;N;;;;; +134C7;EGYPTIAN HIEROGLYPH-134C7;Lo;0;L;;;;;N;;;;; +134C8;EGYPTIAN HIEROGLYPH-134C8;Lo;0;L;;;;;N;;;;; +134C9;EGYPTIAN HIEROGLYPH-134C9;Lo;0;L;;;;;N;;;;; +134CA;EGYPTIAN HIEROGLYPH-134CA;Lo;0;L;;;;;N;;;;; +134CB;EGYPTIAN HIEROGLYPH-134CB;Lo;0;L;;;;;N;;;;; +134CC;EGYPTIAN HIEROGLYPH-134CC;Lo;0;L;;;;;N;;;;; +134CD;EGYPTIAN HIEROGLYPH-134CD;Lo;0;L;;;;;N;;;;; +134CE;EGYPTIAN HIEROGLYPH-134CE;Lo;0;L;;;;;N;;;;; +134CF;EGYPTIAN HIEROGLYPH-134CF;Lo;0;L;;;;;N;;;;; +134D0;EGYPTIAN HIEROGLYPH-134D0;Lo;0;L;;;;;N;;;;; +134D1;EGYPTIAN HIEROGLYPH-134D1;Lo;0;L;;;;;N;;;;; +134D2;EGYPTIAN HIEROGLYPH-134D2;Lo;0;L;;;;;N;;;;; +134D3;EGYPTIAN HIEROGLYPH-134D3;Lo;0;L;;;;;N;;;;; +134D4;EGYPTIAN HIEROGLYPH-134D4;Lo;0;L;;;;;N;;;;; +134D5;EGYPTIAN HIEROGLYPH-134D5;Lo;0;L;;;;;N;;;;; +134D6;EGYPTIAN HIEROGLYPH-134D6;Lo;0;L;;;;;N;;;;; +134D7;EGYPTIAN HIEROGLYPH-134D7;Lo;0;L;;;;;N;;;;; +134D8;EGYPTIAN HIEROGLYPH-134D8;Lo;0;L;;;;;N;;;;; +134D9;EGYPTIAN HIEROGLYPH-134D9;Lo;0;L;;;;;N;;;;; +134DA;EGYPTIAN HIEROGLYPH-134DA;Lo;0;L;;;;;N;;;;; +134DB;EGYPTIAN HIEROGLYPH-134DB;Lo;0;L;;;;;N;;;;; +134DC;EGYPTIAN HIEROGLYPH-134DC;Lo;0;L;;;;;N;;;;; +134DD;EGYPTIAN HIEROGLYPH-134DD;Lo;0;L;;;;;N;;;;; +134DE;EGYPTIAN HIEROGLYPH-134DE;Lo;0;L;;;;;N;;;;; +134DF;EGYPTIAN HIEROGLYPH-134DF;Lo;0;L;;;;;N;;;;; +134E0;EGYPTIAN HIEROGLYPH-134E0;Lo;0;L;;;;;N;;;;; +134E1;EGYPTIAN HIEROGLYPH-134E1;Lo;0;L;;;;;N;;;;; +134E2;EGYPTIAN HIEROGLYPH-134E2;Lo;0;L;;;;;N;;;;; +134E3;EGYPTIAN HIEROGLYPH-134E3;Lo;0;L;;;;;N;;;;; +134E4;EGYPTIAN HIEROGLYPH-134E4;Lo;0;L;;;;;N;;;;; +134E5;EGYPTIAN HIEROGLYPH-134E5;Lo;0;L;;;;;N;;;;; +134E6;EGYPTIAN HIEROGLYPH-134E6;Lo;0;L;;;;;N;;;;; +134E7;EGYPTIAN HIEROGLYPH-134E7;Lo;0;L;;;;;N;;;;; +134E8;EGYPTIAN HIEROGLYPH-134E8;Lo;0;L;;;;;N;;;;; +134E9;EGYPTIAN HIEROGLYPH-134E9;Lo;0;L;;;;;N;;;;; +134EA;EGYPTIAN HIEROGLYPH-134EA;Lo;0;L;;;;;N;;;;; +134EB;EGYPTIAN HIEROGLYPH-134EB;Lo;0;L;;;;;N;;;;; +134EC;EGYPTIAN HIEROGLYPH-134EC;Lo;0;L;;;;;N;;;;; +134ED;EGYPTIAN HIEROGLYPH-134ED;Lo;0;L;;;;;N;;;;; +134EE;EGYPTIAN HIEROGLYPH-134EE;Lo;0;L;;;;;N;;;;; +134EF;EGYPTIAN HIEROGLYPH-134EF;Lo;0;L;;;;;N;;;;; +134F0;EGYPTIAN HIEROGLYPH-134F0;Lo;0;L;;;;;N;;;;; +134F1;EGYPTIAN HIEROGLYPH-134F1;Lo;0;L;;;;;N;;;;; +134F2;EGYPTIAN HIEROGLYPH-134F2;Lo;0;L;;;;;N;;;;; +134F3;EGYPTIAN HIEROGLYPH-134F3;Lo;0;L;;;;;N;;;;; +134F4;EGYPTIAN HIEROGLYPH-134F4;Lo;0;L;;;;;N;;;;; +134F5;EGYPTIAN HIEROGLYPH-134F5;Lo;0;L;;;;;N;;;;; +134F6;EGYPTIAN HIEROGLYPH-134F6;Lo;0;L;;;;;N;;;;; +134F7;EGYPTIAN HIEROGLYPH-134F7;Lo;0;L;;;;;N;;;;; +134F8;EGYPTIAN HIEROGLYPH-134F8;Lo;0;L;;;;;N;;;;; +134F9;EGYPTIAN HIEROGLYPH-134F9;Lo;0;L;;;;;N;;;;; +134FA;EGYPTIAN HIEROGLYPH-134FA;Lo;0;L;;;;;N;;;;; +134FB;EGYPTIAN HIEROGLYPH-134FB;Lo;0;L;;;;;N;;;;; +134FC;EGYPTIAN HIEROGLYPH-134FC;Lo;0;L;;;;;N;;;;; +134FD;EGYPTIAN HIEROGLYPH-134FD;Lo;0;L;;;;;N;;;;; +134FE;EGYPTIAN HIEROGLYPH-134FE;Lo;0;L;;;;;N;;;;; +134FF;EGYPTIAN HIEROGLYPH-134FF;Lo;0;L;;;;;N;;;;; +13500;EGYPTIAN HIEROGLYPH-13500;Lo;0;L;;;;;N;;;;; +13501;EGYPTIAN HIEROGLYPH-13501;Lo;0;L;;;;;N;;;;; +13502;EGYPTIAN HIEROGLYPH-13502;Lo;0;L;;;;;N;;;;; +13503;EGYPTIAN HIEROGLYPH-13503;Lo;0;L;;;;;N;;;;; +13504;EGYPTIAN HIEROGLYPH-13504;Lo;0;L;;;;;N;;;;; +13505;EGYPTIAN HIEROGLYPH-13505;Lo;0;L;;;;;N;;;;; +13506;EGYPTIAN HIEROGLYPH-13506;Lo;0;L;;;;;N;;;;; +13507;EGYPTIAN HIEROGLYPH-13507;Lo;0;L;;;;;N;;;;; +13508;EGYPTIAN HIEROGLYPH-13508;Lo;0;L;;;;;N;;;;; +13509;EGYPTIAN HIEROGLYPH-13509;Lo;0;L;;;;;N;;;;; +1350A;EGYPTIAN HIEROGLYPH-1350A;Lo;0;L;;;;;N;;;;; +1350B;EGYPTIAN HIEROGLYPH-1350B;Lo;0;L;;;;;N;;;;; +1350C;EGYPTIAN HIEROGLYPH-1350C;Lo;0;L;;;;;N;;;;; +1350D;EGYPTIAN HIEROGLYPH-1350D;Lo;0;L;;;;;N;;;;; +1350E;EGYPTIAN HIEROGLYPH-1350E;Lo;0;L;;;;;N;;;;; +1350F;EGYPTIAN HIEROGLYPH-1350F;Lo;0;L;;;;;N;;;;; +13510;EGYPTIAN HIEROGLYPH-13510;Lo;0;L;;;;;N;;;;; +13511;EGYPTIAN HIEROGLYPH-13511;Lo;0;L;;;;;N;;;;; +13512;EGYPTIAN HIEROGLYPH-13512;Lo;0;L;;;;;N;;;;; +13513;EGYPTIAN HIEROGLYPH-13513;Lo;0;L;;;;;N;;;;; +13514;EGYPTIAN HIEROGLYPH-13514;Lo;0;L;;;;;N;;;;; +13515;EGYPTIAN HIEROGLYPH-13515;Lo;0;L;;;;;N;;;;; +13516;EGYPTIAN HIEROGLYPH-13516;Lo;0;L;;;;;N;;;;; +13517;EGYPTIAN HIEROGLYPH-13517;Lo;0;L;;;;;N;;;;; +13518;EGYPTIAN HIEROGLYPH-13518;Lo;0;L;;;;;N;;;;; +13519;EGYPTIAN HIEROGLYPH-13519;Lo;0;L;;;;;N;;;;; +1351A;EGYPTIAN HIEROGLYPH-1351A;Lo;0;L;;;;;N;;;;; +1351B;EGYPTIAN HIEROGLYPH-1351B;Lo;0;L;;;;;N;;;;; +1351C;EGYPTIAN HIEROGLYPH-1351C;Lo;0;L;;;;;N;;;;; +1351D;EGYPTIAN HIEROGLYPH-1351D;Lo;0;L;;;;;N;;;;; +1351E;EGYPTIAN HIEROGLYPH-1351E;Lo;0;L;;;;;N;;;;; +1351F;EGYPTIAN HIEROGLYPH-1351F;Lo;0;L;;;;;N;;;;; +13520;EGYPTIAN HIEROGLYPH-13520;Lo;0;L;;;;;N;;;;; +13521;EGYPTIAN HIEROGLYPH-13521;Lo;0;L;;;;;N;;;;; +13522;EGYPTIAN HIEROGLYPH-13522;Lo;0;L;;;;;N;;;;; +13523;EGYPTIAN HIEROGLYPH-13523;Lo;0;L;;;;;N;;;;; +13524;EGYPTIAN HIEROGLYPH-13524;Lo;0;L;;;;;N;;;;; +13525;EGYPTIAN HIEROGLYPH-13525;Lo;0;L;;;;;N;;;;; +13526;EGYPTIAN HIEROGLYPH-13526;Lo;0;L;;;;;N;;;;; +13527;EGYPTIAN HIEROGLYPH-13527;Lo;0;L;;;;;N;;;;; +13528;EGYPTIAN HIEROGLYPH-13528;Lo;0;L;;;;;N;;;;; +13529;EGYPTIAN HIEROGLYPH-13529;Lo;0;L;;;;;N;;;;; +1352A;EGYPTIAN HIEROGLYPH-1352A;Lo;0;L;;;;;N;;;;; +1352B;EGYPTIAN HIEROGLYPH-1352B;Lo;0;L;;;;;N;;;;; +1352C;EGYPTIAN HIEROGLYPH-1352C;Lo;0;L;;;;;N;;;;; +1352D;EGYPTIAN HIEROGLYPH-1352D;Lo;0;L;;;;;N;;;;; +1352E;EGYPTIAN HIEROGLYPH-1352E;Lo;0;L;;;;;N;;;;; +1352F;EGYPTIAN HIEROGLYPH-1352F;Lo;0;L;;;;;N;;;;; +13530;EGYPTIAN HIEROGLYPH-13530;Lo;0;L;;;;;N;;;;; +13531;EGYPTIAN HIEROGLYPH-13531;Lo;0;L;;;;;N;;;;; +13532;EGYPTIAN HIEROGLYPH-13532;Lo;0;L;;;;;N;;;;; +13533;EGYPTIAN HIEROGLYPH-13533;Lo;0;L;;;;;N;;;;; +13534;EGYPTIAN HIEROGLYPH-13534;Lo;0;L;;;;;N;;;;; +13535;EGYPTIAN HIEROGLYPH-13535;Lo;0;L;;;;;N;;;;; +13536;EGYPTIAN HIEROGLYPH-13536;Lo;0;L;;;;;N;;;;; +13537;EGYPTIAN HIEROGLYPH-13537;Lo;0;L;;;;;N;;;;; +13538;EGYPTIAN HIEROGLYPH-13538;Lo;0;L;;;;;N;;;;; +13539;EGYPTIAN HIEROGLYPH-13539;Lo;0;L;;;;;N;;;;; +1353A;EGYPTIAN HIEROGLYPH-1353A;Lo;0;L;;;;;N;;;;; +1353B;EGYPTIAN HIEROGLYPH-1353B;Lo;0;L;;;;;N;;;;; +1353C;EGYPTIAN HIEROGLYPH-1353C;Lo;0;L;;;;;N;;;;; +1353D;EGYPTIAN HIEROGLYPH-1353D;Lo;0;L;;;;;N;;;;; +1353E;EGYPTIAN HIEROGLYPH-1353E;Lo;0;L;;;;;N;;;;; +1353F;EGYPTIAN HIEROGLYPH-1353F;Lo;0;L;;;;;N;;;;; +13540;EGYPTIAN HIEROGLYPH-13540;Lo;0;L;;;;;N;;;;; +13541;EGYPTIAN HIEROGLYPH-13541;Lo;0;L;;;;;N;;;;; +13542;EGYPTIAN HIEROGLYPH-13542;Lo;0;L;;;;;N;;;;; +13543;EGYPTIAN HIEROGLYPH-13543;Lo;0;L;;;;;N;;;;; +13544;EGYPTIAN HIEROGLYPH-13544;Lo;0;L;;;;;N;;;;; +13545;EGYPTIAN HIEROGLYPH-13545;Lo;0;L;;;;;N;;;;; +13546;EGYPTIAN HIEROGLYPH-13546;Lo;0;L;;;;;N;;;;; +13547;EGYPTIAN HIEROGLYPH-13547;Lo;0;L;;;;;N;;;;; +13548;EGYPTIAN HIEROGLYPH-13548;Lo;0;L;;;;;N;;;;; +13549;EGYPTIAN HIEROGLYPH-13549;Lo;0;L;;;;;N;;;;; +1354A;EGYPTIAN HIEROGLYPH-1354A;Lo;0;L;;;;;N;;;;; +1354B;EGYPTIAN HIEROGLYPH-1354B;Lo;0;L;;;;;N;;;;; +1354C;EGYPTIAN HIEROGLYPH-1354C;Lo;0;L;;;;;N;;;;; +1354D;EGYPTIAN HIEROGLYPH-1354D;Lo;0;L;;;;;N;;;;; +1354E;EGYPTIAN HIEROGLYPH-1354E;Lo;0;L;;;;;N;;;;; +1354F;EGYPTIAN HIEROGLYPH-1354F;Lo;0;L;;;;;N;;;;; +13550;EGYPTIAN HIEROGLYPH-13550;Lo;0;L;;;;;N;;;;; +13551;EGYPTIAN HIEROGLYPH-13551;Lo;0;L;;;;;N;;;;; +13552;EGYPTIAN HIEROGLYPH-13552;Lo;0;L;;;;;N;;;;; +13553;EGYPTIAN HIEROGLYPH-13553;Lo;0;L;;;;;N;;;;; +13554;EGYPTIAN HIEROGLYPH-13554;Lo;0;L;;;;;N;;;;; +13555;EGYPTIAN HIEROGLYPH-13555;Lo;0;L;;;;;N;;;;; +13556;EGYPTIAN HIEROGLYPH-13556;Lo;0;L;;;;;N;;;;; +13557;EGYPTIAN HIEROGLYPH-13557;Lo;0;L;;;;;N;;;;; +13558;EGYPTIAN HIEROGLYPH-13558;Lo;0;L;;;;;N;;;;; +13559;EGYPTIAN HIEROGLYPH-13559;Lo;0;L;;;;;N;;;;; +1355A;EGYPTIAN HIEROGLYPH-1355A;Lo;0;L;;;;;N;;;;; +1355B;EGYPTIAN HIEROGLYPH-1355B;Lo;0;L;;;;;N;;;;; +1355C;EGYPTIAN HIEROGLYPH-1355C;Lo;0;L;;;;;N;;;;; +1355D;EGYPTIAN HIEROGLYPH-1355D;Lo;0;L;;;;;N;;;;; +1355E;EGYPTIAN HIEROGLYPH-1355E;Lo;0;L;;;;;N;;;;; +1355F;EGYPTIAN HIEROGLYPH-1355F;Lo;0;L;;;;;N;;;;; +13560;EGYPTIAN HIEROGLYPH-13560;Lo;0;L;;;;;N;;;;; +13561;EGYPTIAN HIEROGLYPH-13561;Lo;0;L;;;;;N;;;;; +13562;EGYPTIAN HIEROGLYPH-13562;Lo;0;L;;;;;N;;;;; +13563;EGYPTIAN HIEROGLYPH-13563;Lo;0;L;;;;;N;;;;; +13564;EGYPTIAN HIEROGLYPH-13564;Lo;0;L;;;;;N;;;;; +13565;EGYPTIAN HIEROGLYPH-13565;Lo;0;L;;;;;N;;;;; +13566;EGYPTIAN HIEROGLYPH-13566;Lo;0;L;;;;;N;;;;; +13567;EGYPTIAN HIEROGLYPH-13567;Lo;0;L;;;;;N;;;;; +13568;EGYPTIAN HIEROGLYPH-13568;Lo;0;L;;;;;N;;;;; +13569;EGYPTIAN HIEROGLYPH-13569;Lo;0;L;;;;;N;;;;; +1356A;EGYPTIAN HIEROGLYPH-1356A;Lo;0;L;;;;;N;;;;; +1356B;EGYPTIAN HIEROGLYPH-1356B;Lo;0;L;;;;;N;;;;; +1356C;EGYPTIAN HIEROGLYPH-1356C;Lo;0;L;;;;;N;;;;; +1356D;EGYPTIAN HIEROGLYPH-1356D;Lo;0;L;;;;;N;;;;; +1356E;EGYPTIAN HIEROGLYPH-1356E;Lo;0;L;;;;;N;;;;; +1356F;EGYPTIAN HIEROGLYPH-1356F;Lo;0;L;;;;;N;;;;; +13570;EGYPTIAN HIEROGLYPH-13570;Lo;0;L;;;;;N;;;;; +13571;EGYPTIAN HIEROGLYPH-13571;Lo;0;L;;;;;N;;;;; +13572;EGYPTIAN HIEROGLYPH-13572;Lo;0;L;;;;;N;;;;; +13573;EGYPTIAN HIEROGLYPH-13573;Lo;0;L;;;;;N;;;;; +13574;EGYPTIAN HIEROGLYPH-13574;Lo;0;L;;;;;N;;;;; +13575;EGYPTIAN HIEROGLYPH-13575;Lo;0;L;;;;;N;;;;; +13576;EGYPTIAN HIEROGLYPH-13576;Lo;0;L;;;;;N;;;;; +13577;EGYPTIAN HIEROGLYPH-13577;Lo;0;L;;;;;N;;;;; +13578;EGYPTIAN HIEROGLYPH-13578;Lo;0;L;;;;;N;;;;; +13579;EGYPTIAN HIEROGLYPH-13579;Lo;0;L;;;;;N;;;;; +1357A;EGYPTIAN HIEROGLYPH-1357A;Lo;0;L;;;;;N;;;;; +1357B;EGYPTIAN HIEROGLYPH-1357B;Lo;0;L;;;;;N;;;;; +1357C;EGYPTIAN HIEROGLYPH-1357C;Lo;0;L;;;;;N;;;;; +1357D;EGYPTIAN HIEROGLYPH-1357D;Lo;0;L;;;;;N;;;;; +1357E;EGYPTIAN HIEROGLYPH-1357E;Lo;0;L;;;;;N;;;;; +1357F;EGYPTIAN HIEROGLYPH-1357F;Lo;0;L;;;;;N;;;;; +13580;EGYPTIAN HIEROGLYPH-13580;Lo;0;L;;;;;N;;;;; +13581;EGYPTIAN HIEROGLYPH-13581;Lo;0;L;;;;;N;;;;; +13582;EGYPTIAN HIEROGLYPH-13582;Lo;0;L;;;;;N;;;;; +13583;EGYPTIAN HIEROGLYPH-13583;Lo;0;L;;;;;N;;;;; +13584;EGYPTIAN HIEROGLYPH-13584;Lo;0;L;;;;;N;;;;; +13585;EGYPTIAN HIEROGLYPH-13585;Lo;0;L;;;;;N;;;;; +13586;EGYPTIAN HIEROGLYPH-13586;Lo;0;L;;;;;N;;;;; +13587;EGYPTIAN HIEROGLYPH-13587;Lo;0;L;;;;;N;;;;; +13588;EGYPTIAN HIEROGLYPH-13588;Lo;0;L;;;;;N;;;;; +13589;EGYPTIAN HIEROGLYPH-13589;Lo;0;L;;;;;N;;;;; +1358A;EGYPTIAN HIEROGLYPH-1358A;Lo;0;L;;;;;N;;;;; +1358B;EGYPTIAN HIEROGLYPH-1358B;Lo;0;L;;;;;N;;;;; +1358C;EGYPTIAN HIEROGLYPH-1358C;Lo;0;L;;;;;N;;;;; +1358D;EGYPTIAN HIEROGLYPH-1358D;Lo;0;L;;;;;N;;;;; +1358E;EGYPTIAN HIEROGLYPH-1358E;Lo;0;L;;;;;N;;;;; +1358F;EGYPTIAN HIEROGLYPH-1358F;Lo;0;L;;;;;N;;;;; +13590;EGYPTIAN HIEROGLYPH-13590;Lo;0;L;;;;;N;;;;; +13591;EGYPTIAN HIEROGLYPH-13591;Lo;0;L;;;;;N;;;;; +13592;EGYPTIAN HIEROGLYPH-13592;Lo;0;L;;;;;N;;;;; +13593;EGYPTIAN HIEROGLYPH-13593;Lo;0;L;;;;;N;;;;; +13594;EGYPTIAN HIEROGLYPH-13594;Lo;0;L;;;;;N;;;;; +13595;EGYPTIAN HIEROGLYPH-13595;Lo;0;L;;;;;N;;;;; +13596;EGYPTIAN HIEROGLYPH-13596;Lo;0;L;;;;;N;;;;; +13597;EGYPTIAN HIEROGLYPH-13597;Lo;0;L;;;;;N;;;;; +13598;EGYPTIAN HIEROGLYPH-13598;Lo;0;L;;;;;N;;;;; +13599;EGYPTIAN HIEROGLYPH-13599;Lo;0;L;;;;;N;;;;; +1359A;EGYPTIAN HIEROGLYPH-1359A;Lo;0;L;;;;;N;;;;; +1359B;EGYPTIAN HIEROGLYPH-1359B;Lo;0;L;;;;;N;;;;; +1359C;EGYPTIAN HIEROGLYPH-1359C;Lo;0;L;;;;;N;;;;; +1359D;EGYPTIAN HIEROGLYPH-1359D;Lo;0;L;;;;;N;;;;; +1359E;EGYPTIAN HIEROGLYPH-1359E;Lo;0;L;;;;;N;;;;; +1359F;EGYPTIAN HIEROGLYPH-1359F;Lo;0;L;;;;;N;;;;; +135A0;EGYPTIAN HIEROGLYPH-135A0;Lo;0;L;;;;;N;;;;; +135A1;EGYPTIAN HIEROGLYPH-135A1;Lo;0;L;;;;;N;;;;; +135A2;EGYPTIAN HIEROGLYPH-135A2;Lo;0;L;;;;;N;;;;; +135A3;EGYPTIAN HIEROGLYPH-135A3;Lo;0;L;;;;;N;;;;; +135A4;EGYPTIAN HIEROGLYPH-135A4;Lo;0;L;;;;;N;;;;; +135A5;EGYPTIAN HIEROGLYPH-135A5;Lo;0;L;;;;;N;;;;; +135A6;EGYPTIAN HIEROGLYPH-135A6;Lo;0;L;;;;;N;;;;; +135A7;EGYPTIAN HIEROGLYPH-135A7;Lo;0;L;;;;;N;;;;; +135A8;EGYPTIAN HIEROGLYPH-135A8;Lo;0;L;;;;;N;;;;; +135A9;EGYPTIAN HIEROGLYPH-135A9;Lo;0;L;;;;;N;;;;; +135AA;EGYPTIAN HIEROGLYPH-135AA;Lo;0;L;;;;;N;;;;; +135AB;EGYPTIAN HIEROGLYPH-135AB;Lo;0;L;;;;;N;;;;; +135AC;EGYPTIAN HIEROGLYPH-135AC;Lo;0;L;;;;;N;;;;; +135AD;EGYPTIAN HIEROGLYPH-135AD;Lo;0;L;;;;;N;;;;; +135AE;EGYPTIAN HIEROGLYPH-135AE;Lo;0;L;;;;;N;;;;; +135AF;EGYPTIAN HIEROGLYPH-135AF;Lo;0;L;;;;;N;;;;; +135B0;EGYPTIAN HIEROGLYPH-135B0;Lo;0;L;;;;;N;;;;; +135B1;EGYPTIAN HIEROGLYPH-135B1;Lo;0;L;;;;;N;;;;; +135B2;EGYPTIAN HIEROGLYPH-135B2;Lo;0;L;;;;;N;;;;; +135B3;EGYPTIAN HIEROGLYPH-135B3;Lo;0;L;;;;;N;;;;; +135B4;EGYPTIAN HIEROGLYPH-135B4;Lo;0;L;;;;;N;;;;; +135B5;EGYPTIAN HIEROGLYPH-135B5;Lo;0;L;;;;;N;;;;; +135B6;EGYPTIAN HIEROGLYPH-135B6;Lo;0;L;;;;;N;;;;; +135B7;EGYPTIAN HIEROGLYPH-135B7;Lo;0;L;;;;;N;;;;; +135B8;EGYPTIAN HIEROGLYPH-135B8;Lo;0;L;;;;;N;;;;; +135B9;EGYPTIAN HIEROGLYPH-135B9;Lo;0;L;;;;;N;;;;; +135BA;EGYPTIAN HIEROGLYPH-135BA;Lo;0;L;;;;;N;;;;; +135BB;EGYPTIAN HIEROGLYPH-135BB;Lo;0;L;;;;;N;;;;; +135BC;EGYPTIAN HIEROGLYPH-135BC;Lo;0;L;;;;;N;;;;; +135BD;EGYPTIAN HIEROGLYPH-135BD;Lo;0;L;;;;;N;;;;; +135BE;EGYPTIAN HIEROGLYPH-135BE;Lo;0;L;;;;;N;;;;; +135BF;EGYPTIAN HIEROGLYPH-135BF;Lo;0;L;;;;;N;;;;; +135C0;EGYPTIAN HIEROGLYPH-135C0;Lo;0;L;;;;;N;;;;; +135C1;EGYPTIAN HIEROGLYPH-135C1;Lo;0;L;;;;;N;;;;; +135C2;EGYPTIAN HIEROGLYPH-135C2;Lo;0;L;;;;;N;;;;; +135C3;EGYPTIAN HIEROGLYPH-135C3;Lo;0;L;;;;;N;;;;; +135C4;EGYPTIAN HIEROGLYPH-135C4;Lo;0;L;;;;;N;;;;; +135C5;EGYPTIAN HIEROGLYPH-135C5;Lo;0;L;;;;;N;;;;; +135C6;EGYPTIAN HIEROGLYPH-135C6;Lo;0;L;;;;;N;;;;; +135C7;EGYPTIAN HIEROGLYPH-135C7;Lo;0;L;;;;;N;;;;; +135C8;EGYPTIAN HIEROGLYPH-135C8;Lo;0;L;;;;;N;;;;; +135C9;EGYPTIAN HIEROGLYPH-135C9;Lo;0;L;;;;;N;;;;; +135CA;EGYPTIAN HIEROGLYPH-135CA;Lo;0;L;;;;;N;;;;; +135CB;EGYPTIAN HIEROGLYPH-135CB;Lo;0;L;;;;;N;;;;; +135CC;EGYPTIAN HIEROGLYPH-135CC;Lo;0;L;;;;;N;;;;; +135CD;EGYPTIAN HIEROGLYPH-135CD;Lo;0;L;;;;;N;;;;; +135CE;EGYPTIAN HIEROGLYPH-135CE;Lo;0;L;;;;;N;;;;; +135CF;EGYPTIAN HIEROGLYPH-135CF;Lo;0;L;;;;;N;;;;; +135D0;EGYPTIAN HIEROGLYPH-135D0;Lo;0;L;;;;;N;;;;; +135D1;EGYPTIAN HIEROGLYPH-135D1;Lo;0;L;;;;;N;;;;; +135D2;EGYPTIAN HIEROGLYPH-135D2;Lo;0;L;;;;;N;;;;; +135D3;EGYPTIAN HIEROGLYPH-135D3;Lo;0;L;;;;;N;;;;; +135D4;EGYPTIAN HIEROGLYPH-135D4;Lo;0;L;;;;;N;;;;; +135D5;EGYPTIAN HIEROGLYPH-135D5;Lo;0;L;;;;;N;;;;; +135D6;EGYPTIAN HIEROGLYPH-135D6;Lo;0;L;;;;;N;;;;; +135D7;EGYPTIAN HIEROGLYPH-135D7;Lo;0;L;;;;;N;;;;; +135D8;EGYPTIAN HIEROGLYPH-135D8;Lo;0;L;;;;;N;;;;; +135D9;EGYPTIAN HIEROGLYPH-135D9;Lo;0;L;;;;;N;;;;; +135DA;EGYPTIAN HIEROGLYPH-135DA;Lo;0;L;;;;;N;;;;; +135DB;EGYPTIAN HIEROGLYPH-135DB;Lo;0;L;;;;;N;;;;; +135DC;EGYPTIAN HIEROGLYPH-135DC;Lo;0;L;;;;;N;;;;; +135DD;EGYPTIAN HIEROGLYPH-135DD;Lo;0;L;;;;;N;;;;; +135DE;EGYPTIAN HIEROGLYPH-135DE;Lo;0;L;;;;;N;;;;; +135DF;EGYPTIAN HIEROGLYPH-135DF;Lo;0;L;;;;;N;;;;; +135E0;EGYPTIAN HIEROGLYPH-135E0;Lo;0;L;;;;;N;;;;; +135E1;EGYPTIAN HIEROGLYPH-135E1;Lo;0;L;;;;;N;;;;; +135E2;EGYPTIAN HIEROGLYPH-135E2;Lo;0;L;;;;;N;;;;; +135E3;EGYPTIAN HIEROGLYPH-135E3;Lo;0;L;;;;;N;;;;; +135E4;EGYPTIAN HIEROGLYPH-135E4;Lo;0;L;;;;;N;;;;; +135E5;EGYPTIAN HIEROGLYPH-135E5;Lo;0;L;;;;;N;;;;; +135E6;EGYPTIAN HIEROGLYPH-135E6;Lo;0;L;;;;;N;;;;; +135E7;EGYPTIAN HIEROGLYPH-135E7;Lo;0;L;;;;;N;;;;; +135E8;EGYPTIAN HIEROGLYPH-135E8;Lo;0;L;;;;;N;;;;; +135E9;EGYPTIAN HIEROGLYPH-135E9;Lo;0;L;;;;;N;;;;; +135EA;EGYPTIAN HIEROGLYPH-135EA;Lo;0;L;;;;;N;;;;; +135EB;EGYPTIAN HIEROGLYPH-135EB;Lo;0;L;;;;;N;;;;; +135EC;EGYPTIAN HIEROGLYPH-135EC;Lo;0;L;;;;;N;;;;; +135ED;EGYPTIAN HIEROGLYPH-135ED;Lo;0;L;;;;;N;;;;; +135EE;EGYPTIAN HIEROGLYPH-135EE;Lo;0;L;;;;;N;;;;; +135EF;EGYPTIAN HIEROGLYPH-135EF;Lo;0;L;;;;;N;;;;; +135F0;EGYPTIAN HIEROGLYPH-135F0;Lo;0;L;;;;;N;;;;; +135F1;EGYPTIAN HIEROGLYPH-135F1;Lo;0;L;;;;;N;;;;; +135F2;EGYPTIAN HIEROGLYPH-135F2;Lo;0;L;;;;;N;;;;; +135F3;EGYPTIAN HIEROGLYPH-135F3;Lo;0;L;;;;;N;;;;; +135F4;EGYPTIAN HIEROGLYPH-135F4;Lo;0;L;;;;;N;;;;; +135F5;EGYPTIAN HIEROGLYPH-135F5;Lo;0;L;;;;;N;;;;; +135F6;EGYPTIAN HIEROGLYPH-135F6;Lo;0;L;;;;;N;;;;; +135F7;EGYPTIAN HIEROGLYPH-135F7;Lo;0;L;;;;;N;;;;; +135F8;EGYPTIAN HIEROGLYPH-135F8;Lo;0;L;;;;;N;;;;; +135F9;EGYPTIAN HIEROGLYPH-135F9;Lo;0;L;;;;;N;;;;; +135FA;EGYPTIAN HIEROGLYPH-135FA;Lo;0;L;;;;;N;;;;; +135FB;EGYPTIAN HIEROGLYPH-135FB;Lo;0;L;;;;;N;;;;; +135FC;EGYPTIAN HIEROGLYPH-135FC;Lo;0;L;;;;;N;;;;; +135FD;EGYPTIAN HIEROGLYPH-135FD;Lo;0;L;;;;;N;;;;; +135FE;EGYPTIAN HIEROGLYPH-135FE;Lo;0;L;;;;;N;;;;; +135FF;EGYPTIAN HIEROGLYPH-135FF;Lo;0;L;;;;;N;;;;; +13600;EGYPTIAN HIEROGLYPH-13600;Lo;0;L;;;;;N;;;;; +13601;EGYPTIAN HIEROGLYPH-13601;Lo;0;L;;;;;N;;;;; +13602;EGYPTIAN HIEROGLYPH-13602;Lo;0;L;;;;;N;;;;; +13603;EGYPTIAN HIEROGLYPH-13603;Lo;0;L;;;;;N;;;;; +13604;EGYPTIAN HIEROGLYPH-13604;Lo;0;L;;;;;N;;;;; +13605;EGYPTIAN HIEROGLYPH-13605;Lo;0;L;;;;;N;;;;; +13606;EGYPTIAN HIEROGLYPH-13606;Lo;0;L;;;;;N;;;;; +13607;EGYPTIAN HIEROGLYPH-13607;Lo;0;L;;;;;N;;;;; +13608;EGYPTIAN HIEROGLYPH-13608;Lo;0;L;;;;;N;;;;; +13609;EGYPTIAN HIEROGLYPH-13609;Lo;0;L;;;;;N;;;;; +1360A;EGYPTIAN HIEROGLYPH-1360A;Lo;0;L;;;;;N;;;;; +1360B;EGYPTIAN HIEROGLYPH-1360B;Lo;0;L;;;;;N;;;;; +1360C;EGYPTIAN HIEROGLYPH-1360C;Lo;0;L;;;;;N;;;;; +1360D;EGYPTIAN HIEROGLYPH-1360D;Lo;0;L;;;;;N;;;;; +1360E;EGYPTIAN HIEROGLYPH-1360E;Lo;0;L;;;;;N;;;;; +1360F;EGYPTIAN HIEROGLYPH-1360F;Lo;0;L;;;;;N;;;;; +13610;EGYPTIAN HIEROGLYPH-13610;Lo;0;L;;;;;N;;;;; +13611;EGYPTIAN HIEROGLYPH-13611;Lo;0;L;;;;;N;;;;; +13612;EGYPTIAN HIEROGLYPH-13612;Lo;0;L;;;;;N;;;;; +13613;EGYPTIAN HIEROGLYPH-13613;Lo;0;L;;;;;N;;;;; +13614;EGYPTIAN HIEROGLYPH-13614;Lo;0;L;;;;;N;;;;; +13615;EGYPTIAN HIEROGLYPH-13615;Lo;0;L;;;;;N;;;;; +13616;EGYPTIAN HIEROGLYPH-13616;Lo;0;L;;;;;N;;;;; +13617;EGYPTIAN HIEROGLYPH-13617;Lo;0;L;;;;;N;;;;; +13618;EGYPTIAN HIEROGLYPH-13618;Lo;0;L;;;;;N;;;;; +13619;EGYPTIAN HIEROGLYPH-13619;Lo;0;L;;;;;N;;;;; +1361A;EGYPTIAN HIEROGLYPH-1361A;Lo;0;L;;;;;N;;;;; +1361B;EGYPTIAN HIEROGLYPH-1361B;Lo;0;L;;;;;N;;;;; +1361C;EGYPTIAN HIEROGLYPH-1361C;Lo;0;L;;;;;N;;;;; +1361D;EGYPTIAN HIEROGLYPH-1361D;Lo;0;L;;;;;N;;;;; +1361E;EGYPTIAN HIEROGLYPH-1361E;Lo;0;L;;;;;N;;;;; +1361F;EGYPTIAN HIEROGLYPH-1361F;Lo;0;L;;;;;N;;;;; +13620;EGYPTIAN HIEROGLYPH-13620;Lo;0;L;;;;;N;;;;; +13621;EGYPTIAN HIEROGLYPH-13621;Lo;0;L;;;;;N;;;;; +13622;EGYPTIAN HIEROGLYPH-13622;Lo;0;L;;;;;N;;;;; +13623;EGYPTIAN HIEROGLYPH-13623;Lo;0;L;;;;;N;;;;; +13624;EGYPTIAN HIEROGLYPH-13624;Lo;0;L;;;;;N;;;;; +13625;EGYPTIAN HIEROGLYPH-13625;Lo;0;L;;;;;N;;;;; +13626;EGYPTIAN HIEROGLYPH-13626;Lo;0;L;;;;;N;;;;; +13627;EGYPTIAN HIEROGLYPH-13627;Lo;0;L;;;;;N;;;;; +13628;EGYPTIAN HIEROGLYPH-13628;Lo;0;L;;;;;N;;;;; +13629;EGYPTIAN HIEROGLYPH-13629;Lo;0;L;;;;;N;;;;; +1362A;EGYPTIAN HIEROGLYPH-1362A;Lo;0;L;;;;;N;;;;; +1362B;EGYPTIAN HIEROGLYPH-1362B;Lo;0;L;;;;;N;;;;; +1362C;EGYPTIAN HIEROGLYPH-1362C;Lo;0;L;;;;;N;;;;; +1362D;EGYPTIAN HIEROGLYPH-1362D;Lo;0;L;;;;;N;;;;; +1362E;EGYPTIAN HIEROGLYPH-1362E;Lo;0;L;;;;;N;;;;; +1362F;EGYPTIAN HIEROGLYPH-1362F;Lo;0;L;;;;;N;;;;; +13630;EGYPTIAN HIEROGLYPH-13630;Lo;0;L;;;;;N;;;;; +13631;EGYPTIAN HIEROGLYPH-13631;Lo;0;L;;;;;N;;;;; +13632;EGYPTIAN HIEROGLYPH-13632;Lo;0;L;;;;;N;;;;; +13633;EGYPTIAN HIEROGLYPH-13633;Lo;0;L;;;;;N;;;;; +13634;EGYPTIAN HIEROGLYPH-13634;Lo;0;L;;;;;N;;;;; +13635;EGYPTIAN HIEROGLYPH-13635;Lo;0;L;;;;;N;;;;; +13636;EGYPTIAN HIEROGLYPH-13636;Lo;0;L;;;;;N;;;;; +13637;EGYPTIAN HIEROGLYPH-13637;Lo;0;L;;;;;N;;;;; +13638;EGYPTIAN HIEROGLYPH-13638;Lo;0;L;;;;;N;;;;; +13639;EGYPTIAN HIEROGLYPH-13639;Lo;0;L;;;;;N;;;;; +1363A;EGYPTIAN HIEROGLYPH-1363A;Lo;0;L;;;;;N;;;;; +1363B;EGYPTIAN HIEROGLYPH-1363B;Lo;0;L;;;;;N;;;;; +1363C;EGYPTIAN HIEROGLYPH-1363C;Lo;0;L;;;;;N;;;;; +1363D;EGYPTIAN HIEROGLYPH-1363D;Lo;0;L;;;;;N;;;;; +1363E;EGYPTIAN HIEROGLYPH-1363E;Lo;0;L;;;;;N;;;;; +1363F;EGYPTIAN HIEROGLYPH-1363F;Lo;0;L;;;;;N;;;;; +13640;EGYPTIAN HIEROGLYPH-13640;Lo;0;L;;;;;N;;;;; +13641;EGYPTIAN HIEROGLYPH-13641;Lo;0;L;;;;;N;;;;; +13642;EGYPTIAN HIEROGLYPH-13642;Lo;0;L;;;;;N;;;;; +13643;EGYPTIAN HIEROGLYPH-13643;Lo;0;L;;;;;N;;;;; +13644;EGYPTIAN HIEROGLYPH-13644;Lo;0;L;;;;;N;;;;; +13645;EGYPTIAN HIEROGLYPH-13645;Lo;0;L;;;;;N;;;;; +13646;EGYPTIAN HIEROGLYPH-13646;Lo;0;L;;;;;N;;;;; +13647;EGYPTIAN HIEROGLYPH-13647;Lo;0;L;;;;;N;;;;; +13648;EGYPTIAN HIEROGLYPH-13648;Lo;0;L;;;;;N;;;;; +13649;EGYPTIAN HIEROGLYPH-13649;Lo;0;L;;;;;N;;;;; +1364A;EGYPTIAN HIEROGLYPH-1364A;Lo;0;L;;;;;N;;;;; +1364B;EGYPTIAN HIEROGLYPH-1364B;Lo;0;L;;;;;N;;;;; +1364C;EGYPTIAN HIEROGLYPH-1364C;Lo;0;L;;;;;N;;;;; +1364D;EGYPTIAN HIEROGLYPH-1364D;Lo;0;L;;;;;N;;;;; +1364E;EGYPTIAN HIEROGLYPH-1364E;Lo;0;L;;;;;N;;;;; +1364F;EGYPTIAN HIEROGLYPH-1364F;Lo;0;L;;;;;N;;;;; +13650;EGYPTIAN HIEROGLYPH-13650;Lo;0;L;;;;;N;;;;; +13651;EGYPTIAN HIEROGLYPH-13651;Lo;0;L;;;;;N;;;;; +13652;EGYPTIAN HIEROGLYPH-13652;Lo;0;L;;;;;N;;;;; +13653;EGYPTIAN HIEROGLYPH-13653;Lo;0;L;;;;;N;;;;; +13654;EGYPTIAN HIEROGLYPH-13654;Lo;0;L;;;;;N;;;;; +13655;EGYPTIAN HIEROGLYPH-13655;Lo;0;L;;;;;N;;;;; +13656;EGYPTIAN HIEROGLYPH-13656;Lo;0;L;;;;;N;;;;; +13657;EGYPTIAN HIEROGLYPH-13657;Lo;0;L;;;;;N;;;;; +13658;EGYPTIAN HIEROGLYPH-13658;Lo;0;L;;;;;N;;;;; +13659;EGYPTIAN HIEROGLYPH-13659;Lo;0;L;;;;;N;;;;; +1365A;EGYPTIAN HIEROGLYPH-1365A;Lo;0;L;;;;;N;;;;; +1365B;EGYPTIAN HIEROGLYPH-1365B;Lo;0;L;;;;;N;;;;; +1365C;EGYPTIAN HIEROGLYPH-1365C;Lo;0;L;;;;;N;;;;; +1365D;EGYPTIAN HIEROGLYPH-1365D;Lo;0;L;;;;;N;;;;; +1365E;EGYPTIAN HIEROGLYPH-1365E;Lo;0;L;;;;;N;;;;; +1365F;EGYPTIAN HIEROGLYPH-1365F;Lo;0;L;;;;;N;;;;; +13660;EGYPTIAN HIEROGLYPH-13660;Lo;0;L;;;;;N;;;;; +13661;EGYPTIAN HIEROGLYPH-13661;Lo;0;L;;;;;N;;;;; +13662;EGYPTIAN HIEROGLYPH-13662;Lo;0;L;;;;;N;;;;; +13663;EGYPTIAN HIEROGLYPH-13663;Lo;0;L;;;;;N;;;;; +13664;EGYPTIAN HIEROGLYPH-13664;Lo;0;L;;;;;N;;;;; +13665;EGYPTIAN HIEROGLYPH-13665;Lo;0;L;;;;;N;;;;; +13666;EGYPTIAN HIEROGLYPH-13666;Lo;0;L;;;;;N;;;;; +13667;EGYPTIAN HIEROGLYPH-13667;Lo;0;L;;;;;N;;;;; +13668;EGYPTIAN HIEROGLYPH-13668;Lo;0;L;;;;;N;;;;; +13669;EGYPTIAN HIEROGLYPH-13669;Lo;0;L;;;;;N;;;;; +1366A;EGYPTIAN HIEROGLYPH-1366A;Lo;0;L;;;;;N;;;;; +1366B;EGYPTIAN HIEROGLYPH-1366B;Lo;0;L;;;;;N;;;;; +1366C;EGYPTIAN HIEROGLYPH-1366C;Lo;0;L;;;;;N;;;;; +1366D;EGYPTIAN HIEROGLYPH-1366D;Lo;0;L;;;;;N;;;;; +1366E;EGYPTIAN HIEROGLYPH-1366E;Lo;0;L;;;;;N;;;;; +1366F;EGYPTIAN HIEROGLYPH-1366F;Lo;0;L;;;;;N;;;;; +13670;EGYPTIAN HIEROGLYPH-13670;Lo;0;L;;;;;N;;;;; +13671;EGYPTIAN HIEROGLYPH-13671;Lo;0;L;;;;;N;;;;; +13672;EGYPTIAN HIEROGLYPH-13672;Lo;0;L;;;;;N;;;;; +13673;EGYPTIAN HIEROGLYPH-13673;Lo;0;L;;;;;N;;;;; +13674;EGYPTIAN HIEROGLYPH-13674;Lo;0;L;;;;;N;;;;; +13675;EGYPTIAN HIEROGLYPH-13675;Lo;0;L;;;;;N;;;;; +13676;EGYPTIAN HIEROGLYPH-13676;Lo;0;L;;;;;N;;;;; +13677;EGYPTIAN HIEROGLYPH-13677;Lo;0;L;;;;;N;;;;; +13678;EGYPTIAN HIEROGLYPH-13678;Lo;0;L;;;;;N;;;;; +13679;EGYPTIAN HIEROGLYPH-13679;Lo;0;L;;;;;N;;;;; +1367A;EGYPTIAN HIEROGLYPH-1367A;Lo;0;L;;;;;N;;;;; +1367B;EGYPTIAN HIEROGLYPH-1367B;Lo;0;L;;;;;N;;;;; +1367C;EGYPTIAN HIEROGLYPH-1367C;Lo;0;L;;;;;N;;;;; +1367D;EGYPTIAN HIEROGLYPH-1367D;Lo;0;L;;;;;N;;;;; +1367E;EGYPTIAN HIEROGLYPH-1367E;Lo;0;L;;;;;N;;;;; +1367F;EGYPTIAN HIEROGLYPH-1367F;Lo;0;L;;;;;N;;;;; +13680;EGYPTIAN HIEROGLYPH-13680;Lo;0;L;;;;;N;;;;; +13681;EGYPTIAN HIEROGLYPH-13681;Lo;0;L;;;;;N;;;;; +13682;EGYPTIAN HIEROGLYPH-13682;Lo;0;L;;;;;N;;;;; +13683;EGYPTIAN HIEROGLYPH-13683;Lo;0;L;;;;;N;;;;; +13684;EGYPTIAN HIEROGLYPH-13684;Lo;0;L;;;;;N;;;;; +13685;EGYPTIAN HIEROGLYPH-13685;Lo;0;L;;;;;N;;;;; +13686;EGYPTIAN HIEROGLYPH-13686;Lo;0;L;;;;;N;;;;; +13687;EGYPTIAN HIEROGLYPH-13687;Lo;0;L;;;;;N;;;;; +13688;EGYPTIAN HIEROGLYPH-13688;Lo;0;L;;;;;N;;;;; +13689;EGYPTIAN HIEROGLYPH-13689;Lo;0;L;;;;;N;;;;; +1368A;EGYPTIAN HIEROGLYPH-1368A;Lo;0;L;;;;;N;;;;; +1368B;EGYPTIAN HIEROGLYPH-1368B;Lo;0;L;;;;;N;;;;; +1368C;EGYPTIAN HIEROGLYPH-1368C;Lo;0;L;;;;;N;;;;; +1368D;EGYPTIAN HIEROGLYPH-1368D;Lo;0;L;;;;;N;;;;; +1368E;EGYPTIAN HIEROGLYPH-1368E;Lo;0;L;;;;;N;;;;; +1368F;EGYPTIAN HIEROGLYPH-1368F;Lo;0;L;;;;;N;;;;; +13690;EGYPTIAN HIEROGLYPH-13690;Lo;0;L;;;;;N;;;;; +13691;EGYPTIAN HIEROGLYPH-13691;Lo;0;L;;;;;N;;;;; +13692;EGYPTIAN HIEROGLYPH-13692;Lo;0;L;;;;;N;;;;; +13693;EGYPTIAN HIEROGLYPH-13693;Lo;0;L;;;;;N;;;;; +13694;EGYPTIAN HIEROGLYPH-13694;Lo;0;L;;;;;N;;;;; +13695;EGYPTIAN HIEROGLYPH-13695;Lo;0;L;;;;;N;;;;; +13696;EGYPTIAN HIEROGLYPH-13696;Lo;0;L;;;;;N;;;;; +13697;EGYPTIAN HIEROGLYPH-13697;Lo;0;L;;;;;N;;;;; +13698;EGYPTIAN HIEROGLYPH-13698;Lo;0;L;;;;;N;;;;; +13699;EGYPTIAN HIEROGLYPH-13699;Lo;0;L;;;;;N;;;;; +1369A;EGYPTIAN HIEROGLYPH-1369A;Lo;0;L;;;;;N;;;;; +1369B;EGYPTIAN HIEROGLYPH-1369B;Lo;0;L;;;;;N;;;;; +1369C;EGYPTIAN HIEROGLYPH-1369C;Lo;0;L;;;;;N;;;;; +1369D;EGYPTIAN HIEROGLYPH-1369D;Lo;0;L;;;;;N;;;;; +1369E;EGYPTIAN HIEROGLYPH-1369E;Lo;0;L;;;;;N;;;;; +1369F;EGYPTIAN HIEROGLYPH-1369F;Lo;0;L;;;;;N;;;;; +136A0;EGYPTIAN HIEROGLYPH-136A0;Lo;0;L;;;;;N;;;;; +136A1;EGYPTIAN HIEROGLYPH-136A1;Lo;0;L;;;;;N;;;;; +136A2;EGYPTIAN HIEROGLYPH-136A2;Lo;0;L;;;;;N;;;;; +136A3;EGYPTIAN HIEROGLYPH-136A3;Lo;0;L;;;;;N;;;;; +136A4;EGYPTIAN HIEROGLYPH-136A4;Lo;0;L;;;;;N;;;;; +136A5;EGYPTIAN HIEROGLYPH-136A5;Lo;0;L;;;;;N;;;;; +136A6;EGYPTIAN HIEROGLYPH-136A6;Lo;0;L;;;;;N;;;;; +136A7;EGYPTIAN HIEROGLYPH-136A7;Lo;0;L;;;;;N;;;;; +136A8;EGYPTIAN HIEROGLYPH-136A8;Lo;0;L;;;;;N;;;;; +136A9;EGYPTIAN HIEROGLYPH-136A9;Lo;0;L;;;;;N;;;;; +136AA;EGYPTIAN HIEROGLYPH-136AA;Lo;0;L;;;;;N;;;;; +136AB;EGYPTIAN HIEROGLYPH-136AB;Lo;0;L;;;;;N;;;;; +136AC;EGYPTIAN HIEROGLYPH-136AC;Lo;0;L;;;;;N;;;;; +136AD;EGYPTIAN HIEROGLYPH-136AD;Lo;0;L;;;;;N;;;;; +136AE;EGYPTIAN HIEROGLYPH-136AE;Lo;0;L;;;;;N;;;;; +136AF;EGYPTIAN HIEROGLYPH-136AF;Lo;0;L;;;;;N;;;;; +136B0;EGYPTIAN HIEROGLYPH-136B0;Lo;0;L;;;;;N;;;;; +136B1;EGYPTIAN HIEROGLYPH-136B1;Lo;0;L;;;;;N;;;;; +136B2;EGYPTIAN HIEROGLYPH-136B2;Lo;0;L;;;;;N;;;;; +136B3;EGYPTIAN HIEROGLYPH-136B3;Lo;0;L;;;;;N;;;;; +136B4;EGYPTIAN HIEROGLYPH-136B4;Lo;0;L;;;;;N;;;;; +136B5;EGYPTIAN HIEROGLYPH-136B5;Lo;0;L;;;;;N;;;;; +136B6;EGYPTIAN HIEROGLYPH-136B6;Lo;0;L;;;;;N;;;;; +136B7;EGYPTIAN HIEROGLYPH-136B7;Lo;0;L;;;;;N;;;;; +136B8;EGYPTIAN HIEROGLYPH-136B8;Lo;0;L;;;;;N;;;;; +136B9;EGYPTIAN HIEROGLYPH-136B9;Lo;0;L;;;;;N;;;;; +136BA;EGYPTIAN HIEROGLYPH-136BA;Lo;0;L;;;;;N;;;;; +136BB;EGYPTIAN HIEROGLYPH-136BB;Lo;0;L;;;;;N;;;;; +136BC;EGYPTIAN HIEROGLYPH-136BC;Lo;0;L;;;;;N;;;;; +136BD;EGYPTIAN HIEROGLYPH-136BD;Lo;0;L;;;;;N;;;;; +136BE;EGYPTIAN HIEROGLYPH-136BE;Lo;0;L;;;;;N;;;;; +136BF;EGYPTIAN HIEROGLYPH-136BF;Lo;0;L;;;;;N;;;;; +136C0;EGYPTIAN HIEROGLYPH-136C0;Lo;0;L;;;;;N;;;;; +136C1;EGYPTIAN HIEROGLYPH-136C1;Lo;0;L;;;;;N;;;;; +136C2;EGYPTIAN HIEROGLYPH-136C2;Lo;0;L;;;;;N;;;;; +136C3;EGYPTIAN HIEROGLYPH-136C3;Lo;0;L;;;;;N;;;;; +136C4;EGYPTIAN HIEROGLYPH-136C4;Lo;0;L;;;;;N;;;;; +136C5;EGYPTIAN HIEROGLYPH-136C5;Lo;0;L;;;;;N;;;;; +136C6;EGYPTIAN HIEROGLYPH-136C6;Lo;0;L;;;;;N;;;;; +136C7;EGYPTIAN HIEROGLYPH-136C7;Lo;0;L;;;;;N;;;;; +136C8;EGYPTIAN HIEROGLYPH-136C8;Lo;0;L;;;;;N;;;;; +136C9;EGYPTIAN HIEROGLYPH-136C9;Lo;0;L;;;;;N;;;;; +136CA;EGYPTIAN HIEROGLYPH-136CA;Lo;0;L;;;;;N;;;;; +136CB;EGYPTIAN HIEROGLYPH-136CB;Lo;0;L;;;;;N;;;;; +136CC;EGYPTIAN HIEROGLYPH-136CC;Lo;0;L;;;;;N;;;;; +136CD;EGYPTIAN HIEROGLYPH-136CD;Lo;0;L;;;;;N;;;;; +136CE;EGYPTIAN HIEROGLYPH-136CE;Lo;0;L;;;;;N;;;;; +136CF;EGYPTIAN HIEROGLYPH-136CF;Lo;0;L;;;;;N;;;;; +136D0;EGYPTIAN HIEROGLYPH-136D0;Lo;0;L;;;;;N;;;;; +136D1;EGYPTIAN HIEROGLYPH-136D1;Lo;0;L;;;;;N;;;;; +136D2;EGYPTIAN HIEROGLYPH-136D2;Lo;0;L;;;;;N;;;;; +136D3;EGYPTIAN HIEROGLYPH-136D3;Lo;0;L;;;;;N;;;;; +136D4;EGYPTIAN HIEROGLYPH-136D4;Lo;0;L;;;;;N;;;;; +136D5;EGYPTIAN HIEROGLYPH-136D5;Lo;0;L;;;;;N;;;;; +136D6;EGYPTIAN HIEROGLYPH-136D6;Lo;0;L;;;;;N;;;;; +136D7;EGYPTIAN HIEROGLYPH-136D7;Lo;0;L;;;;;N;;;;; +136D8;EGYPTIAN HIEROGLYPH-136D8;Lo;0;L;;;;;N;;;;; +136D9;EGYPTIAN HIEROGLYPH-136D9;Lo;0;L;;;;;N;;;;; +136DA;EGYPTIAN HIEROGLYPH-136DA;Lo;0;L;;;;;N;;;;; +136DB;EGYPTIAN HIEROGLYPH-136DB;Lo;0;L;;;;;N;;;;; +136DC;EGYPTIAN HIEROGLYPH-136DC;Lo;0;L;;;;;N;;;;; +136DD;EGYPTIAN HIEROGLYPH-136DD;Lo;0;L;;;;;N;;;;; +136DE;EGYPTIAN HIEROGLYPH-136DE;Lo;0;L;;;;;N;;;;; +136DF;EGYPTIAN HIEROGLYPH-136DF;Lo;0;L;;;;;N;;;;; +136E0;EGYPTIAN HIEROGLYPH-136E0;Lo;0;L;;;;;N;;;;; +136E1;EGYPTIAN HIEROGLYPH-136E1;Lo;0;L;;;;;N;;;;; +136E2;EGYPTIAN HIEROGLYPH-136E2;Lo;0;L;;;;;N;;;;; +136E3;EGYPTIAN HIEROGLYPH-136E3;Lo;0;L;;;;;N;;;;; +136E4;EGYPTIAN HIEROGLYPH-136E4;Lo;0;L;;;;;N;;;;; +136E5;EGYPTIAN HIEROGLYPH-136E5;Lo;0;L;;;;;N;;;;; +136E6;EGYPTIAN HIEROGLYPH-136E6;Lo;0;L;;;;;N;;;;; +136E7;EGYPTIAN HIEROGLYPH-136E7;Lo;0;L;;;;;N;;;;; +136E8;EGYPTIAN HIEROGLYPH-136E8;Lo;0;L;;;;;N;;;;; +136E9;EGYPTIAN HIEROGLYPH-136E9;Lo;0;L;;;;;N;;;;; +136EA;EGYPTIAN HIEROGLYPH-136EA;Lo;0;L;;;;;N;;;;; +136EB;EGYPTIAN HIEROGLYPH-136EB;Lo;0;L;;;;;N;;;;; +136EC;EGYPTIAN HIEROGLYPH-136EC;Lo;0;L;;;;;N;;;;; +136ED;EGYPTIAN HIEROGLYPH-136ED;Lo;0;L;;;;;N;;;;; +136EE;EGYPTIAN HIEROGLYPH-136EE;Lo;0;L;;;;;N;;;;; +136EF;EGYPTIAN HIEROGLYPH-136EF;Lo;0;L;;;;;N;;;;; +136F0;EGYPTIAN HIEROGLYPH-136F0;Lo;0;L;;;;;N;;;;; +136F1;EGYPTIAN HIEROGLYPH-136F1;Lo;0;L;;;;;N;;;;; +136F2;EGYPTIAN HIEROGLYPH-136F2;Lo;0;L;;;;;N;;;;; +136F3;EGYPTIAN HIEROGLYPH-136F3;Lo;0;L;;;;;N;;;;; +136F4;EGYPTIAN HIEROGLYPH-136F4;Lo;0;L;;;;;N;;;;; +136F5;EGYPTIAN HIEROGLYPH-136F5;Lo;0;L;;;;;N;;;;; +136F6;EGYPTIAN HIEROGLYPH-136F6;Lo;0;L;;;;;N;;;;; +136F7;EGYPTIAN HIEROGLYPH-136F7;Lo;0;L;;;;;N;;;;; +136F8;EGYPTIAN HIEROGLYPH-136F8;Lo;0;L;;;;;N;;;;; +136F9;EGYPTIAN HIEROGLYPH-136F9;Lo;0;L;;;;;N;;;;; +136FA;EGYPTIAN HIEROGLYPH-136FA;Lo;0;L;;;;;N;;;;; +136FB;EGYPTIAN HIEROGLYPH-136FB;Lo;0;L;;;;;N;;;;; +136FC;EGYPTIAN HIEROGLYPH-136FC;Lo;0;L;;;;;N;;;;; +136FD;EGYPTIAN HIEROGLYPH-136FD;Lo;0;L;;;;;N;;;;; +136FE;EGYPTIAN HIEROGLYPH-136FE;Lo;0;L;;;;;N;;;;; +136FF;EGYPTIAN HIEROGLYPH-136FF;Lo;0;L;;;;;N;;;;; +13700;EGYPTIAN HIEROGLYPH-13700;Lo;0;L;;;;;N;;;;; +13701;EGYPTIAN HIEROGLYPH-13701;Lo;0;L;;;;;N;;;;; +13702;EGYPTIAN HIEROGLYPH-13702;Lo;0;L;;;;;N;;;;; +13703;EGYPTIAN HIEROGLYPH-13703;Lo;0;L;;;;;N;;;;; +13704;EGYPTIAN HIEROGLYPH-13704;Lo;0;L;;;;;N;;;;; +13705;EGYPTIAN HIEROGLYPH-13705;Lo;0;L;;;;;N;;;;; +13706;EGYPTIAN HIEROGLYPH-13706;Lo;0;L;;;;;N;;;;; +13707;EGYPTIAN HIEROGLYPH-13707;Lo;0;L;;;;;N;;;;; +13708;EGYPTIAN HIEROGLYPH-13708;Lo;0;L;;;;;N;;;;; +13709;EGYPTIAN HIEROGLYPH-13709;Lo;0;L;;;;;N;;;;; +1370A;EGYPTIAN HIEROGLYPH-1370A;Lo;0;L;;;;;N;;;;; +1370B;EGYPTIAN HIEROGLYPH-1370B;Lo;0;L;;;;;N;;;;; +1370C;EGYPTIAN HIEROGLYPH-1370C;Lo;0;L;;;;;N;;;;; +1370D;EGYPTIAN HIEROGLYPH-1370D;Lo;0;L;;;;;N;;;;; +1370E;EGYPTIAN HIEROGLYPH-1370E;Lo;0;L;;;;;N;;;;; +1370F;EGYPTIAN HIEROGLYPH-1370F;Lo;0;L;;;;;N;;;;; +13710;EGYPTIAN HIEROGLYPH-13710;Lo;0;L;;;;;N;;;;; +13711;EGYPTIAN HIEROGLYPH-13711;Lo;0;L;;;;;N;;;;; +13712;EGYPTIAN HIEROGLYPH-13712;Lo;0;L;;;;;N;;;;; +13713;EGYPTIAN HIEROGLYPH-13713;Lo;0;L;;;;;N;;;;; +13714;EGYPTIAN HIEROGLYPH-13714;Lo;0;L;;;;;N;;;;; +13715;EGYPTIAN HIEROGLYPH-13715;Lo;0;L;;;;;N;;;;; +13716;EGYPTIAN HIEROGLYPH-13716;Lo;0;L;;;;;N;;;;; +13717;EGYPTIAN HIEROGLYPH-13717;Lo;0;L;;;;;N;;;;; +13718;EGYPTIAN HIEROGLYPH-13718;Lo;0;L;;;;;N;;;;; +13719;EGYPTIAN HIEROGLYPH-13719;Lo;0;L;;;;;N;;;;; +1371A;EGYPTIAN HIEROGLYPH-1371A;Lo;0;L;;;;;N;;;;; +1371B;EGYPTIAN HIEROGLYPH-1371B;Lo;0;L;;;;;N;;;;; +1371C;EGYPTIAN HIEROGLYPH-1371C;Lo;0;L;;;;;N;;;;; +1371D;EGYPTIAN HIEROGLYPH-1371D;Lo;0;L;;;;;N;;;;; +1371E;EGYPTIAN HIEROGLYPH-1371E;Lo;0;L;;;;;N;;;;; +1371F;EGYPTIAN HIEROGLYPH-1371F;Lo;0;L;;;;;N;;;;; +13720;EGYPTIAN HIEROGLYPH-13720;Lo;0;L;;;;;N;;;;; +13721;EGYPTIAN HIEROGLYPH-13721;Lo;0;L;;;;;N;;;;; +13722;EGYPTIAN HIEROGLYPH-13722;Lo;0;L;;;;;N;;;;; +13723;EGYPTIAN HIEROGLYPH-13723;Lo;0;L;;;;;N;;;;; +13724;EGYPTIAN HIEROGLYPH-13724;Lo;0;L;;;;;N;;;;; +13725;EGYPTIAN HIEROGLYPH-13725;Lo;0;L;;;;;N;;;;; +13726;EGYPTIAN HIEROGLYPH-13726;Lo;0;L;;;;;N;;;;; +13727;EGYPTIAN HIEROGLYPH-13727;Lo;0;L;;;;;N;;;;; +13728;EGYPTIAN HIEROGLYPH-13728;Lo;0;L;;;;;N;;;;; +13729;EGYPTIAN HIEROGLYPH-13729;Lo;0;L;;;;;N;;;;; +1372A;EGYPTIAN HIEROGLYPH-1372A;Lo;0;L;;;;;N;;;;; +1372B;EGYPTIAN HIEROGLYPH-1372B;Lo;0;L;;;;;N;;;;; +1372C;EGYPTIAN HIEROGLYPH-1372C;Lo;0;L;;;;;N;;;;; +1372D;EGYPTIAN HIEROGLYPH-1372D;Lo;0;L;;;;;N;;;;; +1372E;EGYPTIAN HIEROGLYPH-1372E;Lo;0;L;;;;;N;;;;; +1372F;EGYPTIAN HIEROGLYPH-1372F;Lo;0;L;;;;;N;;;;; +13730;EGYPTIAN HIEROGLYPH-13730;Lo;0;L;;;;;N;;;;; +13731;EGYPTIAN HIEROGLYPH-13731;Lo;0;L;;;;;N;;;;; +13732;EGYPTIAN HIEROGLYPH-13732;Lo;0;L;;;;;N;;;;; +13733;EGYPTIAN HIEROGLYPH-13733;Lo;0;L;;;;;N;;;;; +13734;EGYPTIAN HIEROGLYPH-13734;Lo;0;L;;;;;N;;;;; +13735;EGYPTIAN HIEROGLYPH-13735;Lo;0;L;;;;;N;;;;; +13736;EGYPTIAN HIEROGLYPH-13736;Lo;0;L;;;;;N;;;;; +13737;EGYPTIAN HIEROGLYPH-13737;Lo;0;L;;;;;N;;;;; +13738;EGYPTIAN HIEROGLYPH-13738;Lo;0;L;;;;;N;;;;; +13739;EGYPTIAN HIEROGLYPH-13739;Lo;0;L;;;;;N;;;;; +1373A;EGYPTIAN HIEROGLYPH-1373A;Lo;0;L;;;;;N;;;;; +1373B;EGYPTIAN HIEROGLYPH-1373B;Lo;0;L;;;;;N;;;;; +1373C;EGYPTIAN HIEROGLYPH-1373C;Lo;0;L;;;;;N;;;;; +1373D;EGYPTIAN HIEROGLYPH-1373D;Lo;0;L;;;;;N;;;;; +1373E;EGYPTIAN HIEROGLYPH-1373E;Lo;0;L;;;;;N;;;;; +1373F;EGYPTIAN HIEROGLYPH-1373F;Lo;0;L;;;;;N;;;;; +13740;EGYPTIAN HIEROGLYPH-13740;Lo;0;L;;;;;N;;;;; +13741;EGYPTIAN HIEROGLYPH-13741;Lo;0;L;;;;;N;;;;; +13742;EGYPTIAN HIEROGLYPH-13742;Lo;0;L;;;;;N;;;;; +13743;EGYPTIAN HIEROGLYPH-13743;Lo;0;L;;;;;N;;;;; +13744;EGYPTIAN HIEROGLYPH-13744;Lo;0;L;;;;;N;;;;; +13745;EGYPTIAN HIEROGLYPH-13745;Lo;0;L;;;;;N;;;;; +13746;EGYPTIAN HIEROGLYPH-13746;Lo;0;L;;;;;N;;;;; +13747;EGYPTIAN HIEROGLYPH-13747;Lo;0;L;;;;;N;;;;; +13748;EGYPTIAN HIEROGLYPH-13748;Lo;0;L;;;;;N;;;;; +13749;EGYPTIAN HIEROGLYPH-13749;Lo;0;L;;;;;N;;;;; +1374A;EGYPTIAN HIEROGLYPH-1374A;Lo;0;L;;;;;N;;;;; +1374B;EGYPTIAN HIEROGLYPH-1374B;Lo;0;L;;;;;N;;;;; +1374C;EGYPTIAN HIEROGLYPH-1374C;Lo;0;L;;;;;N;;;;; +1374D;EGYPTIAN HIEROGLYPH-1374D;Lo;0;L;;;;;N;;;;; +1374E;EGYPTIAN HIEROGLYPH-1374E;Lo;0;L;;;;;N;;;;; +1374F;EGYPTIAN HIEROGLYPH-1374F;Lo;0;L;;;;;N;;;;; +13750;EGYPTIAN HIEROGLYPH-13750;Lo;0;L;;;;;N;;;;; +13751;EGYPTIAN HIEROGLYPH-13751;Lo;0;L;;;;;N;;;;; +13752;EGYPTIAN HIEROGLYPH-13752;Lo;0;L;;;;;N;;;;; +13753;EGYPTIAN HIEROGLYPH-13753;Lo;0;L;;;;;N;;;;; +13754;EGYPTIAN HIEROGLYPH-13754;Lo;0;L;;;;;N;;;;; +13755;EGYPTIAN HIEROGLYPH-13755;Lo;0;L;;;;;N;;;;; +13756;EGYPTIAN HIEROGLYPH-13756;Lo;0;L;;;;;N;;;;; +13757;EGYPTIAN HIEROGLYPH-13757;Lo;0;L;;;;;N;;;;; +13758;EGYPTIAN HIEROGLYPH-13758;Lo;0;L;;;;;N;;;;; +13759;EGYPTIAN HIEROGLYPH-13759;Lo;0;L;;;;;N;;;;; +1375A;EGYPTIAN HIEROGLYPH-1375A;Lo;0;L;;;;;N;;;;; +1375B;EGYPTIAN HIEROGLYPH-1375B;Lo;0;L;;;;;N;;;;; +1375C;EGYPTIAN HIEROGLYPH-1375C;Lo;0;L;;;;;N;;;;; +1375D;EGYPTIAN HIEROGLYPH-1375D;Lo;0;L;;;;;N;;;;; +1375E;EGYPTIAN HIEROGLYPH-1375E;Lo;0;L;;;;;N;;;;; +1375F;EGYPTIAN HIEROGLYPH-1375F;Lo;0;L;;;;;N;;;;; +13760;EGYPTIAN HIEROGLYPH-13760;Lo;0;L;;;;;N;;;;; +13761;EGYPTIAN HIEROGLYPH-13761;Lo;0;L;;;;;N;;;;; +13762;EGYPTIAN HIEROGLYPH-13762;Lo;0;L;;;;;N;;;;; +13763;EGYPTIAN HIEROGLYPH-13763;Lo;0;L;;;;;N;;;;; +13764;EGYPTIAN HIEROGLYPH-13764;Lo;0;L;;;;;N;;;;; +13765;EGYPTIAN HIEROGLYPH-13765;Lo;0;L;;;;;N;;;;; +13766;EGYPTIAN HIEROGLYPH-13766;Lo;0;L;;;;;N;;;;; +13767;EGYPTIAN HIEROGLYPH-13767;Lo;0;L;;;;;N;;;;; +13768;EGYPTIAN HIEROGLYPH-13768;Lo;0;L;;;;;N;;;;; +13769;EGYPTIAN HIEROGLYPH-13769;Lo;0;L;;;;;N;;;;; +1376A;EGYPTIAN HIEROGLYPH-1376A;Lo;0;L;;;;;N;;;;; +1376B;EGYPTIAN HIEROGLYPH-1376B;Lo;0;L;;;;;N;;;;; +1376C;EGYPTIAN HIEROGLYPH-1376C;Lo;0;L;;;;;N;;;;; +1376D;EGYPTIAN HIEROGLYPH-1376D;Lo;0;L;;;;;N;;;;; +1376E;EGYPTIAN HIEROGLYPH-1376E;Lo;0;L;;;;;N;;;;; +1376F;EGYPTIAN HIEROGLYPH-1376F;Lo;0;L;;;;;N;;;;; +13770;EGYPTIAN HIEROGLYPH-13770;Lo;0;L;;;;;N;;;;; +13771;EGYPTIAN HIEROGLYPH-13771;Lo;0;L;;;;;N;;;;; +13772;EGYPTIAN HIEROGLYPH-13772;Lo;0;L;;;;;N;;;;; +13773;EGYPTIAN HIEROGLYPH-13773;Lo;0;L;;;;;N;;;;; +13774;EGYPTIAN HIEROGLYPH-13774;Lo;0;L;;;;;N;;;;; +13775;EGYPTIAN HIEROGLYPH-13775;Lo;0;L;;;;;N;;;;; +13776;EGYPTIAN HIEROGLYPH-13776;Lo;0;L;;;;;N;;;;; +13777;EGYPTIAN HIEROGLYPH-13777;Lo;0;L;;;;;N;;;;; +13778;EGYPTIAN HIEROGLYPH-13778;Lo;0;L;;;;;N;;;;; +13779;EGYPTIAN HIEROGLYPH-13779;Lo;0;L;;;;;N;;;;; +1377A;EGYPTIAN HIEROGLYPH-1377A;Lo;0;L;;;;;N;;;;; +1377B;EGYPTIAN HIEROGLYPH-1377B;Lo;0;L;;;;;N;;;;; +1377C;EGYPTIAN HIEROGLYPH-1377C;Lo;0;L;;;;;N;;;;; +1377D;EGYPTIAN HIEROGLYPH-1377D;Lo;0;L;;;;;N;;;;; +1377E;EGYPTIAN HIEROGLYPH-1377E;Lo;0;L;;;;;N;;;;; +1377F;EGYPTIAN HIEROGLYPH-1377F;Lo;0;L;;;;;N;;;;; +13780;EGYPTIAN HIEROGLYPH-13780;Lo;0;L;;;;;N;;;;; +13781;EGYPTIAN HIEROGLYPH-13781;Lo;0;L;;;;;N;;;;; +13782;EGYPTIAN HIEROGLYPH-13782;Lo;0;L;;;;;N;;;;; +13783;EGYPTIAN HIEROGLYPH-13783;Lo;0;L;;;;;N;;;;; +13784;EGYPTIAN HIEROGLYPH-13784;Lo;0;L;;;;;N;;;;; +13785;EGYPTIAN HIEROGLYPH-13785;Lo;0;L;;;;;N;;;;; +13786;EGYPTIAN HIEROGLYPH-13786;Lo;0;L;;;;;N;;;;; +13787;EGYPTIAN HIEROGLYPH-13787;Lo;0;L;;;;;N;;;;; +13788;EGYPTIAN HIEROGLYPH-13788;Lo;0;L;;;;;N;;;;; +13789;EGYPTIAN HIEROGLYPH-13789;Lo;0;L;;;;;N;;;;; +1378A;EGYPTIAN HIEROGLYPH-1378A;Lo;0;L;;;;;N;;;;; +1378B;EGYPTIAN HIEROGLYPH-1378B;Lo;0;L;;;;;N;;;;; +1378C;EGYPTIAN HIEROGLYPH-1378C;Lo;0;L;;;;;N;;;;; +1378D;EGYPTIAN HIEROGLYPH-1378D;Lo;0;L;;;;;N;;;;; +1378E;EGYPTIAN HIEROGLYPH-1378E;Lo;0;L;;;;;N;;;;; +1378F;EGYPTIAN HIEROGLYPH-1378F;Lo;0;L;;;;;N;;;;; +13790;EGYPTIAN HIEROGLYPH-13790;Lo;0;L;;;;;N;;;;; +13791;EGYPTIAN HIEROGLYPH-13791;Lo;0;L;;;;;N;;;;; +13792;EGYPTIAN HIEROGLYPH-13792;Lo;0;L;;;;;N;;;;; +13793;EGYPTIAN HIEROGLYPH-13793;Lo;0;L;;;;;N;;;;; +13794;EGYPTIAN HIEROGLYPH-13794;Lo;0;L;;;;;N;;;;; +13795;EGYPTIAN HIEROGLYPH-13795;Lo;0;L;;;;;N;;;;; +13796;EGYPTIAN HIEROGLYPH-13796;Lo;0;L;;;;;N;;;;; +13797;EGYPTIAN HIEROGLYPH-13797;Lo;0;L;;;;;N;;;;; +13798;EGYPTIAN HIEROGLYPH-13798;Lo;0;L;;;;;N;;;;; +13799;EGYPTIAN HIEROGLYPH-13799;Lo;0;L;;;;;N;;;;; +1379A;EGYPTIAN HIEROGLYPH-1379A;Lo;0;L;;;;;N;;;;; +1379B;EGYPTIAN HIEROGLYPH-1379B;Lo;0;L;;;;;N;;;;; +1379C;EGYPTIAN HIEROGLYPH-1379C;Lo;0;L;;;;;N;;;;; +1379D;EGYPTIAN HIEROGLYPH-1379D;Lo;0;L;;;;;N;;;;; +1379E;EGYPTIAN HIEROGLYPH-1379E;Lo;0;L;;;;;N;;;;; +1379F;EGYPTIAN HIEROGLYPH-1379F;Lo;0;L;;;;;N;;;;; +137A0;EGYPTIAN HIEROGLYPH-137A0;Lo;0;L;;;;;N;;;;; +137A1;EGYPTIAN HIEROGLYPH-137A1;Lo;0;L;;;;;N;;;;; +137A2;EGYPTIAN HIEROGLYPH-137A2;Lo;0;L;;;;;N;;;;; +137A3;EGYPTIAN HIEROGLYPH-137A3;Lo;0;L;;;;;N;;;;; +137A4;EGYPTIAN HIEROGLYPH-137A4;Lo;0;L;;;;;N;;;;; +137A5;EGYPTIAN HIEROGLYPH-137A5;Lo;0;L;;;;;N;;;;; +137A6;EGYPTIAN HIEROGLYPH-137A6;Lo;0;L;;;;;N;;;;; +137A7;EGYPTIAN HIEROGLYPH-137A7;Lo;0;L;;;;;N;;;;; +137A8;EGYPTIAN HIEROGLYPH-137A8;Lo;0;L;;;;;N;;;;; +137A9;EGYPTIAN HIEROGLYPH-137A9;Lo;0;L;;;;;N;;;;; +137AA;EGYPTIAN HIEROGLYPH-137AA;Lo;0;L;;;;;N;;;;; +137AB;EGYPTIAN HIEROGLYPH-137AB;Lo;0;L;;;;;N;;;;; +137AC;EGYPTIAN HIEROGLYPH-137AC;Lo;0;L;;;;;N;;;;; +137AD;EGYPTIAN HIEROGLYPH-137AD;Lo;0;L;;;;;N;;;;; +137AE;EGYPTIAN HIEROGLYPH-137AE;Lo;0;L;;;;;N;;;;; +137AF;EGYPTIAN HIEROGLYPH-137AF;Lo;0;L;;;;;N;;;;; +137B0;EGYPTIAN HIEROGLYPH-137B0;Lo;0;L;;;;;N;;;;; +137B1;EGYPTIAN HIEROGLYPH-137B1;Lo;0;L;;;;;N;;;;; +137B2;EGYPTIAN HIEROGLYPH-137B2;Lo;0;L;;;;;N;;;;; +137B3;EGYPTIAN HIEROGLYPH-137B3;Lo;0;L;;;;;N;;;;; +137B4;EGYPTIAN HIEROGLYPH-137B4;Lo;0;L;;;;;N;;;;; +137B5;EGYPTIAN HIEROGLYPH-137B5;Lo;0;L;;;;;N;;;;; +137B6;EGYPTIAN HIEROGLYPH-137B6;Lo;0;L;;;;;N;;;;; +137B7;EGYPTIAN HIEROGLYPH-137B7;Lo;0;L;;;;;N;;;;; +137B8;EGYPTIAN HIEROGLYPH-137B8;Lo;0;L;;;;;N;;;;; +137B9;EGYPTIAN HIEROGLYPH-137B9;Lo;0;L;;;;;N;;;;; +137BA;EGYPTIAN HIEROGLYPH-137BA;Lo;0;L;;;;;N;;;;; +137BB;EGYPTIAN HIEROGLYPH-137BB;Lo;0;L;;;;;N;;;;; +137BC;EGYPTIAN HIEROGLYPH-137BC;Lo;0;L;;;;;N;;;;; +137BD;EGYPTIAN HIEROGLYPH-137BD;Lo;0;L;;;;;N;;;;; +137BE;EGYPTIAN HIEROGLYPH-137BE;Lo;0;L;;;;;N;;;;; +137BF;EGYPTIAN HIEROGLYPH-137BF;Lo;0;L;;;;;N;;;;; +137C0;EGYPTIAN HIEROGLYPH-137C0;Lo;0;L;;;;;N;;;;; +137C1;EGYPTIAN HIEROGLYPH-137C1;Lo;0;L;;;;;N;;;;; +137C2;EGYPTIAN HIEROGLYPH-137C2;Lo;0;L;;;;;N;;;;; +137C3;EGYPTIAN HIEROGLYPH-137C3;Lo;0;L;;;;;N;;;;; +137C4;EGYPTIAN HIEROGLYPH-137C4;Lo;0;L;;;;;N;;;;; +137C5;EGYPTIAN HIEROGLYPH-137C5;Lo;0;L;;;;;N;;;;; +137C6;EGYPTIAN HIEROGLYPH-137C6;Lo;0;L;;;;;N;;;;; +137C7;EGYPTIAN HIEROGLYPH-137C7;Lo;0;L;;;;;N;;;;; +137C8;EGYPTIAN HIEROGLYPH-137C8;Lo;0;L;;;;;N;;;;; +137C9;EGYPTIAN HIEROGLYPH-137C9;Lo;0;L;;;;;N;;;;; +137CA;EGYPTIAN HIEROGLYPH-137CA;Lo;0;L;;;;;N;;;;; +137CB;EGYPTIAN HIEROGLYPH-137CB;Lo;0;L;;;;;N;;;;; +137CC;EGYPTIAN HIEROGLYPH-137CC;Lo;0;L;;;;;N;;;;; +137CD;EGYPTIAN HIEROGLYPH-137CD;Lo;0;L;;;;;N;;;;; +137CE;EGYPTIAN HIEROGLYPH-137CE;Lo;0;L;;;;;N;;;;; +137CF;EGYPTIAN HIEROGLYPH-137CF;Lo;0;L;;;;;N;;;;; +137D0;EGYPTIAN HIEROGLYPH-137D0;Lo;0;L;;;;;N;;;;; +137D1;EGYPTIAN HIEROGLYPH-137D1;Lo;0;L;;;;;N;;;;; +137D2;EGYPTIAN HIEROGLYPH-137D2;Lo;0;L;;;;;N;;;;; +137D3;EGYPTIAN HIEROGLYPH-137D3;Lo;0;L;;;;;N;;;;; +137D4;EGYPTIAN HIEROGLYPH-137D4;Lo;0;L;;;;;N;;;;; +137D5;EGYPTIAN HIEROGLYPH-137D5;Lo;0;L;;;;;N;;;;; +137D6;EGYPTIAN HIEROGLYPH-137D6;Lo;0;L;;;;;N;;;;; +137D7;EGYPTIAN HIEROGLYPH-137D7;Lo;0;L;;;;;N;;;;; +137D8;EGYPTIAN HIEROGLYPH-137D8;Lo;0;L;;;;;N;;;;; +137D9;EGYPTIAN HIEROGLYPH-137D9;Lo;0;L;;;;;N;;;;; +137DA;EGYPTIAN HIEROGLYPH-137DA;Lo;0;L;;;;;N;;;;; +137DB;EGYPTIAN HIEROGLYPH-137DB;Lo;0;L;;;;;N;;;;; +137DC;EGYPTIAN HIEROGLYPH-137DC;Lo;0;L;;;;;N;;;;; +137DD;EGYPTIAN HIEROGLYPH-137DD;Lo;0;L;;;;;N;;;;; +137DE;EGYPTIAN HIEROGLYPH-137DE;Lo;0;L;;;;;N;;;;; +137DF;EGYPTIAN HIEROGLYPH-137DF;Lo;0;L;;;;;N;;;;; +137E0;EGYPTIAN HIEROGLYPH-137E0;Lo;0;L;;;;;N;;;;; +137E1;EGYPTIAN HIEROGLYPH-137E1;Lo;0;L;;;;;N;;;;; +137E2;EGYPTIAN HIEROGLYPH-137E2;Lo;0;L;;;;;N;;;;; +137E3;EGYPTIAN HIEROGLYPH-137E3;Lo;0;L;;;;;N;;;;; +137E4;EGYPTIAN HIEROGLYPH-137E4;Lo;0;L;;;;;N;;;;; +137E5;EGYPTIAN HIEROGLYPH-137E5;Lo;0;L;;;;;N;;;;; +137E6;EGYPTIAN HIEROGLYPH-137E6;Lo;0;L;;;;;N;;;;; +137E7;EGYPTIAN HIEROGLYPH-137E7;Lo;0;L;;;;;N;;;;; +137E8;EGYPTIAN HIEROGLYPH-137E8;Lo;0;L;;;;;N;;;;; +137E9;EGYPTIAN HIEROGLYPH-137E9;Lo;0;L;;;;;N;;;;; +137EA;EGYPTIAN HIEROGLYPH-137EA;Lo;0;L;;;;;N;;;;; +137EB;EGYPTIAN HIEROGLYPH-137EB;Lo;0;L;;;;;N;;;;; +137EC;EGYPTIAN HIEROGLYPH-137EC;Lo;0;L;;;;;N;;;;; +137ED;EGYPTIAN HIEROGLYPH-137ED;Lo;0;L;;;;;N;;;;; +137EE;EGYPTIAN HIEROGLYPH-137EE;Lo;0;L;;;;;N;;;;; +137EF;EGYPTIAN HIEROGLYPH-137EF;Lo;0;L;;;;;N;;;;; +137F0;EGYPTIAN HIEROGLYPH-137F0;Lo;0;L;;;;;N;;;;; +137F1;EGYPTIAN HIEROGLYPH-137F1;Lo;0;L;;;;;N;;;;; +137F2;EGYPTIAN HIEROGLYPH-137F2;Lo;0;L;;;;;N;;;;; +137F3;EGYPTIAN HIEROGLYPH-137F3;Lo;0;L;;;;;N;;;;; +137F4;EGYPTIAN HIEROGLYPH-137F4;Lo;0;L;;;;;N;;;;; +137F5;EGYPTIAN HIEROGLYPH-137F5;Lo;0;L;;;;;N;;;;; +137F6;EGYPTIAN HIEROGLYPH-137F6;Lo;0;L;;;;;N;;;;; +137F7;EGYPTIAN HIEROGLYPH-137F7;Lo;0;L;;;;;N;;;;; +137F8;EGYPTIAN HIEROGLYPH-137F8;Lo;0;L;;;;;N;;;;; +137F9;EGYPTIAN HIEROGLYPH-137F9;Lo;0;L;;;;;N;;;;; +137FA;EGYPTIAN HIEROGLYPH-137FA;Lo;0;L;;;;;N;;;;; +137FB;EGYPTIAN HIEROGLYPH-137FB;Lo;0;L;;;;;N;;;;; +137FC;EGYPTIAN HIEROGLYPH-137FC;Lo;0;L;;;;;N;;;;; +137FD;EGYPTIAN HIEROGLYPH-137FD;Lo;0;L;;;;;N;;;;; +137FE;EGYPTIAN HIEROGLYPH-137FE;Lo;0;L;;;;;N;;;;; +137FF;EGYPTIAN HIEROGLYPH-137FF;Lo;0;L;;;;;N;;;;; +13800;EGYPTIAN HIEROGLYPH-13800;Lo;0;L;;;;;N;;;;; +13801;EGYPTIAN HIEROGLYPH-13801;Lo;0;L;;;;;N;;;;; +13802;EGYPTIAN HIEROGLYPH-13802;Lo;0;L;;;;;N;;;;; +13803;EGYPTIAN HIEROGLYPH-13803;Lo;0;L;;;;;N;;;;; +13804;EGYPTIAN HIEROGLYPH-13804;Lo;0;L;;;;;N;;;;; +13805;EGYPTIAN HIEROGLYPH-13805;Lo;0;L;;;;;N;;;;; +13806;EGYPTIAN HIEROGLYPH-13806;Lo;0;L;;;;;N;;;;; +13807;EGYPTIAN HIEROGLYPH-13807;Lo;0;L;;;;;N;;;;; +13808;EGYPTIAN HIEROGLYPH-13808;Lo;0;L;;;;;N;;;;; +13809;EGYPTIAN HIEROGLYPH-13809;Lo;0;L;;;;;N;;;;; +1380A;EGYPTIAN HIEROGLYPH-1380A;Lo;0;L;;;;;N;;;;; +1380B;EGYPTIAN HIEROGLYPH-1380B;Lo;0;L;;;;;N;;;;; +1380C;EGYPTIAN HIEROGLYPH-1380C;Lo;0;L;;;;;N;;;;; +1380D;EGYPTIAN HIEROGLYPH-1380D;Lo;0;L;;;;;N;;;;; +1380E;EGYPTIAN HIEROGLYPH-1380E;Lo;0;L;;;;;N;;;;; +1380F;EGYPTIAN HIEROGLYPH-1380F;Lo;0;L;;;;;N;;;;; +13810;EGYPTIAN HIEROGLYPH-13810;Lo;0;L;;;;;N;;;;; +13811;EGYPTIAN HIEROGLYPH-13811;Lo;0;L;;;;;N;;;;; +13812;EGYPTIAN HIEROGLYPH-13812;Lo;0;L;;;;;N;;;;; +13813;EGYPTIAN HIEROGLYPH-13813;Lo;0;L;;;;;N;;;;; +13814;EGYPTIAN HIEROGLYPH-13814;Lo;0;L;;;;;N;;;;; +13815;EGYPTIAN HIEROGLYPH-13815;Lo;0;L;;;;;N;;;;; +13816;EGYPTIAN HIEROGLYPH-13816;Lo;0;L;;;;;N;;;;; +13817;EGYPTIAN HIEROGLYPH-13817;Lo;0;L;;;;;N;;;;; +13818;EGYPTIAN HIEROGLYPH-13818;Lo;0;L;;;;;N;;;;; +13819;EGYPTIAN HIEROGLYPH-13819;Lo;0;L;;;;;N;;;;; +1381A;EGYPTIAN HIEROGLYPH-1381A;Lo;0;L;;;;;N;;;;; +1381B;EGYPTIAN HIEROGLYPH-1381B;Lo;0;L;;;;;N;;;;; +1381C;EGYPTIAN HIEROGLYPH-1381C;Lo;0;L;;;;;N;;;;; +1381D;EGYPTIAN HIEROGLYPH-1381D;Lo;0;L;;;;;N;;;;; +1381E;EGYPTIAN HIEROGLYPH-1381E;Lo;0;L;;;;;N;;;;; +1381F;EGYPTIAN HIEROGLYPH-1381F;Lo;0;L;;;;;N;;;;; +13820;EGYPTIAN HIEROGLYPH-13820;Lo;0;L;;;;;N;;;;; +13821;EGYPTIAN HIEROGLYPH-13821;Lo;0;L;;;;;N;;;;; +13822;EGYPTIAN HIEROGLYPH-13822;Lo;0;L;;;;;N;;;;; +13823;EGYPTIAN HIEROGLYPH-13823;Lo;0;L;;;;;N;;;;; +13824;EGYPTIAN HIEROGLYPH-13824;Lo;0;L;;;;;N;;;;; +13825;EGYPTIAN HIEROGLYPH-13825;Lo;0;L;;;;;N;;;;; +13826;EGYPTIAN HIEROGLYPH-13826;Lo;0;L;;;;;N;;;;; +13827;EGYPTIAN HIEROGLYPH-13827;Lo;0;L;;;;;N;;;;; +13828;EGYPTIAN HIEROGLYPH-13828;Lo;0;L;;;;;N;;;;; +13829;EGYPTIAN HIEROGLYPH-13829;Lo;0;L;;;;;N;;;;; +1382A;EGYPTIAN HIEROGLYPH-1382A;Lo;0;L;;;;;N;;;;; +1382B;EGYPTIAN HIEROGLYPH-1382B;Lo;0;L;;;;;N;;;;; +1382C;EGYPTIAN HIEROGLYPH-1382C;Lo;0;L;;;;;N;;;;; +1382D;EGYPTIAN HIEROGLYPH-1382D;Lo;0;L;;;;;N;;;;; +1382E;EGYPTIAN HIEROGLYPH-1382E;Lo;0;L;;;;;N;;;;; +1382F;EGYPTIAN HIEROGLYPH-1382F;Lo;0;L;;;;;N;;;;; +13830;EGYPTIAN HIEROGLYPH-13830;Lo;0;L;;;;;N;;;;; +13831;EGYPTIAN HIEROGLYPH-13831;Lo;0;L;;;;;N;;;;; +13832;EGYPTIAN HIEROGLYPH-13832;Lo;0;L;;;;;N;;;;; +13833;EGYPTIAN HIEROGLYPH-13833;Lo;0;L;;;;;N;;;;; +13834;EGYPTIAN HIEROGLYPH-13834;Lo;0;L;;;;;N;;;;; +13835;EGYPTIAN HIEROGLYPH-13835;Lo;0;L;;;;;N;;;;; +13836;EGYPTIAN HIEROGLYPH-13836;Lo;0;L;;;;;N;;;;; +13837;EGYPTIAN HIEROGLYPH-13837;Lo;0;L;;;;;N;;;;; +13838;EGYPTIAN HIEROGLYPH-13838;Lo;0;L;;;;;N;;;;; +13839;EGYPTIAN HIEROGLYPH-13839;Lo;0;L;;;;;N;;;;; +1383A;EGYPTIAN HIEROGLYPH-1383A;Lo;0;L;;;;;N;;;;; +1383B;EGYPTIAN HIEROGLYPH-1383B;Lo;0;L;;;;;N;;;;; +1383C;EGYPTIAN HIEROGLYPH-1383C;Lo;0;L;;;;;N;;;;; +1383D;EGYPTIAN HIEROGLYPH-1383D;Lo;0;L;;;;;N;;;;; +1383E;EGYPTIAN HIEROGLYPH-1383E;Lo;0;L;;;;;N;;;;; +1383F;EGYPTIAN HIEROGLYPH-1383F;Lo;0;L;;;;;N;;;;; +13840;EGYPTIAN HIEROGLYPH-13840;Lo;0;L;;;;;N;;;;; +13841;EGYPTIAN HIEROGLYPH-13841;Lo;0;L;;;;;N;;;;; +13842;EGYPTIAN HIEROGLYPH-13842;Lo;0;L;;;;;N;;;;; +13843;EGYPTIAN HIEROGLYPH-13843;Lo;0;L;;;;;N;;;;; +13844;EGYPTIAN HIEROGLYPH-13844;Lo;0;L;;;;;N;;;;; +13845;EGYPTIAN HIEROGLYPH-13845;Lo;0;L;;;;;N;;;;; +13846;EGYPTIAN HIEROGLYPH-13846;Lo;0;L;;;;;N;;;;; +13847;EGYPTIAN HIEROGLYPH-13847;Lo;0;L;;;;;N;;;;; +13848;EGYPTIAN HIEROGLYPH-13848;Lo;0;L;;;;;N;;;;; +13849;EGYPTIAN HIEROGLYPH-13849;Lo;0;L;;;;;N;;;;; +1384A;EGYPTIAN HIEROGLYPH-1384A;Lo;0;L;;;;;N;;;;; +1384B;EGYPTIAN HIEROGLYPH-1384B;Lo;0;L;;;;;N;;;;; +1384C;EGYPTIAN HIEROGLYPH-1384C;Lo;0;L;;;;;N;;;;; +1384D;EGYPTIAN HIEROGLYPH-1384D;Lo;0;L;;;;;N;;;;; +1384E;EGYPTIAN HIEROGLYPH-1384E;Lo;0;L;;;;;N;;;;; +1384F;EGYPTIAN HIEROGLYPH-1384F;Lo;0;L;;;;;N;;;;; +13850;EGYPTIAN HIEROGLYPH-13850;Lo;0;L;;;;;N;;;;; +13851;EGYPTIAN HIEROGLYPH-13851;Lo;0;L;;;;;N;;;;; +13852;EGYPTIAN HIEROGLYPH-13852;Lo;0;L;;;;;N;;;;; +13853;EGYPTIAN HIEROGLYPH-13853;Lo;0;L;;;;;N;;;;; +13854;EGYPTIAN HIEROGLYPH-13854;Lo;0;L;;;;;N;;;;; +13855;EGYPTIAN HIEROGLYPH-13855;Lo;0;L;;;;;N;;;;; +13856;EGYPTIAN HIEROGLYPH-13856;Lo;0;L;;;;;N;;;;; +13857;EGYPTIAN HIEROGLYPH-13857;Lo;0;L;;;;;N;;;;; +13858;EGYPTIAN HIEROGLYPH-13858;Lo;0;L;;;;;N;;;;; +13859;EGYPTIAN HIEROGLYPH-13859;Lo;0;L;;;;;N;;;;; +1385A;EGYPTIAN HIEROGLYPH-1385A;Lo;0;L;;;;;N;;;;; +1385B;EGYPTIAN HIEROGLYPH-1385B;Lo;0;L;;;;;N;;;;; +1385C;EGYPTIAN HIEROGLYPH-1385C;Lo;0;L;;;;;N;;;;; +1385D;EGYPTIAN HIEROGLYPH-1385D;Lo;0;L;;;;;N;;;;; +1385E;EGYPTIAN HIEROGLYPH-1385E;Lo;0;L;;;;;N;;;;; +1385F;EGYPTIAN HIEROGLYPH-1385F;Lo;0;L;;;;;N;;;;; +13860;EGYPTIAN HIEROGLYPH-13860;Lo;0;L;;;;;N;;;;; +13861;EGYPTIAN HIEROGLYPH-13861;Lo;0;L;;;;;N;;;;; +13862;EGYPTIAN HIEROGLYPH-13862;Lo;0;L;;;;;N;;;;; +13863;EGYPTIAN HIEROGLYPH-13863;Lo;0;L;;;;;N;;;;; +13864;EGYPTIAN HIEROGLYPH-13864;Lo;0;L;;;;;N;;;;; +13865;EGYPTIAN HIEROGLYPH-13865;Lo;0;L;;;;;N;;;;; +13866;EGYPTIAN HIEROGLYPH-13866;Lo;0;L;;;;;N;;;;; +13867;EGYPTIAN HIEROGLYPH-13867;Lo;0;L;;;;;N;;;;; +13868;EGYPTIAN HIEROGLYPH-13868;Lo;0;L;;;;;N;;;;; +13869;EGYPTIAN HIEROGLYPH-13869;Lo;0;L;;;;;N;;;;; +1386A;EGYPTIAN HIEROGLYPH-1386A;Lo;0;L;;;;;N;;;;; +1386B;EGYPTIAN HIEROGLYPH-1386B;Lo;0;L;;;;;N;;;;; +1386C;EGYPTIAN HIEROGLYPH-1386C;Lo;0;L;;;;;N;;;;; +1386D;EGYPTIAN HIEROGLYPH-1386D;Lo;0;L;;;;;N;;;;; +1386E;EGYPTIAN HIEROGLYPH-1386E;Lo;0;L;;;;;N;;;;; +1386F;EGYPTIAN HIEROGLYPH-1386F;Lo;0;L;;;;;N;;;;; +13870;EGYPTIAN HIEROGLYPH-13870;Lo;0;L;;;;;N;;;;; +13871;EGYPTIAN HIEROGLYPH-13871;Lo;0;L;;;;;N;;;;; +13872;EGYPTIAN HIEROGLYPH-13872;Lo;0;L;;;;;N;;;;; +13873;EGYPTIAN HIEROGLYPH-13873;Lo;0;L;;;;;N;;;;; +13874;EGYPTIAN HIEROGLYPH-13874;Lo;0;L;;;;;N;;;;; +13875;EGYPTIAN HIEROGLYPH-13875;Lo;0;L;;;;;N;;;;; +13876;EGYPTIAN HIEROGLYPH-13876;Lo;0;L;;;;;N;;;;; +13877;EGYPTIAN HIEROGLYPH-13877;Lo;0;L;;;;;N;;;;; +13878;EGYPTIAN HIEROGLYPH-13878;Lo;0;L;;;;;N;;;;; +13879;EGYPTIAN HIEROGLYPH-13879;Lo;0;L;;;;;N;;;;; +1387A;EGYPTIAN HIEROGLYPH-1387A;Lo;0;L;;;;;N;;;;; +1387B;EGYPTIAN HIEROGLYPH-1387B;Lo;0;L;;;;;N;;;;; +1387C;EGYPTIAN HIEROGLYPH-1387C;Lo;0;L;;;;;N;;;;; +1387D;EGYPTIAN HIEROGLYPH-1387D;Lo;0;L;;;;;N;;;;; +1387E;EGYPTIAN HIEROGLYPH-1387E;Lo;0;L;;;;;N;;;;; +1387F;EGYPTIAN HIEROGLYPH-1387F;Lo;0;L;;;;;N;;;;; +13880;EGYPTIAN HIEROGLYPH-13880;Lo;0;L;;;;;N;;;;; +13881;EGYPTIAN HIEROGLYPH-13881;Lo;0;L;;;;;N;;;;; +13882;EGYPTIAN HIEROGLYPH-13882;Lo;0;L;;;;;N;;;;; +13883;EGYPTIAN HIEROGLYPH-13883;Lo;0;L;;;;;N;;;;; +13884;EGYPTIAN HIEROGLYPH-13884;Lo;0;L;;;;;N;;;;; +13885;EGYPTIAN HIEROGLYPH-13885;Lo;0;L;;;;;N;;;;; +13886;EGYPTIAN HIEROGLYPH-13886;Lo;0;L;;;;;N;;;;; +13887;EGYPTIAN HIEROGLYPH-13887;Lo;0;L;;;;;N;;;;; +13888;EGYPTIAN HIEROGLYPH-13888;Lo;0;L;;;;;N;;;;; +13889;EGYPTIAN HIEROGLYPH-13889;Lo;0;L;;;;;N;;;;; +1388A;EGYPTIAN HIEROGLYPH-1388A;Lo;0;L;;;;;N;;;;; +1388B;EGYPTIAN HIEROGLYPH-1388B;Lo;0;L;;;;;N;;;;; +1388C;EGYPTIAN HIEROGLYPH-1388C;Lo;0;L;;;;;N;;;;; +1388D;EGYPTIAN HIEROGLYPH-1388D;Lo;0;L;;;;;N;;;;; +1388E;EGYPTIAN HIEROGLYPH-1388E;Lo;0;L;;;;;N;;;;; +1388F;EGYPTIAN HIEROGLYPH-1388F;Lo;0;L;;;;;N;;;;; +13890;EGYPTIAN HIEROGLYPH-13890;Lo;0;L;;;;;N;;;;; +13891;EGYPTIAN HIEROGLYPH-13891;Lo;0;L;;;;;N;;;;; +13892;EGYPTIAN HIEROGLYPH-13892;Lo;0;L;;;;;N;;;;; +13893;EGYPTIAN HIEROGLYPH-13893;Lo;0;L;;;;;N;;;;; +13894;EGYPTIAN HIEROGLYPH-13894;Lo;0;L;;;;;N;;;;; +13895;EGYPTIAN HIEROGLYPH-13895;Lo;0;L;;;;;N;;;;; +13896;EGYPTIAN HIEROGLYPH-13896;Lo;0;L;;;;;N;;;;; +13897;EGYPTIAN HIEROGLYPH-13897;Lo;0;L;;;;;N;;;;; +13898;EGYPTIAN HIEROGLYPH-13898;Lo;0;L;;;;;N;;;;; +13899;EGYPTIAN HIEROGLYPH-13899;Lo;0;L;;;;;N;;;;; +1389A;EGYPTIAN HIEROGLYPH-1389A;Lo;0;L;;;;;N;;;;; +1389B;EGYPTIAN HIEROGLYPH-1389B;Lo;0;L;;;;;N;;;;; +1389C;EGYPTIAN HIEROGLYPH-1389C;Lo;0;L;;;;;N;;;;; +1389D;EGYPTIAN HIEROGLYPH-1389D;Lo;0;L;;;;;N;;;;; +1389E;EGYPTIAN HIEROGLYPH-1389E;Lo;0;L;;;;;N;;;;; +1389F;EGYPTIAN HIEROGLYPH-1389F;Lo;0;L;;;;;N;;;;; +138A0;EGYPTIAN HIEROGLYPH-138A0;Lo;0;L;;;;;N;;;;; +138A1;EGYPTIAN HIEROGLYPH-138A1;Lo;0;L;;;;;N;;;;; +138A2;EGYPTIAN HIEROGLYPH-138A2;Lo;0;L;;;;;N;;;;; +138A3;EGYPTIAN HIEROGLYPH-138A3;Lo;0;L;;;;;N;;;;; +138A4;EGYPTIAN HIEROGLYPH-138A4;Lo;0;L;;;;;N;;;;; +138A5;EGYPTIAN HIEROGLYPH-138A5;Lo;0;L;;;;;N;;;;; +138A6;EGYPTIAN HIEROGLYPH-138A6;Lo;0;L;;;;;N;;;;; +138A7;EGYPTIAN HIEROGLYPH-138A7;Lo;0;L;;;;;N;;;;; +138A8;EGYPTIAN HIEROGLYPH-138A8;Lo;0;L;;;;;N;;;;; +138A9;EGYPTIAN HIEROGLYPH-138A9;Lo;0;L;;;;;N;;;;; +138AA;EGYPTIAN HIEROGLYPH-138AA;Lo;0;L;;;;;N;;;;; +138AB;EGYPTIAN HIEROGLYPH-138AB;Lo;0;L;;;;;N;;;;; +138AC;EGYPTIAN HIEROGLYPH-138AC;Lo;0;L;;;;;N;;;;; +138AD;EGYPTIAN HIEROGLYPH-138AD;Lo;0;L;;;;;N;;;;; +138AE;EGYPTIAN HIEROGLYPH-138AE;Lo;0;L;;;;;N;;;;; +138AF;EGYPTIAN HIEROGLYPH-138AF;Lo;0;L;;;;;N;;;;; +138B0;EGYPTIAN HIEROGLYPH-138B0;Lo;0;L;;;;;N;;;;; +138B1;EGYPTIAN HIEROGLYPH-138B1;Lo;0;L;;;;;N;;;;; +138B2;EGYPTIAN HIEROGLYPH-138B2;Lo;0;L;;;;;N;;;;; +138B3;EGYPTIAN HIEROGLYPH-138B3;Lo;0;L;;;;;N;;;;; +138B4;EGYPTIAN HIEROGLYPH-138B4;Lo;0;L;;;;;N;;;;; +138B5;EGYPTIAN HIEROGLYPH-138B5;Lo;0;L;;;;;N;;;;; +138B6;EGYPTIAN HIEROGLYPH-138B6;Lo;0;L;;;;;N;;;;; +138B7;EGYPTIAN HIEROGLYPH-138B7;Lo;0;L;;;;;N;;;;; +138B8;EGYPTIAN HIEROGLYPH-138B8;Lo;0;L;;;;;N;;;;; +138B9;EGYPTIAN HIEROGLYPH-138B9;Lo;0;L;;;;;N;;;;; +138BA;EGYPTIAN HIEROGLYPH-138BA;Lo;0;L;;;;;N;;;;; +138BB;EGYPTIAN HIEROGLYPH-138BB;Lo;0;L;;;;;N;;;;; +138BC;EGYPTIAN HIEROGLYPH-138BC;Lo;0;L;;;;;N;;;;; +138BD;EGYPTIAN HIEROGLYPH-138BD;Lo;0;L;;;;;N;;;;; +138BE;EGYPTIAN HIEROGLYPH-138BE;Lo;0;L;;;;;N;;;;; +138BF;EGYPTIAN HIEROGLYPH-138BF;Lo;0;L;;;;;N;;;;; +138C0;EGYPTIAN HIEROGLYPH-138C0;Lo;0;L;;;;;N;;;;; +138C1;EGYPTIAN HIEROGLYPH-138C1;Lo;0;L;;;;;N;;;;; +138C2;EGYPTIAN HIEROGLYPH-138C2;Lo;0;L;;;;;N;;;;; +138C3;EGYPTIAN HIEROGLYPH-138C3;Lo;0;L;;;;;N;;;;; +138C4;EGYPTIAN HIEROGLYPH-138C4;Lo;0;L;;;;;N;;;;; +138C5;EGYPTIAN HIEROGLYPH-138C5;Lo;0;L;;;;;N;;;;; +138C6;EGYPTIAN HIEROGLYPH-138C6;Lo;0;L;;;;;N;;;;; +138C7;EGYPTIAN HIEROGLYPH-138C7;Lo;0;L;;;;;N;;;;; +138C8;EGYPTIAN HIEROGLYPH-138C8;Lo;0;L;;;;;N;;;;; +138C9;EGYPTIAN HIEROGLYPH-138C9;Lo;0;L;;;;;N;;;;; +138CA;EGYPTIAN HIEROGLYPH-138CA;Lo;0;L;;;;;N;;;;; +138CB;EGYPTIAN HIEROGLYPH-138CB;Lo;0;L;;;;;N;;;;; +138CC;EGYPTIAN HIEROGLYPH-138CC;Lo;0;L;;;;;N;;;;; +138CD;EGYPTIAN HIEROGLYPH-138CD;Lo;0;L;;;;;N;;;;; +138CE;EGYPTIAN HIEROGLYPH-138CE;Lo;0;L;;;;;N;;;;; +138CF;EGYPTIAN HIEROGLYPH-138CF;Lo;0;L;;;;;N;;;;; +138D0;EGYPTIAN HIEROGLYPH-138D0;Lo;0;L;;;;;N;;;;; +138D1;EGYPTIAN HIEROGLYPH-138D1;Lo;0;L;;;;;N;;;;; +138D2;EGYPTIAN HIEROGLYPH-138D2;Lo;0;L;;;;;N;;;;; +138D3;EGYPTIAN HIEROGLYPH-138D3;Lo;0;L;;;;;N;;;;; +138D4;EGYPTIAN HIEROGLYPH-138D4;Lo;0;L;;;;;N;;;;; +138D5;EGYPTIAN HIEROGLYPH-138D5;Lo;0;L;;;;;N;;;;; +138D6;EGYPTIAN HIEROGLYPH-138D6;Lo;0;L;;;;;N;;;;; +138D7;EGYPTIAN HIEROGLYPH-138D7;Lo;0;L;;;;;N;;;;; +138D8;EGYPTIAN HIEROGLYPH-138D8;Lo;0;L;;;;;N;;;;; +138D9;EGYPTIAN HIEROGLYPH-138D9;Lo;0;L;;;;;N;;;;; +138DA;EGYPTIAN HIEROGLYPH-138DA;Lo;0;L;;;;;N;;;;; +138DB;EGYPTIAN HIEROGLYPH-138DB;Lo;0;L;;;;;N;;;;; +138DC;EGYPTIAN HIEROGLYPH-138DC;Lo;0;L;;;;;N;;;;; +138DD;EGYPTIAN HIEROGLYPH-138DD;Lo;0;L;;;;;N;;;;; +138DE;EGYPTIAN HIEROGLYPH-138DE;Lo;0;L;;;;;N;;;;; +138DF;EGYPTIAN HIEROGLYPH-138DF;Lo;0;L;;;;;N;;;;; +138E0;EGYPTIAN HIEROGLYPH-138E0;Lo;0;L;;;;;N;;;;; +138E1;EGYPTIAN HIEROGLYPH-138E1;Lo;0;L;;;;;N;;;;; +138E2;EGYPTIAN HIEROGLYPH-138E2;Lo;0;L;;;;;N;;;;; +138E3;EGYPTIAN HIEROGLYPH-138E3;Lo;0;L;;;;;N;;;;; +138E4;EGYPTIAN HIEROGLYPH-138E4;Lo;0;L;;;;;N;;;;; +138E5;EGYPTIAN HIEROGLYPH-138E5;Lo;0;L;;;;;N;;;;; +138E6;EGYPTIAN HIEROGLYPH-138E6;Lo;0;L;;;;;N;;;;; +138E7;EGYPTIAN HIEROGLYPH-138E7;Lo;0;L;;;;;N;;;;; +138E8;EGYPTIAN HIEROGLYPH-138E8;Lo;0;L;;;;;N;;;;; +138E9;EGYPTIAN HIEROGLYPH-138E9;Lo;0;L;;;;;N;;;;; +138EA;EGYPTIAN HIEROGLYPH-138EA;Lo;0;L;;;;;N;;;;; +138EB;EGYPTIAN HIEROGLYPH-138EB;Lo;0;L;;;;;N;;;;; +138EC;EGYPTIAN HIEROGLYPH-138EC;Lo;0;L;;;;;N;;;;; +138ED;EGYPTIAN HIEROGLYPH-138ED;Lo;0;L;;;;;N;;;;; +138EE;EGYPTIAN HIEROGLYPH-138EE;Lo;0;L;;;;;N;;;;; +138EF;EGYPTIAN HIEROGLYPH-138EF;Lo;0;L;;;;;N;;;;; +138F0;EGYPTIAN HIEROGLYPH-138F0;Lo;0;L;;;;;N;;;;; +138F1;EGYPTIAN HIEROGLYPH-138F1;Lo;0;L;;;;;N;;;;; +138F2;EGYPTIAN HIEROGLYPH-138F2;Lo;0;L;;;;;N;;;;; +138F3;EGYPTIAN HIEROGLYPH-138F3;Lo;0;L;;;;;N;;;;; +138F4;EGYPTIAN HIEROGLYPH-138F4;Lo;0;L;;;;;N;;;;; +138F5;EGYPTIAN HIEROGLYPH-138F5;Lo;0;L;;;;;N;;;;; +138F6;EGYPTIAN HIEROGLYPH-138F6;Lo;0;L;;;;;N;;;;; +138F7;EGYPTIAN HIEROGLYPH-138F7;Lo;0;L;;;;;N;;;;; +138F8;EGYPTIAN HIEROGLYPH-138F8;Lo;0;L;;;;;N;;;;; +138F9;EGYPTIAN HIEROGLYPH-138F9;Lo;0;L;;;;;N;;;;; +138FA;EGYPTIAN HIEROGLYPH-138FA;Lo;0;L;;;;;N;;;;; +138FB;EGYPTIAN HIEROGLYPH-138FB;Lo;0;L;;;;;N;;;;; +138FC;EGYPTIAN HIEROGLYPH-138FC;Lo;0;L;;;;;N;;;;; +138FD;EGYPTIAN HIEROGLYPH-138FD;Lo;0;L;;;;;N;;;;; +138FE;EGYPTIAN HIEROGLYPH-138FE;Lo;0;L;;;;;N;;;;; +138FF;EGYPTIAN HIEROGLYPH-138FF;Lo;0;L;;;;;N;;;;; +13900;EGYPTIAN HIEROGLYPH-13900;Lo;0;L;;;;;N;;;;; +13901;EGYPTIAN HIEROGLYPH-13901;Lo;0;L;;;;;N;;;;; +13902;EGYPTIAN HIEROGLYPH-13902;Lo;0;L;;;;;N;;;;; +13903;EGYPTIAN HIEROGLYPH-13903;Lo;0;L;;;;;N;;;;; +13904;EGYPTIAN HIEROGLYPH-13904;Lo;0;L;;;;;N;;;;; +13905;EGYPTIAN HIEROGLYPH-13905;Lo;0;L;;;;;N;;;;; +13906;EGYPTIAN HIEROGLYPH-13906;Lo;0;L;;;;;N;;;;; +13907;EGYPTIAN HIEROGLYPH-13907;Lo;0;L;;;;;N;;;;; +13908;EGYPTIAN HIEROGLYPH-13908;Lo;0;L;;;;;N;;;;; +13909;EGYPTIAN HIEROGLYPH-13909;Lo;0;L;;;;;N;;;;; +1390A;EGYPTIAN HIEROGLYPH-1390A;Lo;0;L;;;;;N;;;;; +1390B;EGYPTIAN HIEROGLYPH-1390B;Lo;0;L;;;;;N;;;;; +1390C;EGYPTIAN HIEROGLYPH-1390C;Lo;0;L;;;;;N;;;;; +1390D;EGYPTIAN HIEROGLYPH-1390D;Lo;0;L;;;;;N;;;;; +1390E;EGYPTIAN HIEROGLYPH-1390E;Lo;0;L;;;;;N;;;;; +1390F;EGYPTIAN HIEROGLYPH-1390F;Lo;0;L;;;;;N;;;;; +13910;EGYPTIAN HIEROGLYPH-13910;Lo;0;L;;;;;N;;;;; +13911;EGYPTIAN HIEROGLYPH-13911;Lo;0;L;;;;;N;;;;; +13912;EGYPTIAN HIEROGLYPH-13912;Lo;0;L;;;;;N;;;;; +13913;EGYPTIAN HIEROGLYPH-13913;Lo;0;L;;;;;N;;;;; +13914;EGYPTIAN HIEROGLYPH-13914;Lo;0;L;;;;;N;;;;; +13915;EGYPTIAN HIEROGLYPH-13915;Lo;0;L;;;;;N;;;;; +13916;EGYPTIAN HIEROGLYPH-13916;Lo;0;L;;;;;N;;;;; +13917;EGYPTIAN HIEROGLYPH-13917;Lo;0;L;;;;;N;;;;; +13918;EGYPTIAN HIEROGLYPH-13918;Lo;0;L;;;;;N;;;;; +13919;EGYPTIAN HIEROGLYPH-13919;Lo;0;L;;;;;N;;;;; +1391A;EGYPTIAN HIEROGLYPH-1391A;Lo;0;L;;;;;N;;;;; +1391B;EGYPTIAN HIEROGLYPH-1391B;Lo;0;L;;;;;N;;;;; +1391C;EGYPTIAN HIEROGLYPH-1391C;Lo;0;L;;;;;N;;;;; +1391D;EGYPTIAN HIEROGLYPH-1391D;Lo;0;L;;;;;N;;;;; +1391E;EGYPTIAN HIEROGLYPH-1391E;Lo;0;L;;;;;N;;;;; +1391F;EGYPTIAN HIEROGLYPH-1391F;Lo;0;L;;;;;N;;;;; +13920;EGYPTIAN HIEROGLYPH-13920;Lo;0;L;;;;;N;;;;; +13921;EGYPTIAN HIEROGLYPH-13921;Lo;0;L;;;;;N;;;;; +13922;EGYPTIAN HIEROGLYPH-13922;Lo;0;L;;;;;N;;;;; +13923;EGYPTIAN HIEROGLYPH-13923;Lo;0;L;;;;;N;;;;; +13924;EGYPTIAN HIEROGLYPH-13924;Lo;0;L;;;;;N;;;;; +13925;EGYPTIAN HIEROGLYPH-13925;Lo;0;L;;;;;N;;;;; +13926;EGYPTIAN HIEROGLYPH-13926;Lo;0;L;;;;;N;;;;; +13927;EGYPTIAN HIEROGLYPH-13927;Lo;0;L;;;;;N;;;;; +13928;EGYPTIAN HIEROGLYPH-13928;Lo;0;L;;;;;N;;;;; +13929;EGYPTIAN HIEROGLYPH-13929;Lo;0;L;;;;;N;;;;; +1392A;EGYPTIAN HIEROGLYPH-1392A;Lo;0;L;;;;;N;;;;; +1392B;EGYPTIAN HIEROGLYPH-1392B;Lo;0;L;;;;;N;;;;; +1392C;EGYPTIAN HIEROGLYPH-1392C;Lo;0;L;;;;;N;;;;; +1392D;EGYPTIAN HIEROGLYPH-1392D;Lo;0;L;;;;;N;;;;; +1392E;EGYPTIAN HIEROGLYPH-1392E;Lo;0;L;;;;;N;;;;; +1392F;EGYPTIAN HIEROGLYPH-1392F;Lo;0;L;;;;;N;;;;; +13930;EGYPTIAN HIEROGLYPH-13930;Lo;0;L;;;;;N;;;;; +13931;EGYPTIAN HIEROGLYPH-13931;Lo;0;L;;;;;N;;;;; +13932;EGYPTIAN HIEROGLYPH-13932;Lo;0;L;;;;;N;;;;; +13933;EGYPTIAN HIEROGLYPH-13933;Lo;0;L;;;;;N;;;;; +13934;EGYPTIAN HIEROGLYPH-13934;Lo;0;L;;;;;N;;;;; +13935;EGYPTIAN HIEROGLYPH-13935;Lo;0;L;;;;;N;;;;; +13936;EGYPTIAN HIEROGLYPH-13936;Lo;0;L;;;;;N;;;;; +13937;EGYPTIAN HIEROGLYPH-13937;Lo;0;L;;;;;N;;;;; +13938;EGYPTIAN HIEROGLYPH-13938;Lo;0;L;;;;;N;;;;; +13939;EGYPTIAN HIEROGLYPH-13939;Lo;0;L;;;;;N;;;;; +1393A;EGYPTIAN HIEROGLYPH-1393A;Lo;0;L;;;;;N;;;;; +1393B;EGYPTIAN HIEROGLYPH-1393B;Lo;0;L;;;;;N;;;;; +1393C;EGYPTIAN HIEROGLYPH-1393C;Lo;0;L;;;;;N;;;;; +1393D;EGYPTIAN HIEROGLYPH-1393D;Lo;0;L;;;;;N;;;;; +1393E;EGYPTIAN HIEROGLYPH-1393E;Lo;0;L;;;;;N;;;;; +1393F;EGYPTIAN HIEROGLYPH-1393F;Lo;0;L;;;;;N;;;;; +13940;EGYPTIAN HIEROGLYPH-13940;Lo;0;L;;;;;N;;;;; +13941;EGYPTIAN HIEROGLYPH-13941;Lo;0;L;;;;;N;;;;; +13942;EGYPTIAN HIEROGLYPH-13942;Lo;0;L;;;;;N;;;;; +13943;EGYPTIAN HIEROGLYPH-13943;Lo;0;L;;;;;N;;;;; +13944;EGYPTIAN HIEROGLYPH-13944;Lo;0;L;;;;;N;;;;; +13945;EGYPTIAN HIEROGLYPH-13945;Lo;0;L;;;;;N;;;;; +13946;EGYPTIAN HIEROGLYPH-13946;Lo;0;L;;;;;N;;;;; +13947;EGYPTIAN HIEROGLYPH-13947;Lo;0;L;;;;;N;;;;; +13948;EGYPTIAN HIEROGLYPH-13948;Lo;0;L;;;;;N;;;;; +13949;EGYPTIAN HIEROGLYPH-13949;Lo;0;L;;;;;N;;;;; +1394A;EGYPTIAN HIEROGLYPH-1394A;Lo;0;L;;;;;N;;;;; +1394B;EGYPTIAN HIEROGLYPH-1394B;Lo;0;L;;;;;N;;;;; +1394C;EGYPTIAN HIEROGLYPH-1394C;Lo;0;L;;;;;N;;;;; +1394D;EGYPTIAN HIEROGLYPH-1394D;Lo;0;L;;;;;N;;;;; +1394E;EGYPTIAN HIEROGLYPH-1394E;Lo;0;L;;;;;N;;;;; +1394F;EGYPTIAN HIEROGLYPH-1394F;Lo;0;L;;;;;N;;;;; +13950;EGYPTIAN HIEROGLYPH-13950;Lo;0;L;;;;;N;;;;; +13951;EGYPTIAN HIEROGLYPH-13951;Lo;0;L;;;;;N;;;;; +13952;EGYPTIAN HIEROGLYPH-13952;Lo;0;L;;;;;N;;;;; +13953;EGYPTIAN HIEROGLYPH-13953;Lo;0;L;;;;;N;;;;; +13954;EGYPTIAN HIEROGLYPH-13954;Lo;0;L;;;;;N;;;;; +13955;EGYPTIAN HIEROGLYPH-13955;Lo;0;L;;;;;N;;;;; +13956;EGYPTIAN HIEROGLYPH-13956;Lo;0;L;;;;;N;;;;; +13957;EGYPTIAN HIEROGLYPH-13957;Lo;0;L;;;;;N;;;;; +13958;EGYPTIAN HIEROGLYPH-13958;Lo;0;L;;;;;N;;;;; +13959;EGYPTIAN HIEROGLYPH-13959;Lo;0;L;;;;;N;;;;; +1395A;EGYPTIAN HIEROGLYPH-1395A;Lo;0;L;;;;;N;;;;; +1395B;EGYPTIAN HIEROGLYPH-1395B;Lo;0;L;;;;;N;;;;; +1395C;EGYPTIAN HIEROGLYPH-1395C;Lo;0;L;;;;;N;;;;; +1395D;EGYPTIAN HIEROGLYPH-1395D;Lo;0;L;;;;;N;;;;; +1395E;EGYPTIAN HIEROGLYPH-1395E;Lo;0;L;;;;;N;;;;; +1395F;EGYPTIAN HIEROGLYPH-1395F;Lo;0;L;;;;;N;;;;; +13960;EGYPTIAN HIEROGLYPH-13960;Lo;0;L;;;;;N;;;;; +13961;EGYPTIAN HIEROGLYPH-13961;Lo;0;L;;;;;N;;;;; +13962;EGYPTIAN HIEROGLYPH-13962;Lo;0;L;;;;;N;;;;; +13963;EGYPTIAN HIEROGLYPH-13963;Lo;0;L;;;;;N;;;;; +13964;EGYPTIAN HIEROGLYPH-13964;Lo;0;L;;;;;N;;;;; +13965;EGYPTIAN HIEROGLYPH-13965;Lo;0;L;;;;;N;;;;; +13966;EGYPTIAN HIEROGLYPH-13966;Lo;0;L;;;;;N;;;;; +13967;EGYPTIAN HIEROGLYPH-13967;Lo;0;L;;;;;N;;;;; +13968;EGYPTIAN HIEROGLYPH-13968;Lo;0;L;;;;;N;;;;; +13969;EGYPTIAN HIEROGLYPH-13969;Lo;0;L;;;;;N;;;;; +1396A;EGYPTIAN HIEROGLYPH-1396A;Lo;0;L;;;;;N;;;;; +1396B;EGYPTIAN HIEROGLYPH-1396B;Lo;0;L;;;;;N;;;;; +1396C;EGYPTIAN HIEROGLYPH-1396C;Lo;0;L;;;;;N;;;;; +1396D;EGYPTIAN HIEROGLYPH-1396D;Lo;0;L;;;;;N;;;;; +1396E;EGYPTIAN HIEROGLYPH-1396E;Lo;0;L;;;;;N;;;;; +1396F;EGYPTIAN HIEROGLYPH-1396F;Lo;0;L;;;;;N;;;;; +13970;EGYPTIAN HIEROGLYPH-13970;Lo;0;L;;;;;N;;;;; +13971;EGYPTIAN HIEROGLYPH-13971;Lo;0;L;;;;;N;;;;; +13972;EGYPTIAN HIEROGLYPH-13972;Lo;0;L;;;;;N;;;;; +13973;EGYPTIAN HIEROGLYPH-13973;Lo;0;L;;;;;N;;;;; +13974;EGYPTIAN HIEROGLYPH-13974;Lo;0;L;;;;;N;;;;; +13975;EGYPTIAN HIEROGLYPH-13975;Lo;0;L;;;;;N;;;;; +13976;EGYPTIAN HIEROGLYPH-13976;Lo;0;L;;;;;N;;;;; +13977;EGYPTIAN HIEROGLYPH-13977;Lo;0;L;;;;;N;;;;; +13978;EGYPTIAN HIEROGLYPH-13978;Lo;0;L;;;;;N;;;;; +13979;EGYPTIAN HIEROGLYPH-13979;Lo;0;L;;;;;N;;;;; +1397A;EGYPTIAN HIEROGLYPH-1397A;Lo;0;L;;;;;N;;;;; +1397B;EGYPTIAN HIEROGLYPH-1397B;Lo;0;L;;;;;N;;;;; +1397C;EGYPTIAN HIEROGLYPH-1397C;Lo;0;L;;;;;N;;;;; +1397D;EGYPTIAN HIEROGLYPH-1397D;Lo;0;L;;;;;N;;;;; +1397E;EGYPTIAN HIEROGLYPH-1397E;Lo;0;L;;;;;N;;;;; +1397F;EGYPTIAN HIEROGLYPH-1397F;Lo;0;L;;;;;N;;;;; +13980;EGYPTIAN HIEROGLYPH-13980;Lo;0;L;;;;;N;;;;; +13981;EGYPTIAN HIEROGLYPH-13981;Lo;0;L;;;;;N;;;;; +13982;EGYPTIAN HIEROGLYPH-13982;Lo;0;L;;;;;N;;;;; +13983;EGYPTIAN HIEROGLYPH-13983;Lo;0;L;;;;;N;;;;; +13984;EGYPTIAN HIEROGLYPH-13984;Lo;0;L;;;;;N;;;;; +13985;EGYPTIAN HIEROGLYPH-13985;Lo;0;L;;;;;N;;;;; +13986;EGYPTIAN HIEROGLYPH-13986;Lo;0;L;;;;;N;;;;; +13987;EGYPTIAN HIEROGLYPH-13987;Lo;0;L;;;;;N;;;;; +13988;EGYPTIAN HIEROGLYPH-13988;Lo;0;L;;;;;N;;;;; +13989;EGYPTIAN HIEROGLYPH-13989;Lo;0;L;;;;;N;;;;; +1398A;EGYPTIAN HIEROGLYPH-1398A;Lo;0;L;;;;;N;;;;; +1398B;EGYPTIAN HIEROGLYPH-1398B;Lo;0;L;;;;;N;;;;; +1398C;EGYPTIAN HIEROGLYPH-1398C;Lo;0;L;;;;;N;;;;; +1398D;EGYPTIAN HIEROGLYPH-1398D;Lo;0;L;;;;;N;;;;; +1398E;EGYPTIAN HIEROGLYPH-1398E;Lo;0;L;;;;;N;;;;; +1398F;EGYPTIAN HIEROGLYPH-1398F;Lo;0;L;;;;;N;;;;; +13990;EGYPTIAN HIEROGLYPH-13990;Lo;0;L;;;;;N;;;;; +13991;EGYPTIAN HIEROGLYPH-13991;Lo;0;L;;;;;N;;;;; +13992;EGYPTIAN HIEROGLYPH-13992;Lo;0;L;;;;;N;;;;; +13993;EGYPTIAN HIEROGLYPH-13993;Lo;0;L;;;;;N;;;;; +13994;EGYPTIAN HIEROGLYPH-13994;Lo;0;L;;;;;N;;;;; +13995;EGYPTIAN HIEROGLYPH-13995;Lo;0;L;;;;;N;;;;; +13996;EGYPTIAN HIEROGLYPH-13996;Lo;0;L;;;;;N;;;;; +13997;EGYPTIAN HIEROGLYPH-13997;Lo;0;L;;;;;N;;;;; +13998;EGYPTIAN HIEROGLYPH-13998;Lo;0;L;;;;;N;;;;; +13999;EGYPTIAN HIEROGLYPH-13999;Lo;0;L;;;;;N;;;;; +1399A;EGYPTIAN HIEROGLYPH-1399A;Lo;0;L;;;;;N;;;;; +1399B;EGYPTIAN HIEROGLYPH-1399B;Lo;0;L;;;;;N;;;;; +1399C;EGYPTIAN HIEROGLYPH-1399C;Lo;0;L;;;;;N;;;;; +1399D;EGYPTIAN HIEROGLYPH-1399D;Lo;0;L;;;;;N;;;;; +1399E;EGYPTIAN HIEROGLYPH-1399E;Lo;0;L;;;;;N;;;;; +1399F;EGYPTIAN HIEROGLYPH-1399F;Lo;0;L;;;;;N;;;;; +139A0;EGYPTIAN HIEROGLYPH-139A0;Lo;0;L;;;;;N;;;;; +139A1;EGYPTIAN HIEROGLYPH-139A1;Lo;0;L;;;;;N;;;;; +139A2;EGYPTIAN HIEROGLYPH-139A2;Lo;0;L;;;;;N;;;;; +139A3;EGYPTIAN HIEROGLYPH-139A3;Lo;0;L;;;;;N;;;;; +139A4;EGYPTIAN HIEROGLYPH-139A4;Lo;0;L;;;;;N;;;;; +139A5;EGYPTIAN HIEROGLYPH-139A5;Lo;0;L;;;;;N;;;;; +139A6;EGYPTIAN HIEROGLYPH-139A6;Lo;0;L;;;;;N;;;;; +139A7;EGYPTIAN HIEROGLYPH-139A7;Lo;0;L;;;;;N;;;;; +139A8;EGYPTIAN HIEROGLYPH-139A8;Lo;0;L;;;;;N;;;;; +139A9;EGYPTIAN HIEROGLYPH-139A9;Lo;0;L;;;;;N;;;;; +139AA;EGYPTIAN HIEROGLYPH-139AA;Lo;0;L;;;;;N;;;;; +139AB;EGYPTIAN HIEROGLYPH-139AB;Lo;0;L;;;;;N;;;;; +139AC;EGYPTIAN HIEROGLYPH-139AC;Lo;0;L;;;;;N;;;;; +139AD;EGYPTIAN HIEROGLYPH-139AD;Lo;0;L;;;;;N;;;;; +139AE;EGYPTIAN HIEROGLYPH-139AE;Lo;0;L;;;;;N;;;;; +139AF;EGYPTIAN HIEROGLYPH-139AF;Lo;0;L;;;;;N;;;;; +139B0;EGYPTIAN HIEROGLYPH-139B0;Lo;0;L;;;;;N;;;;; +139B1;EGYPTIAN HIEROGLYPH-139B1;Lo;0;L;;;;;N;;;;; +139B2;EGYPTIAN HIEROGLYPH-139B2;Lo;0;L;;;;;N;;;;; +139B3;EGYPTIAN HIEROGLYPH-139B3;Lo;0;L;;;;;N;;;;; +139B4;EGYPTIAN HIEROGLYPH-139B4;Lo;0;L;;;;;N;;;;; +139B5;EGYPTIAN HIEROGLYPH-139B5;Lo;0;L;;;;;N;;;;; +139B6;EGYPTIAN HIEROGLYPH-139B6;Lo;0;L;;;;;N;;;;; +139B7;EGYPTIAN HIEROGLYPH-139B7;Lo;0;L;;;;;N;;;;; +139B8;EGYPTIAN HIEROGLYPH-139B8;Lo;0;L;;;;;N;;;;; +139B9;EGYPTIAN HIEROGLYPH-139B9;Lo;0;L;;;;;N;;;;; +139BA;EGYPTIAN HIEROGLYPH-139BA;Lo;0;L;;;;;N;;;;; +139BB;EGYPTIAN HIEROGLYPH-139BB;Lo;0;L;;;;;N;;;;; +139BC;EGYPTIAN HIEROGLYPH-139BC;Lo;0;L;;;;;N;;;;; +139BD;EGYPTIAN HIEROGLYPH-139BD;Lo;0;L;;;;;N;;;;; +139BE;EGYPTIAN HIEROGLYPH-139BE;Lo;0;L;;;;;N;;;;; +139BF;EGYPTIAN HIEROGLYPH-139BF;Lo;0;L;;;;;N;;;;; +139C0;EGYPTIAN HIEROGLYPH-139C0;Lo;0;L;;;;;N;;;;; +139C1;EGYPTIAN HIEROGLYPH-139C1;Lo;0;L;;;;;N;;;;; +139C2;EGYPTIAN HIEROGLYPH-139C2;Lo;0;L;;;;;N;;;;; +139C3;EGYPTIAN HIEROGLYPH-139C3;Lo;0;L;;;;;N;;;;; +139C4;EGYPTIAN HIEROGLYPH-139C4;Lo;0;L;;;;;N;;;;; +139C5;EGYPTIAN HIEROGLYPH-139C5;Lo;0;L;;;;;N;;;;; +139C6;EGYPTIAN HIEROGLYPH-139C6;Lo;0;L;;;;;N;;;;; +139C7;EGYPTIAN HIEROGLYPH-139C7;Lo;0;L;;;;;N;;;;; +139C8;EGYPTIAN HIEROGLYPH-139C8;Lo;0;L;;;;;N;;;;; +139C9;EGYPTIAN HIEROGLYPH-139C9;Lo;0;L;;;;;N;;;;; +139CA;EGYPTIAN HIEROGLYPH-139CA;Lo;0;L;;;;;N;;;;; +139CB;EGYPTIAN HIEROGLYPH-139CB;Lo;0;L;;;;;N;;;;; +139CC;EGYPTIAN HIEROGLYPH-139CC;Lo;0;L;;;;;N;;;;; +139CD;EGYPTIAN HIEROGLYPH-139CD;Lo;0;L;;;;;N;;;;; +139CE;EGYPTIAN HIEROGLYPH-139CE;Lo;0;L;;;;;N;;;;; +139CF;EGYPTIAN HIEROGLYPH-139CF;Lo;0;L;;;;;N;;;;; +139D0;EGYPTIAN HIEROGLYPH-139D0;Lo;0;L;;;;;N;;;;; +139D1;EGYPTIAN HIEROGLYPH-139D1;Lo;0;L;;;;;N;;;;; +139D2;EGYPTIAN HIEROGLYPH-139D2;Lo;0;L;;;;;N;;;;; +139D3;EGYPTIAN HIEROGLYPH-139D3;Lo;0;L;;;;;N;;;;; +139D4;EGYPTIAN HIEROGLYPH-139D4;Lo;0;L;;;;;N;;;;; +139D5;EGYPTIAN HIEROGLYPH-139D5;Lo;0;L;;;;;N;;;;; +139D6;EGYPTIAN HIEROGLYPH-139D6;Lo;0;L;;;;;N;;;;; +139D7;EGYPTIAN HIEROGLYPH-139D7;Lo;0;L;;;;;N;;;;; +139D8;EGYPTIAN HIEROGLYPH-139D8;Lo;0;L;;;;;N;;;;; +139D9;EGYPTIAN HIEROGLYPH-139D9;Lo;0;L;;;;;N;;;;; +139DA;EGYPTIAN HIEROGLYPH-139DA;Lo;0;L;;;;;N;;;;; +139DB;EGYPTIAN HIEROGLYPH-139DB;Lo;0;L;;;;;N;;;;; +139DC;EGYPTIAN HIEROGLYPH-139DC;Lo;0;L;;;;;N;;;;; +139DD;EGYPTIAN HIEROGLYPH-139DD;Lo;0;L;;;;;N;;;;; +139DE;EGYPTIAN HIEROGLYPH-139DE;Lo;0;L;;;;;N;;;;; +139DF;EGYPTIAN HIEROGLYPH-139DF;Lo;0;L;;;;;N;;;;; +139E0;EGYPTIAN HIEROGLYPH-139E0;Lo;0;L;;;;;N;;;;; +139E1;EGYPTIAN HIEROGLYPH-139E1;Lo;0;L;;;;;N;;;;; +139E2;EGYPTIAN HIEROGLYPH-139E2;Lo;0;L;;;;;N;;;;; +139E3;EGYPTIAN HIEROGLYPH-139E3;Lo;0;L;;;;;N;;;;; +139E4;EGYPTIAN HIEROGLYPH-139E4;Lo;0;L;;;;;N;;;;; +139E5;EGYPTIAN HIEROGLYPH-139E5;Lo;0;L;;;;;N;;;;; +139E6;EGYPTIAN HIEROGLYPH-139E6;Lo;0;L;;;;;N;;;;; +139E7;EGYPTIAN HIEROGLYPH-139E7;Lo;0;L;;;;;N;;;;; +139E8;EGYPTIAN HIEROGLYPH-139E8;Lo;0;L;;;;;N;;;;; +139E9;EGYPTIAN HIEROGLYPH-139E9;Lo;0;L;;;;;N;;;;; +139EA;EGYPTIAN HIEROGLYPH-139EA;Lo;0;L;;;;;N;;;;; +139EB;EGYPTIAN HIEROGLYPH-139EB;Lo;0;L;;;;;N;;;;; +139EC;EGYPTIAN HIEROGLYPH-139EC;Lo;0;L;;;;;N;;;;; +139ED;EGYPTIAN HIEROGLYPH-139ED;Lo;0;L;;;;;N;;;;; +139EE;EGYPTIAN HIEROGLYPH-139EE;Lo;0;L;;;;;N;;;;; +139EF;EGYPTIAN HIEROGLYPH-139EF;Lo;0;L;;;;;N;;;;; +139F0;EGYPTIAN HIEROGLYPH-139F0;Lo;0;L;;;;;N;;;;; +139F1;EGYPTIAN HIEROGLYPH-139F1;Lo;0;L;;;;;N;;;;; +139F2;EGYPTIAN HIEROGLYPH-139F2;Lo;0;L;;;;;N;;;;; +139F3;EGYPTIAN HIEROGLYPH-139F3;Lo;0;L;;;;;N;;;;; +139F4;EGYPTIAN HIEROGLYPH-139F4;Lo;0;L;;;;;N;;;;; +139F5;EGYPTIAN HIEROGLYPH-139F5;Lo;0;L;;;;;N;;;;; +139F6;EGYPTIAN HIEROGLYPH-139F6;Lo;0;L;;;;;N;;;;; +139F7;EGYPTIAN HIEROGLYPH-139F7;Lo;0;L;;;;;N;;;;; +139F8;EGYPTIAN HIEROGLYPH-139F8;Lo;0;L;;;;;N;;;;; +139F9;EGYPTIAN HIEROGLYPH-139F9;Lo;0;L;;;;;N;;;;; +139FA;EGYPTIAN HIEROGLYPH-139FA;Lo;0;L;;;;;N;;;;; +139FB;EGYPTIAN HIEROGLYPH-139FB;Lo;0;L;;;;;N;;;;; +139FC;EGYPTIAN HIEROGLYPH-139FC;Lo;0;L;;;;;N;;;;; +139FD;EGYPTIAN HIEROGLYPH-139FD;Lo;0;L;;;;;N;;;;; +139FE;EGYPTIAN HIEROGLYPH-139FE;Lo;0;L;;;;;N;;;;; +139FF;EGYPTIAN HIEROGLYPH-139FF;Lo;0;L;;;;;N;;;;; +13A00;EGYPTIAN HIEROGLYPH-13A00;Lo;0;L;;;;;N;;;;; +13A01;EGYPTIAN HIEROGLYPH-13A01;Lo;0;L;;;;;N;;;;; +13A02;EGYPTIAN HIEROGLYPH-13A02;Lo;0;L;;;;;N;;;;; +13A03;EGYPTIAN HIEROGLYPH-13A03;Lo;0;L;;;;;N;;;;; +13A04;EGYPTIAN HIEROGLYPH-13A04;Lo;0;L;;;;;N;;;;; +13A05;EGYPTIAN HIEROGLYPH-13A05;Lo;0;L;;;;;N;;;;; +13A06;EGYPTIAN HIEROGLYPH-13A06;Lo;0;L;;;;;N;;;;; +13A07;EGYPTIAN HIEROGLYPH-13A07;Lo;0;L;;;;;N;;;;; +13A08;EGYPTIAN HIEROGLYPH-13A08;Lo;0;L;;;;;N;;;;; +13A09;EGYPTIAN HIEROGLYPH-13A09;Lo;0;L;;;;;N;;;;; +13A0A;EGYPTIAN HIEROGLYPH-13A0A;Lo;0;L;;;;;N;;;;; +13A0B;EGYPTIAN HIEROGLYPH-13A0B;Lo;0;L;;;;;N;;;;; +13A0C;EGYPTIAN HIEROGLYPH-13A0C;Lo;0;L;;;;;N;;;;; +13A0D;EGYPTIAN HIEROGLYPH-13A0D;Lo;0;L;;;;;N;;;;; +13A0E;EGYPTIAN HIEROGLYPH-13A0E;Lo;0;L;;;;;N;;;;; +13A0F;EGYPTIAN HIEROGLYPH-13A0F;Lo;0;L;;;;;N;;;;; +13A10;EGYPTIAN HIEROGLYPH-13A10;Lo;0;L;;;;;N;;;;; +13A11;EGYPTIAN HIEROGLYPH-13A11;Lo;0;L;;;;;N;;;;; +13A12;EGYPTIAN HIEROGLYPH-13A12;Lo;0;L;;;;;N;;;;; +13A13;EGYPTIAN HIEROGLYPH-13A13;Lo;0;L;;;;;N;;;;; +13A14;EGYPTIAN HIEROGLYPH-13A14;Lo;0;L;;;;;N;;;;; +13A15;EGYPTIAN HIEROGLYPH-13A15;Lo;0;L;;;;;N;;;;; +13A16;EGYPTIAN HIEROGLYPH-13A16;Lo;0;L;;;;;N;;;;; +13A17;EGYPTIAN HIEROGLYPH-13A17;Lo;0;L;;;;;N;;;;; +13A18;EGYPTIAN HIEROGLYPH-13A18;Lo;0;L;;;;;N;;;;; +13A19;EGYPTIAN HIEROGLYPH-13A19;Lo;0;L;;;;;N;;;;; +13A1A;EGYPTIAN HIEROGLYPH-13A1A;Lo;0;L;;;;;N;;;;; +13A1B;EGYPTIAN HIEROGLYPH-13A1B;Lo;0;L;;;;;N;;;;; +13A1C;EGYPTIAN HIEROGLYPH-13A1C;Lo;0;L;;;;;N;;;;; +13A1D;EGYPTIAN HIEROGLYPH-13A1D;Lo;0;L;;;;;N;;;;; +13A1E;EGYPTIAN HIEROGLYPH-13A1E;Lo;0;L;;;;;N;;;;; +13A1F;EGYPTIAN HIEROGLYPH-13A1F;Lo;0;L;;;;;N;;;;; +13A20;EGYPTIAN HIEROGLYPH-13A20;Lo;0;L;;;;;N;;;;; +13A21;EGYPTIAN HIEROGLYPH-13A21;Lo;0;L;;;;;N;;;;; +13A22;EGYPTIAN HIEROGLYPH-13A22;Lo;0;L;;;;;N;;;;; +13A23;EGYPTIAN HIEROGLYPH-13A23;Lo;0;L;;;;;N;;;;; +13A24;EGYPTIAN HIEROGLYPH-13A24;Lo;0;L;;;;;N;;;;; +13A25;EGYPTIAN HIEROGLYPH-13A25;Lo;0;L;;;;;N;;;;; +13A26;EGYPTIAN HIEROGLYPH-13A26;Lo;0;L;;;;;N;;;;; +13A27;EGYPTIAN HIEROGLYPH-13A27;Lo;0;L;;;;;N;;;;; +13A28;EGYPTIAN HIEROGLYPH-13A28;Lo;0;L;;;;;N;;;;; +13A29;EGYPTIAN HIEROGLYPH-13A29;Lo;0;L;;;;;N;;;;; +13A2A;EGYPTIAN HIEROGLYPH-13A2A;Lo;0;L;;;;;N;;;;; +13A2B;EGYPTIAN HIEROGLYPH-13A2B;Lo;0;L;;;;;N;;;;; +13A2C;EGYPTIAN HIEROGLYPH-13A2C;Lo;0;L;;;;;N;;;;; +13A2D;EGYPTIAN HIEROGLYPH-13A2D;Lo;0;L;;;;;N;;;;; +13A2E;EGYPTIAN HIEROGLYPH-13A2E;Lo;0;L;;;;;N;;;;; +13A2F;EGYPTIAN HIEROGLYPH-13A2F;Lo;0;L;;;;;N;;;;; +13A30;EGYPTIAN HIEROGLYPH-13A30;Lo;0;L;;;;;N;;;;; +13A31;EGYPTIAN HIEROGLYPH-13A31;Lo;0;L;;;;;N;;;;; +13A32;EGYPTIAN HIEROGLYPH-13A32;Lo;0;L;;;;;N;;;;; +13A33;EGYPTIAN HIEROGLYPH-13A33;Lo;0;L;;;;;N;;;;; +13A34;EGYPTIAN HIEROGLYPH-13A34;Lo;0;L;;;;;N;;;;; +13A35;EGYPTIAN HIEROGLYPH-13A35;Lo;0;L;;;;;N;;;;; +13A36;EGYPTIAN HIEROGLYPH-13A36;Lo;0;L;;;;;N;;;;; +13A37;EGYPTIAN HIEROGLYPH-13A37;Lo;0;L;;;;;N;;;;; +13A38;EGYPTIAN HIEROGLYPH-13A38;Lo;0;L;;;;;N;;;;; +13A39;EGYPTIAN HIEROGLYPH-13A39;Lo;0;L;;;;;N;;;;; +13A3A;EGYPTIAN HIEROGLYPH-13A3A;Lo;0;L;;;;;N;;;;; +13A3B;EGYPTIAN HIEROGLYPH-13A3B;Lo;0;L;;;;;N;;;;; +13A3C;EGYPTIAN HIEROGLYPH-13A3C;Lo;0;L;;;;;N;;;;; +13A3D;EGYPTIAN HIEROGLYPH-13A3D;Lo;0;L;;;;;N;;;;; +13A3E;EGYPTIAN HIEROGLYPH-13A3E;Lo;0;L;;;;;N;;;;; +13A3F;EGYPTIAN HIEROGLYPH-13A3F;Lo;0;L;;;;;N;;;;; +13A40;EGYPTIAN HIEROGLYPH-13A40;Lo;0;L;;;;;N;;;;; +13A41;EGYPTIAN HIEROGLYPH-13A41;Lo;0;L;;;;;N;;;;; +13A42;EGYPTIAN HIEROGLYPH-13A42;Lo;0;L;;;;;N;;;;; +13A43;EGYPTIAN HIEROGLYPH-13A43;Lo;0;L;;;;;N;;;;; +13A44;EGYPTIAN HIEROGLYPH-13A44;Lo;0;L;;;;;N;;;;; +13A45;EGYPTIAN HIEROGLYPH-13A45;Lo;0;L;;;;;N;;;;; +13A46;EGYPTIAN HIEROGLYPH-13A46;Lo;0;L;;;;;N;;;;; +13A47;EGYPTIAN HIEROGLYPH-13A47;Lo;0;L;;;;;N;;;;; +13A48;EGYPTIAN HIEROGLYPH-13A48;Lo;0;L;;;;;N;;;;; +13A49;EGYPTIAN HIEROGLYPH-13A49;Lo;0;L;;;;;N;;;;; +13A4A;EGYPTIAN HIEROGLYPH-13A4A;Lo;0;L;;;;;N;;;;; +13A4B;EGYPTIAN HIEROGLYPH-13A4B;Lo;0;L;;;;;N;;;;; +13A4C;EGYPTIAN HIEROGLYPH-13A4C;Lo;0;L;;;;;N;;;;; +13A4D;EGYPTIAN HIEROGLYPH-13A4D;Lo;0;L;;;;;N;;;;; +13A4E;EGYPTIAN HIEROGLYPH-13A4E;Lo;0;L;;;;;N;;;;; +13A4F;EGYPTIAN HIEROGLYPH-13A4F;Lo;0;L;;;;;N;;;;; +13A50;EGYPTIAN HIEROGLYPH-13A50;Lo;0;L;;;;;N;;;;; +13A51;EGYPTIAN HIEROGLYPH-13A51;Lo;0;L;;;;;N;;;;; +13A52;EGYPTIAN HIEROGLYPH-13A52;Lo;0;L;;;;;N;;;;; +13A53;EGYPTIAN HIEROGLYPH-13A53;Lo;0;L;;;;;N;;;;; +13A54;EGYPTIAN HIEROGLYPH-13A54;Lo;0;L;;;;;N;;;;; +13A55;EGYPTIAN HIEROGLYPH-13A55;Lo;0;L;;;;;N;;;;; +13A56;EGYPTIAN HIEROGLYPH-13A56;Lo;0;L;;;;;N;;;;; +13A57;EGYPTIAN HIEROGLYPH-13A57;Lo;0;L;;;;;N;;;;; +13A58;EGYPTIAN HIEROGLYPH-13A58;Lo;0;L;;;;;N;;;;; +13A59;EGYPTIAN HIEROGLYPH-13A59;Lo;0;L;;;;;N;;;;; +13A5A;EGYPTIAN HIEROGLYPH-13A5A;Lo;0;L;;;;;N;;;;; +13A5B;EGYPTIAN HIEROGLYPH-13A5B;Lo;0;L;;;;;N;;;;; +13A5C;EGYPTIAN HIEROGLYPH-13A5C;Lo;0;L;;;;;N;;;;; +13A5D;EGYPTIAN HIEROGLYPH-13A5D;Lo;0;L;;;;;N;;;;; +13A5E;EGYPTIAN HIEROGLYPH-13A5E;Lo;0;L;;;;;N;;;;; +13A5F;EGYPTIAN HIEROGLYPH-13A5F;Lo;0;L;;;;;N;;;;; +13A60;EGYPTIAN HIEROGLYPH-13A60;Lo;0;L;;;;;N;;;;; +13A61;EGYPTIAN HIEROGLYPH-13A61;Lo;0;L;;;;;N;;;;; +13A62;EGYPTIAN HIEROGLYPH-13A62;Lo;0;L;;;;;N;;;;; +13A63;EGYPTIAN HIEROGLYPH-13A63;Lo;0;L;;;;;N;;;;; +13A64;EGYPTIAN HIEROGLYPH-13A64;Lo;0;L;;;;;N;;;;; +13A65;EGYPTIAN HIEROGLYPH-13A65;Lo;0;L;;;;;N;;;;; +13A66;EGYPTIAN HIEROGLYPH-13A66;Lo;0;L;;;;;N;;;;; +13A67;EGYPTIAN HIEROGLYPH-13A67;Lo;0;L;;;;;N;;;;; +13A68;EGYPTIAN HIEROGLYPH-13A68;Lo;0;L;;;;;N;;;;; +13A69;EGYPTIAN HIEROGLYPH-13A69;Lo;0;L;;;;;N;;;;; +13A6A;EGYPTIAN HIEROGLYPH-13A6A;Lo;0;L;;;;;N;;;;; +13A6B;EGYPTIAN HIEROGLYPH-13A6B;Lo;0;L;;;;;N;;;;; +13A6C;EGYPTIAN HIEROGLYPH-13A6C;Lo;0;L;;;;;N;;;;; +13A6D;EGYPTIAN HIEROGLYPH-13A6D;Lo;0;L;;;;;N;;;;; +13A6E;EGYPTIAN HIEROGLYPH-13A6E;Lo;0;L;;;;;N;;;;; +13A6F;EGYPTIAN HIEROGLYPH-13A6F;Lo;0;L;;;;;N;;;;; +13A70;EGYPTIAN HIEROGLYPH-13A70;Lo;0;L;;;;;N;;;;; +13A71;EGYPTIAN HIEROGLYPH-13A71;Lo;0;L;;;;;N;;;;; +13A72;EGYPTIAN HIEROGLYPH-13A72;Lo;0;L;;;;;N;;;;; +13A73;EGYPTIAN HIEROGLYPH-13A73;Lo;0;L;;;;;N;;;;; +13A74;EGYPTIAN HIEROGLYPH-13A74;Lo;0;L;;;;;N;;;;; +13A75;EGYPTIAN HIEROGLYPH-13A75;Lo;0;L;;;;;N;;;;; +13A76;EGYPTIAN HIEROGLYPH-13A76;Lo;0;L;;;;;N;;;;; +13A77;EGYPTIAN HIEROGLYPH-13A77;Lo;0;L;;;;;N;;;;; +13A78;EGYPTIAN HIEROGLYPH-13A78;Lo;0;L;;;;;N;;;;; +13A79;EGYPTIAN HIEROGLYPH-13A79;Lo;0;L;;;;;N;;;;; +13A7A;EGYPTIAN HIEROGLYPH-13A7A;Lo;0;L;;;;;N;;;;; +13A7B;EGYPTIAN HIEROGLYPH-13A7B;Lo;0;L;;;;;N;;;;; +13A7C;EGYPTIAN HIEROGLYPH-13A7C;Lo;0;L;;;;;N;;;;; +13A7D;EGYPTIAN HIEROGLYPH-13A7D;Lo;0;L;;;;;N;;;;; +13A7E;EGYPTIAN HIEROGLYPH-13A7E;Lo;0;L;;;;;N;;;;; +13A7F;EGYPTIAN HIEROGLYPH-13A7F;Lo;0;L;;;;;N;;;;; +13A80;EGYPTIAN HIEROGLYPH-13A80;Lo;0;L;;;;;N;;;;; +13A81;EGYPTIAN HIEROGLYPH-13A81;Lo;0;L;;;;;N;;;;; +13A82;EGYPTIAN HIEROGLYPH-13A82;Lo;0;L;;;;;N;;;;; +13A83;EGYPTIAN HIEROGLYPH-13A83;Lo;0;L;;;;;N;;;;; +13A84;EGYPTIAN HIEROGLYPH-13A84;Lo;0;L;;;;;N;;;;; +13A85;EGYPTIAN HIEROGLYPH-13A85;Lo;0;L;;;;;N;;;;; +13A86;EGYPTIAN HIEROGLYPH-13A86;Lo;0;L;;;;;N;;;;; +13A87;EGYPTIAN HIEROGLYPH-13A87;Lo;0;L;;;;;N;;;;; +13A88;EGYPTIAN HIEROGLYPH-13A88;Lo;0;L;;;;;N;;;;; +13A89;EGYPTIAN HIEROGLYPH-13A89;Lo;0;L;;;;;N;;;;; +13A8A;EGYPTIAN HIEROGLYPH-13A8A;Lo;0;L;;;;;N;;;;; +13A8B;EGYPTIAN HIEROGLYPH-13A8B;Lo;0;L;;;;;N;;;;; +13A8C;EGYPTIAN HIEROGLYPH-13A8C;Lo;0;L;;;;;N;;;;; +13A8D;EGYPTIAN HIEROGLYPH-13A8D;Lo;0;L;;;;;N;;;;; +13A8E;EGYPTIAN HIEROGLYPH-13A8E;Lo;0;L;;;;;N;;;;; +13A8F;EGYPTIAN HIEROGLYPH-13A8F;Lo;0;L;;;;;N;;;;; +13A90;EGYPTIAN HIEROGLYPH-13A90;Lo;0;L;;;;;N;;;;; +13A91;EGYPTIAN HIEROGLYPH-13A91;Lo;0;L;;;;;N;;;;; +13A92;EGYPTIAN HIEROGLYPH-13A92;Lo;0;L;;;;;N;;;;; +13A93;EGYPTIAN HIEROGLYPH-13A93;Lo;0;L;;;;;N;;;;; +13A94;EGYPTIAN HIEROGLYPH-13A94;Lo;0;L;;;;;N;;;;; +13A95;EGYPTIAN HIEROGLYPH-13A95;Lo;0;L;;;;;N;;;;; +13A96;EGYPTIAN HIEROGLYPH-13A96;Lo;0;L;;;;;N;;;;; +13A97;EGYPTIAN HIEROGLYPH-13A97;Lo;0;L;;;;;N;;;;; +13A98;EGYPTIAN HIEROGLYPH-13A98;Lo;0;L;;;;;N;;;;; +13A99;EGYPTIAN HIEROGLYPH-13A99;Lo;0;L;;;;;N;;;;; +13A9A;EGYPTIAN HIEROGLYPH-13A9A;Lo;0;L;;;;;N;;;;; +13A9B;EGYPTIAN HIEROGLYPH-13A9B;Lo;0;L;;;;;N;;;;; +13A9C;EGYPTIAN HIEROGLYPH-13A9C;Lo;0;L;;;;;N;;;;; +13A9D;EGYPTIAN HIEROGLYPH-13A9D;Lo;0;L;;;;;N;;;;; +13A9E;EGYPTIAN HIEROGLYPH-13A9E;Lo;0;L;;;;;N;;;;; +13A9F;EGYPTIAN HIEROGLYPH-13A9F;Lo;0;L;;;;;N;;;;; +13AA0;EGYPTIAN HIEROGLYPH-13AA0;Lo;0;L;;;;;N;;;;; +13AA1;EGYPTIAN HIEROGLYPH-13AA1;Lo;0;L;;;;;N;;;;; +13AA2;EGYPTIAN HIEROGLYPH-13AA2;Lo;0;L;;;;;N;;;;; +13AA3;EGYPTIAN HIEROGLYPH-13AA3;Lo;0;L;;;;;N;;;;; +13AA4;EGYPTIAN HIEROGLYPH-13AA4;Lo;0;L;;;;;N;;;;; +13AA5;EGYPTIAN HIEROGLYPH-13AA5;Lo;0;L;;;;;N;;;;; +13AA6;EGYPTIAN HIEROGLYPH-13AA6;Lo;0;L;;;;;N;;;;; +13AA7;EGYPTIAN HIEROGLYPH-13AA7;Lo;0;L;;;;;N;;;;; +13AA8;EGYPTIAN HIEROGLYPH-13AA8;Lo;0;L;;;;;N;;;;; +13AA9;EGYPTIAN HIEROGLYPH-13AA9;Lo;0;L;;;;;N;;;;; +13AAA;EGYPTIAN HIEROGLYPH-13AAA;Lo;0;L;;;;;N;;;;; +13AAB;EGYPTIAN HIEROGLYPH-13AAB;Lo;0;L;;;;;N;;;;; +13AAC;EGYPTIAN HIEROGLYPH-13AAC;Lo;0;L;;;;;N;;;;; +13AAD;EGYPTIAN HIEROGLYPH-13AAD;Lo;0;L;;;;;N;;;;; +13AAE;EGYPTIAN HIEROGLYPH-13AAE;Lo;0;L;;;;;N;;;;; +13AAF;EGYPTIAN HIEROGLYPH-13AAF;Lo;0;L;;;;;N;;;;; +13AB0;EGYPTIAN HIEROGLYPH-13AB0;Lo;0;L;;;;;N;;;;; +13AB1;EGYPTIAN HIEROGLYPH-13AB1;Lo;0;L;;;;;N;;;;; +13AB2;EGYPTIAN HIEROGLYPH-13AB2;Lo;0;L;;;;;N;;;;; +13AB3;EGYPTIAN HIEROGLYPH-13AB3;Lo;0;L;;;;;N;;;;; +13AB4;EGYPTIAN HIEROGLYPH-13AB4;Lo;0;L;;;;;N;;;;; +13AB5;EGYPTIAN HIEROGLYPH-13AB5;Lo;0;L;;;;;N;;;;; +13AB6;EGYPTIAN HIEROGLYPH-13AB6;Lo;0;L;;;;;N;;;;; +13AB7;EGYPTIAN HIEROGLYPH-13AB7;Lo;0;L;;;;;N;;;;; +13AB8;EGYPTIAN HIEROGLYPH-13AB8;Lo;0;L;;;;;N;;;;; +13AB9;EGYPTIAN HIEROGLYPH-13AB9;Lo;0;L;;;;;N;;;;; +13ABA;EGYPTIAN HIEROGLYPH-13ABA;Lo;0;L;;;;;N;;;;; +13ABB;EGYPTIAN HIEROGLYPH-13ABB;Lo;0;L;;;;;N;;;;; +13ABC;EGYPTIAN HIEROGLYPH-13ABC;Lo;0;L;;;;;N;;;;; +13ABD;EGYPTIAN HIEROGLYPH-13ABD;Lo;0;L;;;;;N;;;;; +13ABE;EGYPTIAN HIEROGLYPH-13ABE;Lo;0;L;;;;;N;;;;; +13ABF;EGYPTIAN HIEROGLYPH-13ABF;Lo;0;L;;;;;N;;;;; +13AC0;EGYPTIAN HIEROGLYPH-13AC0;Lo;0;L;;;;;N;;;;; +13AC1;EGYPTIAN HIEROGLYPH-13AC1;Lo;0;L;;;;;N;;;;; +13AC2;EGYPTIAN HIEROGLYPH-13AC2;Lo;0;L;;;;;N;;;;; +13AC3;EGYPTIAN HIEROGLYPH-13AC3;Lo;0;L;;;;;N;;;;; +13AC4;EGYPTIAN HIEROGLYPH-13AC4;Lo;0;L;;;;;N;;;;; +13AC5;EGYPTIAN HIEROGLYPH-13AC5;Lo;0;L;;;;;N;;;;; +13AC6;EGYPTIAN HIEROGLYPH-13AC6;Lo;0;L;;;;;N;;;;; +13AC7;EGYPTIAN HIEROGLYPH-13AC7;Lo;0;L;;;;;N;;;;; +13AC8;EGYPTIAN HIEROGLYPH-13AC8;Lo;0;L;;;;;N;;;;; +13AC9;EGYPTIAN HIEROGLYPH-13AC9;Lo;0;L;;;;;N;;;;; +13ACA;EGYPTIAN HIEROGLYPH-13ACA;Lo;0;L;;;;;N;;;;; +13ACB;EGYPTIAN HIEROGLYPH-13ACB;Lo;0;L;;;;;N;;;;; +13ACC;EGYPTIAN HIEROGLYPH-13ACC;Lo;0;L;;;;;N;;;;; +13ACD;EGYPTIAN HIEROGLYPH-13ACD;Lo;0;L;;;;;N;;;;; +13ACE;EGYPTIAN HIEROGLYPH-13ACE;Lo;0;L;;;;;N;;;;; +13ACF;EGYPTIAN HIEROGLYPH-13ACF;Lo;0;L;;;;;N;;;;; +13AD0;EGYPTIAN HIEROGLYPH-13AD0;Lo;0;L;;;;;N;;;;; +13AD1;EGYPTIAN HIEROGLYPH-13AD1;Lo;0;L;;;;;N;;;;; +13AD2;EGYPTIAN HIEROGLYPH-13AD2;Lo;0;L;;;;;N;;;;; +13AD3;EGYPTIAN HIEROGLYPH-13AD3;Lo;0;L;;;;;N;;;;; +13AD4;EGYPTIAN HIEROGLYPH-13AD4;Lo;0;L;;;;;N;;;;; +13AD5;EGYPTIAN HIEROGLYPH-13AD5;Lo;0;L;;;;;N;;;;; +13AD6;EGYPTIAN HIEROGLYPH-13AD6;Lo;0;L;;;;;N;;;;; +13AD7;EGYPTIAN HIEROGLYPH-13AD7;Lo;0;L;;;;;N;;;;; +13AD8;EGYPTIAN HIEROGLYPH-13AD8;Lo;0;L;;;;;N;;;;; +13AD9;EGYPTIAN HIEROGLYPH-13AD9;Lo;0;L;;;;;N;;;;; +13ADA;EGYPTIAN HIEROGLYPH-13ADA;Lo;0;L;;;;;N;;;;; +13ADB;EGYPTIAN HIEROGLYPH-13ADB;Lo;0;L;;;;;N;;;;; +13ADC;EGYPTIAN HIEROGLYPH-13ADC;Lo;0;L;;;;;N;;;;; +13ADD;EGYPTIAN HIEROGLYPH-13ADD;Lo;0;L;;;;;N;;;;; +13ADE;EGYPTIAN HIEROGLYPH-13ADE;Lo;0;L;;;;;N;;;;; +13ADF;EGYPTIAN HIEROGLYPH-13ADF;Lo;0;L;;;;;N;;;;; +13AE0;EGYPTIAN HIEROGLYPH-13AE0;Lo;0;L;;;;;N;;;;; +13AE1;EGYPTIAN HIEROGLYPH-13AE1;Lo;0;L;;;;;N;;;;; +13AE2;EGYPTIAN HIEROGLYPH-13AE2;Lo;0;L;;;;;N;;;;; +13AE3;EGYPTIAN HIEROGLYPH-13AE3;Lo;0;L;;;;;N;;;;; +13AE4;EGYPTIAN HIEROGLYPH-13AE4;Lo;0;L;;;;;N;;;;; +13AE5;EGYPTIAN HIEROGLYPH-13AE5;Lo;0;L;;;;;N;;;;; +13AE6;EGYPTIAN HIEROGLYPH-13AE6;Lo;0;L;;;;;N;;;;; +13AE7;EGYPTIAN HIEROGLYPH-13AE7;Lo;0;L;;;;;N;;;;; +13AE8;EGYPTIAN HIEROGLYPH-13AE8;Lo;0;L;;;;;N;;;;; +13AE9;EGYPTIAN HIEROGLYPH-13AE9;Lo;0;L;;;;;N;;;;; +13AEA;EGYPTIAN HIEROGLYPH-13AEA;Lo;0;L;;;;;N;;;;; +13AEB;EGYPTIAN HIEROGLYPH-13AEB;Lo;0;L;;;;;N;;;;; +13AEC;EGYPTIAN HIEROGLYPH-13AEC;Lo;0;L;;;;;N;;;;; +13AED;EGYPTIAN HIEROGLYPH-13AED;Lo;0;L;;;;;N;;;;; +13AEE;EGYPTIAN HIEROGLYPH-13AEE;Lo;0;L;;;;;N;;;;; +13AEF;EGYPTIAN HIEROGLYPH-13AEF;Lo;0;L;;;;;N;;;;; +13AF0;EGYPTIAN HIEROGLYPH-13AF0;Lo;0;L;;;;;N;;;;; +13AF1;EGYPTIAN HIEROGLYPH-13AF1;Lo;0;L;;;;;N;;;;; +13AF2;EGYPTIAN HIEROGLYPH-13AF2;Lo;0;L;;;;;N;;;;; +13AF3;EGYPTIAN HIEROGLYPH-13AF3;Lo;0;L;;;;;N;;;;; +13AF4;EGYPTIAN HIEROGLYPH-13AF4;Lo;0;L;;;;;N;;;;; +13AF5;EGYPTIAN HIEROGLYPH-13AF5;Lo;0;L;;;;;N;;;;; +13AF6;EGYPTIAN HIEROGLYPH-13AF6;Lo;0;L;;;;;N;;;;; +13AF7;EGYPTIAN HIEROGLYPH-13AF7;Lo;0;L;;;;;N;;;;; +13AF8;EGYPTIAN HIEROGLYPH-13AF8;Lo;0;L;;;;;N;;;;; +13AF9;EGYPTIAN HIEROGLYPH-13AF9;Lo;0;L;;;;;N;;;;; +13AFA;EGYPTIAN HIEROGLYPH-13AFA;Lo;0;L;;;;;N;;;;; +13AFB;EGYPTIAN HIEROGLYPH-13AFB;Lo;0;L;;;;;N;;;;; +13AFC;EGYPTIAN HIEROGLYPH-13AFC;Lo;0;L;;;;;N;;;;; +13AFD;EGYPTIAN HIEROGLYPH-13AFD;Lo;0;L;;;;;N;;;;; +13AFE;EGYPTIAN HIEROGLYPH-13AFE;Lo;0;L;;;;;N;;;;; +13AFF;EGYPTIAN HIEROGLYPH-13AFF;Lo;0;L;;;;;N;;;;; +13B00;EGYPTIAN HIEROGLYPH-13B00;Lo;0;L;;;;;N;;;;; +13B01;EGYPTIAN HIEROGLYPH-13B01;Lo;0;L;;;;;N;;;;; +13B02;EGYPTIAN HIEROGLYPH-13B02;Lo;0;L;;;;;N;;;;; +13B03;EGYPTIAN HIEROGLYPH-13B03;Lo;0;L;;;;;N;;;;; +13B04;EGYPTIAN HIEROGLYPH-13B04;Lo;0;L;;;;;N;;;;; +13B05;EGYPTIAN HIEROGLYPH-13B05;Lo;0;L;;;;;N;;;;; +13B06;EGYPTIAN HIEROGLYPH-13B06;Lo;0;L;;;;;N;;;;; +13B07;EGYPTIAN HIEROGLYPH-13B07;Lo;0;L;;;;;N;;;;; +13B08;EGYPTIAN HIEROGLYPH-13B08;Lo;0;L;;;;;N;;;;; +13B09;EGYPTIAN HIEROGLYPH-13B09;Lo;0;L;;;;;N;;;;; +13B0A;EGYPTIAN HIEROGLYPH-13B0A;Lo;0;L;;;;;N;;;;; +13B0B;EGYPTIAN HIEROGLYPH-13B0B;Lo;0;L;;;;;N;;;;; +13B0C;EGYPTIAN HIEROGLYPH-13B0C;Lo;0;L;;;;;N;;;;; +13B0D;EGYPTIAN HIEROGLYPH-13B0D;Lo;0;L;;;;;N;;;;; +13B0E;EGYPTIAN HIEROGLYPH-13B0E;Lo;0;L;;;;;N;;;;; +13B0F;EGYPTIAN HIEROGLYPH-13B0F;Lo;0;L;;;;;N;;;;; +13B10;EGYPTIAN HIEROGLYPH-13B10;Lo;0;L;;;;;N;;;;; +13B11;EGYPTIAN HIEROGLYPH-13B11;Lo;0;L;;;;;N;;;;; +13B12;EGYPTIAN HIEROGLYPH-13B12;Lo;0;L;;;;;N;;;;; +13B13;EGYPTIAN HIEROGLYPH-13B13;Lo;0;L;;;;;N;;;;; +13B14;EGYPTIAN HIEROGLYPH-13B14;Lo;0;L;;;;;N;;;;; +13B15;EGYPTIAN HIEROGLYPH-13B15;Lo;0;L;;;;;N;;;;; +13B16;EGYPTIAN HIEROGLYPH-13B16;Lo;0;L;;;;;N;;;;; +13B17;EGYPTIAN HIEROGLYPH-13B17;Lo;0;L;;;;;N;;;;; +13B18;EGYPTIAN HIEROGLYPH-13B18;Lo;0;L;;;;;N;;;;; +13B19;EGYPTIAN HIEROGLYPH-13B19;Lo;0;L;;;;;N;;;;; +13B1A;EGYPTIAN HIEROGLYPH-13B1A;Lo;0;L;;;;;N;;;;; +13B1B;EGYPTIAN HIEROGLYPH-13B1B;Lo;0;L;;;;;N;;;;; +13B1C;EGYPTIAN HIEROGLYPH-13B1C;Lo;0;L;;;;;N;;;;; +13B1D;EGYPTIAN HIEROGLYPH-13B1D;Lo;0;L;;;;;N;;;;; +13B1E;EGYPTIAN HIEROGLYPH-13B1E;Lo;0;L;;;;;N;;;;; +13B1F;EGYPTIAN HIEROGLYPH-13B1F;Lo;0;L;;;;;N;;;;; +13B20;EGYPTIAN HIEROGLYPH-13B20;Lo;0;L;;;;;N;;;;; +13B21;EGYPTIAN HIEROGLYPH-13B21;Lo;0;L;;;;;N;;;;; +13B22;EGYPTIAN HIEROGLYPH-13B22;Lo;0;L;;;;;N;;;;; +13B23;EGYPTIAN HIEROGLYPH-13B23;Lo;0;L;;;;;N;;;;; +13B24;EGYPTIAN HIEROGLYPH-13B24;Lo;0;L;;;;;N;;;;; +13B25;EGYPTIAN HIEROGLYPH-13B25;Lo;0;L;;;;;N;;;;; +13B26;EGYPTIAN HIEROGLYPH-13B26;Lo;0;L;;;;;N;;;;; +13B27;EGYPTIAN HIEROGLYPH-13B27;Lo;0;L;;;;;N;;;;; +13B28;EGYPTIAN HIEROGLYPH-13B28;Lo;0;L;;;;;N;;;;; +13B29;EGYPTIAN HIEROGLYPH-13B29;Lo;0;L;;;;;N;;;;; +13B2A;EGYPTIAN HIEROGLYPH-13B2A;Lo;0;L;;;;;N;;;;; +13B2B;EGYPTIAN HIEROGLYPH-13B2B;Lo;0;L;;;;;N;;;;; +13B2C;EGYPTIAN HIEROGLYPH-13B2C;Lo;0;L;;;;;N;;;;; +13B2D;EGYPTIAN HIEROGLYPH-13B2D;Lo;0;L;;;;;N;;;;; +13B2E;EGYPTIAN HIEROGLYPH-13B2E;Lo;0;L;;;;;N;;;;; +13B2F;EGYPTIAN HIEROGLYPH-13B2F;Lo;0;L;;;;;N;;;;; +13B30;EGYPTIAN HIEROGLYPH-13B30;Lo;0;L;;;;;N;;;;; +13B31;EGYPTIAN HIEROGLYPH-13B31;Lo;0;L;;;;;N;;;;; +13B32;EGYPTIAN HIEROGLYPH-13B32;Lo;0;L;;;;;N;;;;; +13B33;EGYPTIAN HIEROGLYPH-13B33;Lo;0;L;;;;;N;;;;; +13B34;EGYPTIAN HIEROGLYPH-13B34;Lo;0;L;;;;;N;;;;; +13B35;EGYPTIAN HIEROGLYPH-13B35;Lo;0;L;;;;;N;;;;; +13B36;EGYPTIAN HIEROGLYPH-13B36;Lo;0;L;;;;;N;;;;; +13B37;EGYPTIAN HIEROGLYPH-13B37;Lo;0;L;;;;;N;;;;; +13B38;EGYPTIAN HIEROGLYPH-13B38;Lo;0;L;;;;;N;;;;; +13B39;EGYPTIAN HIEROGLYPH-13B39;Lo;0;L;;;;;N;;;;; +13B3A;EGYPTIAN HIEROGLYPH-13B3A;Lo;0;L;;;;;N;;;;; +13B3B;EGYPTIAN HIEROGLYPH-13B3B;Lo;0;L;;;;;N;;;;; +13B3C;EGYPTIAN HIEROGLYPH-13B3C;Lo;0;L;;;;;N;;;;; +13B3D;EGYPTIAN HIEROGLYPH-13B3D;Lo;0;L;;;;;N;;;;; +13B3E;EGYPTIAN HIEROGLYPH-13B3E;Lo;0;L;;;;;N;;;;; +13B3F;EGYPTIAN HIEROGLYPH-13B3F;Lo;0;L;;;;;N;;;;; +13B40;EGYPTIAN HIEROGLYPH-13B40;Lo;0;L;;;;;N;;;;; +13B41;EGYPTIAN HIEROGLYPH-13B41;Lo;0;L;;;;;N;;;;; +13B42;EGYPTIAN HIEROGLYPH-13B42;Lo;0;L;;;;;N;;;;; +13B43;EGYPTIAN HIEROGLYPH-13B43;Lo;0;L;;;;;N;;;;; +13B44;EGYPTIAN HIEROGLYPH-13B44;Lo;0;L;;;;;N;;;;; +13B45;EGYPTIAN HIEROGLYPH-13B45;Lo;0;L;;;;;N;;;;; +13B46;EGYPTIAN HIEROGLYPH-13B46;Lo;0;L;;;;;N;;;;; +13B47;EGYPTIAN HIEROGLYPH-13B47;Lo;0;L;;;;;N;;;;; +13B48;EGYPTIAN HIEROGLYPH-13B48;Lo;0;L;;;;;N;;;;; +13B49;EGYPTIAN HIEROGLYPH-13B49;Lo;0;L;;;;;N;;;;; +13B4A;EGYPTIAN HIEROGLYPH-13B4A;Lo;0;L;;;;;N;;;;; +13B4B;EGYPTIAN HIEROGLYPH-13B4B;Lo;0;L;;;;;N;;;;; +13B4C;EGYPTIAN HIEROGLYPH-13B4C;Lo;0;L;;;;;N;;;;; +13B4D;EGYPTIAN HIEROGLYPH-13B4D;Lo;0;L;;;;;N;;;;; +13B4E;EGYPTIAN HIEROGLYPH-13B4E;Lo;0;L;;;;;N;;;;; +13B4F;EGYPTIAN HIEROGLYPH-13B4F;Lo;0;L;;;;;N;;;;; +13B50;EGYPTIAN HIEROGLYPH-13B50;Lo;0;L;;;;;N;;;;; +13B51;EGYPTIAN HIEROGLYPH-13B51;Lo;0;L;;;;;N;;;;; +13B52;EGYPTIAN HIEROGLYPH-13B52;Lo;0;L;;;;;N;;;;; +13B53;EGYPTIAN HIEROGLYPH-13B53;Lo;0;L;;;;;N;;;;; +13B54;EGYPTIAN HIEROGLYPH-13B54;Lo;0;L;;;;;N;;;;; +13B55;EGYPTIAN HIEROGLYPH-13B55;Lo;0;L;;;;;N;;;;; +13B56;EGYPTIAN HIEROGLYPH-13B56;Lo;0;L;;;;;N;;;;; +13B57;EGYPTIAN HIEROGLYPH-13B57;Lo;0;L;;;;;N;;;;; +13B58;EGYPTIAN HIEROGLYPH-13B58;Lo;0;L;;;;;N;;;;; +13B59;EGYPTIAN HIEROGLYPH-13B59;Lo;0;L;;;;;N;;;;; +13B5A;EGYPTIAN HIEROGLYPH-13B5A;Lo;0;L;;;;;N;;;;; +13B5B;EGYPTIAN HIEROGLYPH-13B5B;Lo;0;L;;;;;N;;;;; +13B5C;EGYPTIAN HIEROGLYPH-13B5C;Lo;0;L;;;;;N;;;;; +13B5D;EGYPTIAN HIEROGLYPH-13B5D;Lo;0;L;;;;;N;;;;; +13B5E;EGYPTIAN HIEROGLYPH-13B5E;Lo;0;L;;;;;N;;;;; +13B5F;EGYPTIAN HIEROGLYPH-13B5F;Lo;0;L;;;;;N;;;;; +13B60;EGYPTIAN HIEROGLYPH-13B60;Lo;0;L;;;;;N;;;;; +13B61;EGYPTIAN HIEROGLYPH-13B61;Lo;0;L;;;;;N;;;;; +13B62;EGYPTIAN HIEROGLYPH-13B62;Lo;0;L;;;;;N;;;;; +13B63;EGYPTIAN HIEROGLYPH-13B63;Lo;0;L;;;;;N;;;;; +13B64;EGYPTIAN HIEROGLYPH-13B64;Lo;0;L;;;;;N;;;;; +13B65;EGYPTIAN HIEROGLYPH-13B65;Lo;0;L;;;;;N;;;;; +13B66;EGYPTIAN HIEROGLYPH-13B66;Lo;0;L;;;;;N;;;;; +13B67;EGYPTIAN HIEROGLYPH-13B67;Lo;0;L;;;;;N;;;;; +13B68;EGYPTIAN HIEROGLYPH-13B68;Lo;0;L;;;;;N;;;;; +13B69;EGYPTIAN HIEROGLYPH-13B69;Lo;0;L;;;;;N;;;;; +13B6A;EGYPTIAN HIEROGLYPH-13B6A;Lo;0;L;;;;;N;;;;; +13B6B;EGYPTIAN HIEROGLYPH-13B6B;Lo;0;L;;;;;N;;;;; +13B6C;EGYPTIAN HIEROGLYPH-13B6C;Lo;0;L;;;;;N;;;;; +13B6D;EGYPTIAN HIEROGLYPH-13B6D;Lo;0;L;;;;;N;;;;; +13B6E;EGYPTIAN HIEROGLYPH-13B6E;Lo;0;L;;;;;N;;;;; +13B6F;EGYPTIAN HIEROGLYPH-13B6F;Lo;0;L;;;;;N;;;;; +13B70;EGYPTIAN HIEROGLYPH-13B70;Lo;0;L;;;;;N;;;;; +13B71;EGYPTIAN HIEROGLYPH-13B71;Lo;0;L;;;;;N;;;;; +13B72;EGYPTIAN HIEROGLYPH-13B72;Lo;0;L;;;;;N;;;;; +13B73;EGYPTIAN HIEROGLYPH-13B73;Lo;0;L;;;;;N;;;;; +13B74;EGYPTIAN HIEROGLYPH-13B74;Lo;0;L;;;;;N;;;;; +13B75;EGYPTIAN HIEROGLYPH-13B75;Lo;0;L;;;;;N;;;;; +13B76;EGYPTIAN HIEROGLYPH-13B76;Lo;0;L;;;;;N;;;;; +13B77;EGYPTIAN HIEROGLYPH-13B77;Lo;0;L;;;;;N;;;;; +13B78;EGYPTIAN HIEROGLYPH-13B78;Lo;0;L;;;;;N;;;;; +13B79;EGYPTIAN HIEROGLYPH-13B79;Lo;0;L;;;;;N;;;;; +13B7A;EGYPTIAN HIEROGLYPH-13B7A;Lo;0;L;;;;;N;;;;; +13B7B;EGYPTIAN HIEROGLYPH-13B7B;Lo;0;L;;;;;N;;;;; +13B7C;EGYPTIAN HIEROGLYPH-13B7C;Lo;0;L;;;;;N;;;;; +13B7D;EGYPTIAN HIEROGLYPH-13B7D;Lo;0;L;;;;;N;;;;; +13B7E;EGYPTIAN HIEROGLYPH-13B7E;Lo;0;L;;;;;N;;;;; +13B7F;EGYPTIAN HIEROGLYPH-13B7F;Lo;0;L;;;;;N;;;;; +13B80;EGYPTIAN HIEROGLYPH-13B80;Lo;0;L;;;;;N;;;;; +13B81;EGYPTIAN HIEROGLYPH-13B81;Lo;0;L;;;;;N;;;;; +13B82;EGYPTIAN HIEROGLYPH-13B82;Lo;0;L;;;;;N;;;;; +13B83;EGYPTIAN HIEROGLYPH-13B83;Lo;0;L;;;;;N;;;;; +13B84;EGYPTIAN HIEROGLYPH-13B84;Lo;0;L;;;;;N;;;;; +13B85;EGYPTIAN HIEROGLYPH-13B85;Lo;0;L;;;;;N;;;;; +13B86;EGYPTIAN HIEROGLYPH-13B86;Lo;0;L;;;;;N;;;;; +13B87;EGYPTIAN HIEROGLYPH-13B87;Lo;0;L;;;;;N;;;;; +13B88;EGYPTIAN HIEROGLYPH-13B88;Lo;0;L;;;;;N;;;;; +13B89;EGYPTIAN HIEROGLYPH-13B89;Lo;0;L;;;;;N;;;;; +13B8A;EGYPTIAN HIEROGLYPH-13B8A;Lo;0;L;;;;;N;;;;; +13B8B;EGYPTIAN HIEROGLYPH-13B8B;Lo;0;L;;;;;N;;;;; +13B8C;EGYPTIAN HIEROGLYPH-13B8C;Lo;0;L;;;;;N;;;;; +13B8D;EGYPTIAN HIEROGLYPH-13B8D;Lo;0;L;;;;;N;;;;; +13B8E;EGYPTIAN HIEROGLYPH-13B8E;Lo;0;L;;;;;N;;;;; +13B8F;EGYPTIAN HIEROGLYPH-13B8F;Lo;0;L;;;;;N;;;;; +13B90;EGYPTIAN HIEROGLYPH-13B90;Lo;0;L;;;;;N;;;;; +13B91;EGYPTIAN HIEROGLYPH-13B91;Lo;0;L;;;;;N;;;;; +13B92;EGYPTIAN HIEROGLYPH-13B92;Lo;0;L;;;;;N;;;;; +13B93;EGYPTIAN HIEROGLYPH-13B93;Lo;0;L;;;;;N;;;;; +13B94;EGYPTIAN HIEROGLYPH-13B94;Lo;0;L;;;;;N;;;;; +13B95;EGYPTIAN HIEROGLYPH-13B95;Lo;0;L;;;;;N;;;;; +13B96;EGYPTIAN HIEROGLYPH-13B96;Lo;0;L;;;;;N;;;;; +13B97;EGYPTIAN HIEROGLYPH-13B97;Lo;0;L;;;;;N;;;;; +13B98;EGYPTIAN HIEROGLYPH-13B98;Lo;0;L;;;;;N;;;;; +13B99;EGYPTIAN HIEROGLYPH-13B99;Lo;0;L;;;;;N;;;;; +13B9A;EGYPTIAN HIEROGLYPH-13B9A;Lo;0;L;;;;;N;;;;; +13B9B;EGYPTIAN HIEROGLYPH-13B9B;Lo;0;L;;;;;N;;;;; +13B9C;EGYPTIAN HIEROGLYPH-13B9C;Lo;0;L;;;;;N;;;;; +13B9D;EGYPTIAN HIEROGLYPH-13B9D;Lo;0;L;;;;;N;;;;; +13B9E;EGYPTIAN HIEROGLYPH-13B9E;Lo;0;L;;;;;N;;;;; +13B9F;EGYPTIAN HIEROGLYPH-13B9F;Lo;0;L;;;;;N;;;;; +13BA0;EGYPTIAN HIEROGLYPH-13BA0;Lo;0;L;;;;;N;;;;; +13BA1;EGYPTIAN HIEROGLYPH-13BA1;Lo;0;L;;;;;N;;;;; +13BA2;EGYPTIAN HIEROGLYPH-13BA2;Lo;0;L;;;;;N;;;;; +13BA3;EGYPTIAN HIEROGLYPH-13BA3;Lo;0;L;;;;;N;;;;; +13BA4;EGYPTIAN HIEROGLYPH-13BA4;Lo;0;L;;;;;N;;;;; +13BA5;EGYPTIAN HIEROGLYPH-13BA5;Lo;0;L;;;;;N;;;;; +13BA6;EGYPTIAN HIEROGLYPH-13BA6;Lo;0;L;;;;;N;;;;; +13BA7;EGYPTIAN HIEROGLYPH-13BA7;Lo;0;L;;;;;N;;;;; +13BA8;EGYPTIAN HIEROGLYPH-13BA8;Lo;0;L;;;;;N;;;;; +13BA9;EGYPTIAN HIEROGLYPH-13BA9;Lo;0;L;;;;;N;;;;; +13BAA;EGYPTIAN HIEROGLYPH-13BAA;Lo;0;L;;;;;N;;;;; +13BAB;EGYPTIAN HIEROGLYPH-13BAB;Lo;0;L;;;;;N;;;;; +13BAC;EGYPTIAN HIEROGLYPH-13BAC;Lo;0;L;;;;;N;;;;; +13BAD;EGYPTIAN HIEROGLYPH-13BAD;Lo;0;L;;;;;N;;;;; +13BAE;EGYPTIAN HIEROGLYPH-13BAE;Lo;0;L;;;;;N;;;;; +13BAF;EGYPTIAN HIEROGLYPH-13BAF;Lo;0;L;;;;;N;;;;; +13BB0;EGYPTIAN HIEROGLYPH-13BB0;Lo;0;L;;;;;N;;;;; +13BB1;EGYPTIAN HIEROGLYPH-13BB1;Lo;0;L;;;;;N;;;;; +13BB2;EGYPTIAN HIEROGLYPH-13BB2;Lo;0;L;;;;;N;;;;; +13BB3;EGYPTIAN HIEROGLYPH-13BB3;Lo;0;L;;;;;N;;;;; +13BB4;EGYPTIAN HIEROGLYPH-13BB4;Lo;0;L;;;;;N;;;;; +13BB5;EGYPTIAN HIEROGLYPH-13BB5;Lo;0;L;;;;;N;;;;; +13BB6;EGYPTIAN HIEROGLYPH-13BB6;Lo;0;L;;;;;N;;;;; +13BB7;EGYPTIAN HIEROGLYPH-13BB7;Lo;0;L;;;;;N;;;;; +13BB8;EGYPTIAN HIEROGLYPH-13BB8;Lo;0;L;;;;;N;;;;; +13BB9;EGYPTIAN HIEROGLYPH-13BB9;Lo;0;L;;;;;N;;;;; +13BBA;EGYPTIAN HIEROGLYPH-13BBA;Lo;0;L;;;;;N;;;;; +13BBB;EGYPTIAN HIEROGLYPH-13BBB;Lo;0;L;;;;;N;;;;; +13BBC;EGYPTIAN HIEROGLYPH-13BBC;Lo;0;L;;;;;N;;;;; +13BBD;EGYPTIAN HIEROGLYPH-13BBD;Lo;0;L;;;;;N;;;;; +13BBE;EGYPTIAN HIEROGLYPH-13BBE;Lo;0;L;;;;;N;;;;; +13BBF;EGYPTIAN HIEROGLYPH-13BBF;Lo;0;L;;;;;N;;;;; +13BC0;EGYPTIAN HIEROGLYPH-13BC0;Lo;0;L;;;;;N;;;;; +13BC1;EGYPTIAN HIEROGLYPH-13BC1;Lo;0;L;;;;;N;;;;; +13BC2;EGYPTIAN HIEROGLYPH-13BC2;Lo;0;L;;;;;N;;;;; +13BC3;EGYPTIAN HIEROGLYPH-13BC3;Lo;0;L;;;;;N;;;;; +13BC4;EGYPTIAN HIEROGLYPH-13BC4;Lo;0;L;;;;;N;;;;; +13BC5;EGYPTIAN HIEROGLYPH-13BC5;Lo;0;L;;;;;N;;;;; +13BC6;EGYPTIAN HIEROGLYPH-13BC6;Lo;0;L;;;;;N;;;;; +13BC7;EGYPTIAN HIEROGLYPH-13BC7;Lo;0;L;;;;;N;;;;; +13BC8;EGYPTIAN HIEROGLYPH-13BC8;Lo;0;L;;;;;N;;;;; +13BC9;EGYPTIAN HIEROGLYPH-13BC9;Lo;0;L;;;;;N;;;;; +13BCA;EGYPTIAN HIEROGLYPH-13BCA;Lo;0;L;;;;;N;;;;; +13BCB;EGYPTIAN HIEROGLYPH-13BCB;Lo;0;L;;;;;N;;;;; +13BCC;EGYPTIAN HIEROGLYPH-13BCC;Lo;0;L;;;;;N;;;;; +13BCD;EGYPTIAN HIEROGLYPH-13BCD;Lo;0;L;;;;;N;;;;; +13BCE;EGYPTIAN HIEROGLYPH-13BCE;Lo;0;L;;;;;N;;;;; +13BCF;EGYPTIAN HIEROGLYPH-13BCF;Lo;0;L;;;;;N;;;;; +13BD0;EGYPTIAN HIEROGLYPH-13BD0;Lo;0;L;;;;;N;;;;; +13BD1;EGYPTIAN HIEROGLYPH-13BD1;Lo;0;L;;;;;N;;;;; +13BD2;EGYPTIAN HIEROGLYPH-13BD2;Lo;0;L;;;;;N;;;;; +13BD3;EGYPTIAN HIEROGLYPH-13BD3;Lo;0;L;;;;;N;;;;; +13BD4;EGYPTIAN HIEROGLYPH-13BD4;Lo;0;L;;;;;N;;;;; +13BD5;EGYPTIAN HIEROGLYPH-13BD5;Lo;0;L;;;;;N;;;;; +13BD6;EGYPTIAN HIEROGLYPH-13BD6;Lo;0;L;;;;;N;;;;; +13BD7;EGYPTIAN HIEROGLYPH-13BD7;Lo;0;L;;;;;N;;;;; +13BD8;EGYPTIAN HIEROGLYPH-13BD8;Lo;0;L;;;;;N;;;;; +13BD9;EGYPTIAN HIEROGLYPH-13BD9;Lo;0;L;;;;;N;;;;; +13BDA;EGYPTIAN HIEROGLYPH-13BDA;Lo;0;L;;;;;N;;;;; +13BDB;EGYPTIAN HIEROGLYPH-13BDB;Lo;0;L;;;;;N;;;;; +13BDC;EGYPTIAN HIEROGLYPH-13BDC;Lo;0;L;;;;;N;;;;; +13BDD;EGYPTIAN HIEROGLYPH-13BDD;Lo;0;L;;;;;N;;;;; +13BDE;EGYPTIAN HIEROGLYPH-13BDE;Lo;0;L;;;;;N;;;;; +13BDF;EGYPTIAN HIEROGLYPH-13BDF;Lo;0;L;;;;;N;;;;; +13BE0;EGYPTIAN HIEROGLYPH-13BE0;Lo;0;L;;;;;N;;;;; +13BE1;EGYPTIAN HIEROGLYPH-13BE1;Lo;0;L;;;;;N;;;;; +13BE2;EGYPTIAN HIEROGLYPH-13BE2;Lo;0;L;;;;;N;;;;; +13BE3;EGYPTIAN HIEROGLYPH-13BE3;Lo;0;L;;;;;N;;;;; +13BE4;EGYPTIAN HIEROGLYPH-13BE4;Lo;0;L;;;;;N;;;;; +13BE5;EGYPTIAN HIEROGLYPH-13BE5;Lo;0;L;;;;;N;;;;; +13BE6;EGYPTIAN HIEROGLYPH-13BE6;Lo;0;L;;;;;N;;;;; +13BE7;EGYPTIAN HIEROGLYPH-13BE7;Lo;0;L;;;;;N;;;;; +13BE8;EGYPTIAN HIEROGLYPH-13BE8;Lo;0;L;;;;;N;;;;; +13BE9;EGYPTIAN HIEROGLYPH-13BE9;Lo;0;L;;;;;N;;;;; +13BEA;EGYPTIAN HIEROGLYPH-13BEA;Lo;0;L;;;;;N;;;;; +13BEB;EGYPTIAN HIEROGLYPH-13BEB;Lo;0;L;;;;;N;;;;; +13BEC;EGYPTIAN HIEROGLYPH-13BEC;Lo;0;L;;;;;N;;;;; +13BED;EGYPTIAN HIEROGLYPH-13BED;Lo;0;L;;;;;N;;;;; +13BEE;EGYPTIAN HIEROGLYPH-13BEE;Lo;0;L;;;;;N;;;;; +13BEF;EGYPTIAN HIEROGLYPH-13BEF;Lo;0;L;;;;;N;;;;; +13BF0;EGYPTIAN HIEROGLYPH-13BF0;Lo;0;L;;;;;N;;;;; +13BF1;EGYPTIAN HIEROGLYPH-13BF1;Lo;0;L;;;;;N;;;;; +13BF2;EGYPTIAN HIEROGLYPH-13BF2;Lo;0;L;;;;;N;;;;; +13BF3;EGYPTIAN HIEROGLYPH-13BF3;Lo;0;L;;;;;N;;;;; +13BF4;EGYPTIAN HIEROGLYPH-13BF4;Lo;0;L;;;;;N;;;;; +13BF5;EGYPTIAN HIEROGLYPH-13BF5;Lo;0;L;;;;;N;;;;; +13BF6;EGYPTIAN HIEROGLYPH-13BF6;Lo;0;L;;;;;N;;;;; +13BF7;EGYPTIAN HIEROGLYPH-13BF7;Lo;0;L;;;;;N;;;;; +13BF8;EGYPTIAN HIEROGLYPH-13BF8;Lo;0;L;;;;;N;;;;; +13BF9;EGYPTIAN HIEROGLYPH-13BF9;Lo;0;L;;;;;N;;;;; +13BFA;EGYPTIAN HIEROGLYPH-13BFA;Lo;0;L;;;;;N;;;;; +13BFB;EGYPTIAN HIEROGLYPH-13BFB;Lo;0;L;;;;;N;;;;; +13BFC;EGYPTIAN HIEROGLYPH-13BFC;Lo;0;L;;;;;N;;;;; +13BFD;EGYPTIAN HIEROGLYPH-13BFD;Lo;0;L;;;;;N;;;;; +13BFE;EGYPTIAN HIEROGLYPH-13BFE;Lo;0;L;;;;;N;;;;; +13BFF;EGYPTIAN HIEROGLYPH-13BFF;Lo;0;L;;;;;N;;;;; +13C00;EGYPTIAN HIEROGLYPH-13C00;Lo;0;L;;;;;N;;;;; +13C01;EGYPTIAN HIEROGLYPH-13C01;Lo;0;L;;;;;N;;;;; +13C02;EGYPTIAN HIEROGLYPH-13C02;Lo;0;L;;;;;N;;;;; +13C03;EGYPTIAN HIEROGLYPH-13C03;Lo;0;L;;;;;N;;;;; +13C04;EGYPTIAN HIEROGLYPH-13C04;Lo;0;L;;;;;N;;;;; +13C05;EGYPTIAN HIEROGLYPH-13C05;Lo;0;L;;;;;N;;;;; +13C06;EGYPTIAN HIEROGLYPH-13C06;Lo;0;L;;;;;N;;;;; +13C07;EGYPTIAN HIEROGLYPH-13C07;Lo;0;L;;;;;N;;;;; +13C08;EGYPTIAN HIEROGLYPH-13C08;Lo;0;L;;;;;N;;;;; +13C09;EGYPTIAN HIEROGLYPH-13C09;Lo;0;L;;;;;N;;;;; +13C0A;EGYPTIAN HIEROGLYPH-13C0A;Lo;0;L;;;;;N;;;;; +13C0B;EGYPTIAN HIEROGLYPH-13C0B;Lo;0;L;;;;;N;;;;; +13C0C;EGYPTIAN HIEROGLYPH-13C0C;Lo;0;L;;;;;N;;;;; +13C0D;EGYPTIAN HIEROGLYPH-13C0D;Lo;0;L;;;;;N;;;;; +13C0E;EGYPTIAN HIEROGLYPH-13C0E;Lo;0;L;;;;;N;;;;; +13C0F;EGYPTIAN HIEROGLYPH-13C0F;Lo;0;L;;;;;N;;;;; +13C10;EGYPTIAN HIEROGLYPH-13C10;Lo;0;L;;;;;N;;;;; +13C11;EGYPTIAN HIEROGLYPH-13C11;Lo;0;L;;;;;N;;;;; +13C12;EGYPTIAN HIEROGLYPH-13C12;Lo;0;L;;;;;N;;;;; +13C13;EGYPTIAN HIEROGLYPH-13C13;Lo;0;L;;;;;N;;;;; +13C14;EGYPTIAN HIEROGLYPH-13C14;Lo;0;L;;;;;N;;;;; +13C15;EGYPTIAN HIEROGLYPH-13C15;Lo;0;L;;;;;N;;;;; +13C16;EGYPTIAN HIEROGLYPH-13C16;Lo;0;L;;;;;N;;;;; +13C17;EGYPTIAN HIEROGLYPH-13C17;Lo;0;L;;;;;N;;;;; +13C18;EGYPTIAN HIEROGLYPH-13C18;Lo;0;L;;;;;N;;;;; +13C19;EGYPTIAN HIEROGLYPH-13C19;Lo;0;L;;;;;N;;;;; +13C1A;EGYPTIAN HIEROGLYPH-13C1A;Lo;0;L;;;;;N;;;;; +13C1B;EGYPTIAN HIEROGLYPH-13C1B;Lo;0;L;;;;;N;;;;; +13C1C;EGYPTIAN HIEROGLYPH-13C1C;Lo;0;L;;;;;N;;;;; +13C1D;EGYPTIAN HIEROGLYPH-13C1D;Lo;0;L;;;;;N;;;;; +13C1E;EGYPTIAN HIEROGLYPH-13C1E;Lo;0;L;;;;;N;;;;; +13C1F;EGYPTIAN HIEROGLYPH-13C1F;Lo;0;L;;;;;N;;;;; +13C20;EGYPTIAN HIEROGLYPH-13C20;Lo;0;L;;;;;N;;;;; +13C21;EGYPTIAN HIEROGLYPH-13C21;Lo;0;L;;;;;N;;;;; +13C22;EGYPTIAN HIEROGLYPH-13C22;Lo;0;L;;;;;N;;;;; +13C23;EGYPTIAN HIEROGLYPH-13C23;Lo;0;L;;;;;N;;;;; +13C24;EGYPTIAN HIEROGLYPH-13C24;Lo;0;L;;;;;N;;;;; +13C25;EGYPTIAN HIEROGLYPH-13C25;Lo;0;L;;;;;N;;;;; +13C26;EGYPTIAN HIEROGLYPH-13C26;Lo;0;L;;;;;N;;;;; +13C27;EGYPTIAN HIEROGLYPH-13C27;Lo;0;L;;;;;N;;;;; +13C28;EGYPTIAN HIEROGLYPH-13C28;Lo;0;L;;;;;N;;;;; +13C29;EGYPTIAN HIEROGLYPH-13C29;Lo;0;L;;;;;N;;;;; +13C2A;EGYPTIAN HIEROGLYPH-13C2A;Lo;0;L;;;;;N;;;;; +13C2B;EGYPTIAN HIEROGLYPH-13C2B;Lo;0;L;;;;;N;;;;; +13C2C;EGYPTIAN HIEROGLYPH-13C2C;Lo;0;L;;;;;N;;;;; +13C2D;EGYPTIAN HIEROGLYPH-13C2D;Lo;0;L;;;;;N;;;;; +13C2E;EGYPTIAN HIEROGLYPH-13C2E;Lo;0;L;;;;;N;;;;; +13C2F;EGYPTIAN HIEROGLYPH-13C2F;Lo;0;L;;;;;N;;;;; +13C30;EGYPTIAN HIEROGLYPH-13C30;Lo;0;L;;;;;N;;;;; +13C31;EGYPTIAN HIEROGLYPH-13C31;Lo;0;L;;;;;N;;;;; +13C32;EGYPTIAN HIEROGLYPH-13C32;Lo;0;L;;;;;N;;;;; +13C33;EGYPTIAN HIEROGLYPH-13C33;Lo;0;L;;;;;N;;;;; +13C34;EGYPTIAN HIEROGLYPH-13C34;Lo;0;L;;;;;N;;;;; +13C35;EGYPTIAN HIEROGLYPH-13C35;Lo;0;L;;;;;N;;;;; +13C36;EGYPTIAN HIEROGLYPH-13C36;Lo;0;L;;;;;N;;;;; +13C37;EGYPTIAN HIEROGLYPH-13C37;Lo;0;L;;;;;N;;;;; +13C38;EGYPTIAN HIEROGLYPH-13C38;Lo;0;L;;;;;N;;;;; +13C39;EGYPTIAN HIEROGLYPH-13C39;Lo;0;L;;;;;N;;;;; +13C3A;EGYPTIAN HIEROGLYPH-13C3A;Lo;0;L;;;;;N;;;;; +13C3B;EGYPTIAN HIEROGLYPH-13C3B;Lo;0;L;;;;;N;;;;; +13C3C;EGYPTIAN HIEROGLYPH-13C3C;Lo;0;L;;;;;N;;;;; +13C3D;EGYPTIAN HIEROGLYPH-13C3D;Lo;0;L;;;;;N;;;;; +13C3E;EGYPTIAN HIEROGLYPH-13C3E;Lo;0;L;;;;;N;;;;; +13C3F;EGYPTIAN HIEROGLYPH-13C3F;Lo;0;L;;;;;N;;;;; +13C40;EGYPTIAN HIEROGLYPH-13C40;Lo;0;L;;;;;N;;;;; +13C41;EGYPTIAN HIEROGLYPH-13C41;Lo;0;L;;;;;N;;;;; +13C42;EGYPTIAN HIEROGLYPH-13C42;Lo;0;L;;;;;N;;;;; +13C43;EGYPTIAN HIEROGLYPH-13C43;Lo;0;L;;;;;N;;;;; +13C44;EGYPTIAN HIEROGLYPH-13C44;Lo;0;L;;;;;N;;;;; +13C45;EGYPTIAN HIEROGLYPH-13C45;Lo;0;L;;;;;N;;;;; +13C46;EGYPTIAN HIEROGLYPH-13C46;Lo;0;L;;;;;N;;;;; +13C47;EGYPTIAN HIEROGLYPH-13C47;Lo;0;L;;;;;N;;;;; +13C48;EGYPTIAN HIEROGLYPH-13C48;Lo;0;L;;;;;N;;;;; +13C49;EGYPTIAN HIEROGLYPH-13C49;Lo;0;L;;;;;N;;;;; +13C4A;EGYPTIAN HIEROGLYPH-13C4A;Lo;0;L;;;;;N;;;;; +13C4B;EGYPTIAN HIEROGLYPH-13C4B;Lo;0;L;;;;;N;;;;; +13C4C;EGYPTIAN HIEROGLYPH-13C4C;Lo;0;L;;;;;N;;;;; +13C4D;EGYPTIAN HIEROGLYPH-13C4D;Lo;0;L;;;;;N;;;;; +13C4E;EGYPTIAN HIEROGLYPH-13C4E;Lo;0;L;;;;;N;;;;; +13C4F;EGYPTIAN HIEROGLYPH-13C4F;Lo;0;L;;;;;N;;;;; +13C50;EGYPTIAN HIEROGLYPH-13C50;Lo;0;L;;;;;N;;;;; +13C51;EGYPTIAN HIEROGLYPH-13C51;Lo;0;L;;;;;N;;;;; +13C52;EGYPTIAN HIEROGLYPH-13C52;Lo;0;L;;;;;N;;;;; +13C53;EGYPTIAN HIEROGLYPH-13C53;Lo;0;L;;;;;N;;;;; +13C54;EGYPTIAN HIEROGLYPH-13C54;Lo;0;L;;;;;N;;;;; +13C55;EGYPTIAN HIEROGLYPH-13C55;Lo;0;L;;;;;N;;;;; +13C56;EGYPTIAN HIEROGLYPH-13C56;Lo;0;L;;;;;N;;;;; +13C57;EGYPTIAN HIEROGLYPH-13C57;Lo;0;L;;;;;N;;;;; +13C58;EGYPTIAN HIEROGLYPH-13C58;Lo;0;L;;;;;N;;;;; +13C59;EGYPTIAN HIEROGLYPH-13C59;Lo;0;L;;;;;N;;;;; +13C5A;EGYPTIAN HIEROGLYPH-13C5A;Lo;0;L;;;;;N;;;;; +13C5B;EGYPTIAN HIEROGLYPH-13C5B;Lo;0;L;;;;;N;;;;; +13C5C;EGYPTIAN HIEROGLYPH-13C5C;Lo;0;L;;;;;N;;;;; +13C5D;EGYPTIAN HIEROGLYPH-13C5D;Lo;0;L;;;;;N;;;;; +13C5E;EGYPTIAN HIEROGLYPH-13C5E;Lo;0;L;;;;;N;;;;; +13C5F;EGYPTIAN HIEROGLYPH-13C5F;Lo;0;L;;;;;N;;;;; +13C60;EGYPTIAN HIEROGLYPH-13C60;Lo;0;L;;;;;N;;;;; +13C61;EGYPTIAN HIEROGLYPH-13C61;Lo;0;L;;;;;N;;;;; +13C62;EGYPTIAN HIEROGLYPH-13C62;Lo;0;L;;;;;N;;;;; +13C63;EGYPTIAN HIEROGLYPH-13C63;Lo;0;L;;;;;N;;;;; +13C64;EGYPTIAN HIEROGLYPH-13C64;Lo;0;L;;;;;N;;;;; +13C65;EGYPTIAN HIEROGLYPH-13C65;Lo;0;L;;;;;N;;;;; +13C66;EGYPTIAN HIEROGLYPH-13C66;Lo;0;L;;;;;N;;;;; +13C67;EGYPTIAN HIEROGLYPH-13C67;Lo;0;L;;;;;N;;;;; +13C68;EGYPTIAN HIEROGLYPH-13C68;Lo;0;L;;;;;N;;;;; +13C69;EGYPTIAN HIEROGLYPH-13C69;Lo;0;L;;;;;N;;;;; +13C6A;EGYPTIAN HIEROGLYPH-13C6A;Lo;0;L;;;;;N;;;;; +13C6B;EGYPTIAN HIEROGLYPH-13C6B;Lo;0;L;;;;;N;;;;; +13C6C;EGYPTIAN HIEROGLYPH-13C6C;Lo;0;L;;;;;N;;;;; +13C6D;EGYPTIAN HIEROGLYPH-13C6D;Lo;0;L;;;;;N;;;;; +13C6E;EGYPTIAN HIEROGLYPH-13C6E;Lo;0;L;;;;;N;;;;; +13C6F;EGYPTIAN HIEROGLYPH-13C6F;Lo;0;L;;;;;N;;;;; +13C70;EGYPTIAN HIEROGLYPH-13C70;Lo;0;L;;;;;N;;;;; +13C71;EGYPTIAN HIEROGLYPH-13C71;Lo;0;L;;;;;N;;;;; +13C72;EGYPTIAN HIEROGLYPH-13C72;Lo;0;L;;;;;N;;;;; +13C73;EGYPTIAN HIEROGLYPH-13C73;Lo;0;L;;;;;N;;;;; +13C74;EGYPTIAN HIEROGLYPH-13C74;Lo;0;L;;;;;N;;;;; +13C75;EGYPTIAN HIEROGLYPH-13C75;Lo;0;L;;;;;N;;;;; +13C76;EGYPTIAN HIEROGLYPH-13C76;Lo;0;L;;;;;N;;;;; +13C77;EGYPTIAN HIEROGLYPH-13C77;Lo;0;L;;;;;N;;;;; +13C78;EGYPTIAN HIEROGLYPH-13C78;Lo;0;L;;;;;N;;;;; +13C79;EGYPTIAN HIEROGLYPH-13C79;Lo;0;L;;;;;N;;;;; +13C7A;EGYPTIAN HIEROGLYPH-13C7A;Lo;0;L;;;;;N;;;;; +13C7B;EGYPTIAN HIEROGLYPH-13C7B;Lo;0;L;;;;;N;;;;; +13C7C;EGYPTIAN HIEROGLYPH-13C7C;Lo;0;L;;;;;N;;;;; +13C7D;EGYPTIAN HIEROGLYPH-13C7D;Lo;0;L;;;;;N;;;;; +13C7E;EGYPTIAN HIEROGLYPH-13C7E;Lo;0;L;;;;;N;;;;; +13C7F;EGYPTIAN HIEROGLYPH-13C7F;Lo;0;L;;;;;N;;;;; +13C80;EGYPTIAN HIEROGLYPH-13C80;Lo;0;L;;;;;N;;;;; +13C81;EGYPTIAN HIEROGLYPH-13C81;Lo;0;L;;;;;N;;;;; +13C82;EGYPTIAN HIEROGLYPH-13C82;Lo;0;L;;;;;N;;;;; +13C83;EGYPTIAN HIEROGLYPH-13C83;Lo;0;L;;;;;N;;;;; +13C84;EGYPTIAN HIEROGLYPH-13C84;Lo;0;L;;;;;N;;;;; +13C85;EGYPTIAN HIEROGLYPH-13C85;Lo;0;L;;;;;N;;;;; +13C86;EGYPTIAN HIEROGLYPH-13C86;Lo;0;L;;;;;N;;;;; +13C87;EGYPTIAN HIEROGLYPH-13C87;Lo;0;L;;;;;N;;;;; +13C88;EGYPTIAN HIEROGLYPH-13C88;Lo;0;L;;;;;N;;;;; +13C89;EGYPTIAN HIEROGLYPH-13C89;Lo;0;L;;;;;N;;;;; +13C8A;EGYPTIAN HIEROGLYPH-13C8A;Lo;0;L;;;;;N;;;;; +13C8B;EGYPTIAN HIEROGLYPH-13C8B;Lo;0;L;;;;;N;;;;; +13C8C;EGYPTIAN HIEROGLYPH-13C8C;Lo;0;L;;;;;N;;;;; +13C8D;EGYPTIAN HIEROGLYPH-13C8D;Lo;0;L;;;;;N;;;;; +13C8E;EGYPTIAN HIEROGLYPH-13C8E;Lo;0;L;;;;;N;;;;; +13C8F;EGYPTIAN HIEROGLYPH-13C8F;Lo;0;L;;;;;N;;;;; +13C90;EGYPTIAN HIEROGLYPH-13C90;Lo;0;L;;;;;N;;;;; +13C91;EGYPTIAN HIEROGLYPH-13C91;Lo;0;L;;;;;N;;;;; +13C92;EGYPTIAN HIEROGLYPH-13C92;Lo;0;L;;;;;N;;;;; +13C93;EGYPTIAN HIEROGLYPH-13C93;Lo;0;L;;;;;N;;;;; +13C94;EGYPTIAN HIEROGLYPH-13C94;Lo;0;L;;;;;N;;;;; +13C95;EGYPTIAN HIEROGLYPH-13C95;Lo;0;L;;;;;N;;;;; +13C96;EGYPTIAN HIEROGLYPH-13C96;Lo;0;L;;;;;N;;;;; +13C97;EGYPTIAN HIEROGLYPH-13C97;Lo;0;L;;;;;N;;;;; +13C98;EGYPTIAN HIEROGLYPH-13C98;Lo;0;L;;;;;N;;;;; +13C99;EGYPTIAN HIEROGLYPH-13C99;Lo;0;L;;;;;N;;;;; +13C9A;EGYPTIAN HIEROGLYPH-13C9A;Lo;0;L;;;;;N;;;;; +13C9B;EGYPTIAN HIEROGLYPH-13C9B;Lo;0;L;;;;;N;;;;; +13C9C;EGYPTIAN HIEROGLYPH-13C9C;Lo;0;L;;;;;N;;;;; +13C9D;EGYPTIAN HIEROGLYPH-13C9D;Lo;0;L;;;;;N;;;;; +13C9E;EGYPTIAN HIEROGLYPH-13C9E;Lo;0;L;;;;;N;;;;; +13C9F;EGYPTIAN HIEROGLYPH-13C9F;Lo;0;L;;;;;N;;;;; +13CA0;EGYPTIAN HIEROGLYPH-13CA0;Lo;0;L;;;;;N;;;;; +13CA1;EGYPTIAN HIEROGLYPH-13CA1;Lo;0;L;;;;;N;;;;; +13CA2;EGYPTIAN HIEROGLYPH-13CA2;Lo;0;L;;;;;N;;;;; +13CA3;EGYPTIAN HIEROGLYPH-13CA3;Lo;0;L;;;;;N;;;;; +13CA4;EGYPTIAN HIEROGLYPH-13CA4;Lo;0;L;;;;;N;;;;; +13CA5;EGYPTIAN HIEROGLYPH-13CA5;Lo;0;L;;;;;N;;;;; +13CA6;EGYPTIAN HIEROGLYPH-13CA6;Lo;0;L;;;;;N;;;;; +13CA7;EGYPTIAN HIEROGLYPH-13CA7;Lo;0;L;;;;;N;;;;; +13CA8;EGYPTIAN HIEROGLYPH-13CA8;Lo;0;L;;;;;N;;;;; +13CA9;EGYPTIAN HIEROGLYPH-13CA9;Lo;0;L;;;;;N;;;;; +13CAA;EGYPTIAN HIEROGLYPH-13CAA;Lo;0;L;;;;;N;;;;; +13CAB;EGYPTIAN HIEROGLYPH-13CAB;Lo;0;L;;;;;N;;;;; +13CAC;EGYPTIAN HIEROGLYPH-13CAC;Lo;0;L;;;;;N;;;;; +13CAD;EGYPTIAN HIEROGLYPH-13CAD;Lo;0;L;;;;;N;;;;; +13CAE;EGYPTIAN HIEROGLYPH-13CAE;Lo;0;L;;;;;N;;;;; +13CAF;EGYPTIAN HIEROGLYPH-13CAF;Lo;0;L;;;;;N;;;;; +13CB0;EGYPTIAN HIEROGLYPH-13CB0;Lo;0;L;;;;;N;;;;; +13CB1;EGYPTIAN HIEROGLYPH-13CB1;Lo;0;L;;;;;N;;;;; +13CB2;EGYPTIAN HIEROGLYPH-13CB2;Lo;0;L;;;;;N;;;;; +13CB3;EGYPTIAN HIEROGLYPH-13CB3;Lo;0;L;;;;;N;;;;; +13CB4;EGYPTIAN HIEROGLYPH-13CB4;Lo;0;L;;;;;N;;;;; +13CB5;EGYPTIAN HIEROGLYPH-13CB5;Lo;0;L;;;;;N;;;;; +13CB6;EGYPTIAN HIEROGLYPH-13CB6;Lo;0;L;;;;;N;;;;; +13CB7;EGYPTIAN HIEROGLYPH-13CB7;Lo;0;L;;;;;N;;;;; +13CB8;EGYPTIAN HIEROGLYPH-13CB8;Lo;0;L;;;;;N;;;;; +13CB9;EGYPTIAN HIEROGLYPH-13CB9;Lo;0;L;;;;;N;;;;; +13CBA;EGYPTIAN HIEROGLYPH-13CBA;Lo;0;L;;;;;N;;;;; +13CBB;EGYPTIAN HIEROGLYPH-13CBB;Lo;0;L;;;;;N;;;;; +13CBC;EGYPTIAN HIEROGLYPH-13CBC;Lo;0;L;;;;;N;;;;; +13CBD;EGYPTIAN HIEROGLYPH-13CBD;Lo;0;L;;;;;N;;;;; +13CBE;EGYPTIAN HIEROGLYPH-13CBE;Lo;0;L;;;;;N;;;;; +13CBF;EGYPTIAN HIEROGLYPH-13CBF;Lo;0;L;;;;;N;;;;; +13CC0;EGYPTIAN HIEROGLYPH-13CC0;Lo;0;L;;;;;N;;;;; +13CC1;EGYPTIAN HIEROGLYPH-13CC1;Lo;0;L;;;;;N;;;;; +13CC2;EGYPTIAN HIEROGLYPH-13CC2;Lo;0;L;;;;;N;;;;; +13CC3;EGYPTIAN HIEROGLYPH-13CC3;Lo;0;L;;;;;N;;;;; +13CC4;EGYPTIAN HIEROGLYPH-13CC4;Lo;0;L;;;;;N;;;;; +13CC5;EGYPTIAN HIEROGLYPH-13CC5;Lo;0;L;;;;;N;;;;; +13CC6;EGYPTIAN HIEROGLYPH-13CC6;Lo;0;L;;;;;N;;;;; +13CC7;EGYPTIAN HIEROGLYPH-13CC7;Lo;0;L;;;;;N;;;;; +13CC8;EGYPTIAN HIEROGLYPH-13CC8;Lo;0;L;;;;;N;;;;; +13CC9;EGYPTIAN HIEROGLYPH-13CC9;Lo;0;L;;;;;N;;;;; +13CCA;EGYPTIAN HIEROGLYPH-13CCA;Lo;0;L;;;;;N;;;;; +13CCB;EGYPTIAN HIEROGLYPH-13CCB;Lo;0;L;;;;;N;;;;; +13CCC;EGYPTIAN HIEROGLYPH-13CCC;Lo;0;L;;;;;N;;;;; +13CCD;EGYPTIAN HIEROGLYPH-13CCD;Lo;0;L;;;;;N;;;;; +13CCE;EGYPTIAN HIEROGLYPH-13CCE;Lo;0;L;;;;;N;;;;; +13CCF;EGYPTIAN HIEROGLYPH-13CCF;Lo;0;L;;;;;N;;;;; +13CD0;EGYPTIAN HIEROGLYPH-13CD0;Lo;0;L;;;;;N;;;;; +13CD1;EGYPTIAN HIEROGLYPH-13CD1;Lo;0;L;;;;;N;;;;; +13CD2;EGYPTIAN HIEROGLYPH-13CD2;Lo;0;L;;;;;N;;;;; +13CD3;EGYPTIAN HIEROGLYPH-13CD3;Lo;0;L;;;;;N;;;;; +13CD4;EGYPTIAN HIEROGLYPH-13CD4;Lo;0;L;;;;;N;;;;; +13CD5;EGYPTIAN HIEROGLYPH-13CD5;Lo;0;L;;;;;N;;;;; +13CD6;EGYPTIAN HIEROGLYPH-13CD6;Lo;0;L;;;;;N;;;;; +13CD7;EGYPTIAN HIEROGLYPH-13CD7;Lo;0;L;;;;;N;;;;; +13CD8;EGYPTIAN HIEROGLYPH-13CD8;Lo;0;L;;;;;N;;;;; +13CD9;EGYPTIAN HIEROGLYPH-13CD9;Lo;0;L;;;;;N;;;;; +13CDA;EGYPTIAN HIEROGLYPH-13CDA;Lo;0;L;;;;;N;;;;; +13CDB;EGYPTIAN HIEROGLYPH-13CDB;Lo;0;L;;;;;N;;;;; +13CDC;EGYPTIAN HIEROGLYPH-13CDC;Lo;0;L;;;;;N;;;;; +13CDD;EGYPTIAN HIEROGLYPH-13CDD;Lo;0;L;;;;;N;;;;; +13CDE;EGYPTIAN HIEROGLYPH-13CDE;Lo;0;L;;;;;N;;;;; +13CDF;EGYPTIAN HIEROGLYPH-13CDF;Lo;0;L;;;;;N;;;;; +13CE0;EGYPTIAN HIEROGLYPH-13CE0;Lo;0;L;;;;;N;;;;; +13CE1;EGYPTIAN HIEROGLYPH-13CE1;Lo;0;L;;;;;N;;;;; +13CE2;EGYPTIAN HIEROGLYPH-13CE2;Lo;0;L;;;;;N;;;;; +13CE3;EGYPTIAN HIEROGLYPH-13CE3;Lo;0;L;;;;;N;;;;; +13CE4;EGYPTIAN HIEROGLYPH-13CE4;Lo;0;L;;;;;N;;;;; +13CE5;EGYPTIAN HIEROGLYPH-13CE5;Lo;0;L;;;;;N;;;;; +13CE6;EGYPTIAN HIEROGLYPH-13CE6;Lo;0;L;;;;;N;;;;; +13CE7;EGYPTIAN HIEROGLYPH-13CE7;Lo;0;L;;;;;N;;;;; +13CE8;EGYPTIAN HIEROGLYPH-13CE8;Lo;0;L;;;;;N;;;;; +13CE9;EGYPTIAN HIEROGLYPH-13CE9;Lo;0;L;;;;;N;;;;; +13CEA;EGYPTIAN HIEROGLYPH-13CEA;Lo;0;L;;;;;N;;;;; +13CEB;EGYPTIAN HIEROGLYPH-13CEB;Lo;0;L;;;;;N;;;;; +13CEC;EGYPTIAN HIEROGLYPH-13CEC;Lo;0;L;;;;;N;;;;; +13CED;EGYPTIAN HIEROGLYPH-13CED;Lo;0;L;;;;;N;;;;; +13CEE;EGYPTIAN HIEROGLYPH-13CEE;Lo;0;L;;;;;N;;;;; +13CEF;EGYPTIAN HIEROGLYPH-13CEF;Lo;0;L;;;;;N;;;;; +13CF0;EGYPTIAN HIEROGLYPH-13CF0;Lo;0;L;;;;;N;;;;; +13CF1;EGYPTIAN HIEROGLYPH-13CF1;Lo;0;L;;;;;N;;;;; +13CF2;EGYPTIAN HIEROGLYPH-13CF2;Lo;0;L;;;;;N;;;;; +13CF3;EGYPTIAN HIEROGLYPH-13CF3;Lo;0;L;;;;;N;;;;; +13CF4;EGYPTIAN HIEROGLYPH-13CF4;Lo;0;L;;;;;N;;;;; +13CF5;EGYPTIAN HIEROGLYPH-13CF5;Lo;0;L;;;;;N;;;;; +13CF6;EGYPTIAN HIEROGLYPH-13CF6;Lo;0;L;;;;;N;;;;; +13CF7;EGYPTIAN HIEROGLYPH-13CF7;Lo;0;L;;;;;N;;;;; +13CF8;EGYPTIAN HIEROGLYPH-13CF8;Lo;0;L;;;;;N;;;;; +13CF9;EGYPTIAN HIEROGLYPH-13CF9;Lo;0;L;;;;;N;;;;; +13CFA;EGYPTIAN HIEROGLYPH-13CFA;Lo;0;L;;;;;N;;;;; +13CFB;EGYPTIAN HIEROGLYPH-13CFB;Lo;0;L;;;;;N;;;;; +13CFC;EGYPTIAN HIEROGLYPH-13CFC;Lo;0;L;;;;;N;;;;; +13CFD;EGYPTIAN HIEROGLYPH-13CFD;Lo;0;L;;;;;N;;;;; +13CFE;EGYPTIAN HIEROGLYPH-13CFE;Lo;0;L;;;;;N;;;;; +13CFF;EGYPTIAN HIEROGLYPH-13CFF;Lo;0;L;;;;;N;;;;; +13D00;EGYPTIAN HIEROGLYPH-13D00;Lo;0;L;;;;;N;;;;; +13D01;EGYPTIAN HIEROGLYPH-13D01;Lo;0;L;;;;;N;;;;; +13D02;EGYPTIAN HIEROGLYPH-13D02;Lo;0;L;;;;;N;;;;; +13D03;EGYPTIAN HIEROGLYPH-13D03;Lo;0;L;;;;;N;;;;; +13D04;EGYPTIAN HIEROGLYPH-13D04;Lo;0;L;;;;;N;;;;; +13D05;EGYPTIAN HIEROGLYPH-13D05;Lo;0;L;;;;;N;;;;; +13D06;EGYPTIAN HIEROGLYPH-13D06;Lo;0;L;;;;;N;;;;; +13D07;EGYPTIAN HIEROGLYPH-13D07;Lo;0;L;;;;;N;;;;; +13D08;EGYPTIAN HIEROGLYPH-13D08;Lo;0;L;;;;;N;;;;; +13D09;EGYPTIAN HIEROGLYPH-13D09;Lo;0;L;;;;;N;;;;; +13D0A;EGYPTIAN HIEROGLYPH-13D0A;Lo;0;L;;;;;N;;;;; +13D0B;EGYPTIAN HIEROGLYPH-13D0B;Lo;0;L;;;;;N;;;;; +13D0C;EGYPTIAN HIEROGLYPH-13D0C;Lo;0;L;;;;;N;;;;; +13D0D;EGYPTIAN HIEROGLYPH-13D0D;Lo;0;L;;;;;N;;;;; +13D0E;EGYPTIAN HIEROGLYPH-13D0E;Lo;0;L;;;;;N;;;;; +13D0F;EGYPTIAN HIEROGLYPH-13D0F;Lo;0;L;;;;;N;;;;; +13D10;EGYPTIAN HIEROGLYPH-13D10;Lo;0;L;;;;;N;;;;; +13D11;EGYPTIAN HIEROGLYPH-13D11;Lo;0;L;;;;;N;;;;; +13D12;EGYPTIAN HIEROGLYPH-13D12;Lo;0;L;;;;;N;;;;; +13D13;EGYPTIAN HIEROGLYPH-13D13;Lo;0;L;;;;;N;;;;; +13D14;EGYPTIAN HIEROGLYPH-13D14;Lo;0;L;;;;;N;;;;; +13D15;EGYPTIAN HIEROGLYPH-13D15;Lo;0;L;;;;;N;;;;; +13D16;EGYPTIAN HIEROGLYPH-13D16;Lo;0;L;;;;;N;;;;; +13D17;EGYPTIAN HIEROGLYPH-13D17;Lo;0;L;;;;;N;;;;; +13D18;EGYPTIAN HIEROGLYPH-13D18;Lo;0;L;;;;;N;;;;; +13D19;EGYPTIAN HIEROGLYPH-13D19;Lo;0;L;;;;;N;;;;; +13D1A;EGYPTIAN HIEROGLYPH-13D1A;Lo;0;L;;;;;N;;;;; +13D1B;EGYPTIAN HIEROGLYPH-13D1B;Lo;0;L;;;;;N;;;;; +13D1C;EGYPTIAN HIEROGLYPH-13D1C;Lo;0;L;;;;;N;;;;; +13D1D;EGYPTIAN HIEROGLYPH-13D1D;Lo;0;L;;;;;N;;;;; +13D1E;EGYPTIAN HIEROGLYPH-13D1E;Lo;0;L;;;;;N;;;;; +13D1F;EGYPTIAN HIEROGLYPH-13D1F;Lo;0;L;;;;;N;;;;; +13D20;EGYPTIAN HIEROGLYPH-13D20;Lo;0;L;;;;;N;;;;; +13D21;EGYPTIAN HIEROGLYPH-13D21;Lo;0;L;;;;;N;;;;; +13D22;EGYPTIAN HIEROGLYPH-13D22;Lo;0;L;;;;;N;;;;; +13D23;EGYPTIAN HIEROGLYPH-13D23;Lo;0;L;;;;;N;;;;; +13D24;EGYPTIAN HIEROGLYPH-13D24;Lo;0;L;;;;;N;;;;; +13D25;EGYPTIAN HIEROGLYPH-13D25;Lo;0;L;;;;;N;;;;; +13D26;EGYPTIAN HIEROGLYPH-13D26;Lo;0;L;;;;;N;;;;; +13D27;EGYPTIAN HIEROGLYPH-13D27;Lo;0;L;;;;;N;;;;; +13D28;EGYPTIAN HIEROGLYPH-13D28;Lo;0;L;;;;;N;;;;; +13D29;EGYPTIAN HIEROGLYPH-13D29;Lo;0;L;;;;;N;;;;; +13D2A;EGYPTIAN HIEROGLYPH-13D2A;Lo;0;L;;;;;N;;;;; +13D2B;EGYPTIAN HIEROGLYPH-13D2B;Lo;0;L;;;;;N;;;;; +13D2C;EGYPTIAN HIEROGLYPH-13D2C;Lo;0;L;;;;;N;;;;; +13D2D;EGYPTIAN HIEROGLYPH-13D2D;Lo;0;L;;;;;N;;;;; +13D2E;EGYPTIAN HIEROGLYPH-13D2E;Lo;0;L;;;;;N;;;;; +13D2F;EGYPTIAN HIEROGLYPH-13D2F;Lo;0;L;;;;;N;;;;; +13D30;EGYPTIAN HIEROGLYPH-13D30;Lo;0;L;;;;;N;;;;; +13D31;EGYPTIAN HIEROGLYPH-13D31;Lo;0;L;;;;;N;;;;; +13D32;EGYPTIAN HIEROGLYPH-13D32;Lo;0;L;;;;;N;;;;; +13D33;EGYPTIAN HIEROGLYPH-13D33;Lo;0;L;;;;;N;;;;; +13D34;EGYPTIAN HIEROGLYPH-13D34;Lo;0;L;;;;;N;;;;; +13D35;EGYPTIAN HIEROGLYPH-13D35;Lo;0;L;;;;;N;;;;; +13D36;EGYPTIAN HIEROGLYPH-13D36;Lo;0;L;;;;;N;;;;; +13D37;EGYPTIAN HIEROGLYPH-13D37;Lo;0;L;;;;;N;;;;; +13D38;EGYPTIAN HIEROGLYPH-13D38;Lo;0;L;;;;;N;;;;; +13D39;EGYPTIAN HIEROGLYPH-13D39;Lo;0;L;;;;;N;;;;; +13D3A;EGYPTIAN HIEROGLYPH-13D3A;Lo;0;L;;;;;N;;;;; +13D3B;EGYPTIAN HIEROGLYPH-13D3B;Lo;0;L;;;;;N;;;;; +13D3C;EGYPTIAN HIEROGLYPH-13D3C;Lo;0;L;;;;;N;;;;; +13D3D;EGYPTIAN HIEROGLYPH-13D3D;Lo;0;L;;;;;N;;;;; +13D3E;EGYPTIAN HIEROGLYPH-13D3E;Lo;0;L;;;;;N;;;;; +13D3F;EGYPTIAN HIEROGLYPH-13D3F;Lo;0;L;;;;;N;;;;; +13D40;EGYPTIAN HIEROGLYPH-13D40;Lo;0;L;;;;;N;;;;; +13D41;EGYPTIAN HIEROGLYPH-13D41;Lo;0;L;;;;;N;;;;; +13D42;EGYPTIAN HIEROGLYPH-13D42;Lo;0;L;;;;;N;;;;; +13D43;EGYPTIAN HIEROGLYPH-13D43;Lo;0;L;;;;;N;;;;; +13D44;EGYPTIAN HIEROGLYPH-13D44;Lo;0;L;;;;;N;;;;; +13D45;EGYPTIAN HIEROGLYPH-13D45;Lo;0;L;;;;;N;;;;; +13D46;EGYPTIAN HIEROGLYPH-13D46;Lo;0;L;;;;;N;;;;; +13D47;EGYPTIAN HIEROGLYPH-13D47;Lo;0;L;;;;;N;;;;; +13D48;EGYPTIAN HIEROGLYPH-13D48;Lo;0;L;;;;;N;;;;; +13D49;EGYPTIAN HIEROGLYPH-13D49;Lo;0;L;;;;;N;;;;; +13D4A;EGYPTIAN HIEROGLYPH-13D4A;Lo;0;L;;;;;N;;;;; +13D4B;EGYPTIAN HIEROGLYPH-13D4B;Lo;0;L;;;;;N;;;;; +13D4C;EGYPTIAN HIEROGLYPH-13D4C;Lo;0;L;;;;;N;;;;; +13D4D;EGYPTIAN HIEROGLYPH-13D4D;Lo;0;L;;;;;N;;;;; +13D4E;EGYPTIAN HIEROGLYPH-13D4E;Lo;0;L;;;;;N;;;;; +13D4F;EGYPTIAN HIEROGLYPH-13D4F;Lo;0;L;;;;;N;;;;; +13D50;EGYPTIAN HIEROGLYPH-13D50;Lo;0;L;;;;;N;;;;; +13D51;EGYPTIAN HIEROGLYPH-13D51;Lo;0;L;;;;;N;;;;; +13D52;EGYPTIAN HIEROGLYPH-13D52;Lo;0;L;;;;;N;;;;; +13D53;EGYPTIAN HIEROGLYPH-13D53;Lo;0;L;;;;;N;;;;; +13D54;EGYPTIAN HIEROGLYPH-13D54;Lo;0;L;;;;;N;;;;; +13D55;EGYPTIAN HIEROGLYPH-13D55;Lo;0;L;;;;;N;;;;; +13D56;EGYPTIAN HIEROGLYPH-13D56;Lo;0;L;;;;;N;;;;; +13D57;EGYPTIAN HIEROGLYPH-13D57;Lo;0;L;;;;;N;;;;; +13D58;EGYPTIAN HIEROGLYPH-13D58;Lo;0;L;;;;;N;;;;; +13D59;EGYPTIAN HIEROGLYPH-13D59;Lo;0;L;;;;;N;;;;; +13D5A;EGYPTIAN HIEROGLYPH-13D5A;Lo;0;L;;;;;N;;;;; +13D5B;EGYPTIAN HIEROGLYPH-13D5B;Lo;0;L;;;;;N;;;;; +13D5C;EGYPTIAN HIEROGLYPH-13D5C;Lo;0;L;;;;;N;;;;; +13D5D;EGYPTIAN HIEROGLYPH-13D5D;Lo;0;L;;;;;N;;;;; +13D5E;EGYPTIAN HIEROGLYPH-13D5E;Lo;0;L;;;;;N;;;;; +13D5F;EGYPTIAN HIEROGLYPH-13D5F;Lo;0;L;;;;;N;;;;; +13D60;EGYPTIAN HIEROGLYPH-13D60;Lo;0;L;;;;;N;;;;; +13D61;EGYPTIAN HIEROGLYPH-13D61;Lo;0;L;;;;;N;;;;; +13D62;EGYPTIAN HIEROGLYPH-13D62;Lo;0;L;;;;;N;;;;; +13D63;EGYPTIAN HIEROGLYPH-13D63;Lo;0;L;;;;;N;;;;; +13D64;EGYPTIAN HIEROGLYPH-13D64;Lo;0;L;;;;;N;;;;; +13D65;EGYPTIAN HIEROGLYPH-13D65;Lo;0;L;;;;;N;;;;; +13D66;EGYPTIAN HIEROGLYPH-13D66;Lo;0;L;;;;;N;;;;; +13D67;EGYPTIAN HIEROGLYPH-13D67;Lo;0;L;;;;;N;;;;; +13D68;EGYPTIAN HIEROGLYPH-13D68;Lo;0;L;;;;;N;;;;; +13D69;EGYPTIAN HIEROGLYPH-13D69;Lo;0;L;;;;;N;;;;; +13D6A;EGYPTIAN HIEROGLYPH-13D6A;Lo;0;L;;;;;N;;;;; +13D6B;EGYPTIAN HIEROGLYPH-13D6B;Lo;0;L;;;;;N;;;;; +13D6C;EGYPTIAN HIEROGLYPH-13D6C;Lo;0;L;;;;;N;;;;; +13D6D;EGYPTIAN HIEROGLYPH-13D6D;Lo;0;L;;;;;N;;;;; +13D6E;EGYPTIAN HIEROGLYPH-13D6E;Lo;0;L;;;;;N;;;;; +13D6F;EGYPTIAN HIEROGLYPH-13D6F;Lo;0;L;;;;;N;;;;; +13D70;EGYPTIAN HIEROGLYPH-13D70;Lo;0;L;;;;;N;;;;; +13D71;EGYPTIAN HIEROGLYPH-13D71;Lo;0;L;;;;;N;;;;; +13D72;EGYPTIAN HIEROGLYPH-13D72;Lo;0;L;;;;;N;;;;; +13D73;EGYPTIAN HIEROGLYPH-13D73;Lo;0;L;;;;;N;;;;; +13D74;EGYPTIAN HIEROGLYPH-13D74;Lo;0;L;;;;;N;;;;; +13D75;EGYPTIAN HIEROGLYPH-13D75;Lo;0;L;;;;;N;;;;; +13D76;EGYPTIAN HIEROGLYPH-13D76;Lo;0;L;;;;;N;;;;; +13D77;EGYPTIAN HIEROGLYPH-13D77;Lo;0;L;;;;;N;;;;; +13D78;EGYPTIAN HIEROGLYPH-13D78;Lo;0;L;;;;;N;;;;; +13D79;EGYPTIAN HIEROGLYPH-13D79;Lo;0;L;;;;;N;;;;; +13D7A;EGYPTIAN HIEROGLYPH-13D7A;Lo;0;L;;;;;N;;;;; +13D7B;EGYPTIAN HIEROGLYPH-13D7B;Lo;0;L;;;;;N;;;;; +13D7C;EGYPTIAN HIEROGLYPH-13D7C;Lo;0;L;;;;;N;;;;; +13D7D;EGYPTIAN HIEROGLYPH-13D7D;Lo;0;L;;;;;N;;;;; +13D7E;EGYPTIAN HIEROGLYPH-13D7E;Lo;0;L;;;;;N;;;;; +13D7F;EGYPTIAN HIEROGLYPH-13D7F;Lo;0;L;;;;;N;;;;; +13D80;EGYPTIAN HIEROGLYPH-13D80;Lo;0;L;;;;;N;;;;; +13D81;EGYPTIAN HIEROGLYPH-13D81;Lo;0;L;;;;;N;;;;; +13D82;EGYPTIAN HIEROGLYPH-13D82;Lo;0;L;;;;;N;;;;; +13D83;EGYPTIAN HIEROGLYPH-13D83;Lo;0;L;;;;;N;;;;; +13D84;EGYPTIAN HIEROGLYPH-13D84;Lo;0;L;;;;;N;;;;; +13D85;EGYPTIAN HIEROGLYPH-13D85;Lo;0;L;;;;;N;;;;; +13D86;EGYPTIAN HIEROGLYPH-13D86;Lo;0;L;;;;;N;;;;; +13D87;EGYPTIAN HIEROGLYPH-13D87;Lo;0;L;;;;;N;;;;; +13D88;EGYPTIAN HIEROGLYPH-13D88;Lo;0;L;;;;;N;;;;; +13D89;EGYPTIAN HIEROGLYPH-13D89;Lo;0;L;;;;;N;;;;; +13D8A;EGYPTIAN HIEROGLYPH-13D8A;Lo;0;L;;;;;N;;;;; +13D8B;EGYPTIAN HIEROGLYPH-13D8B;Lo;0;L;;;;;N;;;;; +13D8C;EGYPTIAN HIEROGLYPH-13D8C;Lo;0;L;;;;;N;;;;; +13D8D;EGYPTIAN HIEROGLYPH-13D8D;Lo;0;L;;;;;N;;;;; +13D8E;EGYPTIAN HIEROGLYPH-13D8E;Lo;0;L;;;;;N;;;;; +13D8F;EGYPTIAN HIEROGLYPH-13D8F;Lo;0;L;;;;;N;;;;; +13D90;EGYPTIAN HIEROGLYPH-13D90;Lo;0;L;;;;;N;;;;; +13D91;EGYPTIAN HIEROGLYPH-13D91;Lo;0;L;;;;;N;;;;; +13D92;EGYPTIAN HIEROGLYPH-13D92;Lo;0;L;;;;;N;;;;; +13D93;EGYPTIAN HIEROGLYPH-13D93;Lo;0;L;;;;;N;;;;; +13D94;EGYPTIAN HIEROGLYPH-13D94;Lo;0;L;;;;;N;;;;; +13D95;EGYPTIAN HIEROGLYPH-13D95;Lo;0;L;;;;;N;;;;; +13D96;EGYPTIAN HIEROGLYPH-13D96;Lo;0;L;;;;;N;;;;; +13D97;EGYPTIAN HIEROGLYPH-13D97;Lo;0;L;;;;;N;;;;; +13D98;EGYPTIAN HIEROGLYPH-13D98;Lo;0;L;;;;;N;;;;; +13D99;EGYPTIAN HIEROGLYPH-13D99;Lo;0;L;;;;;N;;;;; +13D9A;EGYPTIAN HIEROGLYPH-13D9A;Lo;0;L;;;;;N;;;;; +13D9B;EGYPTIAN HIEROGLYPH-13D9B;Lo;0;L;;;;;N;;;;; +13D9C;EGYPTIAN HIEROGLYPH-13D9C;Lo;0;L;;;;;N;;;;; +13D9D;EGYPTIAN HIEROGLYPH-13D9D;Lo;0;L;;;;;N;;;;; +13D9E;EGYPTIAN HIEROGLYPH-13D9E;Lo;0;L;;;;;N;;;;; +13D9F;EGYPTIAN HIEROGLYPH-13D9F;Lo;0;L;;;;;N;;;;; +13DA0;EGYPTIAN HIEROGLYPH-13DA0;Lo;0;L;;;;;N;;;;; +13DA1;EGYPTIAN HIEROGLYPH-13DA1;Lo;0;L;;;;;N;;;;; +13DA2;EGYPTIAN HIEROGLYPH-13DA2;Lo;0;L;;;;;N;;;;; +13DA3;EGYPTIAN HIEROGLYPH-13DA3;Lo;0;L;;;;;N;;;;; +13DA4;EGYPTIAN HIEROGLYPH-13DA4;Lo;0;L;;;;;N;;;;; +13DA5;EGYPTIAN HIEROGLYPH-13DA5;Lo;0;L;;;;;N;;;;; +13DA6;EGYPTIAN HIEROGLYPH-13DA6;Lo;0;L;;;;;N;;;;; +13DA7;EGYPTIAN HIEROGLYPH-13DA7;Lo;0;L;;;;;N;;;;; +13DA8;EGYPTIAN HIEROGLYPH-13DA8;Lo;0;L;;;;;N;;;;; +13DA9;EGYPTIAN HIEROGLYPH-13DA9;Lo;0;L;;;;;N;;;;; +13DAA;EGYPTIAN HIEROGLYPH-13DAA;Lo;0;L;;;;;N;;;;; +13DAB;EGYPTIAN HIEROGLYPH-13DAB;Lo;0;L;;;;;N;;;;; +13DAC;EGYPTIAN HIEROGLYPH-13DAC;Lo;0;L;;;;;N;;;;; +13DAD;EGYPTIAN HIEROGLYPH-13DAD;Lo;0;L;;;;;N;;;;; +13DAE;EGYPTIAN HIEROGLYPH-13DAE;Lo;0;L;;;;;N;;;;; +13DAF;EGYPTIAN HIEROGLYPH-13DAF;Lo;0;L;;;;;N;;;;; +13DB0;EGYPTIAN HIEROGLYPH-13DB0;Lo;0;L;;;;;N;;;;; +13DB1;EGYPTIAN HIEROGLYPH-13DB1;Lo;0;L;;;;;N;;;;; +13DB2;EGYPTIAN HIEROGLYPH-13DB2;Lo;0;L;;;;;N;;;;; +13DB3;EGYPTIAN HIEROGLYPH-13DB3;Lo;0;L;;;;;N;;;;; +13DB4;EGYPTIAN HIEROGLYPH-13DB4;Lo;0;L;;;;;N;;;;; +13DB5;EGYPTIAN HIEROGLYPH-13DB5;Lo;0;L;;;;;N;;;;; +13DB6;EGYPTIAN HIEROGLYPH-13DB6;Lo;0;L;;;;;N;;;;; +13DB7;EGYPTIAN HIEROGLYPH-13DB7;Lo;0;L;;;;;N;;;;; +13DB8;EGYPTIAN HIEROGLYPH-13DB8;Lo;0;L;;;;;N;;;;; +13DB9;EGYPTIAN HIEROGLYPH-13DB9;Lo;0;L;;;;;N;;;;; +13DBA;EGYPTIAN HIEROGLYPH-13DBA;Lo;0;L;;;;;N;;;;; +13DBB;EGYPTIAN HIEROGLYPH-13DBB;Lo;0;L;;;;;N;;;;; +13DBC;EGYPTIAN HIEROGLYPH-13DBC;Lo;0;L;;;;;N;;;;; +13DBD;EGYPTIAN HIEROGLYPH-13DBD;Lo;0;L;;;;;N;;;;; +13DBE;EGYPTIAN HIEROGLYPH-13DBE;Lo;0;L;;;;;N;;;;; +13DBF;EGYPTIAN HIEROGLYPH-13DBF;Lo;0;L;;;;;N;;;;; +13DC0;EGYPTIAN HIEROGLYPH-13DC0;Lo;0;L;;;;;N;;;;; +13DC1;EGYPTIAN HIEROGLYPH-13DC1;Lo;0;L;;;;;N;;;;; +13DC2;EGYPTIAN HIEROGLYPH-13DC2;Lo;0;L;;;;;N;;;;; +13DC3;EGYPTIAN HIEROGLYPH-13DC3;Lo;0;L;;;;;N;;;;; +13DC4;EGYPTIAN HIEROGLYPH-13DC4;Lo;0;L;;;;;N;;;;; +13DC5;EGYPTIAN HIEROGLYPH-13DC5;Lo;0;L;;;;;N;;;;; +13DC6;EGYPTIAN HIEROGLYPH-13DC6;Lo;0;L;;;;;N;;;;; +13DC7;EGYPTIAN HIEROGLYPH-13DC7;Lo;0;L;;;;;N;;;;; +13DC8;EGYPTIAN HIEROGLYPH-13DC8;Lo;0;L;;;;;N;;;;; +13DC9;EGYPTIAN HIEROGLYPH-13DC9;Lo;0;L;;;;;N;;;;; +13DCA;EGYPTIAN HIEROGLYPH-13DCA;Lo;0;L;;;;;N;;;;; +13DCB;EGYPTIAN HIEROGLYPH-13DCB;Lo;0;L;;;;;N;;;;; +13DCC;EGYPTIAN HIEROGLYPH-13DCC;Lo;0;L;;;;;N;;;;; +13DCD;EGYPTIAN HIEROGLYPH-13DCD;Lo;0;L;;;;;N;;;;; +13DCE;EGYPTIAN HIEROGLYPH-13DCE;Lo;0;L;;;;;N;;;;; +13DCF;EGYPTIAN HIEROGLYPH-13DCF;Lo;0;L;;;;;N;;;;; +13DD0;EGYPTIAN HIEROGLYPH-13DD0;Lo;0;L;;;;;N;;;;; +13DD1;EGYPTIAN HIEROGLYPH-13DD1;Lo;0;L;;;;;N;;;;; +13DD2;EGYPTIAN HIEROGLYPH-13DD2;Lo;0;L;;;;;N;;;;; +13DD3;EGYPTIAN HIEROGLYPH-13DD3;Lo;0;L;;;;;N;;;;; +13DD4;EGYPTIAN HIEROGLYPH-13DD4;Lo;0;L;;;;;N;;;;; +13DD5;EGYPTIAN HIEROGLYPH-13DD5;Lo;0;L;;;;;N;;;;; +13DD6;EGYPTIAN HIEROGLYPH-13DD6;Lo;0;L;;;;;N;;;;; +13DD7;EGYPTIAN HIEROGLYPH-13DD7;Lo;0;L;;;;;N;;;;; +13DD8;EGYPTIAN HIEROGLYPH-13DD8;Lo;0;L;;;;;N;;;;; +13DD9;EGYPTIAN HIEROGLYPH-13DD9;Lo;0;L;;;;;N;;;;; +13DDA;EGYPTIAN HIEROGLYPH-13DDA;Lo;0;L;;;;;N;;;;; +13DDB;EGYPTIAN HIEROGLYPH-13DDB;Lo;0;L;;;;;N;;;;; +13DDC;EGYPTIAN HIEROGLYPH-13DDC;Lo;0;L;;;;;N;;;;; +13DDD;EGYPTIAN HIEROGLYPH-13DDD;Lo;0;L;;;;;N;;;;; +13DDE;EGYPTIAN HIEROGLYPH-13DDE;Lo;0;L;;;;;N;;;;; +13DDF;EGYPTIAN HIEROGLYPH-13DDF;Lo;0;L;;;;;N;;;;; +13DE0;EGYPTIAN HIEROGLYPH-13DE0;Lo;0;L;;;;;N;;;;; +13DE1;EGYPTIAN HIEROGLYPH-13DE1;Lo;0;L;;;;;N;;;;; +13DE2;EGYPTIAN HIEROGLYPH-13DE2;Lo;0;L;;;;;N;;;;; +13DE3;EGYPTIAN HIEROGLYPH-13DE3;Lo;0;L;;;;;N;;;;; +13DE4;EGYPTIAN HIEROGLYPH-13DE4;Lo;0;L;;;;;N;;;;; +13DE5;EGYPTIAN HIEROGLYPH-13DE5;Lo;0;L;;;;;N;;;;; +13DE6;EGYPTIAN HIEROGLYPH-13DE6;Lo;0;L;;;;;N;;;;; +13DE7;EGYPTIAN HIEROGLYPH-13DE7;Lo;0;L;;;;;N;;;;; +13DE8;EGYPTIAN HIEROGLYPH-13DE8;Lo;0;L;;;;;N;;;;; +13DE9;EGYPTIAN HIEROGLYPH-13DE9;Lo;0;L;;;;;N;;;;; +13DEA;EGYPTIAN HIEROGLYPH-13DEA;Lo;0;L;;;;;N;;;;; +13DEB;EGYPTIAN HIEROGLYPH-13DEB;Lo;0;L;;;;;N;;;;; +13DEC;EGYPTIAN HIEROGLYPH-13DEC;Lo;0;L;;;;;N;;;;; +13DED;EGYPTIAN HIEROGLYPH-13DED;Lo;0;L;;;;;N;;;;; +13DEE;EGYPTIAN HIEROGLYPH-13DEE;Lo;0;L;;;;;N;;;;; +13DEF;EGYPTIAN HIEROGLYPH-13DEF;Lo;0;L;;;;;N;;;;; +13DF0;EGYPTIAN HIEROGLYPH-13DF0;Lo;0;L;;;;;N;;;;; +13DF1;EGYPTIAN HIEROGLYPH-13DF1;Lo;0;L;;;;;N;;;;; +13DF2;EGYPTIAN HIEROGLYPH-13DF2;Lo;0;L;;;;;N;;;;; +13DF3;EGYPTIAN HIEROGLYPH-13DF3;Lo;0;L;;;;;N;;;;; +13DF4;EGYPTIAN HIEROGLYPH-13DF4;Lo;0;L;;;;;N;;;;; +13DF5;EGYPTIAN HIEROGLYPH-13DF5;Lo;0;L;;;;;N;;;;; +13DF6;EGYPTIAN HIEROGLYPH-13DF6;Lo;0;L;;;;;N;;;;; +13DF7;EGYPTIAN HIEROGLYPH-13DF7;Lo;0;L;;;;;N;;;;; +13DF8;EGYPTIAN HIEROGLYPH-13DF8;Lo;0;L;;;;;N;;;;; +13DF9;EGYPTIAN HIEROGLYPH-13DF9;Lo;0;L;;;;;N;;;;; +13DFA;EGYPTIAN HIEROGLYPH-13DFA;Lo;0;L;;;;;N;;;;; +13DFB;EGYPTIAN HIEROGLYPH-13DFB;Lo;0;L;;;;;N;;;;; +13DFC;EGYPTIAN HIEROGLYPH-13DFC;Lo;0;L;;;;;N;;;;; +13DFD;EGYPTIAN HIEROGLYPH-13DFD;Lo;0;L;;;;;N;;;;; +13DFE;EGYPTIAN HIEROGLYPH-13DFE;Lo;0;L;;;;;N;;;;; +13DFF;EGYPTIAN HIEROGLYPH-13DFF;Lo;0;L;;;;;N;;;;; +13E00;EGYPTIAN HIEROGLYPH-13E00;Lo;0;L;;;;;N;;;;; +13E01;EGYPTIAN HIEROGLYPH-13E01;Lo;0;L;;;;;N;;;;; +13E02;EGYPTIAN HIEROGLYPH-13E02;Lo;0;L;;;;;N;;;;; +13E03;EGYPTIAN HIEROGLYPH-13E03;Lo;0;L;;;;;N;;;;; +13E04;EGYPTIAN HIEROGLYPH-13E04;Lo;0;L;;;;;N;;;;; +13E05;EGYPTIAN HIEROGLYPH-13E05;Lo;0;L;;;;;N;;;;; +13E06;EGYPTIAN HIEROGLYPH-13E06;Lo;0;L;;;;;N;;;;; +13E07;EGYPTIAN HIEROGLYPH-13E07;Lo;0;L;;;;;N;;;;; +13E08;EGYPTIAN HIEROGLYPH-13E08;Lo;0;L;;;;;N;;;;; +13E09;EGYPTIAN HIEROGLYPH-13E09;Lo;0;L;;;;;N;;;;; +13E0A;EGYPTIAN HIEROGLYPH-13E0A;Lo;0;L;;;;;N;;;;; +13E0B;EGYPTIAN HIEROGLYPH-13E0B;Lo;0;L;;;;;N;;;;; +13E0C;EGYPTIAN HIEROGLYPH-13E0C;Lo;0;L;;;;;N;;;;; +13E0D;EGYPTIAN HIEROGLYPH-13E0D;Lo;0;L;;;;;N;;;;; +13E0E;EGYPTIAN HIEROGLYPH-13E0E;Lo;0;L;;;;;N;;;;; +13E0F;EGYPTIAN HIEROGLYPH-13E0F;Lo;0;L;;;;;N;;;;; +13E10;EGYPTIAN HIEROGLYPH-13E10;Lo;0;L;;;;;N;;;;; +13E11;EGYPTIAN HIEROGLYPH-13E11;Lo;0;L;;;;;N;;;;; +13E12;EGYPTIAN HIEROGLYPH-13E12;Lo;0;L;;;;;N;;;;; +13E13;EGYPTIAN HIEROGLYPH-13E13;Lo;0;L;;;;;N;;;;; +13E14;EGYPTIAN HIEROGLYPH-13E14;Lo;0;L;;;;;N;;;;; +13E15;EGYPTIAN HIEROGLYPH-13E15;Lo;0;L;;;;;N;;;;; +13E16;EGYPTIAN HIEROGLYPH-13E16;Lo;0;L;;;;;N;;;;; +13E17;EGYPTIAN HIEROGLYPH-13E17;Lo;0;L;;;;;N;;;;; +13E18;EGYPTIAN HIEROGLYPH-13E18;Lo;0;L;;;;;N;;;;; +13E19;EGYPTIAN HIEROGLYPH-13E19;Lo;0;L;;;;;N;;;;; +13E1A;EGYPTIAN HIEROGLYPH-13E1A;Lo;0;L;;;;;N;;;;; +13E1B;EGYPTIAN HIEROGLYPH-13E1B;Lo;0;L;;;;;N;;;;; +13E1C;EGYPTIAN HIEROGLYPH-13E1C;Lo;0;L;;;;;N;;;;; +13E1D;EGYPTIAN HIEROGLYPH-13E1D;Lo;0;L;;;;;N;;;;; +13E1E;EGYPTIAN HIEROGLYPH-13E1E;Lo;0;L;;;;;N;;;;; +13E1F;EGYPTIAN HIEROGLYPH-13E1F;Lo;0;L;;;;;N;;;;; +13E20;EGYPTIAN HIEROGLYPH-13E20;Lo;0;L;;;;;N;;;;; +13E21;EGYPTIAN HIEROGLYPH-13E21;Lo;0;L;;;;;N;;;;; +13E22;EGYPTIAN HIEROGLYPH-13E22;Lo;0;L;;;;;N;;;;; +13E23;EGYPTIAN HIEROGLYPH-13E23;Lo;0;L;;;;;N;;;;; +13E24;EGYPTIAN HIEROGLYPH-13E24;Lo;0;L;;;;;N;;;;; +13E25;EGYPTIAN HIEROGLYPH-13E25;Lo;0;L;;;;;N;;;;; +13E26;EGYPTIAN HIEROGLYPH-13E26;Lo;0;L;;;;;N;;;;; +13E27;EGYPTIAN HIEROGLYPH-13E27;Lo;0;L;;;;;N;;;;; +13E28;EGYPTIAN HIEROGLYPH-13E28;Lo;0;L;;;;;N;;;;; +13E29;EGYPTIAN HIEROGLYPH-13E29;Lo;0;L;;;;;N;;;;; +13E2A;EGYPTIAN HIEROGLYPH-13E2A;Lo;0;L;;;;;N;;;;; +13E2B;EGYPTIAN HIEROGLYPH-13E2B;Lo;0;L;;;;;N;;;;; +13E2C;EGYPTIAN HIEROGLYPH-13E2C;Lo;0;L;;;;;N;;;;; +13E2D;EGYPTIAN HIEROGLYPH-13E2D;Lo;0;L;;;;;N;;;;; +13E2E;EGYPTIAN HIEROGLYPH-13E2E;Lo;0;L;;;;;N;;;;; +13E2F;EGYPTIAN HIEROGLYPH-13E2F;Lo;0;L;;;;;N;;;;; +13E30;EGYPTIAN HIEROGLYPH-13E30;Lo;0;L;;;;;N;;;;; +13E31;EGYPTIAN HIEROGLYPH-13E31;Lo;0;L;;;;;N;;;;; +13E32;EGYPTIAN HIEROGLYPH-13E32;Lo;0;L;;;;;N;;;;; +13E33;EGYPTIAN HIEROGLYPH-13E33;Lo;0;L;;;;;N;;;;; +13E34;EGYPTIAN HIEROGLYPH-13E34;Lo;0;L;;;;;N;;;;; +13E35;EGYPTIAN HIEROGLYPH-13E35;Lo;0;L;;;;;N;;;;; +13E36;EGYPTIAN HIEROGLYPH-13E36;Lo;0;L;;;;;N;;;;; +13E37;EGYPTIAN HIEROGLYPH-13E37;Lo;0;L;;;;;N;;;;; +13E38;EGYPTIAN HIEROGLYPH-13E38;Lo;0;L;;;;;N;;;;; +13E39;EGYPTIAN HIEROGLYPH-13E39;Lo;0;L;;;;;N;;;;; +13E3A;EGYPTIAN HIEROGLYPH-13E3A;Lo;0;L;;;;;N;;;;; +13E3B;EGYPTIAN HIEROGLYPH-13E3B;Lo;0;L;;;;;N;;;;; +13E3C;EGYPTIAN HIEROGLYPH-13E3C;Lo;0;L;;;;;N;;;;; +13E3D;EGYPTIAN HIEROGLYPH-13E3D;Lo;0;L;;;;;N;;;;; +13E3E;EGYPTIAN HIEROGLYPH-13E3E;Lo;0;L;;;;;N;;;;; +13E3F;EGYPTIAN HIEROGLYPH-13E3F;Lo;0;L;;;;;N;;;;; +13E40;EGYPTIAN HIEROGLYPH-13E40;Lo;0;L;;;;;N;;;;; +13E41;EGYPTIAN HIEROGLYPH-13E41;Lo;0;L;;;;;N;;;;; +13E42;EGYPTIAN HIEROGLYPH-13E42;Lo;0;L;;;;;N;;;;; +13E43;EGYPTIAN HIEROGLYPH-13E43;Lo;0;L;;;;;N;;;;; +13E44;EGYPTIAN HIEROGLYPH-13E44;Lo;0;L;;;;;N;;;;; +13E45;EGYPTIAN HIEROGLYPH-13E45;Lo;0;L;;;;;N;;;;; +13E46;EGYPTIAN HIEROGLYPH-13E46;Lo;0;L;;;;;N;;;;; +13E47;EGYPTIAN HIEROGLYPH-13E47;Lo;0;L;;;;;N;;;;; +13E48;EGYPTIAN HIEROGLYPH-13E48;Lo;0;L;;;;;N;;;;; +13E49;EGYPTIAN HIEROGLYPH-13E49;Lo;0;L;;;;;N;;;;; +13E4A;EGYPTIAN HIEROGLYPH-13E4A;Lo;0;L;;;;;N;;;;; +13E4B;EGYPTIAN HIEROGLYPH-13E4B;Lo;0;L;;;;;N;;;;; +13E4C;EGYPTIAN HIEROGLYPH-13E4C;Lo;0;L;;;;;N;;;;; +13E4D;EGYPTIAN HIEROGLYPH-13E4D;Lo;0;L;;;;;N;;;;; +13E4E;EGYPTIAN HIEROGLYPH-13E4E;Lo;0;L;;;;;N;;;;; +13E4F;EGYPTIAN HIEROGLYPH-13E4F;Lo;0;L;;;;;N;;;;; +13E50;EGYPTIAN HIEROGLYPH-13E50;Lo;0;L;;;;;N;;;;; +13E51;EGYPTIAN HIEROGLYPH-13E51;Lo;0;L;;;;;N;;;;; +13E52;EGYPTIAN HIEROGLYPH-13E52;Lo;0;L;;;;;N;;;;; +13E53;EGYPTIAN HIEROGLYPH-13E53;Lo;0;L;;;;;N;;;;; +13E54;EGYPTIAN HIEROGLYPH-13E54;Lo;0;L;;;;;N;;;;; +13E55;EGYPTIAN HIEROGLYPH-13E55;Lo;0;L;;;;;N;;;;; +13E56;EGYPTIAN HIEROGLYPH-13E56;Lo;0;L;;;;;N;;;;; +13E57;EGYPTIAN HIEROGLYPH-13E57;Lo;0;L;;;;;N;;;;; +13E58;EGYPTIAN HIEROGLYPH-13E58;Lo;0;L;;;;;N;;;;; +13E59;EGYPTIAN HIEROGLYPH-13E59;Lo;0;L;;;;;N;;;;; +13E5A;EGYPTIAN HIEROGLYPH-13E5A;Lo;0;L;;;;;N;;;;; +13E5B;EGYPTIAN HIEROGLYPH-13E5B;Lo;0;L;;;;;N;;;;; +13E5C;EGYPTIAN HIEROGLYPH-13E5C;Lo;0;L;;;;;N;;;;; +13E5D;EGYPTIAN HIEROGLYPH-13E5D;Lo;0;L;;;;;N;;;;; +13E5E;EGYPTIAN HIEROGLYPH-13E5E;Lo;0;L;;;;;N;;;;; +13E5F;EGYPTIAN HIEROGLYPH-13E5F;Lo;0;L;;;;;N;;;;; +13E60;EGYPTIAN HIEROGLYPH-13E60;Lo;0;L;;;;;N;;;;; +13E61;EGYPTIAN HIEROGLYPH-13E61;Lo;0;L;;;;;N;;;;; +13E62;EGYPTIAN HIEROGLYPH-13E62;Lo;0;L;;;;;N;;;;; +13E63;EGYPTIAN HIEROGLYPH-13E63;Lo;0;L;;;;;N;;;;; +13E64;EGYPTIAN HIEROGLYPH-13E64;Lo;0;L;;;;;N;;;;; +13E65;EGYPTIAN HIEROGLYPH-13E65;Lo;0;L;;;;;N;;;;; +13E66;EGYPTIAN HIEROGLYPH-13E66;Lo;0;L;;;;;N;;;;; +13E67;EGYPTIAN HIEROGLYPH-13E67;Lo;0;L;;;;;N;;;;; +13E68;EGYPTIAN HIEROGLYPH-13E68;Lo;0;L;;;;;N;;;;; +13E69;EGYPTIAN HIEROGLYPH-13E69;Lo;0;L;;;;;N;;;;; +13E6A;EGYPTIAN HIEROGLYPH-13E6A;Lo;0;L;;;;;N;;;;; +13E6B;EGYPTIAN HIEROGLYPH-13E6B;Lo;0;L;;;;;N;;;;; +13E6C;EGYPTIAN HIEROGLYPH-13E6C;Lo;0;L;;;;;N;;;;; +13E6D;EGYPTIAN HIEROGLYPH-13E6D;Lo;0;L;;;;;N;;;;; +13E6E;EGYPTIAN HIEROGLYPH-13E6E;Lo;0;L;;;;;N;;;;; +13E6F;EGYPTIAN HIEROGLYPH-13E6F;Lo;0;L;;;;;N;;;;; +13E70;EGYPTIAN HIEROGLYPH-13E70;Lo;0;L;;;;;N;;;;; +13E71;EGYPTIAN HIEROGLYPH-13E71;Lo;0;L;;;;;N;;;;; +13E72;EGYPTIAN HIEROGLYPH-13E72;Lo;0;L;;;;;N;;;;; +13E73;EGYPTIAN HIEROGLYPH-13E73;Lo;0;L;;;;;N;;;;; +13E74;EGYPTIAN HIEROGLYPH-13E74;Lo;0;L;;;;;N;;;;; +13E75;EGYPTIAN HIEROGLYPH-13E75;Lo;0;L;;;;;N;;;;; +13E76;EGYPTIAN HIEROGLYPH-13E76;Lo;0;L;;;;;N;;;;; +13E77;EGYPTIAN HIEROGLYPH-13E77;Lo;0;L;;;;;N;;;;; +13E78;EGYPTIAN HIEROGLYPH-13E78;Lo;0;L;;;;;N;;;;; +13E79;EGYPTIAN HIEROGLYPH-13E79;Lo;0;L;;;;;N;;;;; +13E7A;EGYPTIAN HIEROGLYPH-13E7A;Lo;0;L;;;;;N;;;;; +13E7B;EGYPTIAN HIEROGLYPH-13E7B;Lo;0;L;;;;;N;;;;; +13E7C;EGYPTIAN HIEROGLYPH-13E7C;Lo;0;L;;;;;N;;;;; +13E7D;EGYPTIAN HIEROGLYPH-13E7D;Lo;0;L;;;;;N;;;;; +13E7E;EGYPTIAN HIEROGLYPH-13E7E;Lo;0;L;;;;;N;;;;; +13E7F;EGYPTIAN HIEROGLYPH-13E7F;Lo;0;L;;;;;N;;;;; +13E80;EGYPTIAN HIEROGLYPH-13E80;Lo;0;L;;;;;N;;;;; +13E81;EGYPTIAN HIEROGLYPH-13E81;Lo;0;L;;;;;N;;;;; +13E82;EGYPTIAN HIEROGLYPH-13E82;Lo;0;L;;;;;N;;;;; +13E83;EGYPTIAN HIEROGLYPH-13E83;Lo;0;L;;;;;N;;;;; +13E84;EGYPTIAN HIEROGLYPH-13E84;Lo;0;L;;;;;N;;;;; +13E85;EGYPTIAN HIEROGLYPH-13E85;Lo;0;L;;;;;N;;;;; +13E86;EGYPTIAN HIEROGLYPH-13E86;Lo;0;L;;;;;N;;;;; +13E87;EGYPTIAN HIEROGLYPH-13E87;Lo;0;L;;;;;N;;;;; +13E88;EGYPTIAN HIEROGLYPH-13E88;Lo;0;L;;;;;N;;;;; +13E89;EGYPTIAN HIEROGLYPH-13E89;Lo;0;L;;;;;N;;;;; +13E8A;EGYPTIAN HIEROGLYPH-13E8A;Lo;0;L;;;;;N;;;;; +13E8B;EGYPTIAN HIEROGLYPH-13E8B;Lo;0;L;;;;;N;;;;; +13E8C;EGYPTIAN HIEROGLYPH-13E8C;Lo;0;L;;;;;N;;;;; +13E8D;EGYPTIAN HIEROGLYPH-13E8D;Lo;0;L;;;;;N;;;;; +13E8E;EGYPTIAN HIEROGLYPH-13E8E;Lo;0;L;;;;;N;;;;; +13E8F;EGYPTIAN HIEROGLYPH-13E8F;Lo;0;L;;;;;N;;;;; +13E90;EGYPTIAN HIEROGLYPH-13E90;Lo;0;L;;;;;N;;;;; +13E91;EGYPTIAN HIEROGLYPH-13E91;Lo;0;L;;;;;N;;;;; +13E92;EGYPTIAN HIEROGLYPH-13E92;Lo;0;L;;;;;N;;;;; +13E93;EGYPTIAN HIEROGLYPH-13E93;Lo;0;L;;;;;N;;;;; +13E94;EGYPTIAN HIEROGLYPH-13E94;Lo;0;L;;;;;N;;;;; +13E95;EGYPTIAN HIEROGLYPH-13E95;Lo;0;L;;;;;N;;;;; +13E96;EGYPTIAN HIEROGLYPH-13E96;Lo;0;L;;;;;N;;;;; +13E97;EGYPTIAN HIEROGLYPH-13E97;Lo;0;L;;;;;N;;;;; +13E98;EGYPTIAN HIEROGLYPH-13E98;Lo;0;L;;;;;N;;;;; +13E99;EGYPTIAN HIEROGLYPH-13E99;Lo;0;L;;;;;N;;;;; +13E9A;EGYPTIAN HIEROGLYPH-13E9A;Lo;0;L;;;;;N;;;;; +13E9B;EGYPTIAN HIEROGLYPH-13E9B;Lo;0;L;;;;;N;;;;; +13E9C;EGYPTIAN HIEROGLYPH-13E9C;Lo;0;L;;;;;N;;;;; +13E9D;EGYPTIAN HIEROGLYPH-13E9D;Lo;0;L;;;;;N;;;;; +13E9E;EGYPTIAN HIEROGLYPH-13E9E;Lo;0;L;;;;;N;;;;; +13E9F;EGYPTIAN HIEROGLYPH-13E9F;Lo;0;L;;;;;N;;;;; +13EA0;EGYPTIAN HIEROGLYPH-13EA0;Lo;0;L;;;;;N;;;;; +13EA1;EGYPTIAN HIEROGLYPH-13EA1;Lo;0;L;;;;;N;;;;; +13EA2;EGYPTIAN HIEROGLYPH-13EA2;Lo;0;L;;;;;N;;;;; +13EA3;EGYPTIAN HIEROGLYPH-13EA3;Lo;0;L;;;;;N;;;;; +13EA4;EGYPTIAN HIEROGLYPH-13EA4;Lo;0;L;;;;;N;;;;; +13EA5;EGYPTIAN HIEROGLYPH-13EA5;Lo;0;L;;;;;N;;;;; +13EA6;EGYPTIAN HIEROGLYPH-13EA6;Lo;0;L;;;;;N;;;;; +13EA7;EGYPTIAN HIEROGLYPH-13EA7;Lo;0;L;;;;;N;;;;; +13EA8;EGYPTIAN HIEROGLYPH-13EA8;Lo;0;L;;;;;N;;;;; +13EA9;EGYPTIAN HIEROGLYPH-13EA9;Lo;0;L;;;;;N;;;;; +13EAA;EGYPTIAN HIEROGLYPH-13EAA;Lo;0;L;;;;;N;;;;; +13EAB;EGYPTIAN HIEROGLYPH-13EAB;Lo;0;L;;;;;N;;;;; +13EAC;EGYPTIAN HIEROGLYPH-13EAC;Lo;0;L;;;;;N;;;;; +13EAD;EGYPTIAN HIEROGLYPH-13EAD;Lo;0;L;;;;;N;;;;; +13EAE;EGYPTIAN HIEROGLYPH-13EAE;Lo;0;L;;;;;N;;;;; +13EAF;EGYPTIAN HIEROGLYPH-13EAF;Lo;0;L;;;;;N;;;;; +13EB0;EGYPTIAN HIEROGLYPH-13EB0;Lo;0;L;;;;;N;;;;; +13EB1;EGYPTIAN HIEROGLYPH-13EB1;Lo;0;L;;;;;N;;;;; +13EB2;EGYPTIAN HIEROGLYPH-13EB2;Lo;0;L;;;;;N;;;;; +13EB3;EGYPTIAN HIEROGLYPH-13EB3;Lo;0;L;;;;;N;;;;; +13EB4;EGYPTIAN HIEROGLYPH-13EB4;Lo;0;L;;;;;N;;;;; +13EB5;EGYPTIAN HIEROGLYPH-13EB5;Lo;0;L;;;;;N;;;;; +13EB6;EGYPTIAN HIEROGLYPH-13EB6;Lo;0;L;;;;;N;;;;; +13EB7;EGYPTIAN HIEROGLYPH-13EB7;Lo;0;L;;;;;N;;;;; +13EB8;EGYPTIAN HIEROGLYPH-13EB8;Lo;0;L;;;;;N;;;;; +13EB9;EGYPTIAN HIEROGLYPH-13EB9;Lo;0;L;;;;;N;;;;; +13EBA;EGYPTIAN HIEROGLYPH-13EBA;Lo;0;L;;;;;N;;;;; +13EBB;EGYPTIAN HIEROGLYPH-13EBB;Lo;0;L;;;;;N;;;;; +13EBC;EGYPTIAN HIEROGLYPH-13EBC;Lo;0;L;;;;;N;;;;; +13EBD;EGYPTIAN HIEROGLYPH-13EBD;Lo;0;L;;;;;N;;;;; +13EBE;EGYPTIAN HIEROGLYPH-13EBE;Lo;0;L;;;;;N;;;;; +13EBF;EGYPTIAN HIEROGLYPH-13EBF;Lo;0;L;;;;;N;;;;; +13EC0;EGYPTIAN HIEROGLYPH-13EC0;Lo;0;L;;;;;N;;;;; +13EC1;EGYPTIAN HIEROGLYPH-13EC1;Lo;0;L;;;;;N;;;;; +13EC2;EGYPTIAN HIEROGLYPH-13EC2;Lo;0;L;;;;;N;;;;; +13EC3;EGYPTIAN HIEROGLYPH-13EC3;Lo;0;L;;;;;N;;;;; +13EC4;EGYPTIAN HIEROGLYPH-13EC4;Lo;0;L;;;;;N;;;;; +13EC5;EGYPTIAN HIEROGLYPH-13EC5;Lo;0;L;;;;;N;;;;; +13EC6;EGYPTIAN HIEROGLYPH-13EC6;Lo;0;L;;;;;N;;;;; +13EC7;EGYPTIAN HIEROGLYPH-13EC7;Lo;0;L;;;;;N;;;;; +13EC8;EGYPTIAN HIEROGLYPH-13EC8;Lo;0;L;;;;;N;;;;; +13EC9;EGYPTIAN HIEROGLYPH-13EC9;Lo;0;L;;;;;N;;;;; +13ECA;EGYPTIAN HIEROGLYPH-13ECA;Lo;0;L;;;;;N;;;;; +13ECB;EGYPTIAN HIEROGLYPH-13ECB;Lo;0;L;;;;;N;;;;; +13ECC;EGYPTIAN HIEROGLYPH-13ECC;Lo;0;L;;;;;N;;;;; +13ECD;EGYPTIAN HIEROGLYPH-13ECD;Lo;0;L;;;;;N;;;;; +13ECE;EGYPTIAN HIEROGLYPH-13ECE;Lo;0;L;;;;;N;;;;; +13ECF;EGYPTIAN HIEROGLYPH-13ECF;Lo;0;L;;;;;N;;;;; +13ED0;EGYPTIAN HIEROGLYPH-13ED0;Lo;0;L;;;;;N;;;;; +13ED1;EGYPTIAN HIEROGLYPH-13ED1;Lo;0;L;;;;;N;;;;; +13ED2;EGYPTIAN HIEROGLYPH-13ED2;Lo;0;L;;;;;N;;;;; +13ED3;EGYPTIAN HIEROGLYPH-13ED3;Lo;0;L;;;;;N;;;;; +13ED4;EGYPTIAN HIEROGLYPH-13ED4;Lo;0;L;;;;;N;;;;; +13ED5;EGYPTIAN HIEROGLYPH-13ED5;Lo;0;L;;;;;N;;;;; +13ED6;EGYPTIAN HIEROGLYPH-13ED6;Lo;0;L;;;;;N;;;;; +13ED7;EGYPTIAN HIEROGLYPH-13ED7;Lo;0;L;;;;;N;;;;; +13ED8;EGYPTIAN HIEROGLYPH-13ED8;Lo;0;L;;;;;N;;;;; +13ED9;EGYPTIAN HIEROGLYPH-13ED9;Lo;0;L;;;;;N;;;;; +13EDA;EGYPTIAN HIEROGLYPH-13EDA;Lo;0;L;;;;;N;;;;; +13EDB;EGYPTIAN HIEROGLYPH-13EDB;Lo;0;L;;;;;N;;;;; +13EDC;EGYPTIAN HIEROGLYPH-13EDC;Lo;0;L;;;;;N;;;;; +13EDD;EGYPTIAN HIEROGLYPH-13EDD;Lo;0;L;;;;;N;;;;; +13EDE;EGYPTIAN HIEROGLYPH-13EDE;Lo;0;L;;;;;N;;;;; +13EDF;EGYPTIAN HIEROGLYPH-13EDF;Lo;0;L;;;;;N;;;;; +13EE0;EGYPTIAN HIEROGLYPH-13EE0;Lo;0;L;;;;;N;;;;; +13EE1;EGYPTIAN HIEROGLYPH-13EE1;Lo;0;L;;;;;N;;;;; +13EE2;EGYPTIAN HIEROGLYPH-13EE2;Lo;0;L;;;;;N;;;;; +13EE3;EGYPTIAN HIEROGLYPH-13EE3;Lo;0;L;;;;;N;;;;; +13EE4;EGYPTIAN HIEROGLYPH-13EE4;Lo;0;L;;;;;N;;;;; +13EE5;EGYPTIAN HIEROGLYPH-13EE5;Lo;0;L;;;;;N;;;;; +13EE6;EGYPTIAN HIEROGLYPH-13EE6;Lo;0;L;;;;;N;;;;; +13EE7;EGYPTIAN HIEROGLYPH-13EE7;Lo;0;L;;;;;N;;;;; +13EE8;EGYPTIAN HIEROGLYPH-13EE8;Lo;0;L;;;;;N;;;;; +13EE9;EGYPTIAN HIEROGLYPH-13EE9;Lo;0;L;;;;;N;;;;; +13EEA;EGYPTIAN HIEROGLYPH-13EEA;Lo;0;L;;;;;N;;;;; +13EEB;EGYPTIAN HIEROGLYPH-13EEB;Lo;0;L;;;;;N;;;;; +13EEC;EGYPTIAN HIEROGLYPH-13EEC;Lo;0;L;;;;;N;;;;; +13EED;EGYPTIAN HIEROGLYPH-13EED;Lo;0;L;;;;;N;;;;; +13EEE;EGYPTIAN HIEROGLYPH-13EEE;Lo;0;L;;;;;N;;;;; +13EEF;EGYPTIAN HIEROGLYPH-13EEF;Lo;0;L;;;;;N;;;;; +13EF0;EGYPTIAN HIEROGLYPH-13EF0;Lo;0;L;;;;;N;;;;; +13EF1;EGYPTIAN HIEROGLYPH-13EF1;Lo;0;L;;;;;N;;;;; +13EF2;EGYPTIAN HIEROGLYPH-13EF2;Lo;0;L;;;;;N;;;;; +13EF3;EGYPTIAN HIEROGLYPH-13EF3;Lo;0;L;;;;;N;;;;; +13EF4;EGYPTIAN HIEROGLYPH-13EF4;Lo;0;L;;;;;N;;;;; +13EF5;EGYPTIAN HIEROGLYPH-13EF5;Lo;0;L;;;;;N;;;;; +13EF6;EGYPTIAN HIEROGLYPH-13EF6;Lo;0;L;;;;;N;;;;; +13EF7;EGYPTIAN HIEROGLYPH-13EF7;Lo;0;L;;;;;N;;;;; +13EF8;EGYPTIAN HIEROGLYPH-13EF8;Lo;0;L;;;;;N;;;;; +13EF9;EGYPTIAN HIEROGLYPH-13EF9;Lo;0;L;;;;;N;;;;; +13EFA;EGYPTIAN HIEROGLYPH-13EFA;Lo;0;L;;;;;N;;;;; +13EFB;EGYPTIAN HIEROGLYPH-13EFB;Lo;0;L;;;;;N;;;;; +13EFC;EGYPTIAN HIEROGLYPH-13EFC;Lo;0;L;;;;;N;;;;; +13EFD;EGYPTIAN HIEROGLYPH-13EFD;Lo;0;L;;;;;N;;;;; +13EFE;EGYPTIAN HIEROGLYPH-13EFE;Lo;0;L;;;;;N;;;;; +13EFF;EGYPTIAN HIEROGLYPH-13EFF;Lo;0;L;;;;;N;;;;; +13F00;EGYPTIAN HIEROGLYPH-13F00;Lo;0;L;;;;;N;;;;; +13F01;EGYPTIAN HIEROGLYPH-13F01;Lo;0;L;;;;;N;;;;; +13F02;EGYPTIAN HIEROGLYPH-13F02;Lo;0;L;;;;;N;;;;; +13F03;EGYPTIAN HIEROGLYPH-13F03;Lo;0;L;;;;;N;;;;; +13F04;EGYPTIAN HIEROGLYPH-13F04;Lo;0;L;;;;;N;;;;; +13F05;EGYPTIAN HIEROGLYPH-13F05;Lo;0;L;;;;;N;;;;; +13F06;EGYPTIAN HIEROGLYPH-13F06;Lo;0;L;;;;;N;;;;; +13F07;EGYPTIAN HIEROGLYPH-13F07;Lo;0;L;;;;;N;;;;; +13F08;EGYPTIAN HIEROGLYPH-13F08;Lo;0;L;;;;;N;;;;; +13F09;EGYPTIAN HIEROGLYPH-13F09;Lo;0;L;;;;;N;;;;; +13F0A;EGYPTIAN HIEROGLYPH-13F0A;Lo;0;L;;;;;N;;;;; +13F0B;EGYPTIAN HIEROGLYPH-13F0B;Lo;0;L;;;;;N;;;;; +13F0C;EGYPTIAN HIEROGLYPH-13F0C;Lo;0;L;;;;;N;;;;; +13F0D;EGYPTIAN HIEROGLYPH-13F0D;Lo;0;L;;;;;N;;;;; +13F0E;EGYPTIAN HIEROGLYPH-13F0E;Lo;0;L;;;;;N;;;;; +13F0F;EGYPTIAN HIEROGLYPH-13F0F;Lo;0;L;;;;;N;;;;; +13F10;EGYPTIAN HIEROGLYPH-13F10;Lo;0;L;;;;;N;;;;; +13F11;EGYPTIAN HIEROGLYPH-13F11;Lo;0;L;;;;;N;;;;; +13F12;EGYPTIAN HIEROGLYPH-13F12;Lo;0;L;;;;;N;;;;; +13F13;EGYPTIAN HIEROGLYPH-13F13;Lo;0;L;;;;;N;;;;; +13F14;EGYPTIAN HIEROGLYPH-13F14;Lo;0;L;;;;;N;;;;; +13F15;EGYPTIAN HIEROGLYPH-13F15;Lo;0;L;;;;;N;;;;; +13F16;EGYPTIAN HIEROGLYPH-13F16;Lo;0;L;;;;;N;;;;; +13F17;EGYPTIAN HIEROGLYPH-13F17;Lo;0;L;;;;;N;;;;; +13F18;EGYPTIAN HIEROGLYPH-13F18;Lo;0;L;;;;;N;;;;; +13F19;EGYPTIAN HIEROGLYPH-13F19;Lo;0;L;;;;;N;;;;; +13F1A;EGYPTIAN HIEROGLYPH-13F1A;Lo;0;L;;;;;N;;;;; +13F1B;EGYPTIAN HIEROGLYPH-13F1B;Lo;0;L;;;;;N;;;;; +13F1C;EGYPTIAN HIEROGLYPH-13F1C;Lo;0;L;;;;;N;;;;; +13F1D;EGYPTIAN HIEROGLYPH-13F1D;Lo;0;L;;;;;N;;;;; +13F1E;EGYPTIAN HIEROGLYPH-13F1E;Lo;0;L;;;;;N;;;;; +13F1F;EGYPTIAN HIEROGLYPH-13F1F;Lo;0;L;;;;;N;;;;; +13F20;EGYPTIAN HIEROGLYPH-13F20;Lo;0;L;;;;;N;;;;; +13F21;EGYPTIAN HIEROGLYPH-13F21;Lo;0;L;;;;;N;;;;; +13F22;EGYPTIAN HIEROGLYPH-13F22;Lo;0;L;;;;;N;;;;; +13F23;EGYPTIAN HIEROGLYPH-13F23;Lo;0;L;;;;;N;;;;; +13F24;EGYPTIAN HIEROGLYPH-13F24;Lo;0;L;;;;;N;;;;; +13F25;EGYPTIAN HIEROGLYPH-13F25;Lo;0;L;;;;;N;;;;; +13F26;EGYPTIAN HIEROGLYPH-13F26;Lo;0;L;;;;;N;;;;; +13F27;EGYPTIAN HIEROGLYPH-13F27;Lo;0;L;;;;;N;;;;; +13F28;EGYPTIAN HIEROGLYPH-13F28;Lo;0;L;;;;;N;;;;; +13F29;EGYPTIAN HIEROGLYPH-13F29;Lo;0;L;;;;;N;;;;; +13F2A;EGYPTIAN HIEROGLYPH-13F2A;Lo;0;L;;;;;N;;;;; +13F2B;EGYPTIAN HIEROGLYPH-13F2B;Lo;0;L;;;;;N;;;;; +13F2C;EGYPTIAN HIEROGLYPH-13F2C;Lo;0;L;;;;;N;;;;; +13F2D;EGYPTIAN HIEROGLYPH-13F2D;Lo;0;L;;;;;N;;;;; +13F2E;EGYPTIAN HIEROGLYPH-13F2E;Lo;0;L;;;;;N;;;;; +13F2F;EGYPTIAN HIEROGLYPH-13F2F;Lo;0;L;;;;;N;;;;; +13F30;EGYPTIAN HIEROGLYPH-13F30;Lo;0;L;;;;;N;;;;; +13F31;EGYPTIAN HIEROGLYPH-13F31;Lo;0;L;;;;;N;;;;; +13F32;EGYPTIAN HIEROGLYPH-13F32;Lo;0;L;;;;;N;;;;; +13F33;EGYPTIAN HIEROGLYPH-13F33;Lo;0;L;;;;;N;;;;; +13F34;EGYPTIAN HIEROGLYPH-13F34;Lo;0;L;;;;;N;;;;; +13F35;EGYPTIAN HIEROGLYPH-13F35;Lo;0;L;;;;;N;;;;; +13F36;EGYPTIAN HIEROGLYPH-13F36;Lo;0;L;;;;;N;;;;; +13F37;EGYPTIAN HIEROGLYPH-13F37;Lo;0;L;;;;;N;;;;; +13F38;EGYPTIAN HIEROGLYPH-13F38;Lo;0;L;;;;;N;;;;; +13F39;EGYPTIAN HIEROGLYPH-13F39;Lo;0;L;;;;;N;;;;; +13F3A;EGYPTIAN HIEROGLYPH-13F3A;Lo;0;L;;;;;N;;;;; +13F3B;EGYPTIAN HIEROGLYPH-13F3B;Lo;0;L;;;;;N;;;;; +13F3C;EGYPTIAN HIEROGLYPH-13F3C;Lo;0;L;;;;;N;;;;; +13F3D;EGYPTIAN HIEROGLYPH-13F3D;Lo;0;L;;;;;N;;;;; +13F3E;EGYPTIAN HIEROGLYPH-13F3E;Lo;0;L;;;;;N;;;;; +13F3F;EGYPTIAN HIEROGLYPH-13F3F;Lo;0;L;;;;;N;;;;; +13F40;EGYPTIAN HIEROGLYPH-13F40;Lo;0;L;;;;;N;;;;; +13F41;EGYPTIAN HIEROGLYPH-13F41;Lo;0;L;;;;;N;;;;; +13F42;EGYPTIAN HIEROGLYPH-13F42;Lo;0;L;;;;;N;;;;; +13F43;EGYPTIAN HIEROGLYPH-13F43;Lo;0;L;;;;;N;;;;; +13F44;EGYPTIAN HIEROGLYPH-13F44;Lo;0;L;;;;;N;;;;; +13F45;EGYPTIAN HIEROGLYPH-13F45;Lo;0;L;;;;;N;;;;; +13F46;EGYPTIAN HIEROGLYPH-13F46;Lo;0;L;;;;;N;;;;; +13F47;EGYPTIAN HIEROGLYPH-13F47;Lo;0;L;;;;;N;;;;; +13F48;EGYPTIAN HIEROGLYPH-13F48;Lo;0;L;;;;;N;;;;; +13F49;EGYPTIAN HIEROGLYPH-13F49;Lo;0;L;;;;;N;;;;; +13F4A;EGYPTIAN HIEROGLYPH-13F4A;Lo;0;L;;;;;N;;;;; +13F4B;EGYPTIAN HIEROGLYPH-13F4B;Lo;0;L;;;;;N;;;;; +13F4C;EGYPTIAN HIEROGLYPH-13F4C;Lo;0;L;;;;;N;;;;; +13F4D;EGYPTIAN HIEROGLYPH-13F4D;Lo;0;L;;;;;N;;;;; +13F4E;EGYPTIAN HIEROGLYPH-13F4E;Lo;0;L;;;;;N;;;;; +13F4F;EGYPTIAN HIEROGLYPH-13F4F;Lo;0;L;;;;;N;;;;; +13F50;EGYPTIAN HIEROGLYPH-13F50;Lo;0;L;;;;;N;;;;; +13F51;EGYPTIAN HIEROGLYPH-13F51;Lo;0;L;;;;;N;;;;; +13F52;EGYPTIAN HIEROGLYPH-13F52;Lo;0;L;;;;;N;;;;; +13F53;EGYPTIAN HIEROGLYPH-13F53;Lo;0;L;;;;;N;;;;; +13F54;EGYPTIAN HIEROGLYPH-13F54;Lo;0;L;;;;;N;;;;; +13F55;EGYPTIAN HIEROGLYPH-13F55;Lo;0;L;;;;;N;;;;; +13F56;EGYPTIAN HIEROGLYPH-13F56;Lo;0;L;;;;;N;;;;; +13F57;EGYPTIAN HIEROGLYPH-13F57;Lo;0;L;;;;;N;;;;; +13F58;EGYPTIAN HIEROGLYPH-13F58;Lo;0;L;;;;;N;;;;; +13F59;EGYPTIAN HIEROGLYPH-13F59;Lo;0;L;;;;;N;;;;; +13F5A;EGYPTIAN HIEROGLYPH-13F5A;Lo;0;L;;;;;N;;;;; +13F5B;EGYPTIAN HIEROGLYPH-13F5B;Lo;0;L;;;;;N;;;;; +13F5C;EGYPTIAN HIEROGLYPH-13F5C;Lo;0;L;;;;;N;;;;; +13F5D;EGYPTIAN HIEROGLYPH-13F5D;Lo;0;L;;;;;N;;;;; +13F5E;EGYPTIAN HIEROGLYPH-13F5E;Lo;0;L;;;;;N;;;;; +13F5F;EGYPTIAN HIEROGLYPH-13F5F;Lo;0;L;;;;;N;;;;; +13F60;EGYPTIAN HIEROGLYPH-13F60;Lo;0;L;;;;;N;;;;; +13F61;EGYPTIAN HIEROGLYPH-13F61;Lo;0;L;;;;;N;;;;; +13F62;EGYPTIAN HIEROGLYPH-13F62;Lo;0;L;;;;;N;;;;; +13F63;EGYPTIAN HIEROGLYPH-13F63;Lo;0;L;;;;;N;;;;; +13F64;EGYPTIAN HIEROGLYPH-13F64;Lo;0;L;;;;;N;;;;; +13F65;EGYPTIAN HIEROGLYPH-13F65;Lo;0;L;;;;;N;;;;; +13F66;EGYPTIAN HIEROGLYPH-13F66;Lo;0;L;;;;;N;;;;; +13F67;EGYPTIAN HIEROGLYPH-13F67;Lo;0;L;;;;;N;;;;; +13F68;EGYPTIAN HIEROGLYPH-13F68;Lo;0;L;;;;;N;;;;; +13F69;EGYPTIAN HIEROGLYPH-13F69;Lo;0;L;;;;;N;;;;; +13F6A;EGYPTIAN HIEROGLYPH-13F6A;Lo;0;L;;;;;N;;;;; +13F6B;EGYPTIAN HIEROGLYPH-13F6B;Lo;0;L;;;;;N;;;;; +13F6C;EGYPTIAN HIEROGLYPH-13F6C;Lo;0;L;;;;;N;;;;; +13F6D;EGYPTIAN HIEROGLYPH-13F6D;Lo;0;L;;;;;N;;;;; +13F6E;EGYPTIAN HIEROGLYPH-13F6E;Lo;0;L;;;;;N;;;;; +13F6F;EGYPTIAN HIEROGLYPH-13F6F;Lo;0;L;;;;;N;;;;; +13F70;EGYPTIAN HIEROGLYPH-13F70;Lo;0;L;;;;;N;;;;; +13F71;EGYPTIAN HIEROGLYPH-13F71;Lo;0;L;;;;;N;;;;; +13F72;EGYPTIAN HIEROGLYPH-13F72;Lo;0;L;;;;;N;;;;; +13F73;EGYPTIAN HIEROGLYPH-13F73;Lo;0;L;;;;;N;;;;; +13F74;EGYPTIAN HIEROGLYPH-13F74;Lo;0;L;;;;;N;;;;; +13F75;EGYPTIAN HIEROGLYPH-13F75;Lo;0;L;;;;;N;;;;; +13F76;EGYPTIAN HIEROGLYPH-13F76;Lo;0;L;;;;;N;;;;; +13F77;EGYPTIAN HIEROGLYPH-13F77;Lo;0;L;;;;;N;;;;; +13F78;EGYPTIAN HIEROGLYPH-13F78;Lo;0;L;;;;;N;;;;; +13F79;EGYPTIAN HIEROGLYPH-13F79;Lo;0;L;;;;;N;;;;; +13F7A;EGYPTIAN HIEROGLYPH-13F7A;Lo;0;L;;;;;N;;;;; +13F7B;EGYPTIAN HIEROGLYPH-13F7B;Lo;0;L;;;;;N;;;;; +13F7C;EGYPTIAN HIEROGLYPH-13F7C;Lo;0;L;;;;;N;;;;; +13F7D;EGYPTIAN HIEROGLYPH-13F7D;Lo;0;L;;;;;N;;;;; +13F7E;EGYPTIAN HIEROGLYPH-13F7E;Lo;0;L;;;;;N;;;;; +13F7F;EGYPTIAN HIEROGLYPH-13F7F;Lo;0;L;;;;;N;;;;; +13F80;EGYPTIAN HIEROGLYPH-13F80;Lo;0;L;;;;;N;;;;; +13F81;EGYPTIAN HIEROGLYPH-13F81;Lo;0;L;;;;;N;;;;; +13F82;EGYPTIAN HIEROGLYPH-13F82;Lo;0;L;;;;;N;;;;; +13F83;EGYPTIAN HIEROGLYPH-13F83;Lo;0;L;;;;;N;;;;; +13F84;EGYPTIAN HIEROGLYPH-13F84;Lo;0;L;;;;;N;;;;; +13F85;EGYPTIAN HIEROGLYPH-13F85;Lo;0;L;;;;;N;;;;; +13F86;EGYPTIAN HIEROGLYPH-13F86;Lo;0;L;;;;;N;;;;; +13F87;EGYPTIAN HIEROGLYPH-13F87;Lo;0;L;;;;;N;;;;; +13F88;EGYPTIAN HIEROGLYPH-13F88;Lo;0;L;;;;;N;;;;; +13F89;EGYPTIAN HIEROGLYPH-13F89;Lo;0;L;;;;;N;;;;; +13F8A;EGYPTIAN HIEROGLYPH-13F8A;Lo;0;L;;;;;N;;;;; +13F8B;EGYPTIAN HIEROGLYPH-13F8B;Lo;0;L;;;;;N;;;;; +13F8C;EGYPTIAN HIEROGLYPH-13F8C;Lo;0;L;;;;;N;;;;; +13F8D;EGYPTIAN HIEROGLYPH-13F8D;Lo;0;L;;;;;N;;;;; +13F8E;EGYPTIAN HIEROGLYPH-13F8E;Lo;0;L;;;;;N;;;;; +13F8F;EGYPTIAN HIEROGLYPH-13F8F;Lo;0;L;;;;;N;;;;; +13F90;EGYPTIAN HIEROGLYPH-13F90;Lo;0;L;;;;;N;;;;; +13F91;EGYPTIAN HIEROGLYPH-13F91;Lo;0;L;;;;;N;;;;; +13F92;EGYPTIAN HIEROGLYPH-13F92;Lo;0;L;;;;;N;;;;; +13F93;EGYPTIAN HIEROGLYPH-13F93;Lo;0;L;;;;;N;;;;; +13F94;EGYPTIAN HIEROGLYPH-13F94;Lo;0;L;;;;;N;;;;; +13F95;EGYPTIAN HIEROGLYPH-13F95;Lo;0;L;;;;;N;;;;; +13F96;EGYPTIAN HIEROGLYPH-13F96;Lo;0;L;;;;;N;;;;; +13F97;EGYPTIAN HIEROGLYPH-13F97;Lo;0;L;;;;;N;;;;; +13F98;EGYPTIAN HIEROGLYPH-13F98;Lo;0;L;;;;;N;;;;; +13F99;EGYPTIAN HIEROGLYPH-13F99;Lo;0;L;;;;;N;;;;; +13F9A;EGYPTIAN HIEROGLYPH-13F9A;Lo;0;L;;;;;N;;;;; +13F9B;EGYPTIAN HIEROGLYPH-13F9B;Lo;0;L;;;;;N;;;;; +13F9C;EGYPTIAN HIEROGLYPH-13F9C;Lo;0;L;;;;;N;;;;; +13F9D;EGYPTIAN HIEROGLYPH-13F9D;Lo;0;L;;;;;N;;;;; +13F9E;EGYPTIAN HIEROGLYPH-13F9E;Lo;0;L;;;;;N;;;;; +13F9F;EGYPTIAN HIEROGLYPH-13F9F;Lo;0;L;;;;;N;;;;; +13FA0;EGYPTIAN HIEROGLYPH-13FA0;Lo;0;L;;;;;N;;;;; +13FA1;EGYPTIAN HIEROGLYPH-13FA1;Lo;0;L;;;;;N;;;;; +13FA2;EGYPTIAN HIEROGLYPH-13FA2;Lo;0;L;;;;;N;;;;; +13FA3;EGYPTIAN HIEROGLYPH-13FA3;Lo;0;L;;;;;N;;;;; +13FA4;EGYPTIAN HIEROGLYPH-13FA4;Lo;0;L;;;;;N;;;;; +13FA5;EGYPTIAN HIEROGLYPH-13FA5;Lo;0;L;;;;;N;;;;; +13FA6;EGYPTIAN HIEROGLYPH-13FA6;Lo;0;L;;;;;N;;;;; +13FA7;EGYPTIAN HIEROGLYPH-13FA7;Lo;0;L;;;;;N;;;;; +13FA8;EGYPTIAN HIEROGLYPH-13FA8;Lo;0;L;;;;;N;;;;; +13FA9;EGYPTIAN HIEROGLYPH-13FA9;Lo;0;L;;;;;N;;;;; +13FAA;EGYPTIAN HIEROGLYPH-13FAA;Lo;0;L;;;;;N;;;;; +13FAB;EGYPTIAN HIEROGLYPH-13FAB;Lo;0;L;;;;;N;;;;; +13FAC;EGYPTIAN HIEROGLYPH-13FAC;Lo;0;L;;;;;N;;;;; +13FAD;EGYPTIAN HIEROGLYPH-13FAD;Lo;0;L;;;;;N;;;;; +13FAE;EGYPTIAN HIEROGLYPH-13FAE;Lo;0;L;;;;;N;;;;; +13FAF;EGYPTIAN HIEROGLYPH-13FAF;Lo;0;L;;;;;N;;;;; +13FB0;EGYPTIAN HIEROGLYPH-13FB0;Lo;0;L;;;;;N;;;;; +13FB1;EGYPTIAN HIEROGLYPH-13FB1;Lo;0;L;;;;;N;;;;; +13FB2;EGYPTIAN HIEROGLYPH-13FB2;Lo;0;L;;;;;N;;;;; +13FB3;EGYPTIAN HIEROGLYPH-13FB3;Lo;0;L;;;;;N;;;;; +13FB4;EGYPTIAN HIEROGLYPH-13FB4;Lo;0;L;;;;;N;;;;; +13FB5;EGYPTIAN HIEROGLYPH-13FB5;Lo;0;L;;;;;N;;;;; +13FB6;EGYPTIAN HIEROGLYPH-13FB6;Lo;0;L;;;;;N;;;;; +13FB7;EGYPTIAN HIEROGLYPH-13FB7;Lo;0;L;;;;;N;;;;; +13FB8;EGYPTIAN HIEROGLYPH-13FB8;Lo;0;L;;;;;N;;;;; +13FB9;EGYPTIAN HIEROGLYPH-13FB9;Lo;0;L;;;;;N;;;;; +13FBA;EGYPTIAN HIEROGLYPH-13FBA;Lo;0;L;;;;;N;;;;; +13FBB;EGYPTIAN HIEROGLYPH-13FBB;Lo;0;L;;;;;N;;;;; +13FBC;EGYPTIAN HIEROGLYPH-13FBC;Lo;0;L;;;;;N;;;;; +13FBD;EGYPTIAN HIEROGLYPH-13FBD;Lo;0;L;;;;;N;;;;; +13FBE;EGYPTIAN HIEROGLYPH-13FBE;Lo;0;L;;;;;N;;;;; +13FBF;EGYPTIAN HIEROGLYPH-13FBF;Lo;0;L;;;;;N;;;;; +13FC0;EGYPTIAN HIEROGLYPH-13FC0;Lo;0;L;;;;;N;;;;; +13FC1;EGYPTIAN HIEROGLYPH-13FC1;Lo;0;L;;;;;N;;;;; +13FC2;EGYPTIAN HIEROGLYPH-13FC2;Lo;0;L;;;;;N;;;;; +13FC3;EGYPTIAN HIEROGLYPH-13FC3;Lo;0;L;;;;;N;;;;; +13FC4;EGYPTIAN HIEROGLYPH-13FC4;Lo;0;L;;;;;N;;;;; +13FC5;EGYPTIAN HIEROGLYPH-13FC5;Lo;0;L;;;;;N;;;;; +13FC6;EGYPTIAN HIEROGLYPH-13FC6;Lo;0;L;;;;;N;;;;; +13FC7;EGYPTIAN HIEROGLYPH-13FC7;Lo;0;L;;;;;N;;;;; +13FC8;EGYPTIAN HIEROGLYPH-13FC8;Lo;0;L;;;;;N;;;;; +13FC9;EGYPTIAN HIEROGLYPH-13FC9;Lo;0;L;;;;;N;;;;; +13FCA;EGYPTIAN HIEROGLYPH-13FCA;Lo;0;L;;;;;N;;;;; +13FCB;EGYPTIAN HIEROGLYPH-13FCB;Lo;0;L;;;;;N;;;;; +13FCC;EGYPTIAN HIEROGLYPH-13FCC;Lo;0;L;;;;;N;;;;; +13FCD;EGYPTIAN HIEROGLYPH-13FCD;Lo;0;L;;;;;N;;;;; +13FCE;EGYPTIAN HIEROGLYPH-13FCE;Lo;0;L;;;;;N;;;;; +13FCF;EGYPTIAN HIEROGLYPH-13FCF;Lo;0;L;;;;;N;;;;; +13FD0;EGYPTIAN HIEROGLYPH-13FD0;Lo;0;L;;;;;N;;;;; +13FD1;EGYPTIAN HIEROGLYPH-13FD1;Lo;0;L;;;;;N;;;;; +13FD2;EGYPTIAN HIEROGLYPH-13FD2;Lo;0;L;;;;;N;;;;; +13FD3;EGYPTIAN HIEROGLYPH-13FD3;Lo;0;L;;;;;N;;;;; +13FD4;EGYPTIAN HIEROGLYPH-13FD4;Lo;0;L;;;;;N;;;;; +13FD5;EGYPTIAN HIEROGLYPH-13FD5;Lo;0;L;;;;;N;;;;; +13FD6;EGYPTIAN HIEROGLYPH-13FD6;Lo;0;L;;;;;N;;;;; +13FD7;EGYPTIAN HIEROGLYPH-13FD7;Lo;0;L;;;;;N;;;;; +13FD8;EGYPTIAN HIEROGLYPH-13FD8;Lo;0;L;;;;;N;;;;; +13FD9;EGYPTIAN HIEROGLYPH-13FD9;Lo;0;L;;;;;N;;;;; +13FDA;EGYPTIAN HIEROGLYPH-13FDA;Lo;0;L;;;;;N;;;;; +13FDB;EGYPTIAN HIEROGLYPH-13FDB;Lo;0;L;;;;;N;;;;; +13FDC;EGYPTIAN HIEROGLYPH-13FDC;Lo;0;L;;;;;N;;;;; +13FDD;EGYPTIAN HIEROGLYPH-13FDD;Lo;0;L;;;;;N;;;;; +13FDE;EGYPTIAN HIEROGLYPH-13FDE;Lo;0;L;;;;;N;;;;; +13FDF;EGYPTIAN HIEROGLYPH-13FDF;Lo;0;L;;;;;N;;;;; +13FE0;EGYPTIAN HIEROGLYPH-13FE0;Lo;0;L;;;;;N;;;;; +13FE1;EGYPTIAN HIEROGLYPH-13FE1;Lo;0;L;;;;;N;;;;; +13FE2;EGYPTIAN HIEROGLYPH-13FE2;Lo;0;L;;;;;N;;;;; +13FE3;EGYPTIAN HIEROGLYPH-13FE3;Lo;0;L;;;;;N;;;;; +13FE4;EGYPTIAN HIEROGLYPH-13FE4;Lo;0;L;;;;;N;;;;; +13FE5;EGYPTIAN HIEROGLYPH-13FE5;Lo;0;L;;;;;N;;;;; +13FE6;EGYPTIAN HIEROGLYPH-13FE6;Lo;0;L;;;;;N;;;;; +13FE7;EGYPTIAN HIEROGLYPH-13FE7;Lo;0;L;;;;;N;;;;; +13FE8;EGYPTIAN HIEROGLYPH-13FE8;Lo;0;L;;;;;N;;;;; +13FE9;EGYPTIAN HIEROGLYPH-13FE9;Lo;0;L;;;;;N;;;;; +13FEA;EGYPTIAN HIEROGLYPH-13FEA;Lo;0;L;;;;;N;;;;; +13FEB;EGYPTIAN HIEROGLYPH-13FEB;Lo;0;L;;;;;N;;;;; +13FEC;EGYPTIAN HIEROGLYPH-13FEC;Lo;0;L;;;;;N;;;;; +13FED;EGYPTIAN HIEROGLYPH-13FED;Lo;0;L;;;;;N;;;;; +13FEE;EGYPTIAN HIEROGLYPH-13FEE;Lo;0;L;;;;;N;;;;; +13FEF;EGYPTIAN HIEROGLYPH-13FEF;Lo;0;L;;;;;N;;;;; +13FF0;EGYPTIAN HIEROGLYPH-13FF0;Lo;0;L;;;;;N;;;;; +13FF1;EGYPTIAN HIEROGLYPH-13FF1;Lo;0;L;;;;;N;;;;; +13FF2;EGYPTIAN HIEROGLYPH-13FF2;Lo;0;L;;;;;N;;;;; +13FF3;EGYPTIAN HIEROGLYPH-13FF3;Lo;0;L;;;;;N;;;;; +13FF4;EGYPTIAN HIEROGLYPH-13FF4;Lo;0;L;;;;;N;;;;; +13FF5;EGYPTIAN HIEROGLYPH-13FF5;Lo;0;L;;;;;N;;;;; +13FF6;EGYPTIAN HIEROGLYPH-13FF6;Lo;0;L;;;;;N;;;;; +13FF7;EGYPTIAN HIEROGLYPH-13FF7;Lo;0;L;;;;;N;;;;; +13FF8;EGYPTIAN HIEROGLYPH-13FF8;Lo;0;L;;;;;N;;;;; +13FF9;EGYPTIAN HIEROGLYPH-13FF9;Lo;0;L;;;;;N;;;;; +13FFA;EGYPTIAN HIEROGLYPH-13FFA;Lo;0;L;;;;;N;;;;; +13FFB;EGYPTIAN HIEROGLYPH-13FFB;Lo;0;L;;;;;N;;;;; +13FFC;EGYPTIAN HIEROGLYPH-13FFC;Lo;0;L;;;;;N;;;;; +13FFD;EGYPTIAN HIEROGLYPH-13FFD;Lo;0;L;;;;;N;;;;; +13FFE;EGYPTIAN HIEROGLYPH-13FFE;Lo;0;L;;;;;N;;;;; +13FFF;EGYPTIAN HIEROGLYPH-13FFF;Lo;0;L;;;;;N;;;;; +14000;EGYPTIAN HIEROGLYPH-14000;Lo;0;L;;;;;N;;;;; +14001;EGYPTIAN HIEROGLYPH-14001;Lo;0;L;;;;;N;;;;; +14002;EGYPTIAN HIEROGLYPH-14002;Lo;0;L;;;;;N;;;;; +14003;EGYPTIAN HIEROGLYPH-14003;Lo;0;L;;;;;N;;;;; +14004;EGYPTIAN HIEROGLYPH-14004;Lo;0;L;;;;;N;;;;; +14005;EGYPTIAN HIEROGLYPH-14005;Lo;0;L;;;;;N;;;;; +14006;EGYPTIAN HIEROGLYPH-14006;Lo;0;L;;;;;N;;;;; +14007;EGYPTIAN HIEROGLYPH-14007;Lo;0;L;;;;;N;;;;; +14008;EGYPTIAN HIEROGLYPH-14008;Lo;0;L;;;;;N;;;;; +14009;EGYPTIAN HIEROGLYPH-14009;Lo;0;L;;;;;N;;;;; +1400A;EGYPTIAN HIEROGLYPH-1400A;Lo;0;L;;;;;N;;;;; +1400B;EGYPTIAN HIEROGLYPH-1400B;Lo;0;L;;;;;N;;;;; +1400C;EGYPTIAN HIEROGLYPH-1400C;Lo;0;L;;;;;N;;;;; +1400D;EGYPTIAN HIEROGLYPH-1400D;Lo;0;L;;;;;N;;;;; +1400E;EGYPTIAN HIEROGLYPH-1400E;Lo;0;L;;;;;N;;;;; +1400F;EGYPTIAN HIEROGLYPH-1400F;Lo;0;L;;;;;N;;;;; +14010;EGYPTIAN HIEROGLYPH-14010;Lo;0;L;;;;;N;;;;; +14011;EGYPTIAN HIEROGLYPH-14011;Lo;0;L;;;;;N;;;;; +14012;EGYPTIAN HIEROGLYPH-14012;Lo;0;L;;;;;N;;;;; +14013;EGYPTIAN HIEROGLYPH-14013;Lo;0;L;;;;;N;;;;; +14014;EGYPTIAN HIEROGLYPH-14014;Lo;0;L;;;;;N;;;;; +14015;EGYPTIAN HIEROGLYPH-14015;Lo;0;L;;;;;N;;;;; +14016;EGYPTIAN HIEROGLYPH-14016;Lo;0;L;;;;;N;;;;; +14017;EGYPTIAN HIEROGLYPH-14017;Lo;0;L;;;;;N;;;;; +14018;EGYPTIAN HIEROGLYPH-14018;Lo;0;L;;;;;N;;;;; +14019;EGYPTIAN HIEROGLYPH-14019;Lo;0;L;;;;;N;;;;; +1401A;EGYPTIAN HIEROGLYPH-1401A;Lo;0;L;;;;;N;;;;; +1401B;EGYPTIAN HIEROGLYPH-1401B;Lo;0;L;;;;;N;;;;; +1401C;EGYPTIAN HIEROGLYPH-1401C;Lo;0;L;;;;;N;;;;; +1401D;EGYPTIAN HIEROGLYPH-1401D;Lo;0;L;;;;;N;;;;; +1401E;EGYPTIAN HIEROGLYPH-1401E;Lo;0;L;;;;;N;;;;; +1401F;EGYPTIAN HIEROGLYPH-1401F;Lo;0;L;;;;;N;;;;; +14020;EGYPTIAN HIEROGLYPH-14020;Lo;0;L;;;;;N;;;;; +14021;EGYPTIAN HIEROGLYPH-14021;Lo;0;L;;;;;N;;;;; +14022;EGYPTIAN HIEROGLYPH-14022;Lo;0;L;;;;;N;;;;; +14023;EGYPTIAN HIEROGLYPH-14023;Lo;0;L;;;;;N;;;;; +14024;EGYPTIAN HIEROGLYPH-14024;Lo;0;L;;;;;N;;;;; +14025;EGYPTIAN HIEROGLYPH-14025;Lo;0;L;;;;;N;;;;; +14026;EGYPTIAN HIEROGLYPH-14026;Lo;0;L;;;;;N;;;;; +14027;EGYPTIAN HIEROGLYPH-14027;Lo;0;L;;;;;N;;;;; +14028;EGYPTIAN HIEROGLYPH-14028;Lo;0;L;;;;;N;;;;; +14029;EGYPTIAN HIEROGLYPH-14029;Lo;0;L;;;;;N;;;;; +1402A;EGYPTIAN HIEROGLYPH-1402A;Lo;0;L;;;;;N;;;;; +1402B;EGYPTIAN HIEROGLYPH-1402B;Lo;0;L;;;;;N;;;;; +1402C;EGYPTIAN HIEROGLYPH-1402C;Lo;0;L;;;;;N;;;;; +1402D;EGYPTIAN HIEROGLYPH-1402D;Lo;0;L;;;;;N;;;;; +1402E;EGYPTIAN HIEROGLYPH-1402E;Lo;0;L;;;;;N;;;;; +1402F;EGYPTIAN HIEROGLYPH-1402F;Lo;0;L;;;;;N;;;;; +14030;EGYPTIAN HIEROGLYPH-14030;Lo;0;L;;;;;N;;;;; +14031;EGYPTIAN HIEROGLYPH-14031;Lo;0;L;;;;;N;;;;; +14032;EGYPTIAN HIEROGLYPH-14032;Lo;0;L;;;;;N;;;;; +14033;EGYPTIAN HIEROGLYPH-14033;Lo;0;L;;;;;N;;;;; +14034;EGYPTIAN HIEROGLYPH-14034;Lo;0;L;;;;;N;;;;; +14035;EGYPTIAN HIEROGLYPH-14035;Lo;0;L;;;;;N;;;;; +14036;EGYPTIAN HIEROGLYPH-14036;Lo;0;L;;;;;N;;;;; +14037;EGYPTIAN HIEROGLYPH-14037;Lo;0;L;;;;;N;;;;; +14038;EGYPTIAN HIEROGLYPH-14038;Lo;0;L;;;;;N;;;;; +14039;EGYPTIAN HIEROGLYPH-14039;Lo;0;L;;;;;N;;;;; +1403A;EGYPTIAN HIEROGLYPH-1403A;Lo;0;L;;;;;N;;;;; +1403B;EGYPTIAN HIEROGLYPH-1403B;Lo;0;L;;;;;N;;;;; +1403C;EGYPTIAN HIEROGLYPH-1403C;Lo;0;L;;;;;N;;;;; +1403D;EGYPTIAN HIEROGLYPH-1403D;Lo;0;L;;;;;N;;;;; +1403E;EGYPTIAN HIEROGLYPH-1403E;Lo;0;L;;;;;N;;;;; +1403F;EGYPTIAN HIEROGLYPH-1403F;Lo;0;L;;;;;N;;;;; +14040;EGYPTIAN HIEROGLYPH-14040;Lo;0;L;;;;;N;;;;; +14041;EGYPTIAN HIEROGLYPH-14041;Lo;0;L;;;;;N;;;;; +14042;EGYPTIAN HIEROGLYPH-14042;Lo;0;L;;;;;N;;;;; +14043;EGYPTIAN HIEROGLYPH-14043;Lo;0;L;;;;;N;;;;; +14044;EGYPTIAN HIEROGLYPH-14044;Lo;0;L;;;;;N;;;;; +14045;EGYPTIAN HIEROGLYPH-14045;Lo;0;L;;;;;N;;;;; +14046;EGYPTIAN HIEROGLYPH-14046;Lo;0;L;;;;;N;;;;; +14047;EGYPTIAN HIEROGLYPH-14047;Lo;0;L;;;;;N;;;;; +14048;EGYPTIAN HIEROGLYPH-14048;Lo;0;L;;;;;N;;;;; +14049;EGYPTIAN HIEROGLYPH-14049;Lo;0;L;;;;;N;;;;; +1404A;EGYPTIAN HIEROGLYPH-1404A;Lo;0;L;;;;;N;;;;; +1404B;EGYPTIAN HIEROGLYPH-1404B;Lo;0;L;;;;;N;;;;; +1404C;EGYPTIAN HIEROGLYPH-1404C;Lo;0;L;;;;;N;;;;; +1404D;EGYPTIAN HIEROGLYPH-1404D;Lo;0;L;;;;;N;;;;; +1404E;EGYPTIAN HIEROGLYPH-1404E;Lo;0;L;;;;;N;;;;; +1404F;EGYPTIAN HIEROGLYPH-1404F;Lo;0;L;;;;;N;;;;; +14050;EGYPTIAN HIEROGLYPH-14050;Lo;0;L;;;;;N;;;;; +14051;EGYPTIAN HIEROGLYPH-14051;Lo;0;L;;;;;N;;;;; +14052;EGYPTIAN HIEROGLYPH-14052;Lo;0;L;;;;;N;;;;; +14053;EGYPTIAN HIEROGLYPH-14053;Lo;0;L;;;;;N;;;;; +14054;EGYPTIAN HIEROGLYPH-14054;Lo;0;L;;;;;N;;;;; +14055;EGYPTIAN HIEROGLYPH-14055;Lo;0;L;;;;;N;;;;; +14056;EGYPTIAN HIEROGLYPH-14056;Lo;0;L;;;;;N;;;;; +14057;EGYPTIAN HIEROGLYPH-14057;Lo;0;L;;;;;N;;;;; +14058;EGYPTIAN HIEROGLYPH-14058;Lo;0;L;;;;;N;;;;; +14059;EGYPTIAN HIEROGLYPH-14059;Lo;0;L;;;;;N;;;;; +1405A;EGYPTIAN HIEROGLYPH-1405A;Lo;0;L;;;;;N;;;;; +1405B;EGYPTIAN HIEROGLYPH-1405B;Lo;0;L;;;;;N;;;;; +1405C;EGYPTIAN HIEROGLYPH-1405C;Lo;0;L;;;;;N;;;;; +1405D;EGYPTIAN HIEROGLYPH-1405D;Lo;0;L;;;;;N;;;;; +1405E;EGYPTIAN HIEROGLYPH-1405E;Lo;0;L;;;;;N;;;;; +1405F;EGYPTIAN HIEROGLYPH-1405F;Lo;0;L;;;;;N;;;;; +14060;EGYPTIAN HIEROGLYPH-14060;Lo;0;L;;;;;N;;;;; +14061;EGYPTIAN HIEROGLYPH-14061;Lo;0;L;;;;;N;;;;; +14062;EGYPTIAN HIEROGLYPH-14062;Lo;0;L;;;;;N;;;;; +14063;EGYPTIAN HIEROGLYPH-14063;Lo;0;L;;;;;N;;;;; +14064;EGYPTIAN HIEROGLYPH-14064;Lo;0;L;;;;;N;;;;; +14065;EGYPTIAN HIEROGLYPH-14065;Lo;0;L;;;;;N;;;;; +14066;EGYPTIAN HIEROGLYPH-14066;Lo;0;L;;;;;N;;;;; +14067;EGYPTIAN HIEROGLYPH-14067;Lo;0;L;;;;;N;;;;; +14068;EGYPTIAN HIEROGLYPH-14068;Lo;0;L;;;;;N;;;;; +14069;EGYPTIAN HIEROGLYPH-14069;Lo;0;L;;;;;N;;;;; +1406A;EGYPTIAN HIEROGLYPH-1406A;Lo;0;L;;;;;N;;;;; +1406B;EGYPTIAN HIEROGLYPH-1406B;Lo;0;L;;;;;N;;;;; +1406C;EGYPTIAN HIEROGLYPH-1406C;Lo;0;L;;;;;N;;;;; +1406D;EGYPTIAN HIEROGLYPH-1406D;Lo;0;L;;;;;N;;;;; +1406E;EGYPTIAN HIEROGLYPH-1406E;Lo;0;L;;;;;N;;;;; +1406F;EGYPTIAN HIEROGLYPH-1406F;Lo;0;L;;;;;N;;;;; +14070;EGYPTIAN HIEROGLYPH-14070;Lo;0;L;;;;;N;;;;; +14071;EGYPTIAN HIEROGLYPH-14071;Lo;0;L;;;;;N;;;;; +14072;EGYPTIAN HIEROGLYPH-14072;Lo;0;L;;;;;N;;;;; +14073;EGYPTIAN HIEROGLYPH-14073;Lo;0;L;;;;;N;;;;; +14074;EGYPTIAN HIEROGLYPH-14074;Lo;0;L;;;;;N;;;;; +14075;EGYPTIAN HIEROGLYPH-14075;Lo;0;L;;;;;N;;;;; +14076;EGYPTIAN HIEROGLYPH-14076;Lo;0;L;;;;;N;;;;; +14077;EGYPTIAN HIEROGLYPH-14077;Lo;0;L;;;;;N;;;;; +14078;EGYPTIAN HIEROGLYPH-14078;Lo;0;L;;;;;N;;;;; +14079;EGYPTIAN HIEROGLYPH-14079;Lo;0;L;;;;;N;;;;; +1407A;EGYPTIAN HIEROGLYPH-1407A;Lo;0;L;;;;;N;;;;; +1407B;EGYPTIAN HIEROGLYPH-1407B;Lo;0;L;;;;;N;;;;; +1407C;EGYPTIAN HIEROGLYPH-1407C;Lo;0;L;;;;;N;;;;; +1407D;EGYPTIAN HIEROGLYPH-1407D;Lo;0;L;;;;;N;;;;; +1407E;EGYPTIAN HIEROGLYPH-1407E;Lo;0;L;;;;;N;;;;; +1407F;EGYPTIAN HIEROGLYPH-1407F;Lo;0;L;;;;;N;;;;; +14080;EGYPTIAN HIEROGLYPH-14080;Lo;0;L;;;;;N;;;;; +14081;EGYPTIAN HIEROGLYPH-14081;Lo;0;L;;;;;N;;;;; +14082;EGYPTIAN HIEROGLYPH-14082;Lo;0;L;;;;;N;;;;; +14083;EGYPTIAN HIEROGLYPH-14083;Lo;0;L;;;;;N;;;;; +14084;EGYPTIAN HIEROGLYPH-14084;Lo;0;L;;;;;N;;;;; +14085;EGYPTIAN HIEROGLYPH-14085;Lo;0;L;;;;;N;;;;; +14086;EGYPTIAN HIEROGLYPH-14086;Lo;0;L;;;;;N;;;;; +14087;EGYPTIAN HIEROGLYPH-14087;Lo;0;L;;;;;N;;;;; +14088;EGYPTIAN HIEROGLYPH-14088;Lo;0;L;;;;;N;;;;; +14089;EGYPTIAN HIEROGLYPH-14089;Lo;0;L;;;;;N;;;;; +1408A;EGYPTIAN HIEROGLYPH-1408A;Lo;0;L;;;;;N;;;;; +1408B;EGYPTIAN HIEROGLYPH-1408B;Lo;0;L;;;;;N;;;;; +1408C;EGYPTIAN HIEROGLYPH-1408C;Lo;0;L;;;;;N;;;;; +1408D;EGYPTIAN HIEROGLYPH-1408D;Lo;0;L;;;;;N;;;;; +1408E;EGYPTIAN HIEROGLYPH-1408E;Lo;0;L;;;;;N;;;;; +1408F;EGYPTIAN HIEROGLYPH-1408F;Lo;0;L;;;;;N;;;;; +14090;EGYPTIAN HIEROGLYPH-14090;Lo;0;L;;;;;N;;;;; +14091;EGYPTIAN HIEROGLYPH-14091;Lo;0;L;;;;;N;;;;; +14092;EGYPTIAN HIEROGLYPH-14092;Lo;0;L;;;;;N;;;;; +14093;EGYPTIAN HIEROGLYPH-14093;Lo;0;L;;;;;N;;;;; +14094;EGYPTIAN HIEROGLYPH-14094;Lo;0;L;;;;;N;;;;; +14095;EGYPTIAN HIEROGLYPH-14095;Lo;0;L;;;;;N;;;;; +14096;EGYPTIAN HIEROGLYPH-14096;Lo;0;L;;;;;N;;;;; +14097;EGYPTIAN HIEROGLYPH-14097;Lo;0;L;;;;;N;;;;; +14098;EGYPTIAN HIEROGLYPH-14098;Lo;0;L;;;;;N;;;;; +14099;EGYPTIAN HIEROGLYPH-14099;Lo;0;L;;;;;N;;;;; +1409A;EGYPTIAN HIEROGLYPH-1409A;Lo;0;L;;;;;N;;;;; +1409B;EGYPTIAN HIEROGLYPH-1409B;Lo;0;L;;;;;N;;;;; +1409C;EGYPTIAN HIEROGLYPH-1409C;Lo;0;L;;;;;N;;;;; +1409D;EGYPTIAN HIEROGLYPH-1409D;Lo;0;L;;;;;N;;;;; +1409E;EGYPTIAN HIEROGLYPH-1409E;Lo;0;L;;;;;N;;;;; +1409F;EGYPTIAN HIEROGLYPH-1409F;Lo;0;L;;;;;N;;;;; +140A0;EGYPTIAN HIEROGLYPH-140A0;Lo;0;L;;;;;N;;;;; +140A1;EGYPTIAN HIEROGLYPH-140A1;Lo;0;L;;;;;N;;;;; +140A2;EGYPTIAN HIEROGLYPH-140A2;Lo;0;L;;;;;N;;;;; +140A3;EGYPTIAN HIEROGLYPH-140A3;Lo;0;L;;;;;N;;;;; +140A4;EGYPTIAN HIEROGLYPH-140A4;Lo;0;L;;;;;N;;;;; +140A5;EGYPTIAN HIEROGLYPH-140A5;Lo;0;L;;;;;N;;;;; +140A6;EGYPTIAN HIEROGLYPH-140A6;Lo;0;L;;;;;N;;;;; +140A7;EGYPTIAN HIEROGLYPH-140A7;Lo;0;L;;;;;N;;;;; +140A8;EGYPTIAN HIEROGLYPH-140A8;Lo;0;L;;;;;N;;;;; +140A9;EGYPTIAN HIEROGLYPH-140A9;Lo;0;L;;;;;N;;;;; +140AA;EGYPTIAN HIEROGLYPH-140AA;Lo;0;L;;;;;N;;;;; +140AB;EGYPTIAN HIEROGLYPH-140AB;Lo;0;L;;;;;N;;;;; +140AC;EGYPTIAN HIEROGLYPH-140AC;Lo;0;L;;;;;N;;;;; +140AD;EGYPTIAN HIEROGLYPH-140AD;Lo;0;L;;;;;N;;;;; +140AE;EGYPTIAN HIEROGLYPH-140AE;Lo;0;L;;;;;N;;;;; +140AF;EGYPTIAN HIEROGLYPH-140AF;Lo;0;L;;;;;N;;;;; +140B0;EGYPTIAN HIEROGLYPH-140B0;Lo;0;L;;;;;N;;;;; +140B1;EGYPTIAN HIEROGLYPH-140B1;Lo;0;L;;;;;N;;;;; +140B2;EGYPTIAN HIEROGLYPH-140B2;Lo;0;L;;;;;N;;;;; +140B3;EGYPTIAN HIEROGLYPH-140B3;Lo;0;L;;;;;N;;;;; +140B4;EGYPTIAN HIEROGLYPH-140B4;Lo;0;L;;;;;N;;;;; +140B5;EGYPTIAN HIEROGLYPH-140B5;Lo;0;L;;;;;N;;;;; +140B6;EGYPTIAN HIEROGLYPH-140B6;Lo;0;L;;;;;N;;;;; +140B7;EGYPTIAN HIEROGLYPH-140B7;Lo;0;L;;;;;N;;;;; +140B8;EGYPTIAN HIEROGLYPH-140B8;Lo;0;L;;;;;N;;;;; +140B9;EGYPTIAN HIEROGLYPH-140B9;Lo;0;L;;;;;N;;;;; +140BA;EGYPTIAN HIEROGLYPH-140BA;Lo;0;L;;;;;N;;;;; +140BB;EGYPTIAN HIEROGLYPH-140BB;Lo;0;L;;;;;N;;;;; +140BC;EGYPTIAN HIEROGLYPH-140BC;Lo;0;L;;;;;N;;;;; +140BD;EGYPTIAN HIEROGLYPH-140BD;Lo;0;L;;;;;N;;;;; +140BE;EGYPTIAN HIEROGLYPH-140BE;Lo;0;L;;;;;N;;;;; +140BF;EGYPTIAN HIEROGLYPH-140BF;Lo;0;L;;;;;N;;;;; +140C0;EGYPTIAN HIEROGLYPH-140C0;Lo;0;L;;;;;N;;;;; +140C1;EGYPTIAN HIEROGLYPH-140C1;Lo;0;L;;;;;N;;;;; +140C2;EGYPTIAN HIEROGLYPH-140C2;Lo;0;L;;;;;N;;;;; +140C3;EGYPTIAN HIEROGLYPH-140C3;Lo;0;L;;;;;N;;;;; +140C4;EGYPTIAN HIEROGLYPH-140C4;Lo;0;L;;;;;N;;;;; +140C5;EGYPTIAN HIEROGLYPH-140C5;Lo;0;L;;;;;N;;;;; +140C6;EGYPTIAN HIEROGLYPH-140C6;Lo;0;L;;;;;N;;;;; +140C7;EGYPTIAN HIEROGLYPH-140C7;Lo;0;L;;;;;N;;;;; +140C8;EGYPTIAN HIEROGLYPH-140C8;Lo;0;L;;;;;N;;;;; +140C9;EGYPTIAN HIEROGLYPH-140C9;Lo;0;L;;;;;N;;;;; +140CA;EGYPTIAN HIEROGLYPH-140CA;Lo;0;L;;;;;N;;;;; +140CB;EGYPTIAN HIEROGLYPH-140CB;Lo;0;L;;;;;N;;;;; +140CC;EGYPTIAN HIEROGLYPH-140CC;Lo;0;L;;;;;N;;;;; +140CD;EGYPTIAN HIEROGLYPH-140CD;Lo;0;L;;;;;N;;;;; +140CE;EGYPTIAN HIEROGLYPH-140CE;Lo;0;L;;;;;N;;;;; +140CF;EGYPTIAN HIEROGLYPH-140CF;Lo;0;L;;;;;N;;;;; +140D0;EGYPTIAN HIEROGLYPH-140D0;Lo;0;L;;;;;N;;;;; +140D1;EGYPTIAN HIEROGLYPH-140D1;Lo;0;L;;;;;N;;;;; +140D2;EGYPTIAN HIEROGLYPH-140D2;Lo;0;L;;;;;N;;;;; +140D3;EGYPTIAN HIEROGLYPH-140D3;Lo;0;L;;;;;N;;;;; +140D4;EGYPTIAN HIEROGLYPH-140D4;Lo;0;L;;;;;N;;;;; +140D5;EGYPTIAN HIEROGLYPH-140D5;Lo;0;L;;;;;N;;;;; +140D6;EGYPTIAN HIEROGLYPH-140D6;Lo;0;L;;;;;N;;;;; +140D7;EGYPTIAN HIEROGLYPH-140D7;Lo;0;L;;;;;N;;;;; +140D8;EGYPTIAN HIEROGLYPH-140D8;Lo;0;L;;;;;N;;;;; +140D9;EGYPTIAN HIEROGLYPH-140D9;Lo;0;L;;;;;N;;;;; +140DA;EGYPTIAN HIEROGLYPH-140DA;Lo;0;L;;;;;N;;;;; +140DB;EGYPTIAN HIEROGLYPH-140DB;Lo;0;L;;;;;N;;;;; +140DC;EGYPTIAN HIEROGLYPH-140DC;Lo;0;L;;;;;N;;;;; +140DD;EGYPTIAN HIEROGLYPH-140DD;Lo;0;L;;;;;N;;;;; +140DE;EGYPTIAN HIEROGLYPH-140DE;Lo;0;L;;;;;N;;;;; +140DF;EGYPTIAN HIEROGLYPH-140DF;Lo;0;L;;;;;N;;;;; +140E0;EGYPTIAN HIEROGLYPH-140E0;Lo;0;L;;;;;N;;;;; +140E1;EGYPTIAN HIEROGLYPH-140E1;Lo;0;L;;;;;N;;;;; +140E2;EGYPTIAN HIEROGLYPH-140E2;Lo;0;L;;;;;N;;;;; +140E3;EGYPTIAN HIEROGLYPH-140E3;Lo;0;L;;;;;N;;;;; +140E4;EGYPTIAN HIEROGLYPH-140E4;Lo;0;L;;;;;N;;;;; +140E5;EGYPTIAN HIEROGLYPH-140E5;Lo;0;L;;;;;N;;;;; +140E6;EGYPTIAN HIEROGLYPH-140E6;Lo;0;L;;;;;N;;;;; +140E7;EGYPTIAN HIEROGLYPH-140E7;Lo;0;L;;;;;N;;;;; +140E8;EGYPTIAN HIEROGLYPH-140E8;Lo;0;L;;;;;N;;;;; +140E9;EGYPTIAN HIEROGLYPH-140E9;Lo;0;L;;;;;N;;;;; +140EA;EGYPTIAN HIEROGLYPH-140EA;Lo;0;L;;;;;N;;;;; +140EB;EGYPTIAN HIEROGLYPH-140EB;Lo;0;L;;;;;N;;;;; +140EC;EGYPTIAN HIEROGLYPH-140EC;Lo;0;L;;;;;N;;;;; +140ED;EGYPTIAN HIEROGLYPH-140ED;Lo;0;L;;;;;N;;;;; +140EE;EGYPTIAN HIEROGLYPH-140EE;Lo;0;L;;;;;N;;;;; +140EF;EGYPTIAN HIEROGLYPH-140EF;Lo;0;L;;;;;N;;;;; +140F0;EGYPTIAN HIEROGLYPH-140F0;Lo;0;L;;;;;N;;;;; +140F1;EGYPTIAN HIEROGLYPH-140F1;Lo;0;L;;;;;N;;;;; +140F2;EGYPTIAN HIEROGLYPH-140F2;Lo;0;L;;;;;N;;;;; +140F3;EGYPTIAN HIEROGLYPH-140F3;Lo;0;L;;;;;N;;;;; +140F4;EGYPTIAN HIEROGLYPH-140F4;Lo;0;L;;;;;N;;;;; +140F5;EGYPTIAN HIEROGLYPH-140F5;Lo;0;L;;;;;N;;;;; +140F6;EGYPTIAN HIEROGLYPH-140F6;Lo;0;L;;;;;N;;;;; +140F7;EGYPTIAN HIEROGLYPH-140F7;Lo;0;L;;;;;N;;;;; +140F8;EGYPTIAN HIEROGLYPH-140F8;Lo;0;L;;;;;N;;;;; +140F9;EGYPTIAN HIEROGLYPH-140F9;Lo;0;L;;;;;N;;;;; +140FA;EGYPTIAN HIEROGLYPH-140FA;Lo;0;L;;;;;N;;;;; +140FB;EGYPTIAN HIEROGLYPH-140FB;Lo;0;L;;;;;N;;;;; +140FC;EGYPTIAN HIEROGLYPH-140FC;Lo;0;L;;;;;N;;;;; +140FD;EGYPTIAN HIEROGLYPH-140FD;Lo;0;L;;;;;N;;;;; +140FE;EGYPTIAN HIEROGLYPH-140FE;Lo;0;L;;;;;N;;;;; +140FF;EGYPTIAN HIEROGLYPH-140FF;Lo;0;L;;;;;N;;;;; +14100;EGYPTIAN HIEROGLYPH-14100;Lo;0;L;;;;;N;;;;; +14101;EGYPTIAN HIEROGLYPH-14101;Lo;0;L;;;;;N;;;;; +14102;EGYPTIAN HIEROGLYPH-14102;Lo;0;L;;;;;N;;;;; +14103;EGYPTIAN HIEROGLYPH-14103;Lo;0;L;;;;;N;;;;; +14104;EGYPTIAN HIEROGLYPH-14104;Lo;0;L;;;;;N;;;;; +14105;EGYPTIAN HIEROGLYPH-14105;Lo;0;L;;;;;N;;;;; +14106;EGYPTIAN HIEROGLYPH-14106;Lo;0;L;;;;;N;;;;; +14107;EGYPTIAN HIEROGLYPH-14107;Lo;0;L;;;;;N;;;;; +14108;EGYPTIAN HIEROGLYPH-14108;Lo;0;L;;;;;N;;;;; +14109;EGYPTIAN HIEROGLYPH-14109;Lo;0;L;;;;;N;;;;; +1410A;EGYPTIAN HIEROGLYPH-1410A;Lo;0;L;;;;;N;;;;; +1410B;EGYPTIAN HIEROGLYPH-1410B;Lo;0;L;;;;;N;;;;; +1410C;EGYPTIAN HIEROGLYPH-1410C;Lo;0;L;;;;;N;;;;; +1410D;EGYPTIAN HIEROGLYPH-1410D;Lo;0;L;;;;;N;;;;; +1410E;EGYPTIAN HIEROGLYPH-1410E;Lo;0;L;;;;;N;;;;; +1410F;EGYPTIAN HIEROGLYPH-1410F;Lo;0;L;;;;;N;;;;; +14110;EGYPTIAN HIEROGLYPH-14110;Lo;0;L;;;;;N;;;;; +14111;EGYPTIAN HIEROGLYPH-14111;Lo;0;L;;;;;N;;;;; +14112;EGYPTIAN HIEROGLYPH-14112;Lo;0;L;;;;;N;;;;; +14113;EGYPTIAN HIEROGLYPH-14113;Lo;0;L;;;;;N;;;;; +14114;EGYPTIAN HIEROGLYPH-14114;Lo;0;L;;;;;N;;;;; +14115;EGYPTIAN HIEROGLYPH-14115;Lo;0;L;;;;;N;;;;; +14116;EGYPTIAN HIEROGLYPH-14116;Lo;0;L;;;;;N;;;;; +14117;EGYPTIAN HIEROGLYPH-14117;Lo;0;L;;;;;N;;;;; +14118;EGYPTIAN HIEROGLYPH-14118;Lo;0;L;;;;;N;;;;; +14119;EGYPTIAN HIEROGLYPH-14119;Lo;0;L;;;;;N;;;;; +1411A;EGYPTIAN HIEROGLYPH-1411A;Lo;0;L;;;;;N;;;;; +1411B;EGYPTIAN HIEROGLYPH-1411B;Lo;0;L;;;;;N;;;;; +1411C;EGYPTIAN HIEROGLYPH-1411C;Lo;0;L;;;;;N;;;;; +1411D;EGYPTIAN HIEROGLYPH-1411D;Lo;0;L;;;;;N;;;;; +1411E;EGYPTIAN HIEROGLYPH-1411E;Lo;0;L;;;;;N;;;;; +1411F;EGYPTIAN HIEROGLYPH-1411F;Lo;0;L;;;;;N;;;;; +14120;EGYPTIAN HIEROGLYPH-14120;Lo;0;L;;;;;N;;;;; +14121;EGYPTIAN HIEROGLYPH-14121;Lo;0;L;;;;;N;;;;; +14122;EGYPTIAN HIEROGLYPH-14122;Lo;0;L;;;;;N;;;;; +14123;EGYPTIAN HIEROGLYPH-14123;Lo;0;L;;;;;N;;;;; +14124;EGYPTIAN HIEROGLYPH-14124;Lo;0;L;;;;;N;;;;; +14125;EGYPTIAN HIEROGLYPH-14125;Lo;0;L;;;;;N;;;;; +14126;EGYPTIAN HIEROGLYPH-14126;Lo;0;L;;;;;N;;;;; +14127;EGYPTIAN HIEROGLYPH-14127;Lo;0;L;;;;;N;;;;; +14128;EGYPTIAN HIEROGLYPH-14128;Lo;0;L;;;;;N;;;;; +14129;EGYPTIAN HIEROGLYPH-14129;Lo;0;L;;;;;N;;;;; +1412A;EGYPTIAN HIEROGLYPH-1412A;Lo;0;L;;;;;N;;;;; +1412B;EGYPTIAN HIEROGLYPH-1412B;Lo;0;L;;;;;N;;;;; +1412C;EGYPTIAN HIEROGLYPH-1412C;Lo;0;L;;;;;N;;;;; +1412D;EGYPTIAN HIEROGLYPH-1412D;Lo;0;L;;;;;N;;;;; +1412E;EGYPTIAN HIEROGLYPH-1412E;Lo;0;L;;;;;N;;;;; +1412F;EGYPTIAN HIEROGLYPH-1412F;Lo;0;L;;;;;N;;;;; +14130;EGYPTIAN HIEROGLYPH-14130;Lo;0;L;;;;;N;;;;; +14131;EGYPTIAN HIEROGLYPH-14131;Lo;0;L;;;;;N;;;;; +14132;EGYPTIAN HIEROGLYPH-14132;Lo;0;L;;;;;N;;;;; +14133;EGYPTIAN HIEROGLYPH-14133;Lo;0;L;;;;;N;;;;; +14134;EGYPTIAN HIEROGLYPH-14134;Lo;0;L;;;;;N;;;;; +14135;EGYPTIAN HIEROGLYPH-14135;Lo;0;L;;;;;N;;;;; +14136;EGYPTIAN HIEROGLYPH-14136;Lo;0;L;;;;;N;;;;; +14137;EGYPTIAN HIEROGLYPH-14137;Lo;0;L;;;;;N;;;;; +14138;EGYPTIAN HIEROGLYPH-14138;Lo;0;L;;;;;N;;;;; +14139;EGYPTIAN HIEROGLYPH-14139;Lo;0;L;;;;;N;;;;; +1413A;EGYPTIAN HIEROGLYPH-1413A;Lo;0;L;;;;;N;;;;; +1413B;EGYPTIAN HIEROGLYPH-1413B;Lo;0;L;;;;;N;;;;; +1413C;EGYPTIAN HIEROGLYPH-1413C;Lo;0;L;;;;;N;;;;; +1413D;EGYPTIAN HIEROGLYPH-1413D;Lo;0;L;;;;;N;;;;; +1413E;EGYPTIAN HIEROGLYPH-1413E;Lo;0;L;;;;;N;;;;; +1413F;EGYPTIAN HIEROGLYPH-1413F;Lo;0;L;;;;;N;;;;; +14140;EGYPTIAN HIEROGLYPH-14140;Lo;0;L;;;;;N;;;;; +14141;EGYPTIAN HIEROGLYPH-14141;Lo;0;L;;;;;N;;;;; +14142;EGYPTIAN HIEROGLYPH-14142;Lo;0;L;;;;;N;;;;; +14143;EGYPTIAN HIEROGLYPH-14143;Lo;0;L;;;;;N;;;;; +14144;EGYPTIAN HIEROGLYPH-14144;Lo;0;L;;;;;N;;;;; +14145;EGYPTIAN HIEROGLYPH-14145;Lo;0;L;;;;;N;;;;; +14146;EGYPTIAN HIEROGLYPH-14146;Lo;0;L;;;;;N;;;;; +14147;EGYPTIAN HIEROGLYPH-14147;Lo;0;L;;;;;N;;;;; +14148;EGYPTIAN HIEROGLYPH-14148;Lo;0;L;;;;;N;;;;; +14149;EGYPTIAN HIEROGLYPH-14149;Lo;0;L;;;;;N;;;;; +1414A;EGYPTIAN HIEROGLYPH-1414A;Lo;0;L;;;;;N;;;;; +1414B;EGYPTIAN HIEROGLYPH-1414B;Lo;0;L;;;;;N;;;;; +1414C;EGYPTIAN HIEROGLYPH-1414C;Lo;0;L;;;;;N;;;;; +1414D;EGYPTIAN HIEROGLYPH-1414D;Lo;0;L;;;;;N;;;;; +1414E;EGYPTIAN HIEROGLYPH-1414E;Lo;0;L;;;;;N;;;;; +1414F;EGYPTIAN HIEROGLYPH-1414F;Lo;0;L;;;;;N;;;;; +14150;EGYPTIAN HIEROGLYPH-14150;Lo;0;L;;;;;N;;;;; +14151;EGYPTIAN HIEROGLYPH-14151;Lo;0;L;;;;;N;;;;; +14152;EGYPTIAN HIEROGLYPH-14152;Lo;0;L;;;;;N;;;;; +14153;EGYPTIAN HIEROGLYPH-14153;Lo;0;L;;;;;N;;;;; +14154;EGYPTIAN HIEROGLYPH-14154;Lo;0;L;;;;;N;;;;; +14155;EGYPTIAN HIEROGLYPH-14155;Lo;0;L;;;;;N;;;;; +14156;EGYPTIAN HIEROGLYPH-14156;Lo;0;L;;;;;N;;;;; +14157;EGYPTIAN HIEROGLYPH-14157;Lo;0;L;;;;;N;;;;; +14158;EGYPTIAN HIEROGLYPH-14158;Lo;0;L;;;;;N;;;;; +14159;EGYPTIAN HIEROGLYPH-14159;Lo;0;L;;;;;N;;;;; +1415A;EGYPTIAN HIEROGLYPH-1415A;Lo;0;L;;;;;N;;;;; +1415B;EGYPTIAN HIEROGLYPH-1415B;Lo;0;L;;;;;N;;;;; +1415C;EGYPTIAN HIEROGLYPH-1415C;Lo;0;L;;;;;N;;;;; +1415D;EGYPTIAN HIEROGLYPH-1415D;Lo;0;L;;;;;N;;;;; +1415E;EGYPTIAN HIEROGLYPH-1415E;Lo;0;L;;;;;N;;;;; +1415F;EGYPTIAN HIEROGLYPH-1415F;Lo;0;L;;;;;N;;;;; +14160;EGYPTIAN HIEROGLYPH-14160;Lo;0;L;;;;;N;;;;; +14161;EGYPTIAN HIEROGLYPH-14161;Lo;0;L;;;;;N;;;;; +14162;EGYPTIAN HIEROGLYPH-14162;Lo;0;L;;;;;N;;;;; +14163;EGYPTIAN HIEROGLYPH-14163;Lo;0;L;;;;;N;;;;; +14164;EGYPTIAN HIEROGLYPH-14164;Lo;0;L;;;;;N;;;;; +14165;EGYPTIAN HIEROGLYPH-14165;Lo;0;L;;;;;N;;;;; +14166;EGYPTIAN HIEROGLYPH-14166;Lo;0;L;;;;;N;;;;; +14167;EGYPTIAN HIEROGLYPH-14167;Lo;0;L;;;;;N;;;;; +14168;EGYPTIAN HIEROGLYPH-14168;Lo;0;L;;;;;N;;;;; +14169;EGYPTIAN HIEROGLYPH-14169;Lo;0;L;;;;;N;;;;; +1416A;EGYPTIAN HIEROGLYPH-1416A;Lo;0;L;;;;;N;;;;; +1416B;EGYPTIAN HIEROGLYPH-1416B;Lo;0;L;;;;;N;;;;; +1416C;EGYPTIAN HIEROGLYPH-1416C;Lo;0;L;;;;;N;;;;; +1416D;EGYPTIAN HIEROGLYPH-1416D;Lo;0;L;;;;;N;;;;; +1416E;EGYPTIAN HIEROGLYPH-1416E;Lo;0;L;;;;;N;;;;; +1416F;EGYPTIAN HIEROGLYPH-1416F;Lo;0;L;;;;;N;;;;; +14170;EGYPTIAN HIEROGLYPH-14170;Lo;0;L;;;;;N;;;;; +14171;EGYPTIAN HIEROGLYPH-14171;Lo;0;L;;;;;N;;;;; +14172;EGYPTIAN HIEROGLYPH-14172;Lo;0;L;;;;;N;;;;; +14173;EGYPTIAN HIEROGLYPH-14173;Lo;0;L;;;;;N;;;;; +14174;EGYPTIAN HIEROGLYPH-14174;Lo;0;L;;;;;N;;;;; +14175;EGYPTIAN HIEROGLYPH-14175;Lo;0;L;;;;;N;;;;; +14176;EGYPTIAN HIEROGLYPH-14176;Lo;0;L;;;;;N;;;;; +14177;EGYPTIAN HIEROGLYPH-14177;Lo;0;L;;;;;N;;;;; +14178;EGYPTIAN HIEROGLYPH-14178;Lo;0;L;;;;;N;;;;; +14179;EGYPTIAN HIEROGLYPH-14179;Lo;0;L;;;;;N;;;;; +1417A;EGYPTIAN HIEROGLYPH-1417A;Lo;0;L;;;;;N;;;;; +1417B;EGYPTIAN HIEROGLYPH-1417B;Lo;0;L;;;;;N;;;;; +1417C;EGYPTIAN HIEROGLYPH-1417C;Lo;0;L;;;;;N;;;;; +1417D;EGYPTIAN HIEROGLYPH-1417D;Lo;0;L;;;;;N;;;;; +1417E;EGYPTIAN HIEROGLYPH-1417E;Lo;0;L;;;;;N;;;;; +1417F;EGYPTIAN HIEROGLYPH-1417F;Lo;0;L;;;;;N;;;;; +14180;EGYPTIAN HIEROGLYPH-14180;Lo;0;L;;;;;N;;;;; +14181;EGYPTIAN HIEROGLYPH-14181;Lo;0;L;;;;;N;;;;; +14182;EGYPTIAN HIEROGLYPH-14182;Lo;0;L;;;;;N;;;;; +14183;EGYPTIAN HIEROGLYPH-14183;Lo;0;L;;;;;N;;;;; +14184;EGYPTIAN HIEROGLYPH-14184;Lo;0;L;;;;;N;;;;; +14185;EGYPTIAN HIEROGLYPH-14185;Lo;0;L;;;;;N;;;;; +14186;EGYPTIAN HIEROGLYPH-14186;Lo;0;L;;;;;N;;;;; +14187;EGYPTIAN HIEROGLYPH-14187;Lo;0;L;;;;;N;;;;; +14188;EGYPTIAN HIEROGLYPH-14188;Lo;0;L;;;;;N;;;;; +14189;EGYPTIAN HIEROGLYPH-14189;Lo;0;L;;;;;N;;;;; +1418A;EGYPTIAN HIEROGLYPH-1418A;Lo;0;L;;;;;N;;;;; +1418B;EGYPTIAN HIEROGLYPH-1418B;Lo;0;L;;;;;N;;;;; +1418C;EGYPTIAN HIEROGLYPH-1418C;Lo;0;L;;;;;N;;;;; +1418D;EGYPTIAN HIEROGLYPH-1418D;Lo;0;L;;;;;N;;;;; +1418E;EGYPTIAN HIEROGLYPH-1418E;Lo;0;L;;;;;N;;;;; +1418F;EGYPTIAN HIEROGLYPH-1418F;Lo;0;L;;;;;N;;;;; +14190;EGYPTIAN HIEROGLYPH-14190;Lo;0;L;;;;;N;;;;; +14191;EGYPTIAN HIEROGLYPH-14191;Lo;0;L;;;;;N;;;;; +14192;EGYPTIAN HIEROGLYPH-14192;Lo;0;L;;;;;N;;;;; +14193;EGYPTIAN HIEROGLYPH-14193;Lo;0;L;;;;;N;;;;; +14194;EGYPTIAN HIEROGLYPH-14194;Lo;0;L;;;;;N;;;;; +14195;EGYPTIAN HIEROGLYPH-14195;Lo;0;L;;;;;N;;;;; +14196;EGYPTIAN HIEROGLYPH-14196;Lo;0;L;;;;;N;;;;; +14197;EGYPTIAN HIEROGLYPH-14197;Lo;0;L;;;;;N;;;;; +14198;EGYPTIAN HIEROGLYPH-14198;Lo;0;L;;;;;N;;;;; +14199;EGYPTIAN HIEROGLYPH-14199;Lo;0;L;;;;;N;;;;; +1419A;EGYPTIAN HIEROGLYPH-1419A;Lo;0;L;;;;;N;;;;; +1419B;EGYPTIAN HIEROGLYPH-1419B;Lo;0;L;;;;;N;;;;; +1419C;EGYPTIAN HIEROGLYPH-1419C;Lo;0;L;;;;;N;;;;; +1419D;EGYPTIAN HIEROGLYPH-1419D;Lo;0;L;;;;;N;;;;; +1419E;EGYPTIAN HIEROGLYPH-1419E;Lo;0;L;;;;;N;;;;; +1419F;EGYPTIAN HIEROGLYPH-1419F;Lo;0;L;;;;;N;;;;; +141A0;EGYPTIAN HIEROGLYPH-141A0;Lo;0;L;;;;;N;;;;; +141A1;EGYPTIAN HIEROGLYPH-141A1;Lo;0;L;;;;;N;;;;; +141A2;EGYPTIAN HIEROGLYPH-141A2;Lo;0;L;;;;;N;;;;; +141A3;EGYPTIAN HIEROGLYPH-141A3;Lo;0;L;;;;;N;;;;; +141A4;EGYPTIAN HIEROGLYPH-141A4;Lo;0;L;;;;;N;;;;; +141A5;EGYPTIAN HIEROGLYPH-141A5;Lo;0;L;;;;;N;;;;; +141A6;EGYPTIAN HIEROGLYPH-141A6;Lo;0;L;;;;;N;;;;; +141A7;EGYPTIAN HIEROGLYPH-141A7;Lo;0;L;;;;;N;;;;; +141A8;EGYPTIAN HIEROGLYPH-141A8;Lo;0;L;;;;;N;;;;; +141A9;EGYPTIAN HIEROGLYPH-141A9;Lo;0;L;;;;;N;;;;; +141AA;EGYPTIAN HIEROGLYPH-141AA;Lo;0;L;;;;;N;;;;; +141AB;EGYPTIAN HIEROGLYPH-141AB;Lo;0;L;;;;;N;;;;; +141AC;EGYPTIAN HIEROGLYPH-141AC;Lo;0;L;;;;;N;;;;; +141AD;EGYPTIAN HIEROGLYPH-141AD;Lo;0;L;;;;;N;;;;; +141AE;EGYPTIAN HIEROGLYPH-141AE;Lo;0;L;;;;;N;;;;; +141AF;EGYPTIAN HIEROGLYPH-141AF;Lo;0;L;;;;;N;;;;; +141B0;EGYPTIAN HIEROGLYPH-141B0;Lo;0;L;;;;;N;;;;; +141B1;EGYPTIAN HIEROGLYPH-141B1;Lo;0;L;;;;;N;;;;; +141B2;EGYPTIAN HIEROGLYPH-141B2;Lo;0;L;;;;;N;;;;; +141B3;EGYPTIAN HIEROGLYPH-141B3;Lo;0;L;;;;;N;;;;; +141B4;EGYPTIAN HIEROGLYPH-141B4;Lo;0;L;;;;;N;;;;; +141B5;EGYPTIAN HIEROGLYPH-141B5;Lo;0;L;;;;;N;;;;; +141B6;EGYPTIAN HIEROGLYPH-141B6;Lo;0;L;;;;;N;;;;; +141B7;EGYPTIAN HIEROGLYPH-141B7;Lo;0;L;;;;;N;;;;; +141B8;EGYPTIAN HIEROGLYPH-141B8;Lo;0;L;;;;;N;;;;; +141B9;EGYPTIAN HIEROGLYPH-141B9;Lo;0;L;;;;;N;;;;; +141BA;EGYPTIAN HIEROGLYPH-141BA;Lo;0;L;;;;;N;;;;; +141BB;EGYPTIAN HIEROGLYPH-141BB;Lo;0;L;;;;;N;;;;; +141BC;EGYPTIAN HIEROGLYPH-141BC;Lo;0;L;;;;;N;;;;; +141BD;EGYPTIAN HIEROGLYPH-141BD;Lo;0;L;;;;;N;;;;; +141BE;EGYPTIAN HIEROGLYPH-141BE;Lo;0;L;;;;;N;;;;; +141BF;EGYPTIAN HIEROGLYPH-141BF;Lo;0;L;;;;;N;;;;; +141C0;EGYPTIAN HIEROGLYPH-141C0;Lo;0;L;;;;;N;;;;; +141C1;EGYPTIAN HIEROGLYPH-141C1;Lo;0;L;;;;;N;;;;; +141C2;EGYPTIAN HIEROGLYPH-141C2;Lo;0;L;;;;;N;;;;; +141C3;EGYPTIAN HIEROGLYPH-141C3;Lo;0;L;;;;;N;;;;; +141C4;EGYPTIAN HIEROGLYPH-141C4;Lo;0;L;;;;;N;;;;; +141C5;EGYPTIAN HIEROGLYPH-141C5;Lo;0;L;;;;;N;;;;; +141C6;EGYPTIAN HIEROGLYPH-141C6;Lo;0;L;;;;;N;;;;; +141C7;EGYPTIAN HIEROGLYPH-141C7;Lo;0;L;;;;;N;;;;; +141C8;EGYPTIAN HIEROGLYPH-141C8;Lo;0;L;;;;;N;;;;; +141C9;EGYPTIAN HIEROGLYPH-141C9;Lo;0;L;;;;;N;;;;; +141CA;EGYPTIAN HIEROGLYPH-141CA;Lo;0;L;;;;;N;;;;; +141CB;EGYPTIAN HIEROGLYPH-141CB;Lo;0;L;;;;;N;;;;; +141CC;EGYPTIAN HIEROGLYPH-141CC;Lo;0;L;;;;;N;;;;; +141CD;EGYPTIAN HIEROGLYPH-141CD;Lo;0;L;;;;;N;;;;; +141CE;EGYPTIAN HIEROGLYPH-141CE;Lo;0;L;;;;;N;;;;; +141CF;EGYPTIAN HIEROGLYPH-141CF;Lo;0;L;;;;;N;;;;; +141D0;EGYPTIAN HIEROGLYPH-141D0;Lo;0;L;;;;;N;;;;; +141D1;EGYPTIAN HIEROGLYPH-141D1;Lo;0;L;;;;;N;;;;; +141D2;EGYPTIAN HIEROGLYPH-141D2;Lo;0;L;;;;;N;;;;; +141D3;EGYPTIAN HIEROGLYPH-141D3;Lo;0;L;;;;;N;;;;; +141D4;EGYPTIAN HIEROGLYPH-141D4;Lo;0;L;;;;;N;;;;; +141D5;EGYPTIAN HIEROGLYPH-141D5;Lo;0;L;;;;;N;;;;; +141D6;EGYPTIAN HIEROGLYPH-141D6;Lo;0;L;;;;;N;;;;; +141D7;EGYPTIAN HIEROGLYPH-141D7;Lo;0;L;;;;;N;;;;; +141D8;EGYPTIAN HIEROGLYPH-141D8;Lo;0;L;;;;;N;;;;; +141D9;EGYPTIAN HIEROGLYPH-141D9;Lo;0;L;;;;;N;;;;; +141DA;EGYPTIAN HIEROGLYPH-141DA;Lo;0;L;;;;;N;;;;; +141DB;EGYPTIAN HIEROGLYPH-141DB;Lo;0;L;;;;;N;;;;; +141DC;EGYPTIAN HIEROGLYPH-141DC;Lo;0;L;;;;;N;;;;; +141DD;EGYPTIAN HIEROGLYPH-141DD;Lo;0;L;;;;;N;;;;; +141DE;EGYPTIAN HIEROGLYPH-141DE;Lo;0;L;;;;;N;;;;; +141DF;EGYPTIAN HIEROGLYPH-141DF;Lo;0;L;;;;;N;;;;; +141E0;EGYPTIAN HIEROGLYPH-141E0;Lo;0;L;;;;;N;;;;; +141E1;EGYPTIAN HIEROGLYPH-141E1;Lo;0;L;;;;;N;;;;; +141E2;EGYPTIAN HIEROGLYPH-141E2;Lo;0;L;;;;;N;;;;; +141E3;EGYPTIAN HIEROGLYPH-141E3;Lo;0;L;;;;;N;;;;; +141E4;EGYPTIAN HIEROGLYPH-141E4;Lo;0;L;;;;;N;;;;; +141E5;EGYPTIAN HIEROGLYPH-141E5;Lo;0;L;;;;;N;;;;; +141E6;EGYPTIAN HIEROGLYPH-141E6;Lo;0;L;;;;;N;;;;; +141E7;EGYPTIAN HIEROGLYPH-141E7;Lo;0;L;;;;;N;;;;; +141E8;EGYPTIAN HIEROGLYPH-141E8;Lo;0;L;;;;;N;;;;; +141E9;EGYPTIAN HIEROGLYPH-141E9;Lo;0;L;;;;;N;;;;; +141EA;EGYPTIAN HIEROGLYPH-141EA;Lo;0;L;;;;;N;;;;; +141EB;EGYPTIAN HIEROGLYPH-141EB;Lo;0;L;;;;;N;;;;; +141EC;EGYPTIAN HIEROGLYPH-141EC;Lo;0;L;;;;;N;;;;; +141ED;EGYPTIAN HIEROGLYPH-141ED;Lo;0;L;;;;;N;;;;; +141EE;EGYPTIAN HIEROGLYPH-141EE;Lo;0;L;;;;;N;;;;; +141EF;EGYPTIAN HIEROGLYPH-141EF;Lo;0;L;;;;;N;;;;; +141F0;EGYPTIAN HIEROGLYPH-141F0;Lo;0;L;;;;;N;;;;; +141F1;EGYPTIAN HIEROGLYPH-141F1;Lo;0;L;;;;;N;;;;; +141F2;EGYPTIAN HIEROGLYPH-141F2;Lo;0;L;;;;;N;;;;; +141F3;EGYPTIAN HIEROGLYPH-141F3;Lo;0;L;;;;;N;;;;; +141F4;EGYPTIAN HIEROGLYPH-141F4;Lo;0;L;;;;;N;;;;; +141F5;EGYPTIAN HIEROGLYPH-141F5;Lo;0;L;;;;;N;;;;; +141F6;EGYPTIAN HIEROGLYPH-141F6;Lo;0;L;;;;;N;;;;; +141F7;EGYPTIAN HIEROGLYPH-141F7;Lo;0;L;;;;;N;;;;; +141F8;EGYPTIAN HIEROGLYPH-141F8;Lo;0;L;;;;;N;;;;; +141F9;EGYPTIAN HIEROGLYPH-141F9;Lo;0;L;;;;;N;;;;; +141FA;EGYPTIAN HIEROGLYPH-141FA;Lo;0;L;;;;;N;;;;; +141FB;EGYPTIAN HIEROGLYPH-141FB;Lo;0;L;;;;;N;;;;; +141FC;EGYPTIAN HIEROGLYPH-141FC;Lo;0;L;;;;;N;;;;; +141FD;EGYPTIAN HIEROGLYPH-141FD;Lo;0;L;;;;;N;;;;; +141FE;EGYPTIAN HIEROGLYPH-141FE;Lo;0;L;;;;;N;;;;; +141FF;EGYPTIAN HIEROGLYPH-141FF;Lo;0;L;;;;;N;;;;; +14200;EGYPTIAN HIEROGLYPH-14200;Lo;0;L;;;;;N;;;;; +14201;EGYPTIAN HIEROGLYPH-14201;Lo;0;L;;;;;N;;;;; +14202;EGYPTIAN HIEROGLYPH-14202;Lo;0;L;;;;;N;;;;; +14203;EGYPTIAN HIEROGLYPH-14203;Lo;0;L;;;;;N;;;;; +14204;EGYPTIAN HIEROGLYPH-14204;Lo;0;L;;;;;N;;;;; +14205;EGYPTIAN HIEROGLYPH-14205;Lo;0;L;;;;;N;;;;; +14206;EGYPTIAN HIEROGLYPH-14206;Lo;0;L;;;;;N;;;;; +14207;EGYPTIAN HIEROGLYPH-14207;Lo;0;L;;;;;N;;;;; +14208;EGYPTIAN HIEROGLYPH-14208;Lo;0;L;;;;;N;;;;; +14209;EGYPTIAN HIEROGLYPH-14209;Lo;0;L;;;;;N;;;;; +1420A;EGYPTIAN HIEROGLYPH-1420A;Lo;0;L;;;;;N;;;;; +1420B;EGYPTIAN HIEROGLYPH-1420B;Lo;0;L;;;;;N;;;;; +1420C;EGYPTIAN HIEROGLYPH-1420C;Lo;0;L;;;;;N;;;;; +1420D;EGYPTIAN HIEROGLYPH-1420D;Lo;0;L;;;;;N;;;;; +1420E;EGYPTIAN HIEROGLYPH-1420E;Lo;0;L;;;;;N;;;;; +1420F;EGYPTIAN HIEROGLYPH-1420F;Lo;0;L;;;;;N;;;;; +14210;EGYPTIAN HIEROGLYPH-14210;Lo;0;L;;;;;N;;;;; +14211;EGYPTIAN HIEROGLYPH-14211;Lo;0;L;;;;;N;;;;; +14212;EGYPTIAN HIEROGLYPH-14212;Lo;0;L;;;;;N;;;;; +14213;EGYPTIAN HIEROGLYPH-14213;Lo;0;L;;;;;N;;;;; +14214;EGYPTIAN HIEROGLYPH-14214;Lo;0;L;;;;;N;;;;; +14215;EGYPTIAN HIEROGLYPH-14215;Lo;0;L;;;;;N;;;;; +14216;EGYPTIAN HIEROGLYPH-14216;Lo;0;L;;;;;N;;;;; +14217;EGYPTIAN HIEROGLYPH-14217;Lo;0;L;;;;;N;;;;; +14218;EGYPTIAN HIEROGLYPH-14218;Lo;0;L;;;;;N;;;;; +14219;EGYPTIAN HIEROGLYPH-14219;Lo;0;L;;;;;N;;;;; +1421A;EGYPTIAN HIEROGLYPH-1421A;Lo;0;L;;;;;N;;;;; +1421B;EGYPTIAN HIEROGLYPH-1421B;Lo;0;L;;;;;N;;;;; +1421C;EGYPTIAN HIEROGLYPH-1421C;Lo;0;L;;;;;N;;;;; +1421D;EGYPTIAN HIEROGLYPH-1421D;Lo;0;L;;;;;N;;;;; +1421E;EGYPTIAN HIEROGLYPH-1421E;Lo;0;L;;;;;N;;;;; +1421F;EGYPTIAN HIEROGLYPH-1421F;Lo;0;L;;;;;N;;;;; +14220;EGYPTIAN HIEROGLYPH-14220;Lo;0;L;;;;;N;;;;; +14221;EGYPTIAN HIEROGLYPH-14221;Lo;0;L;;;;;N;;;;; +14222;EGYPTIAN HIEROGLYPH-14222;Lo;0;L;;;;;N;;;;; +14223;EGYPTIAN HIEROGLYPH-14223;Lo;0;L;;;;;N;;;;; +14224;EGYPTIAN HIEROGLYPH-14224;Lo;0;L;;;;;N;;;;; +14225;EGYPTIAN HIEROGLYPH-14225;Lo;0;L;;;;;N;;;;; +14226;EGYPTIAN HIEROGLYPH-14226;Lo;0;L;;;;;N;;;;; +14227;EGYPTIAN HIEROGLYPH-14227;Lo;0;L;;;;;N;;;;; +14228;EGYPTIAN HIEROGLYPH-14228;Lo;0;L;;;;;N;;;;; +14229;EGYPTIAN HIEROGLYPH-14229;Lo;0;L;;;;;N;;;;; +1422A;EGYPTIAN HIEROGLYPH-1422A;Lo;0;L;;;;;N;;;;; +1422B;EGYPTIAN HIEROGLYPH-1422B;Lo;0;L;;;;;N;;;;; +1422C;EGYPTIAN HIEROGLYPH-1422C;Lo;0;L;;;;;N;;;;; +1422D;EGYPTIAN HIEROGLYPH-1422D;Lo;0;L;;;;;N;;;;; +1422E;EGYPTIAN HIEROGLYPH-1422E;Lo;0;L;;;;;N;;;;; +1422F;EGYPTIAN HIEROGLYPH-1422F;Lo;0;L;;;;;N;;;;; +14230;EGYPTIAN HIEROGLYPH-14230;Lo;0;L;;;;;N;;;;; +14231;EGYPTIAN HIEROGLYPH-14231;Lo;0;L;;;;;N;;;;; +14232;EGYPTIAN HIEROGLYPH-14232;Lo;0;L;;;;;N;;;;; +14233;EGYPTIAN HIEROGLYPH-14233;Lo;0;L;;;;;N;;;;; +14234;EGYPTIAN HIEROGLYPH-14234;Lo;0;L;;;;;N;;;;; +14235;EGYPTIAN HIEROGLYPH-14235;Lo;0;L;;;;;N;;;;; +14236;EGYPTIAN HIEROGLYPH-14236;Lo;0;L;;;;;N;;;;; +14237;EGYPTIAN HIEROGLYPH-14237;Lo;0;L;;;;;N;;;;; +14238;EGYPTIAN HIEROGLYPH-14238;Lo;0;L;;;;;N;;;;; +14239;EGYPTIAN HIEROGLYPH-14239;Lo;0;L;;;;;N;;;;; +1423A;EGYPTIAN HIEROGLYPH-1423A;Lo;0;L;;;;;N;;;;; +1423B;EGYPTIAN HIEROGLYPH-1423B;Lo;0;L;;;;;N;;;;; +1423C;EGYPTIAN HIEROGLYPH-1423C;Lo;0;L;;;;;N;;;;; +1423D;EGYPTIAN HIEROGLYPH-1423D;Lo;0;L;;;;;N;;;;; +1423E;EGYPTIAN HIEROGLYPH-1423E;Lo;0;L;;;;;N;;;;; +1423F;EGYPTIAN HIEROGLYPH-1423F;Lo;0;L;;;;;N;;;;; +14240;EGYPTIAN HIEROGLYPH-14240;Lo;0;L;;;;;N;;;;; +14241;EGYPTIAN HIEROGLYPH-14241;Lo;0;L;;;;;N;;;;; +14242;EGYPTIAN HIEROGLYPH-14242;Lo;0;L;;;;;N;;;;; +14243;EGYPTIAN HIEROGLYPH-14243;Lo;0;L;;;;;N;;;;; +14244;EGYPTIAN HIEROGLYPH-14244;Lo;0;L;;;;;N;;;;; +14245;EGYPTIAN HIEROGLYPH-14245;Lo;0;L;;;;;N;;;;; +14246;EGYPTIAN HIEROGLYPH-14246;Lo;0;L;;;;;N;;;;; +14247;EGYPTIAN HIEROGLYPH-14247;Lo;0;L;;;;;N;;;;; +14248;EGYPTIAN HIEROGLYPH-14248;Lo;0;L;;;;;N;;;;; +14249;EGYPTIAN HIEROGLYPH-14249;Lo;0;L;;;;;N;;;;; +1424A;EGYPTIAN HIEROGLYPH-1424A;Lo;0;L;;;;;N;;;;; +1424B;EGYPTIAN HIEROGLYPH-1424B;Lo;0;L;;;;;N;;;;; +1424C;EGYPTIAN HIEROGLYPH-1424C;Lo;0;L;;;;;N;;;;; +1424D;EGYPTIAN HIEROGLYPH-1424D;Lo;0;L;;;;;N;;;;; +1424E;EGYPTIAN HIEROGLYPH-1424E;Lo;0;L;;;;;N;;;;; +1424F;EGYPTIAN HIEROGLYPH-1424F;Lo;0;L;;;;;N;;;;; +14250;EGYPTIAN HIEROGLYPH-14250;Lo;0;L;;;;;N;;;;; +14251;EGYPTIAN HIEROGLYPH-14251;Lo;0;L;;;;;N;;;;; +14252;EGYPTIAN HIEROGLYPH-14252;Lo;0;L;;;;;N;;;;; +14253;EGYPTIAN HIEROGLYPH-14253;Lo;0;L;;;;;N;;;;; +14254;EGYPTIAN HIEROGLYPH-14254;Lo;0;L;;;;;N;;;;; +14255;EGYPTIAN HIEROGLYPH-14255;Lo;0;L;;;;;N;;;;; +14256;EGYPTIAN HIEROGLYPH-14256;Lo;0;L;;;;;N;;;;; +14257;EGYPTIAN HIEROGLYPH-14257;Lo;0;L;;;;;N;;;;; +14258;EGYPTIAN HIEROGLYPH-14258;Lo;0;L;;;;;N;;;;; +14259;EGYPTIAN HIEROGLYPH-14259;Lo;0;L;;;;;N;;;;; +1425A;EGYPTIAN HIEROGLYPH-1425A;Lo;0;L;;;;;N;;;;; +1425B;EGYPTIAN HIEROGLYPH-1425B;Lo;0;L;;;;;N;;;;; +1425C;EGYPTIAN HIEROGLYPH-1425C;Lo;0;L;;;;;N;;;;; +1425D;EGYPTIAN HIEROGLYPH-1425D;Lo;0;L;;;;;N;;;;; +1425E;EGYPTIAN HIEROGLYPH-1425E;Lo;0;L;;;;;N;;;;; +1425F;EGYPTIAN HIEROGLYPH-1425F;Lo;0;L;;;;;N;;;;; +14260;EGYPTIAN HIEROGLYPH-14260;Lo;0;L;;;;;N;;;;; +14261;EGYPTIAN HIEROGLYPH-14261;Lo;0;L;;;;;N;;;;; +14262;EGYPTIAN HIEROGLYPH-14262;Lo;0;L;;;;;N;;;;; +14263;EGYPTIAN HIEROGLYPH-14263;Lo;0;L;;;;;N;;;;; +14264;EGYPTIAN HIEROGLYPH-14264;Lo;0;L;;;;;N;;;;; +14265;EGYPTIAN HIEROGLYPH-14265;Lo;0;L;;;;;N;;;;; +14266;EGYPTIAN HIEROGLYPH-14266;Lo;0;L;;;;;N;;;;; +14267;EGYPTIAN HIEROGLYPH-14267;Lo;0;L;;;;;N;;;;; +14268;EGYPTIAN HIEROGLYPH-14268;Lo;0;L;;;;;N;;;;; +14269;EGYPTIAN HIEROGLYPH-14269;Lo;0;L;;;;;N;;;;; +1426A;EGYPTIAN HIEROGLYPH-1426A;Lo;0;L;;;;;N;;;;; +1426B;EGYPTIAN HIEROGLYPH-1426B;Lo;0;L;;;;;N;;;;; +1426C;EGYPTIAN HIEROGLYPH-1426C;Lo;0;L;;;;;N;;;;; +1426D;EGYPTIAN HIEROGLYPH-1426D;Lo;0;L;;;;;N;;;;; +1426E;EGYPTIAN HIEROGLYPH-1426E;Lo;0;L;;;;;N;;;;; +1426F;EGYPTIAN HIEROGLYPH-1426F;Lo;0;L;;;;;N;;;;; +14270;EGYPTIAN HIEROGLYPH-14270;Lo;0;L;;;;;N;;;;; +14271;EGYPTIAN HIEROGLYPH-14271;Lo;0;L;;;;;N;;;;; +14272;EGYPTIAN HIEROGLYPH-14272;Lo;0;L;;;;;N;;;;; +14273;EGYPTIAN HIEROGLYPH-14273;Lo;0;L;;;;;N;;;;; +14274;EGYPTIAN HIEROGLYPH-14274;Lo;0;L;;;;;N;;;;; +14275;EGYPTIAN HIEROGLYPH-14275;Lo;0;L;;;;;N;;;;; +14276;EGYPTIAN HIEROGLYPH-14276;Lo;0;L;;;;;N;;;;; +14277;EGYPTIAN HIEROGLYPH-14277;Lo;0;L;;;;;N;;;;; +14278;EGYPTIAN HIEROGLYPH-14278;Lo;0;L;;;;;N;;;;; +14279;EGYPTIAN HIEROGLYPH-14279;Lo;0;L;;;;;N;;;;; +1427A;EGYPTIAN HIEROGLYPH-1427A;Lo;0;L;;;;;N;;;;; +1427B;EGYPTIAN HIEROGLYPH-1427B;Lo;0;L;;;;;N;;;;; +1427C;EGYPTIAN HIEROGLYPH-1427C;Lo;0;L;;;;;N;;;;; +1427D;EGYPTIAN HIEROGLYPH-1427D;Lo;0;L;;;;;N;;;;; +1427E;EGYPTIAN HIEROGLYPH-1427E;Lo;0;L;;;;;N;;;;; +1427F;EGYPTIAN HIEROGLYPH-1427F;Lo;0;L;;;;;N;;;;; +14280;EGYPTIAN HIEROGLYPH-14280;Lo;0;L;;;;;N;;;;; +14281;EGYPTIAN HIEROGLYPH-14281;Lo;0;L;;;;;N;;;;; +14282;EGYPTIAN HIEROGLYPH-14282;Lo;0;L;;;;;N;;;;; +14283;EGYPTIAN HIEROGLYPH-14283;Lo;0;L;;;;;N;;;;; +14284;EGYPTIAN HIEROGLYPH-14284;Lo;0;L;;;;;N;;;;; +14285;EGYPTIAN HIEROGLYPH-14285;Lo;0;L;;;;;N;;;;; +14286;EGYPTIAN HIEROGLYPH-14286;Lo;0;L;;;;;N;;;;; +14287;EGYPTIAN HIEROGLYPH-14287;Lo;0;L;;;;;N;;;;; +14288;EGYPTIAN HIEROGLYPH-14288;Lo;0;L;;;;;N;;;;; +14289;EGYPTIAN HIEROGLYPH-14289;Lo;0;L;;;;;N;;;;; +1428A;EGYPTIAN HIEROGLYPH-1428A;Lo;0;L;;;;;N;;;;; +1428B;EGYPTIAN HIEROGLYPH-1428B;Lo;0;L;;;;;N;;;;; +1428C;EGYPTIAN HIEROGLYPH-1428C;Lo;0;L;;;;;N;;;;; +1428D;EGYPTIAN HIEROGLYPH-1428D;Lo;0;L;;;;;N;;;;; +1428E;EGYPTIAN HIEROGLYPH-1428E;Lo;0;L;;;;;N;;;;; +1428F;EGYPTIAN HIEROGLYPH-1428F;Lo;0;L;;;;;N;;;;; +14290;EGYPTIAN HIEROGLYPH-14290;Lo;0;L;;;;;N;;;;; +14291;EGYPTIAN HIEROGLYPH-14291;Lo;0;L;;;;;N;;;;; +14292;EGYPTIAN HIEROGLYPH-14292;Lo;0;L;;;;;N;;;;; +14293;EGYPTIAN HIEROGLYPH-14293;Lo;0;L;;;;;N;;;;; +14294;EGYPTIAN HIEROGLYPH-14294;Lo;0;L;;;;;N;;;;; +14295;EGYPTIAN HIEROGLYPH-14295;Lo;0;L;;;;;N;;;;; +14296;EGYPTIAN HIEROGLYPH-14296;Lo;0;L;;;;;N;;;;; +14297;EGYPTIAN HIEROGLYPH-14297;Lo;0;L;;;;;N;;;;; +14298;EGYPTIAN HIEROGLYPH-14298;Lo;0;L;;;;;N;;;;; +14299;EGYPTIAN HIEROGLYPH-14299;Lo;0;L;;;;;N;;;;; +1429A;EGYPTIAN HIEROGLYPH-1429A;Lo;0;L;;;;;N;;;;; +1429B;EGYPTIAN HIEROGLYPH-1429B;Lo;0;L;;;;;N;;;;; +1429C;EGYPTIAN HIEROGLYPH-1429C;Lo;0;L;;;;;N;;;;; +1429D;EGYPTIAN HIEROGLYPH-1429D;Lo;0;L;;;;;N;;;;; +1429E;EGYPTIAN HIEROGLYPH-1429E;Lo;0;L;;;;;N;;;;; +1429F;EGYPTIAN HIEROGLYPH-1429F;Lo;0;L;;;;;N;;;;; +142A0;EGYPTIAN HIEROGLYPH-142A0;Lo;0;L;;;;;N;;;;; +142A1;EGYPTIAN HIEROGLYPH-142A1;Lo;0;L;;;;;N;;;;; +142A2;EGYPTIAN HIEROGLYPH-142A2;Lo;0;L;;;;;N;;;;; +142A3;EGYPTIAN HIEROGLYPH-142A3;Lo;0;L;;;;;N;;;;; +142A4;EGYPTIAN HIEROGLYPH-142A4;Lo;0;L;;;;;N;;;;; +142A5;EGYPTIAN HIEROGLYPH-142A5;Lo;0;L;;;;;N;;;;; +142A6;EGYPTIAN HIEROGLYPH-142A6;Lo;0;L;;;;;N;;;;; +142A7;EGYPTIAN HIEROGLYPH-142A7;Lo;0;L;;;;;N;;;;; +142A8;EGYPTIAN HIEROGLYPH-142A8;Lo;0;L;;;;;N;;;;; +142A9;EGYPTIAN HIEROGLYPH-142A9;Lo;0;L;;;;;N;;;;; +142AA;EGYPTIAN HIEROGLYPH-142AA;Lo;0;L;;;;;N;;;;; +142AB;EGYPTIAN HIEROGLYPH-142AB;Lo;0;L;;;;;N;;;;; +142AC;EGYPTIAN HIEROGLYPH-142AC;Lo;0;L;;;;;N;;;;; +142AD;EGYPTIAN HIEROGLYPH-142AD;Lo;0;L;;;;;N;;;;; +142AE;EGYPTIAN HIEROGLYPH-142AE;Lo;0;L;;;;;N;;;;; +142AF;EGYPTIAN HIEROGLYPH-142AF;Lo;0;L;;;;;N;;;;; +142B0;EGYPTIAN HIEROGLYPH-142B0;Lo;0;L;;;;;N;;;;; +142B1;EGYPTIAN HIEROGLYPH-142B1;Lo;0;L;;;;;N;;;;; +142B2;EGYPTIAN HIEROGLYPH-142B2;Lo;0;L;;;;;N;;;;; +142B3;EGYPTIAN HIEROGLYPH-142B3;Lo;0;L;;;;;N;;;;; +142B4;EGYPTIAN HIEROGLYPH-142B4;Lo;0;L;;;;;N;;;;; +142B5;EGYPTIAN HIEROGLYPH-142B5;Lo;0;L;;;;;N;;;;; +142B6;EGYPTIAN HIEROGLYPH-142B6;Lo;0;L;;;;;N;;;;; +142B7;EGYPTIAN HIEROGLYPH-142B7;Lo;0;L;;;;;N;;;;; +142B8;EGYPTIAN HIEROGLYPH-142B8;Lo;0;L;;;;;N;;;;; +142B9;EGYPTIAN HIEROGLYPH-142B9;Lo;0;L;;;;;N;;;;; +142BA;EGYPTIAN HIEROGLYPH-142BA;Lo;0;L;;;;;N;;;;; +142BB;EGYPTIAN HIEROGLYPH-142BB;Lo;0;L;;;;;N;;;;; +142BC;EGYPTIAN HIEROGLYPH-142BC;Lo;0;L;;;;;N;;;;; +142BD;EGYPTIAN HIEROGLYPH-142BD;Lo;0;L;;;;;N;;;;; +142BE;EGYPTIAN HIEROGLYPH-142BE;Lo;0;L;;;;;N;;;;; +142BF;EGYPTIAN HIEROGLYPH-142BF;Lo;0;L;;;;;N;;;;; +142C0;EGYPTIAN HIEROGLYPH-142C0;Lo;0;L;;;;;N;;;;; +142C1;EGYPTIAN HIEROGLYPH-142C1;Lo;0;L;;;;;N;;;;; +142C2;EGYPTIAN HIEROGLYPH-142C2;Lo;0;L;;;;;N;;;;; +142C3;EGYPTIAN HIEROGLYPH-142C3;Lo;0;L;;;;;N;;;;; +142C4;EGYPTIAN HIEROGLYPH-142C4;Lo;0;L;;;;;N;;;;; +142C5;EGYPTIAN HIEROGLYPH-142C5;Lo;0;L;;;;;N;;;;; +142C6;EGYPTIAN HIEROGLYPH-142C6;Lo;0;L;;;;;N;;;;; +142C7;EGYPTIAN HIEROGLYPH-142C7;Lo;0;L;;;;;N;;;;; +142C8;EGYPTIAN HIEROGLYPH-142C8;Lo;0;L;;;;;N;;;;; +142C9;EGYPTIAN HIEROGLYPH-142C9;Lo;0;L;;;;;N;;;;; +142CA;EGYPTIAN HIEROGLYPH-142CA;Lo;0;L;;;;;N;;;;; +142CB;EGYPTIAN HIEROGLYPH-142CB;Lo;0;L;;;;;N;;;;; +142CC;EGYPTIAN HIEROGLYPH-142CC;Lo;0;L;;;;;N;;;;; +142CD;EGYPTIAN HIEROGLYPH-142CD;Lo;0;L;;;;;N;;;;; +142CE;EGYPTIAN HIEROGLYPH-142CE;Lo;0;L;;;;;N;;;;; +142CF;EGYPTIAN HIEROGLYPH-142CF;Lo;0;L;;;;;N;;;;; +142D0;EGYPTIAN HIEROGLYPH-142D0;Lo;0;L;;;;;N;;;;; +142D1;EGYPTIAN HIEROGLYPH-142D1;Lo;0;L;;;;;N;;;;; +142D2;EGYPTIAN HIEROGLYPH-142D2;Lo;0;L;;;;;N;;;;; +142D3;EGYPTIAN HIEROGLYPH-142D3;Lo;0;L;;;;;N;;;;; +142D4;EGYPTIAN HIEROGLYPH-142D4;Lo;0;L;;;;;N;;;;; +142D5;EGYPTIAN HIEROGLYPH-142D5;Lo;0;L;;;;;N;;;;; +142D6;EGYPTIAN HIEROGLYPH-142D6;Lo;0;L;;;;;N;;;;; +142D7;EGYPTIAN HIEROGLYPH-142D7;Lo;0;L;;;;;N;;;;; +142D8;EGYPTIAN HIEROGLYPH-142D8;Lo;0;L;;;;;N;;;;; +142D9;EGYPTIAN HIEROGLYPH-142D9;Lo;0;L;;;;;N;;;;; +142DA;EGYPTIAN HIEROGLYPH-142DA;Lo;0;L;;;;;N;;;;; +142DB;EGYPTIAN HIEROGLYPH-142DB;Lo;0;L;;;;;N;;;;; +142DC;EGYPTIAN HIEROGLYPH-142DC;Lo;0;L;;;;;N;;;;; +142DD;EGYPTIAN HIEROGLYPH-142DD;Lo;0;L;;;;;N;;;;; +142DE;EGYPTIAN HIEROGLYPH-142DE;Lo;0;L;;;;;N;;;;; +142DF;EGYPTIAN HIEROGLYPH-142DF;Lo;0;L;;;;;N;;;;; +142E0;EGYPTIAN HIEROGLYPH-142E0;Lo;0;L;;;;;N;;;;; +142E1;EGYPTIAN HIEROGLYPH-142E1;Lo;0;L;;;;;N;;;;; +142E2;EGYPTIAN HIEROGLYPH-142E2;Lo;0;L;;;;;N;;;;; +142E3;EGYPTIAN HIEROGLYPH-142E3;Lo;0;L;;;;;N;;;;; +142E4;EGYPTIAN HIEROGLYPH-142E4;Lo;0;L;;;;;N;;;;; +142E5;EGYPTIAN HIEROGLYPH-142E5;Lo;0;L;;;;;N;;;;; +142E6;EGYPTIAN HIEROGLYPH-142E6;Lo;0;L;;;;;N;;;;; +142E7;EGYPTIAN HIEROGLYPH-142E7;Lo;0;L;;;;;N;;;;; +142E8;EGYPTIAN HIEROGLYPH-142E8;Lo;0;L;;;;;N;;;;; +142E9;EGYPTIAN HIEROGLYPH-142E9;Lo;0;L;;;;;N;;;;; +142EA;EGYPTIAN HIEROGLYPH-142EA;Lo;0;L;;;;;N;;;;; +142EB;EGYPTIAN HIEROGLYPH-142EB;Lo;0;L;;;;;N;;;;; +142EC;EGYPTIAN HIEROGLYPH-142EC;Lo;0;L;;;;;N;;;;; +142ED;EGYPTIAN HIEROGLYPH-142ED;Lo;0;L;;;;;N;;;;; +142EE;EGYPTIAN HIEROGLYPH-142EE;Lo;0;L;;;;;N;;;;; +142EF;EGYPTIAN HIEROGLYPH-142EF;Lo;0;L;;;;;N;;;;; +142F0;EGYPTIAN HIEROGLYPH-142F0;Lo;0;L;;;;;N;;;;; +142F1;EGYPTIAN HIEROGLYPH-142F1;Lo;0;L;;;;;N;;;;; +142F2;EGYPTIAN HIEROGLYPH-142F2;Lo;0;L;;;;;N;;;;; +142F3;EGYPTIAN HIEROGLYPH-142F3;Lo;0;L;;;;;N;;;;; +142F4;EGYPTIAN HIEROGLYPH-142F4;Lo;0;L;;;;;N;;;;; +142F5;EGYPTIAN HIEROGLYPH-142F5;Lo;0;L;;;;;N;;;;; +142F6;EGYPTIAN HIEROGLYPH-142F6;Lo;0;L;;;;;N;;;;; +142F7;EGYPTIAN HIEROGLYPH-142F7;Lo;0;L;;;;;N;;;;; +142F8;EGYPTIAN HIEROGLYPH-142F8;Lo;0;L;;;;;N;;;;; +142F9;EGYPTIAN HIEROGLYPH-142F9;Lo;0;L;;;;;N;;;;; +142FA;EGYPTIAN HIEROGLYPH-142FA;Lo;0;L;;;;;N;;;;; +142FB;EGYPTIAN HIEROGLYPH-142FB;Lo;0;L;;;;;N;;;;; +142FC;EGYPTIAN HIEROGLYPH-142FC;Lo;0;L;;;;;N;;;;; +142FD;EGYPTIAN HIEROGLYPH-142FD;Lo;0;L;;;;;N;;;;; +142FE;EGYPTIAN HIEROGLYPH-142FE;Lo;0;L;;;;;N;;;;; +142FF;EGYPTIAN HIEROGLYPH-142FF;Lo;0;L;;;;;N;;;;; +14300;EGYPTIAN HIEROGLYPH-14300;Lo;0;L;;;;;N;;;;; +14301;EGYPTIAN HIEROGLYPH-14301;Lo;0;L;;;;;N;;;;; +14302;EGYPTIAN HIEROGLYPH-14302;Lo;0;L;;;;;N;;;;; +14303;EGYPTIAN HIEROGLYPH-14303;Lo;0;L;;;;;N;;;;; +14304;EGYPTIAN HIEROGLYPH-14304;Lo;0;L;;;;;N;;;;; +14305;EGYPTIAN HIEROGLYPH-14305;Lo;0;L;;;;;N;;;;; +14306;EGYPTIAN HIEROGLYPH-14306;Lo;0;L;;;;;N;;;;; +14307;EGYPTIAN HIEROGLYPH-14307;Lo;0;L;;;;;N;;;;; +14308;EGYPTIAN HIEROGLYPH-14308;Lo;0;L;;;;;N;;;;; +14309;EGYPTIAN HIEROGLYPH-14309;Lo;0;L;;;;;N;;;;; +1430A;EGYPTIAN HIEROGLYPH-1430A;Lo;0;L;;;;;N;;;;; +1430B;EGYPTIAN HIEROGLYPH-1430B;Lo;0;L;;;;;N;;;;; +1430C;EGYPTIAN HIEROGLYPH-1430C;Lo;0;L;;;;;N;;;;; +1430D;EGYPTIAN HIEROGLYPH-1430D;Lo;0;L;;;;;N;;;;; +1430E;EGYPTIAN HIEROGLYPH-1430E;Lo;0;L;;;;;N;;;;; +1430F;EGYPTIAN HIEROGLYPH-1430F;Lo;0;L;;;;;N;;;;; +14310;EGYPTIAN HIEROGLYPH-14310;Lo;0;L;;;;;N;;;;; +14311;EGYPTIAN HIEROGLYPH-14311;Lo;0;L;;;;;N;;;;; +14312;EGYPTIAN HIEROGLYPH-14312;Lo;0;L;;;;;N;;;;; +14313;EGYPTIAN HIEROGLYPH-14313;Lo;0;L;;;;;N;;;;; +14314;EGYPTIAN HIEROGLYPH-14314;Lo;0;L;;;;;N;;;;; +14315;EGYPTIAN HIEROGLYPH-14315;Lo;0;L;;;;;N;;;;; +14316;EGYPTIAN HIEROGLYPH-14316;Lo;0;L;;;;;N;;;;; +14317;EGYPTIAN HIEROGLYPH-14317;Lo;0;L;;;;;N;;;;; +14318;EGYPTIAN HIEROGLYPH-14318;Lo;0;L;;;;;N;;;;; +14319;EGYPTIAN HIEROGLYPH-14319;Lo;0;L;;;;;N;;;;; +1431A;EGYPTIAN HIEROGLYPH-1431A;Lo;0;L;;;;;N;;;;; +1431B;EGYPTIAN HIEROGLYPH-1431B;Lo;0;L;;;;;N;;;;; +1431C;EGYPTIAN HIEROGLYPH-1431C;Lo;0;L;;;;;N;;;;; +1431D;EGYPTIAN HIEROGLYPH-1431D;Lo;0;L;;;;;N;;;;; +1431E;EGYPTIAN HIEROGLYPH-1431E;Lo;0;L;;;;;N;;;;; +1431F;EGYPTIAN HIEROGLYPH-1431F;Lo;0;L;;;;;N;;;;; +14320;EGYPTIAN HIEROGLYPH-14320;Lo;0;L;;;;;N;;;;; +14321;EGYPTIAN HIEROGLYPH-14321;Lo;0;L;;;;;N;;;;; +14322;EGYPTIAN HIEROGLYPH-14322;Lo;0;L;;;;;N;;;;; +14323;EGYPTIAN HIEROGLYPH-14323;Lo;0;L;;;;;N;;;;; +14324;EGYPTIAN HIEROGLYPH-14324;Lo;0;L;;;;;N;;;;; +14325;EGYPTIAN HIEROGLYPH-14325;Lo;0;L;;;;;N;;;;; +14326;EGYPTIAN HIEROGLYPH-14326;Lo;0;L;;;;;N;;;;; +14327;EGYPTIAN HIEROGLYPH-14327;Lo;0;L;;;;;N;;;;; +14328;EGYPTIAN HIEROGLYPH-14328;Lo;0;L;;;;;N;;;;; +14329;EGYPTIAN HIEROGLYPH-14329;Lo;0;L;;;;;N;;;;; +1432A;EGYPTIAN HIEROGLYPH-1432A;Lo;0;L;;;;;N;;;;; +1432B;EGYPTIAN HIEROGLYPH-1432B;Lo;0;L;;;;;N;;;;; +1432C;EGYPTIAN HIEROGLYPH-1432C;Lo;0;L;;;;;N;;;;; +1432D;EGYPTIAN HIEROGLYPH-1432D;Lo;0;L;;;;;N;;;;; +1432E;EGYPTIAN HIEROGLYPH-1432E;Lo;0;L;;;;;N;;;;; +1432F;EGYPTIAN HIEROGLYPH-1432F;Lo;0;L;;;;;N;;;;; +14330;EGYPTIAN HIEROGLYPH-14330;Lo;0;L;;;;;N;;;;; +14331;EGYPTIAN HIEROGLYPH-14331;Lo;0;L;;;;;N;;;;; +14332;EGYPTIAN HIEROGLYPH-14332;Lo;0;L;;;;;N;;;;; +14333;EGYPTIAN HIEROGLYPH-14333;Lo;0;L;;;;;N;;;;; +14334;EGYPTIAN HIEROGLYPH-14334;Lo;0;L;;;;;N;;;;; +14335;EGYPTIAN HIEROGLYPH-14335;Lo;0;L;;;;;N;;;;; +14336;EGYPTIAN HIEROGLYPH-14336;Lo;0;L;;;;;N;;;;; +14337;EGYPTIAN HIEROGLYPH-14337;Lo;0;L;;;;;N;;;;; +14338;EGYPTIAN HIEROGLYPH-14338;Lo;0;L;;;;;N;;;;; +14339;EGYPTIAN HIEROGLYPH-14339;Lo;0;L;;;;;N;;;;; +1433A;EGYPTIAN HIEROGLYPH-1433A;Lo;0;L;;;;;N;;;;; +1433B;EGYPTIAN HIEROGLYPH-1433B;Lo;0;L;;;;;N;;;;; +1433C;EGYPTIAN HIEROGLYPH-1433C;Lo;0;L;;;;;N;;;;; +1433D;EGYPTIAN HIEROGLYPH-1433D;Lo;0;L;;;;;N;;;;; +1433E;EGYPTIAN HIEROGLYPH-1433E;Lo;0;L;;;;;N;;;;; +1433F;EGYPTIAN HIEROGLYPH-1433F;Lo;0;L;;;;;N;;;;; +14340;EGYPTIAN HIEROGLYPH-14340;Lo;0;L;;;;;N;;;;; +14341;EGYPTIAN HIEROGLYPH-14341;Lo;0;L;;;;;N;;;;; +14342;EGYPTIAN HIEROGLYPH-14342;Lo;0;L;;;;;N;;;;; +14343;EGYPTIAN HIEROGLYPH-14343;Lo;0;L;;;;;N;;;;; +14344;EGYPTIAN HIEROGLYPH-14344;Lo;0;L;;;;;N;;;;; +14345;EGYPTIAN HIEROGLYPH-14345;Lo;0;L;;;;;N;;;;; +14346;EGYPTIAN HIEROGLYPH-14346;Lo;0;L;;;;;N;;;;; +14347;EGYPTIAN HIEROGLYPH-14347;Lo;0;L;;;;;N;;;;; +14348;EGYPTIAN HIEROGLYPH-14348;Lo;0;L;;;;;N;;;;; +14349;EGYPTIAN HIEROGLYPH-14349;Lo;0;L;;;;;N;;;;; +1434A;EGYPTIAN HIEROGLYPH-1434A;Lo;0;L;;;;;N;;;;; +1434B;EGYPTIAN HIEROGLYPH-1434B;Lo;0;L;;;;;N;;;;; +1434C;EGYPTIAN HIEROGLYPH-1434C;Lo;0;L;;;;;N;;;;; +1434D;EGYPTIAN HIEROGLYPH-1434D;Lo;0;L;;;;;N;;;;; +1434E;EGYPTIAN HIEROGLYPH-1434E;Lo;0;L;;;;;N;;;;; +1434F;EGYPTIAN HIEROGLYPH-1434F;Lo;0;L;;;;;N;;;;; +14350;EGYPTIAN HIEROGLYPH-14350;Lo;0;L;;;;;N;;;;; +14351;EGYPTIAN HIEROGLYPH-14351;Lo;0;L;;;;;N;;;;; +14352;EGYPTIAN HIEROGLYPH-14352;Lo;0;L;;;;;N;;;;; +14353;EGYPTIAN HIEROGLYPH-14353;Lo;0;L;;;;;N;;;;; +14354;EGYPTIAN HIEROGLYPH-14354;Lo;0;L;;;;;N;;;;; +14355;EGYPTIAN HIEROGLYPH-14355;Lo;0;L;;;;;N;;;;; +14356;EGYPTIAN HIEROGLYPH-14356;Lo;0;L;;;;;N;;;;; +14357;EGYPTIAN HIEROGLYPH-14357;Lo;0;L;;;;;N;;;;; +14358;EGYPTIAN HIEROGLYPH-14358;Lo;0;L;;;;;N;;;;; +14359;EGYPTIAN HIEROGLYPH-14359;Lo;0;L;;;;;N;;;;; +1435A;EGYPTIAN HIEROGLYPH-1435A;Lo;0;L;;;;;N;;;;; +1435B;EGYPTIAN HIEROGLYPH-1435B;Lo;0;L;;;;;N;;;;; +1435C;EGYPTIAN HIEROGLYPH-1435C;Lo;0;L;;;;;N;;;;; +1435D;EGYPTIAN HIEROGLYPH-1435D;Lo;0;L;;;;;N;;;;; +1435E;EGYPTIAN HIEROGLYPH-1435E;Lo;0;L;;;;;N;;;;; +1435F;EGYPTIAN HIEROGLYPH-1435F;Lo;0;L;;;;;N;;;;; +14360;EGYPTIAN HIEROGLYPH-14360;Lo;0;L;;;;;N;;;;; +14361;EGYPTIAN HIEROGLYPH-14361;Lo;0;L;;;;;N;;;;; +14362;EGYPTIAN HIEROGLYPH-14362;Lo;0;L;;;;;N;;;;; +14363;EGYPTIAN HIEROGLYPH-14363;Lo;0;L;;;;;N;;;;; +14364;EGYPTIAN HIEROGLYPH-14364;Lo;0;L;;;;;N;;;;; +14365;EGYPTIAN HIEROGLYPH-14365;Lo;0;L;;;;;N;;;;; +14366;EGYPTIAN HIEROGLYPH-14366;Lo;0;L;;;;;N;;;;; +14367;EGYPTIAN HIEROGLYPH-14367;Lo;0;L;;;;;N;;;;; +14368;EGYPTIAN HIEROGLYPH-14368;Lo;0;L;;;;;N;;;;; +14369;EGYPTIAN HIEROGLYPH-14369;Lo;0;L;;;;;N;;;;; +1436A;EGYPTIAN HIEROGLYPH-1436A;Lo;0;L;;;;;N;;;;; +1436B;EGYPTIAN HIEROGLYPH-1436B;Lo;0;L;;;;;N;;;;; +1436C;EGYPTIAN HIEROGLYPH-1436C;Lo;0;L;;;;;N;;;;; +1436D;EGYPTIAN HIEROGLYPH-1436D;Lo;0;L;;;;;N;;;;; +1436E;EGYPTIAN HIEROGLYPH-1436E;Lo;0;L;;;;;N;;;;; +1436F;EGYPTIAN HIEROGLYPH-1436F;Lo;0;L;;;;;N;;;;; +14370;EGYPTIAN HIEROGLYPH-14370;Lo;0;L;;;;;N;;;;; +14371;EGYPTIAN HIEROGLYPH-14371;Lo;0;L;;;;;N;;;;; +14372;EGYPTIAN HIEROGLYPH-14372;Lo;0;L;;;;;N;;;;; +14373;EGYPTIAN HIEROGLYPH-14373;Lo;0;L;;;;;N;;;;; +14374;EGYPTIAN HIEROGLYPH-14374;Lo;0;L;;;;;N;;;;; +14375;EGYPTIAN HIEROGLYPH-14375;Lo;0;L;;;;;N;;;;; +14376;EGYPTIAN HIEROGLYPH-14376;Lo;0;L;;;;;N;;;;; +14377;EGYPTIAN HIEROGLYPH-14377;Lo;0;L;;;;;N;;;;; +14378;EGYPTIAN HIEROGLYPH-14378;Lo;0;L;;;;;N;;;;; +14379;EGYPTIAN HIEROGLYPH-14379;Lo;0;L;;;;;N;;;;; +1437A;EGYPTIAN HIEROGLYPH-1437A;Lo;0;L;;;;;N;;;;; +1437B;EGYPTIAN HIEROGLYPH-1437B;Lo;0;L;;;;;N;;;;; +1437C;EGYPTIAN HIEROGLYPH-1437C;Lo;0;L;;;;;N;;;;; +1437D;EGYPTIAN HIEROGLYPH-1437D;Lo;0;L;;;;;N;;;;; +1437E;EGYPTIAN HIEROGLYPH-1437E;Lo;0;L;;;;;N;;;;; +1437F;EGYPTIAN HIEROGLYPH-1437F;Lo;0;L;;;;;N;;;;; +14380;EGYPTIAN HIEROGLYPH-14380;Lo;0;L;;;;;N;;;;; +14381;EGYPTIAN HIEROGLYPH-14381;Lo;0;L;;;;;N;;;;; +14382;EGYPTIAN HIEROGLYPH-14382;Lo;0;L;;;;;N;;;;; +14383;EGYPTIAN HIEROGLYPH-14383;Lo;0;L;;;;;N;;;;; +14384;EGYPTIAN HIEROGLYPH-14384;Lo;0;L;;;;;N;;;;; +14385;EGYPTIAN HIEROGLYPH-14385;Lo;0;L;;;;;N;;;;; +14386;EGYPTIAN HIEROGLYPH-14386;Lo;0;L;;;;;N;;;;; +14387;EGYPTIAN HIEROGLYPH-14387;Lo;0;L;;;;;N;;;;; +14388;EGYPTIAN HIEROGLYPH-14388;Lo;0;L;;;;;N;;;;; +14389;EGYPTIAN HIEROGLYPH-14389;Lo;0;L;;;;;N;;;;; +1438A;EGYPTIAN HIEROGLYPH-1438A;Lo;0;L;;;;;N;;;;; +1438B;EGYPTIAN HIEROGLYPH-1438B;Lo;0;L;;;;;N;;;;; +1438C;EGYPTIAN HIEROGLYPH-1438C;Lo;0;L;;;;;N;;;;; +1438D;EGYPTIAN HIEROGLYPH-1438D;Lo;0;L;;;;;N;;;;; +1438E;EGYPTIAN HIEROGLYPH-1438E;Lo;0;L;;;;;N;;;;; +1438F;EGYPTIAN HIEROGLYPH-1438F;Lo;0;L;;;;;N;;;;; +14390;EGYPTIAN HIEROGLYPH-14390;Lo;0;L;;;;;N;;;;; +14391;EGYPTIAN HIEROGLYPH-14391;Lo;0;L;;;;;N;;;;; +14392;EGYPTIAN HIEROGLYPH-14392;Lo;0;L;;;;;N;;;;; +14393;EGYPTIAN HIEROGLYPH-14393;Lo;0;L;;;;;N;;;;; +14394;EGYPTIAN HIEROGLYPH-14394;Lo;0;L;;;;;N;;;;; +14395;EGYPTIAN HIEROGLYPH-14395;Lo;0;L;;;;;N;;;;; +14396;EGYPTIAN HIEROGLYPH-14396;Lo;0;L;;;;;N;;;;; +14397;EGYPTIAN HIEROGLYPH-14397;Lo;0;L;;;;;N;;;;; +14398;EGYPTIAN HIEROGLYPH-14398;Lo;0;L;;;;;N;;;;; +14399;EGYPTIAN HIEROGLYPH-14399;Lo;0;L;;;;;N;;;;; +1439A;EGYPTIAN HIEROGLYPH-1439A;Lo;0;L;;;;;N;;;;; +1439B;EGYPTIAN HIEROGLYPH-1439B;Lo;0;L;;;;;N;;;;; +1439C;EGYPTIAN HIEROGLYPH-1439C;Lo;0;L;;;;;N;;;;; +1439D;EGYPTIAN HIEROGLYPH-1439D;Lo;0;L;;;;;N;;;;; +1439E;EGYPTIAN HIEROGLYPH-1439E;Lo;0;L;;;;;N;;;;; +1439F;EGYPTIAN HIEROGLYPH-1439F;Lo;0;L;;;;;N;;;;; +143A0;EGYPTIAN HIEROGLYPH-143A0;Lo;0;L;;;;;N;;;;; +143A1;EGYPTIAN HIEROGLYPH-143A1;Lo;0;L;;;;;N;;;;; +143A2;EGYPTIAN HIEROGLYPH-143A2;Lo;0;L;;;;;N;;;;; +143A3;EGYPTIAN HIEROGLYPH-143A3;Lo;0;L;;;;;N;;;;; +143A4;EGYPTIAN HIEROGLYPH-143A4;Lo;0;L;;;;;N;;;;; +143A5;EGYPTIAN HIEROGLYPH-143A5;Lo;0;L;;;;;N;;;;; +143A6;EGYPTIAN HIEROGLYPH-143A6;Lo;0;L;;;;;N;;;;; +143A7;EGYPTIAN HIEROGLYPH-143A7;Lo;0;L;;;;;N;;;;; +143A8;EGYPTIAN HIEROGLYPH-143A8;Lo;0;L;;;;;N;;;;; +143A9;EGYPTIAN HIEROGLYPH-143A9;Lo;0;L;;;;;N;;;;; +143AA;EGYPTIAN HIEROGLYPH-143AA;Lo;0;L;;;;;N;;;;; +143AB;EGYPTIAN HIEROGLYPH-143AB;Lo;0;L;;;;;N;;;;; +143AC;EGYPTIAN HIEROGLYPH-143AC;Lo;0;L;;;;;N;;;;; +143AD;EGYPTIAN HIEROGLYPH-143AD;Lo;0;L;;;;;N;;;;; +143AE;EGYPTIAN HIEROGLYPH-143AE;Lo;0;L;;;;;N;;;;; +143AF;EGYPTIAN HIEROGLYPH-143AF;Lo;0;L;;;;;N;;;;; +143B0;EGYPTIAN HIEROGLYPH-143B0;Lo;0;L;;;;;N;;;;; +143B1;EGYPTIAN HIEROGLYPH-143B1;Lo;0;L;;;;;N;;;;; +143B2;EGYPTIAN HIEROGLYPH-143B2;Lo;0;L;;;;;N;;;;; +143B3;EGYPTIAN HIEROGLYPH-143B3;Lo;0;L;;;;;N;;;;; +143B4;EGYPTIAN HIEROGLYPH-143B4;Lo;0;L;;;;;N;;;;; +143B5;EGYPTIAN HIEROGLYPH-143B5;Lo;0;L;;;;;N;;;;; +143B6;EGYPTIAN HIEROGLYPH-143B6;Lo;0;L;;;;;N;;;;; +143B7;EGYPTIAN HIEROGLYPH-143B7;Lo;0;L;;;;;N;;;;; +143B8;EGYPTIAN HIEROGLYPH-143B8;Lo;0;L;;;;;N;;;;; +143B9;EGYPTIAN HIEROGLYPH-143B9;Lo;0;L;;;;;N;;;;; +143BA;EGYPTIAN HIEROGLYPH-143BA;Lo;0;L;;;;;N;;;;; +143BB;EGYPTIAN HIEROGLYPH-143BB;Lo;0;L;;;;;N;;;;; +143BC;EGYPTIAN HIEROGLYPH-143BC;Lo;0;L;;;;;N;;;;; +143BD;EGYPTIAN HIEROGLYPH-143BD;Lo;0;L;;;;;N;;;;; +143BE;EGYPTIAN HIEROGLYPH-143BE;Lo;0;L;;;;;N;;;;; +143BF;EGYPTIAN HIEROGLYPH-143BF;Lo;0;L;;;;;N;;;;; +143C0;EGYPTIAN HIEROGLYPH-143C0;Lo;0;L;;;;;N;;;;; +143C1;EGYPTIAN HIEROGLYPH-143C1;Lo;0;L;;;;;N;;;;; +143C2;EGYPTIAN HIEROGLYPH-143C2;Lo;0;L;;;;;N;;;;; +143C3;EGYPTIAN HIEROGLYPH-143C3;Lo;0;L;;;;;N;;;;; +143C4;EGYPTIAN HIEROGLYPH-143C4;Lo;0;L;;;;;N;;;;; +143C5;EGYPTIAN HIEROGLYPH-143C5;Lo;0;L;;;;;N;;;;; +143C6;EGYPTIAN HIEROGLYPH-143C6;Lo;0;L;;;;;N;;;;; +143C7;EGYPTIAN HIEROGLYPH-143C7;Lo;0;L;;;;;N;;;;; +143C8;EGYPTIAN HIEROGLYPH-143C8;Lo;0;L;;;;;N;;;;; +143C9;EGYPTIAN HIEROGLYPH-143C9;Lo;0;L;;;;;N;;;;; +143CA;EGYPTIAN HIEROGLYPH-143CA;Lo;0;L;;;;;N;;;;; +143CB;EGYPTIAN HIEROGLYPH-143CB;Lo;0;L;;;;;N;;;;; +143CC;EGYPTIAN HIEROGLYPH-143CC;Lo;0;L;;;;;N;;;;; +143CD;EGYPTIAN HIEROGLYPH-143CD;Lo;0;L;;;;;N;;;;; +143CE;EGYPTIAN HIEROGLYPH-143CE;Lo;0;L;;;;;N;;;;; +143CF;EGYPTIAN HIEROGLYPH-143CF;Lo;0;L;;;;;N;;;;; +143D0;EGYPTIAN HIEROGLYPH-143D0;Lo;0;L;;;;;N;;;;; +143D1;EGYPTIAN HIEROGLYPH-143D1;Lo;0;L;;;;;N;;;;; +143D2;EGYPTIAN HIEROGLYPH-143D2;Lo;0;L;;;;;N;;;;; +143D3;EGYPTIAN HIEROGLYPH-143D3;Lo;0;L;;;;;N;;;;; +143D4;EGYPTIAN HIEROGLYPH-143D4;Lo;0;L;;;;;N;;;;; +143D5;EGYPTIAN HIEROGLYPH-143D5;Lo;0;L;;;;;N;;;;; +143D6;EGYPTIAN HIEROGLYPH-143D6;Lo;0;L;;;;;N;;;;; +143D7;EGYPTIAN HIEROGLYPH-143D7;Lo;0;L;;;;;N;;;;; +143D8;EGYPTIAN HIEROGLYPH-143D8;Lo;0;L;;;;;N;;;;; +143D9;EGYPTIAN HIEROGLYPH-143D9;Lo;0;L;;;;;N;;;;; +143DA;EGYPTIAN HIEROGLYPH-143DA;Lo;0;L;;;;;N;;;;; +143DB;EGYPTIAN HIEROGLYPH-143DB;Lo;0;L;;;;;N;;;;; +143DC;EGYPTIAN HIEROGLYPH-143DC;Lo;0;L;;;;;N;;;;; +143DD;EGYPTIAN HIEROGLYPH-143DD;Lo;0;L;;;;;N;;;;; +143DE;EGYPTIAN HIEROGLYPH-143DE;Lo;0;L;;;;;N;;;;; +143DF;EGYPTIAN HIEROGLYPH-143DF;Lo;0;L;;;;;N;;;;; +143E0;EGYPTIAN HIEROGLYPH-143E0;Lo;0;L;;;;;N;;;;; +143E1;EGYPTIAN HIEROGLYPH-143E1;Lo;0;L;;;;;N;;;;; +143E2;EGYPTIAN HIEROGLYPH-143E2;Lo;0;L;;;;;N;;;;; +143E3;EGYPTIAN HIEROGLYPH-143E3;Lo;0;L;;;;;N;;;;; +143E4;EGYPTIAN HIEROGLYPH-143E4;Lo;0;L;;;;;N;;;;; +143E5;EGYPTIAN HIEROGLYPH-143E5;Lo;0;L;;;;;N;;;;; +143E6;EGYPTIAN HIEROGLYPH-143E6;Lo;0;L;;;;;N;;;;; +143E7;EGYPTIAN HIEROGLYPH-143E7;Lo;0;L;;;;;N;;;;; +143E8;EGYPTIAN HIEROGLYPH-143E8;Lo;0;L;;;;;N;;;;; +143E9;EGYPTIAN HIEROGLYPH-143E9;Lo;0;L;;;;;N;;;;; +143EA;EGYPTIAN HIEROGLYPH-143EA;Lo;0;L;;;;;N;;;;; +143EB;EGYPTIAN HIEROGLYPH-143EB;Lo;0;L;;;;;N;;;;; +143EC;EGYPTIAN HIEROGLYPH-143EC;Lo;0;L;;;;;N;;;;; +143ED;EGYPTIAN HIEROGLYPH-143ED;Lo;0;L;;;;;N;;;;; +143EE;EGYPTIAN HIEROGLYPH-143EE;Lo;0;L;;;;;N;;;;; +143EF;EGYPTIAN HIEROGLYPH-143EF;Lo;0;L;;;;;N;;;;; +143F0;EGYPTIAN HIEROGLYPH-143F0;Lo;0;L;;;;;N;;;;; +143F1;EGYPTIAN HIEROGLYPH-143F1;Lo;0;L;;;;;N;;;;; +143F2;EGYPTIAN HIEROGLYPH-143F2;Lo;0;L;;;;;N;;;;; +143F3;EGYPTIAN HIEROGLYPH-143F3;Lo;0;L;;;;;N;;;;; +143F4;EGYPTIAN HIEROGLYPH-143F4;Lo;0;L;;;;;N;;;;; +143F5;EGYPTIAN HIEROGLYPH-143F5;Lo;0;L;;;;;N;;;;; +143F6;EGYPTIAN HIEROGLYPH-143F6;Lo;0;L;;;;;N;;;;; +143F7;EGYPTIAN HIEROGLYPH-143F7;Lo;0;L;;;;;N;;;;; +143F8;EGYPTIAN HIEROGLYPH-143F8;Lo;0;L;;;;;N;;;;; +143F9;EGYPTIAN HIEROGLYPH-143F9;Lo;0;L;;;;;N;;;;; +143FA;EGYPTIAN HIEROGLYPH-143FA;Lo;0;L;;;;;N;;;;; 14400;ANATOLIAN HIEROGLYPH A001;Lo;0;L;;;;;N;;;;; 14401;ANATOLIAN HIEROGLYPH A002;Lo;0;L;;;;;N;;;;; 14402;ANATOLIAN HIEROGLYPH A003;Lo;0;L;;;;;N;;;;; @@ -24771,6 +29053,64 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;; 14644;ANATOLIAN HIEROGLYPH A528;Lo;0;L;;;;;N;;;;; 14645;ANATOLIAN HIEROGLYPH A529;Lo;0;L;;;;;N;;;;; 14646;ANATOLIAN HIEROGLYPH A530;Lo;0;L;;;;;N;;;;; +16100;GURUNG KHEMA LETTER A;Lo;0;L;;;;;N;;;;; +16101;GURUNG KHEMA LETTER KA;Lo;0;L;;;;;N;;;;; +16102;GURUNG KHEMA LETTER KHA;Lo;0;L;;;;;N;;;;; +16103;GURUNG KHEMA LETTER GA;Lo;0;L;;;;;N;;;;; +16104;GURUNG KHEMA LETTER GHA;Lo;0;L;;;;;N;;;;; +16105;GURUNG KHEMA LETTER NGA;Lo;0;L;;;;;N;;;;; +16106;GURUNG KHEMA LETTER CA;Lo;0;L;;;;;N;;;;; +16107;GURUNG KHEMA LETTER CHA;Lo;0;L;;;;;N;;;;; +16108;GURUNG KHEMA LETTER JA;Lo;0;L;;;;;N;;;;; +16109;GURUNG KHEMA LETTER JHA;Lo;0;L;;;;;N;;;;; +1610A;GURUNG KHEMA LETTER HA;Lo;0;L;;;;;N;;;;; +1610B;GURUNG KHEMA LETTER TTA;Lo;0;L;;;;;N;;;;; +1610C;GURUNG KHEMA LETTER TTHA;Lo;0;L;;;;;N;;;;; +1610D;GURUNG KHEMA LETTER DDA;Lo;0;L;;;;;N;;;;; +1610E;GURUNG KHEMA LETTER DDHA;Lo;0;L;;;;;N;;;;; +1610F;GURUNG KHEMA LETTER VA;Lo;0;L;;;;;N;;;;; +16110;GURUNG KHEMA LETTER TA;Lo;0;L;;;;;N;;;;; +16111;GURUNG KHEMA LETTER THA;Lo;0;L;;;;;N;;;;; +16112;GURUNG KHEMA LETTER DA;Lo;0;L;;;;;N;;;;; +16113;GURUNG KHEMA LETTER DHA;Lo;0;L;;;;;N;;;;; +16114;GURUNG KHEMA LETTER NA;Lo;0;L;;;;;N;;;;; +16115;GURUNG KHEMA LETTER PA;Lo;0;L;;;;;N;;;;; +16116;GURUNG KHEMA LETTER PHA;Lo;0;L;;;;;N;;;;; +16117;GURUNG KHEMA LETTER BA;Lo;0;L;;;;;N;;;;; +16118;GURUNG KHEMA LETTER BHA;Lo;0;L;;;;;N;;;;; +16119;GURUNG KHEMA LETTER MA;Lo;0;L;;;;;N;;;;; +1611A;GURUNG KHEMA LETTER YA;Lo;0;L;;;;;N;;;;; +1611B;GURUNG KHEMA LETTER RA;Lo;0;L;;;;;N;;;;; +1611C;GURUNG KHEMA LETTER LA;Lo;0;L;;;;;N;;;;; +1611D;GURUNG KHEMA LETTER SA;Lo;0;L;;;;;N;;;;; +1611E;GURUNG KHEMA VOWEL SIGN AA;Mn;0;NSM;;;;;N;;;;; +1611F;GURUNG KHEMA VOWEL SIGN I;Mn;0;NSM;;;;;N;;;;; +16120;GURUNG KHEMA VOWEL SIGN II;Mn;0;NSM;;;;;N;;;;; +16121;GURUNG KHEMA VOWEL SIGN U;Mn;0;NSM;1611E 1611E;;;;N;;;;; +16122;GURUNG KHEMA VOWEL SIGN UU;Mn;0;NSM;1611E 16129;;;;N;;;;; +16123;GURUNG KHEMA VOWEL SIGN E;Mn;0;NSM;1611E 1611F;;;;N;;;;; +16124;GURUNG KHEMA VOWEL SIGN EE;Mn;0;NSM;16129 1611F;;;;N;;;;; +16125;GURUNG KHEMA VOWEL SIGN AI;Mn;0;NSM;1611E 16120;;;;N;;;;; +16126;GURUNG KHEMA VOWEL SIGN O;Mn;0;NSM;16121 1611F;;;;N;;;;; +16127;GURUNG KHEMA VOWEL SIGN OO;Mn;0;NSM;16122 1611F;;;;N;;;;; +16128;GURUNG KHEMA VOWEL SIGN AU;Mn;0;NSM;16121 16120;;;;N;;;;; +16129;GURUNG KHEMA VOWEL LENGTH MARK;Mn;0;NSM;;;;;N;;;;; +1612A;GURUNG KHEMA CONSONANT SIGN MEDIAL YA;Mc;0;L;;;;;N;;;;; +1612B;GURUNG KHEMA CONSONANT SIGN MEDIAL VA;Mc;0;L;;;;;N;;;;; +1612C;GURUNG KHEMA CONSONANT SIGN MEDIAL HA;Mc;0;L;;;;;N;;;;; +1612D;GURUNG KHEMA SIGN ANUSVARA;Mn;0;NSM;;;;;N;;;;; +1612E;GURUNG KHEMA CONSONANT SIGN MEDIAL RA;Mn;0;NSM;;;;;N;;;;; +1612F;GURUNG KHEMA SIGN THOLHOMA;Mn;9;NSM;;;;;N;;;;; +16130;GURUNG KHEMA DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;; +16131;GURUNG KHEMA DIGIT ONE;Nd;0;L;;1;1;1;N;;;;; +16132;GURUNG KHEMA DIGIT TWO;Nd;0;L;;2;2;2;N;;;;; +16133;GURUNG KHEMA DIGIT THREE;Nd;0;L;;3;3;3;N;;;;; +16134;GURUNG KHEMA DIGIT FOUR;Nd;0;L;;4;4;4;N;;;;; +16135;GURUNG KHEMA DIGIT FIVE;Nd;0;L;;5;5;5;N;;;;; +16136;GURUNG KHEMA DIGIT SIX;Nd;0;L;;6;6;6;N;;;;; +16137;GURUNG KHEMA DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;; +16138;GURUNG KHEMA DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;; +16139;GURUNG KHEMA DIGIT NINE;Nd;0;L;;9;9;9;N;;;;; 16800;BAMUM LETTER PHASE-A NGKUE MFON;Lo;0;L;;;;;N;;;;; 16801;BAMUM LETTER PHASE-A GBIEE FON;Lo;0;L;;;;;N;;;;; 16802;BAMUM LETTER PHASE-A PON MFON PIPAEMGBIEE;Lo;0;L;;;;;N;;;;; @@ -25635,6 +29975,64 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;; 16B8D;PAHAWH HMONG CLAN SIGN TSWB;Lo;0;L;;;;;N;;;;; 16B8E;PAHAWH HMONG CLAN SIGN KWM;Lo;0;L;;;;;N;;;;; 16B8F;PAHAWH HMONG CLAN SIGN VWJ;Lo;0;L;;;;;N;;;;; +16D40;KIRAT RAI SIGN ANUSVARA;Lm;0;L;;;;;N;;;;; +16D41;KIRAT RAI SIGN TONPI;Lm;0;L;;;;;N;;;;; +16D42;KIRAT RAI SIGN VISARGA;Lm;0;L;;;;;N;;;;; +16D43;KIRAT RAI LETTER A;Lo;0;L;;;;;N;;;;; +16D44;KIRAT RAI LETTER KA;Lo;0;L;;;;;N;;;;; +16D45;KIRAT RAI LETTER KHA;Lo;0;L;;;;;N;;;;; +16D46;KIRAT RAI LETTER GA;Lo;0;L;;;;;N;;;;; +16D47;KIRAT RAI LETTER GHA;Lo;0;L;;;;;N;;;;; +16D48;KIRAT RAI LETTER NGA;Lo;0;L;;;;;N;;;;; +16D49;KIRAT RAI LETTER CA;Lo;0;L;;;;;N;;;;; +16D4A;KIRAT RAI LETTER CHA;Lo;0;L;;;;;N;;;;; +16D4B;KIRAT RAI LETTER JA;Lo;0;L;;;;;N;;;;; +16D4C;KIRAT RAI LETTER JHA;Lo;0;L;;;;;N;;;;; +16D4D;KIRAT RAI LETTER NYA;Lo;0;L;;;;;N;;;;; +16D4E;KIRAT RAI LETTER TTA;Lo;0;L;;;;;N;;;;; +16D4F;KIRAT RAI LETTER TTHA;Lo;0;L;;;;;N;;;;; +16D50;KIRAT RAI LETTER DDA;Lo;0;L;;;;;N;;;;; +16D51;KIRAT RAI LETTER DDHA;Lo;0;L;;;;;N;;;;; +16D52;KIRAT RAI LETTER TA;Lo;0;L;;;;;N;;;;; +16D53;KIRAT RAI LETTER THA;Lo;0;L;;;;;N;;;;; +16D54;KIRAT RAI LETTER DA;Lo;0;L;;;;;N;;;;; +16D55;KIRAT RAI LETTER DHA;Lo;0;L;;;;;N;;;;; +16D56;KIRAT RAI LETTER NA;Lo;0;L;;;;;N;;;;; +16D57;KIRAT RAI LETTER PA;Lo;0;L;;;;;N;;;;; +16D58;KIRAT RAI LETTER PHA;Lo;0;L;;;;;N;;;;; +16D59;KIRAT RAI LETTER BA;Lo;0;L;;;;;N;;;;; +16D5A;KIRAT RAI LETTER BHA;Lo;0;L;;;;;N;;;;; +16D5B;KIRAT RAI LETTER MA;Lo;0;L;;;;;N;;;;; +16D5C;KIRAT RAI LETTER YA;Lo;0;L;;;;;N;;;;; +16D5D;KIRAT RAI LETTER RA;Lo;0;L;;;;;N;;;;; +16D5E;KIRAT RAI LETTER LA;Lo;0;L;;;;;N;;;;; +16D5F;KIRAT RAI LETTER VA;Lo;0;L;;;;;N;;;;; +16D60;KIRAT RAI LETTER SA;Lo;0;L;;;;;N;;;;; +16D61;KIRAT RAI LETTER SHA;Lo;0;L;;;;;N;;;;; +16D62;KIRAT RAI LETTER HA;Lo;0;L;;;;;N;;;;; +16D63;KIRAT RAI VOWEL SIGN AA;Lo;0;L;;;;;N;;;;; +16D64;KIRAT RAI VOWEL SIGN I;Lo;0;L;;;;;N;;;;; +16D65;KIRAT RAI VOWEL SIGN U;Lo;0;L;;;;;N;;;;; +16D66;KIRAT RAI VOWEL SIGN UE;Lo;0;L;;;;;N;;;;; +16D67;KIRAT RAI VOWEL SIGN E;Lo;0;L;;;;;N;;;;; +16D68;KIRAT RAI VOWEL SIGN AI;Lo;0;L;16D67 16D67;;;;N;;;;; +16D69;KIRAT RAI VOWEL SIGN O;Lo;0;L;16D63 16D67;;;;N;;;;; +16D6A;KIRAT RAI VOWEL SIGN AU;Lo;0;L;16D69 16D67;;;;N;;;;; +16D6B;KIRAT RAI SIGN VIRAMA;Lm;0;L;;;;;N;;;;; +16D6C;KIRAT RAI SIGN SAAT;Lm;0;L;;;;;N;;;;; +16D6D;KIRAT RAI SIGN YUPI;Po;0;L;;;;;N;;;;; +16D6E;KIRAT RAI DANDA;Po;0;L;;;;;N;;;;; +16D6F;KIRAT RAI DOUBLE DANDA;Po;0;L;;;;;N;;;;; +16D70;KIRAT RAI DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;; +16D71;KIRAT RAI DIGIT ONE;Nd;0;L;;1;1;1;N;;;;; +16D72;KIRAT RAI DIGIT TWO;Nd;0;L;;2;2;2;N;;;;; +16D73;KIRAT RAI DIGIT THREE;Nd;0;L;;3;3;3;N;;;;; +16D74;KIRAT RAI DIGIT FOUR;Nd;0;L;;4;4;4;N;;;;; +16D75;KIRAT RAI DIGIT FIVE;Nd;0;L;;5;5;5;N;;;;; +16D76;KIRAT RAI DIGIT SIX;Nd;0;L;;6;6;6;N;;;;; +16D77;KIRAT RAI DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;; +16D78;KIRAT RAI DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;; +16D79;KIRAT RAI DIGIT NINE;Nd;0;L;;9;9;9;N;;;;; 16E40;MEDEFAIDRIN CAPITAL LETTER M;Lu;0;L;;;;;N;;;;16E60; 16E41;MEDEFAIDRIN CAPITAL LETTER S;Lu;0;L;;;;;N;;;;16E61; 16E42;MEDEFAIDRIN CAPITAL LETTER V;Lu;0;L;;;;;N;;;;16E62; @@ -27122,6 +31520,7 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;; 18CD3;KHITAN SMALL SCRIPT CHARACTER-18CD3;Lo;0;L;;;;;N;;;;; 18CD4;KHITAN SMALL SCRIPT CHARACTER-18CD4;Lo;0;L;;;;;N;;;;; 18CD5;KHITAN SMALL SCRIPT CHARACTER-18CD5;Lo;0;L;;;;;N;;;;; +18CFF;KHITAN SMALL SCRIPT CHARACTER-18CFF;Lo;0;L;;;;;N;;;;; 18D00;<Tangut Ideograph Supplement, First>;Lo;0;L;;;;;N;;;;; 18D08;<Tangut Ideograph Supplement, Last>;Lo;0;L;;;;;N;;;;; 1AFF0;KATAKANA LETTER MINNAN TONE-2;Lm;0;L;;;;;N;;;;; @@ -27980,6 +32379,692 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;; 1BCA1;SHORTHAND FORMAT CONTINUING OVERLAP;Cf;0;BN;;;;;N;;;;; 1BCA2;SHORTHAND FORMAT DOWN STEP;Cf;0;BN;;;;;N;;;;; 1BCA3;SHORTHAND FORMAT UP STEP;Cf;0;BN;;;;;N;;;;; +1CC00;UP-POINTING GO-KART;So;0;ON;;;;;N;;;;; +1CC01;RIGHT-POINTING GO-KART;So;0;ON;;;;;N;;;;; +1CC02;LEFT-POINTING STICK FIGURE;So;0;ON;;;;;N;;;;; +1CC03;RIGHT-POINTING STICK FIGURE;So;0;ON;;;;;N;;;;; +1CC04;DOWN-POINTING STICK FIGURE;So;0;ON;;;;;N;;;;; +1CC05;LOWER HORIZONTAL RULER SEGMENT;So;0;ON;;;;;N;;;;; +1CC06;RIGHT VERTICAL RULER SEGMENT;So;0;ON;;;;;N;;;;; +1CC07;LOWER RIGHT RULER SEGMENT;So;0;ON;;;;;N;;;;; +1CC08;ANTENNA;So;0;ON;;;;;N;;;;; +1CC09;HORIZONTAL RESISTOR SEGMENT;So;0;ON;;;;;N;;;;; +1CC0A;VERTICAL RESISTOR SEGMENT;So;0;ON;;;;;N;;;;; +1CC0B;LEFT THIRD INDUCTOR;So;0;ON;;;;;N;;;;; +1CC0C;MIDDLE THIRD INDUCTOR;So;0;ON;;;;;N;;;;; +1CC0D;RIGHT THIRD INDUCTOR;So;0;ON;;;;;N;;;;; +1CC0E;LEFT-POINTING DIODE;So;0;ON;;;;;N;;;;; +1CC0F;RIGHT-POINTING DIODE;So;0;ON;;;;;N;;;;; +1CC10;NPN TRANSISTOR;So;0;ON;;;;;N;;;;; +1CC11;PNP TRANSISTOR;So;0;ON;;;;;N;;;;; +1CC12;RECEPTACLE;So;0;ON;;;;;N;;;;; +1CC13;HORIZONTAL CAPACITOR;So;0;ON;;;;;N;;;;; +1CC14;VERTICAL CAPACITOR;So;0;ON;;;;;N;;;;; +1CC15;LOGIC GATE OR;So;0;ON;;;;;N;;;;; +1CC16;LOGIC GATE AND;So;0;ON;;;;;N;;;;; +1CC17;LOGIC GATE INVERTED INPUTS;So;0;ON;;;;;N;;;;; +1CC18;LOGIC GATE INVERTED OUTPUT;So;0;ON;;;;;N;;;;; +1CC19;LOGIC GATE BUFFER;So;0;ON;;;;;N;;;;; +1CC1A;LOGIC GATE BUFFER WITH INVERTED INPUT;So;0;ON;;;;;N;;;;; +1CC1B;BOX DRAWINGS LIGHT HORIZONTAL AND UPPER RIGHT;So;0;ON;;;;;N;;;;; +1CC1C;BOX DRAWINGS LIGHT HORIZONTAL AND LOWER RIGHT;So;0;ON;;;;;N;;;;; +1CC1D;BOX DRAWINGS LIGHT TOP AND UPPER LEFT;So;0;ON;;;;;N;;;;; +1CC1E;BOX DRAWINGS LIGHT BOTTOM AND LOWER LEFT;So;0;ON;;;;;N;;;;; +1CC1F;BOX DRAWINGS DOUBLE DIAGONAL UPPER RIGHT TO LOWER LEFT;So;0;ON;;;;;N;;;;; +1CC20;BOX DRAWINGS DOUBLE DIAGONAL UPPER LEFT TO LOWER RIGHT;So;0;ON;;;;;N;;;;; +1CC21;SEPARATED BLOCK QUADRANT-1;So;0;ON;;;;;N;;;;; +1CC22;SEPARATED BLOCK QUADRANT-2;So;0;ON;;;;;N;;;;; +1CC23;SEPARATED BLOCK QUADRANT-12;So;0;ON;;;;;N;;;;; +1CC24;SEPARATED BLOCK QUADRANT-3;So;0;ON;;;;;N;;;;; +1CC25;SEPARATED BLOCK QUADRANT-13;So;0;ON;;;;;N;;;;; +1CC26;SEPARATED BLOCK QUADRANT-23;So;0;ON;;;;;N;;;;; +1CC27;SEPARATED BLOCK QUADRANT-123;So;0;ON;;;;;N;;;;; +1CC28;SEPARATED BLOCK QUADRANT-4;So;0;ON;;;;;N;;;;; +1CC29;SEPARATED BLOCK QUADRANT-14;So;0;ON;;;;;N;;;;; +1CC2A;SEPARATED BLOCK QUADRANT-24;So;0;ON;;;;;N;;;;; +1CC2B;SEPARATED BLOCK QUADRANT-124;So;0;ON;;;;;N;;;;; +1CC2C;SEPARATED BLOCK QUADRANT-34;So;0;ON;;;;;N;;;;; +1CC2D;SEPARATED BLOCK QUADRANT-134;So;0;ON;;;;;N;;;;; +1CC2E;SEPARATED BLOCK QUADRANT-234;So;0;ON;;;;;N;;;;; +1CC2F;SEPARATED BLOCK QUADRANT-1234;So;0;ON;;;;;N;;;;; +1CC30;UPPER LEFT TWELFTH CIRCLE;So;0;ON;;;;;N;;;;; +1CC31;UPPER CENTRE LEFT TWELFTH CIRCLE;So;0;ON;;;;;N;;;;; +1CC32;UPPER CENTRE RIGHT TWELFTH CIRCLE;So;0;ON;;;;;N;;;;; +1CC33;UPPER RIGHT TWELFTH CIRCLE;So;0;ON;;;;;N;;;;; +1CC34;UPPER MIDDLE LEFT TWELFTH CIRCLE;So;0;ON;;;;;N;;;;; +1CC35;UPPER LEFT QUARTER CIRCLE;So;0;ON;;;;;N;;;;; +1CC36;UPPER RIGHT QUARTER CIRCLE;So;0;ON;;;;;N;;;;; +1CC37;UPPER MIDDLE RIGHT TWELFTH CIRCLE;So;0;ON;;;;;N;;;;; +1CC38;LOWER MIDDLE LEFT TWELFTH CIRCLE;So;0;ON;;;;;N;;;;; +1CC39;LOWER LEFT QUARTER CIRCLE;So;0;ON;;;;;N;;;;; +1CC3A;LOWER RIGHT QUARTER CIRCLE;So;0;ON;;;;;N;;;;; +1CC3B;LOWER MIDDLE RIGHT TWELFTH CIRCLE;So;0;ON;;;;;N;;;;; +1CC3C;LOWER LEFT TWELFTH CIRCLE;So;0;ON;;;;;N;;;;; +1CC3D;LOWER CENTRE LEFT TWELFTH CIRCLE;So;0;ON;;;;;N;;;;; +1CC3E;LOWER CENTRE RIGHT TWELFTH CIRCLE;So;0;ON;;;;;N;;;;; +1CC3F;LOWER RIGHT TWELFTH CIRCLE;So;0;ON;;;;;N;;;;; +1CC40;SPARSE HORIZONTAL FILL;So;0;ON;;;;;N;;;;; +1CC41;SPARSE VERTICAL FILL;So;0;ON;;;;;N;;;;; +1CC42;ORTHOGONAL CROSSHATCH FILL;So;0;ON;;;;;N;;;;; +1CC43;DIAGONAL CROSSHATCH FILL;So;0;ON;;;;;N;;;;; +1CC44;DENSE VERTICAL FILL;So;0;ON;;;;;N;;;;; +1CC45;DENSE HORIZONTAL FILL;So;0;ON;;;;;N;;;;; +1CC46;SPECKLE FILL FRAME-1;So;0;ON;;;;;N;;;;; +1CC47;SPECKLE FILL FRAME-2;So;0;ON;;;;;N;;;;; +1CC48;LEFT-FACING BASSINET;So;0;ON;;;;;N;;;;; +1CC49;RIGHT-FACING BASSINET;So;0;ON;;;;;N;;;;; +1CC4A;FLYING SAUCER WITH BEAMS;So;0;ON;;;;;N;;;;; +1CC4B;FLYING SAUCER WITHOUT BEAMS;So;0;ON;;;;;N;;;;; +1CC4C;ALIEN MONSTER OPEN JAWS;So;0;ON;;;;;N;;;;; +1CC4D;ALIEN MONSTER CLOSED JAWS;So;0;ON;;;;;N;;;;; +1CC4E;ALIEN SQUID OPEN TENTACLES;So;0;ON;;;;;N;;;;; +1CC4F;ALIEN SQUID CLOSED TENTACLES;So;0;ON;;;;;N;;;;; +1CC50;ALIEN CRAB STEPPING RIGHT;So;0;ON;;;;;N;;;;; +1CC51;ALIEN CRAB STEPPING LEFT;So;0;ON;;;;;N;;;;; +1CC52;ALIEN SPIDER CROUCHING;So;0;ON;;;;;N;;;;; +1CC53;ALIEN SPIDER SPREAD;So;0;ON;;;;;N;;;;; +1CC54;ALIEN MONSTER STEP-1;So;0;ON;;;;;N;;;;; +1CC55;ALIEN MONSTER STEP-2;So;0;ON;;;;;N;;;;; +1CC56;LEFT-POINTING ROCKET SHIP;So;0;ON;;;;;N;;;;; +1CC57;UP-POINTING ROCKET SHIP;So;0;ON;;;;;N;;;;; +1CC58;RIGHT-POINTING ROCKET SHIP;So;0;ON;;;;;N;;;;; +1CC59;DOWN-POINTING ROCKET SHIP;So;0;ON;;;;;N;;;;; +1CC5A;TOP HALF LEFT-FACING ROBOT;So;0;ON;;;;;N;;;;; +1CC5B;TOP HALF FORWARD-FACING ROBOT;So;0;ON;;;;;N;;;;; +1CC5C;TOP HALF RIGHT-FACING ROBOT;So;0;ON;;;;;N;;;;; +1CC5D;BOTTOM HALF LEFT-FACING ROBOT;So;0;ON;;;;;N;;;;; +1CC5E;BOTTOM HALF FORWARD-FACING ROBOT;So;0;ON;;;;;N;;;;; +1CC5F;BOTTOM HALF RIGHT-FACING ROBOT;So;0;ON;;;;;N;;;;; +1CC60;LEFT-POINTING ATOMIC BOMB;So;0;ON;;;;;N;;;;; +1CC61;UP-POINTING ATOMIC BOMB;So;0;ON;;;;;N;;;;; +1CC62;RIGHT-POINTING ATOMIC BOMB;So;0;ON;;;;;N;;;;; +1CC63;DOWN-POINTING ATOMIC BOMB;So;0;ON;;;;;N;;;;; +1CC64;MUSHROOM CLOUD;So;0;ON;;;;;N;;;;; +1CC65;LEFT-POINTING RIFLE;So;0;ON;;;;;N;;;;; +1CC66;UP-POINTING RIFLE;So;0;ON;;;;;N;;;;; +1CC67;RIGHT-POINTING RIFLE;So;0;ON;;;;;N;;;;; +1CC68;DOWN-POINTING RIFLE;So;0;ON;;;;;N;;;;; +1CC69;EIGHT RAYS INWARD;So;0;ON;;;;;N;;;;; +1CC6A;EIGHT RAYS OUTWARD;So;0;ON;;;;;N;;;;; +1CC6B;BLACK LARGE CIRCLE MINUS LEFT QUARTER SECTION;So;0;ON;;;;;N;;;;; +1CC6C;BLACK LARGE CIRCLE MINUS UPPER QUARTER SECTION;So;0;ON;;;;;N;;;;; +1CC6D;BLACK LARGE CIRCLE MINUS RIGHT QUARTER SECTION;So;0;ON;;;;;N;;;;; +1CC6E;BLACK LARGE CIRCLE MINUS LOWER QUARTER SECTION;So;0;ON;;;;;N;;;;; +1CC6F;BLACK NEUTRAL FACE;So;0;ON;;;;;N;;;;; +1CC70;LEFT-FACING SNAKE HEAD WITH OPEN MOUTH;So;0;ON;;;;;N;;;;; +1CC71;UP-FACING SNAKE HEAD WITH OPEN MOUTH;So;0;ON;;;;;N;;;;; +1CC72;RIGHT-FACING SNAKE HEAD WITH OPEN MOUTH;So;0;ON;;;;;N;;;;; +1CC73;DOWN-FACING SNAKE HEAD WITH OPEN MOUTH;So;0;ON;;;;;N;;;;; +1CC74;LEFT-FACING SNAKE HEAD WITH CLOSED MOUTH;So;0;ON;;;;;N;;;;; +1CC75;UP-FACING SNAKE HEAD WITH CLOSED MOUTH;So;0;ON;;;;;N;;;;; +1CC76;RIGHT-FACING SNAKE HEAD WITH CLOSED MOUTH;So;0;ON;;;;;N;;;;; +1CC77;DOWN-FACING SNAKE HEAD WITH CLOSED MOUTH;So;0;ON;;;;;N;;;;; +1CC78;LEFT-POINTING ENERGY WAVE;So;0;ON;;;;;N;;;;; +1CC79;UP-POINTING ENERGY WAVE;So;0;ON;;;;;N;;;;; +1CC7A;RIGHT-POINTING ENERGY WAVE;So;0;ON;;;;;N;;;;; +1CC7B;DOWN-POINTING ENERGY WAVE;So;0;ON;;;;;N;;;;; +1CC7C;SQUARE SPIRAL FROM TOP LEFT;So;0;ON;;;;;N;;;;; +1CC7D;SQUARE SPIRAL FROM TOP RIGHT;So;0;ON;;;;;N;;;;; +1CC7E;SQUARE SPIRAL FROM BOTTOM RIGHT;So;0;ON;;;;;N;;;;; +1CC7F;SQUARE SPIRAL FROM BOTTOM LEFT;So;0;ON;;;;;N;;;;; +1CC80;STRIPED LEFT-POINTING TRIANGLE;So;0;ON;;;;;N;;;;; +1CC81;STRIPED UP-POINTING TRIANGLE;So;0;ON;;;;;N;;;;; +1CC82;STRIPED RIGHT-POINTING TRIANGLE;So;0;ON;;;;;N;;;;; +1CC83;STRIPED DOWN-POINTING TRIANGLE;So;0;ON;;;;;N;;;;; +1CC84;VERTICAL LADDER;So;0;ON;;;;;N;;;;; +1CC85;HORIZONTAL LADDER;So;0;ON;;;;;N;;;;; +1CC86;WHITE LOWER LEFT POINTER;So;0;ON;;;;;N;;;;; +1CC87;WHITE LOWER RIGHT POINTER;So;0;ON;;;;;N;;;;; +1CC88;TWO RINGS ALIGNED HORIZONTALLY;So;0;ON;;;;;N;;;;; +1CC89;SQUARE FOUR CORNER SALTIRES;So;0;ON;;;;;N;;;;; +1CC8A;SQUARE FOUR CORNER DIAGONALS;So;0;ON;;;;;N;;;;; +1CC8B;SQUARE FOUR CORNER BLACK TRIANGLES;So;0;ON;;;;;N;;;;; +1CC8C;SQUARE APERTURE;So;0;ON;;;;;N;;;;; +1CC8D;INVERSE BLACK DIAMOND;So;0;ON;;;;;N;;;;; +1CC8E;LEFT AND UPPER ONE EIGHTH BLOCK CONTAINING BLACK SMALL SQUARE;So;0;ON;;;;;N;;;;; +1CC8F;INVERSE BLACK SMALL SQUARE;So;0;ON;;;;;N;;;;; +1CC90;VERTICAL LINE WITH FOUR TICK MARKS;So;0;ON;;;;;N;;;;; +1CC91;HORIZONTAL LINE WITH FOUR TICK MARKS;So;0;ON;;;;;N;;;;; +1CC92;LEFT-FACING FISH;So;0;ON;;;;;N;;;;; +1CC93;RIGHT-FACING FISH;So;0;ON;;;;;N;;;;; +1CC94;LEFT-FACING FISH WITH OPEN MOUTH;So;0;ON;;;;;N;;;;; +1CC95;RIGHT-FACING FISH WITH OPEN MOUTH;So;0;ON;;;;;N;;;;; +1CC96;FLAPPING BIRD;So;0;ON;;;;;N;;;;; +1CC97;LEFT-POINTING RACING CAR;So;0;ON;;;;;N;;;;; +1CC98;UP-POINTING RACING CAR;So;0;ON;;;;;N;;;;; +1CC99;RIGHT-POINTING RACING CAR;So;0;ON;;;;;N;;;;; +1CC9A;DOWN-POINTING RACING CAR;So;0;ON;;;;;N;;;;; +1CC9B;HORIZONTAL RACING CAR;So;0;ON;;;;;N;;;;; +1CC9C;VERTICAL RACING CAR;So;0;ON;;;;;N;;;;; +1CC9D;VERTICAL GO-KART;So;0;ON;;;;;N;;;;; +1CC9E;LEFT-POINTING TANK;So;0;ON;;;;;N;;;;; +1CC9F;RIGHT-POINTING TANK;So;0;ON;;;;;N;;;;; +1CCA0;LEFT-POINTING ROCKET BOOSTER;So;0;ON;;;;;N;;;;; +1CCA1;RIGHT-POINTING ROCKET BOOSTER;So;0;ON;;;;;N;;;;; +1CCA2;LEFT-POINTING ROLLER COASTER CAR;So;0;ON;;;;;N;;;;; +1CCA3;RIGHT-POINTING ROLLER COASTER CAR;So;0;ON;;;;;N;;;;; +1CCA4;LEFT HALF FLYING SAUCER;So;0;ON;;;;;N;;;;; +1CCA5;RIGHT HALF FLYING SAUCER;So;0;ON;;;;;N;;;;; +1CCA6;UPPER LEFT QUADRANT FACE WITH OPEN EYES;So;0;ON;;;;;N;;;;; +1CCA7;UPPER RIGHT QUADRANT FACE WITH OPEN EYES;So;0;ON;;;;;N;;;;; +1CCA8;UPPER LEFT QUADRANT FACE WITH CLOSED EYES;So;0;ON;;;;;N;;;;; +1CCA9;UPPER RIGHT QUADRANT FACE WITH CLOSED EYES;So;0;ON;;;;;N;;;;; +1CCAA;LOWER LEFT QUADRANT SMILING FACE;So;0;ON;;;;;N;;;;; +1CCAB;LOWER RIGHT QUADRANT SMILING FACE;So;0;ON;;;;;N;;;;; +1CCAC;LOWER LEFT QUADRANT NEUTRAL FACE;So;0;ON;;;;;N;;;;; +1CCAD;LOWER RIGHT QUADRANT NEUTRAL FACE;So;0;ON;;;;;N;;;;; +1CCAE;LOWER LEFT QUADRANT FACE WITH OPEN MOUTH;So;0;ON;;;;;N;;;;; +1CCAF;LOWER RIGHT QUADRANT FACE WITH OPEN MOUTH;So;0;ON;;;;;N;;;;; +1CCB0;LOWER LEFT QUADRANT FROWNING FACE;So;0;ON;;;;;N;;;;; +1CCB1;LOWER RIGHT QUADRANT FROWNING FACE;So;0;ON;;;;;N;;;;; +1CCB2;UPPER LEFT QUADRANT TELEVISION;So;0;ON;;;;;N;;;;; +1CCB3;UPPER RIGHT QUADRANT TELEVISION;So;0;ON;;;;;N;;;;; +1CCB4;LOWER LEFT QUADRANT TELEVISION;So;0;ON;;;;;N;;;;; +1CCB5;LOWER RIGHT QUADRANT TELEVISION;So;0;ON;;;;;N;;;;; +1CCB6;UPPER LEFT QUADRANT MICROCOMPUTER;So;0;ON;;;;;N;;;;; +1CCB7;UPPER RIGHT QUADRANT MICROCOMPUTER;So;0;ON;;;;;N;;;;; +1CCB8;LOWER LEFT QUADRANT MICROCOMPUTER;So;0;ON;;;;;N;;;;; +1CCB9;LOWER RIGHT QUADRANT MICROCOMPUTER;So;0;ON;;;;;N;;;;; +1CCBA;UPPER LEFT QUADRANT CHESS KING;So;0;ON;;;;;N;;;;; +1CCBB;UPPER RIGHT QUADRANT CHESS KING;So;0;ON;;;;;N;;;;; +1CCBC;LOWER LEFT QUADRANT CHESS KING;So;0;ON;;;;;N;;;;; +1CCBD;LOWER RIGHT QUADRANT CHESS KING;So;0;ON;;;;;N;;;;; +1CCBE;UPPER LEFT QUADRANT CHESS QUEEN;So;0;ON;;;;;N;;;;; +1CCBF;UPPER RIGHT QUADRANT CHESS QUEEN;So;0;ON;;;;;N;;;;; +1CCC0;LOWER LEFT QUADRANT CHESS QUEEN;So;0;ON;;;;;N;;;;; +1CCC1;LOWER RIGHT QUADRANT CHESS QUEEN;So;0;ON;;;;;N;;;;; +1CCC2;UPPER LEFT QUADRANT CHESS ROOK;So;0;ON;;;;;N;;;;; +1CCC3;UPPER RIGHT QUADRANT CHESS ROOK;So;0;ON;;;;;N;;;;; +1CCC4;LOWER LEFT QUADRANT CHESS ROOK;So;0;ON;;;;;N;;;;; +1CCC5;LOWER RIGHT QUADRANT CHESS ROOK;So;0;ON;;;;;N;;;;; +1CCC6;UPPER LEFT QUADRANT CHESS BISHOP;So;0;ON;;;;;N;;;;; +1CCC7;UPPER RIGHT QUADRANT CHESS BISHOP;So;0;ON;;;;;N;;;;; +1CCC8;LOWER LEFT QUADRANT CHESS BISHOP;So;0;ON;;;;;N;;;;; +1CCC9;LOWER RIGHT QUADRANT CHESS BISHOP;So;0;ON;;;;;N;;;;; +1CCCA;UPPER LEFT QUADRANT CHESS KNIGHT;So;0;ON;;;;;N;;;;; +1CCCB;UPPER RIGHT QUADRANT CHESS KNIGHT;So;0;ON;;;;;N;;;;; +1CCCC;LOWER LEFT QUADRANT CHESS KNIGHT;So;0;ON;;;;;N;;;;; +1CCCD;LOWER RIGHT QUADRANT CHESS KNIGHT;So;0;ON;;;;;N;;;;; +1CCCE;UPPER LEFT QUADRANT CHESS PAWN;So;0;ON;;;;;N;;;;; +1CCCF;UPPER RIGHT QUADRANT CHESS PAWN;So;0;ON;;;;;N;;;;; +1CCD0;LOWER LEFT QUADRANT CHESS PAWN;So;0;ON;;;;;N;;;;; +1CCD1;LOWER RIGHT QUADRANT CHESS PAWN;So;0;ON;;;;;N;;;;; +1CCD2;UPPER LEFT QUADRANT STANDING KNIGHT;So;0;ON;;;;;N;;;;; +1CCD3;UPPER RIGHT QUADRANT STANDING KNIGHT;So;0;ON;;;;;N;;;;; +1CCD4;LOWER LEFT QUADRANT STANDING KNIGHT;So;0;ON;;;;;N;;;;; +1CCD5;LOWER RIGHT QUADRANT STANDING KNIGHT;So;0;ON;;;;;N;;;;; +1CCD6;OUTLINED LATIN CAPITAL LETTER A;So;0;L;<font> 0041;;;;N;;;;; +1CCD7;OUTLINED LATIN CAPITAL LETTER B;So;0;L;<font> 0042;;;;N;;;;; +1CCD8;OUTLINED LATIN CAPITAL LETTER C;So;0;L;<font> 0043;;;;N;;;;; +1CCD9;OUTLINED LATIN CAPITAL LETTER D;So;0;L;<font> 0044;;;;N;;;;; +1CCDA;OUTLINED LATIN CAPITAL LETTER E;So;0;L;<font> 0045;;;;N;;;;; +1CCDB;OUTLINED LATIN CAPITAL LETTER F;So;0;L;<font> 0046;;;;N;;;;; +1CCDC;OUTLINED LATIN CAPITAL LETTER G;So;0;L;<font> 0047;;;;N;;;;; +1CCDD;OUTLINED LATIN CAPITAL LETTER H;So;0;L;<font> 0048;;;;N;;;;; +1CCDE;OUTLINED LATIN CAPITAL LETTER I;So;0;L;<font> 0049;;;;N;;;;; +1CCDF;OUTLINED LATIN CAPITAL LETTER J;So;0;L;<font> 004A;;;;N;;;;; +1CCE0;OUTLINED LATIN CAPITAL LETTER K;So;0;L;<font> 004B;;;;N;;;;; +1CCE1;OUTLINED LATIN CAPITAL LETTER L;So;0;L;<font> 004C;;;;N;;;;; +1CCE2;OUTLINED LATIN CAPITAL LETTER M;So;0;L;<font> 004D;;;;N;;;;; +1CCE3;OUTLINED LATIN CAPITAL LETTER N;So;0;L;<font> 004E;;;;N;;;;; +1CCE4;OUTLINED LATIN CAPITAL LETTER O;So;0;L;<font> 004F;;;;N;;;;; +1CCE5;OUTLINED LATIN CAPITAL LETTER P;So;0;L;<font> 0050;;;;N;;;;; +1CCE6;OUTLINED LATIN CAPITAL LETTER Q;So;0;L;<font> 0051;;;;N;;;;; +1CCE7;OUTLINED LATIN CAPITAL LETTER R;So;0;L;<font> 0052;;;;N;;;;; +1CCE8;OUTLINED LATIN CAPITAL LETTER S;So;0;L;<font> 0053;;;;N;;;;; +1CCE9;OUTLINED LATIN CAPITAL LETTER T;So;0;L;<font> 0054;;;;N;;;;; +1CCEA;OUTLINED LATIN CAPITAL LETTER U;So;0;L;<font> 0055;;;;N;;;;; +1CCEB;OUTLINED LATIN CAPITAL LETTER V;So;0;L;<font> 0056;;;;N;;;;; +1CCEC;OUTLINED LATIN CAPITAL LETTER W;So;0;L;<font> 0057;;;;N;;;;; +1CCED;OUTLINED LATIN CAPITAL LETTER X;So;0;L;<font> 0058;;;;N;;;;; +1CCEE;OUTLINED LATIN CAPITAL LETTER Y;So;0;L;<font> 0059;;;;N;;;;; +1CCEF;OUTLINED LATIN CAPITAL LETTER Z;So;0;L;<font> 005A;;;;N;;;;; +1CCF0;OUTLINED DIGIT ZERO;Nd;0;EN;<font> 0030;0;0;0;N;;;;; +1CCF1;OUTLINED DIGIT ONE;Nd;0;EN;<font> 0031;1;1;1;N;;;;; +1CCF2;OUTLINED DIGIT TWO;Nd;0;EN;<font> 0032;2;2;2;N;;;;; +1CCF3;OUTLINED DIGIT THREE;Nd;0;EN;<font> 0033;3;3;3;N;;;;; +1CCF4;OUTLINED DIGIT FOUR;Nd;0;EN;<font> 0034;4;4;4;N;;;;; +1CCF5;OUTLINED DIGIT FIVE;Nd;0;EN;<font> 0035;5;5;5;N;;;;; +1CCF6;OUTLINED DIGIT SIX;Nd;0;EN;<font> 0036;6;6;6;N;;;;; +1CCF7;OUTLINED DIGIT SEVEN;Nd;0;EN;<font> 0037;7;7;7;N;;;;; +1CCF8;OUTLINED DIGIT EIGHT;Nd;0;EN;<font> 0038;8;8;8;N;;;;; +1CCF9;OUTLINED DIGIT NINE;Nd;0;EN;<font> 0039;9;9;9;N;;;;; +1CD00;BLOCK OCTANT-3;So;0;ON;;;;;N;;;;; +1CD01;BLOCK OCTANT-23;So;0;ON;;;;;N;;;;; +1CD02;BLOCK OCTANT-123;So;0;ON;;;;;N;;;;; +1CD03;BLOCK OCTANT-4;So;0;ON;;;;;N;;;;; +1CD04;BLOCK OCTANT-14;So;0;ON;;;;;N;;;;; +1CD05;BLOCK OCTANT-124;So;0;ON;;;;;N;;;;; +1CD06;BLOCK OCTANT-34;So;0;ON;;;;;N;;;;; +1CD07;BLOCK OCTANT-134;So;0;ON;;;;;N;;;;; +1CD08;BLOCK OCTANT-234;So;0;ON;;;;;N;;;;; +1CD09;BLOCK OCTANT-5;So;0;ON;;;;;N;;;;; +1CD0A;BLOCK OCTANT-15;So;0;ON;;;;;N;;;;; +1CD0B;BLOCK OCTANT-25;So;0;ON;;;;;N;;;;; +1CD0C;BLOCK OCTANT-125;So;0;ON;;;;;N;;;;; +1CD0D;BLOCK OCTANT-135;So;0;ON;;;;;N;;;;; +1CD0E;BLOCK OCTANT-235;So;0;ON;;;;;N;;;;; +1CD0F;BLOCK OCTANT-1235;So;0;ON;;;;;N;;;;; +1CD10;BLOCK OCTANT-45;So;0;ON;;;;;N;;;;; +1CD11;BLOCK OCTANT-145;So;0;ON;;;;;N;;;;; +1CD12;BLOCK OCTANT-245;So;0;ON;;;;;N;;;;; +1CD13;BLOCK OCTANT-1245;So;0;ON;;;;;N;;;;; +1CD14;BLOCK OCTANT-345;So;0;ON;;;;;N;;;;; +1CD15;BLOCK OCTANT-1345;So;0;ON;;;;;N;;;;; +1CD16;BLOCK OCTANT-2345;So;0;ON;;;;;N;;;;; +1CD17;BLOCK OCTANT-12345;So;0;ON;;;;;N;;;;; +1CD18;BLOCK OCTANT-6;So;0;ON;;;;;N;;;;; +1CD19;BLOCK OCTANT-16;So;0;ON;;;;;N;;;;; +1CD1A;BLOCK OCTANT-26;So;0;ON;;;;;N;;;;; +1CD1B;BLOCK OCTANT-126;So;0;ON;;;;;N;;;;; +1CD1C;BLOCK OCTANT-36;So;0;ON;;;;;N;;;;; +1CD1D;BLOCK OCTANT-136;So;0;ON;;;;;N;;;;; +1CD1E;BLOCK OCTANT-236;So;0;ON;;;;;N;;;;; +1CD1F;BLOCK OCTANT-1236;So;0;ON;;;;;N;;;;; +1CD20;BLOCK OCTANT-146;So;0;ON;;;;;N;;;;; +1CD21;BLOCK OCTANT-246;So;0;ON;;;;;N;;;;; +1CD22;BLOCK OCTANT-1246;So;0;ON;;;;;N;;;;; +1CD23;BLOCK OCTANT-346;So;0;ON;;;;;N;;;;; +1CD24;BLOCK OCTANT-1346;So;0;ON;;;;;N;;;;; +1CD25;BLOCK OCTANT-2346;So;0;ON;;;;;N;;;;; +1CD26;BLOCK OCTANT-12346;So;0;ON;;;;;N;;;;; +1CD27;BLOCK OCTANT-56;So;0;ON;;;;;N;;;;; +1CD28;BLOCK OCTANT-156;So;0;ON;;;;;N;;;;; +1CD29;BLOCK OCTANT-256;So;0;ON;;;;;N;;;;; +1CD2A;BLOCK OCTANT-1256;So;0;ON;;;;;N;;;;; +1CD2B;BLOCK OCTANT-356;So;0;ON;;;;;N;;;;; +1CD2C;BLOCK OCTANT-1356;So;0;ON;;;;;N;;;;; +1CD2D;BLOCK OCTANT-2356;So;0;ON;;;;;N;;;;; +1CD2E;BLOCK OCTANT-12356;So;0;ON;;;;;N;;;;; +1CD2F;BLOCK OCTANT-456;So;0;ON;;;;;N;;;;; +1CD30;BLOCK OCTANT-1456;So;0;ON;;;;;N;;;;; +1CD31;BLOCK OCTANT-2456;So;0;ON;;;;;N;;;;; +1CD32;BLOCK OCTANT-12456;So;0;ON;;;;;N;;;;; +1CD33;BLOCK OCTANT-3456;So;0;ON;;;;;N;;;;; +1CD34;BLOCK OCTANT-13456;So;0;ON;;;;;N;;;;; +1CD35;BLOCK OCTANT-23456;So;0;ON;;;;;N;;;;; +1CD36;BLOCK OCTANT-17;So;0;ON;;;;;N;;;;; +1CD37;BLOCK OCTANT-27;So;0;ON;;;;;N;;;;; +1CD38;BLOCK OCTANT-127;So;0;ON;;;;;N;;;;; +1CD39;BLOCK OCTANT-37;So;0;ON;;;;;N;;;;; +1CD3A;BLOCK OCTANT-137;So;0;ON;;;;;N;;;;; +1CD3B;BLOCK OCTANT-237;So;0;ON;;;;;N;;;;; +1CD3C;BLOCK OCTANT-1237;So;0;ON;;;;;N;;;;; +1CD3D;BLOCK OCTANT-47;So;0;ON;;;;;N;;;;; +1CD3E;BLOCK OCTANT-147;So;0;ON;;;;;N;;;;; +1CD3F;BLOCK OCTANT-247;So;0;ON;;;;;N;;;;; +1CD40;BLOCK OCTANT-1247;So;0;ON;;;;;N;;;;; +1CD41;BLOCK OCTANT-347;So;0;ON;;;;;N;;;;; +1CD42;BLOCK OCTANT-1347;So;0;ON;;;;;N;;;;; +1CD43;BLOCK OCTANT-2347;So;0;ON;;;;;N;;;;; +1CD44;BLOCK OCTANT-12347;So;0;ON;;;;;N;;;;; +1CD45;BLOCK OCTANT-157;So;0;ON;;;;;N;;;;; +1CD46;BLOCK OCTANT-257;So;0;ON;;;;;N;;;;; +1CD47;BLOCK OCTANT-1257;So;0;ON;;;;;N;;;;; +1CD48;BLOCK OCTANT-357;So;0;ON;;;;;N;;;;; +1CD49;BLOCK OCTANT-2357;So;0;ON;;;;;N;;;;; +1CD4A;BLOCK OCTANT-12357;So;0;ON;;;;;N;;;;; +1CD4B;BLOCK OCTANT-457;So;0;ON;;;;;N;;;;; +1CD4C;BLOCK OCTANT-1457;So;0;ON;;;;;N;;;;; +1CD4D;BLOCK OCTANT-12457;So;0;ON;;;;;N;;;;; +1CD4E;BLOCK OCTANT-3457;So;0;ON;;;;;N;;;;; +1CD4F;BLOCK OCTANT-13457;So;0;ON;;;;;N;;;;; +1CD50;BLOCK OCTANT-23457;So;0;ON;;;;;N;;;;; +1CD51;BLOCK OCTANT-67;So;0;ON;;;;;N;;;;; +1CD52;BLOCK OCTANT-167;So;0;ON;;;;;N;;;;; +1CD53;BLOCK OCTANT-267;So;0;ON;;;;;N;;;;; +1CD54;BLOCK OCTANT-1267;So;0;ON;;;;;N;;;;; +1CD55;BLOCK OCTANT-367;So;0;ON;;;;;N;;;;; +1CD56;BLOCK OCTANT-1367;So;0;ON;;;;;N;;;;; +1CD57;BLOCK OCTANT-2367;So;0;ON;;;;;N;;;;; +1CD58;BLOCK OCTANT-12367;So;0;ON;;;;;N;;;;; +1CD59;BLOCK OCTANT-467;So;0;ON;;;;;N;;;;; +1CD5A;BLOCK OCTANT-1467;So;0;ON;;;;;N;;;;; +1CD5B;BLOCK OCTANT-2467;So;0;ON;;;;;N;;;;; +1CD5C;BLOCK OCTANT-12467;So;0;ON;;;;;N;;;;; +1CD5D;BLOCK OCTANT-3467;So;0;ON;;;;;N;;;;; +1CD5E;BLOCK OCTANT-13467;So;0;ON;;;;;N;;;;; +1CD5F;BLOCK OCTANT-23467;So;0;ON;;;;;N;;;;; +1CD60;BLOCK OCTANT-123467;So;0;ON;;;;;N;;;;; +1CD61;BLOCK OCTANT-567;So;0;ON;;;;;N;;;;; +1CD62;BLOCK OCTANT-1567;So;0;ON;;;;;N;;;;; +1CD63;BLOCK OCTANT-2567;So;0;ON;;;;;N;;;;; +1CD64;BLOCK OCTANT-12567;So;0;ON;;;;;N;;;;; +1CD65;BLOCK OCTANT-3567;So;0;ON;;;;;N;;;;; +1CD66;BLOCK OCTANT-13567;So;0;ON;;;;;N;;;;; +1CD67;BLOCK OCTANT-23567;So;0;ON;;;;;N;;;;; +1CD68;BLOCK OCTANT-123567;So;0;ON;;;;;N;;;;; +1CD69;BLOCK OCTANT-4567;So;0;ON;;;;;N;;;;; +1CD6A;BLOCK OCTANT-14567;So;0;ON;;;;;N;;;;; +1CD6B;BLOCK OCTANT-24567;So;0;ON;;;;;N;;;;; +1CD6C;BLOCK OCTANT-124567;So;0;ON;;;;;N;;;;; +1CD6D;BLOCK OCTANT-34567;So;0;ON;;;;;N;;;;; +1CD6E;BLOCK OCTANT-134567;So;0;ON;;;;;N;;;;; +1CD6F;BLOCK OCTANT-234567;So;0;ON;;;;;N;;;;; +1CD70;BLOCK OCTANT-1234567;So;0;ON;;;;;N;;;;; +1CD71;BLOCK OCTANT-18;So;0;ON;;;;;N;;;;; +1CD72;BLOCK OCTANT-28;So;0;ON;;;;;N;;;;; +1CD73;BLOCK OCTANT-128;So;0;ON;;;;;N;;;;; +1CD74;BLOCK OCTANT-38;So;0;ON;;;;;N;;;;; +1CD75;BLOCK OCTANT-138;So;0;ON;;;;;N;;;;; +1CD76;BLOCK OCTANT-238;So;0;ON;;;;;N;;;;; +1CD77;BLOCK OCTANT-1238;So;0;ON;;;;;N;;;;; +1CD78;BLOCK OCTANT-48;So;0;ON;;;;;N;;;;; +1CD79;BLOCK OCTANT-148;So;0;ON;;;;;N;;;;; +1CD7A;BLOCK OCTANT-248;So;0;ON;;;;;N;;;;; +1CD7B;BLOCK OCTANT-1248;So;0;ON;;;;;N;;;;; +1CD7C;BLOCK OCTANT-348;So;0;ON;;;;;N;;;;; +1CD7D;BLOCK OCTANT-1348;So;0;ON;;;;;N;;;;; +1CD7E;BLOCK OCTANT-2348;So;0;ON;;;;;N;;;;; +1CD7F;BLOCK OCTANT-12348;So;0;ON;;;;;N;;;;; +1CD80;BLOCK OCTANT-58;So;0;ON;;;;;N;;;;; +1CD81;BLOCK OCTANT-158;So;0;ON;;;;;N;;;;; +1CD82;BLOCK OCTANT-258;So;0;ON;;;;;N;;;;; +1CD83;BLOCK OCTANT-1258;So;0;ON;;;;;N;;;;; +1CD84;BLOCK OCTANT-358;So;0;ON;;;;;N;;;;; +1CD85;BLOCK OCTANT-1358;So;0;ON;;;;;N;;;;; +1CD86;BLOCK OCTANT-2358;So;0;ON;;;;;N;;;;; +1CD87;BLOCK OCTANT-12358;So;0;ON;;;;;N;;;;; +1CD88;BLOCK OCTANT-458;So;0;ON;;;;;N;;;;; +1CD89;BLOCK OCTANT-1458;So;0;ON;;;;;N;;;;; +1CD8A;BLOCK OCTANT-2458;So;0;ON;;;;;N;;;;; +1CD8B;BLOCK OCTANT-12458;So;0;ON;;;;;N;;;;; +1CD8C;BLOCK OCTANT-3458;So;0;ON;;;;;N;;;;; +1CD8D;BLOCK OCTANT-13458;So;0;ON;;;;;N;;;;; +1CD8E;BLOCK OCTANT-23458;So;0;ON;;;;;N;;;;; +1CD8F;BLOCK OCTANT-123458;So;0;ON;;;;;N;;;;; +1CD90;BLOCK OCTANT-168;So;0;ON;;;;;N;;;;; +1CD91;BLOCK OCTANT-268;So;0;ON;;;;;N;;;;; +1CD92;BLOCK OCTANT-1268;So;0;ON;;;;;N;;;;; +1CD93;BLOCK OCTANT-368;So;0;ON;;;;;N;;;;; +1CD94;BLOCK OCTANT-2368;So;0;ON;;;;;N;;;;; +1CD95;BLOCK OCTANT-12368;So;0;ON;;;;;N;;;;; +1CD96;BLOCK OCTANT-468;So;0;ON;;;;;N;;;;; +1CD97;BLOCK OCTANT-1468;So;0;ON;;;;;N;;;;; +1CD98;BLOCK OCTANT-12468;So;0;ON;;;;;N;;;;; +1CD99;BLOCK OCTANT-3468;So;0;ON;;;;;N;;;;; +1CD9A;BLOCK OCTANT-13468;So;0;ON;;;;;N;;;;; +1CD9B;BLOCK OCTANT-23468;So;0;ON;;;;;N;;;;; +1CD9C;BLOCK OCTANT-568;So;0;ON;;;;;N;;;;; +1CD9D;BLOCK OCTANT-1568;So;0;ON;;;;;N;;;;; +1CD9E;BLOCK OCTANT-2568;So;0;ON;;;;;N;;;;; +1CD9F;BLOCK OCTANT-12568;So;0;ON;;;;;N;;;;; +1CDA0;BLOCK OCTANT-3568;So;0;ON;;;;;N;;;;; +1CDA1;BLOCK OCTANT-13568;So;0;ON;;;;;N;;;;; +1CDA2;BLOCK OCTANT-23568;So;0;ON;;;;;N;;;;; +1CDA3;BLOCK OCTANT-123568;So;0;ON;;;;;N;;;;; +1CDA4;BLOCK OCTANT-4568;So;0;ON;;;;;N;;;;; +1CDA5;BLOCK OCTANT-14568;So;0;ON;;;;;N;;;;; +1CDA6;BLOCK OCTANT-24568;So;0;ON;;;;;N;;;;; +1CDA7;BLOCK OCTANT-124568;So;0;ON;;;;;N;;;;; +1CDA8;BLOCK OCTANT-34568;So;0;ON;;;;;N;;;;; +1CDA9;BLOCK OCTANT-134568;So;0;ON;;;;;N;;;;; +1CDAA;BLOCK OCTANT-234568;So;0;ON;;;;;N;;;;; +1CDAB;BLOCK OCTANT-1234568;So;0;ON;;;;;N;;;;; +1CDAC;BLOCK OCTANT-178;So;0;ON;;;;;N;;;;; +1CDAD;BLOCK OCTANT-278;So;0;ON;;;;;N;;;;; +1CDAE;BLOCK OCTANT-1278;So;0;ON;;;;;N;;;;; +1CDAF;BLOCK OCTANT-378;So;0;ON;;;;;N;;;;; +1CDB0;BLOCK OCTANT-1378;So;0;ON;;;;;N;;;;; +1CDB1;BLOCK OCTANT-2378;So;0;ON;;;;;N;;;;; +1CDB2;BLOCK OCTANT-12378;So;0;ON;;;;;N;;;;; +1CDB3;BLOCK OCTANT-478;So;0;ON;;;;;N;;;;; +1CDB4;BLOCK OCTANT-1478;So;0;ON;;;;;N;;;;; +1CDB5;BLOCK OCTANT-2478;So;0;ON;;;;;N;;;;; +1CDB6;BLOCK OCTANT-12478;So;0;ON;;;;;N;;;;; +1CDB7;BLOCK OCTANT-3478;So;0;ON;;;;;N;;;;; +1CDB8;BLOCK OCTANT-13478;So;0;ON;;;;;N;;;;; +1CDB9;BLOCK OCTANT-23478;So;0;ON;;;;;N;;;;; +1CDBA;BLOCK OCTANT-123478;So;0;ON;;;;;N;;;;; +1CDBB;BLOCK OCTANT-578;So;0;ON;;;;;N;;;;; +1CDBC;BLOCK OCTANT-1578;So;0;ON;;;;;N;;;;; +1CDBD;BLOCK OCTANT-2578;So;0;ON;;;;;N;;;;; +1CDBE;BLOCK OCTANT-12578;So;0;ON;;;;;N;;;;; +1CDBF;BLOCK OCTANT-3578;So;0;ON;;;;;N;;;;; +1CDC0;BLOCK OCTANT-13578;So;0;ON;;;;;N;;;;; +1CDC1;BLOCK OCTANT-23578;So;0;ON;;;;;N;;;;; +1CDC2;BLOCK OCTANT-123578;So;0;ON;;;;;N;;;;; +1CDC3;BLOCK OCTANT-4578;So;0;ON;;;;;N;;;;; +1CDC4;BLOCK OCTANT-14578;So;0;ON;;;;;N;;;;; +1CDC5;BLOCK OCTANT-24578;So;0;ON;;;;;N;;;;; +1CDC6;BLOCK OCTANT-124578;So;0;ON;;;;;N;;;;; +1CDC7;BLOCK OCTANT-34578;So;0;ON;;;;;N;;;;; +1CDC8;BLOCK OCTANT-134578;So;0;ON;;;;;N;;;;; +1CDC9;BLOCK OCTANT-234578;So;0;ON;;;;;N;;;;; +1CDCA;BLOCK OCTANT-1234578;So;0;ON;;;;;N;;;;; +1CDCB;BLOCK OCTANT-678;So;0;ON;;;;;N;;;;; +1CDCC;BLOCK OCTANT-1678;So;0;ON;;;;;N;;;;; +1CDCD;BLOCK OCTANT-2678;So;0;ON;;;;;N;;;;; +1CDCE;BLOCK OCTANT-12678;So;0;ON;;;;;N;;;;; +1CDCF;BLOCK OCTANT-3678;So;0;ON;;;;;N;;;;; +1CDD0;BLOCK OCTANT-13678;So;0;ON;;;;;N;;;;; +1CDD1;BLOCK OCTANT-23678;So;0;ON;;;;;N;;;;; +1CDD2;BLOCK OCTANT-123678;So;0;ON;;;;;N;;;;; +1CDD3;BLOCK OCTANT-4678;So;0;ON;;;;;N;;;;; +1CDD4;BLOCK OCTANT-14678;So;0;ON;;;;;N;;;;; +1CDD5;BLOCK OCTANT-24678;So;0;ON;;;;;N;;;;; +1CDD6;BLOCK OCTANT-124678;So;0;ON;;;;;N;;;;; +1CDD7;BLOCK OCTANT-34678;So;0;ON;;;;;N;;;;; +1CDD8;BLOCK OCTANT-134678;So;0;ON;;;;;N;;;;; +1CDD9;BLOCK OCTANT-234678;So;0;ON;;;;;N;;;;; +1CDDA;BLOCK OCTANT-1234678;So;0;ON;;;;;N;;;;; +1CDDB;BLOCK OCTANT-15678;So;0;ON;;;;;N;;;;; +1CDDC;BLOCK OCTANT-25678;So;0;ON;;;;;N;;;;; +1CDDD;BLOCK OCTANT-125678;So;0;ON;;;;;N;;;;; +1CDDE;BLOCK OCTANT-35678;So;0;ON;;;;;N;;;;; +1CDDF;BLOCK OCTANT-235678;So;0;ON;;;;;N;;;;; +1CDE0;BLOCK OCTANT-1235678;So;0;ON;;;;;N;;;;; +1CDE1;BLOCK OCTANT-45678;So;0;ON;;;;;N;;;;; +1CDE2;BLOCK OCTANT-145678;So;0;ON;;;;;N;;;;; +1CDE3;BLOCK OCTANT-1245678;So;0;ON;;;;;N;;;;; +1CDE4;BLOCK OCTANT-1345678;So;0;ON;;;;;N;;;;; +1CDE5;BLOCK OCTANT-2345678;So;0;ON;;;;;N;;;;; +1CDE6;TOP HALF STANDING PERSON;So;0;ON;;;;;N;;;;; +1CDE7;BOTTOM HALF STANDING PERSON;So;0;ON;;;;;N;;;;; +1CDE8;TOP HALF RIGHT-FACING RUNNER FRAME-1;So;0;ON;;;;;N;;;;; +1CDE9;BOTTOM HALF RIGHT-FACING RUNNER FRAME-1;So;0;ON;;;;;N;;;;; +1CDEA;TOP HALF RIGHT-FACING RUNNER FRAME-2;So;0;ON;;;;;N;;;;; +1CDEB;BOTTOM HALF RIGHT-FACING RUNNER FRAME-2;So;0;ON;;;;;N;;;;; +1CDEC;TOP HALF LEFT-FACING RUNNER FRAME-1;So;0;ON;;;;;N;;;;; +1CDED;BOTTOM HALF LEFT-FACING RUNNER FRAME-1;So;0;ON;;;;;N;;;;; +1CDEE;TOP HALF LEFT-FACING RUNNER FRAME-2;So;0;ON;;;;;N;;;;; +1CDEF;BOTTOM HALF LEFT-FACING RUNNER FRAME-2;So;0;ON;;;;;N;;;;; +1CDF0;TOP HALF FORWARD-FACING RUNNER;So;0;ON;;;;;N;;;;; +1CDF1;BOTTOM HALF FORWARD-FACING RUNNER FRAME-1;So;0;ON;;;;;N;;;;; +1CDF2;BOTTOM HALF FORWARD-FACING RUNNER FRAME-2;So;0;ON;;;;;N;;;;; +1CDF3;BOTTOM HALF FORWARD-FACING RUNNER FRAME-3;So;0;ON;;;;;N;;;;; +1CDF4;BOTTOM HALF FORWARD-FACING RUNNER FRAME-4;So;0;ON;;;;;N;;;;; +1CDF5;MOON LANDER;So;0;ON;;;;;N;;;;; +1CDF6;TOP HALF FLAILING ROBOT FRAME-1;So;0;ON;;;;;N;;;;; +1CDF7;TOP HALF FLAILING ROBOT FRAME-2;So;0;ON;;;;;N;;;;; +1CDF8;DOWN-POINTING AIRPLANE;So;0;ON;;;;;N;;;;; +1CDF9;LEFT-POINTING AIRPLANE;So;0;ON;;;;;N;;;;; +1CDFA;SMALL UP-POINTING AIRPLANE;So;0;ON;;;;;N;;;;; +1CDFB;UP-POINTING FROG;So;0;ON;;;;;N;;;;; +1CDFC;DOWN-POINTING FROG;So;0;ON;;;;;N;;;;; +1CDFD;EXPLOSION FRAME-1;So;0;ON;;;;;N;;;;; +1CDFE;EXPLOSION FRAME-2;So;0;ON;;;;;N;;;;; +1CDFF;EXPLOSION FRAME-3;So;0;ON;;;;;N;;;;; +1CE00;RIGHT HALF AND LEFT HALF WHITE CIRCLE;So;0;ON;;;;;N;;;;; +1CE01;LOWER HALF AND UPPER HALF WHITE CIRCLE;So;0;ON;;;;;N;;;;; +1CE02;EXPLOSION AT HORIZON;So;0;ON;;;;;N;;;;; +1CE03;UPPER HALF HEAVY WHITE SQUARE;So;0;ON;;;;;N;;;;; +1CE04;LOWER HALF HEAVY WHITE SQUARE;So;0;ON;;;;;N;;;;; +1CE05;HEAVY WHITE SQUARE CONTAINING BLACK VERY SMALL SQUARE;So;0;ON;;;;;N;;;;; +1CE06;WHITE VERTICAL RECTANGLE WITH HORIZONTAL BAR;So;0;ON;;;;;N;;;;; +1CE07;TOP LEFT BLACK LEFT-POINTING SMALL TRIANGLE;So;0;ON;;;;;N;;;;; +1CE08;FUNNEL;So;0;ON;;;;;N;;;;; +1CE09;BOX DRAWINGS DOUBLE DIAGONAL LOWER LEFT TO MIDDLE CENTRE TO LOWER RIGHT;So;0;ON;;;;;N;;;;; +1CE0A;BOX DRAWINGS DOUBLE DIAGONAL UPPER LEFT TO MIDDLE CENTRE TO UPPER RIGHT;So;0;ON;;;;;N;;;;; +1CE0B;LEFT HALF WHITE ELLIPSE;So;0;ON;;;;;N;;;;; +1CE0C;RIGHT HALF WHITE ELLIPSE;So;0;ON;;;;;N;;;;; +1CE0D;LEFT HALF TRIPLE DASH HORIZONTAL;So;0;ON;;;;;N;;;;; +1CE0E;RIGHT HALF TRIPLE DASH HORIZONTAL;So;0;ON;;;;;N;;;;; +1CE0F;HORIZONTAL LINE WITH TICK MARK;So;0;ON;;;;;N;;;;; +1CE10;LEFT HALF HORIZONTAL LINE WITH THREE TICK MARKS;So;0;ON;;;;;N;;;;; +1CE11;RIGHT HALF HORIZONTAL LINE WITH THREE TICK MARKS;So;0;ON;;;;;N;;;;; +1CE12;HORIZONTAL LINE WITH THREE TICK MARKS;So;0;ON;;;;;N;;;;; +1CE13;LOWER HALF VERTICAL LINE WITH THREE TICK MARKS;So;0;ON;;;;;N;;;;; +1CE14;UPPER HALF VERTICAL LINE WITH THREE TICK MARKS;So;0;ON;;;;;N;;;;; +1CE15;VERTICAL LINE WITH THREE TICK MARKS;So;0;ON;;;;;N;;;;; +1CE16;BOX DRAWINGS LIGHT VERTICAL AND TOP RIGHT;So;0;ON;;;;;N;;;;; +1CE17;BOX DRAWINGS LIGHT VERTICAL AND BOTTOM RIGHT;So;0;ON;;;;;N;;;;; +1CE18;BOX DRAWINGS LIGHT VERTICAL AND TOP LEFT;So;0;ON;;;;;N;;;;; +1CE19;BOX DRAWINGS LIGHT VERTICAL AND BOTTOM LEFT;So;0;ON;;;;;N;;;;; +1CE1A;LARGE TYPE PIECE UPPER LEFT ARC;So;0;ON;;;;;N;;;;; +1CE1B;LARGE TYPE PIECE UPPER LEFT CORNER;So;0;ON;;;;;N;;;;; +1CE1C;LARGE TYPE PIECE UPPER TERMINAL;So;0;ON;;;;;N;;;;; +1CE1D;LARGE TYPE PIECE UPPER LEFT CROTCH;So;0;ON;;;;;N;;;;; +1CE1E;LARGE TYPE PIECE LEFT ARM;So;0;ON;;;;;N;;;;; +1CE1F;LARGE TYPE PIECE CROSSBAR;So;0;ON;;;;;N;;;;; +1CE20;LARGE TYPE PIECE CROSSBAR WITH LOWER STEM;So;0;ON;;;;;N;;;;; +1CE21;LARGE TYPE PIECE UPPER HALF VERTEX OF M;So;0;ON;;;;;N;;;;; +1CE22;LARGE TYPE PIECE DIAGONAL LOWER LEFT;So;0;ON;;;;;N;;;;; +1CE23;LARGE TYPE PIECE SHORT UPPER TERMINAL;So;0;ON;;;;;N;;;;; +1CE24;LARGE TYPE PIECE UPPER RIGHT ARC;So;0;ON;;;;;N;;;;; +1CE25;LARGE TYPE PIECE RIGHT ARM;So;0;ON;;;;;N;;;;; +1CE26;LARGE TYPE PIECE UPPER RIGHT CROTCH;So;0;ON;;;;;N;;;;; +1CE27;LARGE TYPE PIECE UPPER RIGHT CORNER;So;0;ON;;;;;N;;;;; +1CE28;LARGE TYPE PIECE STEM WITH RIGHT CROSSBAR;So;0;ON;;;;;N;;;;; +1CE29;LARGE TYPE PIECE STEM;So;0;ON;;;;;N;;;;; +1CE2A;LARGE TYPE PIECE DIAGONAL UPPER RIGHT AND LOWER RIGHT;So;0;ON;;;;;N;;;;; +1CE2B;LARGE TYPE PIECE DIAGONAL UPPER RIGHT;So;0;ON;;;;;N;;;;; +1CE2C;LARGE TYPE PIECE DIAGONAL LOWER RIGHT;So;0;ON;;;;;N;;;;; +1CE2D;LARGE TYPE PIECE SHORT LOWER TERMINAL;So;0;ON;;;;;N;;;;; +1CE2E;LARGE TYPE PIECE LOWER LEFT AND UPPER LEFT ARC;So;0;ON;;;;;N;;;;; +1CE2F;LARGE TYPE PIECE CENTRE OF K;So;0;ON;;;;;N;;;;; +1CE30;LARGE TYPE PIECE LOWER HALF VERTEX OF M;So;0;ON;;;;;N;;;;; +1CE31;LARGE TYPE PIECE UPPER HALF VERTEX OF W;So;0;ON;;;;;N;;;;; +1CE32;LARGE TYPE PIECE CENTRE OF X;So;0;ON;;;;;N;;;;; +1CE33;LARGE TYPE PIECE CENTRE OF Y;So;0;ON;;;;;N;;;;; +1CE34;LARGE TYPE PIECE CENTRE OF Z WITH CROSSBAR;So;0;ON;;;;;N;;;;; +1CE35;LARGE TYPE PIECE RAISED UPPER LEFT ARC;So;0;ON;;;;;N;;;;; +1CE36;LARGE TYPE PIECE STEM WITH LEFT CROSSBAR;So;0;ON;;;;;N;;;;; +1CE37;LARGE TYPE PIECE LOWER RIGHT AND UPPER RIGHT ARC;So;0;ON;;;;;N;;;;; +1CE38;LARGE TYPE PIECE DIAGONAL UPPER LEFT AND LOWER LEFT;So;0;ON;;;;;N;;;;; +1CE39;LARGE TYPE PIECE STEM WITH LEFT JOINT;So;0;ON;;;;;N;;;;; +1CE3A;LARGE TYPE PIECE STEM WITH CROSSBAR;So;0;ON;;;;;N;;;;; +1CE3B;LARGE TYPE PIECE DIAGONAL UPPER LEFT;So;0;ON;;;;;N;;;;; +1CE3C;LARGE TYPE PIECE LOWER TERMINAL;So;0;ON;;;;;N;;;;; +1CE3D;LARGE TYPE PIECE LOWER LEFT CORNER;So;0;ON;;;;;N;;;;; +1CE3E;LARGE TYPE PIECE LOWER LEFT ARC;So;0;ON;;;;;N;;;;; +1CE3F;LARGE TYPE PIECE LOWER LEFT CROTCH;So;0;ON;;;;;N;;;;; +1CE40;LARGE TYPE PIECE CROSSBAR WITH UPPER STEM;So;0;ON;;;;;N;;;;; +1CE41;LARGE TYPE PIECE VERTEX OF V;So;0;ON;;;;;N;;;;; +1CE42;LARGE TYPE PIECE LOWER HALF VERTEX OF W;So;0;ON;;;;;N;;;;; +1CE43;LARGE TYPE PIECE LOWER RIGHT ARC;So;0;ON;;;;;N;;;;; +1CE44;LARGE TYPE PIECE LOWER RIGHT CORNER;So;0;ON;;;;;N;;;;; +1CE45;LARGE TYPE PIECE LOWER RIGHT ARC WITH TAIL;So;0;ON;;;;;N;;;;; +1CE46;LARGE TYPE PIECE LOWER RIGHT CROTCH;So;0;ON;;;;;N;;;;; +1CE47;LARGE TYPE PIECE STEM-45;So;0;ON;;;;;N;;;;; +1CE48;LARGE TYPE PIECE STEM-2345;So;0;ON;;;;;N;;;;; +1CE49;LARGE TYPE PIECE STEM-4;So;0;ON;;;;;N;;;;; +1CE4A;LARGE TYPE PIECE STEM-34;So;0;ON;;;;;N;;;;; +1CE4B;LARGE TYPE PIECE STEM-234;So;0;ON;;;;;N;;;;; +1CE4C;LARGE TYPE PIECE STEM-1234;So;0;ON;;;;;N;;;;; +1CE4D;LARGE TYPE PIECE STEM-3;So;0;ON;;;;;N;;;;; +1CE4E;LARGE TYPE PIECE STEM-23;So;0;ON;;;;;N;;;;; +1CE4F;LARGE TYPE PIECE STEM-2;So;0;ON;;;;;N;;;;; +1CE50;LARGE TYPE PIECE STEM-12;So;0;ON;;;;;N;;;;; +1CE51;SEPARATED BLOCK SEXTANT-1;So;0;ON;;;;;N;;;;; +1CE52;SEPARATED BLOCK SEXTANT-2;So;0;ON;;;;;N;;;;; +1CE53;SEPARATED BLOCK SEXTANT-12;So;0;ON;;;;;N;;;;; +1CE54;SEPARATED BLOCK SEXTANT-3;So;0;ON;;;;;N;;;;; +1CE55;SEPARATED BLOCK SEXTANT-13;So;0;ON;;;;;N;;;;; +1CE56;SEPARATED BLOCK SEXTANT-23;So;0;ON;;;;;N;;;;; +1CE57;SEPARATED BLOCK SEXTANT-123;So;0;ON;;;;;N;;;;; +1CE58;SEPARATED BLOCK SEXTANT-4;So;0;ON;;;;;N;;;;; +1CE59;SEPARATED BLOCK SEXTANT-14;So;0;ON;;;;;N;;;;; +1CE5A;SEPARATED BLOCK SEXTANT-24;So;0;ON;;;;;N;;;;; +1CE5B;SEPARATED BLOCK SEXTANT-124;So;0;ON;;;;;N;;;;; +1CE5C;SEPARATED BLOCK SEXTANT-34;So;0;ON;;;;;N;;;;; +1CE5D;SEPARATED BLOCK SEXTANT-134;So;0;ON;;;;;N;;;;; +1CE5E;SEPARATED BLOCK SEXTANT-234;So;0;ON;;;;;N;;;;; +1CE5F;SEPARATED BLOCK SEXTANT-1234;So;0;ON;;;;;N;;;;; +1CE60;SEPARATED BLOCK SEXTANT-5;So;0;ON;;;;;N;;;;; +1CE61;SEPARATED BLOCK SEXTANT-15;So;0;ON;;;;;N;;;;; +1CE62;SEPARATED BLOCK SEXTANT-25;So;0;ON;;;;;N;;;;; +1CE63;SEPARATED BLOCK SEXTANT-125;So;0;ON;;;;;N;;;;; +1CE64;SEPARATED BLOCK SEXTANT-35;So;0;ON;;;;;N;;;;; +1CE65;SEPARATED BLOCK SEXTANT-135;So;0;ON;;;;;N;;;;; +1CE66;SEPARATED BLOCK SEXTANT-235;So;0;ON;;;;;N;;;;; +1CE67;SEPARATED BLOCK SEXTANT-1235;So;0;ON;;;;;N;;;;; +1CE68;SEPARATED BLOCK SEXTANT-45;So;0;ON;;;;;N;;;;; +1CE69;SEPARATED BLOCK SEXTANT-145;So;0;ON;;;;;N;;;;; +1CE6A;SEPARATED BLOCK SEXTANT-245;So;0;ON;;;;;N;;;;; +1CE6B;SEPARATED BLOCK SEXTANT-1245;So;0;ON;;;;;N;;;;; +1CE6C;SEPARATED BLOCK SEXTANT-345;So;0;ON;;;;;N;;;;; +1CE6D;SEPARATED BLOCK SEXTANT-1345;So;0;ON;;;;;N;;;;; +1CE6E;SEPARATED BLOCK SEXTANT-2345;So;0;ON;;;;;N;;;;; +1CE6F;SEPARATED BLOCK SEXTANT-12345;So;0;ON;;;;;N;;;;; +1CE70;SEPARATED BLOCK SEXTANT-6;So;0;ON;;;;;N;;;;; +1CE71;SEPARATED BLOCK SEXTANT-16;So;0;ON;;;;;N;;;;; +1CE72;SEPARATED BLOCK SEXTANT-26;So;0;ON;;;;;N;;;;; +1CE73;SEPARATED BLOCK SEXTANT-126;So;0;ON;;;;;N;;;;; +1CE74;SEPARATED BLOCK SEXTANT-36;So;0;ON;;;;;N;;;;; +1CE75;SEPARATED BLOCK SEXTANT-136;So;0;ON;;;;;N;;;;; +1CE76;SEPARATED BLOCK SEXTANT-236;So;0;ON;;;;;N;;;;; +1CE77;SEPARATED BLOCK SEXTANT-1236;So;0;ON;;;;;N;;;;; +1CE78;SEPARATED BLOCK SEXTANT-46;So;0;ON;;;;;N;;;;; +1CE79;SEPARATED BLOCK SEXTANT-146;So;0;ON;;;;;N;;;;; +1CE7A;SEPARATED BLOCK SEXTANT-246;So;0;ON;;;;;N;;;;; +1CE7B;SEPARATED BLOCK SEXTANT-1246;So;0;ON;;;;;N;;;;; +1CE7C;SEPARATED BLOCK SEXTANT-346;So;0;ON;;;;;N;;;;; +1CE7D;SEPARATED BLOCK SEXTANT-1346;So;0;ON;;;;;N;;;;; +1CE7E;SEPARATED BLOCK SEXTANT-2346;So;0;ON;;;;;N;;;;; +1CE7F;SEPARATED BLOCK SEXTANT-12346;So;0;ON;;;;;N;;;;; +1CE80;SEPARATED BLOCK SEXTANT-56;So;0;ON;;;;;N;;;;; +1CE81;SEPARATED BLOCK SEXTANT-156;So;0;ON;;;;;N;;;;; +1CE82;SEPARATED BLOCK SEXTANT-256;So;0;ON;;;;;N;;;;; +1CE83;SEPARATED BLOCK SEXTANT-1256;So;0;ON;;;;;N;;;;; +1CE84;SEPARATED BLOCK SEXTANT-356;So;0;ON;;;;;N;;;;; +1CE85;SEPARATED BLOCK SEXTANT-1356;So;0;ON;;;;;N;;;;; +1CE86;SEPARATED BLOCK SEXTANT-2356;So;0;ON;;;;;N;;;;; +1CE87;SEPARATED BLOCK SEXTANT-12356;So;0;ON;;;;;N;;;;; +1CE88;SEPARATED BLOCK SEXTANT-456;So;0;ON;;;;;N;;;;; +1CE89;SEPARATED BLOCK SEXTANT-1456;So;0;ON;;;;;N;;;;; +1CE8A;SEPARATED BLOCK SEXTANT-2456;So;0;ON;;;;;N;;;;; +1CE8B;SEPARATED BLOCK SEXTANT-12456;So;0;ON;;;;;N;;;;; +1CE8C;SEPARATED BLOCK SEXTANT-3456;So;0;ON;;;;;N;;;;; +1CE8D;SEPARATED BLOCK SEXTANT-13456;So;0;ON;;;;;N;;;;; +1CE8E;SEPARATED BLOCK SEXTANT-23456;So;0;ON;;;;;N;;;;; +1CE8F;SEPARATED BLOCK SEXTANT-123456;So;0;ON;;;;;N;;;;; +1CE90;UPPER LEFT ONE SIXTEENTH BLOCK;So;0;ON;;;;;N;;;;; +1CE91;UPPER CENTRE LEFT ONE SIXTEENTH BLOCK;So;0;ON;;;;;N;;;;; +1CE92;UPPER CENTRE RIGHT ONE SIXTEENTH BLOCK;So;0;ON;;;;;N;;;;; +1CE93;UPPER RIGHT ONE SIXTEENTH BLOCK;So;0;ON;;;;;N;;;;; +1CE94;UPPER MIDDLE LEFT ONE SIXTEENTH BLOCK;So;0;ON;;;;;N;;;;; +1CE95;UPPER MIDDLE CENTRE LEFT ONE SIXTEENTH BLOCK;So;0;ON;;;;;N;;;;; +1CE96;UPPER MIDDLE CENTRE RIGHT ONE SIXTEENTH BLOCK;So;0;ON;;;;;N;;;;; +1CE97;UPPER MIDDLE RIGHT ONE SIXTEENTH BLOCK;So;0;ON;;;;;N;;;;; +1CE98;LOWER MIDDLE LEFT ONE SIXTEENTH BLOCK;So;0;ON;;;;;N;;;;; +1CE99;LOWER MIDDLE CENTRE LEFT ONE SIXTEENTH BLOCK;So;0;ON;;;;;N;;;;; +1CE9A;LOWER MIDDLE CENTRE RIGHT ONE SIXTEENTH BLOCK;So;0;ON;;;;;N;;;;; +1CE9B;LOWER MIDDLE RIGHT ONE SIXTEENTH BLOCK;So;0;ON;;;;;N;;;;; +1CE9C;LOWER LEFT ONE SIXTEENTH BLOCK;So;0;ON;;;;;N;;;;; +1CE9D;LOWER CENTRE LEFT ONE SIXTEENTH BLOCK;So;0;ON;;;;;N;;;;; +1CE9E;LOWER CENTRE RIGHT ONE SIXTEENTH BLOCK;So;0;ON;;;;;N;;;;; +1CE9F;LOWER RIGHT ONE SIXTEENTH BLOCK;So;0;ON;;;;;N;;;;; +1CEA0;RIGHT HALF LOWER ONE QUARTER BLOCK;So;0;ON;;;;;N;;;;; +1CEA1;RIGHT THREE QUARTERS LOWER ONE QUARTER BLOCK;So;0;ON;;;;;N;;;;; +1CEA2;LEFT THREE QUARTERS LOWER ONE QUARTER BLOCK;So;0;ON;;;;;N;;;;; +1CEA3;LEFT HALF LOWER ONE QUARTER BLOCK;So;0;ON;;;;;N;;;;; +1CEA4;LOWER HALF LEFT ONE QUARTER BLOCK;So;0;ON;;;;;N;;;;; +1CEA5;LOWER THREE QUARTERS LEFT ONE QUARTER BLOCK;So;0;ON;;;;;N;;;;; +1CEA6;UPPER THREE QUARTERS LEFT ONE QUARTER BLOCK;So;0;ON;;;;;N;;;;; +1CEA7;UPPER HALF LEFT ONE QUARTER BLOCK;So;0;ON;;;;;N;;;;; +1CEA8;LEFT HALF UPPER ONE QUARTER BLOCK;So;0;ON;;;;;N;;;;; +1CEA9;LEFT THREE QUARTERS UPPER ONE QUARTER BLOCK;So;0;ON;;;;;N;;;;; +1CEAA;RIGHT THREE QUARTERS UPPER ONE QUARTER BLOCK;So;0;ON;;;;;N;;;;; +1CEAB;RIGHT HALF UPPER ONE QUARTER BLOCK;So;0;ON;;;;;N;;;;; +1CEAC;UPPER HALF RIGHT ONE QUARTER BLOCK;So;0;ON;;;;;N;;;;; +1CEAD;UPPER THREE QUARTERS RIGHT ONE QUARTER BLOCK;So;0;ON;;;;;N;;;;; +1CEAE;LOWER THREE QUARTERS RIGHT ONE QUARTER BLOCK;So;0;ON;;;;;N;;;;; +1CEAF;LOWER HALF RIGHT ONE QUARTER BLOCK;So;0;ON;;;;;N;;;;; +1CEB0;HORIZONTAL ZIGZAG LINE;So;0;ON;;;;;N;;;;; +1CEB1;KEYHOLE;So;0;ON;;;;;N;;;;; +1CEB2;OLD PERSONAL COMPUTER WITH MONITOR IN PORTRAIT ORIENTATION;So;0;ON;;;;;N;;;;; +1CEB3;BLACK RIGHT TRIANGLE CARET;So;0;ON;;;;;N;;;;; 1CF00;ZNAMENNY COMBINING MARK GORAZDO NIZKO S KRYZHEM ON LEFT;Mn;0;NSM;;;;;N;;;;; 1CF01;ZNAMENNY COMBINING MARK NIZKO S KRYZHEM ON LEFT;Mn;0;NSM;;;;;N;;;;; 1CF02;ZNAMENNY COMBINING MARK TSATA ON LEFT;Mn;0;NSM;;;;;N;;;;; @@ -29545,7 +34630,7 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;; 1D6BE;MATHEMATICAL BOLD CAPITAL CHI;Lu;0;L;<font> 03A7;;;;N;;;;; 1D6BF;MATHEMATICAL BOLD CAPITAL PSI;Lu;0;L;<font> 03A8;;;;N;;;;; 1D6C0;MATHEMATICAL BOLD CAPITAL OMEGA;Lu;0;L;<font> 03A9;;;;N;;;;; -1D6C1;MATHEMATICAL BOLD NABLA;Sm;0;L;<font> 2207;;;;N;;;;; +1D6C1;MATHEMATICAL BOLD NABLA;Sm;0;ON;<font> 2207;;;;N;;;;; 1D6C2;MATHEMATICAL BOLD SMALL ALPHA;Ll;0;L;<font> 03B1;;;;N;;;;; 1D6C3;MATHEMATICAL BOLD SMALL BETA;Ll;0;L;<font> 03B2;;;;N;;;;; 1D6C4;MATHEMATICAL BOLD SMALL GAMMA;Ll;0;L;<font> 03B3;;;;N;;;;; @@ -29603,7 +34688,7 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;; 1D6F8;MATHEMATICAL ITALIC CAPITAL CHI;Lu;0;L;<font> 03A7;;;;N;;;;; 1D6F9;MATHEMATICAL ITALIC CAPITAL PSI;Lu;0;L;<font> 03A8;;;;N;;;;; 1D6FA;MATHEMATICAL ITALIC CAPITAL OMEGA;Lu;0;L;<font> 03A9;;;;N;;;;; -1D6FB;MATHEMATICAL ITALIC NABLA;Sm;0;L;<font> 2207;;;;N;;;;; +1D6FB;MATHEMATICAL ITALIC NABLA;Sm;0;ON;<font> 2207;;;;N;;;;; 1D6FC;MATHEMATICAL ITALIC SMALL ALPHA;Ll;0;L;<font> 03B1;;;;N;;;;; 1D6FD;MATHEMATICAL ITALIC SMALL BETA;Ll;0;L;<font> 03B2;;;;N;;;;; 1D6FE;MATHEMATICAL ITALIC SMALL GAMMA;Ll;0;L;<font> 03B3;;;;N;;;;; @@ -29661,7 +34746,7 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;; 1D732;MATHEMATICAL BOLD ITALIC CAPITAL CHI;Lu;0;L;<font> 03A7;;;;N;;;;; 1D733;MATHEMATICAL BOLD ITALIC CAPITAL PSI;Lu;0;L;<font> 03A8;;;;N;;;;; 1D734;MATHEMATICAL BOLD ITALIC CAPITAL OMEGA;Lu;0;L;<font> 03A9;;;;N;;;;; -1D735;MATHEMATICAL BOLD ITALIC NABLA;Sm;0;L;<font> 2207;;;;N;;;;; +1D735;MATHEMATICAL BOLD ITALIC NABLA;Sm;0;ON;<font> 2207;;;;N;;;;; 1D736;MATHEMATICAL BOLD ITALIC SMALL ALPHA;Ll;0;L;<font> 03B1;;;;N;;;;; 1D737;MATHEMATICAL BOLD ITALIC SMALL BETA;Ll;0;L;<font> 03B2;;;;N;;;;; 1D738;MATHEMATICAL BOLD ITALIC SMALL GAMMA;Ll;0;L;<font> 03B3;;;;N;;;;; @@ -29719,7 +34804,7 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;; 1D76C;MATHEMATICAL SANS-SERIF BOLD CAPITAL CHI;Lu;0;L;<font> 03A7;;;;N;;;;; 1D76D;MATHEMATICAL SANS-SERIF BOLD CAPITAL PSI;Lu;0;L;<font> 03A8;;;;N;;;;; 1D76E;MATHEMATICAL SANS-SERIF BOLD CAPITAL OMEGA;Lu;0;L;<font> 03A9;;;;N;;;;; -1D76F;MATHEMATICAL SANS-SERIF BOLD NABLA;Sm;0;L;<font> 2207;;;;N;;;;; +1D76F;MATHEMATICAL SANS-SERIF BOLD NABLA;Sm;0;ON;<font> 2207;;;;N;;;;; 1D770;MATHEMATICAL SANS-SERIF BOLD SMALL ALPHA;Ll;0;L;<font> 03B1;;;;N;;;;; 1D771;MATHEMATICAL SANS-SERIF BOLD SMALL BETA;Ll;0;L;<font> 03B2;;;;N;;;;; 1D772;MATHEMATICAL SANS-SERIF BOLD SMALL GAMMA;Ll;0;L;<font> 03B3;;;;N;;;;; @@ -29777,7 +34862,7 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;; 1D7A6;MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL CHI;Lu;0;L;<font> 03A7;;;;N;;;;; 1D7A7;MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL PSI;Lu;0;L;<font> 03A8;;;;N;;;;; 1D7A8;MATHEMATICAL SANS-SERIF BOLD ITALIC CAPITAL OMEGA;Lu;0;L;<font> 03A9;;;;N;;;;; -1D7A9;MATHEMATICAL SANS-SERIF BOLD ITALIC NABLA;Sm;0;L;<font> 2207;;;;N;;;;; +1D7A9;MATHEMATICAL SANS-SERIF BOLD ITALIC NABLA;Sm;0;ON;<font> 2207;;;;N;;;;; 1D7AA;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL ALPHA;Ll;0;L;<font> 03B1;;;;N;;;;; 1D7AB;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL BETA;Ll;0;L;<font> 03B2;;;;N;;;;; 1D7AC;MATHEMATICAL SANS-SERIF BOLD ITALIC SMALL GAMMA;Ll;0;L;<font> 03B3;;;;N;;;;; @@ -30875,6 +35960,50 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;; 1E4F7;NAG MUNDARI DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;; 1E4F8;NAG MUNDARI DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;; 1E4F9;NAG MUNDARI DIGIT NINE;Nd;0;L;;9;9;9;N;;;;; +1E5D0;OL ONAL LETTER O;Lo;0;L;;;;;N;;;;; +1E5D1;OL ONAL LETTER OM;Lo;0;L;;;;;N;;;;; +1E5D2;OL ONAL LETTER ONG;Lo;0;L;;;;;N;;;;; +1E5D3;OL ONAL LETTER ORR;Lo;0;L;;;;;N;;;;; +1E5D4;OL ONAL LETTER OO;Lo;0;L;;;;;N;;;;; +1E5D5;OL ONAL LETTER OY;Lo;0;L;;;;;N;;;;; +1E5D6;OL ONAL LETTER A;Lo;0;L;;;;;N;;;;; +1E5D7;OL ONAL LETTER AD;Lo;0;L;;;;;N;;;;; +1E5D8;OL ONAL LETTER AB;Lo;0;L;;;;;N;;;;; +1E5D9;OL ONAL LETTER AH;Lo;0;L;;;;;N;;;;; +1E5DA;OL ONAL LETTER AL;Lo;0;L;;;;;N;;;;; +1E5DB;OL ONAL LETTER AW;Lo;0;L;;;;;N;;;;; +1E5DC;OL ONAL LETTER I;Lo;0;L;;;;;N;;;;; +1E5DD;OL ONAL LETTER IT;Lo;0;L;;;;;N;;;;; +1E5DE;OL ONAL LETTER IP;Lo;0;L;;;;;N;;;;; +1E5DF;OL ONAL LETTER ITT;Lo;0;L;;;;;N;;;;; +1E5E0;OL ONAL LETTER ID;Lo;0;L;;;;;N;;;;; +1E5E1;OL ONAL LETTER IN;Lo;0;L;;;;;N;;;;; +1E5E2;OL ONAL LETTER U;Lo;0;L;;;;;N;;;;; +1E5E3;OL ONAL LETTER UK;Lo;0;L;;;;;N;;;;; +1E5E4;OL ONAL LETTER UDD;Lo;0;L;;;;;N;;;;; +1E5E5;OL ONAL LETTER UJ;Lo;0;L;;;;;N;;;;; +1E5E6;OL ONAL LETTER UNY;Lo;0;L;;;;;N;;;;; +1E5E7;OL ONAL LETTER UR;Lo;0;L;;;;;N;;;;; +1E5E8;OL ONAL LETTER E;Lo;0;L;;;;;N;;;;; +1E5E9;OL ONAL LETTER ES;Lo;0;L;;;;;N;;;;; +1E5EA;OL ONAL LETTER EH;Lo;0;L;;;;;N;;;;; +1E5EB;OL ONAL LETTER EC;Lo;0;L;;;;;N;;;;; +1E5EC;OL ONAL LETTER ENN;Lo;0;L;;;;;N;;;;; +1E5ED;OL ONAL LETTER EG;Lo;0;L;;;;;N;;;;; +1E5EE;OL ONAL SIGN MU;Mn;230;NSM;;;;;N;;;;; +1E5EF;OL ONAL SIGN IKIR;Mn;220;NSM;;;;;N;;;;; +1E5F0;OL ONAL SIGN HODDOND;Lo;0;L;;;;;N;;;;; +1E5F1;OL ONAL DIGIT ZERO;Nd;0;L;;0;0;0;N;;;;; +1E5F2;OL ONAL DIGIT ONE;Nd;0;L;;1;1;1;N;;;;; +1E5F3;OL ONAL DIGIT TWO;Nd;0;L;;2;2;2;N;;;;; +1E5F4;OL ONAL DIGIT THREE;Nd;0;L;;3;3;3;N;;;;; +1E5F5;OL ONAL DIGIT FOUR;Nd;0;L;;4;4;4;N;;;;; +1E5F6;OL ONAL DIGIT FIVE;Nd;0;L;;5;5;5;N;;;;; +1E5F7;OL ONAL DIGIT SIX;Nd;0;L;;6;6;6;N;;;;; +1E5F8;OL ONAL DIGIT SEVEN;Nd;0;L;;7;7;7;N;;;;; +1E5F9;OL ONAL DIGIT EIGHT;Nd;0;L;;8;8;8;N;;;;; +1E5FA;OL ONAL DIGIT NINE;Nd;0;L;;9;9;9;N;;;;; +1E5FF;OL ONAL ABBREVIATION SIGN;Po;0;L;;;;;N;;;;; 1E7E0;ETHIOPIC SYLLABLE HHYA;Lo;0;L;;;;;N;;;;; 1E7E1;ETHIOPIC SYLLABLE HHYU;Lo;0;L;;;;;N;;;;; 1E7E2;ETHIOPIC SYLLABLE HHYI;Lo;0;L;;;;;N;;;;; @@ -33357,6 +38486,18 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;; 1F8AD;WHITE ARROW SHAFT WIDTH TWO THIRDS;So;0;ON;;;;;N;;;;; 1F8B0;ARROW POINTING UPWARDS THEN NORTH WEST;So;0;ON;;;;;N;;;;; 1F8B1;ARROW POINTING RIGHTWARDS THEN CURVING SOUTH WEST;So;0;ON;;;;;N;;;;; +1F8B2;RIGHTWARDS ARROW WITH LOWER HOOK;So;0;ON;;;;;N;;;;; +1F8B3;DOWNWARDS BLACK ARROW TO BAR;So;0;ON;;;;;N;;;;; +1F8B4;NEGATIVE SQUARED LEFTWARDS ARROW;So;0;ON;;;;;N;;;;; +1F8B5;NEGATIVE SQUARED UPWARDS ARROW;So;0;ON;;;;;N;;;;; +1F8B6;NEGATIVE SQUARED RIGHTWARDS ARROW;So;0;ON;;;;;N;;;;; +1F8B7;NEGATIVE SQUARED DOWNWARDS ARROW;So;0;ON;;;;;N;;;;; +1F8B8;NORTH WEST ARROW FROM BAR;So;0;ON;;;;;N;;;;; +1F8B9;NORTH EAST ARROW FROM BAR;So;0;ON;;;;;N;;;;; +1F8BA;SOUTH EAST ARROW FROM BAR;So;0;ON;;;;;N;;;;; +1F8BB;SOUTH WEST ARROW FROM BAR;So;0;ON;;;;;N;;;;; +1F8C0;LEFTWARDS ARROW FROM DOWNWARDS ARROW;So;0;ON;;;;;N;;;;; +1F8C1;RIGHTWARDS ARROW FROM DOWNWARDS ARROW;So;0;ON;;;;;N;;;;; 1F900;CIRCLED CROSS FORMEE WITH FOUR DOTS;So;0;ON;;;;;N;;;;; 1F901;CIRCLED CROSS FORMEE WITH TWO DOTS;So;0;ON;;;;;N;;;;; 1F902;CIRCLED CROSS FORMEE;So;0;ON;;;;;N;;;;; @@ -33733,6 +38874,8 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;; 1FA86;NESTING DOLLS;So;0;ON;;;;;N;;;;; 1FA87;MARACAS;So;0;ON;;;;;N;;;;; 1FA88;FLUTE;So;0;ON;;;;;N;;;;; +1FA89;HARP;So;0;ON;;;;;N;;;;; +1FA8F;SHOVEL;So;0;ON;;;;;N;;;;; 1FA90;RINGED PLANET;So;0;ON;;;;;N;;;;; 1FA91;CHAIR;So;0;ON;;;;;N;;;;; 1FA92;RAZOR;So;0;ON;;;;;N;;;;; @@ -33779,6 +38922,7 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;; 1FABB;HYACINTH;So;0;ON;;;;;N;;;;; 1FABC;JELLYFISH;So;0;ON;;;;;N;;;;; 1FABD;WING;So;0;ON;;;;;N;;;;; +1FABE;LEAFLESS TREE;So;0;ON;;;;;N;;;;; 1FABF;GOOSE;So;0;ON;;;;;N;;;;; 1FAC0;ANATOMICAL HEART;So;0;ON;;;;;N;;;;; 1FAC1;LUNGS;So;0;ON;;;;;N;;;;; @@ -33786,6 +38930,7 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;; 1FAC3;PREGNANT MAN;So;0;ON;;;;;N;;;;; 1FAC4;PREGNANT PERSON;So;0;ON;;;;;N;;;;; 1FAC5;PERSON WITH CROWN;So;0;ON;;;;;N;;;;; +1FAC6;FINGERPRINT;So;0;ON;;;;;N;;;;; 1FACE;MOOSE;So;0;ON;;;;;N;;;;; 1FACF;DONKEY;So;0;ON;;;;;N;;;;; 1FAD0;BLUEBERRIES;So;0;ON;;;;;N;;;;; @@ -33800,6 +38945,8 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;; 1FAD9;JAR;So;0;ON;;;;;N;;;;; 1FADA;GINGER ROOT;So;0;ON;;;;;N;;;;; 1FADB;PEA POD;So;0;ON;;;;;N;;;;; +1FADC;ROOT VEGETABLE;So;0;ON;;;;;N;;;;; +1FADF;SPLATTER;So;0;ON;;;;;N;;;;; 1FAE0;MELTING FACE;So;0;ON;;;;;N;;;;; 1FAE1;SALUTING FACE;So;0;ON;;;;;N;;;;; 1FAE2;FACE WITH OPEN EYES AND HAND OVER MOUTH;So;0;ON;;;;;N;;;;; @@ -33809,6 +38956,7 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;; 1FAE6;BITING LIP;So;0;ON;;;;;N;;;;; 1FAE7;BUBBLES;So;0;ON;;;;;N;;;;; 1FAE8;SHAKING FACE;So;0;ON;;;;;N;;;;; +1FAE9;FACE WITH BAGS UNDER EYES;So;0;ON;;;;;N;;;;; 1FAF0;HAND WITH INDEX FINGER AND THUMB CROSSED;So;0;ON;;;;;N;;;;; 1FAF1;RIGHTWARDS HAND;So;0;ON;;;;;N;;;;; 1FAF2;LEFTWARDS HAND;So;0;ON;;;;;N;;;;; @@ -34020,6 +39168,43 @@ FFFD;REPLACEMENT CHARACTER;So;0;ON;;;;;N;;;;; 1FBC8;STICK FIGURE LEANING RIGHT;So;0;ON;;;;;N;;;;; 1FBC9;STICK FIGURE WITH DRESS;So;0;ON;;;;;N;;;;; 1FBCA;WHITE UP-POINTING CHEVRON;So;0;ON;;;;;N;;;;; +1FBCB;WHITE CROSS MARK;So;0;ON;;;;;N;;;;; +1FBCC;RAISED SMALL LEFT SQUARE BRACKET;So;0;ON;;;;;N;;;;; +1FBCD;BLACK SMALL UP-POINTING CHEVRON;So;0;ON;;;;;N;;;;; +1FBCE;LEFT TWO THIRDS BLOCK;So;0;ON;;;;;N;;;;; +1FBCF;LEFT ONE THIRD BLOCK;So;0;ON;;;;;N;;;;; +1FBD0;BOX DRAWINGS LIGHT DIAGONAL MIDDLE RIGHT TO LOWER LEFT;So;0;ON;;;;;N;;;;; +1FBD1;BOX DRAWINGS LIGHT DIAGONAL UPPER RIGHT TO MIDDLE LEFT;So;0;ON;;;;;N;;;;; +1FBD2;BOX DRAWINGS LIGHT DIAGONAL UPPER LEFT TO MIDDLE RIGHT;So;0;ON;;;;;N;;;;; +1FBD3;BOX DRAWINGS LIGHT DIAGONAL MIDDLE LEFT TO LOWER RIGHT;So;0;ON;;;;;N;;;;; +1FBD4;BOX DRAWINGS LIGHT DIAGONAL UPPER LEFT TO LOWER CENTRE;So;0;ON;;;;;N;;;;; +1FBD5;BOX DRAWINGS LIGHT DIAGONAL UPPER CENTRE TO LOWER RIGHT;So;0;ON;;;;;N;;;;; +1FBD6;BOX DRAWINGS LIGHT DIAGONAL UPPER RIGHT TO LOWER CENTRE;So;0;ON;;;;;N;;;;; +1FBD7;BOX DRAWINGS LIGHT DIAGONAL UPPER CENTRE TO LOWER LEFT;So;0;ON;;;;;N;;;;; +1FBD8;BOX DRAWINGS LIGHT DIAGONAL UPPER LEFT TO MIDDLE CENTRE TO UPPER RIGHT;So;0;ON;;;;;N;;;;; +1FBD9;BOX DRAWINGS LIGHT DIAGONAL UPPER RIGHT TO MIDDLE CENTRE TO LOWER RIGHT;So;0;ON;;;;;N;;;;; +1FBDA;BOX DRAWINGS LIGHT DIAGONAL LOWER LEFT TO MIDDLE CENTRE TO LOWER RIGHT;So;0;ON;;;;;N;;;;; +1FBDB;BOX DRAWINGS LIGHT DIAGONAL UPPER LEFT TO MIDDLE CENTRE TO LOWER LEFT;So;0;ON;;;;;N;;;;; +1FBDC;BOX DRAWINGS LIGHT DIAGONAL UPPER LEFT TO LOWER CENTRE TO UPPER RIGHT;So;0;ON;;;;;N;;;;; +1FBDD;BOX DRAWINGS LIGHT DIAGONAL UPPER RIGHT TO MIDDLE LEFT TO LOWER RIGHT;So;0;ON;;;;;N;;;;; +1FBDE;BOX DRAWINGS LIGHT DIAGONAL LOWER LEFT TO UPPER CENTRE TO LOWER RIGHT;So;0;ON;;;;;N;;;;; +1FBDF;BOX DRAWINGS LIGHT DIAGONAL UPPER LEFT TO MIDDLE RIGHT TO LOWER LEFT;So;0;ON;;;;;N;;;;; +1FBE0;TOP JUSTIFIED LOWER HALF WHITE CIRCLE;So;0;ON;;;;;N;;;;; +1FBE1;RIGHT JUSTIFIED LEFT HALF WHITE CIRCLE;So;0;ON;;;;;N;;;;; +1FBE2;BOTTOM JUSTIFIED UPPER HALF WHITE CIRCLE;So;0;ON;;;;;N;;;;; +1FBE3;LEFT JUSTIFIED RIGHT HALF WHITE CIRCLE;So;0;ON;;;;;N;;;;; +1FBE4;UPPER CENTRE ONE QUARTER BLOCK;So;0;ON;;;;;N;;;;; +1FBE5;LOWER CENTRE ONE QUARTER BLOCK;So;0;ON;;;;;N;;;;; +1FBE6;MIDDLE LEFT ONE QUARTER BLOCK;So;0;ON;;;;;N;;;;; +1FBE7;MIDDLE RIGHT ONE QUARTER BLOCK;So;0;ON;;;;;N;;;;; +1FBE8;TOP JUSTIFIED LOWER HALF BLACK CIRCLE;So;0;ON;;;;;N;;;;; +1FBE9;RIGHT JUSTIFIED LEFT HALF BLACK CIRCLE;So;0;ON;;;;;N;;;;; +1FBEA;BOTTOM JUSTIFIED UPPER HALF BLACK CIRCLE;So;0;ON;;;;;N;;;;; +1FBEB;LEFT JUSTIFIED RIGHT HALF BLACK CIRCLE;So;0;ON;;;;;N;;;;; +1FBEC;TOP RIGHT JUSTIFIED LOWER LEFT QUARTER BLACK CIRCLE;So;0;ON;;;;;N;;;;; +1FBED;BOTTOM LEFT JUSTIFIED UPPER RIGHT QUARTER BLACK CIRCLE;So;0;ON;;;;;N;;;;; +1FBEE;BOTTOM RIGHT JUSTIFIED UPPER LEFT QUARTER BLACK CIRCLE;So;0;ON;;;;;N;;;;; +1FBEF;TOP LEFT JUSTIFIED LOWER RIGHT QUARTER BLACK CIRCLE;So;0;ON;;;;;N;;;;; 1FBF0;SEGMENTED DIGIT ZERO;Nd;0;EN;<font> 0030;0;0;0;N;;;;; 1FBF1;SEGMENTED DIGIT ONE;Nd;0;EN;<font> 0031;1;1;1;N;;;;; 1FBF2;SEGMENTED DIGIT TWO;Nd;0;EN;<font> 0032;2;2;2;N;;;;; diff --git a/Master/texmf-dist/tex/generic/unicode-data/WordBreakProperty.txt b/Master/texmf-dist/tex/generic/unicode-data/WordBreakProperty.txt index 302a2769b39..e557c3d0ded 100644 --- a/Master/texmf-dist/tex/generic/unicode-data/WordBreakProperty.txt +++ b/Master/texmf-dist/tex/generic/unicode-data/WordBreakProperty.txt @@ -1,8 +1,8 @@ -# WordBreakProperty-15.1.0.txt -# Date: 2023-03-31, 03:19:05 GMT -# © 2023 Unicode®, Inc. +# WordBreakProperty-16.0.0.txt +# Date: 2024-07-29, 16:27:36 GMT +# © 2024 Unicode®, Inc. # Unicode and the Unicode Logo are registered trademarks of Unicode, Inc. in the U.S. and other countries. -# For terms of use, see https://www.unicode.org/terms_of_use.html +# For terms of use and license, see https://www.unicode.org/terms_of_use.html # # Unicode Character Database # For documentation, see https://www.unicode.org/reports/tr44/ @@ -91,7 +91,7 @@ FB46..FB4F ; Hebrew_Letter # Lo [10] HEBREW LETTER TSADI WITH DAGESH..HEBREW 0825..0827 ; Extend # Mn [3] SAMARITAN VOWEL SIGN SHORT A..SAMARITAN VOWEL SIGN U 0829..082D ; Extend # Mn [5] SAMARITAN VOWEL SIGN LONG I..SAMARITAN MARK NEQUDAA 0859..085B ; Extend # Mn [3] MANDAIC AFFRICATION MARK..MANDAIC GEMINATION MARK -0898..089F ; Extend # Mn [8] ARABIC SMALL HIGH WORD AL-JUZ..ARABIC HALF MADDA OVER MADDA +0897..089F ; Extend # Mn [9] ARABIC PEPET..ARABIC HALF MADDA OVER MADDA 08CA..08E1 ; Extend # Mn [24] ARABIC SMALL HIGH FARSI YEH..ARABIC SMALL HIGH SIGN SAFHA 08E3..0902 ; Extend # Mn [32] ARABIC TURNED DAMMA BELOW..DEVANAGARI SIGN ANUSVARA 0903 ; Extend # Mc DEVANAGARI SIGN VISARGA @@ -407,8 +407,9 @@ FF9E..FF9F ; Extend # Lm [2] HALFWIDTH KATAKANA VOICED SOUND MARK..HALFWIDT 10A3F ; Extend # Mn KHAROSHTHI VIRAMA 10AE5..10AE6 ; Extend # Mn [2] MANICHAEAN ABBREVIATION MARK ABOVE..MANICHAEAN ABBREVIATION MARK BELOW 10D24..10D27 ; Extend # Mn [4] HANIFI ROHINGYA SIGN HARBAHAY..HANIFI ROHINGYA SIGN TASSI +10D69..10D6D ; Extend # Mn [5] GARAY VOWEL SIGN E..GARAY CONSONANT NASALIZATION MARK 10EAB..10EAC ; Extend # Mn [2] YEZIDI COMBINING HAMZA MARK..YEZIDI COMBINING MADDA MARK -10EFD..10EFF ; Extend # Mn [3] ARABIC SMALL LOW WORD SAKTA..ARABIC SMALL LOW WORD MADDA +10EFC..10EFF ; Extend # Mn [4] ARABIC COMBINING ALEF OVERLAY..ARABIC SMALL LOW WORD MADDA 10F46..10F50 ; Extend # Mn [11] SOGDIAN COMBINING DOT BELOW..SOGDIAN COMBINING STROKE BELOW 10F82..10F85 ; Extend # Mn [4] OLD UYGHUR COMBINING DOT ABOVE..OLD UYGHUR COMBINING TWO DOTS BELOW 11000 ; Extend # Mc BRAHMI SIGN CANDRABINDU @@ -461,6 +462,17 @@ FF9E..FF9F ; Extend # Lm [2] HALFWIDTH KATAKANA VOICED SOUND MARK..HALFWIDT 11362..11363 ; Extend # Mc [2] GRANTHA VOWEL SIGN VOCALIC L..GRANTHA VOWEL SIGN VOCALIC LL 11366..1136C ; Extend # Mn [7] COMBINING GRANTHA DIGIT ZERO..COMBINING GRANTHA DIGIT SIX 11370..11374 ; Extend # Mn [5] COMBINING GRANTHA LETTER A..COMBINING GRANTHA LETTER PA +113B8..113BA ; Extend # Mc [3] TULU-TIGALARI VOWEL SIGN AA..TULU-TIGALARI VOWEL SIGN II +113BB..113C0 ; Extend # Mn [6] TULU-TIGALARI VOWEL SIGN U..TULU-TIGALARI VOWEL SIGN VOCALIC LL +113C2 ; Extend # Mc TULU-TIGALARI VOWEL SIGN EE +113C5 ; Extend # Mc TULU-TIGALARI VOWEL SIGN AI +113C7..113CA ; Extend # Mc [4] TULU-TIGALARI VOWEL SIGN OO..TULU-TIGALARI SIGN CANDRA ANUNASIKA +113CC..113CD ; Extend # Mc [2] TULU-TIGALARI SIGN ANUSVARA..TULU-TIGALARI SIGN VISARGA +113CE ; Extend # Mn TULU-TIGALARI SIGN VIRAMA +113CF ; Extend # Mc TULU-TIGALARI SIGN LOOPED VIRAMA +113D0 ; Extend # Mn TULU-TIGALARI CONJOINER +113D2 ; Extend # Mn TULU-TIGALARI GEMINATION MARK +113E1..113E2 ; Extend # Mn [2] TULU-TIGALARI VEDIC TONE SVARITA..TULU-TIGALARI VEDIC TONE ANUDATTA 11435..11437 ; Extend # Mc [3] NEWA VOWEL SIGN AA..NEWA VOWEL SIGN II 11438..1143F ; Extend # Mn [8] NEWA VOWEL SIGN U..NEWA VOWEL SIGN AI 11440..11441 ; Extend # Mc [2] NEWA VOWEL SIGN O..NEWA VOWEL SIGN AU @@ -496,7 +508,9 @@ FF9E..FF9F ; Extend # Lm [2] HALFWIDTH KATAKANA VOICED SOUND MARK..HALFWIDT 116B0..116B5 ; Extend # Mn [6] TAKRI VOWEL SIGN U..TAKRI VOWEL SIGN AU 116B6 ; Extend # Mc TAKRI SIGN VIRAMA 116B7 ; Extend # Mn TAKRI SIGN NUKTA -1171D..1171F ; Extend # Mn [3] AHOM CONSONANT SIGN MEDIAL LA..AHOM CONSONANT SIGN MEDIAL LIGATING RA +1171D ; Extend # Mn AHOM CONSONANT SIGN MEDIAL LA +1171E ; Extend # Mc AHOM CONSONANT SIGN MEDIAL RA +1171F ; Extend # Mn AHOM CONSONANT SIGN MEDIAL LIGATING RA 11720..11721 ; Extend # Mc [2] AHOM VOWEL SIGN A..AHOM VOWEL SIGN AA 11722..11725 ; Extend # Mn [4] AHOM VOWEL SIGN I..AHOM VOWEL SIGN UU 11726 ; Extend # Mc AHOM VOWEL SIGN E @@ -563,8 +577,12 @@ FF9E..FF9F ; Extend # Lm [2] HALFWIDTH KATAKANA VOICED SOUND MARK..HALFWIDT 11F40 ; Extend # Mn KAWI VOWEL SIGN EU 11F41 ; Extend # Mc KAWI SIGN KILLER 11F42 ; Extend # Mn KAWI CONJOINER +11F5A ; Extend # Mn KAWI SIGN NUKTA 13440 ; Extend # Mn EGYPTIAN HIEROGLYPH MIRROR HORIZONTALLY 13447..13455 ; Extend # Mn [15] EGYPTIAN HIEROGLYPH MODIFIER DAMAGED AT TOP START..EGYPTIAN HIEROGLYPH MODIFIER DAMAGED +1611E..16129 ; Extend # Mn [12] GURUNG KHEMA VOWEL SIGN AA..GURUNG KHEMA VOWEL LENGTH MARK +1612A..1612C ; Extend # Mc [3] GURUNG KHEMA CONSONANT SIGN MEDIAL YA..GURUNG KHEMA CONSONANT SIGN MEDIAL HA +1612D..1612F ; Extend # Mn [3] GURUNG KHEMA SIGN ANUSVARA..GURUNG KHEMA SIGN THOLHOMA 16AF0..16AF4 ; Extend # Mn [5] BASSA VAH COMBINING HIGH TONE..BASSA VAH COMBINING HIGH-LOW TONE 16B30..16B36 ; Extend # Mn [7] PAHAWH HMONG MARK CIM TUB..PAHAWH HMONG MARK CIM TAUM 16F4F ; Extend # Mn MIAO SIGN CONSONANT MODIFIER BAR @@ -598,13 +616,14 @@ FF9E..FF9F ; Extend # Lm [2] HALFWIDTH KATAKANA VOICED SOUND MARK..HALFWIDT 1E2AE ; Extend # Mn TOTO SIGN RISING TONE 1E2EC..1E2EF ; Extend # Mn [4] WANCHO TONE TUP..WANCHO TONE KOINI 1E4EC..1E4EF ; Extend # Mn [4] NAG MUNDARI SIGN MUHOR..NAG MUNDARI SIGN SUTUH +1E5EE..1E5EF ; Extend # Mn [2] OL ONAL SIGN MU..OL ONAL SIGN IKIR 1E8D0..1E8D6 ; Extend # Mn [7] MENDE KIKAKUI COMBINING NUMBER TEENS..MENDE KIKAKUI COMBINING NUMBER MILLIONS 1E944..1E94A ; Extend # Mn [7] ADLAM ALIF LENGTHENER..ADLAM NUKTA 1F3FB..1F3FF ; Extend # Sk [5] EMOJI MODIFIER FITZPATRICK TYPE-1-2..EMOJI MODIFIER FITZPATRICK TYPE-6 E0020..E007F ; Extend # Cf [96] TAG SPACE..CANCEL TAG E0100..E01EF ; Extend # Mn [240] VARIATION SELECTOR-17..VARIATION SELECTOR-256 -# Total code points: 2554 +# Total code points: 2605 # ================================================ @@ -877,7 +896,7 @@ FF71..FF9D ; Katakana # Lo [45] HALFWIDTH KATAKANA LETTER A..HALFWIDTH KATAK 1C4D..1C4F ; ALetter # Lo [3] LEPCHA LETTER TTA..LEPCHA LETTER DDA 1C5A..1C77 ; ALetter # Lo [30] OL CHIKI LETTER LA..OL CHIKI LETTER OH 1C78..1C7D ; ALetter # Lm [6] OL CHIKI MU TTUDDAG..OL CHIKI AHAD -1C80..1C88 ; ALetter # L& [9] CYRILLIC SMALL LETTER ROUNDED VE..CYRILLIC SMALL LETTER UNBLENDED UK +1C80..1C8A ; ALetter # L& [11] CYRILLIC SMALL LETTER ROUNDED VE..CYRILLIC SMALL LETTER TJE 1C90..1CBA ; ALetter # L& [43] GEORGIAN MTAVRULI CAPITAL LETTER AN..GEORGIAN MTAVRULI CAPITAL LETTER AIN 1CBD..1CBF ; ALetter # L& [3] GEORGIAN MTAVRULI CAPITAL LETTER AEN..GEORGIAN MTAVRULI CAPITAL LETTER LABIAL SIGN 1CE9..1CEC ; ALetter # Lo [4] VEDIC SIGN ANUSVARA ANTARGOMUKHA..VEDIC SIGN ANUSVARA VAMAGOMUKHA WITH TAIL @@ -983,10 +1002,10 @@ A788 ; ALetter # Lm MODIFIER LETTER LOW CIRCUMFLEX ACCENT A789..A78A ; ALetter # Sk [2] MODIFIER LETTER COLON..MODIFIER LETTER SHORT EQUALS SIGN A78B..A78E ; ALetter # L& [4] LATIN CAPITAL LETTER SALTILLO..LATIN SMALL LETTER L WITH RETROFLEX HOOK AND BELT A78F ; ALetter # Lo LATIN LETTER SINOLOGICAL DOT -A790..A7CA ; ALetter # L& [59] LATIN CAPITAL LETTER N WITH DESCENDER..LATIN SMALL LETTER S WITH SHORT STROKE OVERLAY +A790..A7CD ; ALetter # L& [62] LATIN CAPITAL LETTER N WITH DESCENDER..LATIN SMALL LETTER S WITH DIAGONAL STROKE A7D0..A7D1 ; ALetter # L& [2] LATIN CAPITAL LETTER CLOSED INSULAR G..LATIN SMALL LETTER CLOSED INSULAR G A7D3 ; ALetter # L& LATIN SMALL LETTER DOUBLE THORN -A7D5..A7D9 ; ALetter # L& [5] LATIN SMALL LETTER DOUBLE WYNN..LATIN SMALL LETTER SIGMOID S +A7D5..A7DC ; ALetter # L& [8] LATIN SMALL LETTER DOUBLE WYNN..LATIN CAPITAL LETTER LAMBDA WITH STROKE A7F2..A7F4 ; ALetter # Lm [3] MODIFIER LETTER CAPITAL C..MODIFIER LETTER CAPITAL Q A7F5..A7F6 ; ALetter # L& [2] LATIN CAPITAL LETTER REVERSED HALF H..LATIN SMALL LETTER REVERSED HALF H A7F7 ; ALetter # Lo LATIN EPIGRAPHIC LETTER SIDEWAYS I @@ -1077,6 +1096,7 @@ FFDA..FFDC ; ALetter # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HANGUL 105A3..105B1 ; ALetter # L& [15] VITHKUQI SMALL LETTER HA..VITHKUQI SMALL LETTER RE 105B3..105B9 ; ALetter # L& [7] VITHKUQI SMALL LETTER SE..VITHKUQI SMALL LETTER XE 105BB..105BC ; ALetter # L& [2] VITHKUQI SMALL LETTER Y..VITHKUQI SMALL LETTER ZE +105C0..105F3 ; ALetter # Lo [52] TODHRI LETTER A..TODHRI LETTER OO 10600..10736 ; ALetter # Lo [311] LINEAR A SIGN AB001..LINEAR A SIGN A664 10740..10755 ; ALetter # Lo [22] LINEAR A SIGN A701 A..LINEAR A SIGN A732 JE 10760..10767 ; ALetter # Lo [8] LINEAR A SIGN A800..LINEAR A SIGN A807 @@ -1113,8 +1133,15 @@ FFDA..FFDC ; ALetter # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HANGUL 10C80..10CB2 ; ALetter # L& [51] OLD HUNGARIAN CAPITAL LETTER A..OLD HUNGARIAN CAPITAL LETTER US 10CC0..10CF2 ; ALetter # L& [51] OLD HUNGARIAN SMALL LETTER A..OLD HUNGARIAN SMALL LETTER US 10D00..10D23 ; ALetter # Lo [36] HANIFI ROHINGYA LETTER A..HANIFI ROHINGYA MARK NA KHONNA +10D4A..10D4D ; ALetter # Lo [4] GARAY VOWEL SIGN A..GARAY VOWEL SIGN EE +10D4E ; ALetter # Lm GARAY VOWEL LENGTH MARK +10D4F ; ALetter # Lo GARAY SUKUN +10D50..10D65 ; ALetter # L& [22] GARAY CAPITAL LETTER A..GARAY CAPITAL LETTER OLD NA +10D6F ; ALetter # Lm GARAY REDUPLICATION MARK +10D70..10D85 ; ALetter # L& [22] GARAY SMALL LETTER A..GARAY SMALL LETTER OLD NA 10E80..10EA9 ; ALetter # Lo [42] YEZIDI LETTER ELIF..YEZIDI LETTER ET 10EB0..10EB1 ; ALetter # Lo [2] YEZIDI LETTER LAM WITH DOT ABOVE..YEZIDI LETTER YOT WITH CIRCUMFLEX ABOVE +10EC2..10EC4 ; ALetter # Lo [3] ARABIC LETTER DAL WITH TWO DOTS VERTICALLY BELOW..ARABIC LETTER KAF WITH TWO DOTS VERTICALLY BELOW 10F00..10F1C ; ALetter # Lo [29] OLD SOGDIAN LETTER ALEPH..OLD SOGDIAN LETTER FINAL TAW WITH VERTICAL TAIL 10F27 ; ALetter # Lo OLD SOGDIAN LIGATURE AYIN-DALETH 10F30..10F45 ; ALetter # Lo [22] SOGDIAN LETTER ALEPH..SOGDIAN INDEPENDENT SHIN @@ -1153,6 +1180,13 @@ FFDA..FFDC ; ALetter # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HANGUL 1133D ; ALetter # Lo GRANTHA SIGN AVAGRAHA 11350 ; ALetter # Lo GRANTHA OM 1135D..11361 ; ALetter # Lo [5] GRANTHA SIGN PLUTA..GRANTHA LETTER VOCALIC LL +11380..11389 ; ALetter # Lo [10] TULU-TIGALARI LETTER A..TULU-TIGALARI LETTER VOCALIC LL +1138B ; ALetter # Lo TULU-TIGALARI LETTER EE +1138E ; ALetter # Lo TULU-TIGALARI LETTER AI +11390..113B5 ; ALetter # Lo [38] TULU-TIGALARI LETTER OO..TULU-TIGALARI LETTER LLLA +113B7 ; ALetter # Lo TULU-TIGALARI SIGN AVAGRAHA +113D1 ; ALetter # Lo TULU-TIGALARI REPHA +113D3 ; ALetter # Lo TULU-TIGALARI SIGN PLUTA 11400..11434 ; ALetter # Lo [53] NEWA LETTER A..NEWA LETTER HA 11447..1144A ; ALetter # Lo [4] NEWA SIGN AVAGRAHA..NEWA SIDDHI 1145F..11461 ; ALetter # Lo [3] NEWA LETTER VEDIC ANUSVARA..NEWA SIGN UPADHMANIYA @@ -1185,6 +1219,7 @@ FFDA..FFDC ; ALetter # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HANGUL 11A5C..11A89 ; ALetter # Lo [46] SOYOMBO LETTER KA..SOYOMBO CLUSTER-INITIAL LETTER SA 11A9D ; ALetter # Lo SOYOMBO MARK PLUTA 11AB0..11AF8 ; ALetter # Lo [73] CANADIAN SYLLABICS NATTILIK HI..PAU CIN HAU GLOTTAL STOP FINAL +11BC0..11BE0 ; ALetter # Lo [33] SUNUWAR LETTER DEVI..SUNUWAR LETTER KLOKO 11C00..11C08 ; ALetter # Lo [9] BHAIKSUKI LETTER A..BHAIKSUKI LETTER VOCALIC L 11C0A..11C2E ; ALetter # Lo [37] BHAIKSUKI LETTER E..BHAIKSUKI LETTER HA 11C40 ; ALetter # Lo BHAIKSUKI SIGN AVAGRAHA @@ -1208,7 +1243,9 @@ FFDA..FFDC ; ALetter # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HANGUL 12F90..12FF0 ; ALetter # Lo [97] CYPRO-MINOAN SIGN CM001..CYPRO-MINOAN SIGN CM114 13000..1342F ; ALetter # Lo [1072] EGYPTIAN HIEROGLYPH A001..EGYPTIAN HIEROGLYPH V011D 13441..13446 ; ALetter # Lo [6] EGYPTIAN HIEROGLYPH FULL BLANK..EGYPTIAN HIEROGLYPH WIDE LOST SIGN +13460..143FA ; ALetter # Lo [3995] EGYPTIAN HIEROGLYPH-13460..EGYPTIAN HIEROGLYPH-143FA 14400..14646 ; ALetter # Lo [583] ANATOLIAN HIEROGLYPH A001..ANATOLIAN HIEROGLYPH A530 +16100..1611D ; ALetter # Lo [30] GURUNG KHEMA LETTER A..GURUNG KHEMA LETTER SA 16800..16A38 ; ALetter # Lo [569] BAMUM LETTER PHASE-A NGKUE MFON..BAMUM LETTER PHASE-F VUEQ 16A40..16A5E ; ALetter # Lo [31] MRO LETTER TA..MRO LETTER TEK 16A70..16ABE ; ALetter # Lo [79] TANGSA LETTER OZ..TANGSA LETTER ZA @@ -1217,6 +1254,9 @@ FFDA..FFDC ; ALetter # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HANGUL 16B40..16B43 ; ALetter # Lm [4] PAHAWH HMONG SIGN VOS SEEV..PAHAWH HMONG SIGN IB YAM 16B63..16B77 ; ALetter # Lo [21] PAHAWH HMONG SIGN VOS LUB..PAHAWH HMONG SIGN CIM NRES TOS 16B7D..16B8F ; ALetter # Lo [19] PAHAWH HMONG CLAN SIGN TSHEEJ..PAHAWH HMONG CLAN SIGN VWJ +16D40..16D42 ; ALetter # Lm [3] KIRAT RAI SIGN ANUSVARA..KIRAT RAI SIGN VISARGA +16D43..16D6A ; ALetter # Lo [40] KIRAT RAI LETTER A..KIRAT RAI VOWEL SIGN AU +16D6B..16D6C ; ALetter # Lm [2] KIRAT RAI SIGN VIRAMA..KIRAT RAI SIGN SAAT 16E40..16E7F ; ALetter # L& [64] MEDEFAIDRIN CAPITAL LETTER M..MEDEFAIDRIN SMALL LETTER Y 16F00..16F4A ; ALetter # Lo [75] MIAO LETTER PA..MIAO LETTER RTE 16F50 ; ALetter # Lo MIAO LETTER NASALIZATION @@ -1269,6 +1309,8 @@ FFDA..FFDC ; ALetter # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HANGUL 1E2C0..1E2EB ; ALetter # Lo [44] WANCHO LETTER AA..WANCHO LETTER YIH 1E4D0..1E4EA ; ALetter # Lo [27] NAG MUNDARI LETTER O..NAG MUNDARI LETTER ELL 1E4EB ; ALetter # Lm NAG MUNDARI SIGN OJOD +1E5D0..1E5ED ; ALetter # Lo [30] OL ONAL LETTER O..OL ONAL LETTER EG +1E5F0 ; ALetter # Lo OL ONAL SIGN HODDOND 1E7E0..1E7E6 ; ALetter # Lo [7] ETHIOPIC SYLLABLE HHYA..ETHIOPIC SYLLABLE HHYO 1E7E8..1E7EB ; ALetter # Lo [4] ETHIOPIC SYLLABLE GURAGE HHWA..ETHIOPIC SYLLABLE HHWE 1E7ED..1E7EE ; ALetter # Lo [2] ETHIOPIC SYLLABLE GURAGE MWI..ETHIOPIC SYLLABLE GURAGE MWEE @@ -1313,7 +1355,7 @@ FFDA..FFDC ; ALetter # Lo [3] HALFWIDTH HANGUL LETTER EU..HALFWIDTH HANGUL 1F150..1F169 ; ALetter # So [26] NEGATIVE CIRCLED LATIN CAPITAL LETTER A..NEGATIVE CIRCLED LATIN CAPITAL LETTER Z 1F170..1F189 ; ALetter # So [26] NEGATIVE SQUARED LATIN CAPITAL LETTER A..NEGATIVE SQUARED LATIN CAPITAL LETTER Z -# Total code points: 29490 +# Total code points: 33791 # ================================================ @@ -1339,14 +1381,12 @@ FF1A ; MidLetter # Po FULLWIDTH COLON 066C ; MidNum # Po ARABIC THOUSANDS SEPARATOR 07F8 ; MidNum # Po NKO COMMA 2044 ; MidNum # Sm FRACTION SLASH -FE10 ; MidNum # Po PRESENTATION FORM FOR VERTICAL COMMA -FE14 ; MidNum # Po PRESENTATION FORM FOR VERTICAL SEMICOLON FE50 ; MidNum # Po SMALL COMMA FE54 ; MidNum # Po SMALL SEMICOLON FF0C ; MidNum # Po FULLWIDTH COMMA FF1B ; MidNum # Po FULLWIDTH SEMICOLON -# Total code points: 15 +# Total code points: 13 # ================================================ @@ -1390,6 +1430,7 @@ FF0E ; MidNumLet # Po FULLWIDTH FULL STOP 1810..1819 ; Numeric # Nd [10] MONGOLIAN DIGIT ZERO..MONGOLIAN DIGIT NINE 1946..194F ; Numeric # Nd [10] LIMBU DIGIT ZERO..LIMBU DIGIT NINE 19D0..19D9 ; Numeric # Nd [10] NEW TAI LUE DIGIT ZERO..NEW TAI LUE DIGIT NINE +19DA ; Numeric # No NEW TAI LUE THAM DIGIT ONE 1A80..1A89 ; Numeric # Nd [10] TAI THAM HORA DIGIT ZERO..TAI THAM HORA DIGIT NINE 1A90..1A99 ; Numeric # Nd [10] TAI THAM THAM DIGIT ZERO..TAI THAM THAM DIGIT NINE 1B50..1B59 ; Numeric # Nd [10] BALINESE DIGIT ZERO..BALINESE DIGIT NINE @@ -1406,6 +1447,7 @@ ABF0..ABF9 ; Numeric # Nd [10] MEETEI MAYEK DIGIT ZERO..MEETEI MAYEK DIGIT N FF10..FF19 ; Numeric # Nd [10] FULLWIDTH DIGIT ZERO..FULLWIDTH DIGIT NINE 104A0..104A9 ; Numeric # Nd [10] OSMANYA DIGIT ZERO..OSMANYA DIGIT NINE 10D30..10D39 ; Numeric # Nd [10] HANIFI ROHINGYA DIGIT ZERO..HANIFI ROHINGYA DIGIT NINE +10D40..10D49 ; Numeric # Nd [10] GARAY DIGIT ZERO..GARAY DIGIT NINE 11066..1106F ; Numeric # Nd [10] BRAHMI DIGIT ZERO..BRAHMI DIGIT NINE 110BD ; Numeric # Cf KAITHI NUMBER SIGN 110CD ; Numeric # Cf KAITHI NUMBER SIGN ABOVE @@ -1417,24 +1459,30 @@ FF10..FF19 ; Numeric # Nd [10] FULLWIDTH DIGIT ZERO..FULLWIDTH DIGIT NINE 114D0..114D9 ; Numeric # Nd [10] TIRHUTA DIGIT ZERO..TIRHUTA DIGIT NINE 11650..11659 ; Numeric # Nd [10] MODI DIGIT ZERO..MODI DIGIT NINE 116C0..116C9 ; Numeric # Nd [10] TAKRI DIGIT ZERO..TAKRI DIGIT NINE +116D0..116E3 ; Numeric # Nd [20] MYANMAR PAO DIGIT ZERO..MYANMAR EASTERN PWO KAREN DIGIT NINE 11730..11739 ; Numeric # Nd [10] AHOM DIGIT ZERO..AHOM DIGIT NINE 118E0..118E9 ; Numeric # Nd [10] WARANG CITI DIGIT ZERO..WARANG CITI DIGIT NINE 11950..11959 ; Numeric # Nd [10] DIVES AKURU DIGIT ZERO..DIVES AKURU DIGIT NINE +11BF0..11BF9 ; Numeric # Nd [10] SUNUWAR DIGIT ZERO..SUNUWAR DIGIT NINE 11C50..11C59 ; Numeric # Nd [10] BHAIKSUKI DIGIT ZERO..BHAIKSUKI DIGIT NINE 11D50..11D59 ; Numeric # Nd [10] MASARAM GONDI DIGIT ZERO..MASARAM GONDI DIGIT NINE 11DA0..11DA9 ; Numeric # Nd [10] GUNJALA GONDI DIGIT ZERO..GUNJALA GONDI DIGIT NINE 11F50..11F59 ; Numeric # Nd [10] KAWI DIGIT ZERO..KAWI DIGIT NINE +16130..16139 ; Numeric # Nd [10] GURUNG KHEMA DIGIT ZERO..GURUNG KHEMA DIGIT NINE 16A60..16A69 ; Numeric # Nd [10] MRO DIGIT ZERO..MRO DIGIT NINE 16AC0..16AC9 ; Numeric # Nd [10] TANGSA DIGIT ZERO..TANGSA DIGIT NINE 16B50..16B59 ; Numeric # Nd [10] PAHAWH HMONG DIGIT ZERO..PAHAWH HMONG DIGIT NINE +16D70..16D79 ; Numeric # Nd [10] KIRAT RAI DIGIT ZERO..KIRAT RAI DIGIT NINE +1CCF0..1CCF9 ; Numeric # Nd [10] OUTLINED DIGIT ZERO..OUTLINED DIGIT NINE 1D7CE..1D7FF ; Numeric # Nd [50] MATHEMATICAL BOLD DIGIT ZERO..MATHEMATICAL MONOSPACE DIGIT NINE 1E140..1E149 ; Numeric # Nd [10] NYIAKENG PUACHUE HMONG DIGIT ZERO..NYIAKENG PUACHUE HMONG DIGIT NINE 1E2F0..1E2F9 ; Numeric # Nd [10] WANCHO DIGIT ZERO..WANCHO DIGIT NINE 1E4F0..1E4F9 ; Numeric # Nd [10] NAG MUNDARI DIGIT ZERO..NAG MUNDARI DIGIT NINE +1E5F1..1E5FA ; Numeric # Nd [10] OL ONAL DIGIT ZERO..OL ONAL DIGIT NINE 1E950..1E959 ; Numeric # Nd [10] ADLAM DIGIT ZERO..ADLAM DIGIT NINE 1FBF0..1FBF9 ; Numeric # Nd [10] SEGMENTED DIGIT ZERO..SEGMENTED DIGIT NINE -# Total code points: 693 +# Total code points: 774 # ================================================ diff --git a/Master/texmf-dist/tex/generic/unicode-data/emoji-data.txt b/Master/texmf-dist/tex/generic/unicode-data/emoji-data.txt index 0ba10e9ce4c..ff99028248b 100644 --- a/Master/texmf-dist/tex/generic/unicode-data/emoji-data.txt +++ b/Master/texmf-dist/tex/generic/unicode-data/emoji-data.txt @@ -1,11 +1,11 @@ # emoji-data.txt -# Date: 2023-02-01, 02:22:54 GMT -# © 2023 Unicode®, Inc. +# Date: 2024-05-01, 21:25:24 GMT +# © 2024 Unicode®, Inc. # Unicode and the Unicode Logo are registered trademarks of Unicode, Inc. in the U.S. and other countries. -# For terms of use, see https://www.unicode.org/terms_of_use.html +# For terms of use and license, see https://www.unicode.org/terms_of_use.html # # Emoji Data for UTS #51 -# Used with Emoji Version 15.1 and subsequent minor revisions (if any) +# Used with Emoji Version 16.0 and subsequent minor revisions (if any) # # For documentation and usage, see https://www.unicode.org/reports/tr51 # @@ -407,6 +407,8 @@ 1FA80..1FA82 ; Emoji # E12.0 [3] (🪀..🪂) yo-yo..parachute 1FA83..1FA86 ; Emoji # E13.0 [4] (🪃..🪆) boomerang..nesting dolls 1FA87..1FA88 ; Emoji # E15.0 [2] (🪇..🪈) maracas..flute +1FA89 ; Emoji # E16.0 [1] (🪉) harp +1FA8F ; Emoji # E16.0 [1] (ðŸª) shovel 1FA90..1FA95 ; Emoji # E12.0 [6] (ðŸª..🪕) ringed planet..banjo 1FA96..1FAA8 ; Emoji # E13.0 [19] (🪖..🪨) military helmet..rock 1FAA9..1FAAC ; Emoji # E14.0 [4] (🪩..🪬) mirror ball..hamsa @@ -414,19 +416,24 @@ 1FAB0..1FAB6 ; Emoji # E13.0 [7] (🪰..🪶) fly..feather 1FAB7..1FABA ; Emoji # E14.0 [4] (🪷..🪺) lotus..nest with eggs 1FABB..1FABD ; Emoji # E15.0 [3] (🪻..🪽) hyacinth..wing +1FABE ; Emoji # E16.0 [1] (🪾) leafless tree 1FABF ; Emoji # E15.0 [1] (🪿) goose 1FAC0..1FAC2 ; Emoji # E13.0 [3] (🫀..🫂) anatomical heart..people hugging 1FAC3..1FAC5 ; Emoji # E14.0 [3] (🫃..🫅) pregnant man..person with crown +1FAC6 ; Emoji # E16.0 [1] (🫆) fingerprint 1FACE..1FACF ; Emoji # E15.0 [2] (🫎..ðŸ«) moose..donkey 1FAD0..1FAD6 ; Emoji # E13.0 [7] (ðŸ«..🫖) blueberries..teapot 1FAD7..1FAD9 ; Emoji # E14.0 [3] (🫗..🫙) pouring liquid..jar 1FADA..1FADB ; Emoji # E15.0 [2] (🫚..🫛) ginger root..pea pod +1FADC ; Emoji # E16.0 [1] (🫜) root vegetable +1FADF ; Emoji # E16.0 [1] (🫟) splatter 1FAE0..1FAE7 ; Emoji # E14.0 [8] (🫠..🫧) melting face..bubbles 1FAE8 ; Emoji # E15.0 [1] (🫨) shaking face +1FAE9 ; Emoji # E16.0 [1] (🫩) face with bags under eyes 1FAF0..1FAF6 ; Emoji # E14.0 [7] (🫰..🫶) hand with index finger and thumb crossed..heart hands 1FAF7..1FAF8 ; Emoji # E15.0 [2] (🫷..🫸) leftwards pushing hand..rightwards pushing hand -# Total elements: 1424 +# Total elements: 1431 # ================================================ @@ -696,6 +703,8 @@ 1FA80..1FA82 ; Emoji_Presentation # E12.0 [3] (🪀..🪂) yo-yo..parachute 1FA83..1FA86 ; Emoji_Presentation # E13.0 [4] (🪃..🪆) boomerang..nesting dolls 1FA87..1FA88 ; Emoji_Presentation # E15.0 [2] (🪇..🪈) maracas..flute +1FA89 ; Emoji_Presentation # E16.0 [1] (🪉) harp +1FA8F ; Emoji_Presentation # E16.0 [1] (ðŸª) shovel 1FA90..1FA95 ; Emoji_Presentation # E12.0 [6] (ðŸª..🪕) ringed planet..banjo 1FA96..1FAA8 ; Emoji_Presentation # E13.0 [19] (🪖..🪨) military helmet..rock 1FAA9..1FAAC ; Emoji_Presentation # E14.0 [4] (🪩..🪬) mirror ball..hamsa @@ -703,19 +712,24 @@ 1FAB0..1FAB6 ; Emoji_Presentation # E13.0 [7] (🪰..🪶) fly..feather 1FAB7..1FABA ; Emoji_Presentation # E14.0 [4] (🪷..🪺) lotus..nest with eggs 1FABB..1FABD ; Emoji_Presentation # E15.0 [3] (🪻..🪽) hyacinth..wing +1FABE ; Emoji_Presentation # E16.0 [1] (🪾) leafless tree 1FABF ; Emoji_Presentation # E15.0 [1] (🪿) goose 1FAC0..1FAC2 ; Emoji_Presentation # E13.0 [3] (🫀..🫂) anatomical heart..people hugging 1FAC3..1FAC5 ; Emoji_Presentation # E14.0 [3] (🫃..🫅) pregnant man..person with crown +1FAC6 ; Emoji_Presentation # E16.0 [1] (🫆) fingerprint 1FACE..1FACF ; Emoji_Presentation # E15.0 [2] (🫎..ðŸ«) moose..donkey 1FAD0..1FAD6 ; Emoji_Presentation # E13.0 [7] (ðŸ«..🫖) blueberries..teapot 1FAD7..1FAD9 ; Emoji_Presentation # E14.0 [3] (🫗..🫙) pouring liquid..jar 1FADA..1FADB ; Emoji_Presentation # E15.0 [2] (🫚..🫛) ginger root..pea pod +1FADC ; Emoji_Presentation # E16.0 [1] (🫜) root vegetable +1FADF ; Emoji_Presentation # E16.0 [1] (🫟) splatter 1FAE0..1FAE7 ; Emoji_Presentation # E14.0 [8] (🫠..🫧) melting face..bubbles 1FAE8 ; Emoji_Presentation # E15.0 [1] (🫨) shaking face +1FAE9 ; Emoji_Presentation # E16.0 [1] (🫩) face with bags under eyes 1FAF0..1FAF6 ; Emoji_Presentation # E14.0 [7] (🫰..🫶) hand with index finger and thumb crossed..heart hands 1FAF7..1FAF8 ; Emoji_Presentation # E15.0 [2] (🫷..🫸) leftwards pushing hand..rightwards pushing hand -# Total elements: 1205 +# Total elements: 1212 # ================================================ @@ -1289,7 +1303,9 @@ E0020..E007F ; Emoji_Component # E0.0 [96] (ó € ..ó ¿) tag space..c 1FA80..1FA82 ; Extended_Pictographic# E12.0 [3] (🪀..🪂) yo-yo..parachute 1FA83..1FA86 ; Extended_Pictographic# E13.0 [4] (🪃..🪆) boomerang..nesting dolls 1FA87..1FA88 ; Extended_Pictographic# E15.0 [2] (🪇..🪈) maracas..flute -1FA89..1FA8F ; Extended_Pictographic# E0.0 [7] (🪉..ðŸª) <reserved-1FA89>..<reserved-1FA8F> +1FA89 ; Extended_Pictographic# E16.0 [1] (🪉) harp +1FA8A..1FA8E ; Extended_Pictographic# E0.0 [5] (🪊..🪎) <reserved-1FA8A>..<reserved-1FA8E> +1FA8F ; Extended_Pictographic# E16.0 [1] (ðŸª) shovel 1FA90..1FA95 ; Extended_Pictographic# E12.0 [6] (ðŸª..🪕) ringed planet..banjo 1FA96..1FAA8 ; Extended_Pictographic# E13.0 [19] (🪖..🪨) military helmet..rock 1FAA9..1FAAC ; Extended_Pictographic# E14.0 [4] (🪩..🪬) mirror ball..hamsa @@ -1297,19 +1313,23 @@ E0020..E007F ; Emoji_Component # E0.0 [96] (ó € ..ó ¿) tag space..c 1FAB0..1FAB6 ; Extended_Pictographic# E13.0 [7] (🪰..🪶) fly..feather 1FAB7..1FABA ; Extended_Pictographic# E14.0 [4] (🪷..🪺) lotus..nest with eggs 1FABB..1FABD ; Extended_Pictographic# E15.0 [3] (🪻..🪽) hyacinth..wing -1FABE ; Extended_Pictographic# E0.0 [1] (🪾) <reserved-1FABE> +1FABE ; Extended_Pictographic# E16.0 [1] (🪾) leafless tree 1FABF ; Extended_Pictographic# E15.0 [1] (🪿) goose 1FAC0..1FAC2 ; Extended_Pictographic# E13.0 [3] (🫀..🫂) anatomical heart..people hugging 1FAC3..1FAC5 ; Extended_Pictographic# E14.0 [3] (🫃..🫅) pregnant man..person with crown -1FAC6..1FACD ; Extended_Pictographic# E0.0 [8] (🫆..ðŸ«) <reserved-1FAC6>..<reserved-1FACD> +1FAC6 ; Extended_Pictographic# E16.0 [1] (🫆) fingerprint +1FAC7..1FACD ; Extended_Pictographic# E0.0 [7] (🫇..ðŸ«) <reserved-1FAC7>..<reserved-1FACD> 1FACE..1FACF ; Extended_Pictographic# E15.0 [2] (🫎..ðŸ«) moose..donkey 1FAD0..1FAD6 ; Extended_Pictographic# E13.0 [7] (ðŸ«..🫖) blueberries..teapot 1FAD7..1FAD9 ; Extended_Pictographic# E14.0 [3] (🫗..🫙) pouring liquid..jar 1FADA..1FADB ; Extended_Pictographic# E15.0 [2] (🫚..🫛) ginger root..pea pod -1FADC..1FADF ; Extended_Pictographic# E0.0 [4] (🫜..🫟) <reserved-1FADC>..<reserved-1FADF> +1FADC ; Extended_Pictographic# E16.0 [1] (🫜) root vegetable +1FADD..1FADE ; Extended_Pictographic# E0.0 [2] (ðŸ«..🫞) <reserved-1FADD>..<reserved-1FADE> +1FADF ; Extended_Pictographic# E16.0 [1] (🫟) splatter 1FAE0..1FAE7 ; Extended_Pictographic# E14.0 [8] (🫠..🫧) melting face..bubbles 1FAE8 ; Extended_Pictographic# E15.0 [1] (🫨) shaking face -1FAE9..1FAEF ; Extended_Pictographic# E0.0 [7] (🫩..🫯) <reserved-1FAE9>..<reserved-1FAEF> +1FAE9 ; Extended_Pictographic# E16.0 [1] (🫩) face with bags under eyes +1FAEA..1FAEF ; Extended_Pictographic# E0.0 [6] (🫪..🫯) <reserved-1FAEA>..<reserved-1FAEF> 1FAF0..1FAF6 ; Extended_Pictographic# E14.0 [7] (🫰..🫶) hand with index finger and thumb crossed..heart hands 1FAF7..1FAF8 ; Extended_Pictographic# E15.0 [2] (🫷..🫸) leftwards pushing hand..rightwards pushing hand 1FAF9..1FAFF ; Extended_Pictographic# E0.0 [7] (🫹..🫿) <reserved-1FAF9>..<reserved-1FAFF> diff --git a/Master/texmf-dist/tex/generic/unicode-data/load-unicode-data.tex b/Master/texmf-dist/tex/generic/unicode-data/load-unicode-data.tex index d95e1f99ebc..d525e050432 100644 --- a/Master/texmf-dist/tex/generic/unicode-data/load-unicode-data.tex +++ b/Master/texmf-dist/tex/generic/unicode-data/load-unicode-data.tex @@ -1,6 +1,6 @@ % File load-unicode-data.tex % -% Copyright 2015-2023 The LaTeX Project +% Copyright 2015-2025 The LaTeX Project % % It may be distributed and/or modified under the conditions of % the LaTeX Project Public License (LPPL), either version 1.3c of @@ -57,7 +57,7 @@ \catcode`\^=7 % \newlinechar=`\^^J % \message{^^J}% - \message{load-unicode-data.tex v1.17 (2023-09-18)^^J}% + \message{load-unicode-data.tex v1.18 (2025-01-07)^^J}% \message{Reading Unicode data^^J}% % The first stage of parsing is dealing with the fact that there are lots of % data items separated by |;|. Of those, only a few are needed so they are @@ -175,10 +175,10 @@ }% \let\repeat\fi % There is no version data in |UnicodeData.txt|: log that it is being used with -% a hard-coded date (the modification date from ftp.unicode.org). This obviously +% a hard-coded date (the modification date from www.unicode.org/Public/). This obviously % needs to be updated when a new download takes place! - \message{\string# UnicodeData-15.1.0.txt^^J}% - \message{\string# Modified 2023-09-18 08:45:00 GMT [JAW]^^J}% + \message{\string# UnicodeData-16.0.0.txt^^J}% + \message{\string# Modified 2024-08-25 18:05 GMT [JAW]^^J}% % Actually loading the file requires an input stream, done directly. % There is a blank line at the end of the data source so there is a check % here for a |\par|. diff --git a/Master/texmf-dist/tex/generic/unicode-data/load-unicode-math-classes.tex b/Master/texmf-dist/tex/generic/unicode-data/load-unicode-math-classes.tex index 4e8ef04b7a2..c0195dd9cb7 100644 --- a/Master/texmf-dist/tex/generic/unicode-data/load-unicode-math-classes.tex +++ b/Master/texmf-dist/tex/generic/unicode-data/load-unicode-math-classes.tex @@ -1,6 +1,6 @@ % File load-unicode-math-classes.tex % -% Copyright 2015-2023 The LaTeX Project +% Copyright 2015-2025 The LaTeX Project % % It may be distributed and/or modified under the conditions of % the LaTeX Project Public License (LPPL), either version 1.3c of @@ -48,7 +48,7 @@ \catcode`\^=7 % \newlinechar=`\^^J % \message{^^J}% - \message{load-unicode-math-classes.tex v1.17 (2023-09-18)^^J}% + \message{load-unicode-math-classes.tex v1.18 (2025-01-07)^^J}% \message{Reading math class data^^J}% % The parser for data lines starts by skipping any comments (which start with % a |#| and which will be category code~$12$). diff --git a/Master/texmf-dist/tex/generic/unicode-data/load-unicode-xetex-classes.tex b/Master/texmf-dist/tex/generic/unicode-data/load-unicode-xetex-classes.tex index 1eb383beae0..ca62581ae18 100644 --- a/Master/texmf-dist/tex/generic/unicode-data/load-unicode-xetex-classes.tex +++ b/Master/texmf-dist/tex/generic/unicode-data/load-unicode-xetex-classes.tex @@ -1,6 +1,6 @@ % File load-unicode-xetex-classes.tex % -% Copyright 2015-2023 The LaTeX Project +% Copyright 2015-2025 The LaTeX Project % % It may be distributed and/or modified under the conditions of % the LaTeX Project Public License (LPPL), either version 1.3c of @@ -64,7 +64,7 @@ \catcode`\^=7 % \newlinechar=`\^^J % \message{^^J}% - \message{load-unicode-xetex-classes.tex v1.17 (2023-09-18)^^J}% + \message{load-unicode-xetex-classes.tex v1.18 (2025-01-07)^^J}% \message{Reading Unicode east Asian character class data^^J}% % A string version of |#| will be needed to look for comment lines in the % source. Once that is done proper parsing can begin. diff --git a/Master/texmf-dist/tex/generic/witharrows/witharrows.sty b/Master/texmf-dist/tex/generic/witharrows/witharrows.sty index b4e26af8bca..a898f51466d 100644 --- a/Master/texmf-dist/tex/generic/witharrows/witharrows.sty +++ b/Master/texmf-dist/tex/generic/witharrows/witharrows.sty @@ -6,7 +6,7 @@ %% %% witharrows.dtx (with options: `LaTeX') %% -%% Copyright (C) 2017-2023 by F. Pantigny +%% Copyright (C) 2017-2024 by F. Pantigny %% %% This file may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, either @@ -18,8 +18,9 @@ %% and version 1.3 or later is part of all distributions of %% LaTeX version 2005/12/01 or later. %% -\def\myfileversion{2.8b} -\def\myfiledate{2023/08/24} +\def\myfileversion{2.9a} +\def\myfiledate{2024/10/19} + \RequirePackage{tikz} \usetikzlibrary{arrows.meta} \usepgfmodule{bending} % https://texnique.fr/osqa/questions/12199 @@ -30,6 +31,10 @@ {\myfileversion} {Draws arrows for explanations on the right} \RequirePackage { varwidth } +\ProvideDocumentCommand{\IfPackageLoadedT}{mm} + {\IfPackageLoadedTF{#1}{#2}{}} +\ProvideDocumentCommand{\IfPackageLoadedF}{mm} + {\IfPackageLoadedTF{#1}{}{#2}} \bool_new:N \c__witharrows_footnotehyper_bool \bool_new:N \c__witharrows_footnote_bool \cs_new_protected:Npn \__witharrows_msg_new:nn { \msg_new:nnn { witharrows } } @@ -45,20 +50,25 @@ \cs_new_protected:Npn \__witharrows_warning:n { \msg_warning:nn { witharrows } } \cs_new_protected:Npn \__witharrows_fatal:n { \msg_fatal:nn { witharrows } } \cs_new_protected:Npn \__witharrows_error:nn { \msg_error:nnn { witharrows } } -\cs_generate_variant:Nn \__witharrows_error:nn { n x } +\cs_generate_variant:Nn \__witharrows_error:nn { n e } \cs_new_protected:Npn \__witharrows_error_or_warning:n { \bool_if:NTF \c__witharrows_messages_for_Overleaf_bool \__witharrows_warning:n \__witharrows_error:n } \bool_set:Nn \c__witharrows_messages_for_Overleaf_bool { - \str_if_eq_p:Vn \c_sys_jobname_str { _region_ } % for Emacs - || \str_if_eq_p:Vn \c_sys_jobname_str { output } % for Overleaf + \str_if_eq_p:on \c_sys_jobname_str { _region_ } % for Emacs + || \str_if_eq_p:on \c_sys_jobname_str { output } % for Overleaf } +\bool_new:N \g__witharrows_beamer_bool \keys_define:nn { WithArrows / package } { footnote .bool_set:N = \c__witharrows_footnote_bool , footnotehyper .bool_set:N = \c__witharrows_footnotehyper_bool , - unknown .code:n = - \__witharrows_fatal:n { Option~unknown~for~package } + footnote .usage:n = load , + footnotehyper .usage:n = load , + beamer .bool_gset:N = \g__witharrows_beamer_bool , + beamer .default:n = true , + beamer .usage:n = load , + unknown .code:n = \__witharrows_fatal:n { Option~unknown~for~package } } \__witharrows_msg_new:nn { Option~unknown~for~package } { @@ -67,6 +77,8 @@ \token_to_str:N\WithArrowsOptions. } \ProcessKeysOptions { WithArrows / package } +\IfClassLoadedT { beamer } { \bool_gset_true:N \g__witharrows_beamer_bool } +\IfPackageLoadedT { beamerarticle } { \bool_gset_true:N \g__witharrows_beamer_bool } \__witharrows_msg_new:nn { footnote~with~footnotehyper~package } { Footnote~forbidden.\\ @@ -129,7 +141,10 @@ \cs_new_protected:Npn \__witharrows_collect_options:nnw #1#2[#3] { \__witharrows_collect_options:nn { #1 } { #2 , #3 } } -\cs_generate_variant:Nn \seq_set_split:Nnn { N x x } +\cs_generate_variant:Nn \seq_set_split:Nnn { N e e } +\cs_generate_variant:Nn \keys_precompile:nnN { n n c } +\prg_generate_conditional_variant:Nnn \tl_if_novalue:n { o } { F } +\exp_args_generate:n { N N N n o } \cs_new_protected:Npn \__witharrows_sort_seq:N #1 { \seq_sort:Nn #1 @@ -143,15 +158,15 @@ \cs_new_protected:Npn \__witharrows_set_seq_of_str_from_clist:Nn #1 #2 { \seq_set_from_clist:Nn #1 { #2 } - \seq_set_map_x:NNn #1 #1 { \tl_to_str:n { ##1 } } + \seq_set_map_e:NNn #1 #1 { \tl_to_str:n { ##1 } } } \cs_new_protected:Npn \__witharrows_save:N #1 { - \seq_set_split:Nxx \l_tmpa_seq + \seq_set_split:Nee \l_tmpa_seq { \char_generate:nn { `_ } { 12 } } { \cs_to_str:N #1 } \seq_pop_left:NN \l_tmpa_seq \l_tmpa_tl - \str_set:Nx \l_tmpa_str { \seq_item:Nn \l_tmpa_seq { -1 } } + \str_set:Ne \l_tmpa_str { \seq_item:Nn \l_tmpa_seq { -1 } } \use:c { \l_tmpa_str _if_exist:cF } { g _\seq_use:Nnnn \l_tmpa_seq _ _ _ } { @@ -163,11 +178,11 @@ } \cs_new_protected:Npn \__witharrows_restore:N #1 { - \seq_set_split:Nxx \l_tmpa_seq + \seq_set_split:Nee \l_tmpa_seq { \char_generate:nn { `_ } { 12 } } { \cs_to_str:N #1 } \seq_pop_left:NN \l_tmpa_seq \l_tmpa_tl - \str_set:Nx \l_tmpa_str { \seq_item:Nn \l_tmpa_seq { -1 } } + \str_set:Ne \l_tmpa_str { \seq_item:Nn \l_tmpa_seq { -1 } } \use:c { \l_tmpa_str _set_eq:Nc } #1 { g_\seq_use:Nnnn \l_tmpa_seq _ _ _ } } @@ -258,13 +273,13 @@ \clist_set:Nn \l__witharrows_tags_clist { all } \cs_new_protected:Npn \__witharrows_test_if_to_tag: { - \clist_if_in:NVT \l__witharrows_tags_clist \g__witharrows_line_int + \clist_if_in:NoT \l__witharrows_tags_clist \g__witharrows_line_int { \clist_set:Nn \l__witharrows_tags_clist { all } } } \str_new:N \l__witharrows_command_name_str \str_set:Nn \l__witharrows_command_name_str { Arrow } \str_new:N \l__witharrows_string_Arrow_for_msg_str -\str_set:Nx \l__witharrows_string_Arrow_for_msg_str { \token_to_str:N \Arrow } +\str_set:Ne \l__witharrows_string_Arrow_for_msg_str { \token_to_str:N \Arrow } \seq_new:N \g__witharrows_names_seq \bool_new:N \l__witharrows_sbwi_bool \bool_new:N \l__witharrows_tag_star_bool @@ -315,7 +330,7 @@ more-columns .value_forbidden:n = true , command-name .code:n = \str_set:Nn \l__witharrows_command_name_str { #1 } - \str_set:Nx \l__witharrows_string_Arrow_for_msg_str + \str_set:Ne \l__witharrows_string_Arrow_for_msg_str { \c_backslash_str Arrow~alias~\c_backslash_str #1 } , command-name .value_required:n = true , tikz-code .tl_set:N = \l__witharrows_tikz_code_tl , @@ -335,7 +350,7 @@ \int_set:Nn \l__witharrows_pos_arrow_int 7 } { \__witharrows_error:n { Incompatible~options } } , - group .value_forbidden:n = true , + group .value_forbidden:n = true , groups .code:n = \str_if_empty:NTF \l__witharrows_previous_key_str { @@ -348,7 +363,6 @@ { \__witharrows_error:n { Incompatible~options } } , groups .value_forbidden:n = true , tikz .code:n = \tikzset { WithArrows / arrow / .append~style = { #1 } } , - tikz .initial:n = \c_empty_tl , tikz .value_required:n = true , rr .code:n = \__witharrows_fix_pos_option:n 3 , rr .value_forbidden:n = true , @@ -400,8 +414,8 @@ \AtBeginDocument { \bool_set_false:N \l_tmpa_bool - \IfPackageLoadedTF { amsmath } { \bool_set_true:N \l_tmpa_bool } { } - \IfPackageLoadedTF { unicode-math } { \bool_set_true:N \l_tmpa_bool } { } + \IfPackageLoadedT { amsmath } { \bool_set_true:N \l_tmpa_bool } + \IfPackageLoadedT { unicode-math } { \bool_set_true:N \l_tmpa_bool } \bool_if:NT \l_tmpa_bool { \clist_put_right:Nn \c__witharrows_ext_delimiters_clist { \lvert, \lVert } } } @@ -445,8 +459,8 @@ wrap-lines .default:n = true , replace-left-brace-by .code:n = { - \tl_set:Nx \l_tmpa_tl { \tl_head:n { #1 } } - \clist_if_in:NVTF + \tl_set:Ne \l_tmpa_tl { \tl_head:n { #1 } } + \clist_if_in:NoTF \c__witharrows_ext_delimiters_clist \l_tmpa_tl { \tl_set:Nn \l__witharrows_replace_left_brace_by_tl { #1 } } @@ -460,9 +474,9 @@ { name .code:n = \str_set:Nn \l_tmpa_str { #1 } - \seq_if_in:NVTF \g__witharrows_names_seq \l_tmpa_str + \seq_if_in:NoTF \g__witharrows_names_seq \l_tmpa_str { \__witharrows_error:n { Duplicate~name } } - { \seq_gput_left:NV \g__witharrows_names_seq \l_tmpa_str } + { \seq_gput_left:No \g__witharrows_names_seq \l_tmpa_str } \str_set_eq:NN \l__witharrows_name_str \l_tmpa_str , name .value_required:n = true , code-before .code:n = \tl_put_right:Nn \l__witharrows_code_before_tl { #1 } , @@ -566,7 +580,7 @@ } \cs_new_protected:Npn \__witharrows_set_independent: { - \str_if_eq:VnF \l_keys_value_tl { NoValue } + \str_if_eq:onF \l_keys_value_tl { NoValue } { \__witharrows_error:n { Value~for~a~key } } \__witharrows_set_independent_bis: } @@ -582,7 +596,7 @@ \keys_define:nn { WithArrows / Arrow / FirstPass } { jump .code:n = - \int_compare:nTF { #1 > 0 } + \int_compare:nNnTF { #1 } > \c_zero_int { \int_set:Nn \l__witharrows_jump_int { #1 } } { \__witharrows_error:n { Negative~jump } } , jump .value_required:n = true, @@ -625,7 +639,7 @@ xoffset .code:n = , unknown .code:n = \__witharrows_sort_seq:N \l__witharrows_options_Arrow_seq - \seq_if_in:NVTF \l__witharrows_options_WithArrows_seq \l_keys_key_str + \seq_if_in:NoTF \l__witharrows_options_WithArrows_seq \l_keys_key_str { \str_set:Nn \l_tmpa_str { ~However,~this~key~can~be~used~in~the~options~of~{WithArrows}. } @@ -652,7 +666,6 @@ tikz-code .tl_set:N = \l__witharrows_tikz_code_tl , tikz-code .initial:n = \draw~(#1)~to~node{#3}~(#2)~; , tikz .code:n = \tikzset { WithArrows / arrow / .append~style = { #1 } } , - tikz .initial:n = \c_empty_tl , rr .code:n = \__witharrows_fix_pos_arrow:n 3 , ll .code:n = \__witharrows_fix_pos_arrow:n 1 , rl .code:n = \__witharrows_fix_pos_arrow:n 2 , @@ -660,13 +673,11 @@ i .code:n = \__witharrows_fix_pos_arrow:n 5 , o .code:n = \str_set:Nn \l__witharrows_previous_key_str { o } , xoffset .code:n = - \bool_if:nTF + \bool_lazy_all:nTF { - \int_compare_p:nNn \g__witharrows_arrow_int > 1 - && - \int_compare_p:nNn \l__witharrows_pos_arrow_int > 5 - && - ! \str_if_eq_p:Vn \l__witharrows_status_arrow_str { independent } + { \int_compare_p:nNn \g__witharrows_arrow_int > 1 } + { \int_compare_p:nNn \l__witharrows_pos_arrow_int > 5 } + { ! \str_if_eq_p:on \l__witharrows_status_arrow_str { independent } } } { \__witharrows_error:n { Option~xoffset~forbidden } } { \dim_set:Nn \l__witharrows_xoffset_dim { #1 } } , @@ -683,8 +694,21 @@ \keys_set:nn { WithArrows / WithArrowsOptions } { #1 } } \cs_new_protected:Npn \__witharrows_Arrow - { \__witharrows_collect_options:n { \__witharrows_Arrow_i } } -\NewDocumentCommand \__witharrows_Arrow_i { m m ! O { } } + { \__witharrows_collect_options:n { \__witharrows_Arrow_iii } } +\bool_if:NTF \g__witharrows_beamer_bool + { + \NewDocumentCommand \__witharrows_Arrow_iii { m d < > m ! O { } } + { + \tl_if_novalue:nTF { #2 } + { \__witharrows_Arrow_ii { #1 } { #3 } [ #4 ] } + { \only <#2> { \__witharrows_Arrow_ii { #1 } { #3 } [ #4 ] } } + } + } + { + \NewDocumentCommand \__witharrows_Arrow_iii { m m ! O { } } + { \__witharrows_Arrow_ii { #1 } { #2 } [ #3 ] } + } +\NewDocumentCommand \__witharrows_Arrow_ii { m m ! O { } } { \int_gincr:N \g__witharrows_arrow_int \str_clear_new:N \l__witharrows_previous_key_str @@ -692,10 +716,10 @@ \prop_put:NnV \l_tmpa_prop { initial } \g__witharrows_line_int \int_set:Nn \l_tmpa_int { \g__witharrows_line_int + \l__witharrows_jump_int } \prop_put:NnV \l_tmpa_prop { final } \l_tmpa_int - \prop_put:NnV \l_tmpa_prop { status } \l__witharrows_status_arrow_str + \prop_put:Nno \l_tmpa_prop { status } \l__witharrows_status_arrow_str \prop_put:Nnn \l_tmpa_prop { options } { #1 , #3 } \prop_put:Nnn \l_tmpa_prop { label } { #2 } - \prop_put:Nnx \l_tmpa_prop { input-line } \msg_line_number: + \prop_put:Nne \l_tmpa_prop { input-line } \msg_line_number: \prop_put:Nnn \l_tmpa_prop { width } { 0 pt } \prop_gclear_new:c { g__witharrows_arrow _ \l__witharrows_prefix_str _ \int_use:N \g__witharrows_arrow_int _ prop } @@ -728,7 +752,7 @@ \seq_set_eq:NN \l_tmpa_seq \g__witharrows_position_in_the_tree_seq \seq_pop_right:NN \l_tmpa_seq \l_tmpa_tl \str_clear_new:N \l__witharrows_prefix_str - \str_set:Nx \l__witharrows_prefix_str { \seq_use:Nnnn \l_tmpa_seq - - - } + \str_set:Ne \l__witharrows_prefix_str { \seq_use:Nnnn \l_tmpa_seq - - - } \cs_set_eq:NN \\ \__witharrows_cr: \dim_zero:N \mathsurround \int_zero_new:N \l__witharrows_initial_int @@ -784,30 +808,30 @@ \bool_if:NT \l__witharrows_in_DispWithArrows_bool { \__witharrows_test_if_to_tag: - \IfPackageLoadedTF { amsmath } { \__witharrows_set_qedhere: } { } + \IfPackageLoadedT { amsmath } { \__witharrows_set_qedhere: } } } - \str_if_eq:VnT \l__witharrows_type_col_str { c } \hfil - \str_if_eq:VnT \l__witharrows_type_col_str { C } \hfil - \str_if_eq:VnT \l__witharrows_type_col_str { r } \hfill - \str_if_eq:VnT \l__witharrows_type_col_str { R } \hfill + \str_if_eq:onT \l__witharrows_type_col_str { c } \hfil + \str_if_eq:onT \l__witharrows_type_col_str { C } \hfil + \str_if_eq:onT \l__witharrows_type_col_str { r } \hfill + \str_if_eq:onT \l__witharrows_type_col_str { R } \hfill \int_gincr:N \g__witharrows_col_int \int_gset:Nn \g__witharrows_static_col_int { \int_use:N \g__witharrows_col_int } \c_math_toggle_token - \str_if_eq:VnT \l__witharrows_type_col_str { C } { { } } - \str_if_eq:VnT \l__witharrows_type_col_str { L } { { } } + \str_if_eq:onT \l__witharrows_type_col_str { C } { { } } + \str_if_eq:onT \l__witharrows_type_col_str { L } { { } } \bool_if:NT \l__witharrows_displaystyle_bool \displaystyle ## - \str_if_eq:VnT \l__witharrows_type_col_str { C } { { } } - \str_if_eq:VnT \l__witharrows_type_col_str { R } { { } } + \str_if_eq:onT \l__witharrows_type_col_str { C } { { } } + \str_if_eq:onT \l__witharrows_type_col_str { R } { { } } \c_math_toggle_token \int_compare:nNnTF \g__witharrows_col_int = \l__witharrows_nb_cols_int \__witharrows_construct_nodes: { - \str_if_eq:VnT \l__witharrows_type_col_str { l } \hfil - \str_if_eq:VnT \l__witharrows_type_col_str { L } \hfil - \str_if_eq:VnT \l__witharrows_type_col_str { c } \hfil - \str_if_eq:VnT \l__witharrows_type_col_str { C } \hfil + \str_if_eq:onT \l__witharrows_type_col_str { l } \hfil + \str_if_eq:onT \l__witharrows_type_col_str { L } \hfil + \str_if_eq:onT \l__witharrows_type_col_str { c } \hfil + \str_if_eq:onT \l__witharrows_type_col_str { C } \hfil \bool_if:NT \l__witharrows_in_DispWithArrows_bool { \tabskip = \c_zero_skip } & } @@ -913,7 +937,7 @@ { \cs_set:Npn \WithArrowsRightX { \g__witharrows_right_x_dim } \normalbaselines - \int_compare:nNnT \g__witharrows_arrow_int > 0 + \int_if_zero:nF \g__witharrows_arrow_int { \int_compare:nNnT \g__witharrows_arrow_int = 1 { @@ -932,7 +956,7 @@ \group_end: \seq_gpop_right:NN \g__witharrows_position_in_the_tree_seq \l_tmpa_tl \seq_gpop_right:NN \g__witharrows_position_in_the_tree_seq \l_tmpa_tl - \seq_gput_right:Nx \g__witharrows_position_in_the_tree_seq + \seq_gput_right:Ne \g__witharrows_position_in_the_tree_seq { \int_eval:n { \l_tmpa_tl + 1 } } \int_compare:nNnT { \seq_count:N \g__witharrows_position_in_the_tree_seq } = 1 { \int_gincr:N \g__witharrows_last_env_int } @@ -976,19 +1000,18 @@ \clist_if_in:NnTF \l__witharrows_tags_clist { all } { \tl_if_empty:NT \l__witharrows_tag_tl { \int_gincr:N \c@equation } - \cs_gset:Npx \g_tmpa_tl + \cs_gset:Npe \g_tmpa_tl { \tl_if_empty:NTF \l__witharrows_tag_tl \theequation \l__witharrows_tag_tl } \seq_if_empty:NF \l__witharrows_labels_seq { - \cs_set:Npx \@currentlabel { \p@equation \g_tmpa_tl } - \IfPackageLoadedTF { hyperref } + \cs_set:Npe \@currentlabel { \p@equation \g_tmpa_tl } + \IfPackageLoadedT { hyperref } { % the following line is probably pointless (2022/05/16) % \str_set:Nn \This@name { equation } \hyper@refstepcounter { equation } } - { } - \IfPackageLoadedTF { cleveref } + \IfPackageLoadedT { cleveref } { \cref@constructprefix { equation } \cref@result \protected@edef \cref@currentlabel @@ -1002,7 +1025,6 @@ \p@equation \g_tmpa_tl } } - { } \seq_map_function:NN \l__witharrows_labels_seq \__witharrows_old_label } \__witharrows_save:N \l__witharrows_tag_star_bool @@ -1017,7 +1039,7 @@ \__witharrows_restore:N \l__witharrows_tag_star_bool \__witharrows_restore:N \l__witharrows_qedhere_bool \bool_if:NT \l__witharrows_qedhere_bool - { \hbox_overlap_left:n \__witharrows_qedhere_i: } + { \hbox_overlap_left:n \__witharrows_qedhere_i: } \cs_set_eq:NN \theequation \g_tmpa_tl \bool_if:NT \l__witharrows_tag_star_bool { \cs_set_eq:NN \tagform@ \prg_do_nothing: } @@ -1050,7 +1072,7 @@ & \__witharrows_restore:N \l__witharrows_qedhere_bool \bool_if:NT \l__witharrows_qedhere_bool - { \hbox_overlap_left:n \__witharrows_qedhere_i: } + { \hbox_overlap_left:n \__witharrows_qedhere_i: } \pgfpicture \pgfrememberpicturepositiononpagetrue \pgfcoordinate @@ -1073,7 +1095,7 @@ } \cs_new_protected:Npn \__witharrows_analyze_end:Nn #1 #2 { - \str_if_eq:VnT \l__witharrows_type_env_str { #2 } + \str_if_eq:onT \l__witharrows_type_env_str { #2 } { \__witharrows_error:n { newline~at~the~end~of~env } \group_begin: @@ -1094,7 +1116,7 @@ \legacy_if:nT { @minipage } { \bool_set_true:N \l__witharrows_in_label_or_minipage_bool } } - \IfPackageLoadedTF { mathtools } + \IfPackageLoadedT { mathtools } { \MH_if_boolean:nT { show_only_refs } { @@ -1102,12 +1124,11 @@ \MH_set_boolean_T:n { show_only_refs } } } - { } - \IfPackageLoadedTF { typedref } + \IfPackageLoadedT { typedref } { \str_set:Nn \sr@name { equation } } - { } - \IfPackageLoadedTF { amsmath } { \intertext@ } { } - \exp_args:No \tl_if_novalue:nF { #1 } { \tl_set:Nn \l__witharrows_left_brace_tl { #1 } } + \IfPackageLoadedT { amsmath } { \intertext@ } + \tl_if_novalue:oF { #1 } + { \cs_set_nopar:Npn \l__witharrows_left_brace_tl { #1 } } \__witharrows_pre_halign:n { #2 } \bool_if:NT \l__witharrows_subequations_bool { \begin { subequations } } \tl_if_eq:NNF \l__witharrows_left_brace_tl \c_novalue_tl @@ -1144,7 +1165,7 @@ \fi: \bool_if:NTF \l__witharrows_in_label_or_minipage_bool { - \noindent % added in v. 2.6d + \noindent \c_math_toggle_token } { @@ -1156,8 +1177,8 @@ } \dim_zero_new:N \l__witharrows_linewidth_dim \bool_if:NTF \l__witharrows_in_label_or_minipage_bool - { \dim_set_eq:NN \l__witharrows_linewidth_dim \linewidth } - { \dim_set_eq:NN \l__witharrows_linewidth_dim \displaywidth } + { \dim_set_eq:NN \l__witharrows_linewidth_dim \linewidth } + { \dim_set_eq:NN \l__witharrows_linewidth_dim \displaywidth } \box_clear_new:N \l__witharrows_halign_box \setbox \l__witharrows_halign_box \vtop \bgroup \tabskip = @@ -1242,9 +1263,8 @@ } \endpgfpicture \__witharrows_post_halign: - \IfPackageLoadedTF { mathtools } + \IfPackageLoadedT { mathtools } { \MH_if_boolean:nT { show_only_refs } \MT_showonlyrefs_true: } - { } \bool_if:NTF \l__witharrows_in_label_or_minipage_bool { \c_math_toggle_token @@ -1282,7 +1302,7 @@ \tl_if_empty:NF \l__witharrows_tag_tl { \__witharrows_error:nn { Multiple~tags } { #2 } } \clist_set:Nn \l__witharrows_tags_clist { all } - \IfPackageLoadedTF { mathtools } + \IfPackageLoadedT { mathtools } { \MH_if_boolean:nT { show_only_refs } { @@ -1290,13 +1310,11 @@ { \clist_clear:N \l__witharrows_tags_clist } } } - { } \tl_set:Nn \l__witharrows_tag_tl { #2 } \bool_set:Nn \l__witharrows_tag_star_bool { #1 } \bool_if:nT { #1 } { - \IfPackageLoadedTF { amsmath } - { } + \IfPackageLoadedF { amsmath } { \__witharrows_error:n { tag*~without~amsmath } } } } @@ -1312,7 +1330,7 @@ { \__witharrows_error:n { Multiple~labels } } } \seq_put_right:Nn \l__witharrows_labels_seq { #1 } - \IfPackageLoadedTF { mathtools } + \IfPackageLoadedT { mathtools } { \MH_if_boolean:nT { show_only_refs } { @@ -1321,14 +1339,12 @@ { \clist_clear:N \l__witharrows_tags_clist } } } - { } - \IfPackageLoadedTF { autonum } + \IfPackageLoadedT { autonum } { \cs_if_exist:cTF { autonum@#1Referenced } { \clist_set:Nn \l__witharrows_tags_clist { all } } { \clist_clear:N \l__witharrows_tags_clist } } - { } } } \cs_new_protected:Npn \__witharrows_tagnextline: @@ -1390,12 +1406,9 @@ \__witharrows_treat_an_arrow_in_scan: \int_incr:N \l__witharrows_arrow_int } - \bool_if:nT - { - ! \int_compare_p:nNn \l__witharrows_pos_arrow_int = 7 - && - \int_compare_p:nNn \l__witharrows_first_arrow_of_group_int > 0 - } + \bool_lazy_and:nnT + { ! \int_compare_p:nNn \l__witharrows_pos_arrow_int = 7 } + { \int_compare_p:nNn \l__witharrows_first_arrow_of_group_int > \c_zero_int } { \__witharrows_draw_arrows:nn \l__witharrows_first_arrow_of_group_int \g__witharrows_arrow_int } } \cs_new_protected:Npn \__witharrows_treat_an_arrow_in_scan: @@ -1412,10 +1425,10 @@ } { \bool_not_p:n { \int_compare_p:nNn \l__witharrows_pos_arrow_int = 7 } } } - { \str_if_eq_p:Vn \l__witharrows_status_arrow_str { new-group } } + { \str_if_eq_p:on \l__witharrows_status_arrow_str { new-group } } } { - \int_compare:nNnF \l__witharrows_first_arrow_of_group_int = \c_zero_int + \int_if_zero:nF \l__witharrows_first_arrow_of_group_int { \__witharrows_draw_arrows:nn \l__witharrows_first_arrow_of_group_int @@ -1437,10 +1450,9 @@ { \dim_set:Nn \l__witharrows_x_dim { - \c_max_dim } } } { - \str_if_eq:VnF \l__witharrows_status_arrow_str { independent } + \str_if_eq:onF \l__witharrows_status_arrow_str { independent } { - \int_compare:nT - { \l__witharrows_initial_int = \l__witharrows_first_line_of_group_int } + \int_compare:nNnT \l__witharrows_initial_int = \l__witharrows_first_line_of_group_int { \seq_put_left:NV \l__witharrows_first_arrows_seq \l__witharrows_arrow_int } \int_compare:nNnTF \l__witharrows_final_int > \l__witharrows_last_line_of_group_int { @@ -1454,15 +1466,12 @@ } } } - \str_if_eq:VnF \l__witharrows_status_arrow_str { independent } + \str_if_eq:onF \l__witharrows_status_arrow_str { independent } { \int_compare:nNnF \l__witharrows_pos_arrow_int = 8 { \__witharrows_update_x:nn \l__witharrows_initial_int \l__witharrows_final_int } } } -\cs_generate_variant:Nn \keys_set:nn { n o } -\cs_new_protected:Npn \__witharrows_keys_set: - { \keys_set_known:no { WithArrows / Arrow / SecondPass } } \cs_new_protected:Npn \__witharrows_draw_arrows:nn #1 #2 { \group_begin: @@ -1486,7 +1495,7 @@ { status } \l__witharrows_status_arrow_str \int_compare:nNnF \l__witharrows_final_int > \g__witharrows_line_int { - \str_if_eq:VnTF \l__witharrows_status_arrow_str { over } + \str_if_eq:onTF \l__witharrows_status_arrow_str { over } { \seq_put_right:NV \l__witharrows_o_arrows_seq \l__witharrows_arrow_int } \__witharrows_draw_arrow: } @@ -1500,10 +1509,13 @@ \group_begin: \prop_get:cnN { g__witharrows_arrow _\l__witharrows_prefix_str _ \int_use:N \l__witharrows_arrow_int _ prop } - { options } \l_tmpa_tl + { options } + \l_tmpa_tl \str_clear_new:N \l__witharrows_previous_key_str - \exp_args:NNo \exp_args:No - \__witharrows_keys_set: { \l_tmpa_tl , tikz = { xshift = \l__witharrows_xoffset_dim } } + \exp_args:NNNno \exp_args:NNno \exp_args:Nno + \keys_set_known:nn + { WithArrows / Arrow / SecondPass } + { \l_tmpa_tl , tikz = { xshift = \l__witharrows_xoffset_dim } } \bool_set_false:N \l__witharrows_initial_r_bool \bool_set_false:N \l__witharrows_final_r_bool \int_case:nn \l__witharrows_pos_arrow_int @@ -1521,19 +1533,19 @@ \dim_set:Nn \l__witharrows_x_dim { - \c_max_dim } \__witharrows_update_x:nn \l__witharrows_initial_int \l__witharrows_final_int } - \tl_set:Nx \l__witharrows_initial_tl + \tl_set:Ne \l__witharrows_initial_tl { \int_use:N \l__witharrows_initial_int - \bool_if:NTF \l__witharrows_initial_r_bool rl } - \tl_set:Nx \l__witharrows_final_tl + \tl_set:Ne \l__witharrows_final_tl { \int_use:N \l__witharrows_final_int - \bool_if:NTF \l__witharrows_final_r_bool rl } \prop_get:cnN { g__witharrows_arrow _ \l__witharrows_prefix_str _ \int_use:N \l__witharrows_arrow_int _ prop } { label } \l_tmpa_tl - \seq_if_in:NxTF \l__witharrows_first_arrows_seq + \seq_if_in:NeTF \l__witharrows_first_arrows_seq { \int_use:N \l__witharrows_arrow_int } { \bool_set_true:N \l_tmpa_bool } { \bool_set_false:N \l_tmpa_bool } - \seq_if_in:NxTF \l__witharrows_last_arrows_seq + \seq_if_in:NeTF \l__witharrows_last_arrows_seq { \int_use:N \l__witharrows_arrow_int } { \bool_set_true:N \l_tmpb_bool } { \bool_set_false:N \l_tmpb_bool } @@ -1562,7 +1574,7 @@ } { \int_compare_p:nNn { \l__witharrows_final_int - \l__witharrows_initial_int } = 1 } { - \tl_gset:Nx \g_tmpa_tl + \tl_gset:Ne \g_tmpa_tl { \int_compare:nNnTF \l__witharrows_pos_arrow_int < 5 { \dim_use:N \g__witharrows_x_initial_dim } @@ -1573,7 +1585,7 @@ + 0.5 \l__witharrows_max_length_of_arrow_dim } } - \tl_gset:Nx \g_tmpb_tl + \tl_gset:Ne \g_tmpb_tl { \int_compare:nNnTF \l__witharrows_pos_arrow_int < 5 { \dim_use:N \g__witharrows_x_final_dim } @@ -1586,7 +1598,7 @@ } } { - \tl_gset:Nx \g_tmpa_tl + \tl_gset:Ne \g_tmpa_tl { \int_compare:nNnTF \l__witharrows_pos_arrow_int < 5 { \dim_use:N \g__witharrows_x_initial_dim } @@ -1595,7 +1607,7 @@ { \dim_eval:n { \g__witharrows_y_initial_dim + \l__witharrows_start_adjust_dim } } { \dim_use:N \g__witharrows_y_initial_dim } } - \tl_gset:Nx \g_tmpb_tl + \tl_gset:Ne \g_tmpb_tl { \int_compare:nNnTF \l__witharrows_pos_arrow_int < 5 { \dim_use:N \g__witharrows_x_final_dim } @@ -1627,9 +1639,10 @@ \__witharrows_draw_arrow:nno \g_tmpa_tl \g_tmpb_tl \l_tmpa_tl \group_end: } -\cs_new_protected:Npn \__witharrows_def_function_tmpa:n #1 +\cs_generate_variant:Nn \__witharrows_def_function_arrow:n { o } +\cs_new_protected:Npn \__witharrows_def_function_arrow:n #1 { - \cs_set:Npn \__witharrows_tmpa:nnn ##1 ##2 ##3 + \cs_set:Npn \__witharrows_arrow:nnn ##1 ##2 ##3 { \begin{tikzpicture} [ __witharrows_standard_arrow ] @@ -1639,10 +1652,13 @@ { \dim_zero:N \l_tmpa_dim } { \dim_set:Nn \l_tmpa_dim { \pgf@picmaxx - \pgf@picminx } } \dim_add:Nn \l_tmpa_dim \l__witharrows_xoffset_dim - \prop_gput:cnV - { g__witharrows_arrow _ \l__witharrows_prefix_str _ \int_use:N \l__witharrows_arrow_int _ prop } - { width } - \l_tmpa_dim + \int_compare:nNnT \l__witharrows_arrow_int > 0 % added 2024/10/01 + { + \prop_gput:cnV + { g__witharrows_arrow _ \l__witharrows_prefix_str _ \int_use:N \l__witharrows_arrow_int _ prop } + { width } + \l_tmpa_dim + } \bool_if:NF \l__witharrows_right_overlap_bool { \bool_if:NT \l__witharrows_in_WithArrows_bool @@ -1659,21 +1675,21 @@ \end{tikzpicture} } } +\cs_generate_variant:Nn \__witharrows_draw_arrow:nnn { n n o } \cs_new_protected:Npn \__witharrows_draw_arrow:nnn #1 #2 #3 { \bool_lazy_and:nnT \l__witharrows_wrap_lines_bool \l__witharrows_in_DispWithArrows_bool { \tl_set_eq:NN \l__witharrows_tikz_code_tl \c__witharrows_tikz_code_wrap_lines_tl } - \exp_args:NV \__witharrows_def_function_tmpa:n \l__witharrows_tikz_code_tl - \__witharrows_tmpa:nnn { #1 } { #2 } { #3 } + \__witharrows_def_function_arrow:o \l__witharrows_tikz_code_tl + \__witharrows_arrow:nnn { #1 } { #2 } { #3 } } -\cs_generate_variant:Nn \__witharrows_draw_arrow:nnn { n n o } \tl_const:Nn \c__witharrows_tikz_code_wrap_lines_tl { - \pgfset { inner~sep = 0pt} + \pgfset { inner~sep = 0pt } \draw ( #1 ) to node ( __witharrows_label ) { } ( #2 ) ; \pgfpointanchor { wa - \l__witharrows_prefix_str - __witharrows_label } { west } - \dim_set:Nn \l_tmpa_dim { \g__witharrows_right_x_dim - \pgf@x - 0.3333 ex } - \path \pgfextra { \tl_gset:Nx \g_tmpa_tl \tikz@text@width } ; + \dim_set:Nn \l_tmpa_dim { \g__witharrows_right_x_dim - \pgf@x - 0.33333 em } + \path \pgfextra { \tl_gset:Ne \g_tmpa_tl \tikz@text@width } ; \tl_if_empty:NF \g_tmpa_tl { \dim_set:Nn \l_tmpb_dim \g_tmpa_tl @@ -1685,7 +1701,7 @@ \path ( __witharrows_label.west ) node [ anchor = west ] { - \skip_horizontal:n { 0.3333 ex } + \skip_horizontal:n { 0.33333 em } \begin { minipage } { \l_tmpa_dim } \tikz@text@action \pgfkeysgetvalue { / tikz / node~halign~header } \l_tmpa_tl @@ -1773,12 +1789,12 @@ \prop_get:cnN { g__witharrows_arrow _ \l__witharrows_prefix_str _ ####1 _ prop } { status } \l__witharrows_status_arrow_str - \bool_if:nT + \bool_lazy_any:nF { - ! \int_compare_p:n { ##1 = ####1 } - && \int_compare_p:n { \l__witharrows_initial_int <= \l_tmpa_tl } - && \int_compare_p:n { \l_tmpb_tl <= \l__witharrows_final_int } - && ! \str_if_eq_p:Vn \l__witharrows_status_arrow_str { independent } + { \int_compare_p:n { ##1 = ####1 } } + { \int_compare_p:nNn \l__witharrows_initial_int > \l_tmpa_tl } + { \int_compare_p:nNn \l_tmpb_tl > \l__witharrows_final_int } + { \str_if_eq_p:on \l__witharrows_status_arrow_str { independent } } } { \bool_gset_true:N \g_tmpa_bool @@ -1806,22 +1822,22 @@ { tikz .code:n = \tikzset { WithArrows / arrow / .append~style = { #1 } } , - tikz .value_required:n = true , - rr .value_forbidden:n = true , - rr .code:n = \__witharrows_fix_pos_option:n 0 , - ll .value_forbidden:n = true, - ll .code:n = \__witharrows_fix_pos_option:n 1 , - rl .value_forbidden:n = true , - rl .code:n = \__witharrows_fix_pos_option:n 2 , - lr .value_forbidden:n = true , - lr .code:n = \__witharrows_fix_pos_option:n 3 , - v .value_forbidden:n = true , - v .code:n = \__witharrows_fix_pos_option:n 4 , + tikz .value_required:n = true , + rr .value_forbidden:n = true , + rr .code:n = \__witharrows_fix_pos_option:n 0 , + ll .value_forbidden:n = true, + ll .code:n = \__witharrows_fix_pos_option:n 1 , + rl .value_forbidden:n = true , + rl .code:n = \__witharrows_fix_pos_option:n 2 , + lr .value_forbidden:n = true , + lr .code:n = \__witharrows_fix_pos_option:n 3 , + v .value_forbidden:n = true , + v .code:n = \__witharrows_fix_pos_option:n 4 , tikz-code .tl_set:N = \l__witharrows_tikz_code_tl , tikz-code .value_required:n = true , - xoffset .dim_set:N = \l__witharrows_xoffset_dim , - xoffset .value_required:n = true , - unknown .code:n = + xoffset .dim_set:N = \l__witharrows_xoffset_dim , + xoffset .value_required:n = true , + unknown .code:n = \__witharrows_sort_seq:N \l__witharrows_options_Arrow_code_after_seq \__witharrows_error:n { Unknown~option~Arrow~in~code-after } } @@ -1830,7 +1846,7 @@ { ll, lr, rl, rr, tikz, tikz-code, v, x, offset } \NewDocumentCommand \__witharrows_Arrow_code_after { O { } m m m ! O { } } { - \int_set:Nn \l__witharrows_pos_arrow_int 1 + \int_set_eq:NN \l__witharrows_pos_arrow_int \c_one_int \str_clear_new:N \l__witharrows_previous_key_str \group_begin: \keys_set:nn { WithArrows / Arrow / code-after } @@ -1851,10 +1867,10 @@ { \__witharrows_error:nn { Both~lines~are~equal } { #2 } } { \cs_if_free:cTF { pgf@sh@ns@wa - \l__witharrows_prefix_str - #2 - l } - { \__witharrows_error:nx { Wrong~line~in~Arrow } { #2 } } + { \__witharrows_error:ne { Wrong~line~in~Arrow } { #2 } } { \cs_if_free:cTF { pgf@sh@ns@wa - \l__witharrows_prefix_str - #3 - l } - { \__witharrows_error:nx { Wrong~line~in~Arrow } { #3 } } + { \__witharrows_error:ne { Wrong~line~in~Arrow } { #3 } } { \int_compare:nNnTF \l__witharrows_pos_arrow_int = 4 { @@ -1868,9 +1884,9 @@ { north } \dim_set:Nn \l_tmpa_dim { \dim_max:nn \l_tmpa_dim \pgf@x } - \tl_gset:Nx \g_tmpa_tl + \tl_gset:Ne \g_tmpa_tl { \dim_use:N \l_tmpa_dim , \dim_use:N \l_tmpb_dim } - \tl_gset:Nx \g_tmpb_tl + \tl_gset:Ne \g_tmpb_tl { \dim_use:N \l_tmpa_dim , \dim_use:N \pgf@y } \endpgfpicture } @@ -1883,7 +1899,7 @@ #2 - \bool_if:NTF \l__witharrows_initial_r_bool r l } { south } - \tl_gset:Nx \g_tmpa_tl + \tl_gset:Ne \g_tmpa_tl { \dim_use:N \pgf@x , \dim_use:N \pgf@y } \pgfpointanchor { @@ -1891,7 +1907,7 @@ #3 - \bool_if:NTF \l__witharrows_final_r_bool r l } { north } - \tl_gset:Nx \g_tmpb_tl + \tl_gset:Ne \g_tmpb_tl { \dim_use:N \pgf@x , \dim_use:N \pgf@y } \endpgfpicture } @@ -1903,34 +1919,34 @@ } \cs_new_protected:Npn \__witharrows_MultiArrow:nn #1 #2 { - \exp_args:Nnx + \exp_args:Nne \regex_match:nnTF { \A \d+ (\,\d+)* ( \, \.\.\. (\,\d+)+ )* \Z } { #1 } { \__witharrows_MultiArrow_i:nn { #1 } { #2 } } - { \__witharrows_error:nx { Invalid~specification~for~MultiArrow } { #1 } } + { \__witharrows_error:ne { Invalid~specification~for~MultiArrow } { #1 } } } \cs_new_protected:Npn \__witharrows_MultiArrow_i:nn #1 #2 { \foreach \x in { #1 } { \cs_if_free:cTF { pgf@sh@ns@wa - \l__witharrows_prefix_str - \x - l } - { \__witharrows_error:nx { Wrong~line~specification~in~MultiArrow } \x } - { \clist_gput_right:Nx \g_tmpa_clist \x } + { \__witharrows_error:ne { Wrong~line~specification~in~MultiArrow } \x } + { \clist_gput_right:Ne \g_tmpa_clist \x } } \int_compare:nTF { \clist_count:N \g_tmpa_clist < 2 } { \__witharrows_error:n { Too~small~specification~for~MultiArrow } } { \clist_sort:Nn \g_tmpa_clist { - \int_compare:nTF { ##1 > ##2 } + \int_compare:nNnTF { ##1 } > { ##2 } \sort_return_swapped: \sort_return_same: } \clist_pop:NN \g_tmpa_clist \l_tmpa_tl \clist_reverse:N \g_tmpa_clist \clist_pop:NN \g_tmpa_clist \l_tmpb_tl - \exp_args:NV \__witharrows_MultiArrow_i:n \g_tmpa_clist + \exp_args:No \__witharrows_MultiArrow_i:n \g_tmpa_clist \begin { tikzpicture } [ __witharrows_standard , @@ -1943,7 +1959,7 @@ -- ([xshift = \l__witharrows_xoffset_dim]\l_tmpb_tl-r.south) ; \pgfpointanchor { wa - \l__witharrows_prefix_str - __witharrows_label } { west } \dim_set:Nn \l_tmpa_dim { 20 cm } - \path \pgfextra { \tl_gset:Nx \g_tmpa_tl \tikz@text@width } ; + \path \pgfextra { \tl_gset:Ne \g_tmpa_tl \tikz@text@width } ; \tl_if_empty:NF \g_tmpa_tl { \dim_set:Nn \l_tmpa_dim \g_tmpa_tl } \bool_lazy_and:nnT \l__witharrows_wrap_lines_bool \l__witharrows_in_DispWithArrows_bool { @@ -2305,8 +2321,8 @@ Normally,~we~can't~use~the~command~\token_to_str:N\label\ twice~in~a~line~of~the~environment~\{\l__witharrows_type_env_str\}. \\ However,~you~can~go~on.~ - \IfPackageLoadedTF { showlabels } - { However,~only~the~last~label~will~be~shown~by~showlabels.~ } { } + \IfPackageLoadedT { showlabels } + { However,~only~the~last~label~will~be~shown~by~showlabels.~ } If~you~don't~want~to~see~this~message~again,~you~can~use~the~option~ 'allow-multiple-labels'~at~the~global~or~environment~level. } @@ -2369,27 +2385,18 @@ \keyval_parse:NNn \__witharrows_valid_key:n \__witharrows_valid_key:nn { #2 } \seq_if_empty:NTF \l_tmpa_seq { - \seq_put_right:Nx \l__witharrows_options_WithArrows_seq + \seq_put_right:Ne \l__witharrows_options_WithArrows_seq { \tl_to_str:n { #1 } } - \seq_put_right:Nx \l__witharrows_options_DispWithArrows_seq + \seq_put_right:Ne \l__witharrows_options_DispWithArrows_seq { \tl_to_str:n { #1 } } - \seq_put_right:Nx \l__witharrows_options_WithArrowsOptions_seq + \seq_put_right:Ne \l__witharrows_options_WithArrowsOptions_seq { \tl_to_str:N { #1 } } - \cs_if_exist:NTF \keys_precompile:nnN - { - \keys_precompile:nnN - { WithArrows / WithArrowsOptions } - { #2 } - \l_tmpa_tl - \__witharrows_key_define:nV { #1 } \l_tmpa_tl - } - { - \keys_define:nn { WithArrows / Global } - { - #1 .code:n = - { \keys_set:nn { WithArrows / WithArrowsOptions } { #2 } } - } - } + \keys_precompile:nnc + { WithArrows / WithArrowsOptions } + { #2 } + { __witharrows _ style _ #1 _ tl } + \keys_define:nn { WithArrows / Global } + { #1 .code:n = \use:c { __witharrows _ style _ #1 _ tl } } } { \__witharrows_error:nn { Impossible~style } { #1 } } } @@ -2411,12 +2418,9 @@ \keys_if_exist:nnF { WithArrows / Global } { #1 } { \seq_put_right:Nn \l_tmpa_seq { #1 } } } -\cs_new_protected:Npn \__witharrows_key_define:nn #1 #2 - { \keys_define:nn { WithArrows / Global } { #1 .code:n = #2 } } -\cs_generate_variant:Nn \__witharrows_key_define:nn { n V } \__witharrows_msg_new:nn { Key~already~defined } { - Key~already~define.\\ + Key~already~defined.\\ The~key~'#1'~is~already~defined. \\ If~you~go~on,~your~instruction~\token_to_str:N\WithArrowsNewStyle\ will~be~ignored. @@ -2547,9 +2551,9 @@ \str_if_empty:NT \l__witharrows_previous_key_str { \str_set:Nn \l__witharrows_previous_key_str { up } - \cs_if_exist:cTF { tikz@library@calc@loaded } + \cs_if_exist:NTF \tikz@library@calc@loaded { - \keys_set:nV { WithArrows / up-and-down } \l_keys_value_tl + \keys_set:no { WithArrows / up-and-down } \l_keys_value_tl \int_set:Nn \l__witharrows_pos_arrow_int 1 \bool_set_false:N \l__witharrows_wrap_lines_bool \tl_set_eq:NN \l__witharrows_tikz_code_tl \c__witharrows_tikz_code_up_tl @@ -2560,9 +2564,9 @@ \str_if_empty:NT \l__witharrows_previous_key_str { \str_set:Nn \l__witharrows_previous_key_str { down } - \cs_if_exist:cTF { tikz@library@calc@loaded } + \cs_if_exist:NTF \tikz@library@calc@loaded { - \keys_set:nV { WithArrows / up-and-down } \l_keys_value_tl + \keys_set:no { WithArrows / up-and-down } \l_keys_value_tl \int_set:Nn \l__witharrows_pos_arrow_int 1 \bool_set_false:N \l__witharrows_wrap_lines_bool \tl_set_eq:NN \l__witharrows_tikz_code_tl \c__witharrows_tikz_code_down_tl diff --git a/Master/texmf-dist/tex/generic/witharrows/witharrows.tex b/Master/texmf-dist/tex/generic/witharrows/witharrows.tex index 1a35d068c55..014b6d96dea 100644 --- a/Master/texmf-dist/tex/generic/witharrows/witharrows.tex +++ b/Master/texmf-dist/tex/generic/witharrows/witharrows.tex @@ -6,7 +6,7 @@ %% %% witharrows.dtx (with options: `plain-TeX') %% -%% Copyright (C) 2017-2023 by F. Pantigny +%% Copyright (C) 2017-2024 by F. Pantigny %% %% This file may be distributed and/or modified under the %% conditions of the LaTeX Project Public License, either @@ -18,8 +18,9 @@ %% and version 1.3 or later is part of all distributions of %% LaTeX version 2005/12/01 or later. %% -\def\myfileversion{2.8b} -\def\myfiledate{2023/08/24} +\def\myfileversion{2.9a} +\def\myfiledate{2024/10/19} + \input tikz.tex \input expl3-generic.tex \usetikzlibrary{arrows.meta} @@ -39,15 +40,19 @@ \cs_new_protected:Npn \__witharrows_warning:n { \msg_warning:nn { witharrows } } \cs_new_protected:Npn \__witharrows_fatal:n { \msg_fatal:nn { witharrows } } \cs_new_protected:Npn \__witharrows_error:nn { \msg_error:nnn { witharrows } } -\cs_generate_variant:Nn \__witharrows_error:nn { n x } +\cs_generate_variant:Nn \__witharrows_error:nn { n e } \cs_new_protected:Npn \__witharrows_error_or_warning:n { \bool_if:NTF \c__witharrows_messages_for_Overleaf_bool \__witharrows_warning:n \__witharrows_error:n } \bool_set:Nn \c__witharrows_messages_for_Overleaf_bool { - \str_if_eq_p:Vn \c_sys_jobname_str { _region_ } % for Emacs - || \str_if_eq_p:Vn \c_sys_jobname_str { output } % for Overleaf + \str_if_eq_p:on \c_sys_jobname_str { _region_ } % for Emacs + || \str_if_eq_p:on \c_sys_jobname_str { output } % for Overleaf } -\cs_generate_variant:Nn \seq_set_split:Nnn { N x x } +\bool_new:N \g__witharrows_beamer_bool +\cs_generate_variant:Nn \seq_set_split:Nnn { N e e } +\cs_generate_variant:Nn \keys_precompile:nnN { n n c } +\prg_generate_conditional_variant:Nnn \tl_if_novalue:n { o } { F } +\exp_args_generate:n { N N N n o } \cs_new_protected:Npn \__witharrows_sort_seq:N #1 { \seq_sort:Nn #1 @@ -61,15 +66,15 @@ \cs_new_protected:Npn \__witharrows_set_seq_of_str_from_clist:Nn #1 #2 { \seq_set_from_clist:Nn #1 { #2 } - \seq_set_map_x:NNn #1 #1 { \tl_to_str:n { ##1 } } + \seq_set_map_e:NNn #1 #1 { \tl_to_str:n { ##1 } } } \cs_new_protected:Npn \__witharrows_save:N #1 { - \seq_set_split:Nxx \l_tmpa_seq + \seq_set_split:Nee \l_tmpa_seq { \char_generate:nn { `_ } { 12 } } { \cs_to_str:N #1 } \seq_pop_left:NN \l_tmpa_seq \l_tmpa_tl - \str_set:Nx \l_tmpa_str { \seq_item:Nn \l_tmpa_seq { -1 } } + \str_set:Ne \l_tmpa_str { \seq_item:Nn \l_tmpa_seq { -1 } } \use:c { \l_tmpa_str _if_exist:cF } { g _\seq_use:Nnnn \l_tmpa_seq _ _ _ } { @@ -81,11 +86,11 @@ } \cs_new_protected:Npn \__witharrows_restore:N #1 { - \seq_set_split:Nxx \l_tmpa_seq + \seq_set_split:Nee \l_tmpa_seq { \char_generate:nn { `_ } { 12 } } { \cs_to_str:N #1 } \seq_pop_left:NN \l_tmpa_seq \l_tmpa_tl - \str_set:Nx \l_tmpa_str { \seq_item:Nn \l_tmpa_seq { -1 } } + \str_set:Ne \l_tmpa_str { \seq_item:Nn \l_tmpa_seq { -1 } } \use:c { \l_tmpa_str _set_eq:Nc } #1 { g_\seq_use:Nnnn \l_tmpa_seq _ _ _ } } @@ -164,7 +169,7 @@ \str_new:N \l__witharrows_command_name_str \str_set:Nn \l__witharrows_command_name_str { Arrow } \str_new:N \l__witharrows_string_Arrow_for_msg_str -\str_set:Nx \l__witharrows_string_Arrow_for_msg_str { \token_to_str:N \Arrow } +\str_set:Ne \l__witharrows_string_Arrow_for_msg_str { \token_to_str:N \Arrow } \seq_new:N \g__witharrows_names_seq \bool_new:N \l__witharrows_in_first_columns_bool \bool_new:N \l__witharrows_new_group_bool @@ -210,7 +215,7 @@ more-columns .value_forbidden:n = true , command-name .code:n = \str_set:Nn \l__witharrows_command_name_str { #1 } - \str_set:Nx \l__witharrows_string_Arrow_for_msg_str + \str_set:Ne \l__witharrows_string_Arrow_for_msg_str { \c_backslash_str Arrow~alias~\c_backslash_str #1 } , command-name .value_required:n = true , tikz-code .tl_set:N = \l__witharrows_tikz_code_tl , @@ -230,7 +235,7 @@ \int_set:Nn \l__witharrows_pos_arrow_int 7 } { \__witharrows_error:n { Incompatible~options } } , - group .value_forbidden:n = true , + group .value_forbidden:n = true , groups .code:n = \str_if_empty:NTF \l__witharrows_previous_key_str { @@ -243,7 +248,6 @@ { \__witharrows_error:n { Incompatible~options } } , groups .value_forbidden:n = true , tikz .code:n = \tikzset { WithArrows / arrow / .append~style = { #1 } } , - tikz .initial:n = \c_empty_tl , tikz .value_required:n = true , rr .code:n = \__witharrows_fix_pos_option:n 3 , rr .value_forbidden:n = true , @@ -303,8 +307,8 @@ wrap-lines .default:n = true , replace-left-brace-by .code:n = { - \tl_set:Nx \l_tmpa_tl { \tl_head:n { #1 } } - \clist_if_in:NVTF + \tl_set:Ne \l_tmpa_tl { \tl_head:n { #1 } } + \clist_if_in:NoTF \c__witharrows_ext_delimiters_clist \l_tmpa_tl { \tl_set:Nn \l__witharrows_replace_left_brace_by_tl { #1 } } @@ -316,9 +320,9 @@ { name .code:n = \str_set:Nn \l_tmpa_str { #1 } - \seq_if_in:NVTF \g__witharrows_names_seq \l_tmpa_str + \seq_if_in:NoTF \g__witharrows_names_seq \l_tmpa_str { \__witharrows_error:n { Duplicate~name } } - { \seq_gput_left:NV \g__witharrows_names_seq \l_tmpa_str } + { \seq_gput_left:No \g__witharrows_names_seq \l_tmpa_str } \str_set_eq:NN \l__witharrows_name_str \l_tmpa_str , name .value_required:n = true , code-before .code:n = \tl_put_right:Nn \l__witharrows_code_before_tl { #1 } , @@ -419,7 +423,7 @@ } \cs_new_protected:Npn \__witharrows_set_independent: { - \str_if_eq:VnF \l_keys_value_tl { NoValue } + \str_if_eq:onF \l_keys_value_tl { NoValue } { \__witharrows_error:n { Value~for~a~key } } \__witharrows_set_independent_bis: } @@ -435,7 +439,7 @@ \keys_define:nn { WithArrows / Arrow / FirstPass } { jump .code:n = - \int_compare:nTF { #1 > 0 } + \int_compare:nNnTF { #1 } > \c_zero_int { \int_set:Nn \l__witharrows_jump_int { #1 } } { \__witharrows_error:n { Negative~jump } } , jump .value_required:n = true, @@ -478,7 +482,7 @@ xoffset .code:n = , unknown .code:n = \__witharrows_sort_seq:N \l__witharrows_options_Arrow_seq - \seq_if_in:NVTF \l__witharrows_options_WithArrows_seq \l_keys_key_str + \seq_if_in:NoTF \l__witharrows_options_WithArrows_seq \l_keys_key_str { \str_set:Nn \l_tmpa_str { ~However,~this~key~can~be~used~in~the~options~of~{WithArrows}. } @@ -505,7 +509,6 @@ tikz-code .tl_set:N = \l__witharrows_tikz_code_tl , tikz-code .initial:n = \draw~(#1)~to~node{#3}~(#2)~; , tikz .code:n = \tikzset { WithArrows / arrow / .append~style = { #1 } } , - tikz .initial:n = \c_empty_tl , rr .code:n = \__witharrows_fix_pos_arrow:n 3 , ll .code:n = \__witharrows_fix_pos_arrow:n 1 , rl .code:n = \__witharrows_fix_pos_arrow:n 2 , @@ -513,13 +516,11 @@ i .code:n = \__witharrows_fix_pos_arrow:n 5 , o .code:n = \str_set:Nn \l__witharrows_previous_key_str { o } , xoffset .code:n = - \bool_if:nTF + \bool_lazy_all:nTF { - \int_compare_p:nNn \g__witharrows_arrow_int > 1 - && - \int_compare_p:nNn \l__witharrows_pos_arrow_int > 5 - && - ! \str_if_eq_p:Vn \l__witharrows_status_arrow_str { independent } + { \int_compare_p:nNn \g__witharrows_arrow_int > 1 } + { \int_compare_p:nNn \l__witharrows_pos_arrow_int > 5 } + { ! \str_if_eq_p:on \l__witharrows_status_arrow_str { independent } } } { \__witharrows_error:n { Option~xoffset~forbidden } } { \dim_set:Nn \l__witharrows_xoffset_dim { #1 } } , @@ -555,10 +556,10 @@ \prop_put:NnV \l_tmpa_prop { initial } \g__witharrows_line_int \int_set:Nn \l_tmpa_int { \g__witharrows_line_int + \l__witharrows_jump_int } \prop_put:NnV \l_tmpa_prop { final } \l_tmpa_int - \prop_put:NnV \l_tmpa_prop { status } \l__witharrows_status_arrow_str + \prop_put:Nno \l_tmpa_prop { status } \l__witharrows_status_arrow_str \prop_put:Nnn \l_tmpa_prop { options } { #1 , #3 } \prop_put:Nnn \l_tmpa_prop { label } { #2 } - \prop_put:Nnx \l_tmpa_prop { input-line } \msg_line_number: + \prop_put:Nne \l_tmpa_prop { input-line } \msg_line_number: \prop_put:Nnn \l_tmpa_prop { width } { 0 pt } \prop_gclear_new:c { g__witharrows_arrow _ \l__witharrows_prefix_str _ \int_use:N \g__witharrows_arrow_int _ prop } @@ -589,7 +590,7 @@ \seq_set_eq:NN \l_tmpa_seq \g__witharrows_position_in_the_tree_seq \seq_pop_right:NN \l_tmpa_seq \l_tmpa_tl \str_clear_new:N \l__witharrows_prefix_str - \str_set:Nx \l__witharrows_prefix_str { \seq_use:Nnnn \l_tmpa_seq - - - } + \str_set:Ne \l__witharrows_prefix_str { \seq_use:Nnnn \l_tmpa_seq - - - } \cs_set_eq:NN \\ \__witharrows_cr: \dim_zero:N \mathsurround \int_zero_new:N \l__witharrows_initial_int @@ -634,27 +635,27 @@ { \cs_set_eq:cN { \l__witharrows_command_name_str } \__witharrows_Arrow } - \str_if_eq:VnT \l__witharrows_type_col_str { c } \hfil - \str_if_eq:VnT \l__witharrows_type_col_str { C } \hfil - \str_if_eq:VnT \l__witharrows_type_col_str { r } \hfill - \str_if_eq:VnT \l__witharrows_type_col_str { R } \hfill + \str_if_eq:onT \l__witharrows_type_col_str { c } \hfil + \str_if_eq:onT \l__witharrows_type_col_str { C } \hfil + \str_if_eq:onT \l__witharrows_type_col_str { r } \hfill + \str_if_eq:onT \l__witharrows_type_col_str { R } \hfill \int_gincr:N \g__witharrows_col_int \int_gset:Nn \g__witharrows_static_col_int { \int_use:N \g__witharrows_col_int } \c_math_toggle_token - \str_if_eq:VnT \l__witharrows_type_col_str { C } { { } } - \str_if_eq:VnT \l__witharrows_type_col_str { L } { { } } + \str_if_eq:onT \l__witharrows_type_col_str { C } { { } } + \str_if_eq:onT \l__witharrows_type_col_str { L } { { } } \bool_if:NT \l__witharrows_displaystyle_bool \displaystyle ## - \str_if_eq:VnT \l__witharrows_type_col_str { C } { { } } - \str_if_eq:VnT \l__witharrows_type_col_str { R } { { } } + \str_if_eq:onT \l__witharrows_type_col_str { C } { { } } + \str_if_eq:onT \l__witharrows_type_col_str { R } { { } } \c_math_toggle_token \int_compare:nNnTF \g__witharrows_col_int = \l__witharrows_nb_cols_int \__witharrows_construct_nodes: { - \str_if_eq:VnT \l__witharrows_type_col_str { l } \hfil - \str_if_eq:VnT \l__witharrows_type_col_str { L } \hfil - \str_if_eq:VnT \l__witharrows_type_col_str { c } \hfil - \str_if_eq:VnT \l__witharrows_type_col_str { C } \hfil + \str_if_eq:onT \l__witharrows_type_col_str { l } \hfil + \str_if_eq:onT \l__witharrows_type_col_str { L } \hfil + \str_if_eq:onT \l__witharrows_type_col_str { c } \hfil + \str_if_eq:onT \l__witharrows_type_col_str { C } \hfil \bool_if:NT \l__witharrows_in_DispWithArrows_bool { \tabskip = \c_zero_skip } & } @@ -770,7 +771,7 @@ { \cs_set:Npn \WithArrowsRightX { \g__witharrows_right_x_dim } \normalbaselines - \int_compare:nNnT \g__witharrows_arrow_int > 0 + \int_if_zero:nF \g__witharrows_arrow_int { \int_compare:nNnT \g__witharrows_arrow_int = 1 { @@ -789,7 +790,7 @@ \group_end: \seq_gpop_right:NN \g__witharrows_position_in_the_tree_seq \l_tmpa_tl \seq_gpop_right:NN \g__witharrows_position_in_the_tree_seq \l_tmpa_tl - \seq_gput_right:Nx \g__witharrows_position_in_the_tree_seq + \seq_gput_right:Ne \g__witharrows_position_in_the_tree_seq { \int_eval:n { \l_tmpa_tl + 1 } } \int_compare:nNnT { \seq_count:N \g__witharrows_position_in_the_tree_seq } = 1 { \int_gincr:N \g__witharrows_last_env_int } @@ -856,7 +857,8 @@ \bool_set_true:N \l__witharrows_in_DispWithArrows_bool \str_clear_new:N \l__witharrows_type_env_str \str_set:Nn \l__witharrows_type_env_str { DispWithArrows } - \exp_args:No \tl_if_novalue:nF { #1 } { \tl_set:Nn \l__witharrows_left_brace_tl { #1 } } + \tl_if_novalue:oF { #1 } + { \cs_set_nopar:Npn \l__witharrows_left_brace_tl { #1 } } \__witharrows_pre_halign:n { #2 } \tl_if_eq:NNF \l__witharrows_left_brace_tl \c_novalue_tl { @@ -1036,12 +1038,9 @@ \__witharrows_treat_an_arrow_in_scan: \int_incr:N \l__witharrows_arrow_int } - \bool_if:nT - { - ! \int_compare_p:nNn \l__witharrows_pos_arrow_int = 7 - && - \int_compare_p:nNn \l__witharrows_first_arrow_of_group_int > 0 - } + \bool_lazy_and:nnT + { ! \int_compare_p:nNn \l__witharrows_pos_arrow_int = 7 } + { \int_compare_p:nNn \l__witharrows_first_arrow_of_group_int > \c_zero_int } { \__witharrows_draw_arrows:nn \l__witharrows_first_arrow_of_group_int \g__witharrows_arrow_int } } \cs_new_protected:Npn \__witharrows_treat_an_arrow_in_scan: @@ -1058,10 +1057,10 @@ } { \bool_not_p:n { \int_compare_p:nNn \l__witharrows_pos_arrow_int = 7 } } } - { \str_if_eq_p:Vn \l__witharrows_status_arrow_str { new-group } } + { \str_if_eq_p:on \l__witharrows_status_arrow_str { new-group } } } { - \int_compare:nNnF \l__witharrows_first_arrow_of_group_int = \c_zero_int + \int_if_zero:nF \l__witharrows_first_arrow_of_group_int { \__witharrows_draw_arrows:nn \l__witharrows_first_arrow_of_group_int @@ -1083,10 +1082,9 @@ { \dim_set:Nn \l__witharrows_x_dim { - \c_max_dim } } } { - \str_if_eq:VnF \l__witharrows_status_arrow_str { independent } + \str_if_eq:onF \l__witharrows_status_arrow_str { independent } { - \int_compare:nT - { \l__witharrows_initial_int = \l__witharrows_first_line_of_group_int } + \int_compare:nNnT \l__witharrows_initial_int = \l__witharrows_first_line_of_group_int { \seq_put_left:NV \l__witharrows_first_arrows_seq \l__witharrows_arrow_int } \int_compare:nNnTF \l__witharrows_final_int > \l__witharrows_last_line_of_group_int { @@ -1100,15 +1098,12 @@ } } } - \str_if_eq:VnF \l__witharrows_status_arrow_str { independent } + \str_if_eq:onF \l__witharrows_status_arrow_str { independent } { \int_compare:nNnF \l__witharrows_pos_arrow_int = 8 { \__witharrows_update_x:nn \l__witharrows_initial_int \l__witharrows_final_int } } } -\cs_generate_variant:Nn \keys_set:nn { n o } -\cs_new_protected:Npn \__witharrows_keys_set: - { \keys_set_known:no { WithArrows / Arrow / SecondPass } } \cs_new_protected:Npn \__witharrows_draw_arrows:nn #1 #2 { \group_begin: @@ -1132,7 +1127,7 @@ { status } \l__witharrows_status_arrow_str \int_compare:nNnF \l__witharrows_final_int > \g__witharrows_line_int { - \str_if_eq:VnTF \l__witharrows_status_arrow_str { over } + \str_if_eq:onTF \l__witharrows_status_arrow_str { over } { \seq_put_right:NV \l__witharrows_o_arrows_seq \l__witharrows_arrow_int } \__witharrows_draw_arrow: } @@ -1146,10 +1141,13 @@ \group_begin: \prop_get:cnN { g__witharrows_arrow _\l__witharrows_prefix_str _ \int_use:N \l__witharrows_arrow_int _ prop } - { options } \l_tmpa_tl + { options } + \l_tmpa_tl \str_clear_new:N \l__witharrows_previous_key_str - \exp_args:NNo \exp_args:No - \__witharrows_keys_set: { \l_tmpa_tl , tikz = { xshift = \l__witharrows_xoffset_dim } } + \exp_args:NNNno \exp_args:NNno \exp_args:Nno + \keys_set_known:nn + { WithArrows / Arrow / SecondPass } + { \l_tmpa_tl , tikz = { xshift = \l__witharrows_xoffset_dim } } \bool_set_false:N \l__witharrows_initial_r_bool \bool_set_false:N \l__witharrows_final_r_bool \int_case:nn \l__witharrows_pos_arrow_int @@ -1167,19 +1165,19 @@ \dim_set:Nn \l__witharrows_x_dim { - \c_max_dim } \__witharrows_update_x:nn \l__witharrows_initial_int \l__witharrows_final_int } - \tl_set:Nx \l__witharrows_initial_tl + \tl_set:Ne \l__witharrows_initial_tl { \int_use:N \l__witharrows_initial_int - \bool_if:NTF \l__witharrows_initial_r_bool rl } - \tl_set:Nx \l__witharrows_final_tl + \tl_set:Ne \l__witharrows_final_tl { \int_use:N \l__witharrows_final_int - \bool_if:NTF \l__witharrows_final_r_bool rl } \prop_get:cnN { g__witharrows_arrow _ \l__witharrows_prefix_str _ \int_use:N \l__witharrows_arrow_int _ prop } { label } \l_tmpa_tl - \seq_if_in:NxTF \l__witharrows_first_arrows_seq + \seq_if_in:NeTF \l__witharrows_first_arrows_seq { \int_use:N \l__witharrows_arrow_int } { \bool_set_true:N \l_tmpa_bool } { \bool_set_false:N \l_tmpa_bool } - \seq_if_in:NxTF \l__witharrows_last_arrows_seq + \seq_if_in:NeTF \l__witharrows_last_arrows_seq { \int_use:N \l__witharrows_arrow_int } { \bool_set_true:N \l_tmpb_bool } { \bool_set_false:N \l_tmpb_bool } @@ -1208,7 +1206,7 @@ } { \int_compare_p:nNn { \l__witharrows_final_int - \l__witharrows_initial_int } = 1 } { - \tl_gset:Nx \g_tmpa_tl + \tl_gset:Ne \g_tmpa_tl { \int_compare:nNnTF \l__witharrows_pos_arrow_int < 5 { \dim_use:N \g__witharrows_x_initial_dim } @@ -1219,7 +1217,7 @@ + 0.5 \l__witharrows_max_length_of_arrow_dim } } - \tl_gset:Nx \g_tmpb_tl + \tl_gset:Ne \g_tmpb_tl { \int_compare:nNnTF \l__witharrows_pos_arrow_int < 5 { \dim_use:N \g__witharrows_x_final_dim } @@ -1232,7 +1230,7 @@ } } { - \tl_gset:Nx \g_tmpa_tl + \tl_gset:Ne \g_tmpa_tl { \int_compare:nNnTF \l__witharrows_pos_arrow_int < 5 { \dim_use:N \g__witharrows_x_initial_dim } @@ -1241,7 +1239,7 @@ { \dim_eval:n { \g__witharrows_y_initial_dim + \l__witharrows_start_adjust_dim } } { \dim_use:N \g__witharrows_y_initial_dim } } - \tl_gset:Nx \g_tmpb_tl + \tl_gset:Ne \g_tmpb_tl { \int_compare:nNnTF \l__witharrows_pos_arrow_int < 5 { \dim_use:N \g__witharrows_x_final_dim } @@ -1273,9 +1271,10 @@ \__witharrows_draw_arrow:nno \g_tmpa_tl \g_tmpb_tl \l_tmpa_tl \group_end: } -\cs_new_protected:Npn \__witharrows_def_function_tmpa:n #1 +\cs_generate_variant:Nn \__witharrows_def_function_arrow:n { o } +\cs_new_protected:Npn \__witharrows_def_function_arrow:n #1 { - \cs_set:Npn \__witharrows_tmpa:nnn ##1 ##2 ##3 + \cs_set:Npn \__witharrows_arrow:nnn ##1 ##2 ##3 { \tikzpicture [ __witharrows_standard_arrow ] @@ -1285,10 +1284,13 @@ { \dim_zero:N \l_tmpa_dim } { \dim_set:Nn \l_tmpa_dim { \pgf@picmaxx - \pgf@picminx } } \dim_add:Nn \l_tmpa_dim \l__witharrows_xoffset_dim - \prop_gput:cnV - { g__witharrows_arrow _ \l__witharrows_prefix_str _ \int_use:N \l__witharrows_arrow_int _ prop } - { width } - \l_tmpa_dim + \int_compare:nNnT \l__witharrows_arrow_int > 0 % added 2024/10/01 + { + \prop_gput:cnV + { g__witharrows_arrow _ \l__witharrows_prefix_str _ \int_use:N \l__witharrows_arrow_int _ prop } + { width } + \l_tmpa_dim + } \bool_if:NF \l__witharrows_right_overlap_bool { \bool_if:NT \l__witharrows_in_WithArrows_bool @@ -1305,21 +1307,21 @@ \endtikzpicture } } +\cs_generate_variant:Nn \__witharrows_draw_arrow:nnn { n n o } \cs_new_protected:Npn \__witharrows_draw_arrow:nnn #1 #2 #3 { \bool_lazy_and:nnT \l__witharrows_wrap_lines_bool \l__witharrows_in_DispWithArrows_bool { \tl_set_eq:NN \l__witharrows_tikz_code_tl \c__witharrows_tikz_code_wrap_lines_tl } - \exp_args:NV \__witharrows_def_function_tmpa:n \l__witharrows_tikz_code_tl - \__witharrows_tmpa:nnn { #1 } { #2 } { #3 } + \__witharrows_def_function_arrow:o \l__witharrows_tikz_code_tl + \__witharrows_arrow:nnn { #1 } { #2 } { #3 } } -\cs_generate_variant:Nn \__witharrows_draw_arrow:nnn { n n o } \tl_const:Nn \c__witharrows_tikz_code_wrap_lines_tl { - \pgfset { inner~sep = 0pt} + \pgfset { inner~sep = 0pt } \draw ( #1 ) to node ( __witharrows_label ) { } ( #2 ) ; \pgfpointanchor { wa - \l__witharrows_prefix_str - __witharrows_label } { west } - \dim_set:Nn \l_tmpa_dim { \g__witharrows_right_x_dim - \pgf@x - 0.3333 ex } - \path \pgfextra { \tl_gset:Nx \g_tmpa_tl \tikz@text@width } ; + \dim_set:Nn \l_tmpa_dim { \g__witharrows_right_x_dim - \pgf@x - 0.33333 em } + \path \pgfextra { \tl_gset:Ne \g_tmpa_tl \tikz@text@width } ; \tl_if_empty:NF \g_tmpa_tl { \dim_set:Nn \l_tmpb_dim \g_tmpa_tl @@ -1330,7 +1332,7 @@ { \path ( __witharrows_label.west ) node [ anchor = west , text~width = \dim_use:N \l_tmpa_dim ] - { #3 } ; + { \skip_horizontal:n { 0.33333 em } #3 } ; } } \cs_new_protected:Npn \__witharrows_update_x:nn #1 #2 @@ -1402,12 +1404,12 @@ \prop_get:cnN { g__witharrows_arrow _ \l__witharrows_prefix_str _ ####1 _ prop } { status } \l__witharrows_status_arrow_str - \bool_if:nT + \bool_lazy_any:nF { - ! \int_compare_p:n { ##1 = ####1 } - && \int_compare_p:n { \l__witharrows_initial_int <= \l_tmpa_tl } - && \int_compare_p:n { \l_tmpb_tl <= \l__witharrows_final_int } - && ! \str_if_eq_p:Vn \l__witharrows_status_arrow_str { independent } + { \int_compare_p:n { ##1 = ####1 } } + { \int_compare_p:nNn \l__witharrows_initial_int > \l_tmpa_tl } + { \int_compare_p:nNn \l_tmpb_tl > \l__witharrows_final_int } + { \str_if_eq_p:on \l__witharrows_status_arrow_str { independent } } } { \bool_gset_true:N \g_tmpa_bool @@ -1434,22 +1436,22 @@ { tikz .code:n = \tikzset { WithArrows / arrow / .append~style = { #1 } } , - tikz .value_required:n = true , - rr .value_forbidden:n = true , - rr .code:n = \__witharrows_fix_pos_option:n 0 , - ll .value_forbidden:n = true, - ll .code:n = \__witharrows_fix_pos_option:n 1 , - rl .value_forbidden:n = true , - rl .code:n = \__witharrows_fix_pos_option:n 2 , - lr .value_forbidden:n = true , - lr .code:n = \__witharrows_fix_pos_option:n 3 , - v .value_forbidden:n = true , - v .code:n = \__witharrows_fix_pos_option:n 4 , + tikz .value_required:n = true , + rr .value_forbidden:n = true , + rr .code:n = \__witharrows_fix_pos_option:n 0 , + ll .value_forbidden:n = true, + ll .code:n = \__witharrows_fix_pos_option:n 1 , + rl .value_forbidden:n = true , + rl .code:n = \__witharrows_fix_pos_option:n 2 , + lr .value_forbidden:n = true , + lr .code:n = \__witharrows_fix_pos_option:n 3 , + v .value_forbidden:n = true , + v .code:n = \__witharrows_fix_pos_option:n 4 , tikz-code .tl_set:N = \l__witharrows_tikz_code_tl , tikz-code .value_required:n = true , - xoffset .dim_set:N = \l__witharrows_xoffset_dim , - xoffset .value_required:n = true , - unknown .code:n = + xoffset .dim_set:N = \l__witharrows_xoffset_dim , + xoffset .value_required:n = true , + unknown .code:n = \__witharrows_sort_seq:N \l__witharrows_options_Arrow_code_after_seq \__witharrows_error:n { Unknown~option~Arrow~in~code-after } } @@ -1470,7 +1472,7 @@ } \cs_new_protected:Npn \__witharrows_Arrow_code_after_ii [ #1 ] #2 #3 #4 [ #5 ] { - \int_set:Nn \l__witharrows_pos_arrow_int 1 + \int_set_eq:NN \l__witharrows_pos_arrow_int \c_one_int \str_clear_new:N \l__witharrows_previous_key_str \group_begin: \keys_set:nn { WithArrows / Arrow / code-after } @@ -1491,10 +1493,10 @@ { \__witharrows_error:nn { Both~lines~are~equal } { #2 } } { \cs_if_free:cTF { pgf@sh@ns@wa - \l__witharrows_prefix_str - #2 - l } - { \__witharrows_error:nx { Wrong~line~in~Arrow } { #2 } } + { \__witharrows_error:ne { Wrong~line~in~Arrow } { #2 } } { \cs_if_free:cTF { pgf@sh@ns@wa - \l__witharrows_prefix_str - #3 - l } - { \__witharrows_error:nx { Wrong~line~in~Arrow } { #3 } } + { \__witharrows_error:ne { Wrong~line~in~Arrow } { #3 } } { \int_compare:nNnTF \l__witharrows_pos_arrow_int = 4 { @@ -1508,9 +1510,9 @@ { north } \dim_set:Nn \l_tmpa_dim { \dim_max:nn \l_tmpa_dim \pgf@x } - \tl_gset:Nx \g_tmpa_tl + \tl_gset:Ne \g_tmpa_tl { \dim_use:N \l_tmpa_dim , \dim_use:N \l_tmpb_dim } - \tl_gset:Nx \g_tmpb_tl + \tl_gset:Ne \g_tmpb_tl { \dim_use:N \l_tmpa_dim , \dim_use:N \pgf@y } \endpgfpicture } @@ -1523,7 +1525,7 @@ #2 - \bool_if:NTF \l__witharrows_initial_r_bool r l } { south } - \tl_gset:Nx \g_tmpa_tl + \tl_gset:Ne \g_tmpa_tl { \dim_use:N \pgf@x , \dim_use:N \pgf@y } \pgfpointanchor { @@ -1531,7 +1533,7 @@ #3 - \bool_if:NTF \l__witharrows_final_r_bool r l } { north } - \tl_gset:Nx \g_tmpb_tl + \tl_gset:Ne \g_tmpb_tl { \dim_use:N \pgf@x , \dim_use:N \pgf@y } \endpgfpicture } @@ -1543,34 +1545,34 @@ } \cs_new_protected:Npn \__witharrows_MultiArrow:nn #1 #2 { - \exp_args:Nnx + \exp_args:Nne \regex_match:nnTF { \A \d+ (\,\d+)* ( \, \.\.\. (\,\d+)+ )* \Z } { #1 } { \__witharrows_MultiArrow_i:nn { #1 } { #2 } } - { \__witharrows_error:nx { Invalid~specification~for~MultiArrow } { #1 } } + { \__witharrows_error:ne { Invalid~specification~for~MultiArrow } { #1 } } } \cs_new_protected:Npn \__witharrows_MultiArrow_i:nn #1 #2 { \foreach \x in { #1 } { \cs_if_free:cTF { pgf@sh@ns@wa - \l__witharrows_prefix_str - \x - l } - { \__witharrows_error:nx { Wrong~line~specification~in~MultiArrow } \x } - { \clist_gput_right:Nx \g_tmpa_clist \x } + { \__witharrows_error:ne { Wrong~line~specification~in~MultiArrow } \x } + { \clist_gput_right:Ne \g_tmpa_clist \x } } \int_compare:nTF { \clist_count:N \g_tmpa_clist < 2 } { \__witharrows_error:n { Too~small~specification~for~MultiArrow } } { \clist_sort:Nn \g_tmpa_clist { - \int_compare:nTF { ##1 > ##2 } + \int_compare:nNnTF { ##1 } > { ##2 } \sort_return_swapped: \sort_return_same: } \clist_pop:NN \g_tmpa_clist \l_tmpa_tl \clist_reverse:N \g_tmpa_clist \clist_pop:NN \g_tmpa_clist \l_tmpb_tl - \exp_args:NV \__witharrows_MultiArrow_i:n \g_tmpa_clist + \exp_args:No \__witharrows_MultiArrow_i:n \g_tmpa_clist \tikzpicture [ __witharrows_standard , @@ -1583,7 +1585,7 @@ -- ([xshift = \l__witharrows_xoffset_dim]\l_tmpb_tl-r.south) ; \pgfpointanchor { wa - \l__witharrows_prefix_str - __witharrows_label } { west } \dim_set:Nn \l_tmpa_dim { 20 cm } - \path \pgfextra { \tl_gset:Nx \g_tmpa_tl \tikz@text@width } ; + \path \pgfextra { \tl_gset:Ne \g_tmpa_tl \tikz@text@width } ; \tl_if_empty:NF \g_tmpa_tl { \dim_set:Nn \l_tmpa_dim \g_tmpa_tl } \bool_lazy_and:nnT \l__witharrows_wrap_lines_bool \l__witharrows_in_DispWithArrows_bool { @@ -1958,27 +1960,18 @@ \keyval_parse:NNn \__witharrows_valid_key:n \__witharrows_valid_key:nn { #2 } \seq_if_empty:NTF \l_tmpa_seq { - \seq_put_right:Nx \l__witharrows_options_WithArrows_seq + \seq_put_right:Ne \l__witharrows_options_WithArrows_seq { \tl_to_str:n { #1 } } - \seq_put_right:Nx \l__witharrows_options_DispWithArrows_seq + \seq_put_right:Ne \l__witharrows_options_DispWithArrows_seq { \tl_to_str:n { #1 } } - \seq_put_right:Nx \l__witharrows_options_WithArrowsOptions_seq + \seq_put_right:Ne \l__witharrows_options_WithArrowsOptions_seq { \tl_to_str:N { #1 } } - \cs_if_exist:NTF \keys_precompile:nnN - { - \keys_precompile:nnN - { WithArrows / WithArrowsOptions } - { #2 } - \l_tmpa_tl - \__witharrows_key_define:nV { #1 } \l_tmpa_tl - } - { - \keys_define:nn { WithArrows / Global } - { - #1 .code:n = - { \keys_set:nn { WithArrows / WithArrowsOptions } { #2 } } - } - } + \keys_precompile:nnc + { WithArrows / WithArrowsOptions } + { #2 } + { __witharrows _ style _ #1 _ tl } + \keys_define:nn { WithArrows / Global } + { #1 .code:n = \use:c { __witharrows _ style _ #1 _ tl } } } { \__witharrows_error:nn { Impossible~style } { #1 } } } @@ -2000,12 +1993,9 @@ \keys_if_exist:nnF { WithArrows / Global } { #1 } { \seq_put_right:Nn \l_tmpa_seq { #1 } } } -\cs_new_protected:Npn \__witharrows_key_define:nn #1 #2 - { \keys_define:nn { WithArrows / Global } { #1 .code:n = #2 } } -\cs_generate_variant:Nn \__witharrows_key_define:nn { n V } \__witharrows_msg_new:nn { Key~already~defined } { - Key~already~define.\\ + Key~already~defined.\\ The~key~'#1'~is~already~defined. \\ If~you~go~on,~your~instruction~\token_to_str:N\WithArrowsNewStyle\ will~be~ignored. @@ -2116,9 +2106,9 @@ \str_if_empty:NT \l__witharrows_previous_key_str { \str_set:Nn \l__witharrows_previous_key_str { up } - \cs_if_exist:cTF { tikz@library@calc@loaded } + \cs_if_exist:NTF \tikz@library@calc@loaded { - \keys_set:nV { WithArrows / up-and-down } \l_keys_value_tl + \keys_set:no { WithArrows / up-and-down } \l_keys_value_tl \int_set:Nn \l__witharrows_pos_arrow_int 1 \bool_set_false:N \l__witharrows_wrap_lines_bool \tl_set_eq:NN \l__witharrows_tikz_code_tl \c__witharrows_tikz_code_up_tl @@ -2129,9 +2119,9 @@ \str_if_empty:NT \l__witharrows_previous_key_str { \str_set:Nn \l__witharrows_previous_key_str { down } - \cs_if_exist:cTF { tikz@library@calc@loaded } + \cs_if_exist:NTF \tikz@library@calc@loaded { - \keys_set:nV { WithArrows / up-and-down } \l_keys_value_tl + \keys_set:no { WithArrows / up-and-down } \l_keys_value_tl \int_set:Nn \l__witharrows_pos_arrow_int 1 \bool_set_false:N \l__witharrows_wrap_lines_bool \tl_set_eq:NN \l__witharrows_tikz_code_tl \c__witharrows_tikz_code_down_tl diff --git a/Master/texmf-dist/tex/generic/xcomment/xcomment.sty b/Master/texmf-dist/tex/generic/xcomment/xcomment.sty deleted file mode 100644 index 4bb03a5f67d..00000000000 --- a/Master/texmf-dist/tex/generic/xcomment/xcomment.sty +++ /dev/null @@ -1,8 +0,0 @@ -%% $Id: xcomment.sty 315 2010-05-14 21:31:03Z herbert $ -\ProvidesPackage{xcomment}[2010/05/13 package wrapper for - xcomment.tex (hv)] -\input{xcomment.tex} -\ProvidesFile{xcomment.tex} - [\filedate\space v\fileversion\space `xcomment' (tvz)] -\endinput - diff --git a/Master/texmf-dist/tex/generic/xcomment/xcomment.tex b/Master/texmf-dist/tex/generic/xcomment/xcomment.tex deleted file mode 100644 index e8888f904aa..00000000000 --- a/Master/texmf-dist/tex/generic/xcomment/xcomment.tex +++ /dev/null @@ -1,171 +0,0 @@ -%% $Id: xcomment.tex 316 2010-05-14 21:32:34Z herbert $ -%% -%% COPYRIGHT 1993/2010, by Timothy Van Zandt, tvz@Princeton.EDU -%% COPYRIGHT 2010, by Herbert Voss, hvoss@tug.org -%% -%% DESCRIPTION: -%% -%% This program can be redistributed and/or modified under the terms -%% of the LaTeX Project Public License Distributed from CTAN archives -%% in directory macros/latex/base/lppl.txt. -%% -\def\fileversion{1.3} -\def\filedate{10/05/14} -%% -\@ifundefined{xcomment@@@}{}{\endinput} -\typeout{Style-Option: `xcomment' v\fileversion \space <\filedate> (tvz) } -\def\newxcomment{\@ifnextchar [{\@newxcommentwitharg}{\@newxcomment}} -\def\@newxcomment#1{% - \expandafter\def\csname #1\endcsname##1{\@xcomment{#1}{##1}}}% -\def\@newxcommentwitharg[#1]#2{% - \expandafter\def\csname #2\endcsname{\@xcomment{#2}{#1}}} -\newxcomment{xcomment} -\def\envirsep{\par} -\def\rescanfile#1{\def\@rescanfile{#1}} -\rescanfile{\jobname.tmp} -\def\norescanfile{\let\@rescanfile\relax} -\def\@nofloat#1{\hrule height\z@\nobreak\vfill\vbox\bgroup\def\@captype{#1}} -\def\end@nofloat{\egroup\nobreak\vfill\nobreak\hrule height\z@\medbreak} -\def\nofloat#1{\@for\@tempa:=#1\do{\@namedef{#1}{\@nofloat{#1}}% - \@namedef{end#1}{\end@nofloat}}} -\def\xc@makeother#1{% - \ifnum\the\catcode`#1=0\catcode`#112% - \else \ifnum\the\catcode`#1=1\catcode`#112% - \else \ifnum\the\catcode`#1=2\catcode`#112% - \else \ifnum\the\catcode`#1=6\catcode`#112% - \fi\fi\fi\fi\relax} -\newwrite\tokout -\newread\tokin -\def\rescan#1{% - \ifx\@rescanfile\relax\else - \ifx\@rescanfile\@empty #1{}\else - \immediate\openout\tokout=\@rescanfile - \immediate\write\tokout{{\the#1}\relax}% - \immediate\closeout\tokout - \openin\tokin=\@rescanfile - \read\tokin to\@tempd - \closein\tokin - \expandafter#1\@tempd% - \fi\fi} -\def\@xcomment#1#2{% - \ifx\@preamblecmds\@notprerr - \def\xc@csname{#1}% - \edef\xc@envirlist{#2}% - \ifx\xc@envirlist\@empty \@bsphack \else - \begingroup - \def\@envirsep{}% - \@ifundefined{normal@begin}{\let\normal@begin\begin}{}% - \@ifundefined{normal@end}{\let\normal@end\end}{}% - \def\begin##1{\do@begin{##1}\normal@begin{##1}}% - \def\end##1{\normal@end{##1}\do@end}% - \def\do@begin##1{\@ifundefined{##1}{}{\def\do@end{}}}% - \let\do@end\xc@begin - \fi - \let\next\xc@begin - \else - \expandafter\@temptokena\expandafter{\document\@xcomment{@@@}{#2}}% - \edef\document{\the\@temptokena}% - \let\next\relax - \fi - \next} -\def\end@xcomment{\ifx\xc@envirlist\@empty \@esphack \else \endgroup \fi}% -\def\xc@begin{% - \begingroup - \let\do\xc@makeother - \dospecials - \ifx\xcommentchar\@empty\else - \expandafter\catcode\expandafter`\xcommentchar=14 - \fi - \catcode`\^^M\active - \xcomment@} -\def\xcommentchar{\%} -\begingroup -\catcode`\!=12 -\catcode`\[=12 -\catcode`\]=12 -\catcode`\"=12 -\lccode`\!=`\\ -\lccode`\[=`\{ -\lccode`\]=`\} -\lccode`\"=`\% -\catcode`\~=\active -\lccode`\~=`\^^M -\lowercase{ - \gdef\xcomment@#1~{\xcomment@@#1\@nnil!\@nil} - \gdef\xcomment@@#1!{\xcomment@@@} - \gdef\xcomment@@@#1\@nil{% - \def\@tempa{#1}% - \ifx\@tempa\@empty - \let\next\xcomment@ - \else - \def\next{\xcomment@@#1\@nil}% - \@testtrue - \xc@checkbegin#1\relax begin[]\relax\relax - \if@test - \xc@checkend#1\relax end[]\relax\relax - \if@test - \xc@checkinput#1\relax input[]\relax\relax - \if@test - \xc@checkinclude#1\relax include[]\relax\relax - \if@test - \xc@checkendinput#1\relax endinputss\relax\relax - \fi\fi\fi\fi\fi - \next} - \gdef\xc@checkbegin#1begin[#2]#3\relax#4\relax{% - \def\@tempa{#1}% - \ifx\@tempa\@empty - \def\@tempa{#2}% - \@for\@tempb:=\xc@envirlist\do{% - \ifx\@tempa\@tempb\def\next{\xc@end{#2}#3\@nil}\fi}% - \fi} - \gdef\xc@checkend#1end[#2]#3\relax#4\relax{% - \def\@tempa{#1}% - \ifx\@tempa\@empty - \@testfalse - \def\@tempa{#2}\def\@tempb{document}% - \ifx\@tempa\@tempb - \def\next{\endgroup\end@xcomment\end{document}}% - \else - \ifx\@tempa\xc@csname - \def\next{\end@@xcomment{#2}#3\@nil}% - \fi\fi\fi} - \gdef\xc@checkinput#1input[#2]#3\relax#4\relax{% - \def\@tempa{#1}% - \ifx\@tempa\@empty - \def\next{\expandafter\xcomment@\@@input #2 \xcomment@@#3\@nil}% - \@testfalse - \fi} - \gdef\xc@checkendinput#1endinput#2#3\relax#4\relax{% - \def\@tempa{#1}% - \ifx\@tempa\@empty\ifcat\noexpand#2a\relax\else - \let\next\endinput - \fi\fi} - \gdef\xc@checkinclude#1include[#2]#3\relax#4\relax{% - \def\@tempa{#1}% - \ifx\@tempa\@empty - \def\next{% - \global\let\xc@savedinput\@@input - \def\@@input{% - \global\let\@@input\xc@savedinput - \expandafter\xcomment@\@@input}% - \include{#2}% - \global\let\@@input\xc@savedinput - \xcomment@@#3\@nil}% - \@testfalse - \fi} - \gdef\end@@xcomment#1#2\@nnil!\@nil{% - \endgroup - \toks@{#2 }\rescan{\toks@}% - \edef\next{\noexpand\end@xcomment\noexpand\end{#1}\the\toks@}% - \next}% - \gdef\xc@end#1#2\@nnil!\@nil{% - \endgroup - \@envirsep \let\@envirsep\envirsep - \toks@{#2 }\rescan{\toks@}% - \edef\next{\noexpand\normal@begin{#1}\the\toks@}% - \next}% - }% END OF LOWERCASE -\endgroup -\endinput -%% -%% End of file `xcomment.sty'. |