diff --git a/Lib/idlelib/Bindings.py b/Lib/idlelib/Bindings.py
index e11aec5..af6ec56 100644
--- a/Lib/idlelib/Bindings.py
+++ b/Lib/idlelib/Bindings.py
@@ -70,12 +70,9 @@
    ]),
  ('options', [
    ('_Configure IDLE...', '<<open-config-dialog>>'),
-##   None,
-##   ('Revert to _Default Settings', '<<revert-all-settings>>'),
    ]),
  ('help', [
    ('_About IDLE', '<<about-idle>>'),
-   ('IDLE _Readme', '<<view-readme>>'),
    None,
    ('_IDLE Help', '<<help>>'),
    ('Python _Docs', '<<python-docs>>'),
diff --git a/Lib/idlelib/EditorWindow.py b/Lib/idlelib/EditorWindow.py
index c63823a..6deb4f2 100644
--- a/Lib/idlelib/EditorWindow.py
+++ b/Lib/idlelib/EditorWindow.py
@@ -106,7 +106,6 @@
         text.bind("<<paste>>", self.paste)
         text.bind("<<center-insert>>", self.center_insert_event)
         text.bind("<<help>>", self.help_dialog)
-        text.bind("<<view-readme>>", self.view_readme)
         text.bind("<<python-docs>>", self.python_docs)
         text.bind("<<about-idle>>", self.about_dialog)
         text.bind("<<open-config-dialog>>", self.config_dialog)
@@ -297,15 +296,11 @@
         self.rmenu = rmenu
 
     def about_dialog(self, event=None):
-        aboutDialog.AboutDialog(self.top,'About IDLEfork')
+        aboutDialog.AboutDialog(self.top,'About IDLE')
 
     def config_dialog(self, event=None):
         configDialog.ConfigDialog(self.top,'Settings')
 
-    def view_readme(self, event=None):
-        fn=os.path.join(os.path.abspath(os.path.dirname(__file__)),'README.txt')
-        textView.TextViewer(self.top,'IDLEfork - README',fn)
-
     def help_dialog(self, event=None):
         fn=os.path.join(os.path.abspath(os.path.dirname(__file__)),'help.txt')
         textView.TextViewer(self.top,'Help',fn)
