Unicode Checker https://earthlingsoft.net
counting in hex, decimal, and binary:

Andy Clymer’s explanation of Hexadecimal numbers: http://andyclymer.com/cooper/hexadecimal.html
Unicode Checker https://earthlingsoft.net
counting in hex, decimal, and binary:

Andy Clymer’s explanation of Hexadecimal numbers: http://andyclymer.com/cooper/hexadecimal.html
| ''' | |
| I never understand affine transformations, which is why I made this little | |
| script here. | |
| basic docs: | |
| https://fonttools.readthedocs.io/en/latest/misc/transform.html | |
| rf docs (explains how to convert normal operations (rotate, scale) to | |
| affine transformations): | |
| https://doc.robofont.com/documentation/topics/transformations/ |
| a b c | |
| uni2318 |
| ''' | |
| Contextual menu items for RoboFont’s font overview window | |
| ''' | |
| from AppKit import NSPredicate | |
| from mojo import smartSet | |
| from mojo.roboFont import CurrentFont | |
| from mojo.subscriber import ( | |
| getRegisteredSubscriberEvents, |
| ''' | |
| Robofont: which shortkeys are assigned to what action? | |
| ''' | |
| import AppKit | |
| import itertools | |
| import mojo | |
| import re | |
| from pathlib import Path |
| ''' | |
| Avoid offcurve start points | |
| ''' | |
| from fontTools.ufoLib.pointPen import PointToSegmentPen | |
| def find_offcurve_start(glyph): | |
| ''' | |
| compare coordinates of first bPoint to coordinates of first point |
| ''' | |
| toggle bcp selection | |
| ''' | |
| def toggle_bcp_selection(bcp): | |
| pts = bcp.contour.points | |
| p_prev = pts[(bcp.index - 1) % len(pts)] | |
| p_prev_2 = pts[(bcp.index - 2) % len(pts)] | |
| p_next = pts[(bcp.index + 1) % len(pts)] |
| from importlib import reload | |
| import glyph_move_selection_forward | |
| reload(glyph_move_selection_forward) | |
| g = CurrentGlyph() | |
| glyph_move_selection_forward.move_index(g, -1) |
| from mojo.UI import CurrentFontWindow | |
| import AppKit | |
| import unicodedata | |
| from vanilla import CheckBox, FloatingWindow, List, LevelIndicatorListCell | |
| import glyphNameFormatter | |
| f = CurrentFont() | |
| u_ranges = glyphNameFormatter.unicodeRangeNames.unicodeRangeNames | |
| reverse_ranges = {v: k for k, v in u_ranges.items()} |
| import AppKit | |
| from mojo.roboFont import version | |
| menu = AppKit.NSApp().mainMenu() | |
| roboFontItem = menu.itemWithTitle_("RoboFont") | |
| if roboFontItem: | |
| # roboFontItem.submenu().setTitle_("RoboFont %s THIS IS THE OLD VERSION, WATCH OUT FRANK!" % version) | |
| roboFontItem.submenu().setTitle_("RoboFont %s" % version) |