Article Image
Article Image


Pair programming is pretty common around Square, and I’ve had the fortunate experience of pairing with my manager, Xavier. Now, if (you have a Mac and) you’ve ever had to type in a different language, you know that there is a flag in the top right corner that signifies the layout. Qwerty The U.S. traditional Qwerty layout that we all know and love.

Dvorak A layout for people who want to try new things.

Pinyin The layout I had to use for the one semester I took Chinese.

Colemak The layout that I never heard of before Square and a layout that pretty much only Xavier uses.

This brings us back to pair programming. Xavier is very proficient with his keyboard layout and added it to the configurations. When I first the little ‘CO’ in the top corner, I joked that it stood for ‘communist’, and from then on, it was referred to as Xavier’s communist layout. To drive the point home, I changed the display from this… … to this …

How to make a custom layout

Step 1: Make an icon.

Select an image for your layout, and visit iConvert. I tried their software with no luck, but you might have a better outcome. Browse to your image and hit convert. Once it does its magic, click the “Download .icns” button. Download icns

Step 2: Make the keyboard layout

Download the Unicode Keyboard Layout Editor, Ukelele (version 2.2.4 worked for me), and open it. Once you have it open, make sure your keyboard layout is the one you want to replicate.

Ukelele's icon is a ukulele

If it isn’t you can change it by navigating to  > System Preferences > Language & Text > Input Sources and checking the box for the layout you want. Then, click the layout icon in the top right corner of your screen and select the one you want.

check language

In Ukelele, select File > New From Current Input Source which should open a new keyboard window with your current keyboard layout.

Then, set your icon file by going to Keyboard > Attach Icon File… and layout name by going to Keyboard > Set Keyboard Name….

Finally save your layout by going to File > Save As Bundle….

save as bundle

Step 3: Use the layout

To install the layout, take your newly minted .bundle file and store it in your Library/Keyboard Layouts folder. If you can’t find this folder, go to Applications > Utilities > Terminal and paste this line in:

open ~/Library/Keyboard\ Layouts/

open image library

Once you have your bundle in the layout folder, restart your computer, and your new layout will be listed under  > System Preferences > Language & Text > Input Sources. Check your custom keyboard, select it from the top corner.

select layout

Step 4 (optional): Share

When you share your layout bundle, make sure to upload it to Dropbox or Skydrive and send the link to the bundle. I tried emailing the bundle and Gmail striped-out some important piece that prevented it from working.

Here is the Communist Colmak and Jedi Dvorak that I made for Xavier and this blog post respectively.

Blog Logo

Salvatore Testa



Salvatore's Blog

It works on my computer.

Back to Overview