diff --git a/Lib/idlelib/EditorWindow.py b/Lib/idlelib/EditorWindow.py
index 49f9869..c2ee115 100644
--- a/Lib/idlelib/EditorWindow.py
+++ b/Lib/idlelib/EditorWindow.py
@@ -98,13 +98,13 @@
         self.flist = flist
         root = root or flist.root
         self.root = root
-        if flist:
-            self.vars = flist.vars
         self.menubar = Menu(root)
         self.top = top = self.Toplevel(root, menu=self.menubar)
-        #self.top.instanceDict makes flist.inversedict avalable to
-        #configDialog.py so it can access all EditorWindow instaces
-        self.top.instanceDict=flist.inversedict
+        if flist:
+            self.vars = flist.vars
+            #self.top.instanceDict makes flist.inversedict avalable to
+            #configDialog.py so it can access all EditorWindow instaces
+            self.top.instanceDict=flist.inversedict
         self.vbar = vbar = Scrollbar(top, name='vbar')
         self.text_frame = text_frame = Frame(top)
         self.text = text = Text(text_frame, name='text', padx=5, wrap=None,
@@ -213,7 +213,7 @@
         if self.extensions.has_key('AutoIndent'):
             self.extensions['AutoIndent'].set_indentation_params(
                 self.ispythonsource(filename))
-
+ 
     def set_status_bar(self):
         self.status_bar = self.MultiStatusBar(self.top)
         self.status_bar.set_label('column', 'Col: ?', side=RIGHT)
@@ -253,6 +253,7 @@
             menudict[name] = menu = Menu(mbar, name=name)
             mbar.add_cascade(label=label, menu=menu, underline=underline)
         self.fill_menus()
+        self.ResetExtraHelpMenu()
 
     def postwindowsmenu(self):
         # Only called when Windows menu exists
@@ -323,7 +324,10 @@
         del fn
 
     def python_docs(self, event=None):
-        webbrowser.open(self.help_url)
+        self.display_docs(self.help_url)
+
+    def display_docs(self, url):
+        webbrowser.open(url)
 
     def select_all(self, event=None):
         self.text.tag_add("sel", "1.0", "end-1c")
@@ -525,6 +529,25 @@
                             menu.entryconfig(index,accelerator=accel)
                             #print 'accel now:',accel,'\n'
 
+    def ResetExtraHelpMenu(self):
+        #load or update the Extra Help menu if required
+        menuList=idleConf.GetAllExtraHelpSourcesList()
+        helpMenu=self.menudict['help']
+        cascadeIndex=helpMenu.index(END)-1
+        if menuList:
+            if not hasattr(self,'menuExtraHelp'):
+                self.menuExtraHelp=Menu(self.menubar)
+                helpMenu.insert_cascade(cascadeIndex,label='Extra Help',
+                        underline=1,menu=self.menuExtraHelp)
+            self.menuExtraHelp.delete(1,END)
+            for menuItem in menuList:
+                self.menuExtraHelp.add_command(label=menuItem[0],
+                        command=lambda:self.display_docs(menuItem[1]))
+        else: #no extra help items
+            if hasattr(self,'menuExtraHelp'): 
+                helpMenu.delete(cascadeIndex-1)                    
+                del(self.menuExtraHelp)
+                    
     def saved_change_hook(self):
         short = self.short_title()
         long = self.long_title()
diff --git a/Lib/idlelib/config-keys.def b/Lib/idlelib/config-keys.def
index 4fd2322..8b38827 100644
--- a/Lib/idlelib/config-keys.def
+++ b/Lib/idlelib/config-keys.def
@@ -29,7 +29,7 @@
 redo=<Control-Shift-Key-z>
 remove-selection=<Key-Escape>
 save-copy-of-window-as-file=<Alt-Shift-Key-s>
-save-window-as-file=<Alt-Key-s>
+save-window-as-file=<Control-Shift-Key-s>
 save-window=<Control-Key-s>
 select-all=<Alt-Key-a>
 toggle-auto-coloring=<Control-Key-slash>
diff --git a/Lib/idlelib/config-main.def b/Lib/idlelib/config-main.def
index 9cd58fb..01f0662 100644
--- a/Lib/idlelib/config-main.def
+++ b/Lib/idlelib/config-main.def
@@ -28,8 +28,6 @@
 
 [General]
 editor-on-startup= 1
-user-help-browser= 0
-user-help-browser-command= 
 
 [EditorWindow]
 width= 80
diff --git a/Lib/idlelib/configDialog.py b/Lib/idlelib/configDialog.py
index bff86d9..978cbf1 100644
--- a/Lib/idlelib/configDialog.py
+++ b/Lib/idlelib/configDialog.py
@@ -367,11 +367,13 @@
                 width=8,command=self.HelpListItemAdd)
         self.buttonHelpListRemove=Button(frameHelpListButtons,text='Remove',
                 state=DISABLED,width=8,command=self.HelpListItemRemove)
-        checkHelpBrowser=Checkbutton(frameHelp,variable=self.userHelpBrowser,
-            onvalue=1,offvalue=0,text='user specified (html) help browser:',
-            command=self.OnCheckUserHelpBrowser)
-        self.entryHelpBrowser=Entry(frameHelp,textvariable=self.helpBrowser,
-                width=40)
+        # the following is better handled by the BROWSER environment
+        # variable under unix/linux
+        #checkHelpBrowser=Checkbutton(frameHelp,variable=self.userHelpBrowser,
+        #    onvalue=1,offvalue=0,text='user specified (html) help browser:',
+        #    command=self.OnCheckUserHelpBrowser)
+        #self.entryHelpBrowser=Entry(frameHelp,textvariable=self.helpBrowser,
+        #        width=40)
         #widget packing
         #body
         frameRun.pack(side=TOP,padx=5,pady=5,fill=X)
@@ -398,8 +400,8 @@
         self.buttonHelpListEdit.pack(side=TOP,anchor=W,pady=5)
         self.buttonHelpListAdd.pack(side=TOP,anchor=W)
         self.buttonHelpListRemove.pack(side=TOP,anchor=W,pady=5)
-        checkHelpBrowser.pack(side=TOP,anchor=W,padx=5)
-        self.entryHelpBrowser.pack(side=TOP,anchor=W,padx=5,pady=5)
+        #checkHelpBrowser.pack(side=TOP,anchor=W,padx=5)
+        #self.entryHelpBrowser.pack(side=TOP,anchor=W,padx=5,pady=5)
         return frame
 
     def AttachVarCallbacks(self):
@@ -870,7 +872,7 @@
     def HelpListItemEdit(self):
         itemIndex=self.listHelp.index(ANCHOR)
         helpSource=self.userHelpList[itemIndex]
-        newHelpSource=GetHelpSourceDialog(self,'New Help Source',
+        newHelpSource=GetHelpSourceDialog(self,'Edit Help Source',
                 menuItem=helpSource[0],filePath=helpSource[1]).result
         if (not newHelpSource) or (newHelpSource==helpSource):
             return #no changes
@@ -1013,11 +1015,11 @@
         for helpItem in self.userHelpList:
             self.listHelp.insert(END,helpItem[0]+'  '+helpItem[1])
         self.SetHelpListButtonStates()
-        self.userHelpBrowser.set(idleConf.GetOption('main','General',
-                'user-help-browser',default=0,type='bool'))
-        self.helpBrowser.set(idleConf.GetOption('main','General',
-                'user-help-browser-command',default=''))
-        self.OnCheckUserHelpBrowser()
+        #self.userHelpBrowser.set(idleConf.GetOption('main','General',
+        #        'user-help-browser',default=0,type='bool'))
+        #self.helpBrowser.set(idleConf.GetOption('main','General',
+        #        'user-help-browser-command',default=''))
+        #self.OnCheckUserHelpBrowser()
     
     def LoadConfigs(self):
         """
@@ -1070,9 +1072,12 @@
         """
         save all configuration changes to user config files.
         """
-        if self.changedItems['main'].has_key('HelpFiles'):
-            #this section gets completely replaced
-            idleConf.userCfg['main'].remove_section('HelpFiles')
+        #if self.changedItems['main'].has_key('HelpFiles'):
+        #this section gets completely replaced
+        print idleConf.GetAllExtraHelpSourcesList()
+        idleConf.userCfg['main'].remove_section('HelpFiles')
+        idleConf.userCfg['main'].Save()
+        print idleConf.GetAllExtraHelpSourcesList()
         for configType in self.changedItems.keys():
             cfgTypeHasChanges=0
             for section in self.changedItems[configType].keys():
@@ -1081,6 +1086,7 @@
                     if self.SetUserValue(configType,section,item,value):
                         cfgTypeHasChanges=1
             if cfgTypeHasChanges: 
+                print configType,'- changed'
                 idleConf.userCfg[configType].Save()                
         self.ResetChangedItems() #clear the changed items dict
          
@@ -1097,6 +1103,7 @@
             instance.ResetColorizer()
             instance.ResetFont()
             instance.ResetKeybindings()
+            instance.ResetExtraHelpMenu()
         
     def Cancel(self):
         self.destroy()
diff --git a/Lib/idlelib/configHelpSourceEdit.py b/Lib/idlelib/configHelpSourceEdit.py
index f593214..6ad7d51 100644
--- a/Lib/idlelib/configHelpSourceEdit.py
+++ b/Lib/idlelib/configHelpSourceEdit.py
@@ -22,6 +22,8 @@
         self.parent = parent
         self.result=None
         self.CreateWidgets()
+        self.menu.set(menuItem)
+        self.path.set(filePath)
         self.withdraw() #hide while setting geometry
         self.update_idletasks()
         #needs to be done here so that the winfo_reqwidth is valid
