%% 
%%  Ein Beispiel der DANTE-Edition
%%  
%%  1. Auflage
%% 
%% 
%%  Copyright (C) 2013 Herbert Voss
%% 
%%  It may be distributed and/or modified under the conditions
%%  of the LaTeX Project Public License, either version 1.3
%%  of this license or (at your option) any later version.
%% 
%%  See http://www.latex-project.org/lppl.txt for details.
%% 
%% 
%% ==== 
% Show page(s) 1,2,3
%% 
%% 
\documentclass[]{exaarticle2}
\pagestyle{empty}
\setlength\textwidth{115.5155pt}
\setlength{\parindent}{0em}
\usepackage[paper=a6,pagesize,DIV15]{typearea}
%StartShownPreambleCommands
\usepackage{fontspec,luacode}
\newfontface\LMML{Latin Modern Mono Light Cond}
\begin{luacode}
local teststring = "Lua\\TeX~--~Eine Einführung."
local myfonts = dofile(fonts.names.path.dir .. "/" .. fonts.names.path.basename)
function printFontDemo(fontname)
  local fnA = string.lower(fontname)
  local a = {}
  local b = {}
  for i, v in ipairs(myfonts.mappings) do
    m, n = string.find(string.lower(v.names.family),fnA)
    if m then
      a[v.fontname] = v.familyname
      b[#b + 1] = v.fontname
    end
  end
  table.sort(b)
  for i, v in ipairs(b) do
    tex.print("\\parbox{0.21\\linewidth}{\\LMML\\footnotesize")
    tex.print(-2, a[v])
    tex.print("\\\\ \\scriptsize")
    tex.print(-2, v)
    tex.print("}\\parbox{0.79\\linewidth}{\\raggedright\\fontspec{" .. v .. "}")
    tex.print(teststring)
    tex.print("}\\\\[2pt]")
  end
end
\end{luacode}
%StopShownPreambleCommands
\begin{document}
\directlua{printFontDemo("Latin Modern")}
\end{document}
