texlive[74349] Master/texmf-dist: luatexko (28feb25)

commits+karl at tug.org commits+karl at tug.org
Fri Feb 28 23:08:38 CET 2025


Revision: 74349
          https://tug.org/svn/texlive?view=revision&revision=74349
Author:   karl
Date:     2025-02-28 23:08:37 +0100 (Fri, 28 Feb 2025)
Log Message:
-----------
luatexko (28feb25)

Modified Paths:
--------------
    trunk/Master/texmf-dist/doc/luatex/luatexko/ChangeLog
    trunk/Master/texmf-dist/doc/luatex/luatexko/README
    trunk/Master/texmf-dist/doc/luatex/luatexko/luatexko-doc.pdf
    trunk/Master/texmf-dist/doc/luatex/luatexko/luatexko-doc.tex
    trunk/Master/texmf-dist/tex/luatex/luatexko/luatexko.lua
    trunk/Master/texmf-dist/tex/luatex/luatexko/luatexko.sty

Modified: trunk/Master/texmf-dist/doc/luatex/luatexko/ChangeLog
===================================================================
--- trunk/Master/texmf-dist/doc/luatex/luatexko/ChangeLog	2025-02-28 22:08:27 UTC (rev 74348)
+++ trunk/Master/texmf-dist/doc/luatex/luatexko/ChangeLog	2025-02-28 22:08:37 UTC (rev 74349)
@@ -1,3 +1,11 @@
+2025-02-28	Dohyun Kim <nomosnomos at gmail com>
+
+	Version 3.8
+
+	* luatexko.lua:
+	- fix an age-old bug regarding protrusion of harfbuzz font
+	- add 0xFF0C and 0xFF0E to fonts.protrusions.setups.default
+
 2025-02-24	Dohyun Kim <nomosnomos at gmail com>
 
 	Version 3.7

Modified: trunk/Master/texmf-dist/doc/luatex/luatexko/README
===================================================================
--- trunk/Master/texmf-dist/doc/luatex/luatexko/README	2025-02-28 22:08:27 UTC (rev 74348)
+++ trunk/Master/texmf-dist/doc/luatex/luatexko/README	2025-02-28 22:08:37 UTC (rev 74349)
@@ -1,4 +1,4 @@
-LuaTeX-ko Package version 3.7 (2025/02/24)
+LuaTeX-ko Package version 3.8 (2025/02/28)
 ===========================================
 
 This is a Lua(La)TeX macro package that supports typesetting Korean

Modified: trunk/Master/texmf-dist/doc/luatex/luatexko/luatexko-doc.pdf
===================================================================
(Binary files differ)

Modified: trunk/Master/texmf-dist/doc/luatex/luatexko/luatexko-doc.tex
===================================================================
--- trunk/Master/texmf-dist/doc/luatex/luatexko/luatexko-doc.tex	2025-02-28 22:08:27 UTC (rev 74348)
+++ trunk/Master/texmf-dist/doc/luatex/luatexko/luatexko-doc.tex	2025-02-28 22:08:37 UTC (rev 74349)
@@ -142,7 +142,7 @@
 \author{Dohyun Kim \normalsize |<nomosnomos at gmail com>| \and
         Soojin Nam \normalsize |<jsunam at gmail com>| \and
   \normalsize <\url{http://github.com/dohyunkim/luatexko}>}
-\date{Version 3.7\quad 2025/02/24}
+\date{Version 3.8\quad 2025/02/28}
 \maketitle
 
 \begin{quote}

Modified: trunk/Master/texmf-dist/tex/luatex/luatexko/luatexko.lua
===================================================================
--- trunk/Master/texmf-dist/tex/luatex/luatexko/luatexko.lua	2025-02-28 22:08:27 UTC (rev 74348)
+++ trunk/Master/texmf-dist/tex/luatex/luatexko/luatexko.lua	2025-02-28 22:08:37 UTC (rev 74349)
@@ -13,8 +13,8 @@
 
 luatexbase.provides_module {
   name        = 'luatexko',
-  date        = '2025/02/24',
-  version     = '3.7',
+  date        = '2025/02/28',
+  version     = '3.8',
   description = 'typesetting Korean with LuaTeX',
   author      = 'Dohyun Kim, Soojin Nam',
   license     = 'LPPL v1.3+',
@@ -2323,6 +2323,9 @@
   end
 end
 
+fonts.protrusions.setups.default[0xFF0C] = { 0, 1 }
+fonts.protrusions.setups.default[0xFF0E] = { 0, 1 }
+
 otfregister {
   name = "protrusion",
   description = "glyph protrusion",
@@ -2331,6 +2334,7 @@
     node = function(fontdata, _, value)
       local setup = fonts.protrusions.setups[value] or {}
       local quad  = fontdata.parameters.quad
+      local left,right,factor = setup.left or 1, setup.right or 1, setup.factor or 1
       for i, v in pairs(fontdata.characters) do
         local uni = v.unicode
         if uni then
@@ -2337,8 +2341,9 @@
           local lr = setup[uni]
           if lr then
             local wdq = v.width/quad*1000
-            v.left_protruding  = wdq*lr[1]
-            v.right_protruding = wdq*lr[2]
+            local l, r = lr[1], lr[2]
+            if l and l ~= 0 then v.left_protruding  = wdq*l*left*factor end
+            if r and r ~= 0 then v.right_protruding = wdq*r*right*factor end
           end
         end
       end
@@ -2349,13 +2354,18 @@
     plug = function(fontdata, _, value)
       local setup = fonts.protrusions.setups[value] or {}
       local quad  = fontdata.parameters.quad
+      local chrs  = fontdata.characters
+      local left,right,factor = setup.left or 1, setup.right or 1, setup.factor or 1
       for i, v in pairs(setup) do
-        for _, ii in ipairs{i, get_HB_variant_char(fontdata,i)} do
-          local chr = fontdata.characters[ii]
-          if chr then
-            local wdq = chr.width/quad*1000
-            chr.left_protruding  = wdq*v[1]
-            chr.right_protruding = wdq*v[2]
+        if chrs[i] then
+          local l, r = v[1], v[2]
+          for _, ii in ipairs{i, get_HB_variant_char(fontdata,i)} do
+            local chr = chrs[ii]
+            if chr then
+              local wdq = chr.width/quad*1000
+              if l and l ~= 0 then chr.left_protruding  = wdq*l*left*factor end
+              if r and r ~= 0 then chr.right_protruding = wdq*r*right*factor end
+            end
           end
         end
       end

Modified: trunk/Master/texmf-dist/tex/luatex/luatexko/luatexko.sty
===================================================================
--- trunk/Master/texmf-dist/tex/luatex/luatexko/luatexko.sty	2025-02-28 22:08:27 UTC (rev 74348)
+++ trunk/Master/texmf-dist/tex/luatex/luatexko/luatexko.sty	2025-02-28 22:08:37 UTC (rev 74349)
@@ -14,7 +14,7 @@
 \ifdefined\luatexkohangulfontattr \endinput\fi
 \ifdefined\ProvidesPackage
   \NeedsTeXFormat{LaTeX2e}[2021/11/15]
-  \ProvidesPackage{luatexko}[2025/02/24 v3.7 typesetting Korean with LuaTeX]
+  \ProvidesPackage{luatexko}[2025/02/28 v3.8 typesetting Korean with LuaTeX]
   \RequirePackage{luatexbase}
   \RequirePackage{fontspec}[2020/02/03]
   \let\luatexkoselectfont\selectfont



More information about the tex-live-commits mailing list.