Skip to content

Latest commit

 

History

History
567 lines (454 loc) · 24.6 KB

NEWS.md

File metadata and controls

567 lines (454 loc) · 24.6 KB

Since 10.21.0

  • Prepared settings have been updated.
  • Default setting of AXNotifier has been changed. (Enabled in Microsoft Office)
  • Fixed issues:
    • Some Qt apps might be crash when AXNotifier is enabled. (LyX, VirtualBox, Wireshark)

Version 10.21.0

  • Fixed issues:
    • The initial key repeat rate of Karabiner will be set the slower value if you have not changed the key repeat rate in System Preferences.
    • Karabiner does not save preferences properly in an edge case.
  • Prepared settings have been updated.

Version 10.20.0

  • New functions and improvements:
    • Updates for people who add new settings by oneself:
      • Option::FLIPSCROLLWHEEL_HORIZONTAL and Option::FLIPSCROLLWHEEL_VERTICAL have been supported in __PointingRelativeToScroll__.
  • Fixed issues:
    • Remote Desktop detection will be failed in some cases.
    • Input source switching settings does not work in some environments.

Version 10.19.0

  • Incompatibility changes:
    • The multi-touch extension default configuration has been changed.
      If you are using ThumbSense, please enable ThumbSense setting manually in multi-touch extension preferences.
  • New functions and improvements:
    • The device disconnect handling has been improved.
    • Use modifier symbols (⌘⌃⌥⇧⇪) in place of the modifier names has been added into Karabiner Preferences > Status Message tab.
    • Updates for people who add new settings by oneself:
      • <bundleidentifieroverridedef> has been introduced.
      • Option::KEYTOKEY_DELAYED_ACTION_MILLISECONDS has been added.
      • The following filters have been added.
        • <deviceexists_not>
        • <deviceexists_only>
      • The following environment variables has been added into replacementdef.
        • {{ ENV_Select_the_previous_input_source_shortcut }}
        • {{ ENV_Select_next_source_in_input_menu_shortcut }}
  • Fixed issues:
    • Some Java apps might be crash when AXNotifier is enabled. (SAP GUI for Java)
    • The argument treatment in warp-mouse-cursor-position utility is wrong.
      These adjustment values for screen and front_window were exchanged. For example, the vertical adjustment value for screen and front_window is used in horizontal adjustment.
    • In some case, ModifierFlag pattern matching of Option::KEYTOKEY_AFTER_KEYUP in __KeyOverlaidModifier__ and __HoldingKeyToKey__ does not work property.
  • Prepared settings have been updated.

Version 10.18.0

  • Fixed an issue that is introduced in Karabiner 10.17.0:
    Karabiner will be crashed when you change settings after you opened and closed the Preferences window in OS X 10.10.

Version 10.17.0

  • New functions and improvements:
    • "Show icon in Dock" setting has been added.
    • "Resume at login" setting has been added.
      You can disable auto resume function.
    • "Disable an internal keyboard while external keyboards are connected" setting has been improved.
      • Mionix Naos 7000 has been supported.
      • Logitech Bluetooth Mouse M555b has been supported.
      • Microsoft Sculpt Touch Mouse has been supported.
    • The word-wrap property of setting description in Preferences became break-word.
    • The font size in Preferences has been selectable from "default font" and "large font".
    • The consumer keys (media keys) repeat values has been synchronized with the key repeat values.
    • The behavior of starting Karabiner on system startup has been improved.
    • Prepared settings have been updated.
    • Updates for people who add new settings by oneself:
      • Option::FLIPSCROLLWHEEL_ROTATE has been added.
      • PointingRelative::ANY has been added into __PointingRelativeToKey__.
  • Fixed issues:
    • Some Qt apps might be crash when AXNotifier is enabled. (WISO apps)
    • Microsoft Excel scroll position is sometimes reset while using scroll wheel.
    • __KeyDownUpToKey__ sends only the last interrupted events when multiple interrupted events are specified.

Version 10.15.0

  • New functions and improvements:
    • The safety limit of key repeat rate has been removed.
      You can overwrite key repeat rate by extreme fast values.
    • GUI for enabling debug mode has been added into Karabiner Preferences.
    • Prepared settings have been updated.
    • "Disable an internal keyboard while external keyboards are connected" setting has been improved.
      • Razer DeathAdder Chroma has been supported.
    • ModifierFlag treatment has been improved in Option::KEYTOKEY_DELAYED_ACTION.
    • Updates for people who add new settings by oneself:
      • Some error messages have been improved.
  • Fixed issues:
    • Some Java apps might be crash when AXNotifier is enabled. (Fiji)

Version 10.14.0

  • New functions and improvements:
    • "Karabiner Preferences > Key Repeat tab" UI has been improved.
  • Fixed issues:
    • The key repeat configuration migration sometimes does not set properly values when Karabiner has been upgrade from v10.11.0 or prior.

Version 10.13.0

  • New functions and improvements:
    • "Overwrite the key repeat values of system" option has been added.
      Karabiner uses the system values unless this option is enabled.
    • The key up event handling has been improved in some keyboards.
    • "Don't remap Apple's keyboards" setting supported Magic Keyboard.
    • Karabiner Preferences became resizable.
    • Prepared settings have been updated.
  • Fixed issues:
    • __SimultaneousKeyPresses__ sometimes fails sending key up event when __BlockUntilKeyUp__ is used together.

Version 10.11.0

  • Fixed issues:
    • __SimultaneousKeyPresses__ sends key events continuously even if all keys are released when using multiple keyboards at the same time and both keyboards are pressed.
    • Some Java apps might be crash when AXNotifier is enabled. (Spine, SpineTrial)

Version 10.10.0

  • New functions and improvements:
    • "Use prepared settings" option has been added into Karabiner Preferences > Misc & Uninstall tab.
      Turning off the setting allows you to drop prepared settings and improve the speed of reloading XML.
    • EventViewer has been improved.
      Media control events and some key combinations are supported.
    • Event modification has been improved when you are using multiple keyboards at the same time.
    • AXNotifier supported OmniFocus2 Quick Entry.
    • Prepared settings have been updated.
    • Updates for people who add new settings by oneself:
      • once attribute has been introduced into <include> tag.
  • Fixed issues:
    • The CPU usage of Preview.app might be 100% at opening a huge PDF file when AXNotifier is enabled.

Version 10.9.0

  • Incompatibility changes:
    • The fn keypad has been removed from implicit behavior.
      Please use either of the following settings instead if you need.
      • "Fn+Number to KeyPad"
      • "Use old style fn keypad"
  • New functions and improvements:
    • The external keyboard handling has been improved.
    • Prepared settings have been updated.
    • Updates for people who add new settings by oneself:
      • The following filters have been added.
        • <lastsentevent_not>
        • <lastsentevent_only>
  • Fixed issues:
    • __DropKeyAfterRemap__ does not work properly if the target key is changed by <autogen> that is defined before __DropKeyAfterRemap__.

Version 10.8.0

  • New functions and improvements:
    • AXNotifier supported new Alfred (Alfred 2.7.2).
    • Prepared settings have been updated.
    • __PassThrough__ behavior has been improved.
    • Updates for people who add new settings by oneself:
      • The following filters have been added.
        • <lastreleasedphysicalkey_only>
        • <lastreleasedphysicalkey_not>
        • <elapsedtimesincelastreleased_greaterthan>
        • <elapsedtimesincelastreleased_lessthan>
  • Fixed issues:
    • multi-touch extension might stop working after wake up.

Version 10.7.0

  • Incompatibility changes:
    • The default mouse keys scroll direction has been changed to natural.
    • <inputsourcedetail_only> and <inputsourcedetail_not> filters have been merged into <inputsource_only> and <inputsource_not>.
      Please use <inputsource_only> and <inputsource_not> in your private.xml.
    • Launcher Mode v2 uses own modifier flag in order to improve usability.
      If you extended Launcher Mode v2 by LAUNCHER_MODE_V2_EXTRA, please remove ModifierFlag::NONE from LAUNCHER_MODE_V2_EXTRA.
      Example:
      old: <autogen>__KeyDownUpToKey__ KeyCode::A, ModifierFlag::NONE, KeyCode::VK_OPEN_URL_APP_Activity_Monitor</autogen>
      new: <autogen>__KeyDownUpToKey__ KeyCode::A, KeyCode::VK_OPEN_URL_APP_Activity_Monitor</autogen>
  • New option has been added into command line interface: toggle, be_careful_to_use__clear_all_values_by_name
  • New option has been added into post-hid-event command line utility: --flag
  • "Status Message > Show caps lock state" option has been added.
  • Multiple displays support has been improved. The status message will be shown in the all screen.
  • Fast User Switching support has been improved.
  • Prepared settings have been updated.
  • Updates for people who add new settings by oneself:
    • __DropAllKeys__ has been added.
    • Option::KEYTOKEY_DELAYED_ACTION has been added.
    • Option::KEYTOKEY_INCREASE_MODIFIER_FLAGS has been added.
    • Option::SIMULTANEOUSKEYPRESSES_POST_FROM_EVENTS_AS_RAW has been added.
    • The following filters have been added.
      • <pressingphysicalkeys_greaterthan>
      • <pressingphysicalkeys_lessthan>
    • __HoldingKeyToKey__ has been improved at you pressed modifiers while holding target key down.
    • ModifierFlag pattern matching has been introduced into Option::KEYTOKEY_AFTER_KEYUP.
    • <background /> support has been added into <vkopenurldef> tag.
    • high_priority attribute has been introduced into <identifier> tag.
    • <appdef> behavior has been improved. It preserves prepared settings when you use <appdef> in private.xml for bundle identifiers that are in prepared appdef.xml.
    • KeyCode::VK_MOUSEKEY_FIXED_DISTANCE_SCROLL_* have been added.
  • Fixed issues:
    • Some Java apps might be crash when AXNotifier is enabled. (Eclipse, Screencast-O-Matic, RazorSQL, EditRocket)
    • kext loading issue on OS X 10.11 beta 6 has been fixed.

Version 10.6.0

  • A following prepared setting has been fixed.
    • General > Disable an internal keyboard while external keyboards are connected.
  • "Sort by name" and "Sort by created" button have been added in Preferences > MenuBar.
  • Prepared settings have been updated.

Version 10.5.0

  • Fixed issues:
    • Some Java apps might be crash when AXNotifier is enabled. (IntelliJ IDEA, PhpStorm, RubyMine, Android Studio)
    • <device_only> and <device_not> filters are ignored when multiple keyboards are connected and same keys are pressed at the same time.
  • Improvements:
    • "Ignore bouncing (chattering) events" setting has been added.
    • Spotlight has been supported in <only> and <not> filters.
    • Quit button has been added into Preferences.
    • Simultaneous presses detection with rapid key typing has been improved.
    • ModifierFlag manipulation when key up has been improved.
    • Prepared settings have been updated.
  • Updates for people who add new settings by oneself:
    • Option::FORCENUMLOCKON_FORCE_OFF has been added.
    • __KeyDownUpToKey__ has been added.
    • <include> ignores missing files. (Karabiner does not show an alert dialog when <include> refers missing files.)

Version 10.4.0

  • A broken prepared setting has been fixed.

Version 10.3.0

  • Stability at reloading XML has been improved.
  • OS X 10.10 support has been improved.
  • Prepared settings have been updated.
  • "Check for updates" (Sparkle) has been updated.
  • "Restart AXNotifier" button has been added into Preferences.
  • Fixed issue:
    • EventViewer does not show control-tab and control-shift-tab event when Full Keyboard Access is enabled.
  • Updates for people who add new settings by oneself:
    • The following filters have been added.
      • <modifierlocked_only>
      • <modifierlocked_not>
      • <modifierstuck_only>
      • <modifierstuck_not>

Version 10.2.0

  • Fixed issues:
    • Shortcuts (eg. Ctrl-C, Ctrl-V) might not work properly in Microsoft Remote Desktop.
    • Some Java apps will be crash.
  • Added an option to disable AXNotifier. ("AXNotifier" tab in Preferences.)
  • Updated prepared settings.
  • Some minor improvements.
  • Profile management functions have been added into command line interface.
  • Updates for people who add new settings by oneself:
    • __HoldingKeyToKey__ and __KeyOverlaidModifier__ support Option::KEYTOKEY_BEFORE_KEYDOWN and Option::KEYTOKEY_AFTER_KEYUP.
    • You can also use __{ }__ as well as @begin, @end.

Version 10.1.0

  • Fixed issues:
    • The continuous key sequence will be improper order in environments which VMWare Fusion is installed.
    • A message "Karabiner cannot connect with kernel extension" might be shown in some environment.
  • Show an error alert when Karabiner is not placed in /Applications.
  • Updates for people who add new settings by oneself:
    • Added KeyCode::VK_IOHIKEYBOARD_TOGGLE_NUMLOCK.
  • Updated prepared settings.
  • Some minor improvements.

Version 10.0.0

  • KeyRemap4MacBook has been renamed to "Karabiner".
  • AXNotifier has been added.
    AXNotifier allows you to observe the window name (window title) and the focused ui element role (eg. whether textarea or not).
    For example, a setting that allows you to use hjkl keys as arrow keys in Finder when you are not editing text such as filename has been added.
  • A command line utility "warp-mouse-cursor-position" has been added.
    Settings which use this utility have been added, too.
    For example, this setting allows you to move mouse cursor by tapping fn key:
    • Custom Shortcuts
      • Move mouse cursor to the center of the frontmost app's window:
        • By pressing fn key alone.
  • Fixed issues:
    • A message "Kernel extension is not loaded" might be shown in some environment.
    • Status Message will not be shown properly when you are using multiple displays.
  • Updated prepared settings.
  • Some minor improvements.
  • Updates for people who add new settings by oneself:
    • You can add your own modifiers by <modifierdef>. Usage of <modifierdef>.
    • Added <windowname_only> and <windowname_not> filters.
    • Added <uielementrole_only> and <uielementrole_not> filters.
    • Added __PointingRelativeToKey__.
    • Added __PassThrough__. You can disable all settings in specific situations.
      For example, this item allow you to disable all settings while you are using virtual machine.
      (This setting is already included in prepared settings.)
        <item>
          <name>Disable all settings while you are using virtual machine.</name>
          <identifier>private.ignore_virtual_machine</identifier>
          <only>VIRTUALMACHINE</only>
          <autogen>\_\_PassThrough\_\_</autogen>
        </item>
      
    • You can use KeyCode and ConsumerKeyCode in __PointingRelativeToScroll__.
    • Added ThresholdMillisecond into __HoldingKeyToKey__.
      You can control a holding threshold:
        <autogen>
          __HoldingKeyToKey__
          KeyCode::ESCAPE,
      
          @begin
          KeyCode::ESCAPE
          @end
      
          @begin
          KeyCode::LAUNCHPAD,
          @end
      
          <!-- open Launchpad by press and hold the escape key for 2 seconds. -->
          ThresholdMillisecond::RawValue::2000,
        </autogen>
      
    • Added __BlockUntilKeyUp__.
    • Added Option::KEYOVERLAIDMODIFIER_REPEAT_TOKEYS.
    • Added Option::DROPSCROLLWHEEL_DROP_MOMENTUM_SCROLL.
    • Added KeyCode::VK_NEGATIVE_LOCK_*. (eg. KeyCode::VK_NEGATIVE_LOCK_COMMAND_L, KeyCode::VK_NEGATIVE_LOCK_SHIFT_L.)
    • Added KeyCode::VK_STICKY_ACTIVE_MODIFIERS_*:
      • KeyCode::VK_STICKY_ACTIVE_MODIFIERS_TOGGLE
      • KeyCode::VK_STICKY_ACTIVE_MODIFIERS_FORCE_ON
      • KeyCode::VK_STICKY_ACTIVE_MODIFIERS_FORCE_OFF
    • An incompatible change:
      • KeyCode::VK_JIS_TEMPORARY_* are removed.
        Please use <inputsource_filter>, Option::KEYTOKEY_BEFORE_KEYDOWN, Option::KEYTOKEY_AFTER_KEYUP, KeyCode::JIS_EISUU and KeyCode::JIS_KANA instead.

Version 9.3.0

  • Fixed an issue:
    • "Kernel extension is not loaded" alert might be shown on some machines when automatic login is enabled.
  • Updated prepared settings.
  • Updates for people who add new settings by oneself:
    • These manipulators have been integrated into __KeyToKey__.
      You can change KeyCode, ConsumerKeyCode and PointingButton by __KeyToKey__.

      • __KeyToConsumer__
      • __ConsumerToKey__
      • __ConsumerToConsumer__
      • __KeyToPointingButton__
      • __PointingButtonToKey__
      • __PointingButtonToPointingButton__
    • You can use KeyCode, ConsumerKeyCode and PointingButton in these manipulators:

      • __KeyOverlaidModifier__
      • __HoldingKeyToKey__
      • __SimultaneousKeyPresses__
      • __DoublePressModifier__
      • __ScrollWheelToKey__
      • __PointingRelativeToScroll__
    • Improved KeyCode::VK_CONFIG_* behavior in the edge case.

    • You can change the delay and speed of keyboard repeat per autogen.
      For example, this autogen changes control-p to up arrow with:

      • delay until repeat: 100ms
      • key repeat: 10ms
        <autogen>
          __KeyToKey__
          KeyCode::P, MODIFIERFLAG_EITHER_LEFT_OR_RIGHT_CONTROL,
          KeyCode::CURSOR_UP,
          DelayUntilRepeat::RawValue::100,
          KeyRepeat::RawValue::10,
        </autogen>
        

Version 9.2.0

  • KeyRemap4MacBook no longer requires system restart at installing or upgrading.
    If you need to restart system for some reason, KeyRemap4MacBook will show an alert which urges you to restart.
  • Fixed issues:
    • System might crash when you disconnected a keyboard.

Version 9.0.0

  • Optimized for OS X 10.9.
    KeyRemap4MacBook 9.0.0 requires OS X 10.9+.
  • Added delay configurations into multi-touch extension.
  • Drop power button support due to limitations of OS X 10.9.
    You can no longer change the power button on MacBook.
  • Fixed issues:
    • ENV_HOME does not work properly in included xml.
    • New plugged devices will not be recognized on OS X 10.9.
    • KeyRemap4MacBook disables the shut down dialog.
    • Fn key on Leopold FC660M cancels mouse dragging.
  • Updated prepared settings:
    • "VIM Emulation" has been updated.
    • Fixed "MarkSet" in Emacs Mode.
  • Updated installer.
  • Some minor improvements.
  • Signed with Developer ID.

Version 8.4.0

  • Icons have been refined. (Thanks to Kouji TAMURA.)
  • Introduced @begin and @end in private.xml.
    You can use more than one key at __KeyOverlaidModifier__, __DoublePressModifier__.
  • Supported shell commands execution with KeyCode::VK_OPEN_URL_*.

Version 8.3.0

  • Fixed a bug that "Look up" feature of OS X (tap trackpad with three fingers) does not work properly.
  • Some minor improvements.

Version 8.2.0

  • Fixed a bug that object selection is disabled on Adobe Fireworks.
  • Fixed a bug that "General > Don't remap XXX" does not take effect immediately.
  • Fixed a bug that control-eject shortcut does not work properly on OS X 10.7 and 10.6.

Version 8.1.0

  • Power button remapping has been supported. (Thanks to Peter Kamb who is the author of PowerKey.)
  • Added "Quit KeyRemap4MacBook" into menu bar.
  • Added some styles into status message indicator.
  • Improved compatibility with SmoothMouse.
  • Supported more than three keys at __SimultaneousKeyPresses__.
  • Added KeyCode::VK_OPEN_URL_*.
  • Added KeyCode::VK_PARTIAL_KEYDOWN and KeyCode::VK_PARTIAL_KEYUP.
  • Added Option::POINTINGRELATIVETOSCROLL_TOKEYS.
  • Added __FlipPointingRelative__.
  • Added __FlipScrollWheel__.
  • Added filters:
    • <lastpressedphysicalkey_not>
    • <lastpressedphysicalkey_only>
    • <elapsedtimesincelastpressed_greaterthan>
    • <elapsedtimesincelastpressed_lessthan>
  • Some minor improvements.

Version 8.0.0

  • Changed Preferences location.
    https://pqrs.org/osx/karabiner/document.html
  • Changed KeyRemap4MacBook_cli location.
    https://pqrs.org/osx/karabiner/document.html#commandlineinterface
  • Integrated a status message indicator. (Removed Growl support.)
  • Dynamic VK_CHANGE_INPUTSOURCE definition feature has been added.
  • Dynamic <inputsource_only> definition feature has been added.
  • Changed --KeyToKey-- to __KeyToKey__ at <autogen>.
  • Added a preference of ignored area into "multi-touch extension".
  • Added Option::SIMULTANEOUSKEYPRESSES_STRICT_KEY_ORDER.
  • Added DeviceLocation into <device_only>, <device_not> filters.
  • Some minor improvements.

Version 7.8.0

  • Fixed a bug that private.xml does not work properly if <identifier> contains white space.
  • Fixed a bug that "General > Don't restore modifiers in the mouse event" does not work properly.
  • Some minor improvements.

Version 7.7.0

  • Fixed a bug introduced in version 7.6.0 that detecting of Input Sources does not work properly in Japanese and some other languages.

Version 7.6.0

  • Added <replacementdef>. You can replace preset settings behavior by this.
  • Added <include>. You can load xml files in private.xml.
  • Added --ScrollWheelToKey--.
  • Added --ScrollWheelToScrollWheel--.
  • Added KeyCode::VK_WAIT_*.
  • Improved KeyCode::VK_CHANGE_INPUTMODE_* behavior.
  • Improved XML processing engine. (XML reloading is 2x faster.)
  • Some minor improvements.

Version 7.5.0

  • Dynamic ApplicationType,DeviceVendor,DeviceProduct definition feature has been added.
  • Support Growl-1.3 on notifications.
    https://pqrs.org/osx/karabiner/document.html
  • Added --StripModifierFromScrollWheel--.
  • Added Option::KEYTOKEY_BEFORE_KEYDOWN, Option::KEYTOKEY_AFTER_KEYUP.
  • Added KeyCode::VK_CONSUMERKEY_*.
  • Some minor improvements.
  • Added about 40 kinds settings to preset.

Version 7.4.0

  • Some improvements on Mac OS X 10.7 (Lion).
  • Removed "General > Enable CapsLock LED Hack".
    If you're using this setting for PCKeyboardHack, use "No Action" configuration instead.
    https://pqrs.org/osx/karabiner/seil.html#usage
  • Clean up "Simultaneous Vi Mode".
    (and split some options into "Home Row Arrow and Modifier Mode".)
  • Added "[Key Overlaid Modifier] Initial Modifier Wait" preference into "Key Repeat" tab.
    KeyOverlaidModifier changes key to modifier after this wait.
    This preference is useful if your typing speed is too fast.
  • Added KeyCode::VK_STICKY__FORCE_ON, KeyCode::VK_STICKY__FORCE_OFF.
  • Added --DropScrollWheel--.
  • Some minor improvements.
  • Added some settings to preset.

Version 7.3.0

  • Improved stability when using Sticky Keys in Universal Access.
  • Improved stability when using multi-touch extension together.
  • Improved "Lazy-Modifier (KeyCode::VK_LAZY_*)" behavior.
  • Some minor improvements.
  • Clean up the internal source code. The connection between kernel and userspace became more easier to understand.
  • Added KeyCode::VK_MOUSEKEY_BUTTON_*.
  • Added Option::NOREPEAT at <autogen>.
  • Added DeviceProduct::ANY at <device_only>, <device_not>.
  • Added about 80 kinds settings.

Version 7.2.0

  • Fixed a bug that Growl notification did not work in specific environment.
  • Fixed a bug that the default setting of checkForUpdate was "Nothing".
  • Improved multi-touch extension around sleep/wakeup.
  • Added about 20 kinds settings.

Version 7.1.0

  • Added setting to be able to use "Logitech Number Pad" which we were not able not use in Mac OS X.
    Activate "Change KeyPad Key > Logitech Number Pad Hack".
  • Replaced StatusWindow with Growl.
    StatusWindow was displaying the lock state of modifiers and extra message.
    Now, these messages are shown by Growl.
    https://pqrs.org/osx/karabiner/img/growl.png
    http://growl.info/
  • Attached an application named "multi-touch extension".
    This application activates specific setting while fingers touch the multi-touch device.
    ThumbSense is one of the function which this application supplies.
  • Improve UI of checkForUpdate.
  • Fixed some bugs.
  • Added about 140 kinds settings.
  • Added <modifier_only>, <modifier_not> filters.
  • Added --ForceNumLockOn-- to <autogen>.