GithubHelp home page GithubHelp logo

freemix-glyphsapp's People

Contributors

florianpircher avatar justanotherfoundry avatar kant avatar mekkablue avatar schriftgestalt avatar viktorrubenko avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

freemix-glyphsapp's Issues

Expand kerning

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

Delete All Hints to check corners/caps

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.

Error in Glyphs App 1108

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

@schriftgestalt ?

Print Coeffs incompatible with Python 3?

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'

Symmetrify Doesn't work in Glyphs 3

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

Crash in Alignment.glyphsPalette

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

Anchors Palette: traceback

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

Mask to Master traceback

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

Add delete button next to X Y coordinates

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.

Crash in Suffixes.glyphsPalette

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

Insert Glyph to Background.py & Smart Components

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       │
└──────────────┘        └──────────────┘

Select Inaccessible Glyphs.py

It should check classes, too. And then it get hairy. Possibly only include classes that are mentioned after a by.

Handle relation TODO:

  • Calculate and display the intra-curve coefficients. For shallow curves, this may be non-trivial.
  • Refine the definition of “close enough”.
  • How about intermediate special layers?
  • Look at the interpolated exports and ignore masters that are not used in interpolations (to be precise, there may even be independent groups of masters that are only interpolated among themselves).
  • Detect if all masters have the same (or similar enough) angle. What if some masters have the same angle, and some have the same relative handle lengths? Need to think about that carefully, and respect the interpolated exports.

Anchor Palette live update after input change

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.

Symmetrify script but for selected?

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.

Error Expand Kerning

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

Install from Plugin Manager not working

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.

Anchors palette order reshuffle after restart

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))

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.