自定义字体视图边栏条目

教程
作者:Rainer Erich Scheichelbauer
en fr zh

You can customize your sidebar entries in the Font View. As it is very useful for verifying, sorting and filtering your glyph sets, and adding new scripts to Glyphs, it’s definitely worthwhile to learn how to do it. Plus, customizing your sidebar is quick to do!

你可以在字体视图中自定义侧边栏中的分类。Glyphs 会在 ~/资源库/Application Support/Glyphs/Info/ 文件夹中查找名为 Groups.plist 的文件。要快速前往这里,选择“脚本 > 打开脚本文件夹”(Cmd-Shift-Y),然后在 Scripts 文件夹旁边寻找名为 Info 的文件夹。如果没有这个文件夹,请访达命令“文件 > 新建文件夹”(Cmd-Shift-N)添加。

Info 文件夹中,使用文本编辑器创建 Groups.plist 文件。文本编辑器最好可以为 Apple 属性列表文件 (文件后缀名 .plist)的句法上色。我会推荐 TextWrangler、TextMate、BBEdit 或 SublimeText。

自定义的分类和语言条目具有以下格式:

{
    categories = (
        {
            name = "Compatibility";
            icon = compatibilityTemplate;
            subGroup = (
                {
                    name = "Web";
                    coverage = (
                        .notdef,
                        hyphen,
                        space
                    );
                },
                {
                    name = "Windows";
                    coverage = (
                        nbspace,
                        softhyphen
                    );
                }
            );
        },
    );
    languages = (
        {
            name = "Esperanto";
            icon = EsperantoTemplate;
            predicate = "script == \"latin\"";
            subGroup = (
                {
                    name = "Letters";
                    coverage = (
                        Ccircumflex,
                        ccircumflex,
                        Gcircumflex,
                        gcircumflex,
                        Hcircumflex,
                        hcircumflex,
                        Jcircumflex,
                        jcircumflex,
                        Scircumflex,
                        scircumflex,
                        Ubreve,
                        ubreve
                    );
                },
                {
                    name = "Marks";
                    coverage = (
                        circumflexcomb,
                        brevecomb
                    );
                }
            );
        },
    );
}

将这个 Groups.plist 的示例内容拷贝进你喜欢的文本编辑器,修改成你想要的内容,再如前所示地保存。然后重启 Glyphs,左侧边栏看上去应该差不多像这样:

要关注的事情

当你设定“分类”和“语言”时,需要严格遵守以下几条规则:

  • 分类条目放入 categories=(...); 中。
  • 语言条目放入 languages=(...); 中。
  • 每个条目必须有一个 name 名称。如果名称中没有空格,你可以不写那对引号。
  • 每个条目需要以分号结尾。
  • 每个条目下可以添加 subGroup 来进行次级编组,或添加一个逗号分隔的 coverage 所包含内容的清单。这两者是互斥的,只能选择其一。
  • 顶级条目还可以带有一个 script 文种属性。当它们在左侧边栏中选中时,可以通过文种标签过滤。
  • 条目可以配有一个 icon 图标。图标文件名必须以 Template 结尾,你不需要指定文件后缀名。详见下文。

添加图标

Glyphs 会在 Groups.plist 文件旁的 Icons 子文件夹中寻找带有特殊文件名的图像文件。

图标格式任意,只要是 Mac OS 支持的都可以。我们建议使用黑白的 PDF 文件,因为它们可以自由缩放而不失真。确保其高度不超过 16 像素(72 ppi 的分辨率下,就是 16 pt),宽和高差不多相等,这样它们就可以完美适应侧边栏中名称旁边的位置。

如果你极其想用像素图像,你需要准备两个文件,以便同时支持视网膜显示屏:其一必须是 16×16 像素,另一个为 32×32 像素。大图的文件名后需要接 @2x 后缀,在句点之前,比如 esperantoTemplate.pngesperantoTemplate@2x.png。再次强调,文件名需要以 Template 结尾,此外,这个图像是被用作蒙板的,仅使用其中的 alpha 值。因此所有颜色信息都会被忽略。


2016-03-26 更新:修正 subGroup 分隔符。感谢 @zen 和 @kosbarts 报告。
2017-03-16 更新:修正样例中的拉丁文种标签。感谢 @timahrens 报告。
2019-07-07 更新:修正顶层分类的文种过滤器。(script = latin > predicate = "script == \"latin\"";

Chinese translation by Willie Liu (刘育黎) from 3type (三言).