diff --git a/README b/README
index 6deba91..2588e0f 100644
--- a/README
+++ b/README
@@ -8,18 +8,18 @@
 Also try running configue with the --with-thread and --with-readline
 options (described below).
 
-I really expect this to be the last beta release.  I declare a "feature 
-freeze" until 1.4 final is released.  Changes in 1.4 final will be 
-restricted to urgent bugfixes, portability enhancements, and added 
-documentation only.
+I really expect this to be the last beta release.  I declare a
+*FEATURE FREEZE* until 1.4 final is released (in a couple of weeks).
+Changes in 1.4 final will be restricted to urgent bugfixes,
+portability enhancements, and added documentation only.
 
 
 What's new in this release?
 ---------------------------
 
-A list of (nearly) all things that changed in each of the 1.4 beta releases 
-can be found in the file Misc/NEWS -- together this comprises a list of 
-everything that's changed since 1.3.
+A list of (nearly) everything that changed in each of the 1.4 beta
+releases can be found in the file Misc/NEWS -- together this comprises
+a list of everything that's changed since 1.3.
 
 
 What is Python anyway?
@@ -28,8 +28,7 @@
 Python is an interpreted object-oriented programming language, and is
 often compared to Tcl, Perl, Scheme or Java.  For a quick summary of
 what Python can mean for a UNIX/C programmer, read Misc/BLURB.LUTZ.
-If you have web access, point your browser to
-http://www.python.org.
+If you have web access, point your browser to http://www.python.org.
 
 
 If you don't read instructions
@@ -234,7 +233,7 @@
 *don't* include the output of "make test".  It is useless.  Run the
 following command instead:
 
-	PYTHONPATH=../Lib:../Lib/test:./Modules ./python -c 'import testall'
+    PYTHONPATH=../Lib:../Lib/test:./Modules ./python -c 'import testall'
 
 (substituting the top of the source tree for .. if you built in a
 different directory).  This gives the output of the tests and shows
@@ -469,16 +468,18 @@
 Python's power (including the built-in data types and functions!) is
 described here.
 
-To print the documentation from the LaTeX files, chdir into the Doc 
-subdirectory, type "make" (let's hope you have LaTeX installed!), and send 
-the four resulting PostScript files (tut.ps, lib.ps, ref.ps, and ext.ps) to 
-the printer.  See the README file there.  If you don't have LaTeX, you can 
-ftp the PostScript files from the ftp archives (see below).
+To print the documentation from the LaTeX files, chdir into the Doc
+subdirectory, type "make" (let's hope you have LaTeX installed!), and
+send the four resulting PostScript files (tut.ps, lib.ps, ref.ps, and
+ext.ps) to the printer.  See the README file there.  If you don't have
+LaTeX, you can ftp the PostScript files from the ftp archives (see
+below).
 
-All documentation is also available on-line via the Python web site 
-(http://www.python.org/, see below).  It can also be downloaded separately 
-from the ftp archives (see below) in Emacs INFO, HTML or PostScript form -- 
-see the web site or the FAQ (file Misc/FAQ) for more info.
+All documentation is also available on-line via the Python web site
+(http://www.python.org/, see below).  It can also be downloaded
+separately from the ftp archives (see below) in Emacs INFO, HTML or
+PostScript form -- see the web site or the FAQ (file Misc/FAQ) for
+more info.
 
 
 Emacs mode
@@ -508,29 +509,30 @@
 Newsgroup and mailing list
 --------------------------
 
-There are a newsgroup and a mailing list devoted to Python.  The newsgroup, 
-comp.lang.python, contains exactly the same messages as the mailing list 
-(though not always in the same order, due to the mysterious nature of the 
-Usenet news distribution algorithm).  To subscribe to the mailing list, 
-send mail containing your real name and e-mail address to 
-"python-list-request@cwi.nl".  Use the same address if you want to 
-unsibscribed.  (A real person reads these messages, so no LISTPROC or 
-Majordomo commands, please, and please be patient -- normal turn-around 
-time is about one working day.)
+There are a newsgroup and a mailing list devoted to Python.  The
+newsgroup, comp.lang.python, contains exactly the same messages as the
+mailing list (though not always in the same order, due to the
+mysterious nature of the Usenet news distribution algorithm).  To
+subscribe to the mailing list, send mail containing your real name and
+e-mail address to "python-list-request@cwi.nl".  Use the same address
+if you want to unsibscribed.  (A real person reads these messages, so
+no LISTPROC or Majordomo commands, please, and please be patient --
+normal turn-around time is about one working day.)
 
-The Python web site contains a search form that lets you search the 
-newsgroup archives (or the web site itself).  Click on the "search" link 
-in the banner menu on any page of http://www.python.org/.
+The Python web site contains a search form that lets you search the
+newsgroup archives (or the web site itself).  Click on the "search"
+link in the banner menu on any page of http://www.python.org/.
 
 
 Bug reports
 -----------
 
-Bugs are best reported to the comp.lang.python newsgroup or the Python 
-mailing list -- see the section "Newsgroup and mailing list" below.  Before 
-posting, check the newsgroup archives (see above) to see if your bug has 
-already been reported!  If you specifically don't want to involve the 
-newsgroup or mailing list, send them to python-bugs@python.org.
+Bugs are best reported to the comp.lang.python newsgroup or the Python
+mailing list -- see the section "Newsgroup and mailing list" below.
+Before posting, check the newsgroup archives (see above) to see if
+your bug has already been reported!  If you specifically don't want to
+involve the newsgroup or mailing list, send them to
+python-bugs@python.org.
 
 
 Questions
