Reputation: 587
I'd like to avoid having to do tweaking the keyboard bindings repeatedly for each machine I use Xcode on.
Sort of like copy the settings file to a particular location in the target computer's filesystem; doesn't need Dropbox.
Upvotes: 2
Views: 916
Reputation: 30478
Yes, at least for key bindings. I'm assuming you're using Xcode4. If that's the case, your Key Bindings are stored here...
~/Library/Developer/Xcode/UserData/KeyBindings
Just copy the 'sets' you want from one machine to the other and there you go.
Note that unlike Xcode3, Xcode4 now respects global bindings as well. Global bindings are stored here...
~/Library/KeyBindings/DefaultKeyBindings.dict
Global bindings are for instance, if like me, you prefer the way cursor movement is handled in Windows (e.g. Home/End work on the line, CTRL Left/Right jump a word at a time, etc.) you can remap the keys for the overall system, and Xcode4 respects that. In Xcode3, such changes had to be duplicated in its own key bindings file.
Also note that if the same key is defined in both the defaults and the Xcode4 file, the latter 'wins'.
Additionally, you can unmap a system-wide key when using Xcode. This will disable that key when using Xcode, but leave it enabled elsewhere.
(If you open the actual key bindings file in say TextEdit or a PList editor (that's all these files are) then you'll see it still defines the command, but leaves the key itself cleared out.
Something else that may be of interest is KeyBindingsEditor. It's a great editor for creating system-wide shortcuts. While it claims to support Xcode, it doesn't (or rather Xcode 3 and 4 it doesn't. I can't speak to earlier.)
However since again Xcode 4 can utilize system-wide shortcuts now, you can use this indirectly with Xcode. I personally am very happy about that as now, no matter where I am, including Xcode, my keyboard shortcuts are unified across the entire system.
Upvotes: 1
Reputation: 10358
Adding to Mark's answer, setup dropbox to point that file to ~/nameofyourchoice on all of your machines, and viola, everything should be synced. You'll need to test it out to see if other machines don't overwrite etc.
Upvotes: 0