Bug 26718 - "fc-match sans file" doesn't work
- Do not throw away FC_FILE in FcNameUnparse - Update the builtin "fclist" format to remove FC_FILE properly instead - Switch fc-list to use FcPatternFormat() Note that I had previously broken fc-list and it was not showing the file name anymore. No one noticed that it seems! Now fixed.
This commit is contained in:
parent
0fcf866d44
commit
e0be405a1d
|
@ -156,7 +156,9 @@ main (int argc, char **argv)
|
|||
if (quiet && !os)
|
||||
os = FcObjectSetCreate ();
|
||||
if (!verbose && !format && !os)
|
||||
os = FcObjectSetBuild (FC_FAMILY, FC_STYLE, (char *) 0);
|
||||
os = FcObjectSetBuild (FC_FAMILY, FC_STYLE, FC_FILE, (char *) 0);
|
||||
if (!format)
|
||||
format = "%{=fclist}\n";
|
||||
fs = FcFontList (0, pat, os);
|
||||
if (os)
|
||||
FcObjectSetDestroy (os);
|
||||
|
@ -173,7 +175,7 @@ main (int argc, char **argv)
|
|||
{
|
||||
FcPatternPrint (fs->fonts[j]);
|
||||
}
|
||||
else if (format)
|
||||
else
|
||||
{
|
||||
FcChar8 *s;
|
||||
|
||||
|
@ -184,17 +186,6 @@ main (int argc, char **argv)
|
|||
free (s);
|
||||
}
|
||||
}
|
||||
else
|
||||
{
|
||||
FcChar8 *str;
|
||||
FcChar8 *file;
|
||||
|
||||
str = FcNameUnparse (fs->fonts[j]);
|
||||
if (FcPatternGetString (fs->fonts[j], FC_FILE, 0, &file) == FcResultMatch)
|
||||
printf ("%s: ", file);
|
||||
printf ("%s\n", str);
|
||||
free (str);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -75,7 +75,7 @@
|
|||
|
||||
|
||||
#define FCMATCH_FORMAT "%{file:-<unknown filename>|basename}: \"%{family[0]:-<unknown family>}\" \"%{style[0]:-<unknown style>}\""
|
||||
#define FCLIST_FORMAT "%{?file{%{file}: }}%{=unparse}"
|
||||
#define FCLIST_FORMAT "%{?file{%{file}: }}%{-file{%{=unparse}}}"
|
||||
#define PKGKIT_FORMAT "%{[]family{font(%{family|downcase|delete( )})\n}}%{[]lang{font(:lang=%{lang|downcase|translate(_,-)})\n}}"
|
||||
|
||||
|
||||
|
|
|
@ -874,8 +874,7 @@ FcNameUnparseEscaped (FcPattern *pat, FcBool escape)
|
|||
{
|
||||
o = &l->types[i];
|
||||
if (!strcmp (o->object, FC_FAMILY) ||
|
||||
!strcmp (o->object, FC_SIZE) ||
|
||||
!strcmp (o->object, FC_FILE))
|
||||
!strcmp (o->object, FC_SIZE))
|
||||
continue;
|
||||
|
||||
e = FcPatternObjectFindElt (pat, FcObjectFromName (o->object));
|
||||
|
|
Loading…
Reference in New Issue