I am trying to figure out how to change the Kotoeri Romaji keyboard layout to the Japanese default layout, using an external Apple US keyboard.

I'm currently running OSX 10.6.8 on a MacBook Pro 6,2. I live in Japan and purchased the laptop along with the OS in Japan. The default language for the OS is also set to Japanese.

Currently I am visiting family in the US and have an external US keyboard which I am trying to use. Unfortunately the default Romaji layout for this keyboard in Kotoeri is set to "US". I have checked the "Kotoeri preferences" section but the romaji layout selector does not have "Japanese 106 key" or anything like that listed. It has a wide range of European layouts.

This is driving me nuts because, although the letters are in the same places, the punctuation on the Japanese layout is different, and after many years in Japan I've grown so used to programming with the Japanese layout that I can no longer touch type efficiently with the US one...

If someone could point me to a way to add options to the kotoeri Romaji layouts I'd be very grateful!

  • Maybe it's not available on ISO or ANSI layouts but only JIS layouts? The standard Japanese layout has a few more keys in the main section than the US layout after all.
    – Lri
    Mar 18, 2012 at 12:24
  • Yes, but how does Mac OS decide what layout you need? If it the OS could reliably do so automatically, you wouldn't need the "Romaji Keyboard Layout" option in the first place.
    – Noah
    Apr 11, 2013 at 7:09
  • @Noah The OS decides on the basis of the attached hardware whether you need a layout for JIS keyboard type. Every Latin keyboard layout has a distinct JIS version. The option in Kotoeri preferences is needed primarily so that people who use AZERTY or QWERTZ layouts don't have to switch to QWERTY when typing Japanese. Apr 11, 2013 at 16:17

2 Answers 2


You can use the app Ukelele to fairly easily make a custom layout that puts the punctuation where you want it.


After making and installing a custom layout, you should be able to select it in the Kotoeri Preferences.

  • My custom keyboard layout is not listed in the kotoeri preferences for some reason. Some of the metadata could be missing or incorrect though.
    – Lri
    Mar 19, 2012 at 14:28
  • Ukelele's manual seems to indicate that custom .keylayouts cannot be used with input methods like Kotoeri.
    – Lri
    Mar 19, 2012 at 14:42
  • If the custom layout could be displayed in Kotoeri, then it wouldn't be needed, because we would know how to force Japanese to appear!
    – Noah
    Apr 11, 2013 at 7:11
  • @Noah That is not correct. There is no such thing as a "Japanese" keyboard layout in OS X. What you think is Japanese is just the US .keylayout as it appears when the hardware keyboard type is set to JIS instead of ISO or ANSI. Unfortunately it is often difficult for the user to change the keyboard type. In addition, I have various custom layouts working in my Kotoeri preferences, so that does not seem to be impossible as has been suggested. Apr 11, 2013 at 14:48
  • Hi Tom, perhaps my wording was incorrect, however, what I meant to say is that Mac OS can recognize a keyboard with a Japanese layout (JIS) as opposed to the normal US layout keyboards. It seems odd if they implement this as a separate "keylayout" of the US keyboard layout. Either way, if you set up a computer with a normal US layout and then connect by remote desktop using a Japanese keyboard (or vice versa), the layout will be broken, and there is no easy way to change it in the control panel.
    – Noah
    Aug 23, 2013 at 1:41

There are two ways to do this:

1: Check in kotoeri and see what kayboard map is showing. If it's not set to Japanese, and you can't set it, then also check whether in the main language prefs (where you turn on Kotoeri) is US or any other selected non-Japanese language can be disabled. If Japanese doesn't show in Kotoeri and English (or whatever) is grayed out in the language list and can't be disabled - then your system default keyboard has somehow become US English (or similar).

Re-run the setup assistant by doing the following:

sudo rm /var/db/.AppleSetupDone; 
sudo "/System/Library/CoreServices/Setup Assistant.app/Contents/MacOS/Setup Assistant"

Then, select "show all" for countries, and pick Japan, then in the input page, select "Kotoeri", and it should enable Kotoeri with a Japanese keyboard layout by force.

(I haven't tried doing this on a Mac with an English keyboard plugged in, though it does work over Screen Sharing!)

You can kill the setup assistant after that with ctrl-c in the terminal windows you started it from.

2: If the above doesn't work, or seems too drastic for you, Install Google Japanese IME. Then enable it, and from the language picker menu at the top of the screen select "Preferences...", and the Google Japanese IME preferences dialog should appear. Go to the "Advanced" tab, and select "Always use ja keyboard layout for Japanese input".

Method 2 is better for a few reasons:

  • 1. The login screen will still be on US layout for other people
  • 2. It doesn't mess with system level settings (which may be changed when you plug/unplug keyboards?)
  • 3. Google Japanese IME is much better than kotoeri anyway.
  • The default system keyboard is irrelevant, and having an ANSI or ISO keyboard (instead of JIS) plugged in will in fact make all the difference, as it will determine what keyboard type the machine is set to, which will determine the keyboard layout. The only fix for Kotoeri is to switch the keyboard type to JIS (hard and maybe impossible) or make a custom layout. But your Method 2 seems quite attractive if it works. Apr 11, 2013 at 14:52
  • Method 1 above has indeed worked for me on various occasions, though I should mention that the systems in question have no physical keyboard or monitor. Whatever you set during set-up is what you are stuck with unless you re-run the setup.The main problem comes when you are connecting from a machine with a different keyboard type and you want to conveniently set it...
    – Noah
    Aug 23, 2013 at 1:45

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .