fprintf (stderr, "List fonts matching [pattern]\n");
fprintf (stderr, "\n");
#if HAVE_GETOPT_LONG
- fprintf (stderr, " -v, --verbose display status information while busy\n");
+ fprintf (stderr, " -v, --verbose display entire font pattern\n");
fprintf (stderr, " -V, --version display font config version and exit\n");
fprintf (stderr, " -?, --help display this help and exit\n");
#else
- fprintf (stderr, " -v (verbose) display status information while busy\n");
+ fprintf (stderr, " -v (verbose) display entire font pattern\n");
fprintf (stderr, " -V (version) display font config version and exit\n");
fprintf (stderr, " -? (help) display this help and exit\n");
#endif
int
main (int argc, char **argv)
{
- /*int verbose = 0;*/
+ int verbose = 0;
int i;
FcObjectSet *os = 0;
FcFontSet *fs;
FC_MAJOR, FC_MINOR, FC_REVISION);
exit (0);
case 'v':
- /* verbose = 1; */
+ verbose = 1;
break;
default:
usage (argv[0]);
if (argv[i])
{
pat = FcNameParse ((FcChar8 *) argv[i]);
- while (argv[++i])
- {
- if (!os)
- os = FcObjectSetCreate ();
- FcObjectSetAdd (os, argv[i]);
- }
+ if (!verbose)
+ while (argv[++i])
+ {
+ if (!os)
+ os = FcObjectSetCreate ();
+ FcObjectSetAdd (os, argv[i]);
+ }
}
else
pat = FcPatternCreate ();
- if (!os)
+ if (!verbose && !os)
os = FcObjectSetBuild (FC_FAMILY, FC_STYLE, (char *) 0);
fs = FcFontList (0, pat, os);
- FcObjectSetDestroy (os);
+ if (os)
+ FcObjectSetDestroy (os);
if (pat)
FcPatternDestroy (pat);
FcChar8 *font;
FcChar8 *file;
- font = FcNameUnparse (fs->fonts[j]);
- if (FcPatternGetString (fs->fonts[j], FC_FILE, 0, &file) == FcResultMatch)
- printf ("%s: ", file);
- printf ("%s\n", font);
- free (font);
+ if (verbose)
+ FcPatternPrint (fs->fonts[j]);
+ else
+ {
+ font = FcNameUnparse (fs->fonts[j]);
+ if (FcPatternGetString (fs->fonts[j], FC_FILE, 0, &file) == FcResultMatch)
+ printf ("%s: ", file);
+ printf ("%s\n", font);
+ free (font);
+ }
}
FcFontSetDestroy (fs);
}
<title>DESCRIPTION</title>
<para><command>&dhpackage;</command> lists fonts and styles
- available on the system for applications using fontconfig.</para>
-
+ available on the system for applications using fontconfig.
+ With <option>--verbose</option>, the whole font pattern
+ for each font is printed, otherwise only the elements requested
+ are printed (family and style if none provided).</para>
</refsect1>
<refsect1>
<title>OPTIONS</title>
<option>--verbose</option>
</term>
<listitem>
- <para>Display status information while busy.</para>
+ <para>Print whole font pattern for each match. Provided
+ <replaceable>element</replaceable>s are ignored in this
+ case.</para>
</listitem>
</varlistentry>
<varlistentry>