<type>documentation</type>
<domain>intro</domain>
<id>backing-up-and-sharing-settings</id>
<title>Backing Up and Sharing Settings</title>
<date>$Date: 2007-09-27 12:57:20 -0400 (Thu, 27 Sep 2007) $</date>
<version>$Revision: 16511 $</version>
<product>all</product>

To back up your license, preferences, and other settings, you only need to back
up the `Settings Directory <ref:install/user-settings-dir>`__, which is
listed in Wing's `About box <script:about_application>`__, accessed from the
``Help`` menu.

The process of restoring Wing or moving to a new machine consists simply of 
installing Wing again, restoring the above directory, and (in Wing Pro) reactivating your
license if necessary.

~~~if WINGPER:
The only other Wing-specific data that the IDE will write to your disk is in
your project files (``*.wpr``).
~~~

~~~if WINGPRO:
The only other Wing-specific data that the IDE will write to your disk is in
your project files (``*.wpr`` and ``*.wpu`` if you are using the ``Shared`` style of
project in Wing Pro; see `Project Types <ref:proj/project-types>`__ for details).  We
recommend using the default ``Shared`` project type and checking the ``*.wpr`` into 
revision control.  

The ``*.wpu`` contains user-specific and machine-specific data such as
environment, path, window position, list of open files, and other GUI state. The file
is worth backing up, but usually not hard to recreate if lost.
~~~

~~~if WEBSITE:
Note that Wing Personal does not use ``.wpu`` files and Wing 101 does not have project
files at all.
~~~

Wing also writes to a cache directory (also listed in the About
box) and your OS-provided temporary directory, but those can be recreated from
scratch if lost. The only possible exception to this is ``autosave`` in
the cache directory, which contains unsaved files open in the IDE.

For more information on the location of these directories, see `User Settings
Directory <ref:install/user-settings-dir>`__.

**Sharing Settings**

Many of the settings found in the `Settings Directory
<ref:install/user-settings-dir>`__ can be shared to other machines or with
~~~if WEBSITE:
other users of Wing.  This includes the following files and directories
(some of which are omitted in Wing Personal and Wing 101):
~~~
~~~if not WEBSITE:
other users of Wing.  This includes the following files and directories:
~~~

~~~if not WING101:
* **filesets** -- shared `file sets <ref:edit/file-sets>`__ used for selecting
  files to search or include in the project.
  
* **launch** -- shared `launch configurations <ref:proj/launch-configs>`__
  used for defining environment for debugging and executing code.
  
* **palettes** -- any user-defined `display themes <ref:custom/qt-styles>`__
  used for configuring the user interface.

* **perspectives** -- shared `perspectives <ref:custom/perspectives>`__
  which store particular configurations of tools and editors.
  
* **oscommands** -- shared `OS Commands <ref:oscommands/index>`__ which
  can be used from any project file.
~~~

* **preferences** -- Wing's `preferences <ref:custom/preferences>`__,
  as configured in the `Preferences dialog <script:show_preferences_gui>`__.
  
~~~if not WING101:
* **recent\*** -- lists of recent files, projects, commands, and so forth.
~~~

~~~if WINGPRO:
* **remote-hosts** -- shared remote hosts configurations used for remote development.

* **containers** -- shared container configurations.

* **clusters** -- shared cluster configurations.
~~~

~~~if not WING101:
* **scripts** -- `scripts <ref:scripting/index>`__ that extend IDE functionality.
~~~

~~~if WINGPRO:
* **snippets** -- user-defined `code snippets <ref:edit/snippets>`__ for quick
  entry of predefined blocks of code.
~~~

~~~if not WING101:
* **syntax** -- user-defined `syntax colors <ref:custom/syntax>`__ for file types
  available in the editor.
~~~

Follow the links above to find details on the file formats involved.
Most are simple textual formats that are easy to generate or modify if
necessary.  Wing does need to be restarted when replacing these files, and
may overwrite changes made while it is running.

