Skip to content

delucis/smufl-glyphs-info

Repository files navigation

SMuFL Glyphs Info

npm GitHub issues

This package provides support files for use with the Glyphs font editing software that make it easier to develop fonts to the SMuFL (Standard Music Font Layout) specification.

It also includes a command line interface to help speed up installation of these support files.

Installation

To use the command line interface you will need to install this package using the Node Package Manager (NPM):

npm install -g smufl-glyphs-info
Click for more details if you’re not familiar with Node or NPM

Node.js allows you to run software written in JavaScript on your computer. The Node website includes several options for installing Node if you don’t already have it installed.

If you are already using Homebrew on your Mac, it might be easiest to install Node using Homebrew:

brew install node

Installing Node also installs the Node Package Manager, which is more commonly known as “NPM”. Here’s how the NPM installation command above breaks down:

  1. npm tells your terminal to start running the Node Package Manager.

  2. install tells NPM that you want to install a package.

  3. -g tells NPM that you want to install the package globally, rather than only for a local project.

  4. smufl-glyphs-info tells NPM the name of the package you want to install.

Usage

To install the support files using the command line interface run the following in your terminal:

smufl-glyphs

Follow the on-screen prompts to complete the installation. If you have existing GlyphData.xml or Groups.plist files, you will be asked if you want to overwrite them.

More information on how to use the smufl-glyphs command can be found by running:

smufl-glyphs --help

Details

The Glyphs font editing software allows for the expansion of its standard glyph database and custom categorisation in its left sidebar by providing custom GlyphData.xml and Groups.plist files.

This package provides:

  1. GlyphData.xml, which describes all of the glyphs defined in the SMuFL specification’s glyphnames.json so that Glyphs can understand these nonstandard codepoints.

  2. Groups.plist, which defines a custom SMuFL category in Glyphs’ left sidebar with sub-categories for each unicode range specified in the SMuFL specification’s ranges.json.

If you would like to access these files directly, you will find them in the dist directory.

Screenshot of the left sidebar in Glyphs with SMuFL support files installed

An example of the Glyphs left sidebar with the files installed

Manually copying the support files

Running the smufl-glyphs command in your terminal will copy these support files to Glyphs’ Application Support directory for you, but this can also be done manually if you prefer to avoid Node, the Terminal, and other scary things.

You can find Glyphs’ Application Support directory at: /Users/YOUR-USER-NAME/Library/Application Support/Glyphs.

One quick way to find this is to open Glyphs and select Script > Open Scripts Folder.

If it doesn’t exist, you should create an Info directory alongside the Scripts directory to put GlyphData.xml and Groups.plist in.

You should end up with a directory structure like this:

~/Library
└── Application Support
    └── Glyphs
        ├── Info
        │   ├── GlyphData.xml
        │   └── Groups.plist
        ├── Scripts
        └── ...

Contributing

This package was written by someone with fairly little experience working with Glyphs, and only cursory familiarity with the SMuFL specification. If you think something ought to be done differently, that’s fantastic! Both new issues and pull requests are very welcome.

Please check out the contribution guide for more details, and read the code of conduct to learn about being gentle and kind to one another. Gentleness and kindness are good things.

License

This software is free to use, modify, and redistribute under a GNU General Public License.

Useful Links