Ukelele Changelog

What's new in Ukelele 3.5.12

Mar 1, 2024
  • Dragging to an key with no output was disabled. This is fixed.
  • In the Preferences window, clicking Reset did not update the display to show the new value if the option of saving the XML as characters or code points was changed. This is now fixed.
  • There was an intermittent problem with the size of a window when Ukelele started up, often being a bit too small. At the expense of restoring windows exactly as they were, Ukelele now opens all keyboard windows at their ideal size, if they fit on the screen.
  • When duplicating a keyboard layout in a collection, the icon and intended language are also copied.
  • The list of keyboard types in the Keyboard Types dialog had a white background, even in Dark Mode, so the list was not readable. It now has the default background.
  • The intended language sheet no longer retains the search strings from when it was previously used.
  • Rearranged the pages in the manual so that page numbers in the footer match the page number within the PDF file, so the introduction starts on page 5 rather than page 1.

New in Ukelele 3.5.11 (Feb 19, 2024)

  • Reworked all dialogs so that they cannot be made too small and non-functional.
  • Creating a keyboard layout from the current keyboard input source is a bit more efficient, using a new capability of Apple’s tool.
  • If the user chose Import Dead Key and then cancelled in the first dialog, Ukelele would be stuck, unable to do anything further. This is fixed.
  • Some old code that is no longer used was removed.

New in Ukelele 3.5.10 (Feb 14, 2024)

  • Worked out some issues with autolayout, particularly with the Edit Key dialog.

New in Ukelele 3.5.9 (Jan 19, 2024)

  • In a dead key state, most keys were covered with a grey overlay. This has been fixed.

New in Ukelele 3.5.8 (Jan 4, 2024)

  • Changed the minimum macOS version to 10.13 (High Sierra). If you are running versions from 10.9 (Mavericks) to 10.12 (Sierra), you should not install this update.
  • Another fix to the problem with keyboard layouts based on the current keyboard input source with names that have characters that cannot be represented in MacRoman.
  • Improved the error message when the converter tool fails to create an XML version of the current keyboard input source.
  • Avoid a crash when changing output for a key in a JIS-only set if there was no output previously.
  • When you close a collection window, all the keyboard windows should now close, which avoids a range of possible crashing scenarios.
  • Update the Unicode database to version 15.1.0, the Language Subtag Registry to 2023-10-16, and Boost (internal library) to 1.84.0.
  • Changed a few things in autolayout which could cause some strange behaviour when resizing windows.

New in Ukelele 3.5.7 (Aug 11, 2022)

  • Fixed a problem with creating a keyboard layout based on the current keyboard input source, where the name contained non-ASCII characters, which were mangled. The name should come through as long as it is representable in MacRoman.
  • Updated the tool used to generate the XML file from the current keyboard input source, which fixes a bug that caused it to fail sometimes.
  • Updated the Language Subtag Registry to the version of 2022-08-08.
  • Changed some widths of columns in the keyboard collection window, which should hopefully make it behave better.

New in Ukelele 3.5.6 (Jun 22, 2022)

  • There is now an option to indicate that the icon for a keyboard layout is a template icon. This requires a black and white icon, and it will automatically switch in macOS 12.4 (Monterey) and later.
  • Fixes a bug in replacing a modifier set via undo.
  • Update language registry to 2022-03-02, and update manual.

New in Ukelele 3.5.5 (Feb 7, 2022)

  • Adding a new modifier combination and choosing to copy a current key map could cause a crash. This has been fixed.
  • A new option is available in the Edit menu and the contextual menu, Copy Output Information. This copies the description of the output of the current key that you see in the output inspector onto the system pasteboard so that it can be pasted somewhere else.
  • A new section of the tutorial has been added, courtesy of Alfred Helmerich.
  • Updated the language subtag registry to the version of 2021-12-29.
  • Updated Sparkle (auto-update framework) to 1.27.1, and Boost framework to 1.78.

New in Ukelele 3.5.4 (Sep 29, 2021)

  • A library was missing in version 3.5.3. This has been corrected.

New in Ukelele 3.5.3 (Sep 29, 2021)

  • Updated to Unicode Character Database version 14.0. Many descriptions of characters have been changed.
  • Correct URLs in the Help menu.
  • There are two ways of coding the .icns file (the size can include the header or not), and both are now accepted.
  • Update Sparkle (auto-update framework) to 1.27.0.

New in Ukelele 3.5.2 (Mar 12, 2021)

  • The tool used to create a keyboard layout based on the current keyboard input source has been updated to a universal binary, so it runs natively on Intel and Apple Silicon.
  • Updated to the 2021-03-05 version of the Language Subtag Registry, adding several new languages.
  • Updated Sparkle (auto-update framework) to 1.25.0.

New in Ukelele 3.5.1 (Feb 14, 2021)

  • The option in preferences for the XML to encode non-ASCII characters was not working. This is fixed.
  • The Quick Look plugin was installed in the wrong location, and is now put in the right place.

New in Ukelele 3.5.0 (Dec 15, 2020)

  • There were various problems with the Keyboard Type dialog, including a potential crash. These have been fixed.
  • Updated the manual. All the currently available keyboard types are now laid out in an appendix.

New in Ukelele 3.4.2 (Feb 24, 2020)

  • Fixed a problem where editing modifiers for a keyboard layout with simplified modifiers would bring up an unresponsive dialog.

New in Ukelele 3.4.1 (Feb 17, 2020)

  • Improved the support for VoiceOver to enable a better experience for blind users.
  • Added a command to the Help menu to show a window with some trouble-shooting tips.
  • Changed the preferences to indicate the effect of saving the XML file with code points rather than characters.
  • Updated the manual.
  • Updated Sparkle and Nano frameworks.

New in Ukelele 3.4.0 (Jan 14, 2020)

  • Solved a problem where some open file sheets would not work, particularly with Catalina.
  • New location for the version check file for software update.
  • Fix an allocation error that may cause a memory leak.

New in Ukelele 3.3 (Jan 20, 2019)

  • The information panel was not reflecting changes to the keyboard type. This is fixed.
  • The tutorial was updated to reflect Ukelele 3.3.

New in Ukelele 3.2.7 (Oct 9, 2017)

  • When a key’s output in a dead key state did not exist, and when that key only had one output (technically, no action element, just output), changing the output to the existing output caused Ukelele to assume that it was not changing anything, so nothing would happen. Worse was that you could change it to something else, and then undo would not do the correct thing. This has now been fixed.
  • Some dialogs had some issues with autolayout, causing elements such as buttons to appear in the wrong place. These have been fixed, hopefully.
  • Updated the manual and help to advise installing keyboard layouts for the current user only when on macOS 10.13 (High Sierra).
  • Fixed a typo in the Edit menu.

New in Ukelele 3.2.6 (Oct 2, 2017)

  • When changing the script of a keyboard layout, the ID was not being set correctly (the old ID was kept), causing problems with clashing IDs. This is fixed.
  • When changing the name of a keyboard layout, the localised names were not being changed. This is being done correctly now.
  • Choosing a keyboard type with the description “unknown”, usually “Unknown (ID = 22)” caused an exception which made subsequent work unreliable. The cause has been repaired.
  • The Enter Dead Key State contextual menu for a dead key now goes directly to the state triggered by the dead key.
  • The contextual menu for a key now contains an Edit Key… menu item to open the Edit Key dialog for that key.
  • Updated to the Unicode 10.0.0 database and the Sparkle 1.18.1 auto-update framework.
  • The installer disk image is now signed, which should allow Ukelele to install without going through the Gatekeeper dialog.
  • When creating a new keyboard layout from the current keyboard input source, the name is now automatically changed to be different from the original name, to avoid the problem of duplicate keyboard layout names.

New in Ukelele 3.2.5 (Apr 20, 2017)

  • If the name given to a keyboard layout contained an XML special character (left and right angle brackets, ampersand, single and double quotation marks), Ukelele would generate a file which was invalid XML. The name is now encoded and decoded correctly.
  • Removed some more unused code.

New in Ukelele 3.2.4 (Apr 10, 2017)

  • An error in uploading the last release meant that it wasn’t available.
  • Removed some unused code.

New in Ukelele 3.2.3 (Mar 24, 2017)

  • Fixes a bug and adds a feature:
  • A keyboard layout with two actions with the same id, possibly one encoded as an XML entity and the other not, would cause a crash. Ukelele now brings up a dialog showing what the error is.
  • The “Sticky Modifiers” and “JIS Only” selections in the toolbox are now remembered and restored when quitting and restarting Ukelele.
  • Updated Sparkle framework (for auto-update) to 1.17.0.

New in Ukelele 3.2.2 (Feb 15, 2017)

  • The tool to convert the current keyboard input source to a Ukelele-compatible XML file sometimes produces an incorrect script code, which makes the keyboard layout unreliable. Script codes and IDs are now fixed automatically.
  • Changing the name of a keyboard layout in the inspector would deselect the keyboard layout in the collection window, and a subsequent change would cause a crash. This is fixed, as well as restoring the selection appropriately when making other changes.

New in Ukelele 3.2.1 (Jan 8, 2017)

  • Add missing resources to ensure that Sparkle sees this as a secure update.

New in Ukelele 3.2.0 (Jan 4, 2017)

  • Ukelele will not open a keyboard layout or collection that has been already installed, and suggests editing a copy and installing the new version.
  • Some tweaking of the names used in the Undo commands.
  • Updated the Sparkle framework (for auto-update) to version 1.15.1.

New in Ukelele 3.2 Beta 3 (Dec 22, 2016)

  • Several controls in the keyboard layout collection window were non-functional. This has been fixed.
  • Some menu items were inappropriately enabled for keyboard layouts not in a collection, and selecting them either did nothing or caused a crash. They are now enabled only when appropriate.
  • Creating an empty keyboard layout or capturing the current input now creates a default English localisation.
  • There were several problems with undo, mainly related to sorting the tables of keyboard layouts or localisations in a collection. They have been fixed.
  • Updated the tutorial’s screen shots to the latest version.

New in Ukelele 3.2 Beta 2 (Dec 17, 2016)

  • Keyboard layouts without an intended language could cause a crash in the collection window. This is fixed.
  • Updated Ukelele Help.

New in Ukelele 3.2 Beta 1 (Dec 15, 2016)

  • Several new and updated features:
  • Keyboard layout collections can now be localised. This means that the name of each keyboard layout can be shown correctly in various languages. This involves a new look for the collection window, which now has two tabs, plus new commands and dialogs.
  • When you create an installer disk image, the Keyboard Layouts folder is now called “Drag here to install”, which is hopefully clearer for people to use.
  • The manual has been updated.
  • Updated the language tag registry to that of October 2016.
  • When you opened the colour theme editor and selected a colour, the discrete GPU was activated, which could lead to increased power consumption. This is now avoided.

New in Ukelele 3.1.1 (Sep 27, 2016)

  • Several bug fixes:
  • All key output was being displayed as white, which meant that printing did not work. Fixed.
  • When creating a keyboard layout with standard key maps, the space bar is populated with a space for no modifiers, shift and caps lock.
  • Fixed the creation of numbers in copies so that they work correctly when the name ends in “ copy X9” where X9 is a two or more digit number ending with the digit 9.
  • If a keyboard layout’s name contained characters that also had a decomposed form, problems could arise due to mismatch between the decomposed and precomposed forms, largely (though not entirely) related to setting the intended language. Hopefully, the fix here will solve the issue.
  • Removed some redundant code.
  • Updated to Xcode 8.

New in Ukelele 3.1.0 (Sep 14, 2016)

  • Changed feature and updated documentation:
  • The Duplicate Keyboard Layout command for a keyboard layout collection now creates a duplicate keyboard layout within the collection, rather than as a separate, unbundled keyboard layout.
  • Updated the manual and help.

New in Ukelele 3.1 Beta 3 (Sep 6, 2016)

  • Bug fixes:
  • Make the preference setting for encoding non-ASCII code points actually work.
  • When a keyboard layout could output characters outside the Basic Multilingual Plane, the maxout setting for the keyboard layout could be calculated as shorter than it should be, which in turn could lead to odd behaviour of the keyboard layout in use. This has been fixed.

New in Ukelele 3.1 Beta 2 (Aug 31, 2016)

  • Bug fixes:
  • Various issues in key display fixed, including increased line space to avoid some clipping and some scaling issues.
  • When showing the output of a key that has no output in the current dead key state, the dead key shading was applied based on the previous dead key state. It now shows the shading appropriate for the current dead key state.
  • Updated the manual and tutorial, mainly the screen shots.

New in Ukelele 3.1 Beta 1 (Aug 28, 2016)

  • When changing the scale of the keyboard view, the output also changes scale.
  • Add a button to remove the language attribute of a keyboard layout.
  • Update terminology from bundle to collection.
  • Fix a bug that made the scale combo button show the wrong value.
  • Work around a bug that caused a crash when the pointer was over a key that had a non-ASCII character in the information (such as $).
  • Deleting the last keyboard layout in a collection and trying to undo the deletion caused a crash. Fixed.
  • Change the New Keyboard Layout behaviour to offer choices in the base layout, caps lock and command modifier combinations, as in a new standard keyboard layout in a collection.
  • The display now updates correctly after changing the modifier combinations.
  • Updated and extended the tutorial, which is now a PDF document rather than HTML.
  • Since changing the output of the F-keys (F1 through F19) was of no use, the F-keys are no longer editable.
  • When a user tries to edit the output of a special key the first time, a warning dialog is presented to offer alternatives.
  • Updated the manual.

New in Ukelele 3.0.5 (Aug 8, 2016)

  • Fixes several bugs:
  • Buttons and menu items are enabled only as appropriate when a keyboard layout collection contains no keyboard layouts.
  • Importing a dead key did not work, with various ways that it could crash. These have been fixed, so it should be working as expected now.
  • When opening a keyboard layout, some checking is done to identify and report some errors that might arise with keyboard layouts that have had the XML file directly edited (in a text editor, not in Ukelele).
  • Updated the Unicode database to version 9.0.0.
  • Disable deleting a modifier combination if it’s the only one defined.
  • When adding a new key map, the dialog now picks the empty key map as the default, rather than whatever was previously chosen, which wasn’t working correctly.
  • If a keyboard layout collection had internal folders named without normal capitalisation, Ukelele would report that the bundle was invalid. This has been fixed.

New in Ukelele 3.0.4 (Jun 10, 2016)

  • Fixes several bugs:
  • Fixed issues of printing and saving with keyboard layouts not part of a keyboard layout collection.
  • Drag and drop of modifier combinations now works correctly.
  • Creating a new key map as a copy of an existing key map produced an invalid keyboard layout. This has been fixed.
  • The remove button for modifier combination sets is enabled appropriately.
  • Fixed the symbol for the help key.

New in Ukelele 3.0.3 (Mar 30, 2016)

  • Updated Sparkle (automatic update support) to version 1.14.0. This removes some issues. Ukelele was never susceptible to the http flaw, as it has always used https for updates.
  • Updated Boost (utility framework) to version 1.60.
  • Preferences were not being updated correctly, making some impossible to change (particularly the keyboard type). This has been fixed.
  • The XML output has been tweaked so that attributes now appear in the order that you would expect. In theory, this makes no difference, but it does make the XML easier to understand for a human reader.
  • Updated the manual in various places, including more explanation of unlinking, of creating keyboard layouts with different key maps for command and/or caps lock keys, and an updated list of the languages supported by Apple for Press and Hold.
  • Updated to the latest version of the Language Subtag Registry.

New in Ukelele 3.0.2 (Jan 14, 2016)

  • When double-clicking a key, sometimes the output would appear as doubly encoded XML (e.g.  rather than ). This has been fixed.
  • All of the sample keyboard layouts have been converted to Unicode rather than other scripts.
  • You can now remove an icon or language for a keyboard layout in a keyboard layout collection.
  • Removed some unused code and cleaned up some other internal things to make preparation for some future features.
  • Keyboard IDs are now set automatically, so that they will always match the selected script, and the user is never asked to set the ID, though it can be seen in the inspector window.

New in Ukelele 3.0.1 (Dec 15, 2015)

  • When running on a recent Mac (iMac 5K, MacBook 12", possibly others), Ukelele didn't recognise the keyboard type, and showed a blank keyboard window. Try to change the keyboard type from the View menu also failed. In these cases, Ukelele will use a default keyboard type.

New in Ukelele 3.0.0 (Oct 20, 2015)

  • Corrected the problem that the alias to the Keyboards Layout folder did not work as expected. This also resulted in a smaller file size for the created disk image.
  • The name of the keyboard layout collection or keyboard layout is now suggested as the initial name for the disk image..

New in Ukelele 3.0 Beta 2 (Aug 19, 2015)

  • A change was made so that Ukelele should work successfully on systems running OS X 10.8 (Mountain Lion).
  • An error in the XML generated by Ukelele 3.0b1 caused the system to reject keyboard layouts. This has been fixed.
  • The preferences to change the default theme from Default to Print failed to work. It now works as expected.
  • Text in key caps for small sizes (such as function keys and arrow keys on MacBook models) was positioned too high, and the top was cut off in print view. This has been repositioned.
  • When changing output of a key using the popover (default, rather than sheet), the input text is accepted if the user clicks outside the popover, not just when the Done button is clicked or the user presses the return key. As the change can always be undone, this was seen as more in keeping with Apple’s guidelines.

New in Ukelele 2.2.8 (Mar 11, 2014)

  • When creating a new key map as a copy of an existing map, the new key map had the same index as the old one, so the keyboard layout was invalid.

New in Ukelele 2.2.7 (Jan 9, 2014)

  • When creating a new key map as a copy of an existing map, the selected index was off by one.
  • Updated the manual and help with reference to Mavericks.

New in Ukelele 2.2.6 (Nov 18, 2013)

  • Some user keyboard layouts cause the converter to fail when using New From Current Input Source, and that caused a crash in Ukelele 2.2.5. Now you will get an error message about the XML file being invalid. It would be better to use New Based On… and open the original XML file.

New in Ukelele 2.2.5 (Nov 9, 2013)

  • When creating a keyboard layout based on an existing keyboard layout or from the current keyboard input source, a random keyboard ID is generated.
  • New state names are validated to avoid some obscure problems (basically, don’t call a state “0” or “none”).

New in Ukelele 2.2.4 (Dec 14, 2012)

  • Code-signing should now be correct for Gatekeeper on OS X 10.8 (Mountain Lion).
  • Updated Ukelele Help.

New in Ukelele 2.2.3 (Oct 1, 2012)

  • Creating a new keyboard layout from the current keyboard input source was crashing on PowerPC machines due to the tool used being Intel-only. That tool is now a universal binary, so it should work correctly on PowerPC.

New in Ukelele 2.2.2 (Sep 29, 2012)

  • Fix a crashing bug when creating a new modifier combination and choosing a copy of an existing key map.
  • Ensure that you cannot create a dead key state with no name, which would cause the keyboard layout to be invalid and hence not usable.
  • Code-signed for Gatekeeper.
  • Toolbar buttons updated for high-resolution (Retina) displays.

New in Ukelele 2.2.1 (Jun 20, 2012)

  • There is a new option in the preferences to generate pre-10.5 compatible bundles. These should still work in 10.7 and later for “press and hold”.
  • Fixed a problem in the Save As Bundle dialog where the Save button was labelled inaccurately as Open.
  • The interface is partly adapted for high-resolution displays such as the Retina MacBook Pro. Text should appear sharp, but the toolbar buttons and other graphic elements such as icons are not yet converted for high-resolution display.

New in Ukelele 2.2 (Jun 19, 2012)

  • By saving a keyboard layout in a bundle, it will become compatible with the “press and hold” mechanism for entering diacritics, introduced in OS X 10.7 (Lion). For this purpose, an “intended language” can be supplied (default is the system language), which will determine which possibilities are offered in the pop-up. However, such bundles may not work with OS X 10.4 (Tiger) and earlier.
  • Change the colour themes to allow more choices. For each category of key (normal, dead key, selected) and state (up or down), the gradient type, colours and text colour can be set individually.
  • Automatically repair missing key maps when opening a keyboard layout, putting empty key maps with only the special keys defined.
  • Detect and repair an invalid keyboard ID when opening a keyboard layout, automatically generating a valid keyboard ID for the script specified in the keyboard layout.
  • Open files now remember the colour theme, keyboard type and zoom level after quitting Ukelele and restarting, as long as files are automatically reopened (Lion and later).
  • When editing output of a special key, there is now a button to insert the standard output automatically.
  • Updated the manual extensively to reflect recent changes and newer versions of OS X.

New in Ukelele 2.1.10 (Feb 14, 2012)

  • Restore a missing file which caused the button to add a modifier set to be invisible.
  • Further fixed the behaviour of adding a creation comment (in 2.1.9 it was adding a comment every time the file was opened).
  • Fixed some situations where the selected colour theme was ignored and the default theme was used.

New in Ukelele 2.1.9 (Feb 6, 2012)

  • Restore a missing file which caused colour themes not to work for most people.
  • Fix the print dialog extension (PDE) so that the Ukelele options in the print dialog now appear and work again.
  • New keyboard layouts now get the appropriate creation comment added.
  • Fixed some problems with adding comments.

New in Ukelele 2.1.8 (Oct 22, 2011)

  • Reenable the "New From Current Input Source" command when running in Mac OS X 10.7 (Lion), as there is a new version of the helper utility.
  • Add a preference to allow the user to choose whether to reopen the documents that were open when Ukelele was last quit. This only applies to Mac OS X 10.7 (Lion), and allows the new default behaviour (resume) or the old behaviour (the user's choice of creating a new document, opening an existing document, or doing nothing).
  • Update the Unicode tables to the current draft of the Unicode Character Database, version 6.1. Note that this is a beta version, with the formal 6.1 specification due in February 2012.
  • Minor updates to the manual to reflect changes with Lion.

New in Ukelele 2.1.7 (Aug 3, 2011)

  • Disable "New From Current Input Source" when running in Mac OS X 10.7 (Lion), as it uses some helper utilities that do not run on Lion (they are PPC-only). It is still available on earlier versions of OS X.

New in Ukelele 2.1.6 (Jun 7, 2011)

  • Fixed a bug that could lead to a new keyboard ID being set to 0 instead of the value in the dialog.
  • Show the default output for special keys in the status bar when editing a key within the window.

New in Ukelele 2.1.5 (Mar 12, 2011)

  • Write characters outside the Basic Multilingual Plane as hexadecimal values, to get around an apparent bug in Apple’s XML parser.
  • Now using Cocoa versions of the Inspector and Toolbox.

New in Ukelele 2.1.4 (Dec 17, 2010)

  • When a new modifier combination was added, it did not affect the display in the Ukelele window immediately. This is fixed so that it shows up properly.

New in Ukelele 2.1.3 (Dec 6, 2010)

  • Fix a crash when trying opening a keyboard layout within a bundle when either the bundle did not contain any keyboard layouts, no keyboard layout was chosen, or the cancel button was pressed.

New in Ukelele 2.1.2 (Nov 24, 2010)

  • Made some changes to the property list which may help with the problem of Ukelele appearing to claim non-Ukelele documents, particularly bundles.

New in Ukelele 2.1.1 (Nov 12, 2010)

  • Change the line endings to Unix line endings in the XML output file.
  • Improved formatting for XML files with multi-line comments.

New in Ukelele 2.1 (Oct 30, 2010)

  • Added a new preference which enables the user to choose to use a sheet dialog for editing key output on double-click (the previous behaviour, and the default) or edit in the same window.

New in Ukelele 2.0.1 (Aug 11, 2010)

  • Corrected a problem which made keyboard layouts with no dead key states fail to work.

New in Ukelele 2.0 Beta 8 (Jun 11, 2010)

  • Fixed a bug that caused intermittent crashing when saving a file.
  • Fixed some problems with adding and deleting modifier combinations, some causing crashes, others creating keyboard layouts that could not be opened.

New in Ukelele 2.0 Beta 7 (Apr 26, 2010)

  • Fixed an issue with adding and deleting modifier combinations, which could lead to a keyboard layout that could not be used.
  • Implemented software update.
  • Found a work-around for keyboard layouts that have actions with an empty string for the id.
  • Updated the manual with a few fixes.

New in Ukelele 2.0 Beta 6 (Apr 1, 2010)

  • Replaced the colour options with a new preference panel, colour themes, which are now accessible from the View menu as well. Colour themes control all the colours of the keyboard, including background and text.
  • Updated the manual to incorporate changes since 2.0b1.
  • New feature to look up key strokes for a given output string. This is accessed from the Find item in the Edit menu.
  • Adjusted some code to prevent Ukelele producing a keyboard layout file that cannot be used by the operating system. Opening and saving a file should fix the problems in existing keyboard layouts.
  • Relaxed some restrictions related to using keyboard layouts with unusual key maps using base maps.
  • Created a user forum on Google Groups, Ukelele-Users.

New in Ukelele 2.0 Beta 5 (Feb 9, 2010)

  • Modified the code to save a file, hopefully avoiding a crash.

New in Ukelele 2.0 Beta 4 (Jan 27, 2010)

  • Instead of a black frame on dead keys, they are now a red colour, and the selected keys (for swapping keys) are framed.
  • The grey for printed keys that are down has been made a little lighter.
  • Support for opening files which are considered to be plain text has been re-enabled. Hopefully this solves problems in opening old files, without causing problems with saving them.
  • Key elements with empty output should be handle correctly now.
  • Symbols for non-printing characters should show up on non-standard keys.

New in Ukelele 2.0 Beta 3 (Jan 25, 2010)

  • Key colours are now user-configurable in preferences. Key up and key down have inner and outer colours, with a gradient from the outer colour at the corners to the inner colour in the centre of the key cap.
  • Key colours are swapped, so that the darker colour is now in the centre of the key, the lighter at the edges.
  • Crashes when moving from comment to comment have been fixed.
  • The problem solved in 1.8.4 with hand-edited files with gaps in numbering key maps has been solved in 2.0b3 as well.
  • Found a more robust solution for positioning text on the key cap.
  • A word of explanation about removing plain text support: This was only necessary for opening some old files, and was not a supported save format. Removing support avoids saving an unusable file.

New in Ukelele 2.0 Beta 1 (Jan 16, 2010)

  • Major rewrite, based on the Nano framework, meaning that it is restricted to Mac OS X 10.4 and later, but utilising many more modern features, such as sheets and drawers.
  • Redesigned interface, with a toolbar window and a drawer, bringing most elements into a single window.
  • The keyboard window is more scalable, allowing any value between 50% and 500%, including an option to fit the keyboard to the screen.
  • Printing is now implemented, with options of printing the keyboard layout with all dead key states and/or all modifier combinations.
  • Many interactions have been reworked, using a status bar to give instructions, leading to fewer dialogs that have to be navigated.
  • More information is now available about code points in the info inspector palette, based on the Unicode 5.2 standard.
  • Combining diacritics are now shown with a placeholder character, which is configurable in the preferences.
  • Comment handling is much improved, now handling all comments in the file, not just those at the beginning, and allowing comments longer than 255 characters.
  • New icons.
  • Support for bundles, so that keyboard layouts can be saved as bundles, or into existing bundles, optionally grouping the keyboard layout file with an icon file (usually the flag icon).
  • It is now possible to capture the current keyboard input source to create a keyboard layout. This allows easier conversion of older resource-based keyboard layouts, and use of the system’s keyboard layouts (which are no longer provided as XML as of 10.5, Leopard). Note that this facility requires Rosetta on Intel-based Macs.
  • The manual and tutorial have been rewritten to reflect the new version of Ukelele.

New in Ukelele 1.8.4 (Sep 15, 2009)

  • Fixed a problem with certain keyboard layouts that had been hand-edited to have gaps in the numbering of their key maps.

New in Ukelele 1.8.3 (Jun 8, 2009)

  • Keyboards with a Fn key did not show the delete key as a forward delete when the Fn or Num Lock keys were down. This is fixed.
  • Changed the output so that, if there are no actions, no actions section is in the XML. This may fix an issue introduced by a Security Update for 10.4.11.

New in Ukelele 1.8.2 (May 5, 2009)

  • Fixed a hang when deleting the last comment in a keyboard layout.
  • Fixed a bug which caused a crash when trying to unlink a key with no output.
  • Fixed a bug in saving a keyboard layout when some of the headers were not specified.

New in Ukelele 1.8.1 (Jan 6, 2009)

  • When Sticky Modifiers is on, the modifiers are returned to their state when the window is activated (such as after a dialog is dismissed), rather than going back to the state of the hardware keyboard modifiers.
  • Avoid a crash when you close a keyboard layout when you are in a dead key state other than state “none”.
  • Avoid a crash when editing a key with no output in the current dead key state that is not state “none”.

New in Ukelele 1.8 (Jul 30, 2008)

  • We now remove unused actions when removing unused states, which improves the behavior, removing more states.
  • Fixed a bug which occasionally made Ukelele crash when editing the terminator of a dead key state by double-clicking the dead key.
  • Fixed a bug which caused a crash on quit after adding a new modifier combination.
  • Fixed a bug which caused a crash when a dead key state had no terminator specified, usually when a keyboard layout has been edited outside Ukelele.
  • Updated the resources list to reflect a changed URL.
  • Fixed a bug that caused a crash when you tried to open a file that had illegal XML.
  • Fixed a couple of places where strings were not properly encoded for XML, leading to a possibility of getting a file which was not legal XML, and therefore the system could not use the keyboard layout, and Ukelele could not open it again.
  • A malformed file could cause a crash on save. This is fixed.
  • When you change the script code, a random keyboard ID in the appropriate range is chosen. Also, new keyboards have a random keyboard ID.
  • Updated the manual to include information on the correct ranges of IDs allowed for each of the different script types. Keyboard IDs may have more influence than is implied by Apple�s documentation, but this is far from certain.
  • Updated the help book a little to reflect changes in the program and in terminology used in the manual.
  • Updated the Unicode system keyboard layouts to have all the current control keys having default output (they got missed in 1.8b6).

New in Ukelele 1.8 Beta 6 (Mar 14, 2008)

  • Fixed a bug that made keys appear selected when the num lock key was down.
  • Corrected the behaviour of the Apple Aluminium Wireless keyboard and MacBook (Late 2007), which have a Fn key, but no embedded keypad.
  • Provided a better error message when a non-keyboard layout XML file is opened.
  • Changed the way the XML is produced to adhere to part of the original specification (the when element for state �none� must come first).
  • Added the current state and action names in the dialog asking for a new name.
  • Updated all the provided keyboard layouts, both System and Logitech, to have all control keys defined and to avoid numeric state names.
  • If you gave an empty string in a dialog that needed a non-empty string, you got stuck in a loop that wouldn�t accept the string until you clicked Cancel and tried again. This is now fixed.
  • Changed the display in dead key states so that only the output in the dead key state is shown. The previous behaviour was that keys that had only one output would show that, even if the key did not produce that output in the dead key state.
  • A completely rewritten manual is now included. Help files and an updated tutorial are still in progress.