How can I include features from an external .fea file?

Which app version?

Version 2.5.1 (1141)

I just understanded how this work looking the temp folder. if I make an include in salt feature I dont need to add feature salt { ... }salt; in the .fea file. RIght?
Now my question is how can I have a normal fea file with all my features and include it?


Exactly! The code is inserted directly.

In the Prefix.

1 Like


Hi, similar problem with "include” statement, when I try to export a variable font. It works fine with instances and OTFs.

There is an ‘include();’ statement with a relative path in the feature code (in XXXX) but the document is not saved yet.

I’ve added in the prefix under languagesystem:

languagesystem DFLT dflt;
languagesystem latn dflt;

languagesystem latn AZE;
languagesystem latn CAT;
languagesystem latn CRT;
languagesystem latn KAZ;
languagesystem latn MOL;
languagesystem latn NLD;
languagesystem latn ROM;
languagesystem latn TAT;
languagesystem latn TRK;

include (features/familyFeatures.fea);

I’m using latest version of cutting edge.


What version of Glyphs do you have?

Version 2.5.2 (1187)

any update? :slight_smile:

Glyphs needs to replace the include path with the actual path when exporting. But the replacement code doesn’t like the space between the include and the (. Please remove it for now.

I was just having a very basic question: where should I put the include(path/to/file.fea) ?

I usually put it under the language definitions in Languagesystems prefix.

1 Like

I see, thank you so much Joancarles!

You can put it in different places. Depends what is in the file.
It can be all the features, then you would add an empty prefix and put it in there. Or, it could just contain a single lookup, then you put it inside one featue.

But putting it in below the automatic Languagesystem doesn’t seem to be a good idea. First, if the file contains all the feature code why do you need to the languageSystems from Glyphs? Shouldn’t that be in the .fea file? And if you need it, you can’t use the automatic code any more. So at least put it in its own prefix.

But if you don’t know all that, are you sure you what to use the external file in the first place. Why not use the automatic code or import the code from the file that you can easier edit it in Glyphs itself?


I’m just wondering. So far I’ve had no problem with the features generated (automatically or not) by Glyphs, but I’m just learning about it, how to work with them and, if there’s any problem, where to look at and how to solve it by my own. Just a personal thing.

Thank you so much, Georg!

Hi there,

Still trying to include an external .fea file into a variable font. As mentioned above, I added the include() statement without any space as a prefix. It works for OTFs but not for Variable fonts.

Any clue?

Ruggero, it’s hard to tell what’s happening if no errors are triggered by the app itself and we don’t see the contents of the included file. If possible, please send both files (.glyphs + Input.fea) or just the Input.fea to support at this domain for investigation.