19.11.0 (released 30/Nov/2019)
- (minor bugfix) Unicode palette: when using Locate to reveal a character that is already the current character, but is not currently visible (not on the current page), the scroll position was not being adjusted to make it visible; this also affected the "flashing preview on drag/drop" mode.
19.8.0 (released 24/Aug/2019)
- (Win10 compatibility) KbdEdit can now detect and restore custom layouts that have been lost after a major Windows 10 update.
- Win10 compatibility) improved reliability of the Manage Language Bar dialog; the system language bar list is now being synced more accurately with the changes made in the dialog, reducing inconsistencies such as leftover layouts in the language bar after the user has chosen to remove them.
- (improvement) When saving an existing layout, a new warning is being shown, informing the user that the changes may not become active until the next log off / log on.
- (improvement) New standard dead char Turned (contributed by John Wilkes).
- (bugfix) some zero-width characters, like
1CF3 from the
Unicode block, were shown as a blank square in the UI even if supported by the
- (improvement): better horizontal centering of zero-width characters in the UI.
- (Improvement) improved visibility of non-BMP (>0xFFFF) characters in the virtual keyboard UI - now using a bigger font.
19.5.0 (released 18/May/2019)
- New examples:
- (bugfix) Google "Noto" fonts (and probably others) are now rendered correctly, previously display was falling back on the generic "Arial" font.
- (bugfix) Instability and potential crash when pasting text from clipboard ("incorrect argument" popup).
- (bugfix) Dead key editor layout bug: "Transformation pairs" label was becoming mis-aligned (creeping to the right) when increasing the main window's horizontal size.
18.9.0 (released 24/Sep/2018)
- (feature) Improved Far-Eastern (FE) support: KbdEdit now preserves any
special NLS functions
and mouse key customisations
found in the original layout.
- (bugfix) Options dialog: when exiting with "Esc", the original keyboard type was not being restored if the "Abnt" or "Typematrix 2030" combo had the keyboard focus.
18.3.0 (released 11/Mar/2018)
- (feature) non-BMP character entry via keyboard now works properly: UTF32 codepoints above FFFF are correcly reconstructed from consecutive surrogate
pairs. Previously, each surrogate character was being treated as an individual
18.1.0 (released 29/Jan/2018)
- (Win10 compatibility) Preview mode:
Thanks to Mike Grant for numerous Unicode palette-related suggestions and early feedback, which has resulted in the following new features/improvements:
- (features, improvements) Unicode palette general:
- (features, bugfixes) Unicode palette context menu:
- (features, improvements) Unicode palette navigation:
- (features, improvements) Unicode search:
- (improvements) Unicode subrange dialog:
- (layout cleanup) Options dialog: the three "ABNT" keyboard subtypes now represented by a single radio button, with the subtype chosen via a new combo drop-down.
- (bugfix) Key mapping editor popup dialog: character entry via keyboard is now suspended when a UI button has focus. This enables normal use of the "space bar" UI keyboard shortcut for pressing the button, without misinterpreting it as entering the "space" character.
- (bugfix) error message "No apps are installed to open this type of link (file)" when attempting to bring up online help.
- (Win10 compatibility) If layout file Save or Save As fails due to sharing violation, the error message now includes a list of process(es) (EXE path and PID) that are keeping the target DLL file locked. This feature addresses a Windows 10-specific issue with certain system process(es), such as taskhostw.exe, interfering with layout file saving.
- (improvement) an "are you sure?" prompt with a detailed explanation is now shown when Save needs to fall back to Save As. This can happen eg due to existing file having the read-only flag set, or attempting to overwrite a built-in system file.
- New example: Mac Boot Camp: fixed positions of Alt, Windows and Ctrl keys.
17.9.0 (released 30/Sep/2017)
- New version numbering scheme <year>.<month>.<minor>
1.5.2 (released 06/Aug/2017)
- These dialogs now have resizable layout:
Delete Keyboard Layout,
Manage Language Bar List,
Add standard dead chars,
- Dead char editor: the right-click context menu for "Current", "Transforms" and "Into" fields is now accessible via the keyboard (VK_APPS ie "popup menu" key).
- bugfix: Dead char editor crashing if the "Dead characters" or "Transformation pairs" list has no selection.
- (bugfix, Win10-only) Preview mode occasionally triggering bogus error message "Falling back to US English"
1.5.1 (released 01/May/2017)
- (improvement) High-level editor: "Shift" positions are now editable for numpad keys when "Caps Lock same as shift" and/or CAPLOKALTGR is used. This functionality is documented on the new Numeric keypad manual page.
- (bugfix) Ligature editor text edit fields did not allow the entry of 6-digit characters codes ("Supplementary Private Use Area-B" Unicode subrange)
- (improvement) Preview now correctly reflects the CAPLOKALTGR effect on all positions including AltGr and Shift (eg AltGr+Shift+Kana, AltGr+Shift+Loya+Roya);. previously was limitted to only AltGr and AltGr+Shift.
- (bugfix) Preview crashing when resolving Kanalok / AltGr / CapsLock positions.
- (improvement) More detailed error message on Save when an existing layout DLL file cannot be opened for writing.
1.5.0 (released 26/Feb/2017)
- (feature) Main window's layout is now resizable, with the keyboard display and other UI elements dynamically adjusting their layout to utilise the available screen space.
- (bugfix) Preview screen failing with error "KbdEdit Preview dll relocation address differs from 0x5fff0000".
- (improvement) reduced visual flicker when reloading contents of list controls on various views (list of keyboard layouts, Unicode subranges, dead key / transformation pair lists, Standard dead chars )
1.4.0 (released 27/Aug/2016)
- (feature) clipboard Cut/Copy/Paste support added in a number of places:
- (feature) added keyboard shortcuts for common File/Edit/Clipboard operations:
- (bugfix) Generate Layout Install Package failing with "Cannot generate installation package - keyboard layout too complex." for otherwise valid layouts.
- (bugfix) "Save As" dialog: incorrect default values for fields "Layout text", "Register as" and "Layout file" if "Show only custom layouts" is checked, .
- (bugfix) Preview: unmapped keys (VK__none_) can sometimes be erroneously drawn as pressed.
- (improvement) Low-level editor: right click popup now being shown for non-editable keys as well.
- (layout fix) Low level editor: increased size of the Active/disabled modifier combination lists, to prevent truncation of very long modifier combinations (eg SHIFT+ALT+CTRL+KANA+ROYA+LOYA)
1.3.9 (released 06/Aug/2016)
- (bugfix, Win10-only) fix for recent Windows 10 update breaking the Manage Language Bar dialog, causing it to fail with "Error: cannot retrieve Language Bar list".
1.3.8 (released 10/Apr/2016)
- (Win10 compatibility) Fixed a bug that was causing the layouts generated by
Player edition to occasionally revert
to generic US-English. For this fix to take effect, layouts saved with pre-1.3.8
versions must be
opened and saved back using 1.3.8.
1.3.7 (released 13/Feb/2016)
- (feature) High-level editor,
mapping editor popup,
Dead char editor :
Unicode character mappings can now be entered via keyboard when the
corresponding UI field has keyboard focus.
- (feature) Key mapping editor popup dialog: when switching between Normal/Ligature/Dead mapping types, the old character mapping is now retained intelligently; previously, the new mapping always defaulted to the '?' character (normal, ligature) or the first dead char list entry (dead key).
- (feature) Key mapping editor popup dialog: when choosing the "Dead key" mapping type, a new dead key can now be created "on the fly", instead of being restricted to the list of pre-existing dead keys.
- (feature) Dead char editor: when changing the current transformation type from "Final character" to "Chained dead char", the editor now offers to automatically create a new dead char for the old "Final character" char if one does not already exist; previously one could only choose from the list of pre-existing dead keys.
- (improvement) Dead
char editor: when creating a new dead transformation pair by dropping a new
char to the "Trans. pairs" list, the editor now chooses intelligently whether to
map the dropped char as the "From" or "To" char, or both; previously the dropped
char always defaulted to "From".
- (improvement) Ligature editor, character magnifier: non-BMP (>FFFF) characters are now consistently shown as a single 5-digit Unicode entry; the underlying surrogate pairs are completely hidden from user's view.
- (improvement) Ligature editor: ligatures can now contain up to 9 non-BMP (UTF32) characters; the old limit was 9 UTF16 characters, which couldn't accomodate more than 4 non-BMPs.
- (Improvement) About box now reports the supported Unicode version.
- (layout fix) Dead char editor: "transformed character" controls (edit box, static label) no longer overlap with the "Chained dead char" radio-box on some Windows versions.
- (bugfix) Crash when switching from Dead char editor view to another view after last dead char has been deleted.
- (bugfix) Preview: chained dead key preview incorrectly showed the "from" character instead of the chained "to" dead char.
- (bugfix) High-level editor and Klc file import no longer allow the mapping of special-purpose codepoints F000, F001, F002; these characters are used internally as placeholders for empty, dead and ligature mapping, and cannot be used for other purposes.
1.3.6 (released 01/Nov/2015)
- (feature) Support for ROYA and LOYA modifier keys.
- (feature) Improved handling of layouts with inconsistent dead key tables and ligatures: instead of generic "ligatures and/or dead chars are not consistent", a detailed error message is now being reported, naming specific bad dead keys / ligatures. This is helpful in troubleshooting issues with custom layouts produced by tools with less rigorous consistency checking.
- (feature) Improved robustness against inconsistent layouts: KbdEdit no longer crashes when encountering layouts with mappings to undefined dead keys.
1.3.5 (released 13/Sep/2015)
- (Windows 8/8.1/10 compatibility) Workaround for buggy system keyboard Tamil KBDINTAM.DLL 00000449. In Windows 8 and later, this layout contains a bad ligature entry, which caused KbdEdit to fail with an "inconsistent ligature mapping" error when attempting to open it. The layout now opens successfully - the bad entry is recognised and silently fixed "on the fly".
- (bugfix) KLC file import crashing when encountering a NUL (0000) character mapping.
1.3.4 (released 09/May/2015)
- (Windows 8/8.1 compatibility) Windows 8 language list now kept in sync with the language bar list changes.
- (Windows 8/8.1 bugfix): Preview mode not reflecting the layout's current state, activates an older obsolete version instead.
- (bugfix) High-level editor: drag-drop not working correctly for the NUL (0) character, misinterpreted as empty mapping.
- (improvement) when using Register layout DLL file under x64, a warning is now shown if a matching 32-bit DLL is not found under C:\Windows\SysWOW64\ .
- (UI improvement) Delete keyboard layout dialog now no longer disappears after a layout was deleted, making it easier to delete multiple layouts.
- (UI layout improvement) Delete keyboard layout dialog: checkbox "also delete DLL" made bigger so it can fit longer filenames.
1.3.3 (released 09/Aug/2014)
- (Improved 64-bit compatibility) under 64-bit Windows systems, a special
"Wow64" 32-bit layout DLL version is saved under the c:\Windows\SysWOW64\
system directory (in addition to saving proper 64-bit version under
- (Improved stability) layout DLL files now correctly handling relocation when loaded to an address different from the preferred load address. This improves compatibility with certain 3rd party tools that tend to keep layout DLL files open for extended periods of time.
1.3.2 (released 20/Oct/2013)
- (bugfix) Under Windows 8, custom layouts created with KbdEdit Personal, Lite or Player edition causing long delays followed by "KbdEditServer not running" error message. For this fix to take effect, layouts saved with pre-1.3.2 versions must be opened and saved back using 1.3.2.
1.3.1 (released 17/Feb/2013)
- (new feature) Unicode palette's display is now color-coded to visually distinguish mapped and unmapped code points. For mapped code points, a distinct marker is shown for each role the code point appears in (normal mapping / dead mapping / part of ligature / transformed by dead key / produced by dead key).
- (bugfix) Low-level editor crashes when attempting to activate a key (i.e. scan code) that is not accessible through the GUI by pressing it on the physical keyboard (reported by Daniel Rossbach).
1.3.0 (released 01/Sep/2012)
- KbdEdit edition previously known as "KbdEdit Full" renamed to KbdEdit Personal.
- (bugfix) importing a KLC file was triggering unwanted auto-complete operations, i.e. KbdEdit was filling empty mappings with lower/uppercase equivalents of any letters mapped to (un)shifted positions of the same key.
1.2.4 (released 10/Jun/2012)
- (Improvement) preview screen now offers improved dead key assistance: if a dead key is pressed, the view changes to show combined characters produced by the affected keys.
- (feature) support for Japanese 106/109 key keyboards - new option "Japanese 109" in the Options dialog.
1.2.3 (released 15/Apr/2012)
- (Improvement) KbdEdit now supports chained dead keys.
- (Improvement) preview screen: tooltips for dead keys show a detailed list of transformation pairs.
- (Improvement) high-level editor: keyboard button tooltips now show the mapping summary, including mapping type (normal/dead key/ligature/empty), mapped character numerical value and Unicode name.
- (Improvement) Layout of the key mapping editor popup changed to make dead char combo box bigger; the combo is now sorted on dead char name.
- New example: Emulating Compose key using chained dead keys.
1.2.2 (released 03/Mar/2012)
- (feature) KbdEdit now supports non-BMP Unicode characters (i.e. those with numerical value >0xFFFF).
- (feature) support for new ABNT keyboard type - new option "ABNT Small
Return Big Backspace" in the
1.2.1 (released 16/Jan/2012)
1.2.00 (released 15/Jan/2012)
- New feature: Sticker map generator.
- (bugfix) KLC import now correctly handles non-BMP (>0xFFFF) characters, i.e. they are converted to a ligature of surrogate pair characters.
1.1.11 (released 22/May/2011)
- Dead key editor: list of
characters expanded to encompass nearly 100 diacritics defined by Unicode
- Dead key editor: UI improvements - dead character lists can be sorted on any column, adjustable column widths.
- Add standadd dead char dialog: UI improvements - filtering by dead character name, showing preview of a current dead characters.
- (bugfix) KbdEdit hangs when changing font in the Options dialog.
- (improvement) Glyphs (NBSP, LRM etc) are drawn using the system font, ensuring their consistent appearance regardless of the current font chosen.
1.1.10 (released 23/Nov/2010)
1.1.9 (released 30/Jan/2010)
- (improvement) special white and non-printable characters are now displayed as glyphs instead of whatever representation they have in the current font (e.g. 0020 (Space) is displayed as SP, 00A0 (No-Break Space) as NBSP, etc).
- (update) "Standard dead char" list of common dead characters was refreshed. It now includes dead characters from keyboard layouts that appeared in recent Windows versions (Vista, Windows 7).
(thanks to Henrique Peron for help with dead characters lists and suggestions on the character glyph representation)
1.1.8 (released 19/Jul/2009)
- (bugfix) crash when assigning "empty" to all modifier positions of a key in a layout that contains a Shift+AltGr position, or a KANA position mapped to VK_KANA.
1.1.7 (released 29/Mar/2009)
- (improvement) eliminated long delays at Windows safe mode startup if the Language Bar list contains a KbdEdit custom layout. For this change to take effect, custom layouts created with pre-1.1.7 versions must be opened and saved back using 1.1.7.
- (improvement) Character names no longer shown in ALL CAPS, resulting in improved readability and better use of screen real estate.
- (Website/help) new example: French multilingual (contributed by Gilbert Galeron).
1.1.6 (released 28/Sep/2008)
- (improvement) Unicode subsets in the Unicode Subrange dialog can be sorted on either numeric value or name.
1.1.5 (released 02/Jun/2008)
- (improvement) eliminated long delays at XP startup if KbdEdit custom layout is added to the Language Bar list.
- (improvement) better support for Brazilian ABNT keyboards: new layout type "ABNT - big Backspace" added to the Options dialog; support for extra numpad key ABNT_C2 (thanks to Henrique Peron and Joaquim Pedro for help with Brazilian keyboards).
- (improvement) new subsets added to the
1.1.4 (released 15/Mar/2008)
- (feature): Auto-complete and pop-up hints for lower/upper-case equivalents.
- (feature) Options dialog opened automatically when starting KbdEdit for the first time.
- (bugfix) High-level: setting all mod positions of a key to "empty" resets the "Effect of Caps Lock" to "Unaffected", clears KANALOK and CAPLOKALTGR.
- (Website/help): new examples: Tri-lingual Serbian Cyrillic / Latin / Greek keyboard and Replacing AltGR with KANA
- (Website/help): improved high level drag/drop page - screenshots added.
- (Website/help): new page Right-click key popup menu.
1.1.3 (released 03/Feb/2008)
- (feature) support for Brazilian ABNT keyboards - new option "Medium Return Small Backspace (ABNT)" in the Options dialog.
- (Website/help) new FAQ page.
1.1.2 (released 16/Dec/2007)
- (improvement) tooltips added to modal dialogs.
- (improvement) Unicode subrange dialog: enabled and hidden subsets are now shown in two side-by-side lists (previously a single check-box list was used).
- (bugfix) Unicode subrange dialog: removed duplicate Unicode subsets (3130-318F) and (3190-319F).
- (bugfix) dead char table import / KLC file import: it was possible to import empty dead chars (no actual transformation pairs), which resulted in a corrupt layout DLL. Fixed by ensuring all imported dead chars have at least one transformation pair.
- (improvement) Enter dead key name dialog now allows empty strings.
- (improvement) increased maximum payload size of layout DLLs generated by KbdEdit. Eliminates the "Layout saving failed" error when saving complex layouts with extremely big dead tables and/or lot of ligatures.
- (improvement) displaying a detailed error message on a layout DLL save failure (previously a generic "Layout saving failed" was shown).
1.1.1 (released 02/Dec/2007)
- (bugfix) when new instance is started while another one is open in preview mode, the new instance issues false warning about leftover preview layout and tries to clean it up.
1.1.0 (released 17/Nov/2007)
- (improvement) Installation: both 32 and 64 bit versions are now included in a single MSI file, reducing the package size by 20% (no longer duplicating online help files common to both versions)
- (Website/help) improved navigation banner at the top
1.0.69 (released 28/July/2007)
- (bugfix) Preview: error message "An invalid argument was encountered." popping up when a modifier key is pressed
- (bugfix) Low-level editor: if the list of unused modifier combinations is empty, the 'Enable combination' button displays a meaningless tooltip.
1.0.68 (released 27/July/2007)
- (improvement) High-level editor : numpad keys are not mappable in SHIFT states to reflect the fact that they act as cursor keys/home/pgup/etc when SHIFT is down
- (improvement) Preview : display of numpad keys changes dynamically between mapped characters and cursor keys depending on Numlock and Shift state
- (bugfix) Preview : numpad keys producing incorrect results when clicked by mouse in "numlock on" mode
- (improvement) Preview : right Shift correctly drawn as pressed when clicked on by mouse
- (improvement) Online help : online help files are installed locally to enable using help without Internet connection
- (improvement) Installation : an older version is automatically removed during setup, eliminating the need to manually uninstall it before installing a more recent version
- (feature) Context-sensitive tool tips for all controls on main views (high-level etc)
1.0.67 (released 01/July/2007)
- (improvement) Low-level editor : "mappable" and "non-mappable" VK codes shown in two separate columns in the VK codes popup menu.
- (improvement) Low-level editor : "non-mappable" VK codes visually distinguished by darker color.
- (improvement) List of "mappable" VK codes expanded to include all "exotic" VKs which behave normally when given a Unicode mapping (see new manual page List of Virtual Key Codes).
- (bugfix) Preview not working properly if more than one instance of KbdEdit is running.
- (bugfix) When KbdEdit is opened by double-clicking a KBE or KLC file from Explorer, the user's default layout is still opened after importing the file (instead of keeping the imported layout).
1.0.66 (released 08/Jun/2007)
- (feature) keyboard buttons drawn with a smooth 3D shade in High level, Low level and Preview.
- (feature) added check-box "don't show this window in the future" to the registration details window which shows up when a custom layout is activated.
- (bugfix) strange behavior in x64 version when opening layout through a MRU list menu item ("save as" dialog popping up, cannot save modified layout etc).
1.0.65 (released 28/Apr/2007)
- (feature) User's default layout is automatically opened at startup. This is the new default behavior which can be overridden through the new Options dialog setting "Open default layout at startup".
- (improvement) Open dialog initially selects user's default layout if no layout is currently open (i.e. "Untitled" is active).
- (feature) Save As dialog: if "Add to Language Bar" is checked, and the original layout is in the language bar list, user can choose whether to replace the original layout with the customized version in the language bar list, or to keep them both.
- (improvement) Manage Language Bar list dialog: if the currently opened layout is also a member of the language bar list, it is initially selected in the dialog's language bar list tree.
- (improvement) Manage Language Bar list dialog: double-clicking a layout in the language bar list tree opens it for editing (same as clicking the "Open in editor" button).
1.0.64 (released 19/Apr/2007)
- (feature) Dead char editor: the field "Current dead char" is now editable. A list of transformation pairs can be easily assigned to another dead char without having to manually recreate its mappings.
1.0.63 (released 24/Mar/2007)
- (update) enabling import of KLC files generated by MSKLC 1.4 (recognizing new blocks LOCALENAME, DESCRIPTIONS and LANGUAGENAMES)
- (bugfix) when importing KBE/KLC files, dialog "Save changes to 'XYZ'?" shows up again if "No" is chosen the first time
1.0.62 (released 23/Feb/2007)
- (improvement) Locale list for the "Register as" combo in Save As dialog modified to display only locales supported by the target OS version
- (improvement) Automatic order fulfillment system put in place, shipment delays further reduced.
1.0.61 (released 05/Feb/2007)
- (improvement) Enabling non-ANSI strings in all user registration details (except e-mail):
- (improvement) Improved semi-automatic order fulfillment system.
1.0.60 (released 26/Jan/2007)
- (improvement) Installation: KbdEdit registered with Windows as KBE and KLC file type handler
1.0.59 (released 20/Dec/2006)
- (improvement) Installation: shortcut to online manual index added to KbdEdit start menu group
- (bugfix) crash on KLC import if file uses a VK code that does not appear in standard US English layout
1.0.58 (released 13/Dec/2006)
- (UI improvement) Using dedicated tab control instead of toolbar buttons for high level / low level / dead char / preview navigation
Copyright © KbdSoft 2007-2019