title: Greasemonkey: leaving user configuration intact while updating
body: <p>I've written a user script for Greasemonkey that requires some user configuration. To specify how they want the script to behave, a user needs to set a couple variables.</p>
  
  <p>Right now, the script is set up like this:</p>
  
  <pre><code>// ==UserScript==
  // @name        My script
  // @description A simplified example
  // @include     http://www.example.com/
  // @version     0.0.1
  // @updateURL   https://www.example.com/myscript.meta.js
  // ==/UserScript==
  
  // Configuration
  var config1 = "on";
  var config2 = "off";
  
  // Programs
  [various functions that refer to the configuration variables]
  </code></pre>
  
  <p>I'd like to be able to update the script using <a href="http://wiki.greasespot.net/Metadata_Block#.40updateURL" rel="nofollow">Greasemonkey's automatic updates</a>, while leaving the user's configuration lines intact. Basically, I don't want to force every user to redo their configuration after each update.</p>
  
  <p>Is there a good method for updating a Greasemonkey userscript while leaving some configuration intact?</p>