Ask Different is a question and answer site for power users of Apple hardware and software. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I recently switched to the Unicode Hex Input to make typing technical symbols easier. It seems, though, that the way it uses the option key to detect unicode input overrules the +arrow method of navigating text.

Is there any way to use both Unicode Hex Input and this shortcut?

share|improve this question
up vote 1 down vote accepted

I've disabled the ++space shortcut for Spotlight window (since I never used it anyway), but enabled the same shortcut to switch to the next input method. (You can configure this in the Keyboard preference pane.)

So whenever you need to use the key to navigate, you can punch the three keys, do your navigating, punch them again, and be back in Unicode mode (if you only have two input sources; otherwise you'll cycle through them.)

share|improve this answer
That's a good idea! I may do that. Is that just within System Preferences, or does it require a third-party macro? – timothymh Feb 24 '12 at 23:11
@TimothyMueller-Harder Nope, it's just System Preferences. – jan.h Feb 24 '12 at 23:13

Downlolad Ukelele and copy System Keyboards/Unicode/Unicode Hex Input.keylayout from the disk image to /Library/Keyboard Layouts/. Keyboard layouts in the user library can't be selected in password dialogs or the login window.

Open the keylayout file in a text editor and replace <keyMap index="3"> with this:

<keyMap index="3">
    <key code="0" action="10" />
    <key code="2" action="13" />
    <key code="3" action="15" />
    <key code="8" action="12" />
    <key code="11" action="11" />
    <key code="14" action="14" />
    <key code="18" action="1" />
    <key code="19" action="2" />
    <key code="20" action="3" />
    <key code="21" action="4" />
    <key code="22" action="6" />
    <key code="23" action="5" />
    <key code="25" action="9" />
    <key code="26" action="7" />
    <key code="28" action="8" />
    <key code="29" action="0" />
    <key code="82" action="0" />
    <key code="83" action="1" />
    <key code="84" action="2" />
    <key code="85" action="3" />
    <key code="86" action="4" />
    <key code="87" action="5" />
    <key code="88" action="6" />
    <key code="89" action="7" />
    <key code="91" action="8" />
    <key code="92" action="9" />
    <key code="1" output="s" />
    <key code="4" output="h" />
    <key code="5" output="g" />
    <key code="6" output="z" />
    <key code="7" output="x" />
    <key code="9" output="v" />
    <key code="10" output="&#x00a7;" />
    <key code="12" output="q" />
    <key code="13" output="w" />
    <key code="15" output="r" />
    <key code="16" output="y" />
    <key code="17" output="t" />
    <key code="24" output="=" />
    <key code="27" output="-" />
    <key code="30" output="]" />
    <key code="31" output="o" />
    <key code="32" output="u" />
    <key code="33" output="[" />
    <key code="34" output="i" />
    <key code="35" output="p" />
    <key code="36" output="&#x000d;" />
    <key code="37" output="l" />
    <key code="38" output="j" />
    <key code="39" output="'" />
    <key code="40" output="k" />
    <key code="41" output=";" />
    <key code="42" output="\" />
    <key code="43" output="," />
    <key code="44" output="/" />
    <key code="45" output="n" />
    <key code="46" output="m" />
    <key code="47" output="." />
    <key code="48" output="&#x0009;" />
    <key code="49" output=" " />
    <key code="50" output="`" />
    <key code="51" output="&#x0008;" />
    <key code="52" output="&#x0003;" />
    <key code="53" output="&#x001b;" />
    <key code="54" output="&#x0000;" />
    <key code="55" output="&#x0000;" />
    <key code="56" output="&#x0000;" />
    <key code="57" output="&#x0000;" />
    <key code="58" output="&#x0000;" />
    <key code="59" output="&#x0000;" />
    <key code="60" output="&#x0000;" />
    <key code="61" output="&#x0000;" />
    <key code="62" output="&#x0000;" />
    <key code="63" output="&#x0000;" />
    <key code="64" output="&#x0000;" />
    <key code="65" output="." />
    <key code="66" output="&#x001d;" />
    <key code="67" output="*" />
    <key code="68" output="&#x0000;" />
    <key code="69" output="+" />
    <key code="70" output="&#x001c;" />
    <key code="71" output="&#x001b;" />
    <key code="72" output="&#x001f;" />
    <key code="73" output="&#x0000;" />
    <key code="74" output="&#x0000;" />
    <key code="75" output="/" />
    <key code="76" output="&#x0003;" />
    <key code="77" output="&#x001e;" />
    <key code="78" output="-" />
    <key code="79" output="&#x0000;" />
    <key code="80" output="&#x0000;" />
    <key code="81" output="=" />
    <key code="90" output="&#x0000;" />
    <key code="93" output="&#x0000;" />
    <key code="94" output="&#x0000;" />
    <key code="95" output="&#x0000;" />
    <key code="96" output="&#x0010;" />
    <key code="97" output="&#x0010;" />
    <key code="98" output="&#x0010;" />
    <key code="99" output="&#x0010;" />
    <key code="100" output="&#x0010;" />
    <key code="101" output="&#x0010;" />
    <key code="102" output="&#x0010;" />
    <key code="103" output="&#x0010;" />
    <key code="104" output="&#x0010;" />
    <key code="105" output="&#x0010;" />
    <key code="106" output="&#x0010;" />
    <key code="107" output="&#x0010;" />
    <key code="108" output="&#x0010;" />
    <key code="109" output="&#x0010;" />
    <key code="110" output="&#x0010;" />
    <key code="111" output="&#x0010;" />
    <key code="112" output="&#x0010;" />
    <key code="113" output="&#x0010;" />
    <key code="114" output="&#x0005;" />
    <key code="115" output="&#x0001;" />
    <key code="116" output="&#x000b;" />
    <key code="117" output="&#x007f;" />
    <key code="118" output="&#x0010;" />
    <key code="119" output="&#x0004;" />
    <key code="120" output="&#x0010;" />
    <key code="121" output="&#x000c;" />
    <key code="122" output="&#x0010;" />
    <key code="123" output="&#x001c;" />
    <key code="124" output="&#x001d;" />
    <key code="125" output="&#x001f;" />
    <key code="126" output="&#x001e;" />
    <key code="127" output="&#x0000;" />

Save the file, log out and back in, and enable the new input source in System Preferences.

To apply changes to a keylayout file, you have to log out and back in after for example running sudo touch /Library/Keyboard\ Layouts/.

You can disable other input sources by editing the HIToolbox plist.

share|improve this answer
Before I do this, what exactly does this do? – timothymh May 3 '13 at 2:23
Key combinations like ⌥← don't work in some views unless they are assigned to some ASCII control characters. I just copied the elements for the missing key codes from the U.S. keylayout. – user495470 May 3 '13 at 7:34

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.