texlive[73987] branches/branch2024.final: luafindfont (branch)

commits+karl at tug.org commits+karl at tug.org
Fri Feb 14 23:34:53 CET 2025


Revision: 73987
          https://tug.org/svn/texlive?view=revision&revision=73987
Author:   karl
Date:     2025-02-14 23:34:53 +0100 (Fri, 14 Feb 2025)
Log Message:
-----------
luafindfont (branch) (14feb25)

Modified Paths:
--------------
    branches/branch2024.final/Build/source/texk/texlive/linked_scripts/luafindfont/luafindfont.lua
    branches/branch2024.final/Master/texmf-dist/doc/man/man1/luafindfont.1
    branches/branch2024.final/Master/texmf-dist/doc/man/man1/luafindfont.man1.pdf
    branches/branch2024.final/Master/texmf-dist/doc/support/luafindfont/CHANGELOG
    branches/branch2024.final/Master/texmf-dist/doc/support/luafindfont/README.md
    branches/branch2024.final/Master/texmf-dist/doc/support/luafindfont/luafindfont-doc.pdf
    branches/branch2024.final/Master/texmf-dist/doc/support/luafindfont/luafindfont-doc.tex
    branches/branch2024.final/Master/texmf-dist/scripts/luafindfont/luafindfont.lua

Modified: branches/branch2024.final/Build/source/texk/texlive/linked_scripts/luafindfont/luafindfont.lua
===================================================================
--- branches/branch2024.final/Build/source/texk/texlive/linked_scripts/luafindfont/luafindfont.lua	2025-02-14 22:34:38 UTC (rev 73986)
+++ branches/branch2024.final/Build/source/texk/texlive/linked_scripts/luafindfont/luafindfont.lua	2025-02-14 22:34:53 UTC (rev 73987)
@@ -1,6 +1,6 @@
 #!/usr/bin/env texlua
 --
---  $Id: luafindfont.lua 961 2024-08-25 16:47:59Z herbert $
+--  $Id: luafindfont.lua 1072 2025-02-14 12:45:31Z herbert $
 -----------------------------------------------------------------------
 --         FILE:  luafindfont.lua
 --  DESCRIPTION:  search for fonts in the database
@@ -8,7 +8,7 @@
 --       AUTHOR:  Herbert Voß  (C) 2023-06-21
 -----------------------------------------------------------------------
         luafindfont = luafindfont or { }
-      local version = 0.14
+      local version = 0.15
 luafindfont.version = version
 
 --[[
@@ -48,6 +48,7 @@
 local args_nosymbolicnames = false
 local args_otfinfo = 0
 local args_info = 0
+local args_listonly = 0
 local args_xetex = 0
 local args_max_string = 90
 
@@ -70,6 +71,8 @@
     -o,--otfinfo (default 0)
     -i,--info (default 0)
     -I,--Info (default 0)
+    -l, --listonlynames
+    -L, --listonlyfiles
     -x, --xetex 
     -v, --verbose
     -V, --version
@@ -82,6 +85,10 @@
     args_verbose = 1
   elseif (arg[i] == "-n") or (arg[i] == "--nosymbolicnames") or (arg[i] == "--no-symbolic-names") then
     args_nosymbolicnames = true
+  elseif arg[i] == "-l" or arg[i] == "--listonlynames" then
+    args_listonly = 1
+  elseif arg[i] == "-L" or arg[i] == "--listonlyfiles" then
+    args_listonly = 2
   elseif arg[i] == "-x" or arg[i] == "--xetex" then
     args_xetex = 1
   elseif arg[i] == "-o" or arg[i] == "--otfinfo" then
@@ -146,7 +153,7 @@
   print("  args_max_string = "..args_max_string)
 end
   
-if not args_font then
+if not args_font and args_listonly < 1 then
   print("No fontname given, will close ...")
   os.exit()
 end
@@ -156,7 +163,10 @@
 local Info = args_Info
 local noSymbolicNames = args_nosymbolicnames
 local maxStrLength = args_max_string
-local font_str = args_font:lower():gsub("%s+", ""):split("&")
+local font_str = {}
+if args_listonly < 1 then
+  font_str = args_font:lower():gsub("%s+", ""):split("&")
+end
 if #font_str == 1 then font_str[2] = "" end
 
 local luaVersion = _VERSION
@@ -311,6 +321,29 @@
 
 --print(require 'xindex-pretty'.dump(fontData)) --["families"]["system"]["otf"]))
 
+if args_listonly == 1 then
+  local tmp = {}
+  for _,font in ipairs(fontData.mappings) do
+    tmp[#tmp + 1] = font.fontname --.. " (" .. font.basename .. ")"
+  end
+  table.sort(tmp)
+  for _,fontname in ipairs(tmp) do
+    print(fontname)
+  end
+  os.exit()
+elseif args_listonly == 2 then 
+  local tmp = {}
+  for _,font in ipairs(fontData.mappings) do
+    tmp[#tmp + 1] = font.basename
+  end
+  table.sort(tmp)
+  for _,filename in ipairs(tmp) do
+    print(filename)
+  end
+  os.exit()
+end
+
+
 fontDataMap = fontData["mappings"]
 fontFilesTable = fontData["files"]["full"]
 

Modified: branches/branch2024.final/Master/texmf-dist/doc/man/man1/luafindfont.1
===================================================================
--- branches/branch2024.final/Master/texmf-dist/doc/man/man1/luafindfont.1	2025-02-14 22:34:38 UTC (rev 73986)
+++ branches/branch2024.final/Master/texmf-dist/doc/man/man1/luafindfont.1	2025-02-14 22:34:53 UTC (rev 73987)
@@ -1,6 +1,6 @@
 .\" Manpage for luafindfont.
 .\" Contact hvoss at tug.org to correct errors or typos.
-.TH luafindfont 1 "03 nov 2022" "0.11" "luafindfont man page"
+.TH luafindfont 1 "14 feb 2024" "0.15" "luafindfont man page"
 .SH NAME
 luafindfont
 \- retrieve font informations of all installed system and TeX fonts.
@@ -25,6 +25,10 @@
 .IP -I,--Info (default 0)
 Siliar to i but uses the program mtxrun to get ll informations
 including features and corresponding languages. List can be very long.
+.IP -l, --listonlynames
+The output is a sorted long list of the symbilc names of the available fonts.
+.IP -L, --listonlyfiles
+The same with filenames (without the path!)
 .IP -v,--verbose  Verbosity level
 Give more informations, by now only -v works
 .IP -x,--xetex  

Modified: branches/branch2024.final/Master/texmf-dist/doc/man/man1/luafindfont.man1.pdf
===================================================================
(Binary files differ)

Modified: branches/branch2024.final/Master/texmf-dist/doc/support/luafindfont/CHANGELOG
===================================================================
--- branches/branch2024.final/Master/texmf-dist/doc/support/luafindfont/CHANGELOG	2025-02-14 22:34:38 UTC (rev 73986)
+++ branches/branch2024.final/Master/texmf-dist/doc/support/luafindfont/CHANGELOG	2025-02-14 22:34:53 UTC (rev 73987)
@@ -1,3 +1,4 @@
+0.15  2025-02-14  - added options -l and -L
 0.14  2024-08-25  - small changes to the output
 0.13  2023-06-23  - add exrun:close() for every kpsewhich test
 0.12  2023-06-21  - bugfix for undefined exrun (l. 251)

Modified: branches/branch2024.final/Master/texmf-dist/doc/support/luafindfont/README.md
===================================================================
--- branches/branch2024.final/Master/texmf-dist/doc/support/luafindfont/README.md	2025-02-14 22:34:38 UTC (rev 73986)
+++ branches/branch2024.final/Master/texmf-dist/doc/support/luafindfont/README.md	2025-02-14 22:34:53 UTC (rev 73987)
@@ -15,6 +15,8 @@
 -    -o,--otfinfo (default 0)
 -    -i,--info (default 0)
 -    -I,--info (default 0) with mtxrun
+-    -l, --listonlynames
+-    -L, --listonlyfiles
 -    -x,--xetex
 -    -v,--verbose
 -    -m,--max_string (default 90)

Modified: branches/branch2024.final/Master/texmf-dist/doc/support/luafindfont/luafindfont-doc.pdf
===================================================================
(Binary files differ)

Modified: branches/branch2024.final/Master/texmf-dist/doc/support/luafindfont/luafindfont-doc.tex
===================================================================
--- branches/branch2024.final/Master/texmf-dist/doc/support/luafindfont/luafindfont-doc.tex	2025-02-14 22:34:38 UTC (rev 73986)
+++ branches/branch2024.final/Master/texmf-dist/doc/support/luafindfont/luafindfont-doc.tex	2025-02-14 22:34:53 UTC (rev 73987)
@@ -1,4 +1,4 @@
- %% $Id: luafindfont-doc.tex 962 2024-08-25 16:50:54Z herbert $
+ %% $Id: luafindfont-doc.tex 1072 2025-02-14 12:45:31Z herbert $
 %
 \listfiles\setcounter{errorcontextlines}{100}
 \documentclass[paper=a4,fontsize=11pt,DIV=14,parskip=half-,
@@ -81,7 +81,7 @@
 \def\setVersion#1{\setVVersion#1!!}
 \def\setVVersion#1=#2!!{\def\luafindfontVersion{#2}} 
 
-\setVersion{version = 0.14}%  can be automatically changed by perl
+\setVersion{version = 0.15}%  can be automatically changed by perl
 
 \setkeys{hv}{cleanup={},force}
 
@@ -153,6 +153,8 @@
     -o,--otfinfo (default 0)
     -i,--info (default 0)
     -I,--Info (default 0)
+    -l, --listonlynames
+    -L, --listonlyfiles
     -x, --xetex 
     -v, --verbose
     -V, --version
@@ -256,6 +258,9 @@
 \end{externalDocument}
 
 
+\subsection{Option \texttt{-l} or \texttt{-L}}
+With one of these options you get a long sorted list of available symbolic fontnames 
+or a long sorted list of the filenames (\texttt{L}) without the path.
 
 
 

Modified: branches/branch2024.final/Master/texmf-dist/scripts/luafindfont/luafindfont.lua
===================================================================
--- branches/branch2024.final/Master/texmf-dist/scripts/luafindfont/luafindfont.lua	2025-02-14 22:34:38 UTC (rev 73986)
+++ branches/branch2024.final/Master/texmf-dist/scripts/luafindfont/luafindfont.lua	2025-02-14 22:34:53 UTC (rev 73987)
@@ -1,6 +1,6 @@
 #!/usr/bin/env texlua
 --
---  $Id: luafindfont.lua 961 2024-08-25 16:47:59Z herbert $
+--  $Id: luafindfont.lua 1072 2025-02-14 12:45:31Z herbert $
 -----------------------------------------------------------------------
 --         FILE:  luafindfont.lua
 --  DESCRIPTION:  search for fonts in the database
@@ -8,7 +8,7 @@
 --       AUTHOR:  Herbert Voß  (C) 2023-06-21
 -----------------------------------------------------------------------
         luafindfont = luafindfont or { }
-      local version = 0.14
+      local version = 0.15
 luafindfont.version = version
 
 --[[
@@ -48,6 +48,7 @@
 local args_nosymbolicnames = false
 local args_otfinfo = 0
 local args_info = 0
+local args_listonly = 0
 local args_xetex = 0
 local args_max_string = 90
 
@@ -70,6 +71,8 @@
     -o,--otfinfo (default 0)
     -i,--info (default 0)
     -I,--Info (default 0)
+    -l, --listonlynames
+    -L, --listonlyfiles
     -x, --xetex 
     -v, --verbose
     -V, --version
@@ -82,6 +85,10 @@
     args_verbose = 1
   elseif (arg[i] == "-n") or (arg[i] == "--nosymbolicnames") or (arg[i] == "--no-symbolic-names") then
     args_nosymbolicnames = true
+  elseif arg[i] == "-l" or arg[i] == "--listonlynames" then
+    args_listonly = 1
+  elseif arg[i] == "-L" or arg[i] == "--listonlyfiles" then
+    args_listonly = 2
   elseif arg[i] == "-x" or arg[i] == "--xetex" then
     args_xetex = 1
   elseif arg[i] == "-o" or arg[i] == "--otfinfo" then
@@ -146,7 +153,7 @@
   print("  args_max_string = "..args_max_string)
 end
   
-if not args_font then
+if not args_font and args_listonly < 1 then
   print("No fontname given, will close ...")
   os.exit()
 end
@@ -156,7 +163,10 @@
 local Info = args_Info
 local noSymbolicNames = args_nosymbolicnames
 local maxStrLength = args_max_string
-local font_str = args_font:lower():gsub("%s+", ""):split("&")
+local font_str = {}
+if args_listonly < 1 then
+  font_str = args_font:lower():gsub("%s+", ""):split("&")
+end
 if #font_str == 1 then font_str[2] = "" end
 
 local luaVersion = _VERSION
@@ -311,6 +321,29 @@
 
 --print(require 'xindex-pretty'.dump(fontData)) --["families"]["system"]["otf"]))
 
+if args_listonly == 1 then
+  local tmp = {}
+  for _,font in ipairs(fontData.mappings) do
+    tmp[#tmp + 1] = font.fontname --.. " (" .. font.basename .. ")"
+  end
+  table.sort(tmp)
+  for _,fontname in ipairs(tmp) do
+    print(fontname)
+  end
+  os.exit()
+elseif args_listonly == 2 then 
+  local tmp = {}
+  for _,font in ipairs(fontData.mappings) do
+    tmp[#tmp + 1] = font.basename
+  end
+  table.sort(tmp)
+  for _,filename in ipairs(tmp) do
+    print(filename)
+  end
+  os.exit()
+end
+
+
 fontDataMap = fontData["mappings"]
 fontFilesTable = fontData["files"]["full"]
 



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