summaryrefslogtreecommitdiff
path: root/tex
diff options
context:
space:
mode:
Diffstat (limited to 'tex')
-rw-r--r--tex/context/base/mkii/cont-new.mkii2
-rw-r--r--tex/context/base/mkii/context.mkii2
-rw-r--r--tex/context/base/mkii/mult-fr.mkii1
-rw-r--r--tex/context/base/mkiv/cont-new.mkiv2
-rw-r--r--tex/context/base/mkiv/context.mkiv2
-rw-r--r--tex/context/base/mkiv/driv-shp.lua10
-rw-r--r--tex/context/base/mkiv/font-imp-quality.lua9
-rw-r--r--tex/context/base/mkiv/font-osd.lua110
-rw-r--r--tex/context/base/mkiv/font-ott.lua85
-rw-r--r--tex/context/base/mkiv/l-pdfview.lua2
-rw-r--r--tex/context/base/mkiv/lpdf-lmt.lua70
-rw-r--r--tex/context/base/mkiv/status-files.pdfbin26505 -> 26560 bytes
-rw-r--r--tex/context/base/mkiv/status-lua.pdfbin265692 -> 266548 bytes
-rw-r--r--tex/context/base/mkiv/syst-aux.mkiv4
-rw-r--r--tex/context/base/mkiv/syst-ini.mkiv2
-rw-r--r--tex/context/base/mkiv/trac-log.lua2
-rw-r--r--tex/context/base/mkiv/util-sbx.lua8
-rw-r--r--tex/context/interface/mkii/keys-fr.xml1
-rw-r--r--tex/context/interface/mkiv/i-context.pdfbin865472 -> 865619 bytes
-rw-r--r--tex/context/interface/mkiv/i-readme.pdfbin61165 -> 61165 bytes
-rw-r--r--tex/context/modules/mkiv/s-maps.mkiv4
-rw-r--r--tex/generic/context/luatex/luatex-fonts-merged.lua136
22 files changed, 319 insertions, 133 deletions
diff --git a/tex/context/base/mkii/cont-new.mkii b/tex/context/base/mkii/cont-new.mkii
index ce041e206..605229e98 100644
--- a/tex/context/base/mkii/cont-new.mkii
+++ b/tex/context/base/mkii/cont-new.mkii
@@ -11,7 +11,7 @@
%C therefore copyrighted by \PRAGMA. See mreadme.pdf for
%C details.
-\newcontextversion{2019.06.01 19:11}
+\newcontextversion{2019.06.05 15:39}
%D This file is loaded at runtime, thereby providing an
%D excellent place for hacks, patches, extensions and new
diff --git a/tex/context/base/mkii/context.mkii b/tex/context/base/mkii/context.mkii
index eac363a55..b8d1ff737 100644
--- a/tex/context/base/mkii/context.mkii
+++ b/tex/context/base/mkii/context.mkii
@@ -20,7 +20,7 @@
%D your styles an modules.
\edef\contextformat {\jobname}
-\edef\contextversion{2019.06.01 19:11}
+\edef\contextversion{2019.06.05 15:39}
%D For those who want to use this:
diff --git a/tex/context/base/mkii/mult-fr.mkii b/tex/context/base/mkii/mult-fr.mkii
index 4208b1406..ef0bd047c 100644
--- a/tex/context/base/mkii/mult-fr.mkii
+++ b/tex/context/base/mkii/mult-fr.mkii
@@ -570,6 +570,7 @@
\setinterfacevariable{temporary}{temporaire}
\setinterfacevariable{test}{test}
\setinterfacevariable{text}{texte}
+\setinterfacevariable{textnote}{textnote}
\setinterfacevariable{three}{trois}
\setinterfacevariable{thursday}{jeudi}
\setinterfacevariable{tight}{tight}
diff --git a/tex/context/base/mkiv/cont-new.mkiv b/tex/context/base/mkiv/cont-new.mkiv
index 590dbdf6b..4af95a2c0 100644
--- a/tex/context/base/mkiv/cont-new.mkiv
+++ b/tex/context/base/mkiv/cont-new.mkiv
@@ -13,7 +13,7 @@
% \normalend % uncomment this to get the real base runtime
-\newcontextversion{2019.06.01 19:11}
+\newcontextversion{2019.06.05 15:39}
%D This file is loaded at runtime, thereby providing an excellent place for
%D hacks, patches, extensions and new features.
diff --git a/tex/context/base/mkiv/context.mkiv b/tex/context/base/mkiv/context.mkiv
index d0cf6ec89..5189d1246 100644
--- a/tex/context/base/mkiv/context.mkiv
+++ b/tex/context/base/mkiv/context.mkiv
@@ -45,7 +45,7 @@
%D {YYYY.MM.DD HH:MM} format.
\edef\contextformat {\jobname}
-\edef\contextversion{2019.06.01 19:11}
+\edef\contextversion{2019.06.05 15:39}
\edef\contextkind {beta}
%D Kind of special:
diff --git a/tex/context/base/mkiv/driv-shp.lua b/tex/context/base/mkiv/driv-shp.lua
index 26bb06b39..b9298176a 100644
--- a/tex/context/base/mkiv/driv-shp.lua
+++ b/tex/context/base/mkiv/driv-shp.lua
@@ -338,7 +338,9 @@ flush_character = function(current,font,char,factor,vfcommands,pos_h,pos_v,pos_r
width, height, depth, factor = getwhd(current,true)
naturalwidth = width
if factor ~= 0 then
- width = (1.0 + factor/1000000.0) * width
+ -- width = (1.0 + factor/1000000.0) * width
+ width = width + width * factor/1000000.0
+ -- width = width + width * 0.000001 * factor
end
else
width = data.width or 0
@@ -369,10 +371,10 @@ flush_character = function(current,font,char,factor,vfcommands,pos_h,pos_v,pos_r
pos_v = pos_v + y
end
pushorientation(orientation,pos_h,pos_v)
- flushcharacter(current,pos_h,pos_v,pos_r,font,char,data,factor,naturalwidth,f,e)
+ flushcharacter(current,pos_h,pos_v,pos_r,font,char,data,naturalwidth,factor,width,f,e)
poporientation(orientation,pos_h,pos_v)
else
- flushcharacter(current,pos_h,pos_v,pos_r,font,char,data,factor,naturalwidth,f,e)
+ flushcharacter(current,pos_h,pos_v,pos_r,font,char,data,naturalwidth,factor,width,f,e)
end
end
return width, height, depth
@@ -1280,6 +1282,8 @@ function lpdf.convert(box,smode,objnum,specification) -- temp name
objectnumber = objnum,
}
+ lastfont = nil -- this forces a sync each page / object
+
if getid(box) == vlist_code then
vlist_out(box)
else
diff --git a/tex/context/base/mkiv/font-imp-quality.lua b/tex/context/base/mkiv/font-imp-quality.lua
index 5152d212f..b3ea73f02 100644
--- a/tex/context/base/mkiv/font-imp-quality.lua
+++ b/tex/context/base/mkiv/font-imp-quality.lua
@@ -520,13 +520,18 @@ implement {
local function initialize(tfmdata,value)
local properties = tfmdata.properties
+ local parameters = tfmdata.parameters
if properties then
value = tonumber(value)
if value then
if value < 0 then
value = 0
- elseif value > 100 then
- value = 100
+ elseif value > 10 then
+ report_expansions("threshold for %a @ %p limited to 10 pct",properties.fontname,parameters.size)
+ value = 10
+ end
+ if value > 5 then
+ report_expansions("threshold for %a @ %p exceeds 5 pct",properties.fontname,parameters.size)
end
end
properties.threshold = value or nil -- nil enforces default
diff --git a/tex/context/base/mkiv/font-osd.lua b/tex/context/base/mkiv/font-osd.lua
index 3c30910ab..8530fc264 100644
--- a/tex/context/base/mkiv/font-osd.lua
+++ b/tex/context/base/mkiv/font-osd.lua
@@ -418,15 +418,6 @@ local basic_shaping_forms = {
}
local valid = {
- -- akhn = true, -- malayalam
- -- rphf = true,
- -- pref = true,
- -- half = true,
- -- blwf = true,
- -- pstf = true,
- -- pres = true, -- malayalam
- -- blws = true, -- malayalam
- -- psts = true, -- malayalam
abvs = true,
akhn = true,
blwf = true,
@@ -619,43 +610,88 @@ local function initializedevanagi(tfmdata)
end
end
--
- -- needs checking: this might be needed per instance ?
+ -- The following presets need checking (by Kai). Most of these scripts share a common
+ -- handling (some need less but that doesn't hurt). The question is: what to enable.
--
- if script == "deva" or script == "knda" then
- sharedfeatures["dv04"] = true -- dv04_remove_joiners
- elseif script == "dev2" or script == "knd2" then
- sharedfeatures["dv01"] = true -- dv01_reorder_matras
- sharedfeatures["dv02"] = true -- dv02_reorder_reph
- sharedfeatures["dv03"] = true -- dv03_reorder_pre_base_reordering_consonants
- sharedfeatures["dv04"] = true -- dv04_remove_joiners
- -- elseif script == "knda" then -- see deva, needs checking by Kai
- -- elseif script == "knd2" then -- see dev2, needs checking by Kai
+ -- dv01_reorder_matras
+ -- dv02_reorder_reph
+ -- dv03_reorder_pre_base_reordering_consonants
+ -- dv04_remove_joiners
+ --
+ if script == "deva" then
+ sharedfeatures["dv04"] = true
+ elseif script == "dev2" then
+ sharedfeatures["dv01"] = true
+ sharedfeatures["dv02"] = true
+ sharedfeatures["dv03"] = true
+ sharedfeatures["dv04"] = true
+
+ elseif script == "knda" then
+ -- needs checking
+ sharedfeatures["dv04"] = true
+ elseif script == "knd2" then
+ -- needs checking
+ sharedfeatures["dv01"] = true
+ sharedfeatures["dv02"] = true
+ sharedfeatures["dv03"] = true
+ sharedfeatures["dv04"] = true
+
+ elseif script == "beng" then
+ -- needs checking
+ sharedfeatures["dv04"] = true
+ elseif script == "bng2" then
+ -- needs checking
+ sharedfeatures["dv01"] = true
+ sharedfeatures["dv02"] = true
+ sharedfeatures["dv03"] = true
+ sharedfeatures["dv04"] = true
+
+ elseif script == "gurj" then
+ -- needs checking
+ sharedfeatures["dv04"] = true
+ elseif script == "grj2" then
+ -- needs checking
+ sharedfeatures["dv01"] = true
+ sharedfeatures["dv02"] = true
+ sharedfeatures["dv03"] = true
+ sharedfeatures["dv04"] = true
+
+ elseif script == "guru" then
+ -- needs checking
+ sharedfeatures["dv04"] = true
+ elseif script == "gur2" then
+ -- needs checking
+ sharedfeatures["dv01"] = true
+ sharedfeatures["dv02"] = true
+ sharedfeatures["dv03"] = true
+ sharedfeatures["dv04"] = true
+
+ elseif script == "telu" then
+ -- needs checking
+ sharedfeatures["dv04"] = true
+ elseif script == "tel2" then
+ -- needs checking
+ sharedfeatures["dv01"] = true
+ sharedfeatures["dv02"] = true
+ sharedfeatures["dv03"] = true
+ sharedfeatures["dv04"] = true
+
elseif script == "mlym" then
sharedfeatures["pstf"] = true
elseif script == "mlm2" then
sharedfeatures["pstf"] = true
sharedfeatures["pref"] = true
- sharedfeatures["dv03"] = true -- dv03_reorder_pre_base_reordering_consonants
- gsubfeatures ["dv03"] = two_defaults -- reorder pre base reordering consonants
+ sharedfeatures["dv03"] = true
+ gsubfeatures ["dv03"] = two_defaults
insert(sequences,insertindex,sequence_reorder_pre_base_reordering_consonants)
- -- elseif script == "beng" then
- -- elseif script == "bng2" then
- -- elseif script == "gujr" then
- -- elseif script == "gjr2" then
- -- elseif script == "guru" then
- -- elseif script == "gur2" then
+
elseif script == "taml" then
- sharedfeatures["dv04"] = true -- dv04_remove_joiners
-sharedfeatures["pstf"] = true
+ -- needs checking
+ sharedfeatures["dv04"] = true
+ sharedfeatures["pstf"] = true
elseif script == "tml2" then
--- sharedfeatures["pstf"] = true
--- sharedfeatures["pref"] = true
--- sharedfeatures["dv01"] = true -- dv01_reorder_matras
--- sharedfeatures["dv02"] = true -- dv02_reorder_reph
--- sharedfeatures["dv03"] = true -- dv03_reorder_pre_base_reordering_consonants
--- sharedfeatures["dv04"] = true -- dv04_remove_joiners
- -- elseif script == "telu" then
- -- elseif script == "tel2" then
+ -- needs checking
+
else
report("todo: enable the right features for script %a",script)
end
diff --git a/tex/context/base/mkiv/font-ott.lua b/tex/context/base/mkiv/font-ott.lua
index 10420f6ee..c9e467f22 100644
--- a/tex/context/base/mkiv/font-ott.lua
+++ b/tex/context/base/mkiv/font-ott.lua
@@ -27,14 +27,19 @@ local statistics = otf.statistics or { }
otf.statistics = statistics
local scripts = allocate {
+ ["adlm"] = "adlam",
+ ["aghb"] = "caucasian albanian",
+ ["ahom"] = "ahom",
["arab"] = "arabic",
["armi"] = "imperial aramaic",
["armn"] = "armenian",
["avst"] = "avestan",
["bali"] = "balinese",
["bamu"] = "bamum",
+ ["bass"] = "bassa vah",
["batk"] = "batak",
["beng"] = "bengali",
+ ["bhks"] = "bhaiksuki",
["bng2"] = "bengali variant 2",
["bopo"] = "bopomofo",
["brah"] = "brahmi",
@@ -50,23 +55,33 @@ local scripts = allocate {
["copt"] = "coptic",
["cprt"] = "cypriot syllabary",
["cyrl"] = "cyrillic",
- ["deva"] = "devanagari",
["dev2"] = "devanagari variant 2",
+ ["deva"] = "devanagari",
+ ["dogr"] = "dogra",
["dsrt"] = "deseret",
+ ["dupl"] = "duployan",
["egyp"] = "egyptian heiroglyphs",
+ ["elba"] = "elbasan",
["ethi"] = "ethiopic",
["geor"] = "georgian",
+ ["gjr2"] = "gujarati variant 2",
["glag"] = "glagolitic",
+ ["gong"] = "gunjala gondi",
+ ["gonm"] = "masaram gondi",
["goth"] = "gothic",
+ ["gran"] = "grantha",
["grek"] = "greek",
["gujr"] = "gujarati",
- ["gjr2"] = "gujarati variant 2",
- ["guru"] = "gurmukhi",
["gur2"] = "gurmukhi variant 2",
+ ["guru"] = "gurmukhi",
["hang"] = "hangul",
["hani"] = "cjk ideographic",
["hano"] = "hanunoo",
+ ["hatr"] = "hatran",
["hebr"] = "hebrew",
+ ["hluw"] = "anatolian hieroglyphs",
+ ["hmng"] = "pahawh hmong",
+ ["hung"] = "old hungarian",
["ital"] = "old italic",
["jamo"] = "hangul jamo",
["java"] = "javanese",
@@ -74,49 +89,77 @@ local scripts = allocate {
["kana"] = "hiragana and katakana",
["khar"] = "kharosthi",
["khmr"] = "khmer",
- ["knda"] = "kannada",
+ ["khoj"] = "khojki",
["knd2"] = "kannada variant 2",
+ ["knda"] = "kannada",
["kthi"] = "kaithi",
["lana"] = "tai tham",
["lao" ] = "lao",
["latn"] = "latin",
["lepc"] = "lepcha",
["limb"] = "limbu",
+ ["lina"] = "linear a",
["linb"] = "linear b",
["lisu"] = "lisu",
["lyci"] = "lycian",
["lydi"] = "lydian",
+ ["mahj"] = "mahajani",
+ ["maka"] = "makasar",
["mand"] = "mandaic and mandaean",
+ ["mani"] = "manichaean",
+ ["marc"] = "marchen",
["math"] = "mathematical alphanumeric symbols",
+ ["medf"] = "medefaidrin",
+ ["mend"] = "mende kikakui",
["merc"] = "meroitic cursive",
["mero"] = "meroitic hieroglyphs",
- ["mlym"] = "malayalam",
["mlm2"] = "malayalam variant 2",
+ ["mlym"] = "malayalam",
+ ["modi"] = "modi",
["mong"] = "mongolian",
+ ["mroo"] = "mro",
["mtei"] = "meitei Mayek",
+ ["mult"] = "multani",
["musc"] = "musical symbols",
["mym2"] = "myanmar variant 2",
["mymr"] = "myanmar",
+ ["narb"] = "old north arabian",
+ ["nbat"] = "nabataean",
+ ["newa"] = "newa",
["nko" ] = 'n"ko',
+ ["nshu"] = "nüshu",
["ogam"] = "ogham",
["olck"] = "ol chiki",
["orkh"] = "old turkic and orkhon runic",
- ["orya"] = "oriya",
["ory2"] = "odia variant 2",
+ ["orya"] = "oriya",
+ ["osge"] = "osage",
["osma"] = "osmanya",
+ ["palm"] = "palmyrene",
+ ["pauc"] = "pau cin hau",
+ ["perm"] = "old permic",
["phag"] = "phags-pa",
["phli"] = "inscriptional pahlavi",
+ ["phlp"] = "psalter pahlavi",
["phnx"] = "phoenician",
+ ["plrd"] = "miao",
["prti"] = "inscriptional parthian",
["rjng"] = "rejang",
+ ["rohg"] = "hanifi rohingya",
["runr"] = "runic",
["samr"] = "samaritan",
["sarb"] = "old south arabian",
["saur"] = "saurashtra",
+ ["sgnw"] = "sign writing",
["shaw"] = "shavian",
["shrd"] = "sharada",
+ ["sidd"] = "siddham",
+ ["sind"] = "khudawadi",
["sinh"] = "sinhala",
+ ["sogd"] = "sogdian",
+ ["sogo"] = "old sogdian",
["sora"] = "sora sompeng",
+ ["soyo"] = "soyombo",
["sund"] = "sundanese",
["sylo"] = "syloti nagri",
["syrc"] = "syriac",
@@ -125,20 +168,24 @@ local scripts = allocate {
["tale"] = "tai le",
["talu"] = "tai lu",
["taml"] = "tamil",
+ ["tang"] = "tangut",
["tavt"] = "tai viet",
- ["telu"] = "telugu",
["tel2"] = "telugu variant 2",
+ ["telu"] = "telugu",
["tfng"] = "tifinagh",
["tglg"] = "tagalog",
["thaa"] = "thaana",
["thai"] = "thai",
["tibt"] = "tibetan",
+ ["tirh"] = "tirhuta",
["tml2"] = "tamil variant 2",
["ugar"] = "ugaritic cuneiform",
["vai" ] = "vai",
+ ["wara"] = "warang citi",
["xpeo"] = "old persian cuneiform",
["xsux"] = "sumero-akkadian cuneiform",
["yi" ] = "yi",
+ ["zanb"] = "zanabazar square",
}
local languages = allocate {
@@ -208,12 +255,15 @@ local languages = allocate {
["brm" ] = "burmese",
["brx" ] = "bodo",
["bsh" ] = "bashkir",
+ ["bsk" ] = "burushaski",
["bti" ] = "beti",
["bts" ] = "batak simalungun",
["bug" ] = "bugis",
+ ["byv" ] = "medumba",
["cak" ] = "kaqchikel",
["cat" ] = "catalan",
["cbk" ] = "zamboanga chavacano",
+ ["cchn"] = "chinantec",
["ceb" ] = "cebuano",
["cgg" ] = "chiga",
["cha" ] = "chamorro",
@@ -228,6 +278,8 @@ local languages = allocate {
["chr" ] = "cherokee",
["chu" ] = "chuvash",
["chy" ] = "cheyenne",
+ ["cja" ] = "western cham",
+ ["cjm" ] = "eastern cham",
["cmr" ] = "comorian",
["cop" ] = "coptic",
["cor" ] = "cornish",
@@ -283,6 +335,7 @@ local languages = allocate {
["fin" ] = "finnish",
["fji" ] = "fijian",
["fle" ] = "dutch (flemish)",
+ ["fmp" ] = "fe’fe’",
["fne" ] = "forest nenets",
["fon" ] = "fon",
["fos" ] = "faroese",
@@ -361,6 +414,7 @@ local languages = allocate {
["jan" ] = "japanese",
["jav" ] = "javanese",
["jbo" ] = "lojban",
+ ["jct" ] = "krymchak",
["jii" ] = "yiddish",
["jud" ] = "ladino",
["jul" ] = "jula",
@@ -397,6 +451,7 @@ local languages = allocate {
["kmn" ] = "kumaoni",
["kmo" ] = "komo",
["kms" ] = "komso",
+ ["kmz" ] = "khorasani turkic",
["knr" ] = "kanuri",
["kod" ] = "kodagu",
["koh" ] = "korean old hangul",
@@ -473,6 +528,7 @@ local languages = allocate {
["mar" ] = "marathi",
["maw" ] = "marwari",
["mbn" ] = "mbundu",
+ ["mbo" ] = "mbo",
["mch" ] = "manchu",
["mcr" ] = "moose cree",
["mde" ] = "mende",
@@ -489,6 +545,7 @@ local languages = allocate {
["mle" ] = "male",
["mlg" ] = "malagasy",
["mln" ] = "malinke",
+ ["mlr" ] = "malayalam reformed",
["mly" ] = "malay",
["mnd" ] = "mandinka",
["mng" ] = "mongolian",
@@ -542,6 +599,7 @@ local languages = allocate {
["nto" ] = "esperanto",
["nym" ] = "nyamwezi",
["nyn" ] = "norwegian nynorsk",
+ ["nza" ] = "mbembe tigon",
["oci" ] = "occitan",
["ocr" ] = "oji-cree",
["ojb" ] = "ojibway",
@@ -605,6 +663,7 @@ local languages = allocate {
["say" ] = "sayisi",
["scn" ] = "sicilian",
["sco" ] = "scots",
+ ["scs" ] = "north slavey",
["sek" ] = "sekota",
["sel" ] = "selkup",
["sga" ] = "old irish",
@@ -649,6 +708,9 @@ local languages = allocate {
["sxu" ] = "upper saxon",
["syl" ] = "sylheti",
["syr" ] = "syriac",
+ ["syre"] = "estrangela syriac",
+ ["syrj"] = "western syriac",
+ ["syrn"] = "eastern syriac",
["szl" ] = "silesian",
["tab" ] = "tabasaran",
["taj" ] = "tajiki",
@@ -680,6 +742,7 @@ local languages = allocate {
["tsj" ] = "tshangla",
["tua" ] = "turoyo aramaic",
["tul" ] = "tulu",
+ ["tum" ] = "tulu",
["tuv" ] = "tuvin",
["tvl" ] = "tuvalu",
["twi" ] = "twi",
@@ -705,6 +768,7 @@ local languages = allocate {
["wel" ] = "welsh",
["wlf" ] = "wolof",
["wln" ] = "walloon",
+ ["wtm" ] = "mewati",
["xbd" ] = "lü",
["xhs" ] = "xhosa",
["xjb" ] = "minjangbal",
@@ -730,6 +794,7 @@ local languages = allocate {
["zza" ] = "zazaki",
}
+
local features = allocate {
["aalt"] = "access all alternates",
["abvf"] = "above-base forms",
@@ -869,6 +934,7 @@ local features = allocate {
["vkna"] = "vertical kana alternates",
["vkrn"] = "vertical kerning",
["vpal"] = "proportional alternate vertical metrics",
+ ["vrtr"] = "vertical alternates for rotation",
["vrt2"] = "vertical rotation",
["zero"] = "slashed zero",
@@ -879,8 +945,9 @@ local features = allocate {
["cv.."] = "character variant ..",
["js.."] = "justification ..",
- ["dv.."] = "devanagari ..",
- ["ml.."] = "malayalam ..",
+ ["dv.."] = "devanagari ..", -- for internal use
+ ["ml.."] = "malayalam ..", -- for internal use
+
}
local baselines = allocate {
diff --git a/tex/context/base/mkiv/l-pdfview.lua b/tex/context/base/mkiv/l-pdfview.lua
index d2add9188..29dfaf81f 100644
--- a/tex/context/base/mkiv/l-pdfview.lua
+++ b/tex/context/base/mkiv/l-pdfview.lua
@@ -28,8 +28,6 @@ local allcalls -- a table with templates that close all open pdf documents
local runner -- runner function
local expander -- filename cleanup function
--- maybe spawn/execute spec in calls
-
if os.type == "windows" then
-- os.setenv("path",os.getenv("path") .. ";" .. "c:/data/system/pdf-xchange")
diff --git a/tex/context/base/mkiv/lpdf-lmt.lua b/tex/context/base/mkiv/lpdf-lmt.lua
index 156d3486f..0c6f1f3e4 100644
--- a/tex/context/base/mkiv/lpdf-lmt.lua
+++ b/tex/context/base/mkiv/lpdf-lmt.lua
@@ -7,7 +7,7 @@ if not modules then modules = { } end modules ['lpdf-lmt'] = {
}
-- The code below was originally in back-lpd.lua but it makes more sense in
--- this namespace.
+-- this namespace. I will rename variables.
if CONTEXTLMTXMODE == 0 then
return
@@ -22,14 +22,15 @@ end
-- https://www.youtube.com/watch?v=TYuTE_1jvvE
-- https://www.youtube.com/watch?v=nnicGKX3lvM
--
--- For the moment we have to support the built in backend as well as the alternative. So the
--- next interface is suboptimal and will change at some time.
+-- For the moment we have to support the built in backend as well as the alternative. So
+-- the next interface is suboptimal and will change at some time. At that moment I will
+-- also optimize and extend.
local type, next, unpack, tonumber = type, next, unpack, tonumber
local char, rep, find = string.char, string.rep, string.find
local formatters, splitupstring = string.formatters, string.splitup
local band, extract = bit32.band, bit32.extract
-local concat, keys, sortedhash = table.concat, table.keys, table.sortedhash
+local concat, sortedhash = table.concat, table.sortedhash
local setmetatableindex = table.setmetatableindex
local bpfactor = number.dimenfactors.bp
@@ -38,9 +39,6 @@ local md5HEX = md5.HEX
local osuuid = os.uuid
local zlibcompress = flate.zip_compress or zlib.compress
-local starttiming = statistics.starttiming
-local stoptiming = statistics.stoptiming
-
local nuts = nodes.nuts
local tonut = nodes.tonut
@@ -128,10 +126,6 @@ local function reset_variables(specification)
usedxforms = { }
usedximages = { }
boundingbox = specification.boundingbox
- --
--- if overload then
--- overload()
--- end
end
-- buffer
@@ -140,18 +134,9 @@ local buffer = { }
local b = 0
local function reset_buffer()
- -- buffer = { }
- b = 0
-end
-
-local function flush_buffer()
b = 0
end
-local function show_buffer()
- print(concat(buffer,"\n",1,b))
-end
-
-- fonts
local fontcharacters
@@ -159,11 +144,11 @@ local fontparameters
local fontproperties
local usedcharacters = setmetatableindex("table")
local pdfcharacters
+
local horizontalmode = true
----- widefontmode = true
local scalefactor = 1
------ threshold = 655360 / (10 * 5) -- default is 5
-local threshold = 655360 * 50 / 100
+local threshold = 655360 * 5 / 100
local tjfactor = 100 / 65536
lpdf.usedcharacters = usedcharacters
@@ -178,8 +163,7 @@ local function updatefontstate(font)
horizontalmode = fontparameters.writingmode ~= "vertical"
-- widefontmode = fontproperties.encodingbytes == 2
scalefactor = (designsize/size) * tjfactor
- -- threshold = designsize / (10 * (fontproperties.threshold or 5))
- threshold = designsize * (fontproperties.threshold or 50) / 100
+ threshold = size * (fontproperties.threshold or 5) / 100
end
-- helpers
@@ -393,6 +377,10 @@ local flushcharacter do
local round = math.round
+ -- across pages ... todo: clean up because we don't need to pass the font
+ -- as fontparameters already has checked / set it we can also have a variable
+ -- for it so
+
local function setup_fontparameters(font,factor,f,e)
local slant = (fontparameters.slantfactor or 0) / 1000
local extend = (fontparameters.extendfactor or 1000) / 1000
@@ -472,13 +460,13 @@ local flushcharacter do
-- local f_char = formatters["%c"]
local f_hex = formatters["%04X"]
- local h_hex = setmetatableindex(function(t,k)
+ local h_hex = setmetatableindex(function(t,k) -- we already have this somewhere
local v = f_hex(k)
t[k] = v
return v
end)
- flushcharacter = function(current,pos_h,pos_v,pos_r,font,char,data,factor,width,f,e)
+ flushcharacter = function(current,pos_h,pos_v,pos_r,font,char,data,naturalwidth,factor,width,f,e)
if need_tf or font ~= f_cur or f_pdf ~= f_pdf_cur or fs ~= fs_cur or mode == "page" then
pdf_goto_textmode()
setup_fontparameters(font,factor,f,e)
@@ -488,10 +476,15 @@ local flushcharacter do
need_tm = true
end
local move = calc_pdfpos(pos_h,pos_v)
+
+ -- report(
+ -- "factor %i, width %p, naturalwidth %p, move %l, tm %l, hpos %p, delta %p, threshold %p, cw %p",
+ -- factor,width,naturalwidth,move,need_tm,pos_h,tj_delta,threshold,cw
+ -- )
+
if move or need_tm then
if not need_tm then
if horizontalmode then
--- print(tj_delta,threshold)
if (saved_text_pos_v + tmty) ~= pdf_v then
need_tm = true
elseif tj_delta >= threshold or tj_delta <= -threshold then
@@ -512,23 +505,13 @@ local flushcharacter do
move = calc_pdfpos(pos_h,pos_v)
end
if move then
- -- local d = round(tj_delta * scalefactor)
- -- if d ~= 0 then
local d = tj_delta * scalefactor
- if d <= -0.5 or d >= 0.5 then
+ if d <= -0.5 or d >= 0.5 then -- 0.25
if mode == "char" then
end_charmode()
end
- -- b = b + 1 ; buffer[b] = f_skip(d)
- -- b = b + 1 ; buffer[b] = d
- b = b + 1 ; buffer[b] = round(d)
+ b = b + 1 ; buffer[b] = round(d) -- or f_skip(d)
end
--- if d <= -0.25 or d >= 0.25 then
--- if mode == "char" then
--- end_charmode()
--- end
--- b = b + 1 ; buffer[b] = f_skip(d)
--- end
cw = cw - tj_delta
end
end
@@ -550,9 +533,8 @@ local flushcharacter do
-- buffer[b] = f_char(char)
-- end
- cw = cw + width
+ cw = cw + naturalwidth
- -- pdfcharacters[fontcharacters[char].index or char] = true
pdfcharacters[index] = true
end
@@ -1242,12 +1224,6 @@ local wrapup, registerpage do
wrapup = function()
- -- local includechar = lpdf.includecharlist
- --
- -- for font, list in next, usedcharacters do
- -- includechar(font,keys(list))
- -- end
-
-- hook (to reshuffle pages)
local pagetree = { }
local parent = nil
diff --git a/tex/context/base/mkiv/status-files.pdf b/tex/context/base/mkiv/status-files.pdf
index 16d4d5c9d..1c524b8d1 100644
--- a/tex/context/base/mkiv/status-files.pdf
+++ b/tex/context/base/mkiv/status-files.pdf
Binary files differ
diff --git a/tex/context/base/mkiv/status-lua.pdf b/tex/context/base/mkiv/status-lua.pdf
index 41badc3d8..f6553771d 100644
--- a/tex/context/base/mkiv/status-lua.pdf
+++ b/tex/context/base/mkiv/status-lua.pdf
Binary files differ
diff --git a/tex/context/base/mkiv/syst-aux.mkiv b/tex/context/base/mkiv/syst-aux.mkiv
index 924043849..8336800fc 100644
--- a/tex/context/base/mkiv/syst-aux.mkiv
+++ b/tex/context/base/mkiv/syst-aux.mkiv
@@ -8526,12 +8526,12 @@
\let\elapsedseconds \elapsedtime
\newcount\c_syst_helpers_test_feature_n
-\chardef \c_syst_helpers_test_feature_m\zerocount
+\newcount\c_syst_helpers_test_feature_m
\def\currentfeaturetest{\number\c_syst_helpers_test_feature_n}
\unexpanded\def\testfeature#1#2%
- {\chardef\c_syst_helpers_test_feature_m#1\relax
+ {\c_syst_helpers_test_feature_m#1\relax
\def\syst_helpers_test_feature_yes
{\advance\c_syst_helpers_test_feature_n\plusone
\ifnum\c_syst_helpers_test_feature_n>\c_syst_helpers_test_feature_m\else
diff --git a/tex/context/base/mkiv/syst-ini.mkiv b/tex/context/base/mkiv/syst-ini.mkiv
index 7664074c5..24397ecbf 100644
--- a/tex/context/base/mkiv/syst-ini.mkiv
+++ b/tex/context/base/mkiv/syst-ini.mkiv
@@ -412,7 +412,7 @@
\newdimen \zeropoint \zeropoint 0pt
\newdimen \onepoint \onepoint 1pt
\newdimen \halfapoint \halfapoint 0.5pt
-\newdimen \maxdimen \maxdimen 16383.99999pt
+\newdimen \maxdimen \maxdimen 16383.99999pt % 1073741823sp
\newcount \maxcount \maxcount 2147483647
\newdimen \onebasepoint \onebasepoint 1bp
\newdimen \scaledpoint \scaledpoint 1sp
diff --git a/tex/context/base/mkiv/trac-log.lua b/tex/context/base/mkiv/trac-log.lua
index e76c9f684..fd7b5016a 100644
--- a/tex/context/base/mkiv/trac-log.lua
+++ b/tex/context/base/mkiv/trac-log.lua
@@ -395,7 +395,7 @@ if runningtex and texio then
status_yes = f.status_yes
status_nop = f.status_nop
if variant == "ansi" then
- useluawrites() -- because tex escapes ^^
+ useluawrites() -- because tex escapes ^^, not needed in lmtx
end
settarget(whereto)
end
diff --git a/tex/context/base/mkiv/util-sbx.lua b/tex/context/base/mkiv/util-sbx.lua
index d5cf691ce..196c816d0 100644
--- a/tex/context/base/mkiv/util-sbx.lua
+++ b/tex/context/base/mkiv/util-sbx.lua
@@ -307,8 +307,8 @@ end
-- runners can be strings or tables
--
-- os.execute : string
--- os.exec : string or table with program in [0|1]
--- os.spawn : string or table with program in [0|1]
+-- os.exec : string or table with program in [0|1] -- no longer there
+-- os.spawn : string or table with program in [0|1] -- no longer there
--
-- our execute: registered program with specification
@@ -609,8 +609,8 @@ end
if os then
overload(os.execute, binaryrunner, "os.execute")
- overload(os.spawn, dummyrunner, "os.spawn")
- overload(os.exec, dummyrunner, "os.exec")
+ overload(os.spawn, dummyrunner, "os.spawn") -- no longer there
+ overload(os.exec, dummyrunner, "os.exec") -- no longer there
overload(os.resultof, binaryrunner, "os.resultof")
overload(os.pipeto, binaryrunner, "os.pipeto")
overload(os.rename, filehandlertwo,"os.rename")
diff --git a/tex/context/interface/mkii/keys-fr.xml b/tex/context/interface/mkii/keys-fr.xml
index ef9dc8ee8..cc820098b 100644
--- a/tex/context/interface/mkii/keys-fr.xml
+++ b/tex/context/interface/mkii/keys-fr.xml
@@ -573,6 +573,7 @@
<cd:variable name='temporary' value='temporaire'/>
<cd:variable name='test' value='test'/>
<cd:variable name='text' value='texte'/>
+ <cd:variable name='textnote' value='textnote'/>
<cd:variable name='three' value='trois'/>
<cd:variable name='thursday' value='jeudi'/>
<cd:variable name='tight' value='tight'/>
diff --git a/tex/context/interface/mkiv/i-context.pdf b/tex/context/interface/mkiv/i-context.pdf
index fd58e5805..746f0fb36 100644
--- a/tex/context/interface/mkiv/i-context.pdf
+++ b/tex/context/interface/mkiv/i-context.pdf
Binary files differ
diff --git a/tex/context/interface/mkiv/i-readme.pdf b/tex/context/interface/mkiv/i-readme.pdf
index c13794faa..847353e60 100644
--- a/tex/context/interface/mkiv/i-readme.pdf
+++ b/tex/context/interface/mkiv/i-readme.pdf
Binary files differ
diff --git a/tex/context/modules/mkiv/s-maps.mkiv b/tex/context/modules/mkiv/s-maps.mkiv
index bc0bcbaa0..af646b2e1 100644
--- a/tex/context/modules/mkiv/s-maps.mkiv
+++ b/tex/context/modules/mkiv/s-maps.mkiv
@@ -181,7 +181,7 @@
\unexpanded\def\hfonti {\ssbfa}
\unexpanded\def\hfontii {\ssbf}
\unexpanded\def\hfontiii {\rm\bi}
-\unexpanded\def\runin #1{#1}
+\unexpanded\def\runin #1{#1.}
\setuphead [section,subject]
[style=\hfonti,
@@ -576,8 +576,6 @@
\continueifinputfile{s-maps.mkiv}
-% \enabletrackers[mixedcolumns.*]
-
% \enablemode[nosubsub] % if you need at most two levels of sectioning
% \enablemode[onecolumn] % for symmetric single-column layout
% \enablemode[asym] % for asymmetric single-column layout, left aligned
diff --git a/tex/generic/context/luatex/luatex-fonts-merged.lua b/tex/generic/context/luatex/luatex-fonts-merged.lua
index 81e00d12e..bafaac767 100644
--- a/tex/generic/context/luatex/luatex-fonts-merged.lua
+++ b/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 : 06/01/19 19:11:40
+-- merge date : 06/05/19 15:39:40
do -- begin closure to overcome local limits and interference
@@ -12426,14 +12426,19 @@ otf.tables=tables
local statistics=otf.statistics or {}
otf.statistics=statistics
local scripts=allocate {
+ ["adlm"]="adlam",
+ ["aghb"]="caucasian albanian",
+ ["ahom"]="ahom",
["arab"]="arabic",
["armi"]="imperial aramaic",
["armn"]="armenian",
["avst"]="avestan",
["bali"]="balinese",
["bamu"]="bamum",
+ ["bass"]="bassa vah",
["batk"]="batak",
["beng"]="bengali",
+ ["bhks"]="bhaiksuki",
["bng2"]="bengali variant 2",
["bopo"]="bopomofo",
["brah"]="brahmi",
@@ -12449,23 +12454,33 @@ local scripts=allocate {
["copt"]="coptic",
["cprt"]="cypriot syllabary",
["cyrl"]="cyrillic",
- ["deva"]="devanagari",
["dev2"]="devanagari variant 2",
+ ["deva"]="devanagari",
+ ["dogr"]="dogra",
["dsrt"]="deseret",
+ ["dupl"]="duployan",
["egyp"]="egyptian heiroglyphs",
+ ["elba"]="elbasan",
["ethi"]="ethiopic",
["geor"]="georgian",
+ ["gjr2"]="gujarati variant 2",
["glag"]="glagolitic",
+ ["gong"]="gunjala gondi",
+ ["gonm"]="masaram gondi",
["goth"]="gothic",
+ ["gran"]="grantha",
["grek"]="greek",
["gujr"]="gujarati",
- ["gjr2"]="gujarati variant 2",
- ["guru"]="gurmukhi",
["gur2"]="gurmukhi variant 2",
+ ["guru"]="gurmukhi",
["hang"]="hangul",
["hani"]="cjk ideographic",
["hano"]="hanunoo",
+ ["hatr"]="hatran",
["hebr"]="hebrew",
+ ["hluw"]="anatolian hieroglyphs",
+ ["hmng"]="pahawh hmong",
+ ["hung"]="old hungarian",
["ital"]="old italic",
["jamo"]="hangul jamo",
["java"]="javanese",
@@ -12473,49 +12488,77 @@ local scripts=allocate {
["kana"]="hiragana and katakana",
["khar"]="kharosthi",
["khmr"]="khmer",
- ["knda"]="kannada",
+ ["khoj"]="khojki",
["knd2"]="kannada variant 2",
+ ["knda"]="kannada",
["kthi"]="kaithi",
["lana"]="tai tham",
["lao" ]="lao",
["latn"]="latin",
["lepc"]="lepcha",
["limb"]="limbu",
+ ["lina"]="linear a",
["linb"]="linear b",
["lisu"]="lisu",
["lyci"]="lycian",
["lydi"]="lydian",
+ ["mahj"]="mahajani",
+ ["maka"]="makasar",
["mand"]="mandaic and mandaean",
+ ["mani"]="manichaean",
+ ["marc"]="marchen",
["math"]="mathematical alphanumeric symbols",
+ ["medf"]="medefaidrin",
+ ["mend"]="mende kikakui",
["merc"]="meroitic cursive",
["mero"]="meroitic hieroglyphs",
- ["mlym"]="malayalam",
["mlm2"]="malayalam variant 2",
+ ["mlym"]="malayalam",
+ ["modi"]="modi",
["mong"]="mongolian",
+ ["mroo"]="mro",
["mtei"]="meitei Mayek",
+ ["mult"]="multani",
["musc"]="musical symbols",
["mym2"]="myanmar variant 2",
["mymr"]="myanmar",
+ ["narb"]="old north arabian",
+ ["nbat"]="nabataean",
+ ["newa"]="newa",
["nko" ]='n"ko',
+ ["nshu"]="nüshu",
["ogam"]="ogham",
["olck"]="ol chiki",
["orkh"]="old turkic and orkhon runic",
- ["orya"]="oriya",
["ory2"]="odia variant 2",
+ ["orya"]="oriya",
+ ["osge"]="osage",
["osma"]="osmanya",
+ ["palm"]="palmyrene",
+ ["pauc"]="pau cin hau",
+ ["perm"]="old permic",
["phag"]="phags-pa",
["phli"]="inscriptional pahlavi",
+ ["phlp"]="psalter pahlavi",
["phnx"]="phoenician",
+ ["plrd"]="miao",
["prti"]="inscriptional parthian",
["rjng"]="rejang",
+ ["rohg"]="hanifi rohingya",
["runr"]="runic",
["samr"]="samaritan",
["sarb"]="old south arabian",
["saur"]="saurashtra",
+ ["sgnw"]="sign writing",
["shaw"]="shavian",
["shrd"]="sharada",
+ ["sidd"]="siddham",
+ ["sind"]="khudawadi",
["sinh"]="sinhala",
+ ["sogd"]="sogdian",
+ ["sogo"]="old sogdian",
["sora"]="sora sompeng",
+ ["soyo"]="soyombo",
["sund"]="sundanese",
["sylo"]="syloti nagri",
["syrc"]="syriac",
@@ -12524,20 +12567,24 @@ local scripts=allocate {
["tale"]="tai le",
["talu"]="tai lu",
["taml"]="tamil",
+ ["tang"]="tangut",
["tavt"]="tai viet",
- ["telu"]="telugu",
["tel2"]="telugu variant 2",
+ ["telu"]="telugu",
["tfng"]="tifinagh",
["tglg"]="tagalog",
["thaa"]="thaana",
["thai"]="thai",
["tibt"]="tibetan",
+ ["tirh"]="tirhuta",
["tml2"]="tamil variant 2",
["ugar"]="ugaritic cuneiform",
["vai" ]="vai",
+ ["wara"]="warang citi",
["xpeo"]="old persian cuneiform",
["xsux"]="sumero-akkadian cuneiform",
["yi" ]="yi",
+ ["zanb"]="zanabazar square",
}
local languages=allocate {
["aba" ]="abaza",
@@ -12606,12 +12653,15 @@ local languages=allocate {
["brm" ]="burmese",
["brx" ]="bodo",
["bsh" ]="bashkir",
+ ["bsk" ]="burushaski",
["bti" ]="beti",
["bts" ]="batak simalungun",
["bug" ]="bugis",
+ ["byv" ]="medumba",
["cak" ]="kaqchikel",
["cat" ]="catalan",
["cbk" ]="zamboanga chavacano",
+ ["cchn"]="chinantec",
["ceb" ]="cebuano",
["cgg" ]="chiga",
["cha" ]="chamorro",
@@ -12626,6 +12676,8 @@ local languages=allocate {
["chr" ]="cherokee",
["chu" ]="chuvash",
["chy" ]="cheyenne",
+ ["cja" ]="western cham",
+ ["cjm" ]="eastern cham",
["cmr" ]="comorian",
["cop" ]="coptic",
["cor" ]="cornish",
@@ -12681,6 +12733,7 @@ local languages=allocate {
["fin" ]="finnish",
["fji" ]="fijian",
["fle" ]="dutch (flemish)",
+ ["fmp" ]="fe’fe’",
["fne" ]="forest nenets",
["fon" ]="fon",
["fos" ]="faroese",
@@ -12759,6 +12812,7 @@ local languages=allocate {
["jan" ]="japanese",
["jav" ]="javanese",
["jbo" ]="lojban",
+ ["jct" ]="krymchak",
["jii" ]="yiddish",
["jud" ]="ladino",
["jul" ]="jula",
@@ -12795,6 +12849,7 @@ local languages=allocate {
["kmn" ]="kumaoni",
["kmo" ]="komo",
["kms" ]="komso",
+ ["kmz" ]="khorasani turkic",
["knr" ]="kanuri",
["kod" ]="kodagu",
["koh" ]="korean old hangul",
@@ -12871,6 +12926,7 @@ local languages=allocate {
["mar" ]="marathi",
["maw" ]="marwari",
["mbn" ]="mbundu",
+ ["mbo" ]="mbo",
["mch" ]="manchu",
["mcr" ]="moose cree",
["mde" ]="mende",
@@ -12887,6 +12943,7 @@ local languages=allocate {
["mle" ]="male",
["mlg" ]="malagasy",
["mln" ]="malinke",
+ ["mlr" ]="malayalam reformed",
["mly" ]="malay",
["mnd" ]="mandinka",
["mng" ]="mongolian",
@@ -12940,6 +12997,7 @@ local languages=allocate {
["nto" ]="esperanto",
["nym" ]="nyamwezi",
["nyn" ]="norwegian nynorsk",
+ ["nza" ]="mbembe tigon",
["oci" ]="occitan",
["ocr" ]="oji-cree",
["ojb" ]="ojibway",
@@ -13003,6 +13061,7 @@ local languages=allocate {
["say" ]="sayisi",
["scn" ]="sicilian",
["sco" ]="scots",
+ ["scs" ]="north slavey",
["sek" ]="sekota",
["sel" ]="selkup",
["sga" ]="old irish",
@@ -13047,6 +13106,9 @@ local languages=allocate {
["sxu" ]="upper saxon",
["syl" ]="sylheti",
["syr" ]="syriac",
+ ["syre"]="estrangela syriac",
+ ["syrj"]="western syriac",
+ ["syrn"]="eastern syriac",
["szl" ]="silesian",
["tab" ]="tabasaran",
["taj" ]="tajiki",
@@ -13078,6 +13140,7 @@ local languages=allocate {
["tsj" ]="tshangla",
["tua" ]="turoyo aramaic",
["tul" ]="tulu",
+ ["tum" ]="tulu",
["tuv" ]="tuvin",
["tvl" ]="tuvalu",
["twi" ]="twi",
@@ -13103,6 +13166,7 @@ local languages=allocate {
["wel" ]="welsh",
["wlf" ]="wolof",
["wln" ]="walloon",
+ ["wtm" ]="mewati",
["xbd" ]="lü",
["xhs" ]="xhosa",
["xjb" ]="minjangbal",
@@ -13246,6 +13310,7 @@ local features=allocate {
["vkna"]="vertical kana alternates",
["vkrn"]="vertical kerning",
["vpal"]="proportional alternate vertical metrics",
+ ["vrtr"]="vertical alternates for rotation",
["vrt2"]="vertical rotation",
["zero"]="slashed zero",
["trep"]="traditional tex replacements",
@@ -29582,24 +29647,59 @@ local function initializedevanagi(tfmdata)
end
end
end
- if script=="deva" or script=="knda" then
- sharedfeatures["dv04"]=true
- elseif script=="dev2" or script=="knd2" then
- sharedfeatures["dv01"]=true
- sharedfeatures["dv02"]=true
- sharedfeatures["dv03"]=true
+ if script=="deva" then
+ sharedfeatures["dv04"]=true
+ elseif script=="dev2" then
+ sharedfeatures["dv01"]=true
+ sharedfeatures["dv02"]=true
+ sharedfeatures["dv03"]=true
+ sharedfeatures["dv04"]=true
+ elseif script=="knda" then
+ sharedfeatures["dv04"]=true
+ elseif script=="knd2" then
+ sharedfeatures["dv01"]=true
+ sharedfeatures["dv02"]=true
+ sharedfeatures["dv03"]=true
+ sharedfeatures["dv04"]=true
+ elseif script=="beng" then
+ sharedfeatures["dv04"]=true
+ elseif script=="bng2" then
+ sharedfeatures["dv01"]=true
+ sharedfeatures["dv02"]=true
+ sharedfeatures["dv03"]=true
+ sharedfeatures["dv04"]=true
+ elseif script=="gurj" then
+ sharedfeatures["dv04"]=true
+ elseif script=="grj2" then
+ sharedfeatures["dv01"]=true
+ sharedfeatures["dv02"]=true
+ sharedfeatures["dv03"]=true
+ sharedfeatures["dv04"]=true
+ elseif script=="guru" then
+ sharedfeatures["dv04"]=true
+ elseif script=="gur2" then
+ sharedfeatures["dv01"]=true
+ sharedfeatures["dv02"]=true
+ sharedfeatures["dv03"]=true
+ sharedfeatures["dv04"]=true
+ elseif script=="telu" then
+ sharedfeatures["dv04"]=true
+ elseif script=="tel2" then
+ sharedfeatures["dv01"]=true
+ sharedfeatures["dv02"]=true
+ sharedfeatures["dv03"]=true
sharedfeatures["dv04"]=true
elseif script=="mlym" then
sharedfeatures["pstf"]=true
elseif script=="mlm2" then
sharedfeatures["pstf"]=true
sharedfeatures["pref"]=true
- sharedfeatures["dv03"]=true
- gsubfeatures ["dv03"]=two_defaults
+ sharedfeatures["dv03"]=true
+ gsubfeatures ["dv03"]=two_defaults
insert(sequences,insertindex,sequence_reorder_pre_base_reordering_consonants)
elseif script=="taml" then
- sharedfeatures["dv04"]=true
-sharedfeatures["pstf"]=true
+ sharedfeatures["dv04"]=true
+ sharedfeatures["pstf"]=true
elseif script=="tml2" then
else
report("todo: enable the right features for script %a",script)