From 996ab582db894fb0949df386489a5101ed07062e Mon Sep 17 00:00:00 2001 From: Karl Berry Date: Sat, 6 May 2023 22:03:57 +0000 Subject: luametatex 2.10.08, context 2023.05.05 18:36 git-svn-id: svn://tug.org/texlive/trunk@67034 c570f23f-e606-0410-a88d-b1316a301751 --- .../generic/context/luatex/luatex-fonts-merged.lua | 38 ++-- .../tex/generic/context/luatex/luatex-mplib.lua | 70 +++---- .../generic/context/luatex/luatex-preprocessor.lua | 12 +- .../tex/generic/context/ppchtex/m-ch-de.tex | 10 + .../tex/generic/context/ppchtex/m-ch-en.tex | 10 + .../tex/generic/context/ppchtex/m-ch-nl.tex | 10 + .../tex/generic/context/ppchtex/ppchtex.noc | 212 +++++++++++++++++++++ 7 files changed, 296 insertions(+), 66 deletions(-) create mode 100644 Master/texmf-dist/tex/generic/context/ppchtex/m-ch-de.tex create mode 100644 Master/texmf-dist/tex/generic/context/ppchtex/m-ch-en.tex create mode 100644 Master/texmf-dist/tex/generic/context/ppchtex/m-ch-nl.tex create mode 100644 Master/texmf-dist/tex/generic/context/ppchtex/ppchtex.noc (limited to 'Master/texmf-dist/tex/generic') diff --git a/Master/texmf-dist/tex/generic/context/luatex/luatex-fonts-merged.lua b/Master/texmf-dist/tex/generic/context/luatex/luatex-fonts-merged.lua index 614793314d7..5441fa0043b 100644 --- a/Master/texmf-dist/tex/generic/context/luatex/luatex-fonts-merged.lua +++ b/Master/texmf-dist/tex/generic/context/luatex/luatex-fonts-merged.lua @@ -1,6 +1,6 @@ -- merged file : c:/data/develop/context/sources/luatex-fonts-merged.lua -- parent file : c:/data/develop/context/sources/luatex-fonts.lua --- merge date : 2023-03-10 12:15 +-- merge date : 2023-05-05 18:36 do -- begin closure to overcome local limits and interference @@ -21334,7 +21334,7 @@ local trace_defining=false registertracker("fonts.defining",function(v) trace_d local report_otf=logs.reporter("fonts","otf loading") local fonts=fonts local otf=fonts.handlers.otf -otf.version=3.132 +otf.version=3.133 otf.cache=containers.define("fonts","otl",otf.version,true) otf.svgcache=containers.define("fonts","svg",otf.version,true) otf.pngcache=containers.define("fonts","png",otf.version,true) @@ -31740,7 +31740,11 @@ local function addfeature(data,feature,specifications,prepareonly) local list=askedsteps[i] local coverage=nil local format=nil - if featuretype=="substitution" then +if type(list)=="function" then + list=list(data,specification,list,i) +end + if not list then + elseif featuretype=="substitution" then category="gsub" coverage=(mapping and list) or prepare_substitution(list,featuretype,nocheck) elseif featuretype=="ligature" then @@ -37807,7 +37811,7 @@ local fonts=fonts local otf=fonts.handlers.otf local registerotffeature=otf.features.register local addotffeature=otf.addfeature -local specification={ +local tlig={ type="ligature", order={ "tlig" }, prepend=true, @@ -37816,12 +37820,17 @@ local specification={ [0x2014]={ 0x002D,0x002D,0x002D }, }, } -addotffeature("tlig",specification) -registerotffeature { - name="tlig", - description="tex ligatures", +local tquo={ + type="ligature", + order={ "tquo" }, + prepend=true, + data={ + [0x201C]={ 0x0060,0x0060 }, + [0x201D]={ 0x0027,0x0027 }, + [0x201E]={ 0x002C,0x002C }, + }, } -local specification={ +local trep={ type="substitution", order={ "trep" }, prepend=true, @@ -37829,11 +37838,12 @@ local specification={ [0x0027]=0x2019, }, } -addotffeature("trep",specification) -registerotffeature { - name="trep", - description="tex replacements", -} +addotffeature("trep",trep) +addotffeature("tlig",tlig) +addotffeature("tquo",tquo) +registerotffeature { name="tlig",description="tex ligatures" } +registerotffeature { name="tquo",description="tex quotes" } +registerotffeature { name="trep",description="tex replacements" } local anum_arabic={ [0x0030]=0x0660, [0x0031]=0x0661, diff --git a/Master/texmf-dist/tex/generic/context/luatex/luatex-mplib.lua b/Master/texmf-dist/tex/generic/context/luatex/luatex-mplib.lua index 1839c44ee00..99a23b03c54 100644 --- a/Master/texmf-dist/tex/generic/context/luatex/luatex-mplib.lua +++ b/Master/texmf-dist/tex/generic/context/luatex/luatex-mplib.lua @@ -6,19 +6,14 @@ if not modules then modules = { } end modules ['luatex-mplib'] = { license = "public domain", } ---[[ldx-- -

This module is a stripped down version of libraries that are used -by . It can be used in other macro packages and/or -serve as an example. Embedding in a macro package is upto others and -normally boils down to inputting supp-mpl.tex.

---ldx]]-- +-- This module is a stripped down version of libraries that are used by ConTeXt. It +-- can be used in other macro packages and/or serve as an example. Embedding in a +-- macro package is upto others and normally boils down to inputting 'supp-mpl.tex'. if metapost and metapost.version then - --[[ldx-- -

Let's silently quit and make sure that no one loads it - manually in .

- --ldx]]-- + -- Let's silently quit and make sure that no one loads it manually in + -- ConTeXt. else @@ -29,27 +24,25 @@ else local mplib = require ('mplib') local kpse = require ('kpse') - --[[ldx-- -

We create a namespace and some variables to it. If a namespace is - already defined it wil not be initialized. This permits hooking - in code beforehand.

+ -- We create a namespace and some variables to it. If a namespace is already + -- defined it wil not be initialized. This permits hooking in code beforehand. -

We don't make a format automatically. After all, distributions - might have their own preferences and normally a format (mem) file will - have some special place in the tree. Also, there can already - be format files, different memort settings and other nasty pitfalls that - we don't want to interfere with. If you want, you can define a function - metapost.make(name,mem_name) that does the job.

- --ldx]]-- + -- We don't make a format automatically. After all, distributions might have + -- their own preferences and normally a format (mem) file will have some + -- special place in the TeX tree. Also, there can already be format files, + -- different memort settings and other nasty pitfalls that we don't want to + -- interfere with. If you want, you can define a function + -- + -- metapost.make (name,mem_name) + -- + -- that does the job. metapost = metapost or { } metapost.version = 1.00 metapost.showlog = metapost.showlog or false metapost.lastlog = "" - --[[ldx-- -

A few helpers, taken from l-file.lua.

- --ldx]]-- + -- A few helpers, taken from 'l-file.lua'. local file = file or { } @@ -61,10 +54,7 @@ else return (string.gsub(filename,"%.[%a%d]+$","")) end - --[[ldx-- -

We use the library unless a finder is already - defined.

- --ldx]]-- + -- We use the KPSE library unless a finder is already defined. local mpkpse = kpse.new("luatex","mpost") @@ -76,10 +66,9 @@ else end end - --[[ldx-- -

You can use your own reported if needed, as long as it handles multiple - arguments and formatted strings.

- --ldx]]-- + -- You can use your own reported if needed, as long as it handles multiple + -- arguments and formatted strings. + metapost.report = metapost.report or function(...) if logs.report then @@ -89,11 +78,9 @@ else end end - --[[ldx-- -

The rest of this module is not documented. More info can be found in the - manual, articles in user group journals and the files that - ship with .

- --ldx]]-- + -- The rest of this module is not documented. More info can be found in the + -- LuaTeX manual, articles in user group journals and the files that ship + -- with ConTeXt. function metapost.resetlastlog() metapost.lastlog = "" @@ -329,9 +316,8 @@ else return true -- done end - --[[ldx-- -

We removed some message and tracing code. We might even remove the flusher

- --ldx]]-- + -- We removed some message and tracing code. We might even remove the + -- flusher. local function pdf_startfigure(n,llx,lly,urx,ury) tex.sprint(format("\\startMPLIBtoPDF{%s}{%s}{%s}{%s}",llx,lly,urx,ury)) @@ -443,9 +429,7 @@ else return t end - --[[ldx-- -

Support for specials has been removed.

- --ldx]]-- + -- Support for specials has been removed. function metapost.flush(result,flusher) if result then diff --git a/Master/texmf-dist/tex/generic/context/luatex/luatex-preprocessor.lua b/Master/texmf-dist/tex/generic/context/luatex/luatex-preprocessor.lua index 8faa0b47e69..b1debcd5c0b 100644 --- a/Master/texmf-dist/tex/generic/context/luatex/luatex-preprocessor.lua +++ b/Master/texmf-dist/tex/generic/context/luatex/luatex-preprocessor.lua @@ -6,11 +6,9 @@ if not modules then modules = { } end modules ['luatex-preprocessor'] = { license = "see context related readme files" } ---[[ldx -

This is a stripped down version of the preprocessor. In - we have a bit more, use a different logger, and -use a few optimizations. A few examples are shown at the end.

---ldx]] +-- This is a stripped down version of the preprocessor. In ConTeXt we have a bit +-- more, use a different logger, and use a few optimizations. A few examples are +-- shown at the end. local rep, sub, gmatch = string.rep, string.sub, string.gmatch local insert, remove = table.insert, table.remove @@ -99,10 +97,6 @@ local parser = lpeg.Cs { "converter", converter = (lpeg.V("definition") + anything)^1, } ---[[ldx -

We provide a few commands.

---ldx]] - -- local texkpse local function find_file(...) diff --git a/Master/texmf-dist/tex/generic/context/ppchtex/m-ch-de.tex b/Master/texmf-dist/tex/generic/context/ppchtex/m-ch-de.tex new file mode 100644 index 00000000000..467cdc67044 --- /dev/null +++ b/Master/texmf-dist/tex/generic/context/ppchtex/m-ch-de.tex @@ -0,0 +1,10 @@ +% name : PPCHTEX / german interface +% version : 1997.03.05 +% author : J. Hagen +% copyright : J. Hagen, A.F. Otten + +\chardef\interfacenumber=2 + +\input ppchtex.noc + +\endinput diff --git a/Master/texmf-dist/tex/generic/context/ppchtex/m-ch-en.tex b/Master/texmf-dist/tex/generic/context/ppchtex/m-ch-en.tex new file mode 100644 index 00000000000..6bd4353199b --- /dev/null +++ b/Master/texmf-dist/tex/generic/context/ppchtex/m-ch-en.tex @@ -0,0 +1,10 @@ +% name : PPCHTEX / english interface +% version : 1997.03.05 +% author : J. Hagen +% copyright : J. Hagen, A.F. Otten + +\chardef\interfacenumber=0 + +\input ppchtex.noc + +\endinput diff --git a/Master/texmf-dist/tex/generic/context/ppchtex/m-ch-nl.tex b/Master/texmf-dist/tex/generic/context/ppchtex/m-ch-nl.tex new file mode 100644 index 00000000000..c9d77733ac5 --- /dev/null +++ b/Master/texmf-dist/tex/generic/context/ppchtex/m-ch-nl.tex @@ -0,0 +1,10 @@ +% name : PPCHTEX / english interface +% version : 1997.03.05 +% author : J. Hagen +% copyright : J. Hagen, A.F. Otten + +\chardef\interfacenumber=1 + +\input ppchtex.noc + +\endinput diff --git a/Master/texmf-dist/tex/generic/context/ppchtex/ppchtex.noc b/Master/texmf-dist/tex/generic/context/ppchtex/ppchtex.noc new file mode 100644 index 00000000000..99d073255cb --- /dev/null +++ b/Master/texmf-dist/tex/generic/context/ppchtex/ppchtex.noc @@ -0,0 +1,212 @@ +%D \module +%D [ file=ppchtex (m-chemie), +%D version=1997.03.19, +%D title=\CONTEXT\ Extra Modules, +%D subtitle=\PPCHTEX\ (Plain Pictex Context cHemie \TEX), +%D author=Hans Hagen, +%D date=\huidigedatum, +%D copyright={PRAGMA / Hans Hagen \& Ton Otten}, +%D suggestions={Tobias Burnus, Dirk Kuypers \& Ton Otten}] +%C +%C This module is part of the \CONTEXT\ macro||package and is +%C therefore copyrighted by \PRAGMA. See licen-en.pdf for +%C details. + +%D This module facilitates the use of \PPCHTEX\ in macro +%D packages other than \CONTEXT. One of the features of +%D \CONTEXT\ is that the user interface can be in any +%D language. This language is defined at loading time. +%D +%D This module is indeed a surrogate one and is only a poor +%D man's alternative to the more extensive \type{mult-***} +%D modules of \CONTEXT. The extra overhead in terms of macros +%D and functionality that these modules offer is only useful +%D in \CONTEXT. +%D +%D Two interfaces are supported here, but others can easily be +%D defined. This module expects the general system macros to be +%D loaded as wel as a interface switch \type{\ifalternativeinterface} +%D to be set. + +%D First we load some auxiliary macro's: + +\input supp-mis.mkii \let\writestatus\undefined +\input syst-gen.mkii +\input syst-fnt.mkii + +%D after which we can go on with: + +\unprotect + +%D 0 = english +%D 1 = dutch +%D 2 = german + +\ifx\interfacenumber\undefined + \chardef\interfacenumber=0 +\fi + +\def\definesystemvariable #1 % + {\setvalue{??#1}{@@#1}} + +\def\definesystemconstant #1 % + {\setvalue{s!#1}{#1}} + +\def\definevariable #1 #2 #3 % en nl de + {\ifcase\interfacenumber + \setvalue{v!#1}{#1} + \or + \setvalue{v!#1}{#2} + \or + \setvalue{v!#1}{#3} + \fi} + +\def\defineconstant #1 #2 #3 % en nl de + {\ifcase\interfacenumber + \setvalue{c!#1}{#1} + \setvalue{c!#2}{#1} + \or + \setvalue{c!#1}{#1} + \or + \setvalue{c!#1}{#1} + \setvalue{c!#3}{#1} + \fi} + +\def\definecommand #1 #2 #3 % + {\ifcase\interfacenumber + % core commands are english + \or + \doifnot{#1}{#2}{\setvalue{#2}{\getvalue{#1}}} + \or + \doifnot{#1}{#3}{\setvalue{#3}{\getvalue{#1}}} + \fi} + +\long\def\startcommands#1\stopcommands + {} + +\def\dosetvalue#1#2#3% + {\p!doifundefined{\c!prefix!#2}% + \let\donottest=\doprocesstest + \@EA\def\csname#1#2\endcsname{#3}% + \else + \let\donottest=\doprocesstest + \@EA\def\csname#1\csname\c!prefix!#2\endcsname\endcsname{#3}% + \fi} + +\def\dosetevalue#1#2#3% + {\p!doifundefined{\c!prefix!#2}% + \let\donottest=\doprocesstest + \@EA\edef\csname#1#2\endcsname{#3}% + \else + \let\donottest=\doprocesstest + \@EA\edef\csname#1\csname\c!prefix!#2\endcsname\endcsname{#3}% + \fi} + +\def\docopyvalue#1#2#3% + {\p!doifundefined{\c!prefix!#3}% + \let\donottest=\doprocesstest + \@EA\def\csname#1#3\endcsname% + {\csname#2#3\endcsname}% + \else + \let\donottest=\doprocesstest + \@EA\def\csname#1\csname\c!prefix!#3\endcsname\endcsname% + {\csname#2\csname\c!prefix!#3\endcsname\endcsname}% + \fi} + +\def\doresetvalue#1#2% + {\dosetvalue{#1}{#2}{}} + +\def\dogetvalue#1#2% + {\csname#1\csname\c!prefix!#2\endcsname\endcsname} + +\defineconstant axis assenstelsel achsen +\defineconstant top boven oben +\defineconstant width breedte breite +\defineconstant size formaat groesse +\defineconstant number getal nummer +\defineconstant height hoogte hoehe +\defineconstant factor factor faktor +\defineconstant frame kader rahmen +%defineconstant framecolor kaderkleur rahmenfarbe +\defineconstant color kleur farbe +\defineconstant bodyfont korps fliesstext +\defineconstant style letter schriftstil +\defineconstant rulethickness lijndikte liniendicke +\defineconstant rulecolor lijnkleur linienfarbe +\defineconstant left links links +\defineconstant offset offset offset +\defineconstant bottom onder unten +\defineconstant option optie option +\defineconstant location plaats platz +\defineconstant right rechts rechts +\defineconstant resolution resolutie aufloesung +\defineconstant scale schaal format +\defineconstant state status status +\defineconstant text tekst text +\defineconstant textcolor tekstkleur tekstfarbe +\defineconstant textsize tekstformaat textgroesse +\defineconstant alternative variant alternative +\defineconstant x x x +\defineconstant y y y + +\definevariable on aan an +\definevariable big groot gross +\definevariable intext intekst imtext +\definevariable small klein klein +\definevariable medium middel mittel +\definevariable fit passend passend +\definevariable start start start +\definevariable stop stop stop +\definevariable test test test +\definevariable off uit aus + +\definecommand definechemical definieerchemie definierechemie +\definecommand setupchemical stelchemiein stellechemieein +\definecommand chemical chemie chemie +\definecommand tochemical naarchemie zurchemie +\definecommand startchemical startchemie startchemie +\definecommand stopchemical stopchemie stopchemie +\definecommand toptext boventekst textueber +\definecommand bottext ondertekst textunter +\definecommand midtext middentekst textmitte + +\protect + +%D After those definitions we actually load \PPCHTEX: + +\input ppchtex.mkii + +%D We also change some setup values. Let's hope that the next +%D setups forever suits \LATEX. + +\unprotect + +\ifx\bodyfontsize\undefined + \ifx\f@size\undefined + \ifx\@ptsize\undefined + \setupchemical[\c!bodyfont=11pt] + \else + \setupchemical[\c!bodyfont=1\@ptsize pt] + \fi + \else + \setupchemical[\c!bodyfont=\f@size pt] + \fi +\else + \setupchemical[\c!bodyfont=\bodyfontsize] +\fi + +\ifx\mathrm\undefined + \setupchemical[\c!style=\rm] +\else + \setupchemical[\c!style=\mathrm] +\fi + +\ifx\outputresolution\undefined + \setupchemical[\c!resolution=300] +\else + \setupchemical[\c!resolution=\outputresolution] +\fi + +\let\unexpanded\normalunexpanded + +\protect \endinput -- cgit v1.2.3