Khaled Hosny
f642a2aac4
feaLib: support multiple substitution with classes
...
This is a GlyphsApp extension, (partially) documented [here][1], but it is a
useful one as it allows concise glyph insertion using decomposition
without having to maintain the list of glyphs in two places. E.g.
```fea
@upper = [A-Z];
lookup insert {
sub @upper by @upper connector;
} insert;
feature ccmp {
sub @upper' lookup insert x;
} ccmp;
```
As apposed to:
```fea
@upper = [A-Z];
lookup insert {
sub A by A connector;
sub B by B connector;
sub C by C connector;
sub D by D connector;
sub E by E connector;
sub F by F connector;
sub G by G connector;
sub H by H connector;
sub I by I connector;
sub J by J connector;
sub K by K connector;
sub L by L connector;
sub M by M connector;
sub N by N connector;
sub O by O connector;
sub P by P connector;
sub R by R connector;
sub S by S connector;
sub T by T connector;
sub U by U connector;
sub V by V connector;
sub W by W connector;
sub X by X connector;
sub Y by Y connector;
sub Z by Z connector;
} insert;
feature ccmp {
sub @upper' lookup insert x;
} ccmp;
```
1. http://handbook.glyphsapp.com/en/layout/multiple-substitution-with-classes/
2023-05-09 14:06:12 +03:00
..
2020-05-28 17:43:19 +01:00
2020-04-17 17:12:00 +01:00
2020-04-17 17:12:00 +01:00
2020-04-28 14:29:50 +02:00
2020-04-28 14:29:50 +02:00
2019-03-01 01:48:48 +02:00
2019-03-01 01:48:48 +02:00
2017-01-17 13:33:46 +00:00
2017-01-17 13:33:46 +00:00
2017-01-17 13:33:46 +00:00
2017-01-17 13:33:46 +00:00
2021-02-18 19:19:18 +00:00
2017-01-17 13:33:46 +00:00
2017-01-17 13:33:46 +00:00
2017-01-17 13:33:46 +00:00
2019-03-06 16:47:16 +01:00
2017-01-17 13:33:46 +00:00
2019-03-06 16:47:16 +01:00
2017-01-17 13:33:46 +00:00
2019-03-06 16:47:16 +01:00
2017-01-17 13:33:46 +00:00
2019-03-06 16:47:16 +01:00
2017-01-17 13:33:46 +00:00
2019-03-06 16:47:16 +01:00
2017-01-17 13:33:46 +00:00
2019-03-06 16:47:16 +01:00
2020-07-07 13:24:41 +01:00
2023-01-10 16:26:12 +02:00
2020-07-07 13:24:41 +01:00
2017-01-17 13:33:46 +00:00
2023-01-28 09:51:49 -07:00
2020-04-03 17:36:34 -04:00
2017-02-17 12:49:12 +01:00
2019-03-06 16:47:16 +01:00
2017-01-17 13:33:46 +00:00
2017-02-16 17:38:47 +01:00
2021-03-22 14:45:24 +00:00
2018-09-07 15:37:33 +07:00
2018-09-07 15:37:33 +07:00
2019-01-19 12:17:38 +00:00
2019-01-19 12:17:38 +00:00
2021-04-22 12:21:30 +01:00
2021-04-22 13:11:57 +01:00
2023-01-10 16:26:12 +02:00
2023-01-10 16:26:12 +02:00
2020-04-03 17:36:34 -04:00
2020-11-16 13:42:22 +00:00
2020-07-11 19:56:29 +01:00
2020-07-11 19:56:29 +01:00
2020-04-03 19:40:22 -04:00
2020-04-03 19:40:22 -04:00
2021-05-12 08:53:26 +02:00
2021-05-12 08:53:26 +02:00
2017-01-17 13:33:46 +00:00
2017-01-17 13:33:46 +00:00
2017-01-17 13:33:46 +00:00
2017-01-17 13:33:46 +00:00
2017-01-17 13:33:46 +00:00
2017-01-17 13:33:46 +00:00
2019-03-06 16:47:16 +01:00
2022-12-14 19:01:11 -05:00
2017-02-16 13:53:55 +01:00
2019-03-15 11:16:51 +07:00
2019-03-06 16:47:16 +01:00
2021-03-22 14:45:24 +00:00
2017-01-17 13:33:46 +00:00
2021-03-22 14:45:24 +00:00
2017-01-17 13:33:46 +00:00
2017-01-17 13:33:46 +00:00
2021-02-18 19:19:18 +00:00
2017-01-17 13:33:46 +00:00
2021-02-18 19:19:18 +00:00
2017-01-17 13:33:46 +00:00
2021-02-18 19:19:18 +00:00
2017-01-17 13:33:46 +00:00
2017-01-17 13:33:46 +00:00
2020-11-16 13:42:22 +00:00
2023-05-09 14:06:12 +03:00
2023-05-09 14:06:12 +03:00
2017-05-30 11:01:39 +01:00
2017-05-30 11:45:03 +02:00
2023-01-10 16:26:12 +02:00
2020-11-17 15:17:02 +00:00
2020-11-17 15:17:02 +00:00
2020-11-17 15:17:02 +00:00
2020-04-03 17:36:34 -04:00
2020-11-16 13:42:22 +00:00
2020-04-03 17:36:34 -04:00
2017-01-17 13:33:46 +00:00
2020-04-16 16:10:03 +01:00
2017-01-17 13:33:46 +00:00
2017-01-17 13:33:46 +00:00
2017-02-13 09:19:41 +01:00
2020-04-03 17:36:34 -04:00
2017-01-17 13:33:46 +00:00
2019-09-26 16:44:46 +02:00
2019-09-26 16:44:46 +02:00
2019-09-26 16:44:46 +02:00
2019-09-26 16:44:46 +02:00
2019-03-01 01:48:48 +02:00
2019-03-01 01:48:48 +02:00
2020-09-10 08:29:04 +01:00
2017-01-17 13:33:46 +00:00
2017-01-17 13:33:46 +00:00
2020-08-07 19:57:31 +02:00
2020-08-07 19:57:31 +02:00
2017-01-17 13:33:46 +00:00
2017-01-17 13:33:46 +00:00
2017-01-17 13:33:46 +00:00
2017-01-17 13:33:46 +00:00
2018-09-07 15:37:33 +07:00
2020-05-12 06:28:25 +01:00
2020-05-12 06:28:25 +01:00
2020-05-12 06:28:25 +01:00
2020-05-12 06:28:25 +01:00
2019-03-01 01:48:48 +02:00
2019-03-01 01:48:48 +02:00
2022-07-02 15:23:03 -04:00
2022-12-13 10:39:33 -05:00
2017-01-17 13:33:46 +00:00
2017-01-17 13:33:46 +00:00
2021-11-18 11:31:49 +00:00
2021-03-22 14:45:24 +00:00
2019-03-01 01:48:48 +02:00
2019-03-01 01:48:48 +02:00
2017-01-17 13:33:46 +00:00
2021-03-24 08:04:14 -07:00
2017-01-17 13:33:46 +00:00
2017-01-17 13:33:46 +00:00
2020-04-03 17:36:34 -04:00
2018-09-07 15:37:33 +07:00
2018-09-07 15:46:29 +07:00
2018-09-07 15:37:33 +07:00
2017-05-30 11:01:39 +01:00
2017-05-30 11:45:03 +02:00
2017-05-30 11:01:39 +01:00
2017-05-30 11:45:03 +02:00
2017-01-17 13:33:46 +00:00
2017-01-17 13:33:46 +00:00
2020-04-03 17:36:34 -04:00
2017-01-17 13:33:46 +00:00
2020-04-03 17:36:34 -04:00
2020-11-16 13:42:22 +00:00
2020-04-03 17:36:34 -04:00
2017-01-17 13:33:46 +00:00
2017-01-17 13:33:46 +00:00
2017-01-17 13:33:46 +00:00
2017-01-17 13:33:46 +00:00
2020-03-10 21:42:28 +00:00
2020-04-03 17:36:34 -04:00
2017-01-17 13:33:46 +00:00
2017-01-17 13:33:46 +00:00
2017-01-17 13:33:46 +00:00
2017-01-17 13:33:46 +00:00
2017-01-17 13:33:46 +00:00
2017-01-17 13:33:46 +00:00
2021-03-22 14:45:24 +00:00
2021-02-18 19:19:18 +00:00
2017-01-17 13:33:46 +00:00
2021-02-18 19:19:18 +00:00
2017-01-17 13:33:46 +00:00
2021-02-18 19:19:18 +00:00
2017-01-17 13:33:46 +00:00
2021-02-18 19:19:18 +00:00
2022-04-08 15:54:34 +01:00
2017-02-16 13:53:55 +01:00
2017-01-17 13:33:46 +00:00
2017-01-17 13:33:46 +00:00
2022-04-08 15:54:34 +01:00
2020-04-03 17:36:34 -04:00
2017-01-17 13:33:46 +00:00
2017-02-14 14:28:10 +01:00
2022-12-13 10:39:33 -05:00
2017-01-17 13:33:46 +00:00
2022-12-13 10:39:33 -05:00
2018-03-01 10:25:24 +00:00
2022-12-13 10:39:33 -05:00
2017-01-17 13:33:46 +00:00
2017-01-17 13:33:46 +00:00
2017-01-17 13:33:46 +00:00
2017-01-17 13:33:46 +00:00
2017-01-17 13:33:46 +00:00
2017-01-17 13:33:46 +00:00
2017-01-17 13:33:46 +00:00
2017-01-17 13:33:46 +00:00
2017-01-17 13:33:46 +00:00
2017-01-17 13:33:46 +00:00
2017-01-17 13:33:46 +00:00
2017-01-17 13:33:46 +00:00
2017-02-14 11:02:12 +01:00
2022-12-13 10:39:33 -05:00
2017-01-17 13:33:46 +00:00
2017-01-17 13:33:46 +00:00
2017-01-17 13:33:46 +00:00
2017-01-17 13:33:46 +00:00
2017-01-17 13:33:46 +00:00
2017-01-17 13:33:46 +00:00
2021-02-25 17:16:02 +00:00
2021-02-25 17:16:02 +00:00
2021-02-25 17:16:02 +00:00
2021-02-25 17:16:01 +00:00
2022-10-20 16:44:02 +01:00
2020-07-07 13:20:57 +01:00
2020-07-07 13:20:57 +01:00
2020-05-28 17:43:19 +01:00
2022-09-05 14:44:50 +01:00
2022-09-05 14:44:50 +01:00
2021-10-28 11:58:54 +01:00
2021-10-28 11:58:54 +01:00
2021-10-28 11:58:54 +01:00
2021-10-28 11:58:54 +01:00
2021-10-28 11:58:54 +01:00
2021-10-28 11:58:54 +01:00
2017-02-17 13:49:32 +01:00
2020-11-16 13:42:22 +00:00
2017-02-17 13:49:32 +01:00
2020-11-16 13:42:22 +00:00
2017-02-16 15:37:40 +01:00
2017-02-16 15:37:40 +01:00
2017-02-16 15:37:40 +01:00
2017-02-16 15:37:40 +01:00
2017-02-17 14:19:54 +01:00
2017-02-17 14:19:54 +01:00
2017-02-17 14:19:54 +01:00
2017-02-17 14:19:54 +01:00