Generalize menu creation.
diff --git a/Tools/idle/EditorWindow.py b/Tools/idle/EditorWindow.py
index a17354d..b122c2f 100644
--- a/Tools/idle/EditorWindow.py
+++ b/Tools/idle/EditorWindow.py
@@ -40,6 +40,8 @@
         self.top.protocol("WM_DELETE_WINDOW", self.close)
         self.top.bind("<<close-window>>", self.close_event)
         self.text.bind("<<center-insert>>", self.center_insert_event)
+        self.text.bind("<<help>>", self.help_dialog)
+        self.text.bind("<<about-idle>>", self.about_dialog)
 
         vbar['command'] = text.yview
         vbar.pack(side=RIGHT, fill=Y)
@@ -75,32 +77,25 @@
 
         self.saved_change_hook()
 
+    menu_specs = [
+        ("file", "File"),
+        ("edit", "Edit"),
+        ("help", "Help"),
+    ]
+
     def createmenubar(self):
         mbar = self.menubar
+        self.menudict = mdict = {}
+        for name, label in self.menu_specs:
+            mdict[name] = menu = Menu(mbar, name=name)
+            mbar.add_cascade(label=label, menu=menu)
+        self.Bindings.fill_menus(self.text, mdict)
 
-        self.filemenu = Menu(mbar)
-
-        self.editmenu = Menu(mbar)
-
-        self.helpmenu = Menu(mbar, name="help")
-        self.helpmenu.add_command(label="Help...", command=self.help_dialog)
-        self.helpmenu.add_separator()
-        self.helpmenu.add_command(label="About...", command=self.about_dialog)
-
-        mbar.add_cascade(label="File", menu=self.filemenu)
-        mbar.add_cascade(label="Edit", menu=self.editmenu)
-        mbar.add_cascade(label="Help", menu=self.helpmenu)
-
-        dict = {"file": self.filemenu,
-                "edit": self.editmenu,
-                "help": self.helpmenu}
-        self.Bindings.fill_menus(self.text, dict)
-
-    def about_dialog(self):
+    def about_dialog(self, event=None):
         tkMessageBox.showinfo(self.about_title, self.about_text,
                               master=self.text)
 
-    def help_dialog(self):
+    def help_dialog(self, event=None):
         from HelpWindow import HelpWindow
         HelpWindow(root=self.root)