Ich kann mal zeigen, was ich bis jetzt habe:
Zunächst habe ich eine `arara`-Regel geschrieben:
!config
# FontLister rule for arara
# version: 0.1
# requires arara 3.0+
identifier: fontlister
name: FontLister
command: <arara> @{program} @{search}
arguments:
- identifier: program
flag: <arara> @{parameters.program}
default: C:\texlive\Cygwin\bin\bash.exe
- identifier: search
flag: <arara> @{parameters.search}
default: -c "/bin/find /cygdrive/c/texlive -name '*.fd' -exec /bin/sed -n '/#/ !s!.*\DeclareFontShape{\([^}]*\)}{\([^}]*\)}{\([^}]*\)}{\([^}]*\)}.*!\1;\2;\3;\4;'{}'!p' {} \; | /bin/sort -f -k2,2 -k1 | /bin/uniq > @{getBasename(file)}.csv"
Mit `%arara: fontlister` erzeugt diese dann eine Datei `jobname.csv` mit dem Inhalt
L7x;uzc;b;it;/cygdrive/c/texlive/2013/texmf-dist/tex/latex/lithuanian/l7xuzc.fd
LAE;aealbattar;bx;n;/cygdrive/c/texlive/2013/texmf-dist/tex/latex/arabi/laeaealbattar.fd
LAE;aealbattar;m;n;/cygdrive/c/texlive/2013/texmf-dist/tex/latex/arabi/laeaealbattar.fd
LAE;asv;bx;n;/cygdrive/c/texlive/2013/texmf-dist/tex/latex/arabi/laeasv.fd
LAE;asv;m;n;/cygdrive/c/texlive/2013/texmf-dist/tex/latex/arabi/laeasv.fd
LAE;cmr;b;n;/cygdrive/c/texlive/2013/texmf-dist/tex/latex/arabi/laecmr.fd
LAE;cmr;bx;it;/cygdrive/c/texlive/2013/texmf-dist/tex/latex/arabi/laecmr.fd
***Hinweis**: Mit diesem willkürlichen Auszug funktioniert der Code unten auf jeden Fall.*
Und dann verwende ich ein Dokument, was diese Daten einliest. Ich habe dabei einmal angefangen, auzuschließen, was nicht ging (Kodierungen, Familien). Abgesehen davon, daß das so eine ziemliche Sisyphusarbeit ist das so nicht gut: Z.B. die Family `cmr` mußte bei der Kodierung `LAE` ausgeschlossen werden, bei anderen Kodierungen dürfte `cmr` aber tun.
**Kurz: Verbesserungsvorschläge wären wünschenswert. Gerne auch in Form einer Überarbeitungsantwort - ich kann dann diese AW wieder löschen.**
%Möglichst nur einmal laufen lassen! ====
% arara: fontlister
%============================
%arara: pdflatex
\documentclass[12pt, numbers=enddot]{scrartcl}
\usepackage[utf8]{inputenc}
\usepackage{selinput}
\SelectInputMappings{adieresis={ä}, germandbls={ß}}
\usepackage[
LAE,
B1, BCG, BCQ, IL2, L7X, T1, LBL, LBM, LBS, LCY, LCYW, LFE, LG, LGI,
LGR, LMC, LSI, LTH, LTW, LY1, OML, OMS, OT1, OT2, OT4, QX,
T1, T2A, T2B, T2C, T3, T5, TS1, X2,
]{fontenc}
%\usepackage[utf8]{inputenx}
%
\usepackage[ngerman]{babel}
\usepackage{datatool}
\usepackage{xcolor}
%\usepackage{hyperref}
%Überschriften
\setkomafont{disposition}{\normalcolor\usefont{T1}{lmtt}{\bfdefault}{n}}%\bfseries\ttfamily
\newcommand{\ABC}{%
ABCDEFGHIJKLMNOPQURSTUVWYZ Ä Ö Ü \par
abcdefghijklmnopqrstuvwxyz ä ö ü ß\par
0123456789\par
.,:;-!" '\$\%\&/@\_\S\#\textasciitilde\textbackslash\textless\textgreater[]\{\}()
}
%\usepackage{filecontents}
%
%\begin{filecontents}{mydata.csv}
%8r;bch;b;it;/cygdrive/c/texlive/2013/texmf-dist/tex/latex/psnfss/8rbch.fd
%B1;auncl;b;n;
%T1;etr;b;n;/cygdrive/c/texlive/2013/texmf-dist/tex/latex/archaic/t1etr.fd
%\end{filecontents}
\DTLsetseparator{;}
\DTLloaddb[
noheader,
keys={encoding,family,series,shape,adress}
]{mydb}
{\jobname.csv}
%{mydata.csv}
\begin{document}
%\tableofcontents
%\newpage
\DTLforeach*[
\not\DTLiseq{\encoding}{8r}
\and\not\DTLiseq{\encoding}{C00}
\and\not\DTLiseq{\encoding}{C01}
\and\not\DTLiseq{\encoding}{C05}
\and\not\DTLiseq{\encoding}{C09}
\and\not\DTLiseq{\encoding}{C10}
\and\not\DTLiseq{\encoding}{C11}
\and\not\DTLiseq{\encoding}{C19}
\and\not\DTLiseq{\encoding}{C20}
\and\not\DTLiseq{\encoding}{C21}
\and\not\DTLiseq{\encoding}{C31}
\and\not\DTLiseq{\encoding}{C32}
\and\not\DTLiseq{\encoding}{C33}
\and\not\DTLiseq{\encoding}{C34}
\and\not\DTLiseq{\encoding}{C35}
\and\not\DTLiseq{\encoding}{C36}
\and\not\DTLiseq{\encoding}{C37}
\and\not\DTLiseq{\encoding}{C40}
\and\not\DTLiseq{\encoding}{C41}
\and\not\DTLiseq{\encoding}{C42}
\and\not\DTLiseq{\encoding}{C43}
\and\not\DTLiseq{\encoding}{C49}
\and\not\DTLiseq{\encoding}{C50}
\and\not\DTLiseq{\encoding}{C52}
\and\not\DTLiseq{\encoding}{C60}
\and\not\DTLiseq{\encoding}{C61}
\and\not\DTLiseq{\encoding}{C62}
\and\not\DTLiseq{\encoding}{C63}
\and\not\DTLiseq{\encoding}{C64}
\and\not\DTLiseq{\encoding}{C65}
\and\not\DTLiseq{\encoding}{C70}
\and\not\DTLiseq{\encoding}{C80}
\and\not\DTLiseq{\encoding}{C81}
\and\not\DTLiseq{\encoding}{C90}
\and\not\DTLiseq{\encoding}{EU1}
\and\not\DTLiseq{\encoding}{EU2}
\and\not\DTLiseq{\encoding}{FML}
\and\not\DTLiseq{\encoding}{HE8}
\and\not\DTLiseq{\encoding}{JT1}
\and\not\DTLiseq{\encoding}{JT2}
\and\not\DTLiseq{\encoding}{JY1}
\and\not\DTLiseq{\encoding}{JY2}
\and\not\DTLiseq{\encoding}{L7X} %nicht L7x
%\and\not\DTLiseq{\encoding}{LAE}
\and\not\DTLiseq{\encoding}{LCH}
\and\not\DTLiseq{\encoding}{LCT}
\and\not\DTLiseq{\encoding}{LDV}
\and\not\DTLiseq{\encoding}{LET}
\and\not\DTLiseq{\encoding}{Let}
\and\not\DTLiseq{\encoding}{LHE}
\and\not\DTLiseq{\encoding}{LIT}
\and\not\DTLiseq{\encoding}{LKL}
\and\not\DTLiseq{\encoding}{LMA}
\and\not\DTLiseq{\encoding}{LHE}
\and\not\DTLiseq{\encoding}{LMO}
\and\not\DTLiseq{\encoding}{LMS}
\and\not\DTLiseq{\encoding}{LMU}
\and\not\DTLiseq{\encoding}{LS1}
\and\not\DTLiseq{\encoding}{LS2}
\and\not\DTLiseq{\encoding}{LSB1}
\and\not\DTLiseq{\encoding}{LSB2}
\and\not\DTLiseq{\encoding}{LSB3}
\and\not\DTLiseq{\encoding}{LSB}
\and\not\DTLiseq{\encoding}{LSBC1}
\and\not\DTLiseq{\encoding}{LSBC2}
\and\not\DTLiseq{\encoding}{LSBC3}
\and\not\DTLiseq{\encoding}{LSBC4}
\and\not\DTLiseq{\encoding}{LSBC5}
\and\not\DTLiseq{\encoding}{LSF}
\and\not\DTLiseq{\encoding}{LSI}
\and\not\DTLiseq{\encoding}{LTA}
\and\not\DTLiseq{\encoding}{LTG}
\and\not\DTLiseq{\encoding}{LTL}
\and\not\DTLiseq{\encoding}{LTW}
\and\not\DTLiseq{\encoding}{LUC}
\and\not\DTLiseq{\encoding}{MDA}
\and\not\DTLiseq{\encoding}{MDB}
\and\not\DTLiseq{\encoding}{MKR}
\and\not\DTLiseq{\encoding}{mTT}
\and\not\DTLiseq{\encoding}{MY1}
\and\not\DTLiseq{\encoding}{MY2}
\and\not\DTLiseq{\encoding}{MY3}
\and\not\DTLiseq{\encoding}{OMX}
\and\not\DTLiseq{\encoding}{T1R}
\and\not\DTLiseq{\encoding}{U}
\and\not\DTLiseq{\encoding}{UT1}
\and\not\DTLiseq{\encoding}{LMO}
%\and\not\DTLiseq{\encoding}{LBS}
%\and\not\DTLiseq{\encoding}{LMO}
%\and\not\DTLiseq{\encoding}{LMO}
%\and\not\DTLiseq{\encoding}{LMO}
%\and\not\DTLiseq{\encoding}{LMO}
\and\not\DTLiseq{\family}{etr}
\and\not\DTLiseq{\family}{aehani}
\and\not\DTLiseq{\family}{aehor}
\and\not\DTLiseq{\family}{aeostorah}
\and\not\DTLiseq{\family}{aerehan}
\and\not\DTLiseq{\family}{andlso}
\and\not\DTLiseq{\family}{ararial}
\and\not\DTLiseq{\family}{arcour}
\and\not\DTLiseq{\family}{aromega}
\and\not\DTLiseq{\family}{arsimpo}
\and\not\DTLiseq{\family}{artimes}
\and\not\DTLiseq{\family}{asv}
\and\not\DTLiseq{\family}{cmr} %Nicht gut weil auch in anderen Kodierungen!!!!!
\and\not\DTLiseq{\family}{dthuluth}
\and\not\DTLiseq{\family}{dtpn}
\and\not\DTLiseq{\family}{dtpnsp}
\and\not\DTLiseq{\family}{kacstbook}
\and\not\DTLiseq{\family}{maghribi}
\and\not\DTLiseq{\family}{naskhi}
\and\not\DTLiseq{\family}{reqaa}
\and\not\DTLiseq{\family}{traditionalarabic}
\and\not\DTLiseq{\family}{bskm}
\and\not\DTLiseq{\family}{bsksy}
%\and\not\DTLiseq{\family}{ararial}
%\and\not\DTLiseq{\family}{ararial}
%\and\not\DTLiseq{\family}{ararial}
%\and\not\DTLiseq{\family}{ararial}
]{mydb}
{\encoding=encoding, \family=family, \series=series, \shape=shape, \adress=adress}{%
\section[\textbackslash usefont\{\encoding\}\{\family\}\{\series\}\{\shape\}]{\textbackslash usefont\{\encoding\}\{\family\}\{\series\}\{\shape\} \\
\footnotesize{found in: \adress}}
\begingroup
\usefont{\encoding}{\family}{\series}{\shape}
\ABC
\endgroup
}
\end{document}
![alt text][1]
[1]: http://texwelt.de/wissen/upfiles/1111111111aaaaaa_fvfshdsht_3_1_6.png