Motivation
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. The U.S. traditional Qwerty layout that we all know and love.
A layout for people who want to try new things.
The layout I had to use for the one semester I took Chinese.
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.
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.
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.
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….
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/
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.
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.