What's new in RoboFont 4.4
Oct 11, 2023
- Jump to python3.9! Be aware, some extensions might not work, check for updates.
- User Interface:
- Set SF Mono or a fixed pitch in input text editors
- Add Glyph sheet
- Add Smart Set glyph names
- Inspector Glyph note
- Character Set in the application preferences
- Add support for “Save All UFO’s” alternate menu item.
- Improve font toolbar Mark and Layers buttons.
- Improve changing unicode dialog text.
- Fix alert text when installing existing extensions.
- Improve user interface to maximize compatibility with Ventura.
- Reuse the fixed width font when a default font is used to typeset a string (like an emoji) in the Output window.
- Improve toolbar items with menu presentations when the FontOverview or GlyphEditor windows are resized.
- Add support for multi group name selection in a group sheet.
- Glyph Editor:
- Improve dragging lines by making their location more accurate on screen.
- Move dragging lines while in Transform mode.
- Use anchorTextColor for the name of the anchor if no color is set in anchor.color.
- Anchor names cannot be empty but None.
- Improve images visualization in different layers by not drawing the image info.
- Fix glyph view stored italicAngle, it cannot be None.
- Outlines:
- Improve snapping and rounding of points in the glyph editor.
- Fix reselection of contour after a break.
- Improve coloring of quadratic off curves points.
- Support alt delete for multiple off curve points to snap to their on curve point.
- Fix a bug when converting an off-curve only quadratic curve to bezier curves.
- Improve start point while joining contour with the drawing tool.
- Do not flag the glyph as loading while normalizing incoming data, otherwise trailing off curves are lost.
- Don’t allow circular (components) references and send warning when trying todo so (even when renaming).
- Preserve selection on setStartPoint.
- Unsmooth on curve point while deleting off curve.
- Improve deleting of glyphs used as components to avoid ghost references persist on disk.
- Fix a ghost point bug on undo with a slice tool.
- Skip check for trailing points in an empty contour.
- Fix update margins after font info changed (italic angle).
- When a left margin is set from python code, the selected paths will move accordingly.
- Improve copy/paste of outlines data from other applications (Illustrator & Figma) into the glyph editor.
- Set the default stroke color for tangent point the same as smooth stroke color.
- Guidelines:
- If guideline angle is None get it from the xy combo.
- Rename guideline menu items to Local and Global.
- Make guidelines longer, a hypothetical length of 100000 (left & right) should be enough. A huge board might be used for logo drawing.
- Improve guideline layer caching.
- Send guidelines Changed notifications during undo/redo.
- Enable show guidelines when adding a guideline.
- Show guidelines in all layers only when Show Guidelines display option is enabled.
- Add support for single guideline.locked.
- Images:
- Set the default image sharpeness to 0.
- Improve pasting image over existing image in glyph view.
- Store image scale settings in the defaults.
- Add glyph image bounds to the artboard edge calculations.
- Improve image filters to avoid blurred images.
- Unlock image after pasting image over glyph view
- Display Image in glyph editor Diplay Options menu is enabled when image is dropped or pasted in the glyph view.
- Inspector:
- Improve speed of refreshing points inspector list.
- Uncheck transformPane checkbox when a transformation is edited in the glyph editor.
- Space Center:
- Use the full suffix to populate the space center suffix menu.
- Fix missing image factory used in spaceCenter.
- Send spaceCenter key up when there is no glyph selection.
- Improve MultiLine view when font info attributes are set to zero.
- Font Overview:
- Add warning when setting the default layer when ‘public.default’ is present.a
- Set glyphOrder after layer.renameGlyph to update the CollectionView.
- Fix removing layers when the layer is the active one.
- Change order for sorting options.
- Fix None mark color.
- Add sort reset and support single sort option in the sort sheet.
- In Single Window Mode, check if there is a glyph before handling layer set changes.
- Preferences:
- Add short cuts for default tools.
- Improve help button for Extension tab in Preferences Window.
- Rename glyphViewOncurvePointsSize to glyphViewOnCurvePointsSize (cap C).
- Add force appearance support (follow the system light/dark color).
- Improve updates on GlyphView appearance options.
- Add preference defaultLayerName for new documents.
- Add double click preference: glyphViewAllowDoubleClickToSwitchLayers.
- Improve preferences Extension Sort Tools.
- Add extensions directory attribute to the preference export.
- Smart Sets:
- Check if the smart list selection has a query to reset on font changed.
- Improve storing smart sets with multiple documents are open.
- Improve query reloads for smart sets.
- Fix loading smart sets issue.
- Scripting Window:
- Fix major lag in using a CodeEditor in any window.
- Improve line number view in CodeEditor.
- Remove cmd+. cancel short cut as it crashes the app.
- Fix storing “keep Visible” in the defaults for the output window.
- Add API access to scripting window:
- CurrentScriptingWindow()
- AllScriptingWindows()
- scriptingWindow.insertText(text)
- scriptingWindow.setSelection((location, length))
- Extensions:
- Fix bug in installing extensions with start up scripts.
- Fix bug in resolving extension version requirements.
- Generate Binaries:
- Improve autohint (ps and ttf) when fontmake is set as compiler.
- Improve calculating hmtx table after a curve conversion.
- Use otRound everywhere while compiling binaries.
- Fix wrong attribute name in font compiler.
- APIs:
- Improve debugging information in log file.
- Start an external changes observer when a font is loaded with no interface (shallow document)
- Improve mojo.compile.stemhist
- Include all the modules from the Python standard library.
- Remove capital on stemhist.
- Add support for inspectorTransformPaneAllowExternalTransformation.
- Change Can Hide to Keep Visible in the output window.
- Add RoboFont specific views as ezui objects, welcome mojo.ezuiViews! You’ll find:
- GlyphSequence
- GlyphPreview
- CodeEditor
- GlyphLineView
- Send extra arguments to build in a windowController to maximize compatibility with ezui.
- Adopt AppleScript for remote scripting and improve command line interface. Faster, more reliable.
- Add support for tooltips in the script header.
- Improve permission while installing the shell script.
- Add readSmartSets in mojo.smartSet
- Add support for glyph.copyToPasteboard and font/layer.copyGlyphsToPasteboard.
- Log error when the extension defaults are unable to write to disk.
- Remove deprecated glyph.index.
- Add eventTool.shouldSendNotifications to hold notifications for other observers.
- Add Timer, timerDecorator, timerFunction, profile, profileDecorator debug tools to mojo.tools.
- Add support for setGlyphRecords and getGlyphRecords in a mojo.UI.MultiLineView.
- Add support for mojo.UI.OpenInspectorWindow.
- Add support for shouldAddSeparatorItem while building a menu with MenuBuilder.
- Improve commandline install success message.
- Add htmlView.getWKWebView() to get the webkit webview.
- Add tiff2png to mojo.tools.
- Add mojo.pipTools.
- Raise the time out limit for the pip installer.
- Fallback to font.asDefcon().dirty for font.hasChanged() when no document is set.
- Add context manager support for mojo.UI.ProgressBar
- Improve documentation in several mojo packages.
- Shell command reports back to the external caller.
- Improve copyToPasteboard doc string.
- Subscriber:
- Improve subscribing to adjunct objects.
- Improve subscriber coalescer when notification comes in very fast.
- Fix serious bug in subscriber when the notification is sent from a continuous trigger like a slider
- Improve fontInfoDidChangeValue subscriber info object.
- Add support for glyphEditorDidChangeDisplaySettings.
- Improve compatibility of subscriber instances with ezui and windowcontroller
- Improve subscriber error message when overwriting a subscriber event.
- Embedded Packages:
- Remove deprecated packages dialogKit and feaTools2.
- Remove numpy as embedded package. Users will need to install it autonomously with pip installer.
- Embed the charset_normalizer package.
- Add fontFeatures as dependency.
- Appearence (Dark Mode):
- Remove shadow in statusbar warning (improves dark mode).
- Add notification + subscriber support when the application appearance changed.
- Implement dark mode colors and auto switching.
- Add appearanceColorKey to mojo.UI.
- Change defaults for cell metrics color in dark mode.
- Update embedded packages.
- Update GNFUL list.
New in RoboFont 4.3 (Oct 20, 2022)
- Move to 10.12 as minimum requirement.
- Remove local FDK support.
- FontTools has moved to DesignSpaceDocument v5. Tools like Batch and Skateboard work with the new format, but they do not support discrete axes.
- Update internal GNFUL list.
- Keep unsaved glyphs into account while testing external changes. It avoids loosing data not saved on disk when reverting.
- Use the latest py2app. Add support for dark mode and new toolbars on macOS 11 and 12.
- Remove warning when the app file path contains a space.
- Fix About Window bug when AFDKO is not the compiler tool.
- Do not try to read glyphs from disk in closed file system if a font is not saved yet.
- Improve mojo.NumberEditText by converting the int/float to a string without thousands separator (locale dependant).
- Add support for ctrl ⌃ + alt ⌥ + delete to completely remove a glyph from a UFO (including layers, kerning and groups).
- Improve removing default layer.
- Force file type extension on filename when switching format in “Generate Font” sheet.
- Glyph Editor:
- Improve transform pane in Single Window Mode.
- Improve opening empty glyphs with a very large units per em.
- Improve pasting of PDF data.
- Improve transform pane with selection when the glyph editor is not the first responder.
- Improve joining contours two points with handles by un-smoothing the joined on curve point.
- Improve “jump to glyph” dialog by splitting the search by all possible glyph name separators.
- Fix converting selected on-curve-less quad curves.
- Improve pasting glyph with images.
- If the a component was selected and the base glyph is removed, the component selection does not linger in the glyph editor
- Add glyphViewIgnoreFirstMouseDown key to Preferences Editor for Single Window Mode to ignore the first click in the glyph view.
- Support shift + alt + click for converting a line to a quadratic segment.
- Improve menu title: ‘Convert to Cubic’ without ‘Contour’.
- Move down the selection CALayer in the glyph editor layers hierarchy. As a consequence, transform mode will be drawn on top of a selection.
- Apply snapping to anchors and components when edited from the transform pane.
- When an on-curve point part of a larger curve is deleted, RoboFont fits the curve and rounds the remaining handles based on the “Snap points to” value in the preferences.
- Fix Transform Again in Single Window Mode.
- Disable dragging margins outside the body of the glyph.
- Adding a guideline with shift + g + click with an italic angle will apply the angle to the new guideline.
- Display dragging lines with the italic angle if “Slant Point Coordinates” is on in the Preferences.
- Add anchor popover accept slanted coordinates, again, if “Slant Point Coordinates” is on in the Preferences.
- Point coordinates are typeset in italic if “Slant Point Coordinates” is on in the Preferences.
- Display dragging lines with the italic angle.
- Add a dragging constrain on the italic angle.
- Close a glyph window on a removeGlyph event (either user interface or API) only when it shows the removed glyph.
- Preserve first points while curve converting segments/contours.
- While removing the last point of an open contour also remove all offcurves in a quadratic curve and unsmooth the last oncurve.
- Dont add a quadratic off curve point when ⌘ command key is down
- Register an undo change when adding a quadratic off curve
- Improve snapping coordinates which are already whole numbers but represented as a float.
- Break contour at the point when selection discontinues.
- Don’t look for a layer or font with an orphan glyph to set the glyph window title.
- Font Overview:
- Improve smart set cell user interface.
- Remove duplicates when creating a query based on glyph names.
- Disable release mode checkbox when “Generate Features with fontTools” is on.
- Don’t try to recover a glyph from disk with a KeyError (glyph does not exists).
- Space Center:
- Add Reset Beam to space center settings menu.
- Add tickmarks and negative values for tracking and line height in a space center menu.
- Set a space center edit text as first responder when opening a space center.
- Improve display of non-existing glyphs.
- APIs:
- Update mojo.UI.GlyphWindowToPDF to support CALayers through merz.
- Add ufoz as supported file type with mojo.UI.OpenFont.
- Add OpenFonts into mojo.roboFont.
- Add support for glyphEditorWillShowPreview and glyphEditorWillHidePreview in mojo.subscriber.
- Improve mojo.UI.OpenScriptWindow to open new documents.
- Warn when incorrect display settings are set with mojo.UI.setGlyphViewDisplaySettings.
- Improve robofont shell command: print out an error message when the app is not found.
- Add support for RFont.fontWindow() returning the font window.
- Fix checking layer.getDisplayOption() for all
- Raise a traceback when a script tries to remove the default layer.[STILL OPEN ISSUE: https://gitlab.com/typemytype/robofont/-/issues/452]
- Improve fontParts info, groups, features and kerning getting the parent font object.
- When calling the fdk tools seperatly use the EmbeddedFDK tools.
- FDK and fontMake are always embedded, no need to validate the generate menu item.
- Fix ttfautohint in fontMake by providing a string with options.
- Add getGlyphViewScale in Single Window Mode.
- In a tab view unselected views have no view.window().
- Docs:
- Massive reorganization of the subscriber docs. Easier to share single methods with HTML anchors.
- General improvement on the mojo.UI docs page: deeper hierarchy, categories, overall review of docstrings
- When RoboFont fails completely the error message points to a page on RoboFont documentation.
- Inspector:
- Increase text box size for auto naming sheet to display long glyph names.
- Persist the collapsed state of the inspector contour list.
- Scripting Window:
- Reload operation in scripting window are now undoable.
- Improve closing empty Python script documents. No prompt if the scripting window is empty.
- Disallow opening scripts in tabs when opening from scripting menu.
- Preferences:
- Improve shell help text inside a preference window.
- Improve setting shortcut with alternate menu items.
- Fix toggling on/off blue values with a preference shortcut. It was shadowing the guidelines display option.
- Add Jump To Layer with preference hot key.
- Font Info:
- Add Omit Mac Names in RoboFont tab in the font info sheet. The setting is accessible in the font.lib["com.typemytype.robofont.generateOmitMacNames"]. The lib expects a bool
New in RoboFont 4.2 (Apr 19, 2022)
- Raise the minimum required OS version to 10.11.
- Move to layer manager to a popover, and remove layer from the Inspector.
- Add option to sync glyph layers width, markColor and unicode.
- UI adjustments on Monterey
- Check file structure before sending it to ufonormalizer, do not validate ufoz.
- Store the size of the preference editor window.
- Save test installed fonts to a folder inside the application folder.
- Font Overview:
- Delete all selected smart item with the action menu.
- Disable undo when setting markcolor for a lot of glyphs, pref key markColorUndoMaxGlyphCount .
- Add match as option to filter component and anchor names.
- Glyph Editor:
- Anchors validation should only remove control characters.
- Allow triple click to jump to a component with alt down.
- Enable the correct blue zone layer according the display settings.
- Measurement info the tab indents must be relative to the point size.
- Fix cuttoff pdf pastboard data.
- Improve switching with preview key down.
- Add support for preview key in single window mode while selecting in a font overview.
- Fix bug when moving and closed single point contour.
- Fix bug while removing the last segment.
- Fix bug when ß is uppered to SS in jump to glyph.
- Rename BezierDrawingTools to DrawingTools
- Use the “glyphViewCanZoomWhileDragging” preference setting.
- Highlight show offcurve on top of oncurves.
- Add “middleground” public layer.
- Snap guideline angle with shift to a multiple of 45°.
- Show first point differently from the contour direction symbol.
- Improve displaying curve length with italic angle and slanted coordinates.
- Space Center:
- Improve space center input has changed with the field editor.
- Add support for /?@background.
- Live updating space center with new pref keys: spaceCenterMaxGlyphCountForSendingEvents for events and spaceCenterMaxGlyphCountForLiveUpdating for editing.
- Add slider for line space and tracking in space center menu + alt to round these values.
- Preferences:
- Improve validating preferences input controls.
- APIs:
- Add glyph key in subscriber contextual menu notification info.
- Add glyph key in right mouse down in font overview contextual notification info.
- Add disableSubscriberEvents with statement to disable all subscribers.
- Fix subscriber missing event names.
- Add ExtensionBundle.currentBundle() to retreive the extension bundle.
- openInterface should create a new document when the font is set to None.
- Add mojo.subscriber.listRegisteredSubscribers.
- Adding glyph.readingErrors().
New in RoboFont 4.1 (Nov 24, 2021)
- Improvements on Subscriber docs.
- Text editors now use performTextFinderAction instead of performFindPanelAction. Text search with cmd+f, cmd+g and cmd+e improved
- Improve Preference Editor error messages
- Improve toolbar style for a font window on Big Sur and Monterey
- Font Overview:
- Change toggling fontOverview short cut: alt cmd e in single window mode
- Remove focus ring in favor of secondary selection color when the view is not the first responder
- Glyph Editor:
- Tons of small display fixes
- Glyph editor “Measurement Info” display option improved
- Point coordinates displayed with italic values when the italic slant is active
- Added glyphViewMetricsHeightInfoAttribute key in the preferences editor. You can now control the height of the white board in a glyph editor
- Adding support for the indexesShouldFollowContour preference. If True, point indices of new contours in a glyph will not start from 0. Useful for hinting, it could be helpful for interpolation too
- Join selection: it allows additional selected points which are not start and end points
- The guideline angle knob now rotates in the same direction as the guide it edits
- General improvements on quadratic curves (interaction and visualization)
- Draw guidelines in the background layers
- Improve cmd keep handle-in-the-same-direction dragging
- Delete point on shift down reverse to preserve curve preference settings
- Space Center:
- “xHeight cut” display option in Space Center renamed “Cut Off“, now editable with cmd down when no glyph is selected
- Improve suffix contextual menu when glyphs are added
- Adding support for space center underline selection, see preference editor: spaceCenterSelectionStyle
- APIs:
- Adding support for glyph.autoContourOrder()
- Adding support for setting sort descriptors in a collection view
- Load all glyph before using font.holdChanges with statement
- mojo.setDefault will validate the incoming value for a key if there is a validator
New in RoboFont 4.0 (Jul 16, 2021)
- Using layers to drawing!!
- Adding merz!!
- Adding Subscriber!!
- Font Overview:
- Since full quadractics are supported don’t check and convert quadractic curves anymore.
- Use esc or cmd + . to reset the font overview query.
- Copy glyph width only when destination glyph is a template glyph.
- Improved the UI for creating smart sets.
- Glyph Editor
- Support for full quadractic curves.
- Improved add extreme points.
- Improved zoom to mouse position.
- Fixed bug in selection.
- Selects automatically images when dropped on the canvas.
- Does not draw drag lines when in transform mode.
- Improved glyph editor scroll.
- Improved rounding while slicing.
- Reset selection path after undo.
- Improved drawing while converting line to curve.
- Add support for 45° contraint with the measurement tool.
- Improve outline errors and remove some errors in favor of Glyph Nanny.
- Add a pdf copy paste boardboard for improved interaction with other external drawing tools.
- Space Center:
- Use the embedded defconFont.kerning.find() instead of flat kerning.
- Preferences:
- Improved italic angle support.
- Adding colors for slice.
- Add “add guideline” hot key preference.
- Disable old style drawing with glyphViewDisableDrawNotifications, as default this is False.
- APIs:
- Set a run callback optionally in a CodeEditor.
- Disable pip installer search until it gets resolved.
- Update embedded packages.
- Adding identifiers (i.e., com.developerName.toolName) to addGlyphEditorSubview.
- Fixed glyph editor subscription bug.
- Adds glyphViewDisableDrawNotifications in the preferences editor.
- Add .asFontParts() and .asDefcon() to all font objects for convienient switching.
- Don’t add QTKit anymore.
- Adds selection and measurement notifications in the glyph.
- Added documentation for registerSubscriberEvent.
- selection.hasSelection() forced to be a bool
- Add Doodle.ImageSize factory.
New in RoboFont 3.0 Build 1803062007 (Apr 4, 2018)
- Uses UFO3 as its native source format.
- Written entirely in Python 3.
- Lots of internal rewrites.
- Opens UFO files with lightning speed.
- Replaces roboFab with fontParts.
- Layers are more independent.
- Components refer to glyphs in the same layer.
- Validating and converting incoming UFO2 data:
- Removes duplicates in kern groups.
- Removes glyphs that occur in too many kern groups.
- Converts RoboFont 1+ lib keys to UFO3 objects.
- Glyph View:
- Use Cmd + Shift to add a diagonal constrain for line segments.
- Use Alt + click on a line segment to convert it to a curve. Click near an on-curve point to select the off-curve point.
- Space Center:
- Speed improvements.
- Show guidelines and blues.
- New input syntax: /@ to select a glyph from a given layer. For example: /A@background.
- Scripting:
- Moving fontWillGenerate and fontDidGenerate to a more internal level, so it sends a notification when generating with a script.
- Speeding up print() statement.
- Adding Cmd + period to stop a script (like in DrawBot, thanks Just!!!).
- Autocomplete ([{}]) in the code editor.
- Adding glyphConstruction as a module!!
- Renaming sys_path_override to external_packages – a folder to overwrite embedded packages.
- Moving lots of internal modules to mojo.*.
- Update of internal packages to UFO3, py3 and much more.
- Adding RFont.hasInterface().
- Preferences:
- Use drag-and-drop to sort Miscellaneous Colors.
- New raw Preferences Editor (press Alt while opening the RoboFont menu item).
- New Preferences > Menus section, listing all menu items and keyboard shortcuts.
New in RoboFont 1.8.4 Build 1706131209 (Jul 5, 2017)
- Updating internal packages.
New in RoboFont 1.6 Build 1410152315 (Oct 16, 2014)
- Font Overview:
- Improved alt copy of glyph selection to glyph names only.
- Preserve checkboxes in the add glyph sheet.
- Support for glyph note in the font overview list view and font search.
- Glyph cell slider + alt will resize all open fonts cells
- Improve add glyph sheet, with imports from character set or other open fonts.
- Glyph Editor:
- Better support for orphan point selection during copy paste.
- Support drag and drop glyphs to a scripting window.
- Undo support for flip layers.
- Use italic slant offset as a display option.
- Bug fixed in transforming components selection.
- Reset selection after locking an image and switching from transform mode.
- Slice tool snaps to guides.
- Reset image selection after locking an image.
- Improved support for copy paste and preserving contour order.
- Jump to glyph pushes exact matches to the top.
- Bug fixed joining contours when points are on top of each other.
- Dont jumpt to hidden layers.
- Space Center:
- Enable flip.
- Live preview of editing the left margin editing.
- Bug fixed in Space Center when using the beam.
- Space center size is a combo box.
- Bug fixed in window order, when double clicking in space center.
- Add in-between values when beam is active in space center.
- Scripting:
- Bug fixed in setting x, y values in guides.
- Support for adding inspector window panes and toolbar items in both a font window as a glyph window with: inspectorWindowWillShowDescriptions, glyphWindowWillShowToolbarItems and fontWindowWillShowToolbarItems event notifications.
- Bug fixed in glyph.isCompatible(otherGlyph) when comparing components.
- ExtensionBundle has a new bundle.html attribute, must be a bool, indicating if the bundle has html help files.
- Adding font.showUI() only if the font has no UI yet.
- Improved glyph.center() to work better with layers.
- Imporved getting bcpIn and bcpOut in bPoints with open contours.
- Adding OpenSCriptWindow(path.py) to mojo.UI
- Adding obj.getRepresentation to robofab glyph and font wrapper.
- Bug fixed in getting extension icon.
- Improved support for font.save() when no path is given and font has no path.
- Remove closed documents from AllFonts.
- Bug fixed in rounding kerning.
- Bug fixed in diving a glyph.
- Bug fixed in copying orphan glyphs.
- Add space after # when comment lines of code.
- Improved support for code completions.
- mojo.CurrentFontWindow().setGlyphNamesAsSet(glyphNames)
- font.setLayerDisplay has an option for "all".
- mojo.UI.getTestInstalledFonts() and mojo.UI.testDeinstallFont(font)
- Script file browers will hide empty .py files in the menu and support for alias.
- Bug fixed in font.copy().
- Adding font.info.udpate(otherInfoObject)
- Support for subclassing internal font objects.
- Improve messages while installing, de-installing extensions (with version numbers).
- Adding currentFontOnly option in getting windows through mojo CurrentGlyphWindow(currentFontOnly=True) works for all windows in mojo.
- Make it easier to add a UI to an existing font without a UI
- Add mutatorMath + mutatorMath.designSpace icon :)
- Inspector:
- Visual support for multiple unicodes in inspector window.
- Bug fixed in setting the transform matrix for components.
- Transform pane accepts enter to apply a transformation.
- Support for transform location while flipping.
- Add a nice warning when assigning an unicode that already exists.
- Preferences:
- Adding agl-file path, for custom unicode to glyph name mapping. (agl: Adobe Glyph List)
- Check if short key path exists.
- Option to toggle __future__.division while executing a script.
- Color preferences for preview fill and preview background
- Improved support for sorting extensions.
- Add hot key to toggle measurement info
- Bug fixed: a rounding error while compiling a ttf.
- Imporved test install.
- Search Box in Info Sheet.
- Support when users have installed vfb2ufo in /usr/local/bin.
- Update the embedded FDK.
- Bug fixing while generating an unsaved font.
- Improved curve conversion from cubic to quadractic curves.
- Support for curve conversion from quadratic to cubic with the same logic.
- Improved support for test install when there is no UI.
- Update color marks in the rule editor with the current colors in the font.
- Hold shift down while launching will open RoboFont without any extensions installed
- UI uniformity on list colors cells.
New in RoboFont 1.5.1 Build 1310082304 (May 12, 2014)
- Fixed Preferences window bug for 10.6 users
New in RoboFont 1.5 (May 12, 2014)
- Font Overview:
- Added support for deletion of multiple Smart Sets.
- Added option to choose a mark color when generating new glyphs.
- Added support for selection of multiple Smart Sets.
- Added support for navigation with arrow keys in Smart Sets.
- New code editor for OpenType features.
- Glyph Editor:
- Fixed direction of keys for layer up/down. :)
- Added Ctlr + Cmd in the Components contextual menu, to copy the base glyph metrics.
- Added display option 'Show Segment index'.
- 'Remove Overlap' works faster.
- Separated display option 'Guides' from 'Rulers'.
- Fixed bug in beam factory when two intersections are on top of each other.
- Added 'Show Image Info'.
- Glyphs with more than 5 unicodes are renamed to uXXXXX.
- 'Add Components' now accepts both unicode value and glyph name when searching for glyphs.
- Better support for selection of multiple tangent points.
- Added Ctrl + Cmd + A to select all components.
- Fixed bug in joining contours with line and curve segment.
- Fixed bug in exporting smart list to groups.
- Improved sliders for image colors.
- Set components as selected after decomposing.
- Added 'Lock Image' to image contextual menu.
- Join a contour with another contour (only when two end/start points are selected).
- Alt + click on a straight line to generate BCPs with the rule of thirds.
- Set points as selected after slicing.
- Space Center:
- Same default settings as a glyph view for jumping to the next glyphs.
- Added hot key to toggle Space Matrix.
- Excluded PUA from converting back to unicode characters in the input field.
- Improved esc menu.
- Handling Space Window titles similarly as other windows.
- Fixed small bug with drag-and-drop.
- Added setBeam(pos) and beam() methods.
- Added flexible cell widths.
- Added hot keys to toggle kerning.
- Inspector:
- Added support for drag-and-drop reordering of contours.
- Fixed bug with setting a note in a glyph.
- Improved layer pane: drag-and-drop and reordering.
- Generating:
- Better output for ttf compiler.
- Faster generation for all formats.
- Fixed bug in ttf splines. (it's possible to have a contour without any on curves, doh)
- Fixed bug with double points in ttf compiler.
- Preferences:
- Added 'Reveal Python Script folder' button to the Preferences > Python pane.
- New default colors and options for the new code editor.
- Allow any kind of short cut to be assigned to a script.
- Scripting:
- Added a selected attribute to Robofab bPoints.
- Added glyph.removeSelection to RoboFab.
- Allowed ExtensionBundle to save an extension or make one from scratch.
- New Code Editor, with new syntax highlighting.
- New mouse and keyboard shortcuts in a code editor:
- select number —> Cmd + drag
- select tuple —> Cmd + drag
- select number —> Cmd + arrow up/down
- select bool (True, False) + Cmd + click
- select bool (True, False) + Cmd + arrow up/down
- Remember settings for 'Show Line Numbers'.
- Fixed bug in exporting preferences in mojo.UI.
- Improved UI for Extension Builder.
- Support for custom event send
- Set and get a transform matrix from a Robofab component.
- Check if the coding font used in the scripting window is installed.
- Added AllSpaceCenterWindows and CurrentSpaceCenterWindow.
- Added support for import/export preferences to/from a dict.
- Added proper shortcuts for indenting and dedenting code.
- Fixed bug in Robofab's rotate, skew and offset attributes.
- Added support for applying transformation matrixes to an image object.
- Publish event when an extension is built.
- Added support for inserting BPoints in a contour.
- Added support for custom events.
- Fixed bug in robofab.contour.breakContour(point).
- Added support for glyph, component and selection colors in mojo.glyphPreview.
- mojo.UI.multiLineView returns a proper Robofab glyph.
- Added SpaceCenterToPDF and GlyphWindowToPDF.
- Improved smart sets in mojo.UI
- Fixed typos!
- 'Update found' bugs should be completely fixed. :)
- Massively improved memory managment.
- Added support for robofont://path and robofont-script://path.py.
- Fixed bug with saving images.
- Added support for opening .ttc TrueTypeCollection files.
New in RoboFont 1.4 Build 1301142150 (May 10, 2013)
- Font Overview:
- bug fixed in Smart Set to group convertion
- don't mark template glyphs
- bug fixed in setting glyph order by dragging glyphs
- bug fixed in removing glyphs and template glyphs
- building components with anchors
- adding anchor syntax Agrave=A+grave@top
- search for markcolor
- smart set binders
- bug fixed in include(myFile.fea)
- bug fixed in Smart Set to group convertion
- Glyph Editor:
- bug fixed in remove overlap
- bug fixed in slicing glyphs
- correctly perform layer up, layer down hot key
- swap complete glyph to layer when there is no selection
- round componenents after decomposing to the value set in the preferences
- bug fixed in beam glyphs
- bug fixed in jump to layer pop up
- page up, page down jump through component selection
- page begin, page end jump through anchor selection
- shift constrain in set scale image
- bug fixed in flip horizontal and vertical
- anchors will draw coordinates when show point coordinates is active
- enter on anchor selection
- transform position is written back to the defaults
- bug fixed in slicing glyphs
- correctly perform layer up, layer down hot key
- swap complete glyph to layer when there is no selection
- round componenents after decomposing to the value set in the preferences
- adding anchor indexes and component indexes
- fixing contrains bugs
- better undo support for global guides
- improving break contour
- Generating:
- optimizing pfa compiler
- check contour direction while generating ttf or otf from different sources
- Preferences:
- adding Close Contour to hot keys
- adding Space Center Input Selection Color
- Scripting:
- support for opening binary fonts without UI and scripting
- clear output before script run
- robofab kerning is not utterable
- adding stemHist to mojo.compile
- backup code if code makes RoboFont crash :)
- debug window is accessible through mojo
- support for isCompatible with nice error report
- support for tabs in scripting window
- OpenFont(… showUI=False) can be opened in a glyph window or space center
- font.templateSelection in robofab
- adding hasOverlap() to robofab (both in glyph and contour object)
- font.copy(showUI=False/True) to make a copy with or without UI
- adding QTKit
- bug fixes in cocoa drawing tools
- setGlyphViewScale and centerGlyphInView for a glyph window object
- open the multiline view as vanilla like object
- support for glyph math and boolean operation with | union, % difference, & intersection and xor
- support for tracking in Space Center aSpaceCenter.setTracking(10)
- new event callbacks in Space Center spaceCenterDraw, spaceCenterKeyDown, spaceCenterKeyUp
- adding GlyphWindowToPDF and SpaceCenterToPDF to mojo.UI
- Metrics:
- optimizing RTL kerning
- esc in space center input will cancel setting metrics
- make sure the space center input box is continuous
- fixing space center large linespace frame size
- don’t live update space center on glyph change when there are lots of characters to display
- fix an old scroll to selection bug in Space Center
- let users know if an UFO is unsaved when switching to an other app (juming RoboFont icon in the dock)
- all number edit values have support for up and down arrows
- better support for single window mode with additional glyph windows and current glyph
- pop up a warning if RoboFont is stored in a folder containing space characters
- send event when an external change has happened
- adding view short keys for font window (window ⇢ view)
- better support in detecting quadratic / cubic glyphs
- bug fixed in external updates and save operation
- optimizing external changes (like when a UFO is stored in a dropbox folder and changed when RoboFont is active)
- toolbar are more flexible and easier to change
- remove empty contours during loading