Urdu Keyboard Layouts

The discussion below applies to Mac OS X version 10.6 (Snow Leopard). Leopard (10.5) is only slightly different.

Roman script

If you have not already done so, enable the input menu in your menu bar. Go to the system preferences (➔“System Preferences”) and select “Language & Text”. Click the “Input Sources” tab, and ensure that the “Show input menu in menu bar” box is checked.

It is also helpful to enable the Keyboard & Character Viewer. Check that box at the top left of the window (under “Select input methods to use.”).

While you are at it, the US Extended keyboard that comes pre-installed on your Mac is actually very useful. Scroll down to select the box next to it.

Once you close the window, you should be able to see a little icon on the right side of your menu bar (on my computer, it appears as an American flag just to the left of the battery indicator below)

Click the flag, and you should get a set of options like this:

You probably will not see this many options at first. Select the U.S. Extended keyboard, and then select “Show Keyboard Viewer”. You should see something like this:

If you press the Alt/Option (⌥) key, you will see several modifier keys highlighted:

If, for example, you want to write the letter ā (‘a’ with a macron above it), you would enter the following sequence of keystrokes: ⌥ + a, a. For á (‘a’ with an acute accent), you would enter: ⌥ + e, a. A ‘t’ with a line beneath it, i.e., ṯ, is written: ⌥ + h, t.

If this works for you, then read no further.

Roman Transliteration of Urdu Keyboard Layout

If, however, you would like a system that is more geared towards a Roman transliteration of the Arabo-Persian script as used in Urdu, then you might also consider a keyboard layout that I created called, appropriately enough, “Roman Transliteration of Urdu”. I have assigned keyboard shortcuts in a slightly different way, using punctuation keys as my modifiers (e.g., ⌥ + -, a for ā, instead of ⌥ + a, a).

  1. 1.You will need to download the keyboard layout Roman_transliteration_of_Urdu.keylayout(right click, and select “Save Linked File to ‘Downloads’”).

  2. 2.Copy the file into one of the two following folders:

  3. a.Home/Library/Keyboard Layouts, where home is your home folder. In your Finder, enter ⇧ + ⌘ + h (shift + command + h) to open a Finder window showing your home folder. Scroll down to “Library”, select it, and then copy the file into the “Keyboard Layouts” folder. This only affects your user profile: other users of your computer will not have access to this keyboard layout.

  4. b./Library/Keyboard Layouts, your root Library folder. In your Finder, enter ⇧ + ⌘ + c (shift + command + c) to open a Finder window showing your home directory. Scroll down to “Library”, select it, and then copy the file into the “Keyboard Layouts” folder. You may need to authenticate if you do not have an admin account. By copying the file into this folder, all users will have access to this keyboard layout.

  5. 3.Return to the Language & Text window under System Preferences (see above).

  6. 4.Scroll down to select “Roman Transliteration of Urdu”.

The keyboard layout should now be visible under the Input menu. If it is not (as might be the case if you are running OS X 10.5 Leopard), you may need to follow these additional steps:

  1. 5.Log out and log in again for the keyboard layout to show up in the list in the Input tab of the International preference pane. Note that after editing a keyboard layout (see below), you should move it out of the Keyboard Layouts folder and back in again before logging out and logging in — the change in the folder is what triggers the system loading keyboard layouts when logging in.

My method for entering diacriticals for the transliteration of Urdu terms is as follows (for a handy pdf reference version, see Key to Roman Transliteration of Urdu.pdf).

Method for entering Roman transliterations of Urdu letters (⌥ = Alt/Option)


⌥ + -, a = ā

⌥ + -, A = Ā

retroflex ṭe

⌥ + ., t = ṭ

⌥ + ., T = Ṭ


⌥ + *, s = ṡ

⌥ + *, S = Ṡ


⌥ + ., k = ḳ

⌥ + ., K = Ḳ


⌥ + *, z = ż

⌥ + *, Z = Ż


⌥ + ’, s = ś

⌥ + ’, S = Ś

(primarily used when transliterating Indic terms)

⌥ + ., s = ṣ

⌥ + ., S = Ṣ

(retroflex sh, used in transliterating Indic terms)


⌥ + ., s = ṣ

⌥ + ., S = Ṣ


⌥ + ., z = ẓ

⌥ + ., Z = Ẓ


⌥ + _, t = ṯ

⌥ + _, T = Ṯ


⌥ + _, z = ẕ

⌥ + _, Z = Ẕ


⌥ + ‘, ‘ = ʿ


⌥ + *, g = ġ

⌥ + *, G = Ġ


⌥ + ~, n = ñ

⌥ + ~, N = Ñ

⌥ + *, n = ṅ

⌥ + *, N = Ṅ

⌥ + ., n = ṇ

⌥ + ., N = Ṇ

⌥ + *, m, ṁ

⌥ + *, M, Ṁ


⌥ + -, u = u

⌥ + -, U = Ū


⌥ + -, i = ī

⌥ + -, I = Ī


⌥ + ’, ’ = ʾ

UrduPhonetic (Modified) Keyboard Layout

Kamal Abdali has prepared an excellent guide for installing Urdu fonts and keyboard layoutsin OS X. You will first need to download fonts with full support for Arabic-script glyphs. My suggestions follow those of Mr. Abdali. I have modified his Urdu Phonetic keyboard layout slightly using the free Ukelele application. If you wish to download my modified versions, you may do so here:

  1. UrduPhonetic.keylayout (right click, and select “Save Linked File to ‘Downloads’”)

  2. UrduPhonetic.icns (right click, and select “Save Linked File to ‘Downloads’”; this icon places a Pakistani flag in your input menu—downloading and installing this in your Keyboard Layouts folder is strictly optional)

The following keys are assigned to the the modified UrduPhonetic keyboard

Pressing the Shift (⇧) key allows the user to enter the following characters:

Pressing the Alt/Option (⌥) key, one gets

And, finally, pressing both the Alt/Option (⌥) and Shift (⇧) keys gives

Some of the less obvious key mappings are indicated by Mr. Abdali. Other, more idiosyncratic mappings are due to my own additions to the basic UrduPhonetic keyboard layout. These additions were made to accommodate the additional characters of the Pashto alphabet and certain early orthographic conventions (e.g., four dots above the letter re to indicate retroflex: ⌥ + r = ڙ, see the Unicode “Arabic” Code page for a more detailed discussion).

Please contact me if you see any errors or have any suggestions