justanotherfoundry / freemix-glyphsapp Goto Github PK
View Code? Open in Web Editor NEWScripts to be used with the Glyphs font editor.
License: GNU General Public License v2.0
Scripts to be used with the Glyphs font editor.
License: GNU General Public License v2.0
Glyphs Plugin Manager says the file "Anchors.glyphsPalette" doesn't exist.
Expand kerning script is not working on Glyphs 2.5b (1092). Tried to use it and it keeps working wheel rolling until I've to force quit the app. Can you test this out? Thanks
Since corner and cap components are implemented as hints, Delete All Hints script deletes them as well. It needs to evaluate each and every hint and check hint.isCorner before deleting.
Hi! Great scripts, I almost can't live without them and sadly can't make Mask to Master work in Glyphs 3
Traceback (most recent call last):
File "GlyphsApp/plugins.py", line 900, in init
File "/Users/weihuang/Library/Application Support/Glyphs/Plugins/Anchors.glyphsPalette/Contents/Resources/plugin.py", line 67, in start
Glyphs.addCallback(self.update, UPDATEINTERFACE)
NameError: global name 'UPDATEINTERFACE' is not defined
Getting this error when trying to run Print Coeffs:
Traceback (most recent call last):
File "Print Coeffs.py", line 25
abbreviations = dict((re.escape(k), v) for k, v in abbreviations.iteritems())
AttributeError: 'dict' object has no attribute 'iteritems'
Seems that currentTab.layers.values() returns the underlying text.
Nothing to add beside the title but that I tried to replicate the bug several times and I can be pretty sure that this is this plugin that was making my glyphsapp crash.
Glyphs is version 2.6.4
Mac OS is version 10.14.5
I hope this will prove helpful.
Traceback (most recent call last):
File "Symmetrify.py", line 87
max_x = max( [ node.position.x for node in contour for contour in contours ] )
NameError: name 'contour' is not defined
Details:
Traceback (most recent call last):
File "GlyphsApp/GlyphsApp/__init__.py", line 1099, in callback_
File "~/Library/Application Support/Glyphs/Repositories/Alignment Palette/AlignmentPalette/Alignment.glyphsPalette/Contents/Resources/plugin.py", line 306, in update
globalCenterX, globalCenterY = self.centerOfLayers( self.font.selectedLayers )
File "~/Library/Application Support/Glyphs/Repositories/Alignment Palette/AlignmentPalette/Alignment.glyphsPalette/Contents/Resources/plugin.py", line 86, in centerOfLayers
centerX, centerY = self.centerOfLayer( layer )
File "~/Library/Application Support/Glyphs/Repositories/Alignment Palette/AlignmentPalette/Alignment.glyphsPalette/Contents/Resources/plugin.py", line 61, in centerOfLayer
left = right = decomposedLayer.paths[0].nodes[0].x
AttributeError: 'NoneType' object has no attribute 'nodes'
App:2.6.9-1363 Plugin:1.17-1.17
Just received this via support.
Details:
Traceback (most recent call last):
File "GlyphsApp/GlyphsApp/__init__.py", line 1055, in callback
File "~/Library/Application Support/Glyphs/Plugins/Anchors.glyphsPalette/Contents/Resources/plugin.py", line 77, in update
if self.font.selectedLayers:
AttributeError: 'NoneType' object has no attribute 'selectedLayers'
App:2.5.1-1141 Plugin:1.0-1.0
Not sure what exactly I did, but after a working session I found this traceback in the macro panel:
Traceback (most recent call last):
File "Mask to Master.py", line 111
del(layer.paths[0])
TypeError: 'GSProxyShapes' object doesn't support item deletion
Traceback (most recent call last):
File "Mask to Master.py", line 104
for node, bg_node in counterparts( subpath, layer.background ):
File "Mask to Master.py", line 23, in counterparts
if background.components:
AttributeError: 'objc.native_selector' object has no attribute 'components'
Traceback (most recent call last):
File "Mask to Master.py", line 111
del(layer.paths[0])
TypeError: 'GSProxyShapes' object doesn't support item deletion
Hello,
Very useful palette, especially for Arabic fonts.
Please consider adding a delete button (trash can icon) next to X Y coordinates.
It will be really helpful in getting rid of unwanted anchors.
Thanks and regards.
Details:
Traceback (most recent call last):
File "vanillaEditText.py", line 15, in controlTextDidEndEditing_
self.action_(notification.object())
File "vanillaBase.py", line 514, in action_
self.callback(sender)
File "plugin.py", line 90, in editTextCallback
self.changeDotSuffix( editText.get(), i )
File "plugin.py", line 61, in changeDotSuffix
glyph.name = newName
File "GlyphsApp/GlyphsApp/__init__.py", line 6660, in <lambda>
File "GlyphsApp/GlyphsApp/__init__.py", line 6657, in GSGlyph_setName
NameError: The glyph name ".ssty" already exists in the font.
App:3.1.1-3139
smart components use layers with maximum and minimum values (respectively) to interpolate between https://glyphsapp.com/tutorials/smart-components
i haven't dug into the glyphs api to figure out the best way to exempt those specific layers from this script, but one solution might be to only run the script on selected glyphs rather than all the glyphs in the file.
Lovely script, thanks a lot for it.
In Glyphs 3, when unchecking "As Component" and inserting a smart glyph (with smart layers), it adds the corresponding sub-layers, but unfortunately alwaus only the ones from the last master.
e.g.
Currently happening:
┌─Source Glyph─┐ ┌─Target Glyph─┐
│ │ │ │
│ REGULAR │ │ REGULAR │
│ │ │ │
│ narrow │ ┌▶│ narrow │
│ │ ┌─┘ │ │
│ wide │ ┌─┘ ┌▶│ wide │
│ │┌─┘ ┌─┘ │ │
│ BLACK ┌┼┘ ┌─┘ │ BLACK │
│ ┌─┘│┌─┘ │ │
│ narrow ─┘ ┌┼┘ ─────▶│ narrow │
│ ┌─┘│ │ │
│ wide ─┘ │ ─────▶│ wide │
└──────────────┘ └──────────────┘
As opposed to the expected:
┌─Source Glyph─┐ ┌─Target Glyph─┐
│ │ │ │
│ REGULAR │ │ REGULAR │
│ │ │ │
│ narrow │───────▶│ narrow │
│ │ │ │
│ wide │───────▶│ wide │
│ │ │ │
│ BLACK │ │ BLACK │
│ │ │ │
│ narrow │───────▶│ narrow │
│ │ │ │
│ wide │───────▶│ wide │
└──────────────┘ └──────────────┘
It should check classes, too. And then it get hairy. Possibly only include classes that are mentioned after a by
.
Hello, I've been using the Anchor Palette plugin to shift anchors horizontally and also to check the vertical position.
I find it very helpful and less prone to error than selecting the anchor in the editor using a mouse/trackpad which occasionally results in minor vertical shifts.
I am wondering if it would be possible to immediately update the anchor position after an input value is used in the palette input box? Currently, I have to type in a value or use the arrow keys to set a value, then either press Return or deselect the input box to see the change occur.
There are options to change the color of the outlines in the background in preferences, now.
Would it be possible to make a script that is similar to the symmetrify script but instead lets you select a set of paths and replicate it in the symmetrify schemes? For example select a quadrant of a circle and create a circle (H), or half an italic circle and create a full circle (S) and so on.
I get an error message:
Traceback (most recent call last):
File "Expand Kerning.py", line 34
if value < 77000:
TypeError: '<' not supported between instances of 'NoneType' and 'int'
Glyphs 3133
I got a crash report that looks like was caused by a path without any nodes.
When I open the Plugin Manager and try to install AnchorsPalette/Anchors
(which links to this repo) I get an error:
The file “Anchors.glyphsPalette” doesn’t exist.
Noticing an issue with anchor palette reshuffling the order of the anchors after restarting Glyphs.
For example:
I would reset the anchors which would order them
top
bottom
ogonek
when I save and restart, the order changes to
bottom
ogonek
top
Not sure if this is an issue with the plugin or Glyphs (3.0.5 (3112))
Why is that a bad thing?
And this code is missing components.
Providing a description of scripts behaviour without having to open the .py files would be handier :)
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.