Disable Sysdiagnose Key Combination

I’ve learned many tips to improve my experience with OS X for the past three months. The most useful one, which I picked from Brett, is turning Caps Lock into “Hyper” modifier key. In his post, Brett also outlines how he remaps hitting Caps Lock into Escape key when it’s not used as modifier. Despite trying to follow him using Caps Lock as Escape key, I gave up. There are way too many escape mistakes.1

I use nVALT to take notes. A global shortcut is required to toggle nVALT window quickly. Option-E used to be the key. You can easily find that shortcut being used across applications. As the result, there are some shortcuts being rendered useless. Hyper modifier key solves this problem.

The new modifier key prevents the common conflicts between app specific shortcuts with global shortcuts. There are many apps that sit in menu bar these days which allows you to assign shortcut to toggle them. These are the list of apps I’ve assigned with my own custom shortcuts.

  • Hyper-B to toggle Bartender Bar
  • Hyper-C to toggle Cobook
  • Hyper-D to toggle Delibar
  • Hyper-E to toggle nVALT
  • Hyper-F to toggle Fantastical
  • Hyper-Space to toggle Keyboard Maestro Macro Trigger

However, there is one small problem: you might trigger the sysdiagnose command accidentally. Finder will open the sysdiagnose folder, well, diagnose your system, and zip the log results. Worst, sysdiagnose will drive the CPU performance crazy in order to diagnose your system.

Apparently, the shortcut can be easily triggered.2 You can see the description of sysdiagnose by typing the command below into Terminal.

man sysdiagnose

Well, to save your time.

sysdiagnose can be triggered upon pressing a special key chord; this is currently Command-Shift-Option-Control-Period (.).

The only way I have figured so far to prevent OS X from triggering this special key chord is by remapping the Period key. I’m borrowing Steve Losh’s tutorial3 as a guide in creating two mapping rules for KeyRemap4MacBook. I assume you’ve installed KeyRemap4MacBook since we’ll need it to map the Period key.

 Open private.xml 

Run KeyRemap4MacBook and navigate to Misc & Uninstall tab. Choose “Open private.xml” under the Custom Setting. It’ll show you the private.xml. Open the file. Copy the code below and put it under the root tag.

Update 2013-10-06: A quick thanks to Jeremy Mack for letting me know that forward slash key also triggers sysdiagnose. I’ve included his code below. Replace the previous code and reload private.xml to update the selection.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
<item>
  <name>Disable Sysdiagnose DOT Key</name>
  <appendix>Disable Sysdiagnose DOT Key</appendix>
  <identifier>private.disable_sysdiagnose_dot_key</identifier>
  <autogen>
    --KeyToKey--
    KeyCode::DOT,
    ModifierFlag::OPTION_L | ModifierFlag::SHIFT_L | ModifierFlag::CONTROL_L | ModifierFlag::COMMAND_L,
    KeyCode::VK_NONE
  </autogen>
</item>

<item>
  <name>Disable Sysdiagnose COMMA Key</name>
  <appendix>Disable Sysdiagnose COMMA Key</appendix>
  <identifier>private.disable_sysdiagnose_comma_key</identifier>
  <autogen>
    --KeyToKey--
    KeyCode::COMMA,
    ModifierFlag::OPTION_L | ModifierFlag::SHIFT_L | ModifierFlag::CONTROL_L | ModifierFlag::COMMAND_L,
    KeyCode::VK_NONE
  </autogen>
</item>

<item>
  <name>Disable Sysdiagnose Foward Slash Key</name>
  <appendix>Disable Sysdiagnose FORWARD SLASH Key</appendix>
  <identifier>private.disable_sysdiagnose_forward_slash</identifier>
  <autogen>
    --KeyToKey--
    KeyCode::SLASH,
    ModifierFlag::OPTION_L | ModifierFlag::SHIFT_L | ModifierFlag::CONTROL_L | ModifierFlag::COMMAND_L,
    KeyCode::VK_NONE
  </autogen>
</item>

Run KeyRemap4MacBook again. This time, open Change Key tab and choose ReloadXML. You should see three new remapping rules similar to the screenshot below. Activate them.

 Activate new mapping rules 

The rules above prevent the combination between left side modifier with Period and Comma. Try to hit Hyper-Comma (,) and Hyper-Period (.). It should do nothing, but you can still type Shift-Comma (,) and Shift-Period (.).

The new remapping rules should solve the problem with sysdiagnose randomly popping out from nowhere. Let me know if it works for you.


  1. There are many times the app exit full screen when I’m just getting into the flow.

  2. Before solving this problem, I can end up with at least one sysdiagnose file every day.

  3. I’ve managed to train my muscle memory to use Left Shift and Right Shift. It lifts the strains put on your fingers.