title: Add Keyboard Binding To Existing Emacs Mode
body: <p>I'm attempting my first modification of Emacs.  I recorded a little keyboard macro and had Emacs spit it out as elisp, resulting in:</p>
  
  <pre><code>(setq add-docstring
      "\C-rdef\C-n\C-a\C-m\C-p\C-i\C-u6\"\C-u3\C-b")
  (global-set-key "\C-c\C-d" 'add-docstring)</code></pre>
  
  <p>Searching the Emacs reference, though, revealed that <kbd>C-c C-d</kbd> is already bound in diff mode.  I don't <em>plan</em> on using diff mode, but the future is unknowable and I'd like to not lay a trap for myself.  So I'd like this keybinding to only operate in python mode, where it tries to help me add docstrings.</p>
  
  <p>In my <code>/usr/share/emacs/23.whatever/list/progmodes</code>, I found <code>python.elc</code> and <code>python.el.gz</code>.  I unzipped <code>python.el.gz</code> and got a readable version of the elisp file.  Now, though, the documentation becomes opaque to me.  </p>
  
  <p>How can I add my key binding to the python mode, instead of globally?</p>
  
  <p>Is it possible, for bonus points, to apply the changes to python mode without restarting emacs or closing open files?  It's the self-modifying editor, I figure there's a good chance that it's possible.  </p>