underscoretype / glyphs-plugin-sync-metrics-keys Goto Github PK
View Code? Open in Web Editor NEWSimple Glyphs App plugin to keep referenced metrics automatically in sync
License: GNU Lesser General Public License v3.0
Simple Glyphs App plugin to keep referenced metrics automatically in sync
License: GNU Lesser General Public License v3.0
in my Glyphs 3.0.5 (3124), the first move of a point reliably fails to reflect its correct value in the info panel, but second move always reflects accurately.
less reliably: switching to another glyph leaves the wrong info window will be active (see screenshot).
I uninstalled and reinstalled every extension one-by-one. the culprit was “Sync Metrics Keys." not sure why. this isn't specific to this version of glyphs; I’ve been seeing it for the last few cutting edge versions.
You can equally set metrics and metrics keys there, so those updates need to trigger a re-calculation as well.
Right now the plugin only responds to updates in the editor. However, the main view also affords changing the sidebearing of glyphs. Equally, Scripts might alter the sidebearings, but that might be hard to detect without too much overhead.
A major performance improvement would be to cache all metrics keys and values. When an key-glyph is updated, retrieving affected glyphs wouldn't require iterating the entire font, but could reference the glyphs requiring updating from the cache.
I noticed that syncing works well on glyphs with a single master / layer, however once another master is created the syncing no longer works. Glyphs v3.0.3, M1, Big Sur 11.4
Say for some reason:
n: LSB 40 RSB 40
h: LSB =n RSB =n
l: LSB =h RSB = 20
While it would be desirable for the designer to specify l's LSD directly to n, it would be great that a change to n triggers an update to h, then iteratively checks if any glyphs link to h, etc.
Hello
I am running into an issue with the metric keys syncing to glyphs that have nested components. I don't think I've noticed the issue before because I may have been using automatic alignment.
I am attaching a screen recording of an example.
In the top line, the "զ" is comprised of two components (automatic alignment disabled).
In the bottom line, there is an alternate "զ" which references the զ in the top line as a component (automatic alignment disabled).
The LSB of both զS are synced with օ.
When changing the LSB of օ the LSBs of both զs change, however, the issue is that RSB of the զ in the bottom line doesn't retain the original RSB as it does in the top line.
I can counter this by locking in the RSB using "==30", however, it seems strange that it would behave differently from the top line.
The example is from Glyphs 3 – 3.0.2 (3042) but I check in G2 and it is the same.
Sidenote: The plugin is incredibly helpful and I use it constantly. Thank you for making it!
How exactly do you force it to activate? It doesn't always synch – I think it was better when I could call the plugin to activate..
If a glyph uses a component and has automatic alignment enabled this should equally trigger a metrics update propagation
Hello again,
Following the latest plugin update (v 0.2.0), there now seems to be an issue with syncing in G2.
I've attached a simple test comparing G2 – 2.6.6 (1352) and G3 – 3.0.2 (3053)
This could be implemented with a popup to confirm or cancel an metrics update, if it is detected.
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.