diff --git a/benchmarks/extrude/vianew.geo b/benchmarks/extrude/vianew.geo
index 234c46c5f4c07707c8827cd5f23de76e1d280808..58fc446fccbfd278a4cae1cbaf2e01b181790063 100644
--- a/benchmarks/extrude/vianew.geo
+++ b/benchmarks/extrude/vianew.geo
@@ -82,29 +82,28 @@ Transfinite Surface {28} = {  2,  3, 14, 13};
 Transfinite Surface {30} = {  3,  4,  5, 14};
 Transfinite Surface {32} = {  5,  6, 15, 14};
 Transfinite Surface {34} = {  6,  7,  8, 15};
-Transfinite Surface {36} = {  8,  9, 16, 15};
+Transfinite Surface {36} = {  15, 16, 9, 8};
+//Transfinite Surface {36} = {  8,  9, 16, 15}; causes swapping to fail in non-recombined case...
 Transfinite Surface {38} = {  9, 10, 11, 16};
 Transfinite Surface {40} = { 11, 12, 13, 16};
 Transfinite Surface {42} = { 13, 14, 15, 16};
 
-Recombine Surface {26,28,30,32,34,36,38,40,42};
-
 // number of layers:
 NLdn = 8;
 NLup = 3;
 
 // extrude down first:
-Extrude Surface {42, {0,0,-A*L}}{ Layers { {NLdn}, {9001}, {1} } ; Recombine; };
+Extrude Surface {42, {0,0,-A*L}}{ Layers { {NLdn}, {9001}, {1} } ; };
 // extrude up second:
-Extrude Surface {26, {0,0,L}}{ Layers { {NLup}, {9000}, {1} } ; Recombine;};
-Extrude Surface {28, {0,0,L}}{ Layers { {NLup}, {9000}, {1} } ; Recombine;};
-Extrude Surface {30, {0,0,L}}{ Layers { {NLup}, {9000}, {1} } ; Recombine;};
-Extrude Surface {32, {0,0,L}}{ Layers { {NLup}, {9000}, {1} } ; Recombine;};
-Extrude Surface {34, {0,0,L}}{ Layers { {NLup}, {9000}, {1} } ; Recombine;};
-Extrude Surface {36, {0,0,L}}{ Layers { {NLup}, {9000}, {1} } ; Recombine;};
-Extrude Surface {38, {0,0,L}}{ Layers { {NLup}, {9000}, {1} } ; Recombine;};
-Extrude Surface {40, {0,0,L}}{ Layers { {NLup}, {9000}, {1} } ; Recombine;};
-Extrude Surface {42, {0,0,L}}{ Layers { {NLup}, {9000}, {1} } ; Recombine;};
+Extrude Surface {26, {0,0,L}}{ Layers { {NLup}, {9000}, {1} } ; };
+Extrude Surface {28, {0,0,L}}{ Layers { {NLup}, {9000}, {1} } ; };
+Extrude Surface {30, {0,0,L}}{ Layers { {NLup}, {9000}, {1} } ; };
+Extrude Surface {32, {0,0,L}}{ Layers { {NLup}, {9000}, {1} } ; };
+Extrude Surface {34, {0,0,L}}{ Layers { {NLup}, {9000}, {1} } ; };
+Extrude Surface {36, {0,0,L}}{ Layers { {NLup}, {9000}, {1} } ; };
+Extrude Surface {38, {0,0,L}}{ Layers { {NLup}, {9000}, {1} } ; };
+Extrude Surface {40, {0,0,L}}{ Layers { {NLup}, {9000}, {1} } ; };
+Extrude Surface {42, {0,0,L}}{ Layers { {NLup}, {9000}, {1} } ; };
 
 // wafer surface including surfaces that are extruded downwards:
 Physical Surface(1001) = {26,28,30,32,34,36,38,40, 51,55,59,63,64};
diff --git a/benchmarks/misc/500views.geo b/benchmarks/misc/500views.geo
index 5da7a5873e86c834f2c0659bd54cf6fea6d8b038..64636c3d006df7c82cce8cf395baecec899720af 100644
--- a/benchmarks/misc/500views.geo
+++ b/benchmarks/misc/500views.geo
@@ -2,7 +2,7 @@
 // this tests that we can still load as many views as we want.
 // (even if only 200 are allowed in the GUI)
 
-For i In {0:250}
+For i In {1:250}
 
 Include "../../tutorial/view1.pos" ;
 Include "../../tutorial/view2.pos" ;
diff --git a/demos/anim-all.script b/demos/anim-all.script
index ed8c417de65a0186f411ccf8a27bea316c0eddc6..e86a90c6081938effa077b39a33daf6c455d8f50 100644
--- a/demos/anim-all.script
+++ b/demos/anim-all.script
@@ -67,7 +67,7 @@ System "mpeg_encode anim.par" ;
 
 // Call whirlgif
 
-System "whirlgif -loop -o anim.gif anim-*.gif" ;
+System "whirlgif -minimize -loop -o anim.gif anim-*.gif" ;
 
 // Clean-up all temp files
 
diff --git a/demos/anim-seq.script b/demos/anim-seq.script
index ffa53f3b6b969ce142549e058eb29914bde0d467..50c8ae838c99fe6808b13307d2decb47869facf1 100644
--- a/demos/anim-seq.script
+++ b/demos/anim-seq.script
@@ -87,7 +87,7 @@ System "mpeg_encode anim.par" ;
 
 // Call whirlgif
 
-System "whirlgif -loop -o anim.gif anim-*.gif" ;
+System "whirlgif -minimize -loop -o anim.gif anim-*.gif" ;
 
 // Clean-up all temp files
 
diff --git a/doc/FORMATS b/doc/FORMATS
index 89ee3b762f30327c92f051725b0391529923e421..c8dc161d51a8b9c3a26267582a2c13adba52fab0 100644
--- a/doc/FORMATS
+++ b/doc/FORMATS
@@ -1,4 +1,4 @@
-$Id: FORMATS,v 1.8 2001-03-01 08:04:15 geuzaine Exp $
+$Id: FORMATS,v 1.9 2001-08-31 07:08:47 geuzaine Exp $
 
 This document describes the mesh and post-processing file formats for
 Gmsh, version >= 1.0. 
@@ -46,7 +46,7 @@ The elm-region value is the number of the physical entity to which the
 element belongs.
 
 
-Gmsh Ascii Post-Processing File Format
+Gmsh ASCII Post-Processing File Format
 ======================================
    
 A post-processing file is divided in several sections: one format
@@ -82,7 +82,7 @@ pairs).
 version-number is a floating point number giving the version of
 Gmsh for which the file is destined (e.g. 1.0).
 
-file-type is an integer equal to 0 in the ascii file format.
+file-type is an integer equal to 0 in the ASCII file format.
 
 data-size is an integer equal to the size of the floating point
 numbers used in the file (usually, data-size == sizeof(double)).
@@ -119,8 +119,8 @@ defined as
 Gmsh Binary Post-Processing File Format
 =======================================
 
-The binary post-processing file format is the same as the ascii file format,
-except that:
+The binary post-processing file format is the same as the ASCII file
+format, except that:
 
 1) file-type equals 1.
 
@@ -164,7 +164,7 @@ Gmsh Parsed Post-Processing Format
 
 For testing purposes (or with very small data sets, e.g. in the
 tutorials), there is an additional post-processing format which is
-parsed by the same grammar analyser as the geometry. You can thus, for
+parsed by the same grammar analyzer as the geometry. You can thus, for
 example, embed small post-processing views into your geometrical
 descriptions. The format of the parsed post-processing files is the
 following:
@@ -191,11 +191,11 @@ following:
    vector tetrahedron  VS                12                     12 * nb-time-steps
    tensor tetrahedron  TS                12                     36 * nb-time-steps
 
-Contrary to the ascii post-processing file format, the coordinates are
+Contrary to the ASCII post-processing file format, the coordinates are
 given by node, i.e. (coord1, coord2, coord3) for a point,
 (coord1-node1, coord2-node1, coord3-node1, coord1-node2, coord2-node2,
 coord3-node2) for a line, (coord1-node1, coord2-node1, coord3-node1,
 coord1-node2, coord2-node2, coord3-node2, coord1-node3, coord2-node3,
 coord3-node3) for a triangle, etc. The values are given in the same
-order as for the ascii post-processing file format.
+order as for the ASCII post-processing file format.
 
diff --git a/tutorial/t2.geo b/tutorial/t2.geo
index 2284aa9b1a7dfb7c08cb084c367b682f18de7cbc..95ec97fb16cf373986dcafef7dee5fe850a4a906 100644
--- a/tutorial/t2.geo
+++ b/tutorial/t2.geo
@@ -2,8 +2,8 @@
  *
  *  Gmsh tutorial 2
  * 
- *  Includes, Geometrical transformations, Elementary entities
- *  (Volumes), Physical entities (Volumes)
+ *  Includes, Geometrical transformations, Extruded geometries,
+ *  Elementary entities (Volumes), Physical entities (Volumes)
  *
  *********************************************************************/
 
diff --git a/tutorial/t4.geo b/tutorial/t4.geo
index c03610acc556d1a640cc36954c4f479f317e8f3c..e176327d15747e7c3b4564ca065127cd372fb266 100644
--- a/tutorial/t4.geo
+++ b/tutorial/t4.geo
@@ -45,7 +45,7 @@ Lc2 = 0.003 ;
 // Grouping is done, as usual, with parentheses.
 //
 // In addition to these operators, all C mathematical functions can
-// also be used (note the first capital letter):
+// also be used (note the first capital letter), i.e.
 // 
 //   Exp(x)
 //   Log(x)
@@ -65,11 +65,11 @@ Lc2 = 0.003 ;
 //   Floor(x)
 //   Ceil(x)
 //   Fmod(x,y)
-//   Hypot(x,y)
-
-// An additional function 'Rand(x)' generates a random number in [0,x]
+// 
+// as well as a series of other functions:
 //
-//   Rand(x)
+//   Hypot(x,y)   computes Sqrt(x^2+y^2)
+//   Rand(x)      generates a random number in [0,x]
 //
 // The only predefined constant in Gmsh is Pi.
 
diff --git a/tutorial/t5.geo b/tutorial/t5.geo
index d29929551b92d2528a86caa6b2c0ac53d736d108..1dbce3bec9a175c16accc57bda01aee136225fb3 100644
--- a/tutorial/t5.geo
+++ b/tutorial/t5.geo
@@ -14,8 +14,9 @@ lcar3 = .075;
 
 // In order to change these lengths globally (without changing the
 // file), a global scaling factor for all characteristic lengths can
-// be specified on the command line with the option '-clscale'. For
-// example, with:
+// be specified on the command line with the option '-clscale' (or
+// with the option Mesh.CharacteristicLengthFactor). For example,
+// with:
 //
 // > gmsh t5 -clscale 1
 //
diff --git a/tutorial/t9.geo b/tutorial/t9.geo
index b038d3b9d50f80203ff0a2612a58e5bc405720e4..ea7d7b535ee992860e887d69e8f2248f123940a8 100644
--- a/tutorial/t9.geo
+++ b/tutorial/t9.geo
@@ -16,18 +16,14 @@
 
 Include "view3.pos" ;
 
-// Plugins can be controlled as other options in Gmsh. For example,
-// the CutMap plugin extracts an isovalue surface from a 3D scalar
-// view. The plugin can either be called from the graphical interface
-// (right click on the view button, then Plugins->CutMap), or from
-// the command file, as is shown below.
-
-// This sets the optional parameter A of the CutMap plugin to the
-// value 0.67 (see the About in the graphical interface for the
-// documentation of each plugin), and runs the plugin:
-
-Plugin(CutMap).A = 0.67 ; 
-Plugin(CutMap).iView = 0 ; //select View[0] as the working view
+// Plugins can be controlled in the same way as other options in
+// Gmsh. For example, the CutMap plugin (which extracts an isovalue
+// surface from a 3D scalar view) can either be called from the
+// graphical interface (right click on the view button, then
+// Plugins->CutMap), or from the command file:
+
+Plugin(CutMap).A = 0.67 ; // iso-value level
+Plugin(CutMap).iView = 0 ; // source view is View[0]
 Plugin(CutMap).Run ; 
 
 // The following runs the CutPlane plugin:
diff --git a/tutorial/tutorial.html b/tutorial/tutorial.html
index 0be58a20bff04d69913e22a8c71441ae2cd8edcf..f23b8dd98a17310609d2f1e6649a6557fa842933 100644
--- a/tutorial/tutorial.html
+++ b/tutorial/tutorial.html
@@ -1,7 +1,7 @@
 <!DOCTYPE html PUBLIC "-//IETF//DTD HTML 2.0//EN">
 <HTML>
 <HEAD>
-<TITLE>Enscript Output</TITLE>
+<TITLE>Gmsh tutorial</TITLE>
 </HEAD>
 <BODY BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#1F00FF" ALINK="#FF0000" VLINK="#9900DD">
 <A NAME="top">
@@ -23,7 +23,7 @@
 <H1>README 1/10</H1>
 [<A HREF="#top">top</A>][prev][<A HREF="#file2">next</A>]
 <PRE>
-$Id: tutorial.html,v 1.20 2001-08-18 12:43:41 geuzaine Exp $
+$Id: tutorial.html,v 1.21 2001-08-31 07:08:47 geuzaine Exp $
 
 Here are the examples in the Gmsh tutorial. These examples are
 commented (both C and C++-style comments can be used in Gmsh input
@@ -368,8 +368,8 @@ Extrude Surface { 6, {0,0,h} } {
 </FONT></I><I><FONT COLOR="#B22222">// extruded 3D mesh can be recombined into prisms (wedges) if the
 </FONT></I><I><FONT COLOR="#B22222">// surface elements are triangles, or hexahedra if the surface
 </FONT></I><I><FONT COLOR="#B22222">// elements are quadrangles. All rotations are specified by an axis
-</FONT></I><I><FONT COLOR="#B22222">// direction ({0,1,0}), an axis point ({0,0,0}) and a rotation angle
-</FONT></I><I><FONT COLOR="#B22222">// (Pi/2):
+</FONT></I><I><FONT COLOR="#B22222">// direction ({0,1,0}), an axis point ({-0.1,0,0.1}) and a rotation
+</FONT></I><I><FONT COLOR="#B22222">// angle (-Pi/2):
 </FONT></I>
 Extrude Surface { 122, {0,1,0} , {-0.1,0,0.1} , -Pi/2 } { 
   Recombine ; Layers { 7, 9004, 1 } ; 
diff --git a/tutorial/view1.pos b/tutorial/view1.pos
index 988ee3e42288b3cd82af963725da0a924e490b80..855df7ac1fd57504f8dfe1382376693e5e0545f6 100644
--- a/tutorial/view1.pos
+++ b/tutorial/view1.pos
@@ -6,8 +6,13 @@
  *
  *********************************************************************/
 
-// In this view, there are only scalar triangles.
-// There are 5 time steps -> 3*5 = 15 values for each triangle.
+// In this view, there are only scalar triangles. There are 5 time
+// steps -> 3*5 = 15 values for each triangle.
+//
+// Warning: this (parsed) post-processing view format is only designed
+// for small post-processing views. For bigger views (>100000
+// elements), you should consider using the native ASCII or binary
+// file formats described in the FORMATS file.
 
 View "a scalar map" {
 ST(0.079090117,0.19794942,0,0.06966854,0.20076802,0,0.071449289,0.19423207,0){1206859.6,1570520.4,1594804.6,-2368529.7,-3162888.4,-3019964.8,1073015.3,1636334.6,1103926.4,1335740.9,1503948.1,2033518.7,-2359414.1,-3161601.9,-2921575.1};
diff --git a/utils/tut2html b/utils/tut2html
index b67e85a9df4414a05e62f3ccbb26a5ffc012a884..8998c98b4a36b7cdf28b09a47cc1b13309c27cc2 100644
--- a/utils/tut2html
+++ b/utils/tut2html
@@ -1,12 +1,6 @@
 #!/bin/sh
 
-#if [ $# = 0 ] ; then
-#  echo "Usage: tut2html files"
-#  exit 1
-#fi
-
-#enscript -Ecpp --color -Whtml --toc -pt.html $*
-enscript -Ecpp --color -Whtml --toc -pt.html README *.geo
+enscript -t "Gmsh tutorial" -Ecpp --color -Whtml --toc -pt.html README *.geo
 
 cat t.html | \
 sed "s/<FONT COLOR=\"#BC8F8F\"><B>//g" | \