Power users often use many computers (work, home, university, etc.). They have very optimized workflow to their specific needs. The thing with Sublime Text is that you can customize to be more than just a text editor: the editor becomes natural extensions of your fingers.
Since the customization work (settings, installing plug-ins) takes some effort you don’t want to
- Redo customizations on every computer
- Lose your customizations
Below is a shell script which will make Sublime Text to sync its configuration files and installed plug-ins across different computer.
- Back-up your Sublime settings first – just in case
- Run the script on the first computer to copy Sublime stuff to Dropbox
- Run the script on other computers and it will pull in the settings from Dropbox and set-up the automatic sync
Tested on OSX and Ubuntu Linux. Please note that Sublime Text settings folder locations on Linux may depend on the Linux distribution and the installation method. For Windows users see this manual method.
#!/bin/sh # # Set-up Sublime settings + packages sync over Dropbox # # Will sync settings + Installed plug-ins # # Tested on OSX - should support Linux too as long as # you set-up correct SOURCE folder # # Copyright 2012 Mikko Ohtamaa http://opensourcehacker.com # Licensed under WTFPL # # Note: If there is an existing installation in Dropbox, # it will replace settings on a local computer # No Warranty! Use on your own risk. Take backup of Library/Application Support/Sublime Text 2 folder first. DROPBOX="$HOME/Dropbox" # Where do we put Sublime settings in our Dropbox SYNC_FOLDER="$DROPBOX/Sublime" # Where Sublime settings have been installed if [ `uname` = "Darwin" ];then SOURCE="$HOME/Library/Application Support/Sublime Text 2" elif [ `uname` = "Linux" ];then SOURCE="$HOME/.config/sublime-text-2" else echo "Unknown operating system" exit 1 fi # Check that settings really exist on this computer if [ ! -e "$SOURCE/Packages/" ]; then echo "Could not find $SOURCE/Settings/" exit 1 fi # Detect that we don't try to install twice and screw up if [ -L "$SOURCE/Packages" ] ; then echo "Dropbox settings already symlinked" exit 1 fi # XXX: Disabled Settings/ folder syncing as looks like # Sublime keeps only license and .sublime_session files - # the latter # which are autosaved and would cause unnecessary conflicts # and traffic # Dropbox has not been set-up on any computer before? if [ ! -e "$SYNC_FOLDER" ] ; then echo "Setting up Dropbox sync folder" mkdir "$SYNC_FOLDER" cp -r "$SOURCE/Installed Packages/" "$SYNC_FOLDER" cp -r "$SOURCE/Packages/" "$SYNC_FOLDER" # cp -r "$SOURCE/Settings/" "$SYNC_FOLDER" fi # Now when settings are in Dropbox delete existing files rm -rf "$SOURCE/Installed Packages" rm -rf "$SOURCE/Packages" #rm -rf "$SOURCE/Settings" # Symlink settings folders from Drobox ln -s "$SYNC_FOLDER/Installed Packages" "$SOURCE" ln -s "$SYNC_FOLDER/Packages" "$SOURCE" #ln -s "$SYNC_FOLDER/Settings" "$SOURCE"