summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHans Hagen <pragma@wxs.nl>2013-11-04 14:10:00 +0100
committerHans Hagen <pragma@wxs.nl>2013-11-04 14:10:00 +0100
commit5b41cee71daeaa60f4c92246d87f2d4f191d4733 (patch)
tree6dbd89d1b4f7f2ad396bdf41ab73867ed3f420b0
parent1026ff3db40f833a3bb9b421f211cfa6770980b2 (diff)
downloadcontext-5b41cee71daeaa60f4c92246d87f2d4f191d4733.tar.gz
beta 2013.11.04 14:10
-rw-r--r--scripts/context/lua/mtxrun.lua6
-rw-r--r--scripts/context/stubs/mswin/mtxrun.lua6
-rwxr-xr-xscripts/context/stubs/unix/mtxrun6
-rw-r--r--tex/context/base/cont-new.mkiv2
-rw-r--r--tex/context/base/context-version.pdfbin4104 -> 4107 bytes
-rw-r--r--tex/context/base/context.mkiv2
-rw-r--r--tex/context/base/scrp-cjk.lua70
-rw-r--r--tex/context/base/status-files.pdfbin24572 -> 24560 bytes
-rw-r--r--tex/context/base/status-lua.pdfbin225232 -> 225257 bytes
-rw-r--r--tex/context/base/util-str.lua2
-rw-r--r--tex/generic/context/luatex/luatex-fonts-merged.lua2
11 files changed, 80 insertions, 16 deletions
diff --git a/scripts/context/lua/mtxrun.lua b/scripts/context/lua/mtxrun.lua
index 3db45610f..9243990b4 100644
--- a/scripts/context/lua/mtxrun.lua
+++ b/scripts/context/lua/mtxrun.lua
@@ -4759,7 +4759,7 @@ do -- create closure to overcome 200 locals limit
package.loaded["util-str"] = package.loaded["util-str"] or true
--- original size: 26855, stripped down to: 15062
+-- original size: 26857, stripped down to: 15062
if not modules then modules={} end modules ['util-str']={
version=1.001,
@@ -16624,8 +16624,8 @@ end -- of closure
-- used libraries : l-lua.lua l-package.lua l-lpeg.lua l-function.lua l-string.lua l-table.lua l-io.lua l-number.lua l-set.lua l-os.lua l-file.lua l-gzip.lua l-md5.lua l-url.lua l-dir.lua l-boolean.lua l-unicode.lua l-math.lua util-str.lua util-tab.lua util-sto.lua util-prs.lua util-fmt.lua trac-set.lua trac-log.lua trac-inf.lua trac-pro.lua util-lua.lua util-deb.lua util-mrg.lua util-tpl.lua util-env.lua luat-env.lua lxml-tab.lua lxml-lpt.lua lxml-mis.lua lxml-aux.lua lxml-xml.lua trac-xml.lua data-ini.lua data-exp.lua data-env.lua data-tmp.lua data-met.lua data-res.lua data-pre.lua data-inp.lua data-out.lua data-fil.lua data-con.lua data-use.lua data-zip.lua data-tre.lua data-sch.lua data-lua.lua data-aux.lua data-tmf.lua data-lst.lua util-lib.lua luat-sta.lua luat-fmt.lua
-- skipped libraries : -
--- original bytes : 683188
--- stripped bytes : 241842
+-- original bytes : 683190
+-- stripped bytes : 241844
-- end library merge
diff --git a/scripts/context/stubs/mswin/mtxrun.lua b/scripts/context/stubs/mswin/mtxrun.lua
index 3db45610f..9243990b4 100644
--- a/scripts/context/stubs/mswin/mtxrun.lua
+++ b/scripts/context/stubs/mswin/mtxrun.lua
@@ -4759,7 +4759,7 @@ do -- create closure to overcome 200 locals limit
package.loaded["util-str"] = package.loaded["util-str"] or true
--- original size: 26855, stripped down to: 15062
+-- original size: 26857, stripped down to: 15062
if not modules then modules={} end modules ['util-str']={
version=1.001,
@@ -16624,8 +16624,8 @@ end -- of closure
-- used libraries : l-lua.lua l-package.lua l-lpeg.lua l-function.lua l-string.lua l-table.lua l-io.lua l-number.lua l-set.lua l-os.lua l-file.lua l-gzip.lua l-md5.lua l-url.lua l-dir.lua l-boolean.lua l-unicode.lua l-math.lua util-str.lua util-tab.lua util-sto.lua util-prs.lua util-fmt.lua trac-set.lua trac-log.lua trac-inf.lua trac-pro.lua util-lua.lua util-deb.lua util-mrg.lua util-tpl.lua util-env.lua luat-env.lua lxml-tab.lua lxml-lpt.lua lxml-mis.lua lxml-aux.lua lxml-xml.lua trac-xml.lua data-ini.lua data-exp.lua data-env.lua data-tmp.lua data-met.lua data-res.lua data-pre.lua data-inp.lua data-out.lua data-fil.lua data-con.lua data-use.lua data-zip.lua data-tre.lua data-sch.lua data-lua.lua data-aux.lua data-tmf.lua data-lst.lua util-lib.lua luat-sta.lua luat-fmt.lua
-- skipped libraries : -
--- original bytes : 683188
--- stripped bytes : 241842
+-- original bytes : 683190
+-- stripped bytes : 241844
-- end library merge
diff --git a/scripts/context/stubs/unix/mtxrun b/scripts/context/stubs/unix/mtxrun
index 3db45610f..9243990b4 100755
--- a/scripts/context/stubs/unix/mtxrun
+++ b/scripts/context/stubs/unix/mtxrun
@@ -4759,7 +4759,7 @@ do -- create closure to overcome 200 locals limit
package.loaded["util-str"] = package.loaded["util-str"] or true
--- original size: 26855, stripped down to: 15062
+-- original size: 26857, stripped down to: 15062
if not modules then modules={} end modules ['util-str']={
version=1.001,
@@ -16624,8 +16624,8 @@ end -- of closure
-- used libraries : l-lua.lua l-package.lua l-lpeg.lua l-function.lua l-string.lua l-table.lua l-io.lua l-number.lua l-set.lua l-os.lua l-file.lua l-gzip.lua l-md5.lua l-url.lua l-dir.lua l-boolean.lua l-unicode.lua l-math.lua util-str.lua util-tab.lua util-sto.lua util-prs.lua util-fmt.lua trac-set.lua trac-log.lua trac-inf.lua trac-pro.lua util-lua.lua util-deb.lua util-mrg.lua util-tpl.lua util-env.lua luat-env.lua lxml-tab.lua lxml-lpt.lua lxml-mis.lua lxml-aux.lua lxml-xml.lua trac-xml.lua data-ini.lua data-exp.lua data-env.lua data-tmp.lua data-met.lua data-res.lua data-pre.lua data-inp.lua data-out.lua data-fil.lua data-con.lua data-use.lua data-zip.lua data-tre.lua data-sch.lua data-lua.lua data-aux.lua data-tmf.lua data-lst.lua util-lib.lua luat-sta.lua luat-fmt.lua
-- skipped libraries : -
--- original bytes : 683188
--- stripped bytes : 241842
+-- original bytes : 683190
+-- stripped bytes : 241844
-- end library merge
diff --git a/tex/context/base/cont-new.mkiv b/tex/context/base/cont-new.mkiv
index 0a084215f..778340da1 100644
--- a/tex/context/base/cont-new.mkiv
+++ b/tex/context/base/cont-new.mkiv
@@ -11,7 +11,7 @@
%C therefore copyrighted by \PRAGMA. See mreadme.pdf for
%C details.
-\newcontextversion{2013.11.04 11:52}
+\newcontextversion{2013.11.04 14:10}
%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/context-version.pdf b/tex/context/base/context-version.pdf
index 3d5cd990f..34c46400d 100644
--- a/tex/context/base/context-version.pdf
+++ b/tex/context/base/context-version.pdf
Binary files differ
diff --git a/tex/context/base/context.mkiv b/tex/context/base/context.mkiv
index c598e9d6c..1318b2ab1 100644
--- a/tex/context/base/context.mkiv
+++ b/tex/context/base/context.mkiv
@@ -25,7 +25,7 @@
%D up and the dependencies are more consistent.
\edef\contextformat {\jobname}
-\edef\contextversion{2013.11.04 11:52}
+\edef\contextversion{2013.11.04 14:10}
\edef\contextkind {beta}
%D For those who want to use this:
diff --git a/tex/context/base/scrp-cjk.lua b/tex/context/base/scrp-cjk.lua
index f7167b45c..0ceaf4bd2 100644
--- a/tex/context/base/scrp-cjk.lua
+++ b/tex/context/base/scrp-cjk.lua
@@ -16,9 +16,11 @@ if not modules then modules = { } end modules ['scrp-cjk'] = {
local utfchar = utf.char
-local insert_node_after = node.insert_after
-local insert_node_before = node.insert_before
+local insert_node_after = nodes.insert_after
+local insert_node_before = nodes.insert_before
local remove_node = nodes.remove
+local copy_node = nodes.copy
+local traverse_id = nodes.traverse_id
local nodepool = nodes.pool
local new_glue = nodepool.glue
@@ -44,6 +46,8 @@ local fontdata = fonthashes.identifiers
local quaddata = fonthashes.quads
local spacedata = fonthashes.spaces
+local decomposed = characters.hangul.decomposed
+
local trace_details = false trackers.register("scripts.details", function(v) trace_details = v end)
local report_details = logs.reporter("scripts","detail")
@@ -490,6 +494,67 @@ scripts.installmethod {
},
}
+-- function scripts.decomposehangul(head)
+-- local current = head
+-- local done = false
+-- while current do
+-- local id = current.id
+-- if id == glyph_code then -- local index = unicode - 0xAC00 if index >= 0 and index < 19 * 21 * 28 then ... end
+-- local lead_consonant, medial_vowel, tail_consonant = decomposed(current.char)
+-- if lead_consonant then
+-- if not tail_consonant then
+-- tail_consonant = 0x11A7
+-- end
+-- current.char = lead_consonant
+-- local m = copy_node(current)
+-- local t = copy_node(current)
+-- m.char = medial_vowel
+-- t.char = tail_consonant
+-- insert_node_after(head,current,m)
+-- insert_node_after(head,current,t)
+-- done = true
+-- current = t
+-- end
+-- end
+-- current = current.next
+-- end
+-- return head, done
+-- end
+
+function scripts.decomposehangul(head)
+ local done = false
+ for current in traverse_id(glyph_code,head) do
+ local lead_consonant, medial_vowel, tail_consonant = decomposed(current.char)
+ if lead_consonant then
+ if not tail_consonant then
+ tail_consonant = 0x11A7
+ end
+ current.char = tail_consonant
+ local l = copy_node(current)
+ local m = copy_node(current)
+ l.char = lead_consonant
+ m.char = medial_vowel
+ head, current = insert_node_before(head,current,m)
+ head, current = insert_node_before(head,current,l)
+ done = true
+ end
+ end
+ return head, done
+end
+
+-- nodes.tasks.prependaction("processors","normalizers","scripts.decomposehangul")
+
+local otffeatures = fonts.constructors.newfeatures("otf")
+local registerotffeature = otffeatures.register
+
+registerotffeature {
+ name = "decomposehangul",
+ description = "decompose hangul",
+ processors = {
+ -- position = 1,
+ node = scripts.decomposehangul,
+ }
+}
-- Chinese: hanzi
local chinese_0 = {
@@ -948,4 +1013,3 @@ scripts.installmethod {
},
},
}
-
diff --git a/tex/context/base/status-files.pdf b/tex/context/base/status-files.pdf
index 15ebfb22f..29b73a56e 100644
--- a/tex/context/base/status-files.pdf
+++ b/tex/context/base/status-files.pdf
Binary files differ
diff --git a/tex/context/base/status-lua.pdf b/tex/context/base/status-lua.pdf
index 8b7df2357..929760a24 100644
--- a/tex/context/base/status-lua.pdf
+++ b/tex/context/base/status-lua.pdf
Binary files differ
diff --git a/tex/context/base/util-str.lua b/tex/context/base/util-str.lua
index 24a3f6e82..af8b1651e 100644
--- a/tex/context/base/util-str.lua
+++ b/tex/context/base/util-str.lua
@@ -647,7 +647,7 @@ local format_extension = function(extensions,f,name)
end
end
--- aA b cC d eE f gG hH iI jJ lL mM N o p qQ r sS tT uU wW xX
+-- aA b cC d eE f gG hH iI jJ lL mM N o p qQ r sS tT uU wW xX z
local builder = Cs { "start",
start = (
diff --git a/tex/generic/context/luatex/luatex-fonts-merged.lua b/tex/generic/context/luatex/luatex-fonts-merged.lua
index 3e89856fb..7ebdb0666 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 : luatex-fonts-merged.lua
-- parent file : luatex-fonts.lua
--- merge date : 11/04/13 11:52:02
+-- merge date : 11/04/13 14:10:07
do -- begin closure to overcome local limits and interference