Ukelele 1.7 reviewDownload
Ukelele is a Unicode keyboard layout editor for the XML-format keyboard layout files in OS X (".
Ukelele is a Unicode keyboard layout editor for the XML-format keyboard layout files in OS X (".keylayout" files). It provides a graphical interface to the layout files with support for drag-and-drop character assignments, creation of dead keys, and assignment of multi-character strings.
Beginning with version 10.2 (Jaguar), Mac OS X supports an XML format for keyboard layouts (.keylayout files). These may be installed by copying them to the Keyboard Layouts folder within /Library or ~/Library; then they are enabled via the Input tab of the International module within System Preferences.
However, modifying keyboard layouts—let alone creating entirely new keyboard layouts, such as for a new script—by directly editing the XML text is tedious and error-prone.
Ukelele aims to simplify keyboard layout editing by providing a graphical interface to .keylayout files, where the desired characters can simply be dragged onto keys as needed.
In addition to simple assignment of single character codes to keys, Ukelele can assign multiple-character strings and can create "dead keys", where a keystroke sets a new state that modifies the output of the following keystroke.
If a keyboard layout is saved without having been given a keyboard name via the Set Keyboard Name... menu item, a name is automatically created from the file name.
A new floating window, the Output Inspector, has been added, which shows the output of the key under the cursor as Unicode code points.
When double-clicking a dead key, users now have the option of editing the dead key (i.e. entering the dead key state).
Unicode characters entered as numeric code points (e.g. ??) are now validated as valid Unicode code points.
There are more options when creating a new modifier set, so that the user can create an empty key map (as before), a standard key layout (QWERTY upper or lower case, or Dvorak upper or lower case), or copy another existing key map.
Users can now access bundles or packages, so that it is easy to edit a keyboard layout that has been put into a bundle (such as having its own icon).
The manual and help have been updated, with new links added to keyboard resources, and dead links removed.
Mac OS X limits the number of characters produced by a single key to 20. This limit is now enforced by Ukelele, so that users don't get surprised that long output doesn't actually work.
A new preference has been added for which physical keyboard layout to use when the system doesn't have a layout corresponding to the hardware keyboard attached to the computer.
When deleting output for a key in state "none", the keyboard layout could become invalid. Fixed.
Drag and drop didn't work with modifier keys down (bug introduced in version 1.6.6). Fixed.
Double-clicking a key with no output already associated with it ran the dialog, but didn't save the change. Fixed.
Unicode code points outside the Basic Multilingual Plane were not handled correctly when they were specified numerically. These are now handled properly.
Changing the output of a control key with no output could lead to a crash. Fixed.
When deleting a dead key, the old terminator remained, so that a user typing that key when in a different state would still get the terminator, not the new output created when deleting the dead key. The fixed behaviour should be more intuitive, with the new output used in all cases.
Ukelele 1.7 search tags