Keyboard Support

Contact and Search Homepage

Header bottom

Other versions
Version 13.0Version 12.0Version 11.0Version 10.0Version 9.0

Keyman Developer Version History


  • Fix: When a longpress popup is being edited, selecting another primary key can copy the details to that key's popup (additional scenario, I4926)
  • Update: Updated KeymanWeb to latest build 408
  • 9.0.519.0

    • Fix: When a longpress popup is being edited, selecting another primary key can copy the details to that key's popup (I4926)
    • Fix: If 'find char under cursor automatically' is on, OSK editor opens charmap if it is closed (I4927)
    • Fix: Keyman 9 product installers should test for XP or Vista (I4934)
    • Fix: Redraw not reliably working in text editor (I4962)
    • Fix: Importing a KMN into a KVK does not work if includecodes are in the keyboard (I4979)
    • Fix: Keyboard fonts dialog has incorrect tab order (I4980)
    • Fix: Character Map is being updated even when not visible (I4981)
    • Fix: Defined character constants cannot be referenced correctly in other stores (I4982)
    • Fix: Starting a subprocess can fail due to constant buffer for CreateProcessW (I4983)


    • Fixed: Compiler does not warn on an index() statement that has an offset one past the key (I4914)
    • Improved: Text editor refresh is now faster after fix for I4870 (I4918)


    • Fixed: Blank font filename entry in JSON metadata UI editor crashes on save [CrashID:tike.exe_9.0.516.0_009CD793_EAssertionFailed] (I4878)


    • Fixed: Keyman Developer crashes when starting regression test [CrashID:tike.exe_9.0.511.0_0058BC63_EInvalidOperation] (I4839)
    • Fixed: Editor does not always refresh immediately with new theming (I4870)
    • Fixed: OSK font and Touch Layout font should be the same in Developer (I4872)
    • Fixed: Keyman Configuration test windows do not always display correctly (I4874)
    • Fixed: RTL flag is not mapped in the JSON editor (I4875)
    • Fixed: Default "eng" language should be added if missing during debug to JSON (I4876)
    • Fixed: JSON format is inconsistent with documentation (I4877)
    • Added: "Treat hints and warnings as errors" option to compiler (I4865)
    • Added: "Warn on deprecated features" option to compiler (I4866)
    • Added: "Test for code after use()" warning to compiler (I4867)
    • Added: Branding editor needs smoother interactions with test window (I4873)


    • Added: Dynamically refresh Branding Pack UI Test window as edits happen (I4855)
    • Fixed: Support view of particular pages of Keyman Configuration and missing pages in KCT Test (I4856)
    • Fixed: Allow edit of dtd files in kct editor (I4857)
    • Fixed: Asset files not always upgrading in Keyman Developer (I4858)


    • Added: New File dialog now creates folders automatically (I4852)
    • Fixed: Inconsistent display of panels through Developer (I4851)


    • Fixed: Backspace doesn't always work in the keyboard debugger (I4838)


    • Added: Update KeymanWeb to build 403 (I4837)
    • Added: Context-sensitive help missing V8 and V9 keywords (I4840)
    • Added: Restructure version 9 developer help (I4841)
    • Fixed: Ctrl+N, Ctrl+O not working in Developer Project view (I2986)
    • Fixed: Compiler does not recognise baselayout, layer or platform at the start of a line (I4784)
    • Fixed: Character Identifier cells are too narrow for entire U+xxxxxx caption (I4832)
    • Fixed: Character Identifier blank font grid needs formatting (I4834)
    • Fixed: Project window needs Keyman 9 icons (I4835)
    • Fixed: Character Map and Character Identifier don't match tokens at start of line (I4842)
    • Fixed: Delete key doesn't work in the keyboard debugger (I4845)
    • Fixed: Code editor does not get focus automatically when file is loaded (I4847)


    • Added: Refresh Keyman Developer look and feel for release (I4796)
    • Added: Split Path and Name boxes in New File dialogs (I4798)
    • Added: Add Character Identifier to Keyman Developer (I4807)
    • Added: Add character preview to debug window (I4808)
    • Added: Track keystrokes in debug status form (I4809)
    • Added: Add Restart Debugger button to debug status window (I4815)
    • Added: Note in compile log if symbols are included in build (I4823)
    • Added: Add Unicode 8.0.0 to Keyman Developer 9 (I4829)
    • Fixed: Convert to Characters tool is inconsistent (I4797)
    • Fixed: Preview keys are wrong colour in Developer (I4799)
    • Fixed: Targets box overlaps name box in keyboard editor (I4810)
    • Fixed: Hide JSON metadata tab for desktop keyboards (I4811)
    • Fixed: Tab order in Details page for Keyboard Editor is incorrect (I4812)
    • Fixed: Keyboard preview background colour is incorrect (I4813)
    • Fixed: Image preview in package editor doesn't refresh after changes (I4814)
    • Fixed: Tidy up display of key in debug status window (I4816)
    • Fixed: Regression test buttons have incorrect labels (I4817)
    • Fixed: Remove obsolete files from Keyman Developer source (I4818)
    • Fixed: Keyman Developer home page in About dialog is incorrect (I4819)
    • Fixed: Keyboard fonts dialog box has incorrect control types (I4820)
    • Fixed: Update icons for version 9.0 in New File dialog (I4821)
    • Fixed: Form sizes are incorrect with new theming (I4822)
    • Fixed: Fonts don't always load correctly in KeymanWeb test page (I4824)
    • Fixed: Make kmcomp command line details consistent (I4825)
    • Fixed: Navigation keys don't work in debugger (I4826)
    • Fixed: Key down debug events are not always processed correctly (I4827)
    • Fixed: Font identifier miscalculates percentages when supplementary plane characters in string (I4828)

    Keyman Developer 9.0.510.0

    • Keyboard debugger does not always activate profile correctly (I4767)
    • Add "open in code view" default option for keyboards (I4751)
    • Opening a keyboard externally can open it multiple times (I4749)
    • V9.0 - Enable SHIFT+ESC to pause debugger with TSF (I4033)

    Keyman Developer 9.0.509.0

    • Package compiler (buildpkg) needs to specify username and password on command line (I4763)
    • Buildpkg needs to support different paths for msi and kmp files (I4764)
    • Add "open in code view" default option for keyboards (I4751)
    • Double-click on message does not find source line since build 500 (I4765)
    • EthnologueCode system store does not correlate to control on first page of wizard for messages (I4766)
    • Keyboard debugger does not always activate profile correctly (I4767)
    • Opening a keyboard externally can open it multiple times (I4749)
    • KeymanWeb key is no longer required for debugger in Keyman Developer (I4768)
    • Keyman Developer missing keymanweb-osk.ttf from layoutbuilder install (I4747)
    • Command line package compiler should trap exceptions and report rather than crashing (I4769)
    • Product compiler does not create output path if required (I4756)
    • Add "open in code view" default option for keyboards (I4751)
    • If kmcmpdll.dll does not exist in debug path, try default paths (I4770)
    • Update regressiontest app for Engine and Developer 9.0 (I4771)

    Keyman Developer 9.0.508.0

    • Fixed: Project files need to build package installers (I4734)
    • Added: Clean and Build single file commands to project (I4735)
    • Fixed: Product files don't include version in output filename in project (I4736)
    • Fixed: Clean package should also clean installer (I4737)
    • Fixed: Product compiler crashes with stack overflow in build 507 (I4738)
    • Fixed: Don't show "keep in touch" for non-keyman products (I4740)
    • Fixed: Package installer compiler references wrong path for compiled package file (I4741)
    • Fixed: Product compiler does not save .msi or .pxx into project output folder (I4743)
    • Fixed: Keyman Developer 9.0 fails to upgrade from Developer 8.0 cleanly (I4744)

    Keyman Developer 9.0.505.0

    • Fixed: Crash when developer tries Upload to Tavultesoft and internet connection is down [CrashID:tike.exe_9.0.504.0_0068E2DC_ESOAPHTTPException] (I4726)
    • Fixed: Changing font while touch layout editor in Code mode results in broken \ rules (I4727)
    • Fixed: Saving a keyboard with a locked feature file causes Developer to crash [CrashID:tike.exe_9.0.504.0_0045876A_EFCreateError] (I4728)
    • Fixed: If you attempt to load a non-XML file as a project, it silently fails and overwrites the file (I4729)
    • Fixed: Loading a kvk file in a keyboard, where content is invalid, crashes developer [CrashID:tike.exe_9.0.504.0_0078D23F_EVisualKeyboardLoader] (I4730)

    Keyman Developer 9.0.504.0

    • Fixed: Project display crashes if project render output file is locked [CrashID:tike.exe_9.0.489.0_0045876A_EFCreateError] (I4654)
    • Fixed: Developer crashes when changing font settings and in code view for touch layout if not on first line [CrashID:tike.exe_9.0.487.0_0069BE51_ERangeError] (I4655)
    • Fixed: Loading a non-project file as a project crashes Developer [CrashID:tike.exe_9.0.497.0_00813E09_EProjectLoader] (I4703)
    • Fixed: Compiling a standalone keyboard crashes Developer [CrashID:tike.exe_9.0.503.0_00A4316C_EAccessViolation] (I4720)
    • Fixed: Developer crashes if a file is in use and a reload is attempted (I4721)
    • Fixed: Keyboard uploads fail due to incorrect server name (I4722)
    • Fixed: Switching from source tab to design tab in layout fails to refresh the layout (I4723)
    • Fixed: Compiler generates warnings for JSON files if output path is source path (I4724)

    Keyman Developer 9.0.502.0

    • Project no longer crashes if file parameters change during build (I4710)
    • Closing a modified package no longer crashes Developer (I4708)

    Keyman Developer 9.0.501.0

    • kmcomp no longer modifies project files during a build (I4709)

    Keyman Developer 9.0.500.0

    • Add silent and warning-as-error parameters to kmcomp (I4706)
    • Add clean target to kmcomp (I4707)

    Keyman Developer 9.0.499.0

    • Add KeymanDeveloperPath environment variable to installer (I4705)

    Keyman Developer 9.0.498.0

    • Project files should be formatted XML (I4704)

    Keyman Developer 9.0.497.0

    • section should be in project .user file (I4700)
    • If version is not specified in keyboard file, it gets blank instead of 1.0 in kmcomp .kpj (I4701)
    • Package actions crash if package not part of a project [CrashID:tike.exe_9.0.496.0_008033BD_EAccessViolation] (I4702)

    Keyman Developer 9.0.496.0

    • Remove VCL dependency for mrulist (I4697)
    • Split project and user preferences files (I4698)
    • Compile .kpj files from kmcomp (I4699)
    • Split UI actions from non-UI actions in projects (I4694)
    • Debugger needs to use project file filename not internal name (I4695)
    • Refactor compile into project file action (I4686)
    • Split project UI actions into separate classes (I4687)
    • Add build path to project settings (I4688)
    • Redesign package editor as left tabbed (I4689)
    • Pull keyboard version into package version when adding a keyboard (I4690)
    • Always save project automatically (I4691)
    • Add Clean as project action (I4692)
    • Fix crash when creating left tabbed page control without images (I4693)

    Keyman Developer 9.0.495.0

    • Move Developer help to online only (I4677)
    • Fixup Ctrl+PgUp, Ctrl+PgDn, Alt+Left, Alt+Right hotkeys (I4678)
    • Remember focus for active editor when swapping editors (I4679)
    • Ctrl+S often activates the "select key" dialog in editor (I4680)
    • mnemoniclayout store should be enough to block design view (I4681)
    • Installing a keyboard with an OSK from Developer fails to install the OSK (I4682)

    Keyman Developer 9.0.489.0

    • WiX file generator in Keyman Developer was failing due to security (I4643)

    Keyman Developer 9.0.488.0

    • Debug host keyboard did not correctly map through some Keyman keyboard keys (I4156)

    Keyman Developer 9.0.485.0

    • Keyman Developer failed to import kvk xml file (I4619)

    Keyman Developer 9.0.484.0

    • context statement in output could fail in some situations in KeymanWeb compiler (I4611)

    Keyman Developer 9.0.476.0

    • The text editor in the keyboard wizard is no longer blanked in some circumstances when switching tabs (I4557)
    • Keyboard parser no longer forces keyboard version to 9.0 (I4558)
    • Debugger development - disable debug tip when stopping debugging (I4331)

    Keyman Developer 9.0.475.0

    • JSON search needs to do cleanname on the keyboard filename to find candidates (I4508)

    Keyman Developer 9.0.474.0

    • Consolidate the compile action into single command (I4504)
    • Add JSON metadata editor to keyboard wizard (I4505)
    • Add command to send email with targets (I4506)
    • Move tab close button onto tabs (I4507)

    Keyman Developer 9.0.473.0

    • Add kmw_embedcss to feature support in Developer (I4369)
    • Tab and Dismiss keys have been removed from touch templates (I4475)
    • Added source version of KMW to Keyman Developer (I4476)

    Keyman Developer 9.0.472.0

    • The dismiss keyboard and tab buttons should not be required by Keyman Developer now (I4447)
    • Sometimes when saving, the list of &WINDOWSLANGUAGES is doubled (I4329)
    • Standard fonts should not be downloaded to devices in test window (I4448)
    • Font CSS responds as ISO-8859-1 instead of UTF-8 (I4449)
    • Layout Builder is missing OSK special keys font in some situations (I4450)
    • Touch layout editor polish (I4330)

    Keyman Developer 9.0.471.0

    • JSON hosting for installing keyboard into native app has wrong extension (I4437)
    • Keyboard debugger does not show button control in desktop mode (I4438)
    • If more than one language listed for a keyboard, the JSON file becomes invalid (I4440)

    Keyman Developer 9.0.469.0

    • Download Keyboard dialog does not display correctly (I4414)
    • OSK does not show underlying characters if base keyboard is not loaded (I4415)

    Keyman Developer 9.0.467.0

    • Manual Activate dialog is misformatted (I4408)
    • Wrong font selected in keyboard debugger touch layout (I4409)
    • Metrics should be visible in touch layout editor (I4410)
    • Character map allows Ctrl+Click to insert character (I4411)
    • Wrong font selected in keyboard debugger touch layout (I4409)

    Keyman Developer 9.0.463.0

    • Line number comments are no longer incorrectly added to non-debug builds (I4384)

    Keyman Developer 9.0.460.0

    • Web and touch keyboards now support custom stylesheets with &kmw_embedcss (I4368)
    • Line number comments are now included in generated Javascript when compiling with debug (I4373)

    Keyman Developer 9.0.458.0

    • Added: Require Windows 7 or later for install (I4313)

    Keyman Developer 9.0.454.0

    • Fixed: Compiling a product installer failed with xsl security error (I3734)

    Keyman Developer 9.0.453.0

    • Fixed: Clicking Remove Feature when no feature selected crashes [CrashID:tike.exe_9.0.449.0_00987F63_EAccessViolation] (I4247)

    Keyman Developer 9.0.452.0

    • Fixed: File format dropdown should be disabled in project view (I3733)
    • Fixed: Crash opening project in read-only location [CrashID:tike.exe_9.0.443.0_005E202D_EOleException] (I4212)
    • Added: Added BCP-47 language codes to unicodedata (I4257)
    • Fixed: Keyboard font dialog crashed if in text editor view (I4258)
    • Added: Generate a .json file when compiling keyboard for web (I4259)
    • Added: Add link to install keyboard file into native app into debug web (I4260)
    • Added: Build 357 of KeymanWeb into Developer (I4261)
    • Fixed: Compile to web and test fails when keyboard version is not 1.0 (I4263)
    • Fixed: If Keyman Developer is running, double clicking a file in Explorer doesn't open it (I4264)

    Keyman Developer 9.0.449.0

    • Keyboard wizard crashes with missing template-default.js when adding Touch Layout (I4226)

    Keyman Developer 9.0.448.0

    • Manifests missing or malformed in some executables (I4205)
    • Block U_0000-U_001F and U_0080-U_009F in layout files (I4198)
    • adding a subkey array generates an invalid "?" id (I4213)
    • template-default should be called template-latin (I4217)
    • Activate/Purchase dialogs are incomplete and the Buy Modules button doesn't work (I4090)

    Keyman Developer 9.0.447.0

    • Add Windows compatibility values to all manifests (I4194)

    Keyman Developer 9.0.443.0

    • Need keyboard version control in Keyman Developer Wizard (I4157)
    • Keyboardversion is not compiled into kmw js (I4155)
    • keyboardversion is not read by KeymanWeb compiler and applied to filename. (I4154)

    Keyman Developer 9.0.442.0

    • Edit platform button still in editor even though it does nothing (Bug) (I4126)
    • OSK Import KMX breaks some shift states (Bug) (I4127)
    • Edit Platform dialog is deleted but button is still there in touch layout editor (Bug) (I4129)
    • Build php help files to (Tweak) (I4135)
    • Add keyboard version information to Keyman Configuration (Tweak) (I4136)
    • Don't prompt to sort out L/R shift on save of keyboard (Bug) (I4137)
    • If the KVK is removed from the keyboard, it can still be imported into the touch layout until the file is closed (Bug) (I4138)
    • Compress layout file when compiling to KMW (Tweak) (I4139)
    • Add keyboard version information to keyboards (Develop) (I4140)
    • Warn when unusable key ids are used (Develop) (I4141)
    • Validate key ids are in an acceptable format (Develop) (I4142)
    • Support modifier layers of KVK when importing a KMX (Bug) (I4143)
    • When character is dropped or double-clicked to insert into html text field, no modified event is triggered (Bug) (I4144)
    • Deadkeys are corrupted by KeyboardParser (Bug) (I4145)
    • When importing OSK into touch layout, unused layers are populated with base layer (Bug) (I4146)
    • If a touch layout is added to a keyboard, it doesn't get saved until the tab is visited (Bug) (I4147)
    • Touch layout editor is missing a number of standard key names (Bug) (I4148)
    • If a touch layout key has no id, the builder fails to load the json (Bug) (I4149)
    • Double clicking on a key should activate its 'nextlayer' in touch layout editor (Tweak) (I4150)
    • key id is not saved until field is blurred in touch layout editor (Bug) (I4151)
    • Resizing a key with the grab handle causes other keys to overlap during the resize operation (Bug) (I4152)
    • Pressing and releasing Ctrl in touch layout editor should allow selection of standard keys a-la layout editor (Tweak) (I4153)

    Keyman Developer 9.0.441.0

    • Double-click on Character Map when in Touch Layout Editor crashes TIKE (I4110)
    • Double-click in char map when no input element focused in touch layout editor crashes TIKE (I4111)
    • Installer links should be to (I4115)
    • KMW compiler should warn when extended shift flags are used (I4118)
    • KMW compiler should only warn unassociated keys that are not special keys (I4119)
    • Remove platform properties from touch layout editor as font details are now accessible via Keyboard|Font menu (I4120)
    • Rename 'subkey' to 'touch+hold popup' (I4121)
    • traditional touch template has K_SEMICOLON and K_SQUOTE wrongly named key ids (I4122)
    • Keyman Developer installer should required Vista or later (I4123)

    Keyman Developer 9.0.440.0

    • Keyman Developer installer icon is still v8.0 style (I4100)
    • Touch layout editor still has the font options in its Edit Platform dialog (I4091)

    Keyman Developer 9.0.439.0

    • Trace compile errors in subfiles in Keyman Developer (I4081)
    • Make details tab scrollable with mouse wheel (I4082)
    • When errors encountered in JSON layout file, locate the error in the source view (I4083)
    • Remove old font selection controls from wizard (I4085)
    • About should be version 9.0 style (I4086)
    • Splash should be version 9.0 style (I4084)
    • KeymanWeb compiler does not clear messages before starting (I4087)

    Keyman Developer 9.0.438.0

    • Keyman Developer Keyboard Font dialog helpful to reduce font confusion (I4057)
    • Touch Layout Import OSK fails with weird error if OSK is missing (I4058)
    • If OSK is not saved, then changes do not flow through in Touch Layout Import (I4059)
    • KeymanWeb compiler should validate the layout file (I4060)
    • KeymanWeb compiler needs defined codes for some errors (I4061)
    • Touch Layout platforms do not allow font size specification (I4062)
    • Web Debugger needs to embed fonts for OSK and text area (I4063)
    • Touch layout editor does not apply fonts consistently to keys (I4064)
    • Deleting a touch layout layer leaves a "null" entry in the layout file (I4065)

    Keyman Developer 9.0.437.0

    • Layout editor needs to refresh character map (I4046)
    • TIKE shows an error if you try to save before viewing the touch layout tab (I4047)
    • Various fixes and features for touch layout editor: (I4049)
      • Deselecting main key does not disable subkey or clear other controls
      • Drag+drop not sticking
      • Drag+drop not allowing drop at end
      • Key height not right
      • Not showing editor in line for key
      • Not showing key code on key
      • No wedges showing
      • No delete icon showing
      • Deselecting does not disable controls
      • If inserting or removing key padding, the key display does not refresh correctly
      • 'Label:' label should be removed
      • Key id does not update on keyboard view when changed
    • Character map does not show currently selected char from keyboard view (I4049)
    • Button UI not displaying in KMDev KMW test window (I4048)

    Keyman Developer 9.0.436.0

    • Add support for Redo to Keyman Developer actions (I4032)
    • Enable SHIFT+ESC to pause debugger with TSF (I4033)
    • Restructure keyboard wizard for source views and features (I4034)
    • Parsing of UTF-8 in JSON layout file crashes TIKE (I4035)
    • Keyboard Debug HTTP Host should be thread safe (I4036)
    • Keyboard HTTP debugger sometimes caches old keyboards (I4037)

    Keyman Developer 9.0.434.0

    • Redesign Keyboard Wizard to integrate V9 features (I4021)
    • Rework Import KMX to work with V9.0 Debug Host Keyboard (I4022)
    • Touch Layout Editor crashes with file in use sometimes (I4023)
    • Installer is missing jquery support files for Configuration UI (I4011)