FontConfigが隠されたフォントを発見するのを手伝ってください。
スクリプトを実行してくださいhelp-fontconfig-discover-hidden-fonts-for.shは、fontconfigで利用可能なフォントのリストを更新します。
$ ./help-fontconfig-discover-hidden-fonts-for.sh [name] [cache]
スクリプトは2つのパラメーターを取得します。
サブスクリプションサービスの非表示のキャッシュフォルダーの各非表示フォントについて、スクリプトは、指定されたサービス名を持つサブフォルダーで、fontconfigに知られている場所にシンボリックリンクを作成します。
たとえば、フォンダーにフォントをローカルに保存するFontiTiousと呼ばれる架空のフォントサブスクリプションサービスにサブスクライブされている場合~/Library/Application Support/Fontitious/.fonts/ 、フォントサブスクリプションの各変更後にスクリプトを呼び出す必要があります。
$ ./help-fontconfig-discover-hidden-fonts-for.sh fontitious
~/Library/Application Support/Fontitious/.fonts
Macos Catalinaでこのスクリプトを使用しています。隠されたフォントは、スクリプトを実行して各アプリを再起動した後、GIMP、Krita、Inkscape、Scribusに正常にリストされます。
inkscape 1.xは、独自のバージョンのfontconfigを出荷します。もう少し作業を必要とする制限付き構成:フォルダー~/Library/Application Support/org.inkscape.Inkscapeが見つかった場合、 00-load-xdg-fonts.confはorg.inkscape.Inkscape/config/fontconfig/conf.d/に作成されます。 Gimp、Krita、Scribusと一緒に箱から出して共有される場所。
フォントサブスクリプションサービスは、サブスクライバーのローカルドライブにフォントを非表示のキャッシュフォルダーに非表示のファイルとして保存する傾向があります。
フォントフォルダーを再帰的にスキャンしている間、FontConfigは隠されたファイルまたはフォルダーを静かに無視します。 fontconfig構成に明示的に含まれている場合、 ~/.fontsなどの非表示のフォントフォルダーを検討するようにfontconfigを取得することはまだ可能です。しかし、現在、FontConfigに非表示のフォントファイルを検討する方法はありません。
ソースコードは、aから始まるファイル名を明示的に除外します. :
while ((e = readdir (d)))
{
if (e->d_name[0] != '.' && strlen (e->d_name) < FC_MAX_FILE_LEN)
{
strcpy ((char *) base, (char *) e->d_name);
if (!FcStrSetAdd (files, file_prefix)) {
ret = FcFalse;
goto bail2;
}
}
}
- fontconfig/src/fcdir.c、256〜266行
このプロジェクトは、fontconfigで構成されたローカルフォルダーの1つのサブフォルダーに非表示のフォントファイルのシンボリックリンクを作成することにより、簡単な回避策を提供します。
エリック・ブレシェミエ
Creative CommonsCC0「権利を埋めない」