changeset 20211:5212cda4ac0e

maint: Periodic merge of stable to default.
author Rik <rik@octave.org>
date Sun, 10 May 2015 21:37:19 -0700
parents c0f64bc26eee (current diff) 014edaafa3ad (diff)
children 89616a98b02e
files libinterp/corefcn/strfns.cc m4/acinclude.m4 scripts/image/gmap40.m scripts/image/imformats.m scripts/strings/cstrcat.m scripts/strings/strcat.m
diffstat 672 files changed, 5286 insertions(+), 4262 deletions(-) [+]
line wrap: on
line diff
--- a/.hgtags	Wed May 06 20:52:16 2015 +0100
+++ b/.hgtags	Sun May 10 21:37:19 2015 -0700
@@ -93,3 +93,4 @@
 52d2bbf49c922440621b42b1c1679f0e55462485 rc-4-0-0-1
 eba80000fa0dad32ba0f1cd767dd826d1ce1aba6 rc-4-0-0-2
 065f933ef08318e40b81f7fe75236e6175088117 rc-4-0-0-3
+42bb3a776c9fcc008669f382d2409297c4a901b3 rc-4-0-0-4
--- a/build-aux/mk-opts.pl	Wed May 06 20:52:16 2015 +0100
+++ b/build-aux/mk-opts.pl	Sun May 10 21:37:19 2015 -0700
@@ -232,10 +232,13 @@
   if (not defined $DOC_STRING)
     {
       $DOC_STRING = "Query or set options for the function \@code{$FCN_NAME}.\\n\\
+\\n\\
 When called with no arguments, the names of all available options and\\n\\
 their current values are displayed.\\n\\
-Given one argument, return the value of the corresponding option.\\n\\
-When called with two arguments, \@code{$OPT_FCN_NAME} set the option\\n\\
+\\n\\
+Given one argument, return the value of the option \@var{opt}.\\n\\
+\\n\\
+When called with two arguments, \@code{$OPT_FCN_NAME} sets the option\\n\\
 \@var{opt} to value \@var{val}.";
     }
 }
--- a/configure.ac	Wed May 06 20:52:16 2015 +0100
+++ b/configure.ac	Sun May 10 21:37:19 2015 -0700
@@ -19,14 +19,14 @@
 ### <http://www.gnu.org/licenses/>.
 
 AC_PREREQ([2.63])
-AC_INIT([GNU Octave], [4.0.0-rc3], [http://octave.org/bugs.html], [octave])
+AC_INIT([GNU Octave], [4.0.0-rc4], [http://octave.org/bugs.html], [octave])
 
 dnl Note that the version number is duplicated here and in AC_INIT
 dnl because AC_INIT requires it to be static, not computed from
 dnl shell variables.
 OCTAVE_MAJOR_VERSION=4
 OCTAVE_MINOR_VERSION=0
-OCTAVE_PATCH_VERSION=0-rc3
+OCTAVE_PATCH_VERSION=0-rc4
 
 dnl PACKAGE_VERSION is set by the AC_INIT VERSION arg
 OCTAVE_VERSION="$PACKAGE_VERSION"
@@ -1020,7 +1020,7 @@
     SNDFILE_CPPFLAGS=`$PKG_CONFIG --cflags-only-I sndfile`
     SNDFILE_LDFLAGS=`$PKG_CONFIG --libs-only-L sndfile`
     SNDFILE_LIBS=`$PKG_CONFIG --libs-only-l sndfile`
-    warn_sndfile=
+    OCTAVE_CHECK_LIB_SNDFILE_OK([warn_sndfile=])
   ])
 fi
 
@@ -1031,6 +1031,7 @@
   SNDFILE_LDFLAGS=
   SNDFILE_LIBS=
 fi
+
 AC_SUBST(SNDFILE_CPPFLAGS)
 AC_SUBST(SNDFILE_LDFLAGS)
 AC_SUBST(SNDFILE_LIBS)
--- a/doc/interpreter/tips.txi	Wed May 06 20:52:16 2015 +0100
+++ b/doc/interpreter/tips.txi	Sun May 10 21:37:19 2015 -0700
@@ -242,12 +242,17 @@
 a documentation string.
 
 @item
-The first line of the documentation string should consist of one or two
-complete sentences that stand on their own as a summary.
+The first line of the documentation string should consist of a summary of
+the function.
+
+Subsequent lines may expand the general nature of the function.
 
-The documentation string can have additional lines that expand on the
-details of how to use the function or variable.  The additional lines
-should also be made up of complete sentences.
+After the introduction there should be paragraphs describing the meaning
+and usage of each input, followed by the meaning and usage of each output.
+
+Finally, there may be more general information such as notes about the
+algorithm used, references to scientific papers, notes about any
+incompatibilities with @sc{matlab}, etc.
 
 @item
 For consistency, phrase the verb in the first sentence of a
--- a/libgui/graphics/GLCanvas.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libgui/graphics/GLCanvas.cc	Sun May 10 21:37:19 2015 -0700
@@ -38,7 +38,8 @@
 {
 
 GLCanvas::GLCanvas (QWidget* xparent, const graphics_handle& gh)
-  : QGLWidget (QGLFormat(QGL::SampleBuffers), xparent), Canvas (gh)
+  : QGLWidget (QGLFormat (QGL::SampleBuffers | QGL::IndirectRendering),
+               xparent), Canvas (gh)
 {
   setFocusPolicy (Qt::ClickFocus);
 }
--- a/libgui/graphics/QtHandlesUtils.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libgui/graphics/QtHandlesUtils.cc	Sun May 10 21:37:19 2015 -0700
@@ -152,7 +152,11 @@
   Matrix rgb (1, 3);
   double* rgbData = rgb.fortran_vec ();
 
-  c.getRgbF (rgbData, rgbData+1, rgbData+2);
+  // qreal is a typedef for double except for ARM CPU architectures
+  // where it is a typedef for float (Bug #44970).
+  qreal tmp[3];
+  c.getRgbF (tmp, tmp+1, tmp+2);
+  rgbData[0] = tmp[0]; rgbData[1] = tmp[1]; rgbData[2] = tmp[2];
 
   return rgb;
 }
--- a/libinterp/corefcn/__ilu__.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/__ilu__.cc	Sun May 10 21:37:19 2015 -0700
@@ -472,7 +472,7 @@
 DEFUN (__iluc__, args, nargout,
        "-*- texinfo -*-\n\
 @deftypefn  {Built-in Function} {[@var{L}, @var{U}] =} __iluc__ (@var{A})\n\
-@deftypefnx {Built-in Function} {[@var{L}, @var{U}] =} __iluc__ (@var{A}, @var{droptol}) \n\
+@deftypefnx {Built-in Function} {[@var{L}, @var{U}] =} __iluc__ (@var{A}, @var{droptol})\n\
 @deftypefnx {Built-in Function} {[@var{L}, @var{U}] =} __iluc__ (@var{A}, @var{droptol}, @var{milu})\n\
 @deftypefnx {Built-in Function} {[@var{L}, @var{U}, @var{P}] =} __iluc__ (@var{A}, @dots{})\n\
 Undocumented internal function.\n\
--- a/libinterp/corefcn/balance.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/balance.cc	Sun May 10 21:37:19 2015 -0700
@@ -54,6 +54,9 @@
 @deftypefnx {Built-in Function} {[@var{D}, @var{P}, @var{AA}] =} balance (@var{A}, @var{opt})\n\
 @deftypefnx {Built-in Function} {[@var{CC}, @var{DD}, @var{AA}, @var{BB}] =} balance (@var{A}, @var{B}, @var{opt})\n\
 \n\
+Balance the matrix @var{A} to reduce numerical errors in future\n\
+calculations.\n\
+\n\
 Compute @code{@var{AA} = @var{DD} \\ @var{A} * @var{DD}} in which @var{AA}\n\
 is a matrix whose row and column norms are roughly equal in magnitude, and\n\
 @code{@var{DD} = @var{P} * @var{D}}, in which @var{P} is a permutation\n\
--- a/libinterp/corefcn/besselj.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/besselj.cc	Sun May 10 21:37:19 2015 -0700
@@ -549,8 +549,7 @@
 DEFUN (airy, args, nargout,
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {[@var{a}, @var{ierr}] =} airy (@var{k}, @var{z}, @var{opt})\n\
-Compute Airy functions of the first and second kind, and their\n\
-derivatives.\n\
+Compute Airy functions of the first and second kind, and their derivatives.\n\
 \n\
 @example\n\
 @group\n\
--- a/libinterp/corefcn/betainc.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/betainc.cc	Sun May 10 21:37:19 2015 -0700
@@ -36,7 +36,9 @@
 DEFUN (betainc, args, ,
        "-*- texinfo -*-\n\
 @deftypefn {Mapping Function} {} betainc (@var{x}, @var{a}, @var{b})\n\
-Return the regularized incomplete Beta function,\n\
+Compute the regularized incomplete Beta function.\n\
+\n\
+The regularized incomplete Beta function is defined by\n\
 @tex\n\
 $$\n\
  I (x, a, b) = {1 \\over {B (a, b)}} \\int_0^x t^{(a-z)} (1-t)^{(b-1)} dt.\n\
@@ -330,10 +332,12 @@
 DEFUN (betaincinv, args, ,
        "-*- texinfo -*-\n\
 @deftypefn {Mapping Function} {} betaincinv (@var{y}, @var{a}, @var{b})\n\
-Compute the inverse of the incomplete Beta function, i.e., @var{x} such that\n\
+Compute the inverse of the incomplete Beta function.\n\
+\n\
+The inverse is the value @var{x} such that\n\
 \n\
 @example\n\
-@var{y} == betainc (@var{x}, @var{a}, @var{b}) \n\
+@var{y} == betainc (@var{x}, @var{a}, @var{b})\n\
 @end example\n\
 @seealso{betainc, beta, betaln}\n\
 @end deftypefn")
--- a/libinterp/corefcn/bitfcns.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/bitfcns.cc	Sun May 10 21:37:19 2015 -0700
@@ -367,6 +367,7 @@
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} bitand (@var{x}, @var{y})\n\
 Return the bitwise AND of non-negative integers.\n\
+\n\
 @var{x}, @var{y} must be in the range [0,bitmax]\n\
 @seealso{bitor, bitxor, bitset, bitget, bitcmp, bitshift, bitmax}\n\
 @end deftypefn")
@@ -378,6 +379,7 @@
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} bitor (@var{x}, @var{y})\n\
 Return the bitwise OR of non-negative integers.\n\
+\n\
 @var{x}, @var{y} must be in the range [0,bitmax]\n\
 @seealso{bitor, bitxor, bitset, bitget, bitcmp, bitshift, bitmax}\n\
 @end deftypefn")
@@ -389,6 +391,7 @@
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} bitxor (@var{x}, @var{y})\n\
 Return the bitwise XOR of non-negative integers.\n\
+\n\
 @var{x}, @var{y} must be in the range [0,bitmax]\n\
 @seealso{bitand, bitor, bitset, bitget, bitcmp, bitshift, bitmax}\n\
 @end deftypefn")
@@ -539,10 +542,11 @@
        "-*- texinfo -*-\n\
 @deftypefn  {Built-in Function} {} bitshift (@var{a}, @var{k})\n\
 @deftypefnx {Built-in Function} {} bitshift (@var{a}, @var{k}, @var{n})\n\
-Return a @var{k} bit shift of @var{n}-digit unsigned\n\
-integers in @var{a}.  A positive @var{k} leads to a left shift;\n\
-A negative value to a right shift.  If @var{n} is omitted it defaults\n\
-to log2(bitmax)+1.\n\
+Return a @var{k} bit shift of @var{n}-digit unsigned integers in @var{a}.\n\
+\n\
+A positive @var{k} leads to a left shift; A negative value to a right shift.\n\
+\n\
+If @var{n} is omitted it defaults to log2(bitmax)+1.\n\
 @var{n} must be in the range [1,log2(bitmax)+1] usually [1,33].\n\
 \n\
 @example\n\
@@ -680,7 +684,9 @@
 @deftypefnx {Built-in Function} {} bitmax (\"double\")\n\
 @deftypefnx {Built-in Function} {} bitmax (\"single\")\n\
 Return the largest integer that can be represented within a floating point\n\
-value.  The default class is @qcode{\"double\"}, but @qcode{\"single\"} is a\n\
+value.\n\
+\n\
+The default class is @qcode{\"double\"}, but @qcode{\"single\"} is a\n\
 valid option.  On IEEE-754 compatible systems, @code{bitmax} is\n\
 @w{@math{2^{53} - 1}} for @qcode{\"double\"} and @w{@math{2^{24} -1}} for\n\
 @qcode{\"single\"}.\n\
@@ -715,10 +721,11 @@
 @deftypefnx {Built-in Function} {} flintmax (\"double\")\n\
 @deftypefnx {Built-in Function} {} flintmax (\"single\")\n\
 Return the largest integer that can be represented consecutively in a\n\
-floating point value.  The default class is @qcode{\"double\"}, but\n\
-@qcode{\"single\"} is a valid option.  On IEEE-754 compatible systems,\n\
-@code{flintmax} is @w{@math{2^53}} for @qcode{\"double\"} and\n\
-@w{@math{2^24}} for @qcode{\"single\"}.\n\
+floating point value.\n\
+\n\
+The default class is @qcode{\"double\"}, but @qcode{\"single\"} is a valid\n\
+option.  On IEEE-754 compatible systems, @code{flintmax} is @w{@math{2^53}}\n\
+for @qcode{\"double\"} and @w{@math{2^24}} for @qcode{\"single\"}.\n\
 @seealso{bitmax, intmax, realmax, realmin}\n\
 @end deftypefn")
 {
@@ -748,6 +755,7 @@
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} intmax (@var{type})\n\
 Return the largest integer that can be represented in an integer type.\n\
+\n\
 The variable @var{type} can be\n\
 \n\
 @table @code\n\
@@ -818,6 +826,7 @@
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} intmin (@var{type})\n\
 Return the smallest integer that can be represented in an integer type.\n\
+\n\
 The variable @var{type} can be\n\
 \n\
 @table @code\n\
@@ -888,6 +897,7 @@
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} sizemax ()\n\
 Return the largest value allowed for the size of an array.\n\
+\n\
 If Octave is compiled with 64-bit indexing, the result is of class int64,\n\
 otherwise it is of class int32.  The maximum array size is slightly\n\
 smaller than the maximum value allowable for the relevant class as reported\n\
--- a/libinterp/corefcn/bsxfun.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/bsxfun.cc	Sun May 10 21:37:19 2015 -0700
@@ -317,14 +317,15 @@
 DEFUN (bsxfun, args, ,
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} bsxfun (@var{f}, @var{A}, @var{B})\n\
-The binary singleton expansion function applier performs broadcasting,\n\
-that is, applies a binary function @var{f} element-by-element to two\n\
+The binary singleton expansion function performs broadcasting,\n\
+that is, it applies a binary function @var{f} element-by-element to two\n\
 array arguments @var{A} and @var{B}, and expands as necessary\n\
-singleton dimensions in either input argument.  @var{f} is a function\n\
-handle, inline function, or string containing the name of the function\n\
-to evaluate.  The function @var{f} must be capable of accepting two\n\
-column-vector arguments of equal length, or one column vector argument\n\
-and a scalar.\n\
+singleton dimensions in either input argument.\n\
+\n\
+@var{f} is a function handle, inline function, or string containing the name\n\
+of the function to evaluate.  The function @var{f} must be capable of\n\
+accepting two column-vector arguments of equal length, or one column vector\n\
+argument and a scalar.\n\
 \n\
 The dimensions of @var{A} and @var{B} must be equal or singleton.  The\n\
 singleton dimensions of the arrays will be expanded to the same\n\
--- a/libinterp/corefcn/cellfun.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/cellfun.cc	Sun May 10 21:37:19 2015 -0700
@@ -283,8 +283,10 @@
 @deftypefnx {Built-in Function} {} cellfun (@dots{}, \"UniformOutput\", @var{val})\n\
 \n\
 Evaluate the function named @var{name} on the elements of the cell array\n\
-@var{C}.  Elements in @var{C} are passed on to the named function\n\
-individually.  The function @var{name} can be one of the functions\n\
+@var{C}.\n\
+\n\
+Elements in @var{C} are passed on to the named function individually.  The\n\
+function @var{name} can be one of the functions\n\
 \n\
 @table @code\n\
 @item isempty\n\
@@ -320,7 +322,7 @@
 Additionally, @code{cellfun} accepts an arbitrary function @var{func}\n\
 in the form of an inline function, function handle, or the name of a\n\
 function (in a character string).  The function can take one or more\n\
-arguments, with the inputs arguments given by @var{C}, @var{D}, etc.  \n\
+arguments, with the inputs arguments given by @var{C}, @var{D}, etc.\n\
 Equally the function can return one or more output arguments.  For example:\n\
 \n\
 @example\n\
@@ -1066,9 +1068,11 @@
 @deftypefnx {Function File} {} arrayfun (@dots{}, \"UniformOutput\", @var{val})\n\
 @deftypefnx {Function File} {} arrayfun (@dots{}, \"ErrorHandler\", @var{errfunc})\n\
 \n\
-Execute a function on each element of an array.  This is useful for\n\
-functions that do not accept array arguments.  If the function does\n\
-accept array arguments it is better to call the function directly.\n\
+Execute a function on each element of an array.\n\
+\n\
+This is useful for functions that do not accept array arguments.  If the\n\
+function does accept array arguments it is better to call the function\n\
+directly.\n\
 \n\
 The first input argument @var{func} can be a string, a function\n\
 handle, an inline function, or an anonymous function.  The input\n\
@@ -1863,9 +1867,11 @@
        "-*- texinfo -*-\n\
 @deftypefn  {Built-in Function} {@var{C} =} num2cell (@var{A})\n\
 @deftypefnx {Built-in Function} {@var{C} =} num2cell (@var{A}, @var{dim})\n\
-Convert the numeric matrix @var{A} to a cell array.  If @var{dim} is\n\
-defined, the value @var{C} is of dimension 1 in this dimension and the\n\
-elements of @var{A} are placed into @var{C} in slices.  For example:\n\
+Convert the numeric matrix @var{A} to a cell array.\n\
+\n\
+If @var{dim} is defined, the value @var{C} is of dimension 1 in this\n\
+dimension and the elements of @var{A} are placed into @var{C} in slices.\n\
+For example:\n\
 \n\
 @example\n\
 @group\n\
@@ -2194,12 +2200,14 @@
 @deftypefn  {Built-in Function} {@var{C} =} mat2cell (@var{A}, @var{m}, @var{n})\n\
 @deftypefnx {Built-in Function} {@var{C} =} mat2cell (@var{A}, @var{d1}, @var{d2}, @dots{})\n\
 @deftypefnx {Built-in Function} {@var{C} =} mat2cell (@var{A}, @var{r})\n\
-Convert the matrix @var{A} to a cell array.  If @var{A} is 2-D, then\n\
-it is required that @code{sum (@var{m}) == size (@var{A}, 1)} and\n\
+Convert the matrix @var{A} to a cell array.\n\
+\n\
+If @var{A} is 2-D, then it is required that\n\
+@code{sum (@var{m}) == size (@var{A}, 1)} and\n\
 @code{sum (@var{n}) == size (@var{A}, 2)}.  Similarly, if @var{A} is\n\
-multi-dimensional and the number of dimensional arguments is equal\n\
-to the dimensions of @var{A}, then it is required that @code{sum (@var{di})\n\
-== size (@var{A}, i)}.\n\
+multi-dimensional and the number of dimensional arguments is equal to the\n\
+dimensions of @var{A}, then it is required that\n\
+@code{sum (@var{di}) == size (@var{A}, i)}.\n\
 \n\
 Given a single dimensional argument @var{r}, the other dimensional\n\
 arguments are assumed to equal @code{size (@var{A},@var{i})}.\n\
@@ -2365,8 +2373,9 @@
 @deftypefn {Built-in Function} {@var{sl} =} cellslices (@var{x}, @var{lb}, @var{ub}, @var{dim})\n\
 Given an array @var{x}, this function produces a cell array of slices from\n\
 the array determined by the index vectors @var{lb}, @var{ub}, for lower and\n\
-upper bounds, respectively.  In other words, it is equivalent to the\n\
-following code:\n\
+upper bounds, respectively.\n\
+\n\
+In other words, it is equivalent to the following code:\n\
 \n\
 @example\n\
 @group\n\
@@ -2498,6 +2507,8 @@
 DEFUN (cellindexmat, args, ,
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {@var{y} =} cellindexmat (@var{x}, @var{varargin})\n\
+Perform indexing of matrices in a cell array.\n\
+\n\
 Given a cell array of matrices @var{x}, this function computes\n\
 \n\
 @example\n\
--- a/libinterp/corefcn/colloc.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/colloc.cc	Sun May 10 21:37:19 2015 -0700
@@ -37,10 +37,10 @@
 DEFUN (colloc, args, ,
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {[@var{r}, @var{amat}, @var{bmat}, @var{q}] =} colloc (@var{n}, \"left\", \"right\")\n\
-Compute derivative and integral weight matrices for orthogonal\n\
-collocation using the subroutines given in @nospell{J. Villadsen} and\n\
-@nospell{M. L. Michelsen}, @cite{Solution of Differential Equation Models by\n\
-Polynomial Approximation}.\n\
+Compute derivative and integral weight matrices for orthogonal collocation.\n\
+\n\
+Reference: @nospell{J. Villadsen}, @nospell{M. L. Michelsen},\n\
+@cite{Solution of Differential Equation Models by Polynomial Approximation}.\n\
 @end deftypefn")
 {
   octave_value_list retval;
--- a/libinterp/corefcn/conv2.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/conv2.cc	Sun May 10 21:37:19 2015 -0700
@@ -39,9 +39,10 @@
 @deftypefn  {Built-in Function} {} conv2 (@var{A}, @var{B})\n\
 @deftypefnx {Built-in Function} {} conv2 (@var{v1}, @var{v2}, @var{m})\n\
 @deftypefnx {Built-in Function} {} conv2 (@dots{}, @var{shape})\n\
-Return the 2-D convolution of @var{A} and @var{B}.  The size of the result\n\
-is determined by the optional @var{shape} argument which takes the following\n\
-values\n\
+Return the 2-D convolution of @var{A} and @var{B}.\n\
+\n\
+The size of the result is determined by the optional @var{shape} argument\n\
+which takes the following values\n\
 \n\
 @table @asis\n\
 @item @var{shape} = @qcode{\"full\"}\n\
@@ -294,9 +295,10 @@
        "-*- texinfo -*-\n\
 @deftypefn  {Built-in Function} {@var{C} =} convn (@var{A}, @var{B})\n\
 @deftypefnx {Built-in Function} {@var{C} =} convn (@var{A}, @var{B}, @var{shape})\n\
-Return the n-D convolution of @var{A} and @var{B}.  The size of the result\n\
-is determined by the optional @var{shape} argument which takes the following\n\
-values\n\
+Return the n-D convolution of @var{A} and @var{B}.\n\
+\n\
+The size of the result is determined by the optional @var{shape} argument\n\
+which takes the following values\n\
 \n\
 @table @asis\n\
 @item @var{shape} = @qcode{\"full\"}\n\
--- a/libinterp/corefcn/data.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/data.cc	Sun May 10 21:37:19 2015 -0700
@@ -214,8 +214,9 @@
        "-*- texinfo -*-\n\
 @deftypefn {Mapping Function} {} atan2 (@var{y}, @var{x})\n\
 Compute atan (@var{y} / @var{x}) for corresponding elements of @var{y}\n\
-and @var{x}.  Signal an error if @var{y} and @var{x} do not match in size\n\
-and orientation.\n\
+and @var{x}.\n\
+\n\
+@var{y} and @var{x} must match in size and orientation.\n\
 @seealso{tan, tand, tanh, atanh}\n\
 @end deftypefn")
 {
@@ -384,9 +385,12 @@
 @deftypefn  {Built-in Function} {} hypot (@var{x}, @var{y})\n\
 @deftypefnx {Built-in Function} {} hypot (@var{x}, @var{y}, @var{z}, @dots{})\n\
 Compute the element-by-element square root of the sum of the squares of\n\
-@var{x} and @var{y}.  This is equivalent to\n\
-@code{sqrt (@var{x}.^2 + @var{y}.^2)}, but calculated in a manner that\n\
+@var{x} and @var{y}.\n\
+\n\
+This is equivalent to\n\
+@code{sqrt (@var{x}.^2 + @var{y}.^2)}, but is calculated in a manner that\n\
 avoids overflows for large values of @var{x} or @var{y}.\n\
+\n\
 @code{hypot} can also be called with more than 2 arguments; in this case,\n\
 the arguments are accumulated from left to right:\n\
 \n\
@@ -577,15 +581,16 @@
 DEFUN (rem, args, ,
        "-*- texinfo -*-\n\
 @deftypefn {Mapping Function} {} rem (@var{x}, @var{y})\n\
-Return the remainder of the division @code{@var{x} / @var{y}}, computed\n\
-using the expression\n\
+Return the remainder of the division @code{@var{x} / @var{y}}.\n\
+\n\
+The remainder is computed using the expression\n\
 \n\
 @example\n\
 x - y .* fix (x ./ y)\n\
 @end example\n\
 \n\
-An error message is printed if the dimensions of the arguments do not\n\
-agree, or if either of the arguments is complex.\n\
+An error message is printed if the dimensions of the arguments do not agree,\n\
+or if either of the arguments is complex.\n\
 @seealso{mod}\n\
 @end deftypefn")
 {
@@ -729,16 +734,18 @@
 DEFUN (mod, args, ,
        "-*- texinfo -*-\n\
 @deftypefn {Mapping Function} {} mod (@var{x}, @var{y})\n\
-Compute the modulo of @var{x} and @var{y}.  Conceptually this is given by\n\
+Compute the modulo of @var{x} and @var{y}.\n\
+\n\
+Conceptually this is given by\n\
 \n\
 @example\n\
 x - y .* floor (x ./ y)\n\
 @end example\n\
 \n\
 @noindent\n\
-and is written such that the correct modulus is returned for\n\
-integer types.  This function handles negative values correctly.  That\n\
-is, @code{mod (-1, 3)} is 2, not -1, as @code{rem (-1, 3)} returns.\n\
+and is written such that the correct modulus is returned for integer types.\n\
+This function handles negative values correctly.  That is,\n\
+@code{mod (-1, 3)} is 2, not -1, as @code{rem (-1, 3)} returns.\n\
 @code{mod (@var{x}, 0)} returns @var{x}.\n\
 \n\
 An error results if the dimensions of the arguments do not agree, or if\n\
@@ -1140,9 +1147,9 @@
        "-*- texinfo -*-\n\
 @deftypefn  {Built-in Function} {} cumprod (@var{x})\n\
 @deftypefnx {Built-in Function} {} cumprod (@var{x}, @var{dim})\n\
-Cumulative product of elements along dimension @var{dim}.  If\n\
-@var{dim} is omitted, it defaults to the first non-singleton dimension.\n\
-\n\
+Cumulative product of elements along dimension @var{dim}.\n\
+\n\
+If @var{dim} is omitted, it defaults to the first non-singleton dimension.\n\
 @seealso{prod, cumsum}\n\
 @end deftypefn")
 {
@@ -1176,8 +1183,9 @@
 @deftypefnx {Built-in Function} {} cumsum (@dots{}, \"native\")\n\
 @deftypefnx {Built-in Function} {} cumsum (@dots{}, \"double\")\n\
 @deftypefnx {Built-in Function} {} cumsum (@dots{}, \"extra\")\n\
-Cumulative sum of elements along dimension @var{dim}.  If @var{dim}\n\
-is omitted, it defaults to the first non-singleton dimension.\n\
+Cumulative sum of elements along dimension @var{dim}.\n\
+\n\
+If @var{dim} is omitted, it defaults to the first non-singleton dimension.\n\
 \n\
 See @code{sum} for an explanation of the optional parameters\n\
 @qcode{\"native\"}, @qcode{\"double\"}, and @qcode{\"extra\"}.\n\
@@ -1322,11 +1330,12 @@
 @deftypefnx {Built-in Function} {@var{M} =} diag (@var{v}, @var{m}, @var{n})\n\
 @deftypefnx {Built-in Function} {@var{v} =} diag (@var{M})\n\
 @deftypefnx {Built-in Function} {@var{v} =} diag (@var{M}, @var{k})\n\
-Return a diagonal matrix with vector @var{v} on diagonal @var{k}.  The\n\
-second argument is optional.  If it is positive, the vector is placed on\n\
+Return a diagonal matrix with vector @var{v} on diagonal @var{k}.\n\
+\n\
+The second argument is optional.  If it is positive, the vector is placed on\n\
 the @var{k}-th superdiagonal.  If it is negative, it is placed on the\n\
-@var{-k}-th subdiagonal.  The default value of @var{k} is 0, and the\n\
-vector is placed on the main diagonal.  For example:\n\
+@var{-k}-th subdiagonal.  The default value of @var{k} is 0, and the vector\n\
+is placed on the main diagonal.  For example:\n\
 \n\
 @example\n\
 @group\n\
@@ -2595,10 +2604,11 @@
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} permute (@var{A}, @var{perm})\n\
 Return the generalized transpose for an N-D array object @var{A}.\n\
+\n\
 The permutation vector @var{perm} must contain the elements\n\
 @code{1:ndims (A)} (in any order, but each element must appear only once).\n\
 \n\
-The @var{N}th dimension of @var{A} gets remapped to dimension \n\
+The @var{N}th dimension of @var{A} gets remapped to dimension\n\
 @code{@var{PERM}(@var{N})}.  For example:\n\
 \n\
 @example\n\
@@ -2627,7 +2637,9 @@
 DEFUN (ipermute, args, ,
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} ipermute (@var{A}, @var{iperm})\n\
-The inverse of the @code{permute} function.  The expression\n\
+The inverse of the @code{permute} function.\n\
+\n\
+The expression\n\
 \n\
 @example\n\
 ipermute (permute (A, perm), perm)\n\
@@ -2667,7 +2679,8 @@
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} ndims (@var{a})\n\
 Return the number of dimensions of @var{a}.\n\
-For any array, the result will always be larger than or equal to 2.\n\
+\n\
+For any array, the result will always be greater than or equal to 2.\n\
 Trailing singleton dimensions are not counted.\n\
 \n\
 @example\n\
@@ -2694,6 +2707,7 @@
 @deftypefn  {Built-in Function} {} numel (@var{a})\n\
 @deftypefnx {Built-in Function} {} numel (@var{a}, @var{idx1}, @var{idx2}, @dots{})\n\
 Return the number of elements in the object @var{a}.\n\
+\n\
 Optionally, if indices @var{idx1}, @var{idx2}, @dots{} are supplied,\n\
 return the number of elements that would result from the indexing\n\
 \n\
@@ -2831,8 +2845,9 @@
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} size_equal (@var{a}, @var{b}, @dots{})\n\
 Return true if the dimensions of all arguments agree.\n\
+\n\
 Trailing singleton dimensions are ignored.\n\
-Called with a single or no argument, size_equal returns true.\n\
+When called with a single or no argument @code{size_equal} returns true.\n\
 @seealso{size, numel, ndims}\n\
 @end deftypefn")
 {
@@ -3167,8 +3182,9 @@
        "-*- texinfo -*-\n\
 @deftypefn  {Built-in Function} {} sumsq (@var{x})\n\
 @deftypefnx {Built-in Function} {} sumsq (@var{x}, @var{dim})\n\
-Sum of squares of elements along dimension @var{dim}.  If @var{dim}\n\
-is omitted, it defaults to the first non-singleton dimension.\n\
+Sum of squares of elements along dimension @var{dim}.\n\
+\n\
+If @var{dim} is omitted, it defaults to the first non-singleton dimension.\n\
 \n\
 This function is conceptually equivalent to computing\n\
 \n\
@@ -3240,6 +3256,7 @@
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} isinteger (@var{x})\n\
 Return true if @var{x} is an integer object (int8, uint8, int16, etc.).\n\
+\n\
 Note that @w{@code{isinteger (14)}} is false because numeric constants in\n\
 Octave are double precision floating point values.\n\
 @seealso{isfloat, ischar, islogical, isnumeric, isa}\n\
@@ -3276,6 +3293,7 @@
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} isfloat (@var{x})\n\
 Return true if @var{x} is a floating-point numeric object.\n\
+\n\
 Objects of class double or single are floating-point objects.\n\
 @seealso{isinteger, ischar, islogical, isnumeric, isa}\n\
 @end deftypefn")
@@ -3297,10 +3315,13 @@
        "-*- texinfo -*-\n\
 @deftypefn  {Built-in Function} {} complex (@var{x})\n\
 @deftypefnx {Built-in Function} {} complex (@var{re}, @var{im})\n\
-Return a complex result from real arguments.  With 1 real argument @var{x},\n\
-return the complex result @code{@var{x} + 0i}.  With 2 real arguments,\n\
-return the complex result @code{@var{re} + @var{im}}.  @code{complex} can\n\
-often be more convenient than expressions such as @code{a + i*b}.\n\
+Return a complex value from real arguments.\n\
+\n\
+With 1 real argument @var{x}, return the complex result @code{@var{x} + 0i}.\n\
+\n\
+With 2 real arguments, return the complex result @code{@var{re} + @var{im}}.\n\
+@code{complex} can often be more convenient than expressions such as\n\
+@code{a + i*b}.\n\
 For example:\n\
 \n\
 @example\n\
@@ -3598,6 +3619,7 @@
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} isreal (@var{x})\n\
 Return true if @var{x} is a non-complex matrix or scalar.\n\
+\n\
 For compatibility with @sc{matlab}, this includes logical and character\n\
 matrices.\n\
 @seealso{iscomplex, isnumeric, isa}\n\
@@ -3617,7 +3639,7 @@
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} isempty (@var{a})\n\
 Return true if @var{a} is an empty matrix (any one of its dimensions is\n\
-zero).  Otherwise, return false.\n\
+zero).\n\
 @seealso{isnull, isa}\n\
 @end deftypefn")
 {
@@ -3640,8 +3662,9 @@
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} isnumeric (@var{x})\n\
 Return true if @var{x} is a numeric object, i.e., an integer, real, or\n\
-complex array.  Logical and character arrays are not considered to be\n\
-numeric.\n\
+complex array.\n\
+\n\
+Logical and character arrays are not considered to be numeric.\n\
 @seealso{isinteger, isfloat, isreal, iscomplex, islogical, ischar, iscell, isstruct, isa}\n\
 @end deftypefn")
 {
@@ -4366,13 +4389,15 @@
 @deftypefnx {Built-in Function} {} ones ([@var{m} @var{n} @dots{}])\n\
 @deftypefnx {Built-in Function} {} ones (@dots{}, @var{class})\n\
 Return a matrix or N-dimensional array whose elements are all 1.\n\
+\n\
 If invoked with a single scalar integer argument @var{n}, return a square\n\
-@nospell{NxN} matrix.  If invoked with two or more scalar\n\
-integer arguments, or a vector of integer values, return an array with\n\
-the given dimensions.\n\
-\n\
-If you need to create a matrix whose values are all the same, you should\n\
-use an expression like\n\
+@nospell{NxN} matrix.\n\
+\n\
+If invoked with two or more scalar integer arguments, or a vector of integer\n\
+values, return an array with the given dimensions.\n\
+\n\
+To create a constant matrix whose values are all the same use an expression\n\
+such as\n\
 \n\
 @example\n\
 val_matrix = val * ones (m, n)\n\
@@ -4415,10 +4440,12 @@
 @deftypefnx {Built-in Function} {} zeros ([@var{m} @var{n} @dots{}])\n\
 @deftypefnx {Built-in Function} {} zeros (@dots{}, @var{class})\n\
 Return a matrix or N-dimensional array whose elements are all 0.\n\
+\n\
 If invoked with a single scalar integer argument, return a square\n\
-@nospell{NxN} matrix.  If invoked with two or more scalar\n\
-integer arguments, or a vector of integer values, return an array with\n\
-the given dimensions.\n\
+@nospell{NxN} matrix.\n\
+\n\
+If invoked with two or more scalar integer arguments, or a vector of integer\n\
+values, return an array with the given dimensions.\n\
 \n\
 The optional argument @var{class} specifies the class of the return array\n\
 and defaults to double.  For example:\n\
@@ -4474,10 +4501,14 @@
 @end example\n\
 \n\
 When called with no arguments, return a scalar with the value @samp{Inf}.\n\
+\n\
 When called with a single argument, return a square matrix with the dimension\n\
-specified.  When called with more than one scalar argument the first two\n\
-arguments are taken as the number of rows and columns and any further\n\
-arguments specify additional matrix dimensions.\n\
+specified.\n\
+\n\
+When called with more than one scalar argument the first two arguments are\n\
+taken as the number of rows and columns and any further arguments specify\n\
+additional matrix dimensions.\n\
+\n\
 The optional argument @var{class} specifies the return type and may be\n\
 either @qcode{\"double\"} or @qcode{\"single\"}.\n\
 @seealso{isinf, NaN}\n\
@@ -4518,6 +4549,7 @@
 @deftypefnx {Built-in Function} {} NaN (@dots{}, @var{class})\n\
 Return a scalar, matrix, or N-dimensional array whose elements are all equal\n\
 to the IEEE symbol NaN (Not a Number).\n\
+\n\
 NaN is the result of operations which do not produce a well defined numerical\n\
 result.  Common operations which produce a NaN are arithmetic with infinity\n\
 @tex\n\
@@ -4529,14 +4561,19 @@
 and any operation involving another NaN value (5 + NaN).\n\
 \n\
 Note that NaN always compares not equal to NaN (NaN != NaN).  This behavior\n\
-is specified by the IEEE standard for floating point arithmetic.  To\n\
-find NaN values, use the @code{isnan} function.\n\
+is specified by the IEEE standard for floating point arithmetic.  To find\n\
+NaN values, use the @code{isnan} function.\n\
 \n\
 When called with no arguments, return a scalar with the value @samp{NaN}.\n\
+\n\
 When called with a single argument, return a square matrix with the dimension\n\
-specified.  When called with more than one scalar argument the first two\n\
-arguments are taken as the number of rows and columns and any further\n\
-arguments specify additional matrix dimensions.\n\
+specified.\n\
+\n\
+When called with more than one scalar argument the first two arguments are\n\
+taken as the number of rows and columns and any further arguments specify\n\
+additional matrix dimensions.\n\
+\n\
+\n\
 The optional argument @var{class} specifies the return type and may be\n\
 either @qcode{\"double\"} or @qcode{\"single\"}.\n\
 @seealso{isnan, Inf}\n\
@@ -4573,7 +4610,9 @@
 @deftypefnx {Built-in Function} {} e (@var{n}, @var{m}, @var{k}, @dots{})\n\
 @deftypefnx {Built-in Function} {} e (@dots{}, @var{class})\n\
 Return a scalar, matrix, or N-dimensional array whose elements are all equal\n\
-to the base of natural logarithms.  The constant\n\
+to the base of natural logarithms.\n\
+\n\
+The constant\n\
 @tex\n\
 $e$ satisfies the equation $\\log (e) = 1$.\n\
 @end tex\n\
@@ -4581,11 +4620,15 @@
 @samp{e} satisfies the equation @code{log} (e) = 1.\n\
 @end ifnottex\n\
 \n\
-When called with no arguments, return a scalar with the value @math{e}.  When\n\
-called with a single argument, return a square matrix with the dimension\n\
-specified.  When called with more than one scalar argument the first two\n\
-arguments are taken as the number of rows and columns and any further\n\
-arguments specify additional matrix dimensions.\n\
+When called with no arguments, return a scalar with the value @math{e}.\n\
+\n\
+When called with a single argument, return a square matrix with the dimension\n\
+specified.\n\
+\n\
+When called with more than one scalar argument the first two arguments are\n\
+taken as the number of rows and columns and any further arguments specify\n\
+additional matrix dimensions.\n\
+\n\
 The optional argument @var{class} specifies the return type and may be\n\
 either @qcode{\"double\"} or @qcode{\"single\"}.\n\
 @seealso{log, exp, pi, I}\n\
@@ -4608,10 +4651,12 @@
 @deftypefnx {Built-in Function} {} eps (@var{n}, @var{m}, @var{k}, @dots{})\n\
 @deftypefnx {Built-in Function} {} eps (@dots{}, @var{class})\n\
 Return a scalar, matrix or N-dimensional array whose elements are all eps,\n\
-the machine precision.  More precisely, @code{eps} is the relative spacing\n\
-between any two adjacent numbers in the machine's floating point system.\n\
-This number is obviously system dependent.  On machines that support IEEE\n\
-floating point arithmetic, @code{eps} is approximately\n\
+the machine precision.\n\
+\n\
+More precisely, @code{eps} is the relative spacing between any two adjacent\n\
+numbers in the machine's floating point system.  This number is obviously\n\
+system dependent.  On machines that support IEEE floating point arithmetic,\n\
+@code{eps} is approximately\n\
 @tex\n\
 $2.2204\\times10^{-16}$ for double precision and $1.1921\\times10^{-7}$\n\
 @end tex\n\
@@ -4622,13 +4667,14 @@
 \n\
 When called with no arguments, return a scalar with the value\n\
 @code{eps (1.0)}.\n\
-Given a single argument @var{x}, return the distance between @var{x} and\n\
-the next largest value.\n\
+\n\
+Given a single argument @var{x}, return the distance between @var{x} and the\n\
+next largest value.\n\
+\n\
 When called with more than one argument the first two arguments are taken as\n\
-the number of rows and columns and any further\n\
-arguments specify additional matrix dimensions.\n\
-The optional argument @var{class} specifies the return type and may be\n\
-either @qcode{\"double\"} or @qcode{\"single\"}.\n\
+the number of rows and columns and any further arguments specify additional\n\
+matrix dimensions.  The optional argument @var{class} specifies the return\n\
+type and may be either @qcode{\"double\"} or @qcode{\"single\"}.\n\
 @seealso{realmax, realmin, intmax, bitmax}\n\
 @end deftypefn")
 {
@@ -4738,6 +4784,7 @@
 @ifnottex\n\
 diameter.\n\
 @end ifnottex\n\
+\n\
 Internally, @code{pi} is computed as @samp{4.0 * atan (1.0)}.\n\
 \n\
 When called with no arguments, return a scalar with the value of\n\
@@ -4747,10 +4794,14 @@
 @ifnottex\n\
 pi.\n\
 @end ifnottex\n\
+\n\
 When called with a single argument, return a square matrix with the dimension\n\
-specified.  When called with more than one scalar argument the first two\n\
-arguments are taken as the number of rows and columns and any further\n\
-arguments specify additional matrix dimensions.\n\
+specified.\n\
+\n\
+When called with more than one scalar argument the first two arguments are\n\
+taken as the number of rows and columns and any further arguments specify\n\
+additional matrix dimensions.\n\
+\n\
 The optional argument @var{class} specifies the return type and may be\n\
 either @qcode{\"double\"} or @qcode{\"single\"}.\n\
 @seealso{e, I}\n\
@@ -4772,9 +4823,10 @@
 @deftypefnx {Built-in Function} {} realmax (@var{n}, @var{m})\n\
 @deftypefnx {Built-in Function} {} realmax (@var{n}, @var{m}, @var{k}, @dots{})\n\
 @deftypefnx {Built-in Function} {} realmax (@dots{}, @var{class})\n\
-Return a scalar, matrix or N-dimensional array whose elements are all equal\n\
-to the largest floating point number that is representable.  The actual\n\
-value is system dependent.  On machines that support IEEE\n\
+Return a scalar, matrix, or N-dimensional array whose elements are all equal\n\
+to the largest floating point number that is representable.\n\
+\n\
+The actual value is system dependent.  On machines that support IEEE\n\
 floating point arithmetic, @code{realmax} is approximately\n\
 @tex\n\
 $1.7977\\times10^{308}$ for double precision and $3.4028\\times10^{38}$\n\
@@ -4786,10 +4838,14 @@
 \n\
 When called with no arguments, return a scalar with the value\n\
 @code{realmax (@qcode{\"double\"})}.\n\
+\n\
 When called with a single argument, return a square matrix with the dimension\n\
-specified.  When called with more than one scalar argument the first two\n\
-arguments are taken as the number of rows and columns and any further\n\
-arguments specify additional matrix dimensions.\n\
+specified.\n\
+\n\
+When called with more than one scalar argument the first two arguments are\n\
+taken as the number of rows and columns and any further arguments specify\n\
+additional matrix dimensions.\n\
+\n\
 The optional argument @var{class} specifies the return type and may be\n\
 either @qcode{\"double\"} or @qcode{\"single\"}.\n\
 @seealso{realmin, intmax, bitmax, eps}\n\
@@ -4806,8 +4862,9 @@
 @deftypefnx {Built-in Function} {} realmin (@var{n}, @var{m})\n\
 @deftypefnx {Built-in Function} {} realmin (@var{n}, @var{m}, @var{k}, @dots{})\n\
 @deftypefnx {Built-in Function} {} realmin (@dots{}, @var{class})\n\
-Return a scalar, matrix or N-dimensional array whose elements are all equal\n\
+Return a scalar, matrix, or N-dimensional array whose elements are all equal\n\
 to the smallest normalized floating point number that is representable.\n\
+\n\
 The actual value is system dependent.  On machines that support\n\
 IEEE floating point arithmetic, @code{realmin} is approximately\n\
 @tex\n\
@@ -4820,10 +4877,14 @@
 \n\
 When called with no arguments, return a scalar with the value\n\
 @code{realmin (@qcode{\"double\"})}.\n\
+\n\
 When called with a single argument, return a square matrix with the dimension\n\
-specified.  When called with more than one scalar argument the first two\n\
-arguments are taken as the number of rows and columns and any further\n\
-arguments specify additional matrix dimensions.\n\
+specified.\n\
+\n\
+When called with more than one scalar argument the first two arguments are\n\
+taken as the number of rows and columns and any further arguments specify\n\
+additional matrix dimensions.\n\
+\n\
 The optional argument @var{class} specifies the return type and may be\n\
 either @qcode{\"double\"} or @qcode{\"single\"}.\n\
 @seealso{realmax, intmin, eps}\n\
@@ -4857,11 +4918,15 @@
 I, and its equivalents i, j, and J, are functions so any of the names may\n\
 be reused for other purposes (such as i for a counter variable).\n\
 \n\
-When called with no arguments, return a scalar with the value @math{i}.  When\n\
-called with a single argument, return a square matrix with the dimension\n\
-specified.  When called with more than one scalar argument the first two\n\
-arguments are taken as the number of rows and columns and any further\n\
-arguments specify additional matrix dimensions.\n\
+When called with no arguments, return a scalar with the value @math{i}.\n\
+\n\
+When called with a single argument, return a square matrix with the dimension\n\
+specified.\n\
+\n\
+When called with more than one scalar argument the first two arguments are\n\
+taken as the number of rows and columns and any further arguments specify\n\
+additional matrix dimensions.\n\
+\n\
 The optional argument @var{class} specifies the return type and may be\n\
 either @qcode{\"double\"} or @qcode{\"single\"}.\n\
 @seealso{e, pi, log, exp}\n\
@@ -4888,10 +4953,14 @@
 To find NA values, use the @code{isna} function.\n\
 \n\
 When called with no arguments, return a scalar with the value @samp{NA}.\n\
+\n\
 When called with a single argument, return a square matrix with the dimension\n\
-specified.  When called with more than one scalar argument the first two\n\
-arguments are taken as the number of rows and columns and any further\n\
-arguments specify additional matrix dimensions.\n\
+specified.\n\
+\n\
+When called with more than one scalar argument the first two arguments are\n\
+taken as the number of rows and columns and any further arguments specify\n\
+additional matrix dimensions.\n\
+\n\
 The optional argument @var{class} specifies the return type and may be\n\
 either @qcode{\"double\"} or @qcode{\"single\"}.\n\
 @seealso{isna}\n\
@@ -4912,10 +4981,12 @@
 @deftypefnx {Built-in Function} {} false (@var{n}, @var{m})\n\
 @deftypefnx {Built-in Function} {} false (@var{n}, @var{m}, @var{k}, @dots{})\n\
 Return a matrix or N-dimensional array whose elements are all logical 0.\n\
+\n\
 If invoked with a single scalar integer argument, return a square\n\
-matrix of the specified size.  If invoked with two or more scalar\n\
-integer arguments, or a vector of integer values, return an array with\n\
-given dimensions.\n\
+matrix of the specified size.\n\
+\n\
+If invoked with two or more scalar integer arguments, or a vector of integer\n\
+values, return an array with given dimensions.\n\
 @seealso{true}\n\
 @end deftypefn")
 {
@@ -4928,10 +4999,12 @@
 @deftypefnx {Built-in Function} {} true (@var{n}, @var{m})\n\
 @deftypefnx {Built-in Function} {} true (@var{n}, @var{m}, @var{k}, @dots{})\n\
 Return a matrix or N-dimensional array whose elements are all logical 1.\n\
+\n\
 If invoked with a single scalar integer argument, return a square\n\
-matrix of the specified size.  If invoked with two or more scalar\n\
-integer arguments, or a vector of integer values, return an array with\n\
-given dimensions.\n\
+matrix of the specified size.\n\
+\n\
+If invoked with two or more scalar integer arguments, or a vector of integer\n\
+values, return an array with given dimensions.\n\
 @seealso{false}\n\
 @end deftypefn")
 {
@@ -5059,12 +5132,15 @@
 @deftypefnx {Built-in Function} {} eye (@var{m}, @var{n})\n\
 @deftypefnx {Built-in Function} {} eye ([@var{m} @var{n}])\n\
 @deftypefnx {Built-in Function} {} eye (@dots{}, @var{class})\n\
-Return an identity matrix.  If invoked with a single scalar argument @var{n},\n\
-return a square @nospell{NxN} identity matrix.  If\n\
-supplied two scalar arguments (@var{m}, @var{n}), @code{eye} takes them to be\n\
-the number of rows and columns.  If given a vector with two elements,\n\
-@code{eye} uses the values of the elements as the number of rows and columns,\n\
-respectively.  For example:\n\
+Return an identity matrix.\n\
+\n\
+If invoked with a single scalar argument @var{n}, return a square\n\
+@nospell{NxN} identity matrix.\n\
+\n\
+If supplied two scalar arguments (@var{m}, @var{n}), @code{eye} takes them\n\
+to be the number of rows and columns.  If given a vector with two elements,\n\
+@code{eye} uses the values of the elements as the number of rows and\n\
+columns, respectively.  For example:\n\
 \n\
 @example\n\
 @group\n\
@@ -5094,9 +5170,9 @@
 val = zeros (n,m, \"uint8\")\n\
 @end example\n\
 \n\
-Calling @code{eye} with no arguments is equivalent to calling it\n\
-with an argument of 1.  Any negative dimensions are treated as zero. \n\
-These odd definitions are for compatibility with @sc{matlab}.\n\
+Calling @code{eye} with no arguments is equivalent to calling it with an\n\
+argument of 1.  Any negative dimensions are treated as zero.  These odd\n\
+definitions are for compatibility with @sc{matlab}.\n\
 @seealso{speye, ones, zeros}\n\
 @end deftypefn")
 {
@@ -5215,15 +5291,16 @@
 @deftypefn  {Built-in Function} {} linspace (@var{base}, @var{limit})\n\
 @deftypefnx {Built-in Function} {} linspace (@var{base}, @var{limit}, @var{n})\n\
 Return a row vector with @var{n} linearly spaced elements between\n\
-@var{base} and @var{limit}.  If the number of elements is greater than one,\n\
-then the endpoints @var{base} and @var{limit} are always included in\n\
-the range.  If @var{base} is greater than @var{limit}, the elements are\n\
-stored in decreasing order.  If the number of points is not specified, a\n\
-value of 100 is used.\n\
-\n\
-The @code{linspace} function always returns a row vector if both\n\
-@var{base} and @var{limit} are scalars.  If one, or both, of them are column\n\
-vectors, @code{linspace} returns a matrix.\n\
+@var{base} and @var{limit}.\n\
+\n\
+If the number of elements is greater than one, then the endpoints @var{base}\n\
+and @var{limit} are always included in the range.  If @var{base} is greater\n\
+than @var{limit}, the elements are stored in decreasing order.  If the\n\
+number of points is not specified, a value of 100 is used.\n\
+\n\
+The @code{linspace} function always returns a row vector if both @var{base}\n\
+and @var{limit} are scalars.  If one, or both, of them are column vectors,\n\
+@code{linspace} returns a matrix.\n\
 \n\
 For compatibility with @sc{matlab}, return the second argument (@var{limit})\n\
 if fewer than two values are requested.\n\
@@ -5400,8 +5477,10 @@
 @deftypefnx {Built-in Function} {} reshape (@var{A}, @dots{}, [], @dots{})\n\
 @deftypefnx {Built-in Function} {} reshape (@var{A}, @var{size})\n\
 Return a matrix with the specified dimensions (@var{m}, @var{n}, @dots{})\n\
-whose elements are taken from the matrix @var{A}.  The elements of the\n\
-matrix are accessed in column-major order (like Fortran arrays are stored).\n\
+whose elements are taken from the matrix @var{A}.\n\
+\n\
+The elements of the matrix are accessed in column-major order (like Fortran\n\
+arrays are stored).\n\
 \n\
 The following code demonstrates reshaping a 1x4 row vector into a 2x2 square\n\
 matrix.\n\
@@ -5415,8 +5494,8 @@
 @end example\n\
 \n\
 @noindent\n\
-Note that the total number of elements in the original\n\
-matrix (@code{prod (size (@var{A}))}) must match the total number of elements\n\
+Note that the total number of elements in the original matrix\n\
+(@code{prod (size (@var{A}))}) must match the total number of elements\n\
 in the new matrix (@code{prod ([@var{m} @var{n} @dots{}])}).\n\
 \n\
 A single dimension of the return matrix may be left unspecified and Octave\n\
@@ -5548,10 +5627,13 @@
 @deftypefn  {Built-in Function} {@var{v} =} vec (@var{x})\n\
 @deftypefnx {Built-in Function} {@var{v} =} vec (@var{x}, @var{dim})\n\
 Return the vector obtained by stacking the columns of the matrix @var{x}\n\
-one above the other.  Without @var{dim} this is equivalent to\n\
-@code{@var{x}(:)}.  If @var{dim} is supplied, the dimensions of @var{v}\n\
-are set to @var{dim} with all elements along the last dimension.\n\
-This is equivalent to @code{shiftdim (@var{x}(:), 1-@var{dim})}.\n\
+one above the other.\n\
+\n\
+Without @var{dim} this is equivalent to @code{@var{x}(:)}.\n\
+\n\
+If @var{dim} is supplied, the dimensions of @var{v} are set to @var{dim}\n\
+with all elements along the last dimension.  This is equivalent to\n\
+@code{shiftdim (@var{x}(:), 1-@var{dim})}.\n\
 @seealso{vech, resize, cat}\n\
 @end deftypefn")
 {
@@ -5613,6 +5695,7 @@
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} squeeze (@var{x})\n\
 Remove singleton dimensions from @var{x} and return the result.\n\
+\n\
 Note that for compatibility with @sc{matlab}, all objects have\n\
 a minimum of two dimensions and row vectors are left unchanged.\n\
 @seealso{reshape}\n\
@@ -5631,7 +5714,7 @@
 DEFUN (full, args, ,
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {@var{FM} =} full (@var{SM})\n\
-Return a full storage matrix from a sparse, diagonal, permutation matrix,\n\
+Return a full storage matrix from a sparse, diagonal, or permutation matrix,\n\
 or a range.\n\
 @seealso{sparse, issparse}\n\
 @end deftypefn")
@@ -5653,8 +5736,9 @@
 @deftypefn  {Built-in Function} {} norm (@var{A})\n\
 @deftypefnx {Built-in Function} {} norm (@var{A}, @var{p})\n\
 @deftypefnx {Built-in Function} {} norm (@var{A}, @var{p}, @var{opt})\n\
-Compute the p-norm of the matrix @var{A}.  If the second argument is\n\
-missing, @code{p = 2} is assumed.\n\
+Compute the p-norm of the matrix @var{A}.\n\
+\n\
+If the second argument is missing, @code{p = 2} is assumed.\n\
 \n\
 If @var{A} is a matrix (or sparse matrix):\n\
 \n\
@@ -5912,6 +5996,7 @@
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} transpose (@var{x})\n\
 Return the transpose of @var{x}.\n\
+\n\
 This function and @tcode{x.'} are equivalent.\n\
 @seealso{ctranspose}\n\
 @end deftypefn")
@@ -5943,6 +6028,7 @@
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} ctranspose (@var{x})\n\
 Return the complex conjugate transpose of @var{x}.\n\
+\n\
 This function and @tcode{x'} are equivalent.\n\
 @seealso{transpose}\n\
 @end deftypefn")
@@ -6018,6 +6104,7 @@
 @deftypefn  {Built-in Function} {} plus (@var{x}, @var{y})\n\
 @deftypefnx {Built-in Function} {} plus (@var{x1}, @var{x2}, @dots{})\n\
 This function and @w{@tcode{x + y}} are equivalent.\n\
+\n\
 If more arguments are given, the summation is applied\n\
 cumulatively from left to right:\n\
 \n\
@@ -6048,6 +6135,7 @@
 @deftypefn  {Built-in Function} {} mtimes (@var{x}, @var{y})\n\
 @deftypefnx {Built-in Function} {} mtimes (@var{x1}, @var{x2}, @dots{})\n\
 Return the matrix multiplication product of inputs.\n\
+\n\
 This function and @w{@tcode{x * y}} are equivalent.\n\
 If more arguments are given, the multiplication is applied\n\
 cumulatively from left to right:\n\
@@ -6068,6 +6156,7 @@
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} mrdivide (@var{x}, @var{y})\n\
 Return the matrix right division of @var{x} and @var{y}.\n\
+\n\
 This function and @w{@tcode{x / y}} are equivalent.\n\
 @seealso{mldivide, rdivide, plus, minus}\n\
 @end deftypefn")
@@ -6079,6 +6168,7 @@
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} mpower (@var{x}, @var{y})\n\
 Return the matrix power operation of @var{x} raised to the @var{y} power.\n\
+\n\
 This function and @w{@tcode{x ^ y}} are equivalent.\n\
 @seealso{power, mtimes, plus, minus}\n\
 @end deftypefn")
@@ -6090,6 +6180,7 @@
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} mldivide (@var{x}, @var{y})\n\
 Return the matrix left division of @var{x} and @var{y}.\n\
+\n\
 This function and @w{@tcode{x @xbackslashchar{} y}} are equivalent.\n\
 @seealso{mrdivide, ldivide, rdivide}\n\
 @end deftypefn")
@@ -6121,6 +6212,7 @@
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} eq (@var{x}, @var{y})\n\
 Return true if the two inputs are equal.\n\
+\n\
 This function is equivalent to @w{@code{x == y}}.\n\
 @seealso{ne, isequal, le, ge, gt, ne, lt}\n\
 @end deftypefn")
@@ -6152,6 +6244,7 @@
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} ne (@var{x}, @var{y})\n\
 Return true if the two inputs are not equal.\n\
+\n\
 This function is equivalent to @w{@code{x != y}}.\n\
 @seealso{eq, isequal, le, ge, lt}\n\
 @end deftypefn")
@@ -6164,6 +6257,7 @@
 @deftypefn  {Built-in Function} {} times (@var{x}, @var{y})\n\
 @deftypefnx {Built-in Function} {} times (@var{x1}, @var{x2}, @dots{})\n\
 Return the element-by-element multiplication product of inputs.\n\
+\n\
 This function and @w{@tcode{x .* y}} are equivalent.\n\
 If more arguments are given, the multiplication is applied\n\
 cumulatively from left to right:\n\
@@ -6184,6 +6278,7 @@
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} rdivide (@var{x}, @var{y})\n\
 Return the element-by-element right division of @var{x} and @var{y}.\n\
+\n\
 This function and @w{@tcode{x ./ y}} are equivalent.\n\
 @seealso{ldivide, mrdivide, times, plus}\n\
 @end deftypefn")
@@ -6195,12 +6290,14 @@
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} power (@var{x}, @var{y})\n\
 Return the element-by-element operation of @var{x} raised to the\n\
-@var{y} power.  If several complex results are possible,\n\
-returns the one with smallest non-negative argument (angle).  Use\n\
-@code{realpow}, @code{realsqrt}, @code{cbrt}, or @code{nthroot} if a\n\
-real result is preferred.\n\
+@var{y} power.\n\
 \n\
 This function and @w{@tcode{x .^ y}} are equivalent.\n\
+\n\
+If several complex results are possible, returns the one with smallest\n\
+non-negative argument (angle).  Use @code{realpow}, @code{realsqrt},\n\
+@code{cbrt}, or @code{nthroot} if a real result is preferred.\n\
+\n\
 @seealso{mpower, realpow, realsqrt, cbrt, nthroot}\n\
 @end deftypefn")
 {
@@ -6211,6 +6308,7 @@
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} ldivide (@var{x}, @var{y})\n\
 Return the element-by-element left division of @var{x} and @var{y}.\n\
+\n\
 This function and @w{@tcode{x .@xbackslashchar{} y}} are equivalent.\n\
 @seealso{rdivide, mldivide, times, plus}\n\
 @end deftypefn")
@@ -6303,9 +6401,11 @@
 @deftypefnx {Built-in Function} {} toc ()\n\
 @deftypefnx {Built-in Function} {} toc (@var{id})\n\
 @deftypefnx {Built-in Function} {@var{val} =} toc (@dots{})\n\
-Set or check a wall-clock timer.  Calling @code{tic} without an\n\
-output argument sets the internal timer state.  Subsequent calls\n\
-to @code{toc} return the number of seconds since the timer was set.\n\
+Set or check a wall-clock timer.\n\
+\n\
+Calling @code{tic} without an output argument sets the internal timer state.\n\
+Subsequent calls to @code{toc} return the number of seconds since the timer\n\
+was set.\n\
 For example,\n\
 \n\
 @example\n\
@@ -6434,12 +6534,16 @@
 DEFUN (cputime, args, ,
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {[@var{total}, @var{user}, @var{system}] =} cputime ();\n\
-Return the CPU time used by your Octave session.  The first output is\n\
-the total time spent executing your process and is equal to the sum of\n\
-second and third outputs, which are the number of CPU seconds spent\n\
-executing in user mode and the number of CPU seconds spent executing in\n\
-system mode, respectively.  If your system does not have a way to report\n\
-CPU time usage, @code{cputime} returns 0 for each of its output values.\n\
+Return the CPU time used by your Octave session.\n\
+\n\
+The first output is the total time spent executing your process and is equal\n\
+to the sum of second and third outputs, which are the number of CPU seconds\n\
+spent executing in user mode and the number of CPU seconds spent executing\n\
+in system mode, respectively.\n\
+\n\
+If your system does not have a way to report CPU time usage, @code{cputime}\n\
+returns 0 for each of its output values.\n\
+\n\
 Note that because Octave used some CPU time to start, it is reasonable\n\
 to check to see if @code{cputime} works by checking to see if the total\n\
 CPU time used is nonzero.\n\
@@ -6505,8 +6609,9 @@
 @deftypefnx {Built-in Function} {[@var{s}, @var{i}] =} sort (@var{x}, @var{dim})\n\
 @deftypefnx {Built-in Function} {[@var{s}, @var{i}] =} sort (@var{x}, @var{mode})\n\
 @deftypefnx {Built-in Function} {[@var{s}, @var{i}] =} sort (@var{x}, @var{dim}, @var{mode})\n\
-Return a copy of @var{x} with the elements arranged in increasing\n\
-order.  For matrices, @code{sort} orders the elements within columns\n\
+Return a copy of @var{x} with the elements arranged in increasing order.\n\
+\n\
+For matrices, @code{sort} orders the elements within columns\n\
 \n\
 For example:\n\
 \n\
@@ -6918,8 +7023,10 @@
 @deftypefnx {Built-in Function} {} issorted (@var{a}, \"rows\", @var{mode})\n\
 Return true if the array is sorted according to @var{mode}, which\n\
 may be either @qcode{\"ascending\"}, @qcode{\"descending\"}, or\n\
-@qcode{\"either\"}.  By default,  @var{mode} is @qcode{\"ascending\"}.  NaNs\n\
-are treated in the same manner as @code{sort}.\n\
+@qcode{\"either\"}.\n\
+\n\
+By default,  @var{mode} is @qcode{\"ascending\"}.  NaNs are treated in the\n\
+same manner as @code{sort}.\n\
 \n\
 If the optional argument @qcode{\"rows\"} is supplied, check whether\n\
 the array is sorted by rows as output by the function @code{sortrows}\n\
@@ -7026,20 +7133,22 @@
 @deftypefn  {Built-in Function} {} nth_element (@var{x}, @var{n})\n\
 @deftypefnx {Built-in Function} {} nth_element (@var{x}, @var{n}, @var{dim})\n\
 Select the n-th smallest element of a vector, using the ordering defined by\n\
-@code{sort}.  In other words, the result is equivalent to\n\
-@code{sort(@var{x})(@var{n})}.\n\
+@code{sort}.\n\
+\n\
+The result is equivalent to @code{sort(@var{x})(@var{n})}.\n\
+\n\
 @var{n} can also be a contiguous range, either ascending @code{l:u}\n\
 or descending @code{u:-1:l}, in which case a range of elements is returned.\n\
+\n\
 If @var{x} is an array, @code{nth_element} operates along the dimension\n\
 defined by @var{dim}, or the first non-singleton dimension if @var{dim} is\n\
 not given.\n\
 \n\
-nth_element encapsulates the C++ standard library algorithms nth_element and\n\
-partial_sort.  On average, the complexity of the operation is O(M*log(K)),\n\
-where @w{@code{M = size (@var{x}, @var{dim})}} and\n\
-@w{@code{K = length (@var{n})}}.\n\
-This function is intended for cases where the ratio K/M is small; otherwise,\n\
-it may be better to use @code{sort}.\n\
+Programming Note: nth_element encapsulates the C++ standard library\n\
+algorithms nth_element and partial_sort.  On average, the complexity of the\n\
+operation is O(M*log(K)), where @w{@code{M = size (@var{x}, @var{dim})}} and\n\
+@w{@code{K = length (@var{n})}}.  This function is intended for cases where\n\
+the ratio K/M is small; otherwise, it may be better to use @code{sort}.\n\
 @seealso{sort, min, max}\n\
 @end deftypefn")
 {
@@ -7452,11 +7561,13 @@
 @deftypefn  {Built-in Function} {} merge (@var{mask}, @var{tval}, @var{fval})\n\
 @deftypefnx {Built-in Function} {} ifelse (@var{mask}, @var{tval}, @var{fval})\n\
 Merge elements of @var{true_val} and @var{false_val}, depending on the\n\
-value of @var{mask}.  If @var{mask} is a logical scalar, the other two\n\
-arguments can be arbitrary values.  Otherwise, @var{mask} must be a logical\n\
-array, and @var{tval}, @var{fval} should be arrays of matching class, or\n\
-cell arrays.  In the scalar mask case, @var{tval} is returned if @var{mask}\n\
-is true, otherwise @var{fval} is returned.\n\
+value of @var{mask}.\n\
+\n\
+If @var{mask} is a logical scalar, the other two arguments can be arbitrary\n\
+values.  Otherwise, @var{mask} must be a logical array, and @var{tval},\n\
+@var{fval} should be arrays of matching class, or cell arrays.  In the\n\
+scalar mask case, @var{tval} is returned if @var{mask} is true, otherwise\n\
+@var{fval} is returned.\n\
 \n\
 In the array mask case, both @var{tval} and @var{fval} must be either\n\
 scalars or arrays with dimensions equal to @var{mask}.  The result is\n\
@@ -7469,8 +7580,8 @@
 @end group\n\
 @end example\n\
 \n\
-@var{mask} can also be arbitrary numeric type, in which case\n\
-it is first converted to logical.\n\
+@var{mask} can also be arbitrary numeric type, in which case it is first\n\
+converted to logical.\n\
 @seealso{logical, diff}\n\
 @end deftypefn")
 {
@@ -7795,15 +7906,14 @@
 DEFUN (repelems, args, ,
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} repelems (@var{x}, @var{r})\n\
-Construct a vector of repeated elements from @var{x}.  @var{r}\n\
-is a 2x@var{N} integer matrix specifying which elements to repeat and\n\
-how often to repeat each element.\n\
-\n\
-Entries in the first row, @var{r}(1,j), select an element to repeat.\n\
-The corresponding entry in the second row, @var{r}(2,j), specifies\n\
-the repeat count.  If @var{x} is a matrix then the columns of @var{x} are\n\
-imagined to be stacked on top of each other for purposes of the selection\n\
-index.  A row vector is always returned.\n\
+Construct a vector of repeated elements from @var{x}.\n\
+\n\
+@var{r} is a 2x@var{N} integer matrix specifying which elements to repeat and\n\
+how often to repeat each element.  Entries in the first row, @var{r}(1,j),\n\
+select an element to repeat.  The corresponding entry in the second row,\n\
+@var{r}(2,j), specifies the repeat count.  If @var{x} is a matrix then the\n\
+columns of @var{x} are imagined to be stacked on top of each other for\n\
+purposes of the selection index.  A row vector is always returned.\n\
 \n\
 Conceptually the result is calculated as follows:\n\
 \n\
@@ -7993,8 +8103,10 @@
 @deftypefn  {Built-in Function} {@var{x} =} base64_decode (@var{s})\n\
 @deftypefnx {Built-in Function} {@var{x} =} base64_decode (@var{s}, @var{dims})\n\
 Decode the double matrix or array @var{x} from the base64 encoded string\n\
-@var{s}.  The optional input parameter @var{dims} should be a vector\n\
-containing the dimensions of the decoded array.\n\
+@var{s}.\n\
+\n\
+The optional input parameter @var{dims} should be a vector containing the\n\
+dimensions of the decoded array.\n\
 @seealso{base64_encode}\n\
 @end deftypefn")
 {
--- a/libinterp/corefcn/debug.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/debug.cc	Sun May 10 21:37:19 2015 -0700
@@ -746,9 +746,10 @@
 @deftypefnx {Built-in Function} {@var{brk_list} =} dbstatus (\"@var{func}\")\n\
 Report the location of active breakpoints.\n\
 \n\
-When called with no input or output arguments, print the list of\n\
-all functions with breakpoints and the line numbers where those\n\
-breakpoints are set.\n\
+When called with no input or output arguments, print the list of all\n\
+functions with breakpoints and the line numbers where those breakpoints are\n\
+set.\n\
+\n\
 If a function name @var{func} is specified then only report breakpoints\n\
 for the named function.\n\
 \n\
@@ -864,8 +865,8 @@
 DEFUN (dbwhere, , ,
        "-*- texinfo -*-\n\
 @deftypefn {Command} {} dbwhere\n\
-In debugging mode, report the current file and line number where\n\
-execution is stopped.\n\
+In debugging mode, report the current file and line number where execution\n\
+is stopped.\n\
 @seealso{dbstatus, dbcont, dbstep, dbup}\n\
 @end deftypefn")
 {
@@ -955,9 +956,11 @@
 Display a script file with line numbers.\n\
 \n\
 When called with no arguments in debugging mode, display the script file\n\
-currently being debugged.  An optional range specification can be used to\n\
-list only a portion of the file.  The special keyword @qcode{\"end\"} is a\n\
-valid line number specification for the last line of the file.\n\
+currently being debugged.\n\
+\n\
+An optional range specification can be used to list only a portion of the\n\
+file.  The special keyword @qcode{\"end\"} is a valid line number\n\
+specification for the last line of the file.\n\
 \n\
 When called with the name of a function, list that script file with line\n\
 numbers.\n\
@@ -1108,8 +1111,9 @@
 @deftypefn  {Command} {} dblist\n\
 @deftypefnx {Command} {} dblist @var{n}\n\
 In debugging mode, list @var{n} lines of the function being debugged\n\
-centered around the current line to be executed.  If unspecified @var{n}\n\
-defaults to 10 (+/- 5 lines)\n\
+centered around the current line to be executed.\n\
+\n\
+If unspecified @var{n} defaults to 10 (+/- 5 lines)\n\
 @seealso{dbwhere, dbtype}\n\
 @end deftypefn")
 {
@@ -1304,11 +1308,14 @@
 @deftypefnx {Command} {} dbstack @var{-completenames}\n\
 @deftypefnx {Built-in Function} {[@var{stack}, @var{idx}] =} dbstack (@dots{})\n\
 Display or return current debugging function stack information.\n\
+\n\
 With optional argument @var{n}, omit the @var{n} innermost stack frames.\n\
 \n\
 Although accepted, the argument @var{-completenames} is silently ignored.\n\
-Octave always returns absolute file names.  The arguments @var{n} and\n\
-@var{-completenames} can be both specified in any order.\n\
+Octave always returns absolute file names.\n\
+\n\
+The arguments @var{n} and @var{-completenames} can be both specified in any\n\
+order.\n\
 \n\
 The optional return argument @var{stack} is a struct array with the\n\
 following fields:\n\
@@ -1375,6 +1382,7 @@
 @deftypefn  {Command} {} dbup\n\
 @deftypefnx {Command} {} dbup @var{n}\n\
 In debugging mode, move up the execution stack @var{n} frames.\n\
+\n\
 If @var{n} is omitted, move up one frame.\n\
 @seealso{dbstack, dbdown}\n\
 @end deftypefn")
@@ -1391,6 +1399,7 @@
 @deftypefn  {Command} {} dbdown\n\
 @deftypefnx {Command} {} dbdown @var{n}\n\
 In debugging mode, move down the execution stack @var{n} frames.\n\
+\n\
 If @var{n} is omitted, move down one frame.\n\
 @seealso{dbstack, dbup}\n\
 @end deftypefn")
@@ -1410,13 +1419,16 @@
 @deftypefnx {Command} {} dbstep out\n\
 @deftypefnx {Command} {} dbnext @dots{}\n\
 In debugging mode, execute the next @var{n} lines of code.\n\
-If @var{n} is omitted, execute the next single line of code.\n\
-If the next line of code is itself defined in terms of an m-file remain in\n\
-the existing function.\n\
+\n\
+If @var{n} is omitted, execute the next single line of code.  If the next\n\
+line of code is itself defined in terms of an m-file remain in the existing\n\
+function.\n\
 \n\
 Using @code{dbstep in} will cause execution of the next line to step into\n\
-any m-files defined on the next line.  Using @code{dbstep out} will cause\n\
-execution to continue until the current function returns.\n\
+any m-files defined on the next line.\n\
+\n\
+Using @code{dbstep out} will cause execution to continue until the current\n\
+function returns.\n\
 \n\
 @code{dbnext} is an alias for @code{dbstep}.\n\
 @seealso{dbcont, dbquit}\n\
@@ -1505,8 +1517,8 @@
 DEFUN (dbquit, args, ,
        "-*- texinfo -*-\n\
 @deftypefn {Command} {} dbquit\n\
-Quit debugging mode immediately without further code execution and\n\
-return to the Octave prompt.\n\
+Quit debugging mode immediately without further code execution and return to\n\
+the Octave prompt.\n\
 @seealso{dbcont, dbstep}\n\
 @end deftypefn")
 {
--- a/libinterp/corefcn/defaults.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/defaults.cc	Sun May 10 21:37:19 2015 -0700
@@ -482,12 +482,11 @@
 Query or set the internal variable that specifies the default text editor.\n\
 \n\
 The default value is taken from the environment variable @w{@env{EDITOR}}\n\
-when Octave starts.  If the\n\
-environment variable is not initialized, @w{@env{EDITOR}} will be set to\n\
-@qcode{\"emacs\"}.\n\
+when Octave starts.  If the environment variable is not initialized,\n\
+@w{@env{EDITOR}} will be set to @qcode{\"emacs\"}.\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
-variable is changed locally for the function and any subroutines it calls.  \n\
+variable is changed locally for the function and any subroutines it calls.\n\
 The original variable value is restored when exiting the function.\n\
 \n\
 @seealso{edit, edit_history}\n\
@@ -515,12 +514,14 @@
 @deftypefnx {Built-in Function} {} EXEC_PATH (@var{new_val}, \"local\")\n\
 Query or set the internal variable that specifies a colon separated\n\
 list of directories to append to the shell PATH when executing external\n\
-programs.  The initial value of is taken from the environment variable\n\
-@w{@env{OCTAVE_EXEC_PATH}}, but that value can be overridden by\n\
-the command line argument @option{--exec-path PATH}.\n\
+programs.\n\
+\n\
+The initial value of is taken from the environment variable\n\
+@w{@env{OCTAVE_EXEC_PATH}}, but that value can be overridden by the command\n\
+line argument @option{--exec-path PATH}.\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
-variable is changed locally for the function and any subroutines it calls.  \n\
+variable is changed locally for the function and any subroutines it calls.\n\
 The original variable value is restored when exiting the function.\n\
 \n\
 @seealso{IMAGE_PATH, OCTAVE_HOME}\n\
@@ -555,7 +556,7 @@
 list of directories in which to search for image files.\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
-variable is changed locally for the function and any subroutines it calls.  \n\
+variable is changed locally for the function and any subroutines it calls.\n\
 The original variable value is restored when exiting the function.\n\
 \n\
 @seealso{EXEC_PATH, OCTAVE_HOME}\n\
@@ -580,7 +581,6 @@
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} OCTAVE_HOME ()\n\
 Return the name of the top-level Octave installation directory.\n\
-\n\
 @seealso{EXEC_PATH, IMAGE_PATH}\n\
 @end deftypefn")
 {
--- a/libinterp/corefcn/det.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/det.cc	Sun May 10 21:37:19 2015 -0700
@@ -55,8 +55,8 @@
 \n\
 Return an estimate of the reciprocal condition number if requested.\n\
 \n\
-Routines from @sc{lapack} are used for full matrices and code from\n\
-@sc{umfpack} is used for sparse matrices.\n\
+Programming Notes: Routines from @sc{lapack} are used for full matrices and\n\
+code from @sc{umfpack} is used for sparse matrices.\n\
 \n\
 The determinant should not be used to check a matrix for singularity.\n\
 For that, use any of the condition number functions: @code{cond},\n\
--- a/libinterp/corefcn/dirfns.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/dirfns.cc	Sun May 10 21:37:19 2015 -0700
@@ -174,8 +174,8 @@
 \n\
 If an error occurs, return an empty cell array in @var{files}.\n\
 If successful, @var{err} is 0 and @var{msg} is an empty string.\n\
-Otherwise, @var{err} is nonzero and @var{msg} contains a\n\
-system-dependent error message.\n\
+Otherwise, @var{err} is nonzero and @var{msg} contains a system-dependent\n\
+error message.\n\
 @seealso{ls, dir, glob, what}\n\
 @end deftypefn")
 {
@@ -310,13 +310,14 @@
 @deftypefnx {Built-in Function} {[@var{status}, @var{msg}, @var{msgid}] =} rmdir (@dots{})\n\
 Remove the directory named @var{dir}.\n\
 \n\
+If the optional second parameter is supplied with value @qcode{\"s\"},\n\
+recursively remove all subdirectories as well.\n\
+\n\
 If successful, @var{status} is 1, and @var{msg}, @var{msgid} are empty\n\
 character strings ("").  Otherwise, @var{status} is 0, @var{msg} contains a\n\
 system-dependent error message, and @var{msgid} contains a unique message\n\
 identifier.\n\
 \n\
-If the optional second parameter is supplied with value @qcode{\"s\"},\n\
-recursively remove all subdirectories as well.\n\
 @seealso{mkdir, confirm_recursive_rmdir, pwd}\n\
 @end deftypefn")
 {
@@ -386,8 +387,8 @@
 Create a new link (also known as a hard link) to an existing file.\n\
 \n\
 If successful, @var{err} is 0 and @var{msg} is an empty string.\n\
-Otherwise, @var{err} is nonzero and @var{msg} contains a\n\
-system-dependent error message.\n\
+Otherwise, @var{err} is nonzero and @var{msg} contains a system-dependent\n\
+error message.\n\
 @seealso{symlink, unlink, readlink, lstat}\n\
 @end deftypefn")
 {
@@ -433,8 +434,8 @@
 Create a symbolic link @var{new} which contains the string @var{old}.\n\
 \n\
 If successful, @var{err} is 0 and @var{msg} is an empty string.\n\
-Otherwise, @var{err} is nonzero and @var{msg} contains a\n\
-system-dependent error message.\n\
+Otherwise, @var{err} is nonzero and @var{msg} contains a system-dependent\n\
+error message.\n\
 @seealso{link, unlink, readlink, lstat}\n\
 @end deftypefn")
 {
@@ -524,8 +525,8 @@
 Change the name of file @var{old} to @var{new}.\n\
 \n\
 If successful, @var{err} is 0 and @var{msg} is an empty string.\n\
-Otherwise, @var{err} is nonzero and @var{msg} contains a\n\
-system-dependent error message.\n\
+Otherwise, @var{err} is nonzero and @var{msg} contains a system-dependent\n\
+error message.\n\
 @seealso{movefile, copyfile, ls, dir}\n\
 @end deftypefn")
 {
@@ -569,8 +570,11 @@
 @deftypefn {Built-in Function} {} glob (@var{pattern})\n\
 Given an array of pattern strings (as a char array or a cell array) in\n\
 @var{pattern}, return a cell array of file names that match any of\n\
-them, or an empty cell array if no patterns match.  The pattern strings are\n\
-interpreted as filename globbing patterns (as they are used by Unix shells).\n\
+them, or an empty cell array if no patterns match.\n\
+\n\
+The pattern strings are interpreted as filename globbing patterns (as they\n\
+are used by Unix shells).\n\
+\n\
 Within a pattern\n\
 \n\
 @table @code\n\
@@ -670,6 +674,7 @@
 @deftypefn {Built-in Function} {} fnmatch (@var{pattern}, @var{string})\n\
 Return true or false for each element of @var{string} that matches any of\n\
 the elements of the string array @var{pattern}, using the rules of\n\
+\n\
 filename pattern matching.  For example:\n\
 \n\
 @example\n\
@@ -794,7 +799,7 @@
 will ask for confirmation before recursively removing a directory tree.\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
-variable is changed locally for the function and any subroutines it calls.  \n\
+variable is changed locally for the function and any subroutines it calls.\n\
 The original variable value is restored when exiting the function.\n\
 @seealso{rmdir}\n\
 @end deftypefn")
--- a/libinterp/corefcn/dlmread.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/dlmread.cc	Sun May 10 21:37:19 2015 -0700
@@ -163,9 +163,11 @@
 @deftypefnx {Built-in Function} {@var{data} =} dlmread (@var{file}, @var{sep}, @var{r0}, @var{c0})\n\
 @deftypefnx {Built-in Function} {@var{data} =} dlmread (@var{file}, @var{sep}, @var{range})\n\
 @deftypefnx {Built-in Function} {@var{data} =} dlmread (@dots{}, \"emptyvalue\", @var{EMPTYVAL})\n\
-Read the matrix @var{data} from a text file.  If not defined the separator\n\
-between fields is determined from the file itself.  Otherwise the\n\
-separation character is defined by @var{sep}.\n\
+Read the matrix @var{data} from a text file which uses the delimiter\n\
+@var{sep} between data values.\n\
+\n\
+If @var{sep} is not defined the separator between fields is determined from\n\
+the file itself.\n\
 \n\
 Given two scalar arguments @var{r0} and @var{c0}, these define the starting\n\
 row and column of the data to be read.  These values are indexed from zero,\n\
--- a/libinterp/corefcn/dot.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/dot.cc	Sun May 10 21:37:19 2015 -0700
@@ -106,10 +106,13 @@
 DEFUN (dot, args, ,
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} dot (@var{x}, @var{y}, @var{dim})\n\
-Compute the dot product of two vectors.  If @var{x} and @var{y}\n\
-are matrices, calculate the dot products along the first\n\
-non-singleton dimension.  If the optional argument @var{dim} is\n\
-given, calculate the dot products along this dimension.\n\
+Compute the dot product of two vectors.\n\
+\n\
+If @var{x} and @var{y} are matrices, calculate the dot products along the\n\
+first non-singleton dimension.\n\
+\n\
+If the optional argument @var{dim} is given, calculate the dot products\n\
+along this dimension.\n\
 \n\
 This is equivalent to\n\
 @code{sum (conj (@var{X}) .* @var{Y}, @var{dim})},\n\
@@ -281,11 +284,12 @@
 DEFUN (blkmm, args, ,
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} blkmm (@var{A}, @var{B})\n\
-Compute products of matrix blocks.  The blocks are given as\n\
-2-dimensional subarrays of the arrays @var{A}, @var{B}.\n\
-The size of @var{A} must have the form @code{[m,k,@dots{}]} and\n\
-size of @var{B} must be @code{[k,n,@dots{}]}.  The result is\n\
-then of size @code{[m,n,@dots{}]} and is computed as follows:\n\
+Compute products of matrix blocks.\n\
+\n\
+The blocks are given as 2-dimensional subarrays of the arrays @var{A},\n\
+@var{B}.  The size of @var{A} must have the form @code{[m,k,@dots{}]} and\n\
+size of @var{B} must be @code{[k,n,@dots{}]}.  The result is then of size\n\
+@code{[m,n,@dots{}]} and is computed as follows:\n\
 \n\
 @example\n\
 @group\n\
--- a/libinterp/corefcn/eig.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/eig.cc	Sun May 10 21:37:19 2015 -0700
@@ -43,7 +43,7 @@
 or a pair of matrices\n\
 \n\
 The algorithm used depends on whether there are one or two input\n\
-matrices, if they are real or complex and if they are symmetric\n\
+matrices, if they are real or complex, and if they are symmetric\n\
 (Hermitian if complex) or non-symmetric.\n\
 \n\
 The eigenvalues returned by @code{eig} are not ordered.\n\
--- a/libinterp/corefcn/error.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/error.cc	Sun May 10 21:37:19 2015 -0700
@@ -158,21 +158,22 @@
 
   std::ostringstream output_buf;
 
-  if (name)
-    output_buf << name << ": ";
-
   octave_vformat (output_buf, fmt, args);
 
-  output_buf << std::endl;
-
   // FIXME: we really want to capture the message before it has all the
   //        formatting goop attached to it.  We probably also want just the
   //        message, not the traceback information.
 
-  std::string msg_string = output_buf.str ();
+  std::string base_msg = output_buf.str ();
+  std::string msg_string;
+
+  if (name)
+    msg_string = std::string (name) + ": ";
+  
+  msg_string += base_msg + "\n";
 
   Vlast_warning_id = id;
-  Vlast_warning_message = msg_string;
+  Vlast_warning_message = base_msg;
 
   if (! Vquiet_warning)
     {
@@ -337,33 +338,30 @@
 {
   if (error_state != -2)
     {
-      if (fmt)
+      if (fmt && *fmt)
         {
-          if (*fmt)
+          size_t len = strlen (fmt);
+
+          if (len > 0)
             {
-              size_t len = strlen (fmt);
-
-              if (len > 0)
+              if (fmt[len - 1] == '\n')
                 {
-                  if (fmt[len - 1] == '\n')
+                  if (len > 1)
                     {
-                      if (len > 1)
-                        {
-                          char *tmp_fmt = strsave (fmt);
-                          tmp_fmt[len - 1] = '\0';
-                          verror (true, os, name, id, tmp_fmt, args, with_cfn);
-                          delete [] tmp_fmt;
-                        }
+                      // Strip newline before issuing error
+                      std::string tmp_fmt (fmt, len - 1);
+                      verror (true, os, name, id, tmp_fmt.c_str (),
+                              args, with_cfn);
+                    }
 
-                      error_state = -2;
-                    }
-                  else
-                    {
-                      verror (true, os, name, id, fmt, args, with_cfn);
+                  error_state = -2;
+                }
+              else
+                {
+                  verror (true, os, name, id, fmt, args, with_cfn);
 
-                      if (! error_state)
-                        error_state = 1;
-                    }
+                  if (! error_state)
+                    error_state = 1;
                 }
             }
         }
@@ -634,13 +632,21 @@
     }
   else if (warn_opt == 1)
     {
-      vwarning ("warning", id, fmt, args);
+      bool fmt_suppresses_backtrace = false;
+      size_t fmt_len = fmt ? strlen (fmt) : 0;
+      fmt_suppresses_backtrace = (fmt_len > 0 && fmt[fmt_len-1] == '\n');
+
+      if (fmt_suppresses_backtrace && fmt_len > 1)
+        {
+          // Strip newline before issuing warning
+          std::string tmp_fmt (fmt, fmt_len - 1);
+          vwarning ("warning", id, tmp_fmt.c_str (), args);
+        }
+      else
+        vwarning ("warning", id, fmt, args);
 
       bool in_user_code = octave_call_stack::caller_user_code () != 0;
 
-      bool fmt_suppresses_backtrace = false;
-      size_t fmt_len = fmt ? strlen (fmt) : 0;
-      fmt_suppresses_backtrace = (fmt_len > 0 && fmt[fmt_len-1] == '\n');
 
       if (! fmt_suppresses_backtrace && in_user_code
           && Vbacktrace_on_warning && ! warning_state
@@ -832,11 +838,12 @@
 DEFUN (rethrow, args, ,
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} rethrow (@var{err})\n\
-Reissue a previous error as defined by @var{err}.  @var{err} is a structure\n\
-that must contain at least the @qcode{\"message\"} and @qcode{\"identifier\"}\n\
-fields.  @var{err} can also contain a field @qcode{\"stack\"} that gives\n\
-information on the assumed location of the error.  Typically @var{err} is\n\
-returned from @code{lasterror}.\n\
+Reissue a previous error as defined by @var{err}.\n\
+\n\
+@var{err} is a structure that must contain at least the @qcode{\"message\"}\n\
+and @qcode{\"identifier\"} fields.  @var{err} can also contain a field\n\
+@qcode{\"stack\"} that gives information on the assumed location of the\n\
+error.  Typically @var{err} is returned from @code{lasterror}.\n\
 @seealso{lasterror, lasterr, error}\n\
 @end deftypefn")
 {
@@ -1022,6 +1029,8 @@
        "-*- texinfo -*-\n\
 @deftypefn  {Built-in Function} {} error (@var{template}, @dots{})\n\
 @deftypefnx {Built-in Function} {} error (@var{id}, @var{template}, @dots{})\n\
+Display an error message and stop m-file execution.\n\
+\n\
 Format the optional arguments under the control of the template string\n\
 @var{template} using the same rules as the @code{printf} family of\n\
 functions (@pxref{Formatted Output}) and print the resulting message\n\
@@ -1029,7 +1038,7 @@
 string @samp{error: }.\n\
 \n\
 Calling @code{error} also sets Octave's internal error state such that\n\
-control will return to the top level without evaluating any more\n\
+control will return to the top level without evaluating any further\n\
 commands.  This is useful for aborting from functions or scripts.\n\
 \n\
 If the error message does not end with a newline character, Octave will\n\
@@ -1100,7 +1109,7 @@
 newline) are processed regardless of whether @var{template} has been defined\n\
 with single quotes, as long as there are two or more input arguments.  To\n\
 disable escape sequence expansion use a second backslash before the sequence\n\
-(e.g., \"@xbackslashchar{}@xbackslashchar{}n\") or use the\n\
+(e.g., @qcode{\"@xbackslashchar{}@xbackslashchar{}n\"}) or use the\n\
 @code{regexptranslate} function.\n\
 @seealso{warning, lasterror}\n\
 @end deftypefn")
@@ -1352,6 +1361,8 @@
 @deftypefnx {Built-in Function} {} warning (\"error\", @var{id})\n\
 @deftypefnx {Built-in Function} {} warning (@var{state}, \"backtrace\")\n\
 @deftypefnx {Built-in Function} {} warning (@var{state}, @var{id}, \"local\")\n\
+Display a warning message or control the behavior of Octave's warning system.\n\
+\n\
 Format the optional arguments under the control of the template string\n\
 @var{template} using the same rules as the @code{printf} family of\n\
 functions (@pxref{Formatted Output}) and print the resulting message\n\
@@ -1400,7 +1411,7 @@
 newline) are processed regardless of whether @var{template} has been defined\n\
 with single quotes, as long as there are two or more input arguments.  To\n\
 disable escape sequence expansion use a second backslash before the sequence\n\
-(e.g., \"@xbackslashchar{}@xbackslashchar{}n\") or use the\n\
+(e.g., @qcode{\"@xbackslashchar{}@xbackslashchar{}n\"}) or use the\n\
 @code{regexptranslate} function.\n\
 @seealso{warning_ids, lastwarn, error}\n\
 @end deftypefn")
@@ -1754,9 +1765,11 @@
 @deftypefn  {Built-in Function} {@var{lasterr} =} lasterror ()\n\
 @deftypefnx {Built-in Function} {} lasterror (@var{err})\n\
 @deftypefnx {Built-in Function} {} lasterror (\"reset\")\n\
-Query or set the last error message structure.  When called without\n\
-arguments, return a structure containing the last error message and other\n\
-information related to this error.  The elements of the structure are:\n\
+Query or set the last error message structure.\n\
+\n\
+When called without arguments, return a structure containing the last error\n\
+message and other information related to this error.  The elements of the\n\
+structure are:\n\
 \n\
 @table @code\n\
 @item message\n\
@@ -1767,8 +1780,8 @@
 \n\
 @item stack\n\
 A structure containing information on where the message occurred.  This may\n\
-be an empty structure if the information cannot\n\
-be obtained.  The fields of the structure are:\n\
+be an empty structure if the information cannot be obtained.  The fields of\n\
+the structure are:\n\
 \n\
 @table @code\n\
 @item file\n\
@@ -1925,10 +1938,14 @@
 @deftypefn  {Built-in Function} {[@var{msg}, @var{msgid}] =} lasterr ()\n\
 @deftypefnx {Built-in Function} {} lasterr (@var{msg})\n\
 @deftypefnx {Built-in Function} {} lasterr (@var{msg}, @var{msgid})\n\
-Query or set the last error message.  When called without input arguments,\n\
-return the last error message and message identifier.  With one\n\
-argument, set the last error message to @var{msg}.  With two arguments,\n\
-also set the last message identifier.\n\
+Query or set the last error message.\n\
+\n\
+When called without input arguments, return the last error message and\n\
+message identifier.\n\
+\n\
+With one argument, set the last error message to @var{msg}.\n\
+\n\
+With two arguments, also set the last message identifier.\n\
 @seealso{lasterror, error, lastwarn}\n\
 @end deftypefn")
 {
@@ -1976,10 +1993,14 @@
 @deftypefn  {Built-in Function} {[@var{msg}, @var{msgid}] =} lastwarn ()\n\
 @deftypefnx {Built-in Function} {} lastwarn (@var{msg})\n\
 @deftypefnx {Built-in Function} {} lastwarn (@var{msg}, @var{msgid})\n\
-Query or set the last warning message.  When called without input arguments,\n\
-return the last warning message and message identifier.  With one\n\
-argument, set the last warning message to @var{msg}.  With two arguments,\n\
-also set the last message identifier.\n\
+Query or set the last warning message.\n\
+\n\
+When called without input arguments, return the last warning message and\n\
+message identifier.\n\
+\n\
+With one argument, set the last warning message to @var{msg}.\n\
+\n\
+With two arguments, also set the last message identifier.\n\
 @seealso{warning, lasterror, lasterr}\n\
 @end deftypefn")
 {
@@ -2018,6 +2039,7 @@
   return retval;
 }
 
+/* FIXME: Deprecated in 4.0 and scheduled for removal in 4.4 */
 DEFUN (__usage__, args, ,
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} usage (@var{msg})\n\
@@ -2061,7 +2083,7 @@
 to ring the terminal bell before printing an error message.\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
-variable is changed locally for the function and any subroutines it calls.  \n\
+variable is changed locally for the function and any subroutines it calls.\n\
 The original variable value is restored when exiting the function.\n\
 @end deftypefn")
 {
@@ -2074,12 +2096,13 @@
 @deftypefnx {Built-in Function} {@var{old_val} =} debug_on_error (@var{new_val})\n\
 @deftypefnx {Built-in Function} {} debug_on_error (@var{new_val}, \"local\")\n\
 Query or set the internal variable that controls whether Octave will try\n\
-to enter the debugger when an error is encountered.  This will also\n\
-inhibit printing of the normal traceback message (you will only see\n\
-the top-level error message).\n\
+to enter the debugger when an error is encountered.\n\
+\n\
+This will also inhibit printing of the normal traceback message (you will\n\
+only see the top-level error message).\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
-variable is changed locally for the function and any subroutines it calls.  \n\
+variable is changed locally for the function and any subroutines it calls.\n\
 The original variable value is restored when exiting the function.\n\
 @seealso{debug_on_warning, debug_on_interrupt}\n\
 @end deftypefn")
@@ -2096,7 +2119,7 @@
 to enter the debugger when a warning is encountered.\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
-variable is changed locally for the function and any subroutines it calls.  \n\
+variable is changed locally for the function and any subroutines it calls.\n\
 The original variable value is restored when exiting the function.\n\
 @seealso{debug_on_error, debug_on_interrupt}\n\
 @end deftypefn")
--- a/libinterp/corefcn/fft2.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/fft2.cc	Sun May 10 21:37:19 2015 -0700
@@ -174,14 +174,13 @@
 Compute the two-dimensional discrete Fourier transform of @var{A} using\n\
 a Fast Fourier Transform (FFT) algorithm.\n\
 \n\
-The optional arguments @var{m} and @var{n} may be used specify the\n\
-number of rows and columns of @var{A} to use.  If either of these is\n\
-larger than the size of @var{A}, @var{A} is resized and padded with\n\
-zeros.\n\
+The optional arguments @var{m} and @var{n} may be used specify the number of\n\
+rows and columns of @var{A} to use.  If either of these is larger than the\n\
+size of @var{A}, @var{A} is resized and padded with zeros.\n\
 \n\
 If @var{A} is a multi-dimensional matrix, each two-dimensional sub-matrix\n\
 of @var{A} is treated separately.\n\
-@seealso {ifft2, fft, fftn, fftw}\n\
+@seealso{ifft2, fft, fftn, fftw}\n\
 @end deftypefn")
 {
   return do_fft2 (args, "fft2", 0);
@@ -195,14 +194,13 @@
 Compute the inverse two-dimensional discrete Fourier transform of @var{A}\n\
 using a Fast Fourier Transform (FFT) algorithm.\n\
 \n\
-The optional arguments @var{m} and @var{n} may be used specify the\n\
-number of rows and columns of @var{A} to use.  If either of these is\n\
-larger than the size of @var{A}, @var{A} is resized and padded with\n\
-zeros.\n\
+The optional arguments @var{m} and @var{n} may be used specify the number of\n\
+rows and columns of @var{A} to use.  If either of these is larger than the\n\
+size of @var{A}, @var{A} is resized and padded with zeros.\n\
 \n\
 If @var{A} is a multi-dimensional matrix, each two-dimensional sub-matrix\n\
 of @var{A} is treated separately\n\
-@seealso {fft2, ifft, ifftn, fftw}\n\
+@seealso{fft2, ifft, ifftn, fftw}\n\
 @end deftypefn")
 {
   return do_fft2 (args, "ifft2", 1);
--- a/libinterp/corefcn/fftn.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/fftn.cc	Sun May 10 21:37:19 2015 -0700
@@ -157,12 +157,12 @@
 Compute the N-dimensional discrete Fourier transform of @var{A} using\n\
 a Fast Fourier Transform (FFT) algorithm.\n\
 \n\
-The optional vector argument @var{size} may be used specify the\n\
-dimensions of the array to be used.  If an element of @var{size} is\n\
-smaller than the corresponding dimension of @var{A}, then the dimension of\n\
-@var{A} is truncated prior to performing the FFT@.  Otherwise, if an element\n\
-of @var{size} is larger than the corresponding dimension then @var{A}\n\
-is resized and padded with zeros.\n\
+The optional vector argument @var{size} may be used specify the dimensions\n\
+of the array to be used.  If an element of @var{size} is smaller than the\n\
+corresponding dimension of @var{A}, then the dimension of @var{A} is\n\
+truncated prior to performing the FFT@.  Otherwise, if an element of\n\
+@var{size} is larger than the corresponding dimension then @var{A} is\n\
+resized and padded with zeros.\n\
 @seealso{ifftn, fft, fft2, fftw}\n\
 @end deftypefn")
 {
@@ -176,12 +176,12 @@
 Compute the inverse N-dimensional discrete Fourier transform of @var{A}\n\
 using a Fast Fourier Transform (FFT) algorithm.\n\
 \n\
-The optional vector argument @var{size} may be used specify the\n\
-dimensions of the array to be used.  If an element of @var{size} is\n\
-smaller than the corresponding dimension of @var{A}, then the dimension of\n\
-@var{A} is truncated prior to performing the inverse FFT@.  Otherwise, if an\n\
-element of @var{size} is larger than the corresponding dimension then @var{A}\n\
-is resized and padded with zeros.\n\
+The optional vector argument @var{size} may be used specify the dimensions\n\
+of the array to be used.  If an element of @var{size} is smaller than the\n\
+corresponding dimension of @var{A}, then the dimension of @var{A} is\n\
+truncated prior to performing the inverse FFT@.  Otherwise, if an element of\n\
+@var{size} is larger than the corresponding dimension then @var{A} is\n\
+resized and padded with zeros.\n\
 @seealso{fftn, ifft, ifft2, fftw}\n\
 @end deftypefn")
 {
--- a/libinterp/corefcn/file-io.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/file-io.cc	Sun May 10 21:37:19 2015 -0700
@@ -342,8 +342,10 @@
 @deftypefn  {Built-in Function} {@var{str} =} fgetl (@var{fid})\n\
 @deftypefnx {Built-in Function} {@var{str} =} fgetl (@var{fid}, @var{len})\n\
 Read characters from a file, stopping after a newline, or EOF,\n\
-or @var{len} characters have been read.  The characters read, excluding\n\
-the possible trailing newline, are returned as a string.\n\
+or @var{len} characters have been read.\n\
+\n\
+The characters read, excluding the possible trailing newline, are returned\n\
+as a string.\n\
 \n\
 If @var{len} is omitted, @code{fgetl} reads until the next newline character.\n\
 \n\
@@ -392,8 +394,10 @@
 @deftypefn  {Built-in Function} {@var{str} =} fgets (@var{fid})\n\
 @deftypefnx {Built-in Function} {@var{str} =} fgets (@var{fid}, @var{len})\n\
 Read characters from a file, stopping after a newline, or EOF,\n\
-or @var{len} characters have been read.  The characters read, including\n\
-the possible trailing newline, are returned as a string.\n\
+or @var{len} characters have been read.\n\
+\n\
+The characters read, including the possible trailing newline, are returned\n\
+as a string.\n\
 \n\
 If @var{len} is omitted, @code{fgets} reads until the next newline character.\n\
 \n\
@@ -591,6 +595,8 @@
 @deftypefnx {Built-in Function} {[@var{fid}, @var{msg}] =} fopen (@dots{})\n\
 @deftypefnx {Built-in Function} {@var{fid_list} =} fopen (\"all\")\n\
 @deftypefnx {Built-in Function} {[@var{file}, @var{mode}, @var{arch}] =} fopen (@var{fid})\n\
+Open a file for low-level I/O or query open files and file descriptors.\n\
+\n\
 The first form of the @code{fopen} function opens the named file with\n\
 the specified mode (read-write, read-only, etc.) and architecture\n\
 interpretation (IEEE big endian, IEEE little endian, etc.), and returns\n\
@@ -747,7 +753,9 @@
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} freport ()\n\
 Print a list of which files have been opened, and whether they are open\n\
-for reading, writing, or both.  For example:\n\
+for reading, writing, or both.\n\
+\n\
+For example:\n\
 \n\
 @example\n\
 @group\n\
@@ -1063,10 +1071,11 @@
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} sprintf (@var{template}, @dots{})\n\
 This is like @code{printf}, except that the output is returned as a\n\
-string.  Unlike the C library function, which requires you to provide a\n\
-suitably sized string as an argument, Octave's @code{sprintf} function\n\
-returns the string, automatically sized to hold all of the items\n\
-converted.\n\
+string.\n\
+\n\
+Unlike the C library function, which requires you to provide a suitably\n\
+sized string as an argument, Octave's @code{sprintf} function returns the\n\
+string, automatically sized to hold all of the items converted.\n\
 \n\
 Implementation Note: For compatibility with @sc{matlab}, escape sequences in\n\
 the template string (e.g., @qcode{\"@xbackslashchar{}n\"} => newline) are\n\
@@ -1159,8 +1168,7 @@
 @noindent\n\
 If @var{size} is omitted, a value of @code{Inf} is assumed.\n\
 \n\
-A string is returned if @var{template} specifies only character\n\
-conversions.\n\
+A string is returned if @var{template} specifies only character conversions.\n\
 \n\
 The number of items successfully read is returned in @var{count}.\n\
 \n\
@@ -1263,10 +1271,11 @@
 @deftypefn  {Built-in Function} {[@var{val}, @var{count}, @var{errmsg}, @var{pos}] =} sscanf (@var{string}, @var{template}, @var{size})\n\
 @deftypefnx {Built-in Function} {[@var{v1}, @var{v2}, @dots{}, @var{count}, @var{errmsg}] =} sscanf (@var{string}, @var{template}, \"C\")\n\
 This is like @code{fscanf}, except that the characters are taken from the\n\
-string @var{string} instead of from a stream.  Reaching the end of the\n\
-string is treated as an end-of-file condition.  In addition to the values\n\
-returned by @code{fscanf}, the index of the next character to be read\n\
-is returned in @var{pos}.\n\
+string @var{string} instead of from a stream.\n\
+\n\
+Reaching the end of the string is treated as an end-of-file condition.  In\n\
+addition to the values returned by @code{fscanf}, the index of the next\n\
+character to be read is returned in @var{pos}.\n\
 @seealso{fscanf, scanf, sprintf}\n\
 @end deftypefn")
 {
@@ -1805,14 +1814,14 @@
 If an error condition exists then return a string @var{msg} describing the\n\
 error.  Otherwise, return an empty string @qcode{\"\"}.\n\
 \n\
+The second input @qcode{\"clear\"} is optional.  If supplied, the error\n\
+state on the stream will be cleared.\n\
+\n\
 The optional second output is a numeric indication of the error status.\n\
 @var{err} is 1 if an error condition has been encountered and 0 otherwise.\n\
 \n\
 Note that @code{ferror} indicates if an error has already occurred, not\n\
 whether the next operation will result in an error condition.\n\
-\n\
-The second input @qcode{\"clear\"} is optional.  If supplied, the error\n\
-state on the stream will be cleared.\n\
 @seealso{fclear, fopen}\n\
 @end deftypefn")
 {
@@ -1855,9 +1864,9 @@
 DEFUNX ("popen", Fpopen, args, ,
         "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {@var{fid} =} popen (@var{command}, @var{mode})\n\
-Start a process and create a pipe.  The name of the command to run is\n\
-given by @var{command}.  The file identifier corresponding to the input\n\
-or output stream of the process is returned in @var{fid}.  The argument\n\
+Start a process and create a pipe.\n\
+\n\
+The name of the command to run is given by @var{command}.  The argument\n\
 @var{mode} may be\n\
 \n\
 @table @code\n\
@@ -1870,6 +1879,9 @@
 open for writing.\n\
 @end table\n\
 \n\
+The file identifier corresponding to the input or output stream of the\n\
+process is returned in @var{fid}.\n\
+\n\
 For example:\n\
 \n\
 @example\n\
@@ -1957,6 +1969,7 @@
 Return a unique temporary file name as a string.\n\
 \n\
 If @var{prefix} is omitted, a value of @qcode{\"oct-\"} is used.\n\
+\n\
 If @var{dir} is also omitted, the default directory for temporary files\n\
 (@code{P_tmpdir}) is used.  If @var{dir} is provided, it must exist,\n\
 otherwise the default directory for temporary files is used.\n\
@@ -2222,8 +2235,9 @@
 @deftypefn {Built-in Function} {} umask (@var{mask})\n\
 Set the permission mask for file creation.\n\
 \n\
-The parameter @var{mask} is an integer, interpreted as an octal number.  If\n\
-successful, returns the previous value of the mask (as an integer to be\n\
+The parameter @var{mask} is an integer, interpreted as an octal number.\n\
+\n\
+If successful, returns the previous value of the mask (as an integer to be\n\
 interpreted as an octal number); otherwise an error message is printed.\n\
 @seealso{fopen, mkdir}\n\
 @end deftypefn")
--- a/libinterp/corefcn/filter.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/filter.cc	Sun May 10 21:37:19 2015 -0700
@@ -291,12 +291,14 @@
 
 DEFUN (filter, args, nargout,
        "-*- texinfo -*-\n\
-@deftypefn  {Built-in Function} {y =} filter (@var{b}, @var{a}, @var{x})\n\
+@deftypefn  {Built-in Function} {@var{y} =} filter (@var{b}, @var{a}, @var{x})\n\
 @deftypefnx {Built-in Function} {[@var{y}, @var{sf}] =} filter (@var{b}, @var{a}, @var{x}, @var{si})\n\
 @deftypefnx {Built-in Function} {[@var{y}, @var{sf}] =} filter (@var{b}, @var{a}, @var{x}, [], @var{dim})\n\
 @deftypefnx {Built-in Function} {[@var{y}, @var{sf}] =} filter (@var{b}, @var{a}, @var{x}, @var{si}, @var{dim})\n\
-Return the solution to the following linear, time-invariant difference\n\
-equation:\n\
+Apply a 1-D digital filter to the data @var{x}.\n\
+\n\
+@code{filter} returns the solution to the following linear, time-invariant\n\
+difference equation:\n\
 @tex\n\
 $$\n\
 \\sum_{k=0}^N a_{k+1} y_{n-k} = \\sum_{k=0}^M b_{k+1} x_{n-k}, \\qquad\n\
@@ -363,9 +365,9 @@
 If @var{si} is not supplied, the initial state vector is set to all\n\
 zeros.\n\
 \n\
-In terms of the Z Transform, y is the result of passing the discrete-\n\
-time signal x through a system characterized by the following rational\n\
-system function:\n\
+In terms of the Z Transform, @var{y} is the result of passing the\n\
+discrete-time signal @var{x} through a system characterized by the following\n\
+rational system function:\n\
 @tex\n\
 $$\n\
 H(z) = {\\displaystyle\\sum_{k=0}^M d_{k+1} z^{-k}\n\
--- a/libinterp/corefcn/find.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/find.cc	Sun May 10 21:37:19 2015 -0700
@@ -333,9 +333,11 @@
 @deftypefnx {Built-in Function} {[i, j] =} find (@dots{})\n\
 @deftypefnx {Built-in Function} {[i, j, v] =} find (@dots{})\n\
 Return a vector of indices of nonzero elements of a matrix, as a row if\n\
-@var{x} is a row vector or as a column otherwise.  To obtain a single index\n\
-for each matrix element, Octave pretends that the columns of a matrix form\n\
-one long vector (like Fortran arrays are stored).  For example:\n\
+@var{x} is a row vector or as a column otherwise.\n\
+\n\
+To obtain a single index for each matrix element, Octave pretends that the\n\
+columns of a matrix form one long vector (like Fortran arrays are stored). \n\
+For example:\n\
 \n\
 @example\n\
 @group\n\
@@ -344,6 +346,14 @@
 @end group\n\
 @end example\n\
 \n\
+If two inputs are given, @var{n} indicates the maximum number of elements to\n\
+find from the beginning of the matrix or vector.\n\
+\n\
+If three inputs are given, @var{direction} should be one of\n\
+@qcode{\"first\"} or @qcode{\"last\"}, requesting only the first or last\n\
+@var{n} indices, respectively.  However, the indices are always returned in\n\
+ascending order.\n\
+\n\
 If two outputs are requested, @code{find} returns the row and column\n\
 indices of nonzero elements of a matrix.  For example:\n\
 \n\
@@ -367,14 +377,6 @@
 @end group\n\
 @end example\n\
 \n\
-If two inputs are given, @var{n} indicates the maximum number of\n\
-elements to find from the beginning of the matrix or vector.\n\
-\n\
-If three inputs are given, @var{direction} should be one of\n\
-@qcode{\"first\"} or @qcode{\"last\"}, requesting only the first or last\n\
-@var{n} indices, respectively.  However, the indices are always returned in\n\
-ascending order.\n\
-\n\
 Note that this function is particularly useful for sparse matrices, as\n\
 it extracts the nonzero elements as vectors, which can then be used to\n\
 create the original matrix.  For example:\n\
--- a/libinterp/corefcn/gammainc.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/gammainc.cc	Sun May 10 21:37:19 2015 -0700
@@ -37,7 +37,9 @@
 @deftypefn  {Mapping Function} {} gammainc (@var{x}, @var{a})\n\
 @deftypefnx {Mapping Function} {} gammainc (@var{x}, @var{a}, \"lower\")\n\
 @deftypefnx {Mapping Function} {} gammainc (@var{x}, @var{a}, \"upper\")\n\
-Compute the normalized incomplete gamma function,\n\
+Compute the normalized incomplete gamma function.\n\
+\n\
+This is defined as\n\
 @tex\n\
 $$\n\
  \\gamma (x, a) = {1 \\over {\\Gamma (a)}}\\displaystyle{\\int_0^x t^{a-1} e^{-t} dt}\n\
--- a/libinterp/corefcn/gcd.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/gcd.cc	Sun May 10 21:37:19 2015 -0700
@@ -448,7 +448,7 @@
 element individually.  All elements must be ordinary or Gaussian (complex)\n\
 integers.  Note that for Gaussian integers, the gcd is only unique up to a\n\
 phase factor (multiplication by 1, -1, i, or -i), so an arbitrary greatest\n\
-common divisor amongst four possible is returned.\n\
+common divisor among the four possible is returned.\n\
 \n\
 Optional return arguments @var{v1}, @dots{}, contain integer vectors such\n\
 that,\n\
--- a/libinterp/corefcn/getgrent.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/getgrent.cc	Sun May 10 21:37:19 2015 -0700
@@ -66,7 +66,9 @@
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {@var{grp_struct} =} getgrent ()\n\
 Return an entry from the group database, opening it if necessary.\n\
+\n\
 Once the end of data has been reached, @code{getgrent} returns 0.\n\
+@seealso{setgrent, endgrent}\n\
 @end deftypefn")
 {
   octave_value_list retval;
@@ -93,8 +95,10 @@
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {@var{grp_struct} =} getgrgid (@var{gid}).\n\
 Return the first entry from the group database with the group ID\n\
-@var{gid}.  If the group ID does not exist in the database,\n\
-@code{getgrgid} returns 0.\n\
+@var{gid}.\n\
+\n\
+If the group ID does not exist in the database, @code{getgrgid} returns 0.\n\
+@seealso{getgrnam}\n\
 @end deftypefn")
 {
   octave_value_list retval;
@@ -133,8 +137,10 @@
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {@var{grp_struct} =} getgrnam (@var{name})\n\
 Return the first entry from the group database with the group name\n\
-@var{name}.  If the group name does not exist in the database,\n\
-@code{getgrnam} returns 0.\n\
+@var{name}.\n\
+\n\
+If the group name does not exist in the database, @code{getgrnam} returns 0.\n\
+@seealso{getgrgid}\n\
 @end deftypefn")
 {
   octave_value_list retval;
@@ -166,6 +172,7 @@
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} setgrent ()\n\
 Return the internal pointer to the beginning of the group database.\n\
+@seealso{getgrent, endgrent}\n\
 @end deftypefn")
 {
   octave_value_list retval;
@@ -192,6 +199,7 @@
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} endgrent ()\n\
 Close the group database.\n\
+@seealso{getgrent, setgrent}\n\
 @end deftypefn")
 {
   octave_value_list retval;
--- a/libinterp/corefcn/getpwent.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/getpwent.cc	Sun May 10 21:37:19 2015 -0700
@@ -69,8 +69,10 @@
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {@var{pw_struct} =} getpwent ()\n\
 Return a structure containing an entry from the password database,\n\
-opening it if necessary.  Once the end of the data has been reached,\n\
-@code{getpwent} returns 0.\n\
+opening it if necessary.\n\
+\n\
+Once the end of the data has been reached, @code{getpwent} returns 0.\n\
+@seealso{setpwent, endpwent}\n\
 @end deftypefn")
 {
   octave_value_list retval;
@@ -97,8 +99,10 @@
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {@var{pw_struct} =} getpwuid (@var{uid}).\n\
 Return a structure containing the first entry from the password database\n\
-with the user ID @var{uid}.  If the user ID does not exist in the\n\
-database, @code{getpwuid} returns 0.\n\
+with the user ID @var{uid}.\n\
+\n\
+If the user ID does not exist in the database, @code{getpwuid} returns 0.\n\
+@seealso{getpwnam}\n\
 @end deftypefn")
 {
   octave_value_list retval;
@@ -137,8 +141,10 @@
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {@var{pw_struct} =} getpwnam (@var{name})\n\
 Return a structure containing the first entry from the password database\n\
-with the user name @var{name}.  If the user name does not exist in the\n\
-database, @code{getpwname} returns 0.\n\
+with the user name @var{name}.\n\
+\n\
+If the user name does not exist in the database, @code{getpwname} returns 0.\n\
+@seealso{getpwuid}\n\
 @end deftypefn")
 {
   octave_value_list retval;
@@ -170,6 +176,7 @@
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} setpwent ()\n\
 Return the internal pointer to the beginning of the password database.\n\
+@seealso{getpwent, endpwent}\n\
 @end deftypefn")
 {
   octave_value_list retval;
@@ -196,6 +203,7 @@
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} endpwent ()\n\
 Close the password database.\n\
+@seealso{getpwent, setpwent}\n\
 @end deftypefn")
 {
   octave_value_list retval;
--- a/libinterp/corefcn/getrusage.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/getrusage.cc	Sun May 10 21:37:19 2015 -0700
@@ -63,10 +63,11 @@
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} getrusage ()\n\
 Return a structure containing a number of statistics about the current\n\
-Octave process.  Not all fields are available on all systems.  If it is\n\
-not possible to get CPU time statistics, the CPU time slots are set to\n\
-zero.  Other missing data are replaced by NaN@.  The list of possible\n\
-fields is:\n\
+Octave process.\n\
+\n\
+Not all fields are available on all systems.  If it is not possible to get\n\
+CPU time statistics, the CPU time slots are set to zero.  Other missing data\n\
+are replaced by NaN@.  The list of possible fields is:\n\
 \n\
 @table @code\n\
 @item idrss\n\
--- a/libinterp/corefcn/graphics.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/graphics.cc	Sun May 10 21:37:19 2015 -0700
@@ -9767,9 +9767,9 @@
 @deftypefn {Built-in Function} {} ishandle (@var{h})\n\
 Return true if @var{h} is a graphics handle and false otherwise.\n\
 \n\
-@var{h} may also be a matrix of handles in which case a logical\n\
-array is returned that is true where the elements of @var{h} are\n\
-graphics handles and false where they are not.\n\
+@var{h} may also be a matrix of handles in which case a logical array is\n\
+returned that is true where the elements of @var{h} are graphics handles and\n\
+false where they are not.\n\
 @seealso{isaxes, isfigure}\n\
 @end deftypefn")
 {
@@ -10008,6 +10008,7 @@
 @deftypefnx {Built-in Function} {@var{all_value_list} =} set (@var{h})\n\
 Set named property values for the graphics handle (or vector of graphics\n\
 handles) @var{h}.\n\
+\n\
 There are three ways to give the property names and values:\n\
 \n\
 @itemize\n\
@@ -10200,9 +10201,12 @@
 @deftypefn  {Built-in Function} {@var{val} =} get (@var{h})\n\
 @deftypefnx {Built-in Function} {@var{val} =} get (@var{h}, @var{p})\n\
 Return the value of the named property @var{p} from the graphics handle\n\
-@var{h}.  If @var{p} is omitted, return the complete property list for\n\
-@var{h}.  If @var{h} is a vector, return a cell array including the property\n\
-values or lists respectively.\n\
+@var{h}.\n\
+\n\
+If @var{p} is omitted, return the complete property list for @var{h}.\n\
+\n\
+If @var{h} is a vector, return a cell array including the property values or\n\
+lists respectively.\n\
 @seealso{set}\n\
 @end deftypefn")
 {
@@ -10649,8 +10653,9 @@
 DEFUN (__calc_dimensions__, args, ,
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} __calc_dimensions__ (@var{axes})\n\
-Internal function.  Determine the number of dimensions in a graphics\n\
-object, whether 2 or 3.\n\
+Internal function.\n\
+\n\
+Determine the number of dimensions in a graphics object, either 2 or 3.\n\
 @end deftypefn")
 {
   gh_manager::auto_lock guard;
@@ -11163,12 +11168,16 @@
 @deftypefn  {Built-in Function} {} drawnow ()\n\
 @deftypefnx {Built-in Function} {} drawnow (\"expose\")\n\
 @deftypefnx {Built-in Function} {} drawnow (@var{term}, @var{file}, @var{mono}, @var{debug_file})\n\
-Update figure windows and their children.  The event queue is flushed and\n\
-any callbacks generated are executed.  With the optional argument\n\
-@qcode{\"expose\"}, only graphic objects are updated and no other events or\n\
-callbacks are processed.\n\
+Update figure windows and their children.\n\
+\n\
+The event queue is flushed and any callbacks generated are executed.\n\
+\n\
+With the optional argument @qcode{\"expose\"}, only graphic objects are\n\
+updated and no other events or callbacks are processed.\n\
+\n\
 The third calling form of @code{drawnow} is for debugging and is\n\
 undocumented.\n\
+@seealso{refresh}\n\
 @end deftypefn")
 {
   static int drawnow_executing = 0;
@@ -11351,9 +11360,10 @@
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} addlistener (@var{h}, @var{prop}, @var{fcn})\n\
 Register @var{fcn} as listener for the property @var{prop} of the graphics\n\
-object @var{h}.  Property listeners are executed (in order of registration)\n\
-when the property is set.  The new value is already available when the\n\
-listeners are executed.\n\
+object @var{h}.\n\
+\n\
+Property listeners are executed (in order of registration) when the property\n\
+is set.  The new value is already available when the listeners are executed.\n\
 \n\
 @var{prop} must be a string naming a valid property in @var{h}.\n\
 \n\
@@ -11430,9 +11440,10 @@
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} dellistener (@var{h}, @var{prop}, @var{fcn})\n\
 Remove the registration of @var{fcn} as a listener for the property\n\
-@var{prop} of the graphics object @var{h}.  The function @var{fcn} must\n\
-be the same variable (not just the same value), as was passed to the\n\
-original call to @code{addlistener}.\n\
+@var{prop} of the graphics object @var{h}.\n\
+\n\
+The function @var{fcn} must be the same variable (not just the same value),\n\
+as was passed to the original call to @code{addlistener}.\n\
 \n\
 If @var{fcn} is not defined then all listener functions of @var{prop}\n\
 are removed.\n\
@@ -11511,6 +11522,7 @@
 @deftypefn  {Built-in Function} {} addproperty (@var{name}, @var{h}, @var{type})\n\
 @deftypefnx {Built-in Function} {} addproperty (@var{name}, @var{h}, @var{type}, @var{arg}, @dots{})\n\
 Create a new property named @var{name} in graphics object @var{h}.\n\
+\n\
 @var{type} determines the type of the property to create.  @var{args}\n\
 usually contains the default value of the property, but additional\n\
 arguments might be given, depending on the type of the property.\n\
@@ -11805,10 +11817,10 @@
 Suspend the execution of the current program until a condition is\n\
 satisfied on the graphics handle @var{h}.\n\
 \n\
-While the program is suspended graphics events are still being processed\n\
-normally, allowing callbacks to modify the state of graphics objects.  This\n\
-function is reentrant and can be called from a callback, while another\n\
-@code{waitfor} call is pending at the top-level.\n\
+While the program is suspended graphics events are still processed normally,\n\
+allowing callbacks to modify the state of graphics objects.  This function\n\
+is reentrant and can be called from a callback, while another @code{waitfor}\n\
+call is pending at the top-level.\n\
 \n\
 In the first form, program execution is suspended until the graphics object\n\
 @var{h} is destroyed.  If the graphics handle is invalid, the function\n\
--- a/libinterp/corefcn/graphics.in.h	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/graphics.in.h	Sun May 10 21:37:19 2015 -0700
@@ -5381,7 +5381,7 @@
     {
       position.add_constraint (dim_vector (1, 2));
       position.add_constraint (dim_vector (2, 1));
-      visible.set (octave_value (true));
+      visible.set (octave_value (false));
     }
 
   private:
--- a/libinterp/corefcn/help.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/help.cc	Sun May 10 21:37:19 2015 -0700
@@ -665,7 +665,7 @@
 Declare variables as persistent.  A variable that has been declared\n\
 persistent within a function will retain its contents in memory between\n\
 subsequent calls to the same function.  The difference between persistent\n\
-variables and global variables is that persistent variables are local in \n\
+variables and global variables is that persistent variables are local in\n\
 scope to a particular function and are not visible elsewhere.\n\
 @seealso{global}\n\
 @end deftypefn"),
@@ -958,13 +958,14 @@
 @deftypefnx {Built-in Function} {} built_in_docstrings_file (@var{new_val}, \"local\")\n\
 Query or set the internal variable that specifies the name of the\n\
 file containing docstrings for built-in Octave functions.\n\
+\n\
 The default value is\n\
 @file{@var{octave-home}/share/octave/@var{version}/etc/built-in-docstrings},\n\
 in which @var{octave-home} is the root directory of the Octave installation,\n\
-and @var{version} is the Octave version number.\n\
-The default value may be overridden by the environment variable\n\
+and @var{version} is the Octave version number.  The default value may be\n\
+overridden by the environment variable\n\
 @w{@env{OCTAVE_BUILT_IN_DOCSTRINGS_FILE}}, or the command line argument\n\
-@samp{--built-in-docstrings-file FNAME}.\n\
+@option{--built-in-docstrings-file FNAME}.\n\
 \n\
 Note: This variable is only used when Octave is initializing itself.\n\
 Modifying it during a running session of Octave will have no effect.\n\
@@ -1084,6 +1085,7 @@
 The raw help text is returned in @var{text} and the format in @var{format}\n\
 The format is a string which is one of @qcode{\"texinfo\"},\n\
 @qcode{\"html\"}, or @qcode{\"plain text\"}.\n\
+@seealso{get_help_text_from_file}\n\
 @end deftypefn")
 {
   octave_value_list retval;
@@ -1153,6 +1155,7 @@
 The raw help text is returned in @var{text} and the format in @var{format}\n\
 The format is a string which is one of @qcode{\"texinfo\"},\n\
 @qcode{\"html\"}, or @qcode{\"plain text\"}.\n\
+@seealso{get_help_text}\n\
 @end deftypefn")
 {
   octave_value_list retval;
@@ -1405,19 +1408,22 @@
 @deftypefnx {Built-in Function} {@var{old_val} =} doc_cache_file (@var{new_val})\n\
 @deftypefnx {Built-in Function} {} doc_cache_file (@var{new_val}, \"local\")\n\
 Query or set the internal variable that specifies the name of the\n\
-Octave documentation cache file.  A cache file significantly improves\n\
-the performance of the @code{lookfor} command.  The default value is \n\
+Octave documentation cache file.\n\
+\n\
+A cache file significantly improves the performance of the @code{lookfor}\n\
+command.  The default value is\n\
 @file{@var{octave-home}/share/octave/@var{version}/etc/doc-cache},\n\
 in which @var{octave-home} is the root directory of the Octave installation,\n\
 and @var{version} is the Octave version number.\n\
 The default value may be overridden by the environment variable\n\
 @w{@env{OCTAVE_DOC_CACHE_FILE}}, or the command line argument\n\
-@samp{--doc-cache-file FNAME}.\n\
+@option{--doc-cache-file FNAME}.\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
-variable is changed locally for the function and any subroutines it calls.  \n\
+variable is changed locally for the function and any subroutines it calls.\n\
 The original variable value is restored when exiting the function.\n\
 @seealso{doc_cache_create, lookfor, info_program, doc, help, makeinfo_program}\n\
+@seealso{lookfor}\n\
 @end deftypefn")
 {
   return SET_NONEMPTY_INTERNAL_STRING_VARIABLE (doc_cache_file);
@@ -1430,16 +1436,18 @@
 @deftypefnx {Built-in Function} {} texi_macros_file (@var{new_val}, \"local\")\n\
 Query or set the internal variable that specifies the name of the\n\
 file containing Texinfo macros that are prepended to documentation strings\n\
-before they are passed to makeinfo.  The default value is \n\
+before they are passed to makeinfo.\n\
+\n\
+The default value is\n\
 @file{@var{octave-home}/share/octave/@var{version}/etc/macros.texi},\n\
 in which @var{octave-home} is the root directory of the Octave installation,\n\
 and @var{version} is the Octave version number.\n\
 The default value may be overridden by the environment variable\n\
 @w{@env{OCTAVE_TEXI_MACROS_FILE}}, or the command line argument\n\
-@samp{--texi-macros-file FNAME}.\n\
+@option{--texi-macros-file FNAME}.\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
-variable is changed locally for the function and any subroutines it calls.  \n\
+variable is changed locally for the function and any subroutines it calls.\n\
 The original variable value is restored when exiting the function.\n\
 @seealso{makeinfo_program}\n\
 @end deftypefn")
@@ -1453,15 +1461,17 @@
 @deftypefnx {Built-in Function} {@var{old_val} =} info_file (@var{new_val})\n\
 @deftypefnx {Built-in Function} {} info_file (@var{new_val}, \"local\")\n\
 Query or set the internal variable that specifies the name of the\n\
-Octave info file.  The default value is\n\
+Octave info file.\n\
+\n\
+The default value is\n\
 @file{@var{octave-home}/info/octave.info}, in\n\
 which @var{octave-home} is the root directory of the Octave installation.\n\
 The default value may be overridden by the environment variable\n\
 @w{@env{OCTAVE_INFO_FILE}}, or the command line argument\n\
-@samp{--info-file FNAME}.\n\
+@option{--info-file FNAME}.\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
-variable is changed locally for the function and any subroutines it calls.  \n\
+variable is changed locally for the function and any subroutines it calls.\n\
 The original variable value is restored when exiting the function.\n\
 @seealso{info_program, doc, help, makeinfo_program}\n\
 @end deftypefn")
@@ -1475,17 +1485,19 @@
 @deftypefnx {Built-in Function} {@var{old_val} =} info_program (@var{new_val})\n\
 @deftypefnx {Built-in Function} {} info_program (@var{new_val}, \"local\")\n\
 Query or set the internal variable that specifies the name of the\n\
-info program to run.  The default value is\n\
+info program to run.\n\
+\n\
+The default value is\n\
 @file{@var{octave-home}/libexec/octave/@var{version}/exec/@var{arch}/info}\n\
 in which @var{octave-home} is the root directory of the Octave installation,\n\
-@var{version} is the Octave version number, and @var{arch}\n\
-is the system type (for example, @code{i686-pc-linux-gnu}).  The\n\
-default value may be overridden by the environment variable\n\
+@var{version} is the Octave version number, and @var{arch} is the system\n\
+type (for example, @code{i686-pc-linux-gnu}).  The default value may be\n\
+overridden by the environment variable\n\
 @w{@env{OCTAVE_INFO_PROGRAM}}, or the command line argument\n\
-@samp{--info-program NAME}.\n\
+@option{--info-program NAME}.\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
-variable is changed locally for the function and any subroutines it calls.  \n\
+variable is changed locally for the function and any subroutines it calls.\n\
 The original variable value is restored when exiting the function.\n\
 @seealso{info_file, doc, help, makeinfo_program}\n\
 @end deftypefn")
@@ -1500,10 +1512,12 @@
 @deftypefnx {Built-in Function} {} makeinfo_program (@var{new_val}, \"local\")\n\
 Query or set the internal variable that specifies the name of the\n\
 program that Octave runs to format help text containing\n\
-Texinfo markup commands.  The default value is @code{makeinfo}.\n\
+Texinfo markup commands.\n\
+\n\
+The default value is @code{makeinfo}.\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
-variable is changed locally for the function and any subroutines it calls.  \n\
+variable is changed locally for the function and any subroutines it calls.\n\
 The original variable value is restored when exiting the function.\n\
 @seealso{texi_macros_file, info_file, info_program, doc, help}\n\
 @end deftypefn")
@@ -1521,7 +1535,7 @@
 the @code{help} command and usage messages for built-in commands.\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
-variable is changed locally for the function and any subroutines it calls.  \n\
+variable is changed locally for the function and any subroutines it calls.\n\
 The original variable value is restored when exiting the function.\n\
 @end deftypefn")
 {
--- a/libinterp/corefcn/hex2num.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/hex2num.cc	Sun May 10 21:37:19 2015 -0700
@@ -37,11 +37,12 @@
 @deftypefn  {Built-in Function} {@var{n} =} hex2num (@var{s})\n\
 @deftypefnx {Built-in Function} {@var{n} =} hex2num (@var{s}, @var{class})\n\
 Typecast the 16 character hexadecimal character string to an IEEE 754\n\
-double precision number.  If fewer than 16 characters are given the\n\
-strings are right padded with @qcode{'0'} characters.\n\
+double precision number.\n\
 \n\
-Given a string matrix, @code{hex2num} treats each row as a separate\n\
-number.\n\
+If fewer than 16 characters are given the strings are right padded with\n\
+@qcode{'0'} characters.\n\
+\n\
+Given a string matrix, @code{hex2num} treats each row as a separate number.\n\
 \n\
 @example\n\
 @group\n\
@@ -53,7 +54,7 @@
 The optional argument @var{class} can be passed as the string\n\
 @qcode{\"single\"} to specify that the given string should be interpreted as\n\
 a single precision number.  In this case, @var{s} should be an 8 character\n\
-hexadecimal string.  For example: \n\
+hexadecimal string.  For example:\n\
 \n\
 @example\n\
 @group\n\
@@ -201,6 +202,7 @@
 @deftypefn {Built-in Function} {@var{s} =} num2hex (@var{n})\n\
 Typecast a double or single precision number or vector to a 8 or 16\n\
 character hexadecimal string of the IEEE 754 representation of the number.\n\
+\n\
 For example:\n\
 \n\
 @example\n\
--- a/libinterp/corefcn/input.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/input.cc	Sun May 10 21:37:19 2015 -0700
@@ -764,21 +764,21 @@
 \n\
 @noindent\n\
 and waits for the user to enter a value.  The string entered by the user\n\
-is evaluated as an expression, so it may be a literal constant, a\n\
-variable name, or any other valid Octave code.\n\
+is evaluated as an expression, so it may be a literal constant, a variable\n\
+name, or any other valid Octave code.\n\
 \n\
 The number of return arguments, their size, and their class depend on the\n\
 expression entered.\n\
 \n\
-If you are only interested in getting a literal string value, you can\n\
-call @code{input} with the character string @qcode{\"s\"} as the second\n\
-argument.  This tells Octave to return the string entered by the user\n\
-directly, without evaluating it first.\n\
+If you are only interested in getting a literal string value, you can call\n\
+@code{input} with the character string @qcode{\"s\"} as the second argument.\n\
+This tells Octave to return the string entered by the user directly, without\n\
+evaluating it first.\n\
 \n\
-Because there may be output waiting to be displayed by the pager, it is\n\
-a good idea to always call @code{fflush (stdout)} before calling\n\
-@code{input}.  This will ensure that all pending output is written to\n\
-the screen before your prompt.\n\
+Because there may be output waiting to be displayed by the pager, it is a\n\
+good idea to always call @code{fflush (stdout)} before calling @code{input}.\n\
+ This will ensure that all pending output is written to the screen before\n\
+your prompt.\n\
 @seealso{yes_or_no, kbhit, pause, menu, listdlg}\n\
 @end deftypefn")
 {
@@ -820,6 +820,7 @@
 Ask the user a yes-or-no question.\n\
 \n\
 Return logical true if the answer is yes or false if the answer is no.\n\
+\n\
 Takes one argument, @var{prompt}, which is the string to display when asking\n\
 the question.  @var{prompt} should end in a space; @code{yes-or-no} adds the\n\
 string @samp{(yes or no) } to it.  The user must confirm the answer with\n\
@@ -897,9 +898,10 @@
        "-*- texinfo -*-\n\
 @deftypefn  {Built-in Function} {} keyboard ()\n\
 @deftypefnx {Built-in Function} {} keyboard (\"@var{prompt}\")\n\
-This function is normally used for simple debugging.  When the\n\
-@code{keyboard} function is executed, Octave prints a prompt and waits\n\
-for user input.  The input strings are then evaluated and the results\n\
+Stop m-file execution and enter debug mode.\n\
+\n\
+When the @code{keyboard} function is executed, Octave prints a prompt and\n\
+waits for user input.  The input strings are then evaluated and the results\n\
 are printed.  This makes it possible to examine the values of variables\n\
 within a function, and to assign new values if necessary.  To leave the\n\
 prompt and return to normal execution type @samp{return} or @samp{dbcont}.\n\
@@ -940,8 +942,9 @@
 DEFUN (echo, args, ,
        "-*- texinfo -*-\n\
 @deftypefn {Command} {} echo options\n\
-Control whether commands are displayed as they are executed.  Valid\n\
-options are:\n\
+Control whether commands are displayed as they are executed.\n\
+\n\
+Valid options are:\n\
 \n\
 @table @code\n\
 @item on\n\
@@ -1109,9 +1112,10 @@
 DEFUN (readline_read_init_file, args, ,
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} readline_read_init_file (@var{file})\n\
-Read the readline library initialization file @var{file}.  If\n\
-@var{file} is omitted, read the default initialization file (normally\n\
-@file{~/.inputrc}).\n\
+Read the readline library initialization file @var{file}.\n\
+\n\
+If @var{file} is omitted, read the default initialization file\n\
+(normally @file{~/.inputrc}).\n\
 \n\
 @xref{Readline Init File, , , readline, GNU Readline Library},\n\
 for details.\n\
@@ -1141,6 +1145,7 @@
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} readline_re_read_init_file ()\n\
 Re-read the last readline library initialization file that was read.\n\
+\n\
 @xref{Readline Init File, , , readline, GNU Readline Library},\n\
 for details.\n\
 @seealso{readline_read_init_file}\n\
@@ -1172,18 +1177,18 @@
 @deftypefn  {Built-in Function} {@var{id} =} add_input_event_hook (@var{fcn})\n\
 @deftypefnx {Built-in Function} {@var{id} =} add_input_event_hook (@var{fcn}, @var{data})\n\
 Add the named function or function handle @var{fcn} to the list of functions\n\
-to call periodically when Octave is waiting for input.  The function should\n\
-have the form\n\
+to call periodically when Octave is waiting for input.\n\
+\n\
+The function should have the form\n\
 \n\
 @example\n\
 @var{fcn} (@var{data})\n\
 @end example\n\
 \n\
-If @var{data} is omitted, Octave calls the function without any\n\
-arguments.\n\
+If @var{data} is omitted, Octave calls the function without any arguments.\n\
 \n\
-The returned identifier may be used to remove the function handle from\n\
-the list of input hook functions.\n\
+The returned identifier may be used to remove the function handle from the\n\
+list of input hook functions.\n\
 @seealso{remove_input_event_hook}\n\
 @end deftypefn")
 {
@@ -1266,8 +1271,10 @@
 @deftypefn  {Built-in Function} {@var{val} =} PS1 ()\n\
 @deftypefnx {Built-in Function} {@var{old_val} =} PS1 (@var{new_val})\n\
 @deftypefnx {Built-in Function} {} PS1 (@var{new_val}, \"local\")\n\
-Query or set the primary prompt string.  When executing interactively,\n\
-Octave displays the primary prompt when it is ready to read a command.\n\
+Query or set the primary prompt string.\n\
+\n\
+When executing interactively, Octave displays the primary prompt when it is\n\
+ready to read a command.\n\
 \n\
 The default value of the primary prompt string is @qcode{\"octave:\\#> \"}.\n\
 To change it, use a command like\n\
@@ -1293,7 +1300,7 @@
 will give the default Octave prompt a red coloring.\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
-variable is changed locally for the function and any subroutines it calls.  \n\
+variable is changed locally for the function and any subroutines it calls.\n\
 The original variable value is restored when exiting the function.\n\
 @seealso{PS2, PS4}\n\
 @end deftypefn")
@@ -1306,15 +1313,16 @@
 @deftypefn  {Built-in Function} {@var{val} =} PS2 ()\n\
 @deftypefnx {Built-in Function} {@var{old_val} =} PS2 (@var{new_val})\n\
 @deftypefnx {Built-in Function} {} PS2 (@var{new_val}, \"local\")\n\
-Query or set the secondary prompt string.  The secondary prompt is\n\
-printed when Octave is expecting additional input to complete a\n\
-command.  For example, if you are typing a @code{for} loop that spans several\n\
-lines, Octave will print the secondary prompt at the beginning of\n\
-each line after the first.  The default value of the secondary prompt\n\
+Query or set the secondary prompt string.\n\
+\n\
+The secondary prompt is printed when Octave is expecting additional input to\n\
+complete a command.  For example, if you are typing a @code{for} loop that\n\
+spans several lines, Octave will print the secondary prompt at the beginning\n\
+of each line after the first.  The default value of the secondary prompt\n\
 string is @qcode{\"> \"}.\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
-variable is changed locally for the function and any subroutines it calls.  \n\
+variable is changed locally for the function and any subroutines it calls.\n\
 The original variable value is restored when exiting the function.\n\
 @seealso{PS1, PS4}\n\
 @end deftypefn")
@@ -1329,11 +1337,12 @@
 @deftypefnx {Built-in Function} {} PS4 (@var{new_val}, \"local\")\n\
 Query or set the character string used to prefix output produced\n\
 when echoing commands is enabled.\n\
+\n\
 The default value is @qcode{\"+ \"}.\n\
 @xref{Diary and Echo Commands}, for a description of echoing commands.\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
-variable is changed locally for the function and any subroutines it calls.  \n\
+variable is changed locally for the function and any subroutines it calls.\n\
 The original variable value is restored when exiting the function.\n\
 @seealso{echo, echo_executing_commands, PS1, PS2}\n\
 @end deftypefn")
@@ -1347,11 +1356,12 @@
 @deftypefnx {Built-in Function} {@var{old_val} =} completion_append_char (@var{new_val})\n\
 @deftypefnx {Built-in Function} {} completion_append_char (@var{new_val}, \"local\")\n\
 Query or set the internal character variable that is appended to\n\
-successful command-line completion attempts.  The default\n\
-value is @qcode{\" \"} (a single space).\n\
+successful command-line completion attempts.\n\
+\n\
+The default value is @qcode{\" \"} (a single space).\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
-variable is changed locally for the function and any subroutines it calls.  \n\
+variable is changed locally for the function and any subroutines it calls.\n\
 The original variable value is restored when exiting the function.\n\
 @end deftypefn")
 {
@@ -1364,6 +1374,7 @@
 @deftypefnx {Built-in Function} {@var{old_val} =} echo_executing_commands (@var{new_val})\n\
 @deftypefnx {Built-in Function} {} echo_executing_commands (@var{new_val}, \"local\")\n\
 Query or set the internal variable that controls the echo state.\n\
+\n\
 It may be the sum of the following values:\n\
 \n\
 @table @asis\n\
@@ -1384,7 +1395,7 @@
 command or the command line option @option{--echo-commands}.\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
-variable is changed locally for the function and any subroutines it calls.  \n\
+variable is changed locally for the function and any subroutines it calls.\n\
 The original variable value is restored when exiting the function.\n\
 @end deftypefn")
 {
@@ -1438,7 +1449,9 @@
 @deftypefnx {Built-in Function} {@var{old_val} =} filemarker (@var{new_val})\n\
 @deftypefnx {Built-in Function} {} filemarker (@var{new_val}, \"local\")\n\
 Query or set the character used to separate the filename from the subfunction\n\
-names contained within the file.  By default this is the character @samp{>}.\n\
+names contained within the file.\n\
+\n\
+By default this is the character @samp{>}.\n\
 This can be used in a generic manner to interact with subfunctions.\n\
 For example,\n\
 \n\
--- a/libinterp/corefcn/inv.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/inv.cc	Sun May 10 21:37:19 2015 -0700
@@ -40,19 +40,21 @@
        "-*- texinfo -*-\n\
 @deftypefn  {Built-in Function} {@var{x} =} inv (@var{A})\n\
 @deftypefnx {Built-in Function} {[@var{x}, @var{rcond}] =} inv (@var{A})\n\
-Compute the inverse of the square matrix @var{A}.  Return an estimate\n\
-of the reciprocal condition number if requested, otherwise warn of an\n\
-ill-conditioned matrix if the reciprocal condition number is small.\n\
+Compute the inverse of the square matrix @var{A}.\n\
 \n\
-In general it is best to avoid calculating the inverse of a matrix\n\
-directly.  For example, it is both faster and more accurate to solve\n\
-systems of equations (@var{A}*@math{x} = @math{b}) with\n\
+Return an estimate of the reciprocal condition number if requested,\n\
+otherwise warn of an ill-conditioned matrix if the reciprocal condition\n\
+number is small.\n\
+\n\
+In general it is best to avoid calculating the inverse of a matrix directly.\n\
+For example, it is both faster and more accurate to solve systems of\n\
+equations (@var{A}*@math{x} = @math{b}) with\n\
 @code{@var{y} = @var{A} \\ @math{b}}, rather than\n\
 @code{@var{y} = inv (@var{A}) * @math{b}}.\n\
 \n\
 If called with a sparse matrix, then in general @var{x} will be a full\n\
-matrix requiring significantly more storage.  Avoid forming the inverse\n\
-of a sparse matrix if possible.\n\
+matrix requiring significantly more storage.  Avoid forming the inverse of a\n\
+sparse matrix if possible.\n\
 @seealso{ldivide, rdivide}\n\
 @end deftypefn")
 {
--- a/libinterp/corefcn/kron.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/kron.cc	Sun May 10 21:37:19 2015 -0700
@@ -234,8 +234,9 @@
 DEFUN (kron, args, , "-*- texinfo -*-\n\
 @deftypefn  {Built-in Function} {} kron (@var{A}, @var{B})\n\
 @deftypefnx {Built-in Function} {} kron (@var{A1}, @var{A2}, @dots{})\n\
-Form the Kronecker product of two or more matrices, defined block by \n\
-block as\n\
+Form the Kronecker product of two or more matrices.\n\
+\n\
+This is defined block by block as\n\
 \n\
 @example\n\
 x = [ a(i,j)*b ]\n\
@@ -252,7 +253,7 @@
 @end group\n\
 @end example\n\
 \n\
-If there are more than two input arguments @var{A1}, @var{A2}, @dots{}, \n\
+If there are more than two input arguments @var{A1}, @var{A2}, @dots{},\n\
 @var{An} the Kronecker product is computed as\n\
 \n\
 @example\n\
--- a/libinterp/corefcn/load-path.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/load-path.cc	Sun May 10 21:37:19 2015 -0700
@@ -2233,8 +2233,9 @@
 @deftypefn  {Built-in Function} {} genpath (@var{dir})\n\
 @deftypefnx {Built-in Function} {} genpath (@var{dir}, @var{skip}, @dots{})\n\
 Return a path constructed from @var{dir} and all its subdirectories.\n\
-If additional string parameters are given, the resulting path will\n\
-exclude directories with those names.\n\
+\n\
+If additional string parameters are given, the resulting path will exclude\n\
+directories with those names.\n\
 @end deftypefn")
 {
   octave_value retval;
@@ -2399,8 +2400,9 @@
        "-*- texinfo -*-\n\
 @deftypefn  {Built-in Function} {} addpath (@var{dir1}, @dots{})\n\
 @deftypefnx {Built-in Function} {} addpath (@var{dir1}, @dots{}, @var{option})\n\
-Add named directories to the function search path.  If\n\
-@var{option} is @qcode{\"-begin\"} or 0 (the default), prepend the\n\
+Add named directories to the function search path.\n\
+\n\
+If @var{option} is @qcode{\"-begin\"} or 0 (the default), prepend the\n\
 directory name to the current path.  If @var{option} is @qcode{\"-end\"}\n\
 or 1, append the directory name to the current path.\n\
 Directories added to the path must exist.\n\
--- a/libinterp/corefcn/load-save.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/load-save.cc	Sun May 10 21:37:19 2015 -0700
@@ -546,7 +546,9 @@
 @deftypefnx {Command} {} load file options v1 v2 @dots{}\n\
 @deftypefnx {Command} {S =} load (\"file\", \"options\", \"v1\", \"v2\", @dots{})\n\
 Load the named variables @var{v1}, @var{v2}, @dots{}, from the file\n\
-@var{file}.  If no variables are specified then all variables found in the\n\
+@var{file}.\n\
+\n\
+If no variables are specified then all variables found in the\n\
 file will be loaded.  As with @code{save}, the list of variables to extract\n\
 can be full names or use a pattern syntax.  The format of the file is\n\
 automatically detected but may be overridden by supplying the appropriate\n\
@@ -1485,7 +1487,9 @@
 @deftypefnx {Command} {} save @code{\"-\"} @var{v1} @var{v2} @dots{}\n\
 @deftypefnx {Built-in Function} {@var{s} =} save (@code{\"-\"} @var{v1} @var{v2} @dots{})\n\
 Save the named variables @var{v1}, @var{v2}, @dots{}, in the file\n\
-@var{file}.  The special filename @samp{-} may be used to return the\n\
+@var{file}.\n\
+\n\
+The special filename @samp{-} may be used to return the\n\
 content of the variables as a string.  If no variable names are listed,\n\
 Octave saves all the variables in the current scope.  Otherwise, full\n\
 variable names or pattern syntax can be used to specify the variables to\n\
@@ -1792,7 +1796,7 @@
 crashes or receives a hangup, terminate or similar signal.\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
-variable is changed locally for the function and any subroutines it calls.  \n\
+variable is changed locally for the function and any subroutines it calls.\n\
 The original variable value is restored when exiting the function.\n\
 @seealso{octave_core_file_limit, octave_core_file_name, octave_core_file_options}\n\
 @end deftypefn")
@@ -1807,11 +1811,12 @@
 @deftypefnx {Built-in Function} {} save_default_options (@var{new_val}, \"local\")\n\
 Query or set the internal variable that specifies the default options\n\
 for the @code{save} command, and defines the default format.\n\
+\n\
 Typical values include @qcode{\"-ascii\"}, @qcode{\"-text -zip\"}.\n\
 The default value is @option{-text}.\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
-variable is changed locally for the function and any subroutines it calls.  \n\
+variable is changed locally for the function and any subroutines it calls.\n\
 The original variable value is restored when exiting the function.\n\
 @seealso{save}\n\
 @end deftypefn")
@@ -1827,14 +1832,15 @@
 Query or set the internal variable that specifies the maximum amount\n\
 of memory (in kilobytes) of the top-level workspace that Octave will\n\
 attempt to save when writing data to the crash dump file (the name of\n\
-the file is specified by @var{octave_core_file_name}).  If\n\
-@var{octave_core_file_options} flags specify a binary format,\n\
+the file is specified by @var{octave_core_file_name}).\n\
+\n\
+If @var{octave_core_file_options} flags specify a binary format,\n\
 then @var{octave_core_file_limit} will be approximately the maximum\n\
 size of the file.  If a text file format is used, then the file could\n\
 be much larger than the limit.  The default value is -1 (unlimited)\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
-variable is changed locally for the function and any subroutines it calls.  \n\
+variable is changed locally for the function and any subroutines it calls.\n\
 The original variable value is restored when exiting the function.\n\
 @seealso{crash_dumps_octave_core, octave_core_file_name, octave_core_file_options}\n\
 @end deftypefn")
@@ -1849,10 +1855,11 @@
 @deftypefnx {Built-in Function} {} octave_core_file_name (@var{new_val}, \"local\")\n\
 Query or set the internal variable that specifies the name of the file\n\
 used for saving data from the top-level workspace if Octave aborts.\n\
+\n\
 The default value is @qcode{\"octave-workspace\"}\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
-variable is changed locally for the function and any subroutines it calls.  \n\
+variable is changed locally for the function and any subroutines it calls.\n\
 The original variable value is restored when exiting the function.\n\
 @seealso{crash_dumps_octave_core, octave_core_file_name, octave_core_file_options}\n\
 @end deftypefn")
@@ -1866,13 +1873,14 @@
 @deftypefnx {Built-in Function} {@var{old_val} =} octave_core_file_options (@var{new_val})\n\
 @deftypefnx {Built-in Function} {} octave_core_file_options (@var{new_val}, \"local\")\n\
 Query or set the internal variable that specifies the options used for\n\
-saving the workspace data if Octave aborts.  The value of\n\
-@code{octave_core_file_options} should follow the same format as the\n\
-options for the @code{save} function.  The default value is Octave's binary\n\
-format.\n\
+saving the workspace data if Octave aborts.\n\
+\n\
+The value of @code{octave_core_file_options} should follow the same format\n\
+as the options for the @code{save} function.  The default value is Octave's\n\
+binary format.\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
-variable is changed locally for the function and any subroutines it calls.  \n\
+variable is changed locally for the function and any subroutines it calls.\n\
 The original variable value is restored when exiting the function.\n\
 @seealso{crash_dumps_octave_core, octave_core_file_name, octave_core_file_limit}\n\
 @end deftypefn")
@@ -1887,12 +1895,12 @@
 @deftypefnx {Built-in Function} {} save_header_format_string (@var{new_val}, \"local\")\n\
 Query or set the internal variable that specifies the format\n\
 string used for the comment line written at the beginning of\n\
-text-format data files saved by Octave.  The format string is\n\
-passed to @code{strftime} and should begin with the character\n\
-@samp{#} and contain no newline characters.  If the value of\n\
-@code{save_header_format_string} is the empty string,\n\
-the header comment is omitted from text-format data files.  The\n\
-default value is\n\
+text-format data files saved by Octave.\n\
+\n\
+The format string is passed to @code{strftime} and should begin with the\n\
+character @samp{#} and contain no newline characters.  If the value of\n\
+@code{save_header_format_string} is the empty string, the header comment is\n\
+omitted from text-format data files.  The default value is\n\
 @c Set example in small font to prevent overfull line\n\
 \n\
 @smallexample\n\
@@ -1900,7 +1908,7 @@
 @end smallexample\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
-variable is changed locally for the function and any subroutines it calls.  \n\
+variable is changed locally for the function and any subroutines it calls.\n\
 The original variable value is restored when exiting the function.\n\
 @seealso{strftime, save}\n\
 @end deftypefn")
--- a/libinterp/corefcn/lookup.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/lookup.cc	Sun May 10 21:37:19 2015 -0700
@@ -191,14 +191,15 @@
        "-*- texinfo -*-\n\
 @deftypefn  {Built-in Function} {@var{idx} =} lookup (@var{table}, @var{y})\n\
 @deftypefnx {Built-in Function} {@var{idx} =} lookup (@var{table}, @var{y}, @var{opt})\n\
-Lookup values in a sorted table.  Usually used as a prelude to\n\
-interpolation.\n\
+Lookup values in a sorted table.\n\
+\n\
+This function is usually used as a prelude to interpolation.\n\
 \n\
 If table is increasing and @code{idx = lookup (table, y)}, then\n\
-@code{table(idx(i)) <= y(i) < table(idx(i+1))} for all @code{y(i)}\n\
-within the table.  If @code{y(i) < table(1)} then\n\
-@code{idx(i)} is 0. If @code{y(i) >= table(end)} or @code{isnan (y(i))} then\n\
-@code{idx(i)} is @code{n}.\n\
+@code{table(idx(i)) <= y(i) < table(idx(i+1))} for all @code{y(i)} within\n\
+the table.  If @code{y(i) < table(1)} then @code{idx(i)} is 0.  If\n\
+@code{y(i) >= table(end)} or @code{isnan (y(i))} then @code{idx(i)} is\n\
+@code{n}.\n\
 \n\
 If the table is decreasing, then the tests are reversed.\n\
 For non-strictly monotonic tables, empty intervals are always skipped.\n\
--- a/libinterp/corefcn/ls-oct-ascii.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/ls-oct-ascii.cc	Sun May 10 21:37:19 2015 -0700
@@ -420,8 +420,8 @@
 @deftypefn  {Built-in Function} {@var{val} =} save_precision ()\n\
 @deftypefnx {Built-in Function} {@var{old_val} =} save_precision (@var{new_val})\n\
 @deftypefnx {Built-in Function} {} save_precision (@var{new_val}, \"local\")\n\
-Query or set the internal variable that specifies the number of\n\
-digits to keep when saving data in text format.\n\
+Query or set the internal variable that specifies the number of digits to\n\
+keep when saving data in text format.\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
 variable is changed locally for the function and any subroutines it calls.\n\
--- a/libinterp/corefcn/lsode.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/lsode.cc	Sun May 10 21:37:19 2015 -0700
@@ -160,7 +160,9 @@
        "-*- texinfo -*-\n\
 @deftypefn  {Built-in Function} {[@var{x}, @var{istate}, @var{msg}] =} lsode (@var{fcn}, @var{x_0}, @var{t})\n\
 @deftypefnx {Built-in Function} {[@var{x}, @var{istate}, @var{msg}] =} lsode (@var{fcn}, @var{x_0}, @var{t}, @var{t_crit})\n\
-Solve the set of differential equations\n\
+Ordinary Differential Equation (ODE) solver.\n\
+\n\
+The set of differential equations to solve is\n\
 @tex\n\
 $$ {dx \\over dt} = f (x, t) $$\n\
 with\n\
--- a/libinterp/corefcn/lu.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/lu.cc	Sun May 10 21:37:19 2015 -0700
@@ -71,10 +71,12 @@
 @deftypefnx {Built-in Function} {@var{y} =} lu (@dots{})\n\
 @deftypefnx {Built-in Function} {[@dots{}] =} lu (@dots{}, \"vector\")\n\
 @cindex LU decomposition\n\
-Compute the LU@tie{}decomposition of @var{A}.  If @var{A} is full\n\
-subroutines from\n\
-@sc{lapack} are used and if @var{A} is sparse then @sc{umfpack} is used.  The\n\
-result is returned in a permuted form, according to the optional return\n\
+Compute the LU@tie{}decomposition of @var{A}.\n\
+\n\
+If @var{A} is full subroutines from @sc{lapack} are used and if @var{A} is\n\
+sparse then @sc{umfpack} is used.\n\
+\n\
+The result is returned in a permuted form, according to the optional return\n\
 value @var{P}.  For example, given the matrix @code{a = [1, 2; 3, 4]},\n\
 \n\
 @example\n\
@@ -607,11 +609,11 @@
 of @w{@var{A} + @var{x}*@var{y}.'}, where @var{x} and @var{y} are\n\
 column vectors (rank-1 update) or matrices with equal number of columns\n\
 (rank-k update).\n\
-Optionally, row-pivoted updating can be used by supplying\n\
-a row permutation (pivoting) matrix @var{P};\n\
-in that case, an updated permutation matrix is returned.\n\
-Note that if @var{L}, @var{U}, @var{P} is a pivoted LU@tie{}factorization\n\
-as obtained by @code{lu}:\n\
+\n\
+Optionally, row-pivoted updating can be used by supplying a row permutation\n\
+(pivoting) matrix @var{P}; in that case, an updated permutation matrix is\n\
+returned.  Note that if @var{L}, @var{U}, @var{P} is a pivoted\n\
+LU@tie{}factorization as obtained by @code{lu}:\n\
 \n\
 @example\n\
 [@var{L}, @var{U}, @var{P}] = lu (@var{A});\n\
@@ -636,9 +638,9 @@
 stable.  The second form uses a slower pivoted algorithm, which is more\n\
 stable.\n\
 \n\
-The matrix case is done as a sequence of rank-1 updates;\n\
-thus, for large enough k, it will be both faster and more accurate to\n\
-recompute the factorization from scratch.\n\
+The matrix case is done as a sequence of rank-1 updates; thus, for large\n\
+enough k, it will be both faster and more accurate to recompute the\n\
+factorization from scratch.\n\
 @seealso{lu, cholupdate, qrupdate}\n\
 @end deftypefn")
 {
--- a/libinterp/corefcn/luinc.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/luinc.cc	Sun May 10 21:37:19 2015 -0700
@@ -37,6 +37,7 @@
 #include "ov-re-sparse.h"
 #include "ov-cx-sparse.h"
 
+// FIXME: Deprecated in 4.0 and should be removed in 4.4.
 DEFUN (__luinc__, args, nargout,
        "-*- texinfo -*-\n\
 @deftypefn  {Built-in Function} {[@var{L}, @var{U}, @var{P}, @var{Q}] =} luinc (@var{A}, '0')\n\
@@ -44,6 +45,7 @@
 @deftypefnx {Built-in Function} {[@var{L}, @var{U}, @var{P}, @var{Q}] =} luinc (@var{A}, @var{opts})\n\
 @cindex LU decomposition\n\
 Produce the incomplete LU@tie{}factorization of the sparse matrix @var{A}.\n\
+\n\
 Two types of incomplete factorization are possible, and the type\n\
 is determined by the second argument to @code{luinc}.\n\
 \n\
--- a/libinterp/corefcn/mappers.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/mappers.cc	Sun May 10 21:37:19 2015 -0700
@@ -39,7 +39,9 @@
 DEFUN (abs, args, ,
        "-*- texinfo -*-\n\
 @deftypefn {Mapping Function} {} abs (@var{z})\n\
-Compute the magnitude of @var{z}, defined as\n\
+Compute the magnitude of @var{z}.\n\
+\n\
+The magnitude is defined as\n\
 @tex\n\
 $|z| = \\sqrt{x^2 + y^2}$.\n\
 @end tex\n\
@@ -55,6 +57,7 @@
      @result{} 5\n\
 @end group\n\
 @end example\n\
+@seealso{arg}\n\
 @end deftypefn")
 {
   octave_value retval;
@@ -157,7 +160,6 @@
 %!test
 %! re = 2.99822295029797;
 %! im = pi/2;
-%! assert (acosh (10i), re + i*im);
 %! assert (acosh (-10i), re - i*im);
 
 %!test
@@ -178,7 +180,8 @@
 DEFUN (angle, args, ,
        "-*- texinfo -*-\n\
 @deftypefn {Mapping Function} {} angle (@var{z})\n\
-See arg.\n\
+See @code{arg}.\n\
+@seealso{arg}\n\
 @end deftypefn")
 {
   octave_value retval;
@@ -194,7 +197,9 @@
        "-*- texinfo -*-\n\
 @deftypefn  {Mapping Function} {} arg (@var{z})\n\
 @deftypefnx {Mapping Function} {} angle (@var{z})\n\
-Compute the argument of @var{z}, defined as,\n\
+Compute the argument, i.e., angle of @var{z}.\n\
+\n\
+This is defined as,\n\
 @tex\n\
 $\\theta = atan2 (y, x),$\n\
 @end tex\n\
@@ -211,6 +216,7 @@
      @result{} 0.92730\n\
 @end group\n\
 @end example\n\
+@seealso{abs}\n\
 @end deftypefn")
 {
   octave_value retval;
@@ -394,6 +400,7 @@
        "-*- texinfo -*-\n\
 @deftypefn {Mapping Function} {} cbrt (@var{x})\n\
 Compute the real cube root of each element of @var{x}.\n\
+\n\
 Unlike @code{@var{x}^(1/3)}, the result will be negative if @var{x} is\n\
 negative.\n\
 @seealso{nthroot}\n\
@@ -425,9 +432,12 @@
 DEFUN (ceil, args, ,
        "-*- texinfo -*-\n\
 @deftypefn {Mapping Function} {} ceil (@var{x})\n\
-Return the smallest integer not less than @var{x}.  This is equivalent to\n\
-rounding towards positive infinity.  If @var{x} is\n\
-complex, return @code{ceil (real (@var{x})) + ceil (imag (@var{x})) * I}.\n\
+Return the smallest integer not less than @var{x}.\n\
+\n\
+This is equivalent to rounding towards positive infinity.\n\
+\n\
+If @var{x} is complex, return\n\
+@code{ceil (real (@var{x})) + ceil (imag (@var{x})) * I}.\n\
 \n\
 @example\n\
 @group\n\
@@ -467,7 +477,9 @@
 DEFUN (conj, args, ,
        "-*- texinfo -*-\n\
 @deftypefn {Mapping Function} {} conj (@var{z})\n\
-Return the complex conjugate of @var{z}, defined as\n\
+Return the complex conjugate of @var{z}.\n\
+\n\
+The complex conjugate is defined as\n\
 @tex\n\
 $\\bar{z} = x - iy$.\n\
 @end tex\n\
@@ -574,7 +586,9 @@
 DEFUN (erf, args, ,
        "-*- texinfo -*-\n\
 @deftypefn {Mapping Function} {} erf (@var{z})\n\
-Compute the error function,\n\
+Compute the error function.\n\
+\n\
+The error function is defined as\n\
 @tex\n\
 $$\n\
  {\\rm erf} (z) = {2 \\over \\sqrt{\\pi}}\\int_0^z e^{-t^2} dt\n\
@@ -644,7 +658,9 @@
 DEFUN (erfinv, args, ,
        "-*- texinfo -*-\n\
 @deftypefn {Mapping Function} {} erfinv (@var{x})\n\
-Compute the inverse error function, i.e., @var{y} such that\n\
+Compute the inverse error function.\n\
+\n\
+The inverse error function is defined such that\n\
 \n\
 @example\n\
 erf (@var{y}) == @var{x}\n\
@@ -682,7 +698,9 @@
 DEFUN (erfcinv, args, ,
        "-*- texinfo -*-\n\
 @deftypefn {Mapping Function} {} erfcinv (@var{x})\n\
-Compute the inverse complementary error function, i.e., @var{y} such that\n\
+Compute the inverse complementary error function.\n\
+\n\
+The inverse complementary error function is defined such that\n\
 \n\
 @example\n\
 erfc (@var{y}) == @var{x}\n\
@@ -720,7 +738,9 @@
 DEFUN (erfc, args, ,
        "-*- texinfo -*-\n\
 @deftypefn {Mapping Function} {} erfc (@var{z})\n\
-Compute the complementary error function,\n\
+Compute the complementary error function.\n\
+\n\
+The complementary error function is defined as\n\
 @tex\n\
 $1 - {\\rm erf} (z)$.\n\
 @end tex\n\
@@ -751,7 +771,9 @@
 DEFUN (erfcx, args, ,
        "-*- texinfo -*-\n\
 @deftypefn {Mapping Function} {} erfcx (@var{z})\n\
-Compute the scaled complementary error function,\n\
+Compute the scaled complementary error function.\n\
+\n\
+The scaled complementary error function is defined as\n\
 @tex\n\
 $$\n\
  e^{z^2} {\\rm erfc} (z) \\equiv e^{z^2} (1 - {\\rm erf} (z))\n\
@@ -794,10 +816,12 @@
 DEFUN (erfi, args, ,
        "-*- texinfo -*-\n\
 @deftypefn {Mapping Function} {} erfi (@var{z})\n\
-Compute the imaginary error function,\n\
+Compute the imaginary error function.\n\
+\n\
+The imaginary error function is defined as\n\
 @tex\n\
 $$\n\
- -i {\\rm erf} (iz) \n\
+ -i {\\rm erf} (iz)\n\
 $$\n\
 @end tex\n\
 @ifnottex\n\
@@ -832,7 +856,9 @@
 DEFUN (dawson, args, ,
        "-*- texinfo -*-\n\
 @deftypefn {Mapping Function} {} dawson (@var{z})\n\
-Compute the Dawson (scaled imaginary error) function,\n\
+Compute the Dawson (scaled imaginary error) function.\n\
+\n\
+The Dawson function is defined as\n\
 @tex\n\
 $$\n\
  {\\sqrt{\\pi} \\over 2} e^{-z^2} {\\rm erfi} (z) \\equiv -i {\\sqrt{\\pi} \\over 2} e^{-z^2} {\\rm erf} (iz)\n\
@@ -879,8 +905,9 @@
 @ifnottex\n\
 @code{e^x}\n\
 @end ifnottex\n\
-for each element of @var{x}.  To compute the matrix\n\
-exponential, see @ref{Linear Algebra}.\n\
+for each element of @var{x}.\n\
+\n\
+To compute the matrix exponential, see @ref{Linear Algebra}.\n\
 @seealso{log}\n\
 @end deftypefn")
 {
@@ -981,8 +1008,9 @@
 DEFUN (fix, args, ,
        "-*- texinfo -*-\n\
 @deftypefn {Mapping Function} {} fix (@var{x})\n\
-Truncate fractional portion of @var{x} and return the integer portion.  This\n\
-is equivalent to rounding towards zero.  If @var{x} is complex, return\n\
+Truncate fractional portion of @var{x} and return the integer portion.\n\
+\n\
+This is equivalent to rounding towards zero.  If @var{x} is complex, return\n\
 @code{fix (real (@var{x})) + fix (imag (@var{x})) * I}.\n\
 \n\
 @example\n\
@@ -1016,8 +1044,9 @@
 DEFUN (floor, args, ,
        "-*- texinfo -*-\n\
 @deftypefn {Mapping Function} {} floor (@var{x})\n\
-Return the largest integer not greater than @var{x}.  This is equivalent to\n\
-rounding towards negative infinity.  If @var{x} is\n\
+Return the largest integer not greater than @var{x}.\n\
+\n\
+This is equivalent to rounding towards negative infinity.  If @var{x} is\n\
 complex, return @code{floor (real (@var{x})) + floor (imag (@var{x})) * I}.\n\
 \n\
 @example\n\
@@ -1051,7 +1080,9 @@
 DEFUN (gamma, args, ,
        "-*- texinfo -*-\n\
 @deftypefn {Mapping Function} {} gamma (@var{z})\n\
-Compute the Gamma function,\n\
+Compute the Gamma function.\n\
+\n\
+The Gamma function is defined as\n\
 @tex\n\
 $$\n\
  \\Gamma (z) = \\int_0^\\infty t^{z-1} e^{-t} dt.\n\
@@ -1153,8 +1184,9 @@
         "-*- texinfo -*-\n\
 @deftypefn {Mapping Function} {} isalnum (@var{s})\n\
 Return a logical array which is true where the elements of @var{s} are\n\
-letters or digits and false where they are not.  This is equivalent to\n\
-(@code{isalpha (@var{s}) | isdigit (@var{s})}).\n\
+letters or digits and false where they are not.\n\
+\n\
+This is equivalent to (@code{isalpha (@var{s}) | isdigit (@var{s})}).\n\
 @seealso{isalpha, isdigit, ispunct, isspace, iscntrl}\n\
 @end deftypefn")
 {
@@ -1184,8 +1216,9 @@
         "-*- texinfo -*-\n\
 @deftypefn {Mapping Function} {} isalpha (@var{s})\n\
 Return a logical array which is true where the elements of @var{s} are\n\
-letters and false where they are not.  This is equivalent to\n\
-(@code{islower (@var{s}) | isupper (@var{s})}).\n\
+letters and false where they are not.\n\
+\n\
+This is equivalent to (@code{islower (@var{s}) | isupper (@var{s})}).\n\
 @seealso{isdigit, ispunct, isspace, iscntrl, isalnum, islower, isupper}\n\
 @end deftypefn")
 {
@@ -1299,6 +1332,7 @@
 @deftypefn {Mapping Function} {} isinf (@var{x})\n\
 Return a logical array which is true where the elements of @var{x} are\n\
 are infinite and false where they are not.\n\
+\n\
 For example:\n\
 \n\
 @example\n\
@@ -1398,6 +1432,7 @@
 @deftypefn {Mapping Function} {} isna (@var{x})\n\
 Return a logical array which is true where the elements of @var{x} are\n\
 NA (missing) values and false where they are not.\n\
+\n\
 For example:\n\
 \n\
 @example\n\
@@ -1440,6 +1475,7 @@
 @deftypefn {Mapping Function} {} isnan (@var{x})\n\
 Return a logical array which is true where the elements of @var{x} are\n\
 NaN values and false where they are not.\n\
+\n\
 NA values are also considered NaN values.  For example:\n\
 \n\
 @example\n\
@@ -1680,8 +1716,9 @@
 @ifnottex\n\
 @code{ln (@var{x})},\n\
 @end ifnottex\n\
-for each element of @var{x}.  To compute the\n\
-matrix logarithm, see @ref{Linear Algebra}.\n\
+for each element of @var{x}.\n\
+\n\
+To compute the matrix logarithm, see @ref{Linear Algebra}.\n\
 @seealso{exp, log1p, log2, log10, logspace}\n\
 @end deftypefn")
 {
@@ -1794,7 +1831,9 @@
 DEFUN (round, args, ,
        "-*- texinfo -*-\n\
 @deftypefn {Mapping Function} {} round (@var{x})\n\
-Return the integer nearest to @var{x}.  If @var{x} is complex, return\n\
+Return the integer nearest to @var{x}.\n\
+\n\
+If @var{x} is complex, return\n\
 @code{round (real (@var{x})) + round (imag (@var{x})) * I}.  If there\n\
 are two nearest integers, return the one further away from zero.\n\
 \n\
@@ -1841,7 +1880,9 @@
        "-*- texinfo -*-\n\
 @deftypefn {Mapping Function} {} roundb (@var{x})\n\
 Return the integer nearest to @var{x}.  If there are two nearest\n\
-integers, return the even one (banker's rounding).  If @var{x} is complex,\n\
+integers, return the even one (banker's rounding).\n\
+\n\
+If @var{x} is complex,\n\
 return @code{roundb (real (@var{x})) + roundb (imag (@var{x})) * I}.\n\
 @seealso{round}\n\
 @end deftypefn")
@@ -1881,7 +1922,9 @@
 DEFUN (sign, args, ,
        "-*- texinfo -*-\n\
 @deftypefn {Mapping Function} {} sign (@var{x})\n\
-Compute the @dfn{signum} function, which is defined as\n\
+Compute the @dfn{signum} function.\n\
+\n\
+This is defined as\n\
 @tex\n\
 $$\n\
 {\\rm sign} (@var{x}) = \\cases{1,&$x>0$;\\cr 0,&$x=0$;\\cr -1,&$x<0$.\\cr}\n\
@@ -1901,8 +1944,7 @@
 \n\
 For complex arguments, @code{sign} returns @code{x ./ abs (@var{x})}.\n\
 \n\
-Note that @code{sign (-0.0)} is 0.\n\
-Although IEEE 754 floating point\n\
+Note that @code{sign (-0.0)} is 0.  Although IEEE 754 floating point\n\
 allows zero to be signed, 0.0 and -0.0 compare equal.  If you must test\n\
 whether zero is signed, use the @code{signbit} function.\n\
 @seealso{signbit}\n\
@@ -1935,10 +1977,12 @@
 DEFUNX ("signbit", Fsignbit, args, ,
         "-*- texinfo -*-\n\
 @deftypefn {Mapping Function} {} signbit (@var{x})\n\
-Return logical true if the value of @var{x} has its sign bit set.\n\
-Otherwise return logical false.  This behavior is consistent with the other\n\
-logical functions.  See@ref{Logical Values}.  The behavior differs from the\n\
-C language function which returns nonzero if the sign bit is set.\n\
+Return logical true if the value of @var{x} has its sign bit set and false\n\
+otherwise.\n\
+\n\
+This behavior is consistent with the other logical functions.\n\
+See @ref{Logical Values}.  The behavior differs from the C language function\n\
+which returns nonzero if the sign bit is set.\n\
 \n\
 This is not the same as @code{x < 0.0}, because IEEE 754 floating point\n\
 allows zero to be signed.  The comparison @code{-0.0 < 0.0} is false,\n\
@@ -2042,9 +2086,11 @@
 DEFUN (sqrt, args, ,
        "-*- texinfo -*-\n\
 @deftypefn {Mapping Function} {} sqrt (@var{x})\n\
-Compute the square root of each element of @var{x}.  If @var{x} is negative,\n\
-a complex result is returned.  To compute the matrix square root, see\n\
-@ref{Linear Algebra}.\n\
+Compute the square root of each element of @var{x}.\n\
+\n\
+If @var{x} is negative, a complex result is returned.\n\
+\n\
+To compute the matrix square root, see @ref{Linear Algebra}.\n\
 @seealso{realsqrt, nthroot}\n\
 @end deftypefn")
 {
@@ -2141,7 +2187,9 @@
 DEFUNX ("toascii", Ftoascii, args, ,
         "-*- texinfo -*-\n\
 @deftypefn {Mapping Function} {} toascii (@var{s})\n\
-Return ASCII representation of @var{s} in a matrix.  For example:\n\
+Return ASCII representation of @var{s} in a matrix.\n\
+\n\
+For example:\n\
 \n\
 @example\n\
 @group\n\
@@ -2180,7 +2228,9 @@
 @deftypefnx {Mapping Function} {} lower (@var{s})\n\
 Return a copy of the string or cell string @var{s}, with each uppercase\n\
 character replaced by the corresponding lowercase one; non-alphabetic\n\
-characters are left unchanged.  For example:\n\
+characters are left unchanged.\n\
+\n\
+For example:\n\
 \n\
 @example\n\
 @group\n\
@@ -2240,7 +2290,9 @@
 @deftypefnx {Mapping Function} {} upper (@var{s})\n\
 Return a copy of the string or cell string @var{s}, with each lowercase\n\
 character replaced by the corresponding uppercase one; non-alphabetic\n\
-characters are left unchanged.  For example:\n\
+characters are left unchanged.\n\
+\n\
+For example:\n\
 \n\
 @example\n\
 @group\n\
--- a/libinterp/corefcn/matrix_type.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/matrix_type.cc	Sun May 10 21:37:19 2015 -0700
@@ -44,11 +44,16 @@
 @deftypefnx {Built-in Function} {@var{A} =} matrix_type (@var{A}, \"upper\", @var{perm})\n\
 @deftypefnx {Built-in Function} {@var{A} =} matrix_type (@var{A}, \"lower\", @var{perm})\n\
 @deftypefnx {Built-in Function} {@var{A} =} matrix_type (@var{A}, \"banded\", @var{nl}, @var{nu})\n\
-Identify the matrix type or mark a matrix as a particular type.  This allows\n\
-more rapid solutions of linear equations involving @var{A} to be performed.\n\
+Identify the matrix type or mark a matrix as a particular type.\n\
+\n\
+This allows more rapid solutions of linear equations involving @var{A} to be\n\
+performed.\n\
+\n\
 Called with a single argument, @code{matrix_type} returns the type of the\n\
-matrix and caches it for future use.  Called with more than one argument,\n\
-@code{matrix_type} allows the type of the matrix to be defined.\n\
+matrix and caches it for future use.\n\
+\n\
+Called with more than one argument, @code{matrix_type} allows the type of\n\
+the matrix to be defined.\n\
 \n\
 If the option @qcode{\"nocompute\"} is given, the function will not attempt\n\
 to guess the type if it is still unknown.  This is useful for debugging\n\
--- a/libinterp/corefcn/max.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/max.cc	Sun May 10 21:37:19 2015 -0700
@@ -431,11 +431,10 @@
 @deftypefnx {Built-in Function} {} min (@var{x}, @var{y})\n\
 Find minimum values in the array @var{x}.\n\
 \n\
-For a vector argument, return the minimum value.\n\
-For a matrix argument, return a row vector with the minimum value of each\n\
-column.\n\
-For a multi-dimensional array, @code{min} operates along the first\n\
-non-singleton dimension.\n\
+For a vector argument, return the minimum value.  For a matrix argument,\n\
+return a row vector with the minimum value of each column.  For a\n\
+multi-dimensional array, @code{min} operates along the first non-singleton\n\
+dimension.\n\
 \n\
 If the optional third argument @var{dim} is present then operate along\n\
 this dimension.  In this case the second argument is ignored and should be\n\
@@ -460,8 +459,8 @@
 @end example\n\
 \n\
 @noindent\n\
-compares each element of the range @code{2:5} with @code{pi}, and\n\
-returns a row vector of the minimum values.\n\
+compares each element of the range @code{2:5} with @code{pi}, and returns a\n\
+row vector of the minimum values.\n\
 \n\
 For complex arguments, the magnitude of the elements are used for\n\
 comparison.  If the magnitudes are identical, then the results are ordered\n\
@@ -478,9 +477,8 @@
 because all entries have magnitude 1, but -i has the smallest phase angle\n\
 with value -pi/2.\n\
 \n\
-If called with one input and two output arguments,\n\
-@code{min} also returns the first index of the\n\
-minimum value(s).  Thus,\n\
+If called with one input and two output arguments, @code{min} also returns\n\
+the first index of the minimum value(s).  Thus,\n\
 \n\
 @example\n\
 @group\n\
@@ -654,11 +652,10 @@
 @deftypefnx {Built-in Function} {} max (@var{x}, @var{y})\n\
 Find maximum values in the array @var{x}.\n\
 \n\
-For a vector argument, return the maximum value.\n\
-For a matrix argument, return a row vector with the maximum value of each\n\
-column.\n\
-For a multi-dimensional array, @code{max} operates along the first\n\
-non-singleton dimension.\n\
+For a vector argument, return the maximum value.  For a matrix argument,\n\
+return a row vector with the maximum value of each column.  For a\n\
+multi-dimensional array, @code{max} operates along the first non-singleton\n\
+dimension.\n\
 \n\
 If the optional third argument @var{dim} is present then operate along\n\
 this dimension.  In this case the second argument is ignored and should be\n\
@@ -701,9 +698,8 @@
 because all entries have magnitude 1, but -1 has the largest phase angle\n\
 with value pi.\n\
 \n\
-If called with one input and two output arguments,\n\
-@code{max} also returns the first index of the\n\
-maximum value(s).  Thus,\n\
+If called with one input and two output arguments, @code{max} also returns\n\
+the first index of the maximum value(s).  Thus,\n\
 \n\
 @example\n\
 @group\n\
--- a/libinterp/corefcn/md5sum.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/md5sum.cc	Sun May 10 21:37:19 2015 -0700
@@ -40,9 +40,10 @@
        "-*- texinfo -*-\n\
 @deftypefn  {Built-in Function} {} md5sum (@var{file})\n\
 @deftypefnx {Built-in Function} {} md5sum (@var{str}, @var{opt})\n\
-Calculate the MD5 sum of the file @var{file}.  If the second parameter\n\
-@var{opt} exists and is true, then calculate the MD5 sum of the\n\
-string @var{str}.\n\
+Calculate the MD5 sum of the file @var{file}.\n\
+\n\
+If the second parameter @var{opt} exists and is true, then calculate the MD5\n\
+sum of the string @var{str}.\n\
 @end deftypefn")
 {
   octave_value retval;
--- a/libinterp/corefcn/mgorth.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/mgorth.cc	Sun May 10 21:37:19 2015 -0700
@@ -52,8 +52,9 @@
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {[@var{y}, @var{h}] =} mgorth (@var{x}, @var{v})\n\
 Orthogonalize a given column vector @var{x} with respect to a set of\n\
-orthonormal vectors comprising the columns of @var{v}\n\
-using the modified Gram-Schmidt method.\n\
+orthonormal vectors comprising the columns of @var{v} using the modified\n\
+Gram-Schmidt method.\n\
+\n\
 On exit, @var{y} is a unit vector such that:\n\
 \n\
 @example\n\
--- a/libinterp/corefcn/nproc.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/nproc.cc	Sun May 10 21:37:19 2015 -0700
@@ -44,8 +44,8 @@
 processors available to the current process.\n\
 \n\
 @item overridable\n\
-likewise, but overridable through the @w{@env{OMP_NUM_THREADS}} environment\n\
-variable.\n\
+same as @code{current}, but overridable through the @w{@env{OMP_NUM_THREADS}}\n\
+environment variable.\n\
 @end table\n\
 @end deftypefn")
 {
--- a/libinterp/corefcn/oct-hist.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/oct-hist.cc	Sun May 10 21:37:19 2015 -0700
@@ -587,8 +587,7 @@
 @deftypefn  {Command} {} edit_history\n\
 @deftypefnx {Command} {} edit_history @var{cmd_number}\n\
 @deftypefnx {Command} {} edit_history @var{first} @var{last}\n\
-Edit the history list using the editor named by the variable\n\
-@w{@env{EDITOR}}.\n\
+Edit the history list using the editor named by the variable @env{EDITOR}.\n\
 \n\
 The commands to be edited are first copied to a temporary file.  When you\n\
 exit the editor, Octave executes the commands that remain in the file.  It\n\
@@ -615,7 +614,7 @@
 When using ranges, specifying a larger number for the first command than the\n\
 last command reverses the list of commands before they are placed in the\n\
 buffer to be edited.\n\
-@seealso{run_history}\n\
+@seealso{run_history, history}\n\
 @end deftypefn")
 {
   octave_value_list retval;
@@ -632,7 +631,9 @@
 @deftypefnx {Built-in Function} {@var{h} =} history ()\n\
 @deftypefnx {Built-in Function} {@var{h} =} history (@var{opt1}, @dots{})\n\
 If invoked with no arguments, @code{history} displays a list of commands\n\
-that you have executed.  Valid options are:\n\
+that you have executed.\n\
+\n\
+Valid options are:\n\
 \n\
 @table @code\n\
 @item   @var{n}\n\
@@ -662,6 +663,7 @@
 \n\
 If invoked with a single output argument, the history will be saved to that\n\
 argument as a cell string and will not be output to screen.\n\
+@seealso{edit_history, run_history}\n\
 @end deftypefn")
 {
   octave_value retval;
@@ -682,11 +684,12 @@
 Run commands from the history list.\n\
 \n\
 When invoked with no arguments, run the previously executed command;\n\
+\n\
 With one argument, run the specified command @var{cmd_number};\n\
+\n\
 With two arguments, run the list of commands between @var{first} and\n\
 @var{last}.  Command number specifiers may also be negative where -1\n\
-refers to the most recently executed command.\n\
-For example, the command\n\
+refers to the most recently executed command.  For example, the command\n\
 \n\
 @example\n\
 @group\n\
@@ -722,7 +725,7 @@
 @end group\n\
 @end example\n\
 \n\
-@seealso{edit_history}\n\
+@seealso{edit_history, history}\n\
 @end deftypefn")
 {
   octave_value_list retval;
@@ -737,9 +740,10 @@
 @deftypefn  {Built-in Function} {@var{val} =} history_control ()\n\
 @deftypefnx {Built-in Function} {@var{old_val} =} history_control (@var{new_val})\n\
 Query or set the internal variable that specifies how commands are saved\n\
-to the history list.  The default value is an empty character string,\n\
-but may be overridden by the environment variable\n\
-@w{@env{OCTAVE_HISTCONTROL}}.\n\
+to the history list.\n\
+\n\
+The default value is an empty character string, but may be overridden by the\n\
+environment variable @w{@env{OCTAVE_HISTCONTROL}}.\n\
 \n\
 The value of @code{history_control} is a colon-separated list of values\n\
 controlling how commands are saved on the history list.  If the list\n\
@@ -774,8 +778,10 @@
 @deftypefn  {Built-in Function} {@var{val} =} history_size ()\n\
 @deftypefnx {Built-in Function} {@var{old_val} =} history_size (@var{new_val})\n\
 Query or set the internal variable that specifies how many entries\n\
-to store in the history file.  The default value is @code{1000},\n\
-but may be overridden by the environment variable @w{@env{OCTAVE_HISTSIZE}}.\n\
+to store in the history file.\n\
+\n\
+The default value is @code{1000}, but may be overridden by the environment\n\
+variable @w{@env{OCTAVE_HISTSIZE}}.\n\
 @seealso{history_file, history_timestamp_format_string, history_save}\n\
 @end deftypefn")
 {
@@ -800,9 +806,10 @@
 @deftypefn  {Built-in Function} {@var{val} =} history_file ()\n\
 @deftypefnx {Built-in Function} {@var{old_val} =} history_file (@var{new_val})\n\
 Query or set the internal variable that specifies the name of the\n\
-file used to store command history.  The default value is\n\
-@file{~/.octave_hist}, but may be overridden by the environment\n\
-variable @w{@env{OCTAVE_HISTFILE}}.\n\
+file used to store command history.\n\
+\n\
+The default value is @file{~/.octave_hist}, but may be overridden by the\n\
+environment variable @w{@env{OCTAVE_HISTFILE}}.\n\
 @seealso{history_size, history_save, history_timestamp_format_string}\n\
 @end deftypefn")
 {
@@ -827,15 +834,16 @@
 @deftypefnx {Built-in Function} {} history_timestamp_format_string (@var{new_val}, \"local\")\n\
 Query or set the internal variable that specifies the format string\n\
 for the comment line that is written to the history file when Octave\n\
-exits.  The format string is passed to @code{strftime}.  The default\n\
-value is\n\
+exits.\n\
+\n\
+The format string is passed to @code{strftime}.  The default value is\n\
 \n\
 @example\n\
 \"# Octave VERSION, %a %b %d %H:%M:%S %Y %Z <USER@@HOST>\"\n\
 @end example\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
-variable is changed locally for the function and any subroutines it calls.  \n\
+variable is changed locally for the function and any subroutines it calls.\n\
 The original variable value is restored when exiting the function.\n\
 @seealso{strftime, history_file, history_size, history_save}\n\
 @end deftypefn")
@@ -852,7 +860,7 @@
 on the command line are saved in the history file.\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
-variable is changed locally for the function and any subroutines it calls.  \n\
+variable is changed locally for the function and any subroutines it calls.\n\
 The original variable value is restored when exiting the function.\n\
 @seealso{history_control, history_file, history_size, history_timestamp_format_string}\n\
 @end deftypefn")
--- a/libinterp/corefcn/ordschur.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/ordschur.cc	Sun May 10 21:37:19 2015 -0700
@@ -68,6 +68,7 @@
 Reorders the real Schur factorization (@var{U},@var{S}) obtained with the\n\
 @code{schur} function, so that selected eigenvalues appear in the upper left\n\
 diagonal blocks of the quasi triangular Schur matrix.\n\
+\n\
 The logical vector @var{select} specifies the selected eigenvalues as they\n\
 appear along @var{S}'s diagonal.\n\
 \n\
--- a/libinterp/corefcn/pager.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/pager.cc	Sun May 10 21:37:19 2015 -0700
@@ -612,8 +612,10 @@
 @deftypefn  {Command} {} more\n\
 @deftypefnx {Command} {} more on\n\
 @deftypefnx {Command} {} more off\n\
-Turn output pagination on or off.  Without an argument, @code{more}\n\
-toggles the current state.\n\
+Turn output pagination on or off.\n\
+\n\
+Without an argument, @code{more} toggles the current state.\n\
+\n\
 The current state can be determined via @code{page_screen_output}.\n\
 @seealso{page_screen_output, page_output_immediately, PAGER, PAGER_FLAGS}\n\
 @end deftypefn")
@@ -649,8 +651,8 @@
 DEFUN (terminal_size, , ,
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} terminal_size ()\n\
-Return a two-element row vector containing the current size of the\n\
-terminal window in characters (rows and columns).\n\
+Return a two-element row vector containing the current size of the terminal\n\
+window in characters (rows and columns).\n\
 @seealso{list_in_columns}\n\
 @end deftypefn")
 {
@@ -668,12 +670,13 @@
 @deftypefnx {Built-in Function} {@var{old_val} =} page_output_immediately (@var{new_val})\n\
 @deftypefnx {Built-in Function} {} page_output_immediately (@var{new_val}, \"local\")\n\
 Query or set the internal variable that controls whether Octave sends\n\
-output to the pager as soon as it is available.  Otherwise, Octave\n\
-buffers its output and waits until just before the prompt is printed to\n\
-flush it to the pager.\n\
+output to the pager as soon as it is available.\n\
+\n\
+Otherwise, Octave buffers its output and waits until just before the prompt\n\
+is printed to flush it to the pager.\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
-variable is changed locally for the function and any subroutines it calls.  \n\
+variable is changed locally for the function and any subroutines it calls.\n\
 The original variable value is restored when exiting the function.\n\
 @seealso{page_screen_output, more, PAGER, PAGER_FLAGS}\n\
 @end deftypefn")
@@ -688,12 +691,14 @@
 @deftypefnx {Built-in Function} {} page_screen_output (@var{new_val}, \"local\")\n\
 Query or set the internal variable that controls whether output intended\n\
 for the terminal window that is longer than one page is sent through a\n\
-pager.  This allows you to view one screenful at a time.  Some pagers\n\
+pager.\n\
+\n\
+This allows you to view one screenful at a time.  Some pagers\n\
 (such as @code{less}---see @ref{Installation}) are also capable of moving\n\
 backward on the output.\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
-variable is changed locally for the function and any subroutines it calls.  \n\
+variable is changed locally for the function and any subroutines it calls.\n\
 The original variable value is restored when exiting the function.\n\
 @seealso{more, page_output_immediately, PAGER, PAGER_FLAGS}\n\
 @end deftypefn")
@@ -707,13 +712,14 @@
 @deftypefnx {Built-in Function} {@var{old_val} =} PAGER (@var{new_val})\n\
 @deftypefnx {Built-in Function} {} PAGER (@var{new_val}, \"local\")\n\
 Query or set the internal variable that specifies the program to use\n\
-to display terminal output on your system.  The default value is\n\
-normally @qcode{\"less\"}, @qcode{\"more\"}, or\n\
+to display terminal output on your system.\n\
+\n\
+The default value is normally @qcode{\"less\"}, @qcode{\"more\"}, or\n\
 @qcode{\"pg\"}, depending on what programs are installed on your system.\n\
 @xref{Installation}.\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
-variable is changed locally for the function and any subroutines it calls.  \n\
+variable is changed locally for the function and any subroutines it calls.\n\
 The original variable value is restored when exiting the function.\n\
 @seealso{PAGER_FLAGS, page_output_immediately, more, page_screen_output}\n\
 @end deftypefn")
@@ -730,7 +736,7 @@
 to the pager.\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
-variable is changed locally for the function and any subroutines it calls.  \n\
+variable is changed locally for the function and any subroutines it calls.\n\
 The original variable value is restored when exiting the function.\n\
 @seealso{PAGER, more, page_screen_output, page_output_immediately}\n\
 @end deftypefn")
--- a/libinterp/corefcn/pinv.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/pinv.cc	Sun May 10 21:37:19 2015 -0700
@@ -40,8 +40,9 @@
        "-*- texinfo -*-\n\
 @deftypefn  {Built-in Function} {} pinv (@var{x})\n\
 @deftypefnx {Built-in Function} {} pinv (@var{x}, @var{tol})\n\
-Return the pseudoinverse of @var{x}.  Singular values less than\n\
-@var{tol} are ignored.\n\
+Return the pseudoinverse of @var{x}.\n\
+\n\
+Singular values less than @var{tol} are ignored.\n\
 \n\
 If the second argument is omitted, it is taken to be\n\
 \n\
--- a/libinterp/corefcn/pr-output.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/pr-output.cc	Sun May 10 21:37:19 2015 -0700
@@ -3407,7 +3407,8 @@
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} rats (@var{x}, @var{len})\n\
 Convert @var{x} into a rational approximation represented as a string.\n\
-You can convert the string back into a matrix as follows:\n\
+\n\
+The string can be converted back into a matrix as follows:\n\
 \n\
 @example\n\
 @group\n\
@@ -3489,7 +3490,9 @@
 DEFUN (disp, args, nargout,
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} disp (@var{x})\n\
-Display the value of @var{x}.  For example:\n\
+Display the value of @var{x}.\n\
+\n\
+For example:\n\
 \n\
 @example\n\
 @group\n\
@@ -3503,8 +3506,8 @@
 @noindent\n\
 Note that the output from @code{disp} always ends with a newline.\n\
 \n\
-If an output value is requested, @code{disp} prints nothing and\n\
-returns the formatted output in a string.\n\
+If an output value is requested, @code{disp} prints nothing and returns the\n\
+formatted output in a string.\n\
 @seealso{fdisp}\n\
 @end deftypefn")
 {
@@ -3534,7 +3537,9 @@
 DEFUN (fdisp, args, ,
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} fdisp (@var{fid}, @var{x})\n\
-Display the value of @var{x} on the stream @var{fid}.  For example:\n\
+Display the value of @var{x} on the stream @var{fid}.\n\
+\n\
+For example:\n\
 \n\
 @example\n\
 @group\n\
@@ -3890,10 +3895,12 @@
 @deftypefn  {Command} {} format\n\
 @deftypefnx {Command} {} format options\n\
 Reset or specify the format of the output produced by @code{disp} and\n\
-Octave's normal echoing mechanism.  This command only affects the display\n\
-of numbers but not how they are stored or computed.  To change the internal\n\
-representation from the default double use one of the conversion functions\n\
-such as @code{single}, @code{uint8}, @code{int64}, etc.\n\
+Octave's normal echoing mechanism.\n\
+\n\
+This command only affects the display of numbers but not how they are stored\n\
+or computed.  To change the internal representation from the default double\n\
+use one of the conversion functions such as @code{single}, @code{uint8},\n\
+@code{int64}, etc.\n\
 \n\
 By default, Octave displays 5 significant digits in a human readable form\n\
 (option @samp{short} paired with @samp{loose} format for matrices).\n\
@@ -4053,7 +4060,7 @@
 Insert blank lines above and below column number labels and between matrices\n\
 to produce a more readable output with less data per page.  (default).\n\
 @end table\n\
-@seealso{fixed_point_format, output_max_field_width, output_precision, split_long_rows, rats}\n\
+@seealso{fixed_point_format, output_max_field_width, output_precision, split_long_rows, print_empty_dimensions, rats}\n\
 @end deftypefn")
 {
   octave_value_list retval;
@@ -4122,7 +4129,7 @@
 @code{fixed_point_format}.\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
-variable is changed locally for the function and any subroutines it calls.  \n\
+variable is changed locally for the function and any subroutines it calls.\n\
 The original variable value is restored when exiting the function.\n\
 @seealso{format, output_max_field_width, output_precision}\n\
 @end deftypefn")
@@ -4135,9 +4142,10 @@
 @deftypefn  {Built-in Function} {@var{val} =} print_empty_dimensions ()\n\
 @deftypefnx {Built-in Function} {@var{old_val} =} print_empty_dimensions (@var{new_val})\n\
 @deftypefnx {Built-in Function} {} print_empty_dimensions (@var{new_val}, \"local\")\n\
-Query or set the internal variable that controls whether the\n\
-dimensions of empty matrices are printed along with the empty matrix\n\
-symbol, @samp{[]}.  For example, the expression\n\
+Query or set the internal variable that controls whether the dimensions of\n\
+empty matrices are printed along with the empty matrix symbol, @samp{[]}.\n\
+\n\
+For example, the expression\n\
 \n\
 @example\n\
 zeros (3, 0)\n\
@@ -4151,7 +4159,7 @@
 @end example\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
-variable is changed locally for the function and any subroutines it calls.  \n\
+variable is changed locally for the function and any subroutines it calls.\n\
 The original variable value is restored when exiting the function.\n\
 @seealso{format}\n\
 @end deftypefn")
@@ -4165,11 +4173,12 @@
 @deftypefnx {Built-in Function} {@var{old_val} =} split_long_rows (@var{new_val})\n\
 @deftypefnx {Built-in Function} {} split_long_rows (@var{new_val}, \"local\")\n\
 Query or set the internal variable that controls whether rows of a matrix\n\
-may be split when displayed to a terminal window.  If the rows are split,\n\
-Octave will display the matrix in a series of smaller pieces, each of\n\
-which can fit within the limits of your terminal width and each set of\n\
-rows is labeled so that you can easily see which columns are currently\n\
-being displayed.  For example:\n\
+may be split when displayed to a terminal window.\n\
+\n\
+If the rows are split, Octave will display the matrix in a series of smaller\n\
+pieces, each of which can fit within the limits of your terminal width and\n\
+each set of rows is labeled so that you can easily see which columns are\n\
+currently being displayed.  For example:\n\
 \n\
 @example\n\
 @group\n\
@@ -4189,7 +4198,7 @@
 @end example\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
-variable is changed locally for the function and any subroutines it calls.  \n\
+variable is changed locally for the function and any subroutines it calls.\n\
 The original variable value is restored when exiting the function.\n\
 @seealso{format}\n\
 @end deftypefn")
@@ -4206,7 +4215,7 @@
 of a numeric output field.\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
-variable is changed locally for the function and any subroutines it calls.  \n\
+variable is changed locally for the function and any subroutines it calls.\n\
 The original variable value is restored when exiting the function.\n\
 @seealso{format, fixed_point_format, output_precision}\n\
 @end deftypefn")
@@ -4224,7 +4233,7 @@
 significant figures to display for numeric output.\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
-variable is changed locally for the function and any subroutines it calls.  \n\
+variable is changed locally for the function and any subroutines it calls.\n\
 The original variable value is restored when exiting the function.\n\
 @seealso{format, fixed_point_format, output_max_field_width}\n\
 @end deftypefn")
--- a/libinterp/corefcn/pt-jit.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/pt-jit.cc	Sun May 10 21:37:19 2015 -0700
@@ -2520,11 +2520,11 @@
 @deftypefn  {Built-in Function} {@var{val} =} jit_failcnt ()\n\
 @deftypefnx {Built-in Function} {@var{old_val} =} jit_failcnt (@var{new_val})\n\
 @deftypefnx {Built-in Function} {} jit_failcnt (@var{new_val}, \"local\")\n\
-Query or set the internal variable that counts the number of\n\
-JIT fail exceptions for Octave's JIT compiler.\n\
+Query or set the internal variable that counts the number of JIT fail\n\
+exceptions for Octave's JIT compiler.\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
-variable is changed locally for the function and any subroutines it calls.  \n\
+variable is changed locally for the function and any subroutines it calls.\n\
 The original variable value is restored when exiting the function.\n\
 @seealso{jit_enable, jit_startcnt, debug_jit}\n\
 @end deftypefn")
@@ -2547,7 +2547,7 @@
 debugging/tracing is enabled for Octave's JIT compiler.\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
-variable is changed locally for the function and any subroutines it calls.  \n\
+variable is changed locally for the function and any subroutines it calls.\n\
 The original variable value is restored when exiting the function.\n\
 @seealso{jit_enable, jit_startcnt}\n\
 @end deftypefn")
@@ -2569,7 +2569,7 @@
 Query or set the internal variable that enables Octave's JIT compiler.\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
-variable is changed locally for the function and any subroutines it calls.  \n\
+variable is changed locally for the function and any subroutines it calls.\n\
 The original variable value is restored when exiting the function.\n\
 @seealso{jit_startcnt, debug_jit}\n\
 @end deftypefn")
@@ -2589,14 +2589,16 @@
 @deftypefnx {Built-in Function} {@var{old_val} =} jit_startcnt (@var{new_val})\n\
 @deftypefnx {Built-in Function} {} jit_startcnt (@var{new_val}, \"local\")\n\
 Query or set the internal variable that determines whether JIT compilation\n\
-will take place for a specific loop.  Because compilation is a costly\n\
-operation it does not make sense to employ JIT when the loop count is low.\n\
-By default only loops with greater than 1000 iterations will be accelerated.\n\
+will take place for a specific loop.\n\
+\n\
+Because compilation is a costly operation it does not make sense to employ\n\
+JIT when the loop count is low.  By default only loops with greater than\n\
+1000 iterations will be accelerated.\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
-variable is changed locally for the function and any subroutines it calls.  \n\
+variable is changed locally for the function and any subroutines it calls.\n\
 The original variable value is restored when exiting the function.\n\
-@seealso{jit_enable, debug_jit}\n\
+@seealso{jit_enable, jit_failcnt, debug_jit}\n\
 @end deftypefn")
 {
 #if defined (HAVE_LLVM)
--- a/libinterp/corefcn/quad.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/quad.cc	Sun May 10 21:37:19 2015 -0700
@@ -179,10 +179,11 @@
 @deftypefnx {Built-in Function} {@var{q} =} quad (@var{f}, @var{a}, @var{b}, @var{tol}, @var{sing})\n\
 @deftypefnx {Built-in Function} {[@var{q}, @var{ier}, @var{nfun}, @var{err}] =} quad (@dots{})\n\
 Numerically evaluate the integral of @var{f} from @var{a} to @var{b} using\n\
-Fortran routines from @w{@sc{quadpack}}.  @var{f} is a function handle,\n\
-inline function, or a string containing the name of the function to\n\
-evaluate.  The function must have the form @code{y = f (x)} where @var{y} and\n\
-@var{x} are scalars.\n\
+Fortran routines from @w{@sc{quadpack}}.\n\
+\n\
+@var{f} is a function handle, inline function, or a string containing the\n\
+name of the function to evaluate.  The function must have the form @code{y =\n\
+f (x)} where @var{y} and @var{x} are scalars.\n\
 \n\
 @var{a} and @var{b} are the lower and upper limits of integration.  Either\n\
 or both may be infinite.\n\
@@ -198,14 +199,18 @@
 The optional argument @var{sing} is a vector of values at which the\n\
 integrand is known to be singular.\n\
 \n\
-The result of the integration is returned in @var{q}.  @var{ier}\n\
-contains an integer error code (0 indicates a successful integration).\n\
+The result of the integration is returned in @var{q}.\n\
+\n\
+@var{ier} contains an integer error code (0 indicates a successful\n\
+integration).\n\
+\n\
 @var{nfun} indicates the number of function evaluations that were\n\
-made, and @var{err} contains an estimate of the error in the\n\
-solution.\n\
+made.\n\
 \n\
-The function @code{quad_options} can set other optional\n\
-parameters for @code{quad}.\n\
+@var{err} contains an estimate of the error in the solution.\n\
+\n\
+The function @code{quad_options} can set other optional parameters for\n\
+@code{quad}.\n\
 \n\
 Note: because @code{quad} is written in Fortran it cannot be called\n\
 recursively.  This prevents its use in integrating over more than one\n\
--- a/libinterp/corefcn/quadcc.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/quadcc.cc	Sun May 10 21:37:19 2015 -0700
@@ -1492,13 +1492,12 @@
 @deftypefnx {Function File} {@var{q} =} quadcc (@var{f}, @var{a}, @var{b}, @var{tol}, @var{sing})\n\
 @deftypefnx {Function File} {[@var{q}, @var{err}, @var{nr_points}] =} quadcc (@dots{})\n\
 Numerically evaluate the integral of @var{f} from @var{a} to @var{b}\n\
-using the doubly-adaptive @nospell{Clenshaw-Curtis} quadrature described by\n\
-@nospell{P. Gonnet} in @cite{Increasing the Reliability of Adaptive\n\
-Quadrature Using Explicit Interpolants}.\n\
-@var{f} is a function handle, inline function, or string\n\
-containing the name of the function to evaluate.\n\
-The function @var{f} must be vectorized and must return a vector of output\n\
-values if given a vector of input values.  For example,\n\
+using doubly-adaptive @nospell{Clenshaw-Curtis} quadrature.\n\
+\n\
+@var{f} is a function handle, inline function, or string containing the name\n\
+of the function to evaluate.  The function @var{f} must be vectorized and\n\
+must return a vector of output values if given a vector of input values. \n\
+For example,\n\
 \n\
 @example\n\
 f = @@(x) x .* sin (1./x) .* sqrt (abs (1 - x));\n\
@@ -1525,27 +1524,30 @@
 @end example\n\
 \n\
 The result of the integration is returned in @var{q}.\n\
-@var{err} is an estimate of the absolute integration error and\n\
+\n\
+@var{err} is an estimate of the absolute integration error.\n\
+\n\
 @var{nr_points} is the number of points at which the integrand was evaluated.\n\
-If the adaptive integration did not converge, the value of\n\
-@var{err} will be larger than the requested tolerance.  Therefore, it is\n\
-recommended to verify this value for difficult integrands.\n\
+\n\
+If the adaptive integration did not converge, the value of @var{err} will be\n\
+larger than the requested tolerance.  Therefore, it is recommended to verify\n\
+this value for difficult integrands.\n\
 \n\
-@code{quadcc} is capable of dealing with non-numeric\n\
-values of the integrand such as @code{NaN} or @code{Inf}.\n\
-If the integral diverges, and @code{quadcc} detects this,\n\
-then a warning is issued and @code{Inf} or @code{-Inf} is returned.\n\
+@code{quadcc} is capable of dealing with non-numeric values of the integrand\n\
+such as @code{NaN} or @code{Inf}.  If the integral diverges, and\n\
+@code{quadcc} detects this, then a warning is issued and @code{Inf} or\n\
+@code{-Inf} is returned.\n\
 \n\
-Note: @code{quadcc} is a general purpose quadrature algorithm\n\
-and, as such, may be less efficient for a smooth or otherwise\n\
-well-behaved integrand than other methods such as @code{quadgk}.\n\
+Note: @code{quadcc} is a general purpose quadrature algorithm and, as such,\n\
+may be less efficient for a smooth or otherwise well-behaved integrand than\n\
+other methods such as @code{quadgk}.\n\
 \n\
 The algorithm uses @nospell{Clenshaw-Curtis} quadrature rules of increasing\n\
-degree in each interval and bisects the interval if either the\n\
-function does not appear to be smooth or a rule of maximum\n\
-degree has been reached.  The error estimate is computed from the\n\
-L2-norm of the difference between two successive interpolations\n\
-of the integrand over the nodes of the respective quadrature rules.\n\
+degree in each interval and bisects the interval if either the function does\n\
+not appear to be smooth or a rule of maximum degree has been reached.  The\n\
+error estimate is computed from the L2-norm of the difference between two\n\
+successive interpolations of the integrand over the nodes of the respective\n\
+quadrature rules.\n\
 \n\
 Reference: @nospell{P. Gonnet}, @cite{Increasing the Reliability of Adaptive\n\
 Quadrature Using Explicit Interpolants}, ACM Transactions on\n\
--- a/libinterp/corefcn/qz.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/qz.cc	Sun May 10 21:37:19 2015 -0700
@@ -296,7 +296,9 @@
 @deftypefn  {Built-in Function} {@var{lambda} =} qz (@var{A}, @var{B})\n\
 @deftypefnx {Built-in Function} {@var{lambda} =} qz (@var{A}, @var{B}, @var{opt})\n\
 QZ@tie{}decomposition of the generalized eigenvalue problem\n\
-(@math{A x = s B x}).  There are three ways to call this function:\n\
+(@math{A x = s B x}).\n\
+\n\
+There are three ways to call this function:\n\
 @enumerate\n\
 @item @code{@var{lambda} = qz (@var{A}, @var{B})}\n\
 \n\
@@ -311,8 +313,8 @@
 \n\
 @item @code{[AA, BB, Q, Z, V, W, @var{lambda}] = qz (@var{A}, @var{B})}\n\
 \n\
-Computes QZ@tie{}decomposition, generalized eigenvectors, and\n\
-generalized eigenvalues of @math{(A - s B)}\n\
+Computes QZ@tie{}decomposition, generalized eigenvectors, and generalized\n\
+eigenvalues of @math{(A - s B)}\n\
 @tex\n\
 $$ AV = BV{ \\rm diag }(\\lambda) $$\n\
 $$ W^T A = { \\rm diag }(\\lambda)W^T B $$\n\
@@ -335,16 +337,15 @@
 \n\
 @item @code{[AA,BB,Z@{, @var{lambda}@}] = qz (@var{A}, @var{B}, @var{opt})}\n\
 \n\
-As in form [2], but allows ordering of generalized eigenpairs\n\
-for (e.g.) solution of discrete time algebraic Riccati equations.\n\
-Form 3 is not available for complex matrices, and does not compute\n\
-the generalized eigenvectors @var{V}, @var{W}, nor the orthogonal matrix\n\
-@var{Q}.\n\
+As in form [2], but allows ordering of generalized eigenpairs for, e.g.,\n\
+solution of discrete time algebraic Riccati equations.  Form 3 is not\n\
+available for complex matrices, and does not compute the generalized\n\
+eigenvectors @var{V}, @var{W}, nor the orthogonal matrix @var{Q}.\n\
 \n\
 @table @var\n\
 @item opt\n\
-for ordering eigenvalues of the @nospell{GEP} pencil.  The leading block\n\
-of the revised pencil contains all eigenvalues that satisfy:\n\
+for ordering eigenvalues of the @nospell{GEP} pencil.  The leading block of\n\
+the revised pencil contains all eigenvalues that satisfy:\n\
 \n\
 @table @asis\n\
 @item @qcode{\"N\"}\n\
--- a/libinterp/corefcn/rand.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/rand.cc	Sun May 10 21:37:19 2015 -0700
@@ -377,28 +377,27 @@
 @deftypefnx {Built-in Function} {} rand (@dots{}, \"single\")\n\
 @deftypefnx {Built-in Function} {} rand (@dots{}, \"double\")\n\
 Return a matrix with random elements uniformly distributed on the\n\
-interval (0, 1).  The arguments are handled the same as the arguments\n\
-for @code{eye}.\n\
+interval (0, 1).\n\
 \n\
-You can query the state of the random number generator using the\n\
-form\n\
+The arguments are handled the same as the arguments for @code{eye}.\n\
+\n\
+You can query the state of the random number generator using the form\n\
 \n\
 @example\n\
 v = rand (\"state\")\n\
 @end example\n\
 \n\
-This returns a column vector @var{v} of length 625.  Later, you can\n\
-restore the random number generator to the state @var{v}\n\
-using the form\n\
+This returns a column vector @var{v} of length 625.  Later, you can restore\n\
+the random number generator to the state @var{v} using the form\n\
 \n\
 @example\n\
 rand (\"state\", v)\n\
 @end example\n\
 \n\
 @noindent\n\
-You may also initialize the state vector from an arbitrary vector of\n\
-length @leq{} 625 for @var{v}.  This new state will be a hash based on the\n\
-value of @var{v}, not @var{v} itself.\n\
+You may also initialize the state vector from an arbitrary vector of length\n\
+@leq{} 625 for @var{v}.  This new state will be a hash based on the value of\n\
+@var{v}, not @var{v} itself.\n\
 \n\
 By default, the generator is initialized from @code{/dev/urandom} if it is\n\
 available, otherwise from CPU time, wall clock time, and the current\n\
@@ -408,24 +407,24 @@
 vector in Octave's startup files (@pxref{Startup Files}).\n\
 \n\
 To compute the pseudo-random sequence, @code{rand} uses the Mersenne\n\
-Twister with a period of @math{2^{19937}-1} (See\n\
-@nospell{M. Matsumoto and T. Nishimura},\n\
+Twister with a period of @math{2^{19937}-1}\n\
+(See @nospell{M. Matsumoto and T. Nishimura},\n\
 @cite{Mersenne Twister: A 623-dimensionally equidistributed uniform\n\
-pseudorandom number generator}, ACM Trans. on\n\
-Modeling and Computer Simulation Vol. 8, No. 1, pp. 3-30, January 1998,\n\
+pseudorandom number generator},\n\
+ACM Trans. on Modeling and Computer Simulation Vol. 8, No. 1, pp. 3--30,\n\
+January 1998,\n\
 @url{http://www.math.sci.hiroshima-u.ac.jp/~m-mat/MT/emt.html}).\n\
-Do @strong{not} use for cryptography without securely hashing\n\
-several returned values together, otherwise the generator state\n\
-can be learned after reading 624 consecutive values.\n\
+Do @strong{not} use for cryptography without securely hashing several\n\
+returned values together, otherwise the generator state can be learned after\n\
+reading 624 consecutive values.\n\
 \n\
 Older versions of Octave used a different random number generator.\n\
-The new generator is used by default\n\
-as it is significantly faster than the old generator, and produces\n\
-random numbers with a significantly longer cycle time.  However, in\n\
-some circumstances it might be desirable to obtain the same random\n\
-sequences as used by the old generators.  To do this the keyword\n\
-@qcode{\"seed\"} is used to specify that the old generators should be use,\n\
-as in\n\
+The new generator is used by default as it is significantly faster than the\n\
+old generator, and produces random numbers with a significantly longer cycle\n\
+time.  However, in some circumstances it might be desirable to obtain the\n\
+same random sequences as produced by the old generators.  To do this the\n\
+keyword @qcode{\"seed\"} is used to specify that the old generators should\n\
+be used, as in\n\
 \n\
 @example\n\
 rand (\"seed\", val)\n\
@@ -440,13 +439,12 @@
 @end example\n\
 \n\
 However, it should be noted that querying the seed will not cause\n\
-@code{rand} to use the old generators, only setting the seed will.\n\
-To cause @code{rand} to once again use the new generators, the\n\
-keyword @qcode{\"state\"} should be used to reset the state of the\n\
-@code{rand}.\n\
+@code{rand} to use the old generators, only setting the seed will.  To cause\n\
+@code{rand} to once again use the new generators, the keyword\n\
+@qcode{\"state\"} should be used to reset the state of the @code{rand}.\n\
 \n\
-The state or seed of the generator can be reset to a new random value\n\
-using the @qcode{\"reset\"} keyword.\n\
+The state or seed of the generator can be reset to a new random value using\n\
+the @qcode{\"reset\"} keyword.\n\
 \n\
 The class of the value returned can be controlled by a trailing\n\
 @qcode{\"double\"} or @qcode{\"single\"} argument.  These are the only valid\n\
@@ -563,9 +561,10 @@
 @deftypefnx {Built-in Function} {} randn (\"seed\", \"reset\")\n\
 @deftypefnx {Built-in Function} {} randn (@dots{}, \"single\")\n\
 @deftypefnx {Built-in Function} {} randn (@dots{}, \"double\")\n\
-Return a matrix with normally distributed random\n\
-elements having zero mean and variance one.  The arguments are\n\
-handled the same as the arguments for @code{rand}.\n\
+Return a matrix with normally distributed random elements having zero mean\n\
+and variance one.\n\
+\n\
+The arguments are handled the same as the arguments for @code{rand}.\n\
 \n\
 By default, @code{randn} uses the @nospell{Marsaglia and Tsang}\n\
 ``Ziggurat technique'' to transform from a uniform to a normal distribution.\n\
@@ -635,8 +634,9 @@
 @deftypefnx {Built-in Function} {} rande (\"seed\", \"reset\")\n\
 @deftypefnx {Built-in Function} {} rande (@dots{}, \"single\")\n\
 @deftypefnx {Built-in Function} {} rande (@dots{}, \"double\")\n\
-Return a matrix with exponentially distributed random elements.  The\n\
-arguments are handled the same as the arguments for @code{rand}.\n\
+Return a matrix with exponentially distributed random elements.\n\
+\n\
+The arguments are handled the same as the arguments for @code{rand}.\n\
 \n\
 By default, @code{randn} uses the @nospell{Marsaglia and Tsang}\n\
 ``Ziggurat technique'' to transform from a uniform to a normal distribution.\n\
@@ -709,8 +709,9 @@
 @deftypefnx {Built-in Function} {} randg (@dots{}, \"single\")\n\
 @deftypefnx {Built-in Function} {} randg (@dots{}, \"double\")\n\
 Return a matrix with @code{gamma (@var{a},1)} distributed random elements.\n\
-The arguments are handled the same as the arguments for @code{rand},\n\
-except for the argument @var{a}.\n\
+\n\
+The arguments are handled the same as the arguments for @code{rand}, except\n\
+for the argument @var{a}.\n\
 \n\
 This can be used to generate many distributions:\n\
 \n\
@@ -986,12 +987,13 @@
 @deftypefnx {Built-in Function} {} randp (@dots{}, \"single\")\n\
 @deftypefnx {Built-in Function} {} randp (@dots{}, \"double\")\n\
 Return a matrix with Poisson distributed random elements with mean value\n\
-parameter given by the first argument, @var{l}.  The arguments\n\
-are handled the same as the arguments for @code{rand}, except for the\n\
-argument @var{l}.\n\
+parameter given by the first argument, @var{l}.\n\
 \n\
-Five different algorithms are used depending on the range of @var{l}\n\
-and whether or not @var{l} is a scalar or a matrix.\n\
+The arguments are handled the same as the arguments for @code{rand}, except\n\
+for the argument @var{l}.\n\
+\n\
+Five different algorithms are used depending on the range of @var{l} and\n\
+whether or not @var{l} is a scalar or a matrix.\n\
 \n\
 @table @asis\n\
 @item For scalar @var{l} @leq{} 12, use direct method.\n\
@@ -1125,11 +1127,14 @@
 @deftypefn  {Built-in Function} {} randperm (@var{n})\n\
 @deftypefnx {Built-in Function} {} randperm (@var{n}, @var{m})\n\
 Return a row vector containing a random permutation of @code{1:@var{n}}.\n\
+\n\
 If @var{m} is supplied, return @var{m} unique entries, sampled without\n\
-replacement from @code{1:@var{n}}.  The complexity is O(@var{n}) in\n\
-memory and O(@var{m}) in time, unless @var{m} < @var{n}/5, in which case\n\
-O(@var{m}) memory is used as well.  The randomization is performed using\n\
-rand().  All permutations are equally likely.\n\
+replacement from @code{1:@var{n}}.\n\
+\n\
+The complexity is O(@var{n}) in memory and O(@var{m}) in time, unless\n\
+@var{m} < @var{n}/5, in which case O(@var{m}) memory is used as well.  The\n\
+randomization is performed using rand().  All permutations are equally\n\
+likely.\n\
 @seealso{perms}\n\
 @end deftypefn")
 {
--- a/libinterp/corefcn/rcond.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/rcond.cc	Sun May 10 21:37:19 2015 -0700
@@ -34,8 +34,10 @@
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {@var{c} =} rcond (@var{A})\n\
 Compute the 1-norm estimate of the reciprocal condition number as returned\n\
-by @sc{lapack}.  If the matrix is well-conditioned then @var{c} will be near\n\
-1 and if the matrix is poorly conditioned it will be close to zero.\n\
+by @sc{lapack}.\n\
+\n\
+If the matrix is well-conditioned then @var{c} will be near 1 and if the\n\
+matrix is poorly conditioned it will be close to 0.\n\
 \n\
 The matrix @var{A} must not be sparse.  If the matrix is sparse then\n\
 @code{condest (@var{A})} or @code{rcond (full (@var{A}))} should be used\n\
--- a/libinterp/corefcn/regexp.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/regexp.cc	Sun May 10 21:37:19 2015 -0700
@@ -589,9 +589,10 @@
        "-*- texinfo -*-\n\
 @deftypefn  {Built-in Function} {[@var{s}, @var{e}, @var{te}, @var{m}, @var{t}, @var{nm}, @var{sp}] =} regexp (@var{str}, @var{pat})\n\
 @deftypefnx {Built-in Function} {[@dots{}] =} regexp (@var{str}, @var{pat}, \"@var{opt1}\", @dots{})\n\
-Regular expression string matching.  Search for @var{pat} in @var{str} and\n\
-return the positions and substrings of any matches, or empty values if there\n\
-are none.\n\
+Regular expression string matching.\n\
+\n\
+Search for @var{pat} in @var{str} and return the positions and substrings of\n\
+any matches, or empty values if there are none.\n\
 \n\
 The matched pattern @var{pat} can include any of the standard regex\n\
 operators, including:\n\
@@ -629,9 +630,8 @@
 and \"]\".  If the first character is \"^\" then the pattern is inverted and\n\
 any character except those listed between brackets will match.\n\
 \n\
-Escape sequences defined below can also be used inside list\n\
-operators.  For example, a template for a floating point number might be\n\
-@code{[-+.\\d]+}.\n\
+Escape sequences defined below can also be used inside list operators.  For\n\
+example, a template for a floating point number might be @code{[-+.\\d]+}.\n\
 \n\
 @item () (?:)\n\
 Grouping operator.  The first form, parentheses only, also creates a token.\n\
@@ -1072,10 +1072,11 @@
 @deftypefn  {Built-in Function} {[@var{s}, @var{e}, @var{te}, @var{m}, @var{t}, @var{nm}, @var{sp}] =} regexpi (@var{str}, @var{pat})\n\
 @deftypefnx {Built-in Function} {[@dots{}] =} regexpi (@var{str}, @var{pat}, \"@var{opt1}\", @dots{})\n\
 \n\
-Case insensitive regular expression string matching.  Search for @var{pat} in\n\
-@var{str} and return the positions and substrings of any matches, or empty\n\
-values if there are none.  @xref{XREFregexp,,regexp}, for details on the\n\
-syntax of the search pattern.\n\
+Case insensitive regular expression string matching.\n\
+\n\
+Search for @var{pat} in @var{str} and return the positions and substrings of\n\
+any matches, or empty values if there are none.  @xref{XREFregexp,,regexp},\n\
+for details on the syntax of the search pattern.\n\
 @seealso{regexp}\n\
 @end deftypefn")
 {
@@ -1288,8 +1289,8 @@
 The pattern is a regular expression as documented for @code{regexp}.\n\
 @xref{XREFregexp,,regexp}.\n\
 \n\
-The replacement string may contain @code{$i}, which substitutes\n\
-for the ith set of parentheses in the match string.  For example,\n\
+The replacement string may contain @code{$i}, which substitutes for the ith\n\
+set of parentheses in the match string.  For example,\n\
 \n\
 @example\n\
 regexprep (\"Bill Dunn\", '(\\w+) (\\w+)', '$2, $1')\n\
--- a/libinterp/corefcn/schur.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/schur.cc	Sun May 10 21:37:19 2015 -0700
@@ -65,7 +65,9 @@
 @deftypefnx {Built-in Function} {@var{S} =} schur (@var{A}, @var{opt})\n\
 @deftypefnx {Built-in Function} {[@var{U}, @var{S}] =} schur (@dots{})\n\
 @cindex Schur decomposition\n\
-Compute the Schur@tie{}decomposition of @var{A}\n\
+Compute the Schur@tie{}decomposition of @var{A}.\n\
+\n\
+The Schur@tie{}decomposition is defined as\n\
 @tex\n\
 $$\n\
  S = U^T A U\n\
@@ -86,10 +88,10 @@
 (@code{@var{U}'* @var{U}} is identity)\n\
 @end ifnottex\n\
 and @var{S} is upper triangular.  The eigenvalues of @var{A} (and @var{S})\n\
-are the diagonal elements of @var{S}.  If the matrix @var{A}\n\
-is real, then the real Schur@tie{}decomposition is computed, in which the\n\
-matrix @var{U} is orthogonal and @var{S} is block upper triangular\n\
-with blocks of size at most\n\
+are the diagonal elements of @var{S}.  If the matrix @var{A} is real, then\n\
+the real Schur@tie{}decomposition is computed, in which the matrix @var{U}\n\
+is orthogonal and @var{S} is block upper triangular with blocks of size at\n\
+most\n\
 @tex\n\
 $2 \\times 2$\n\
 @end tex\n\
@@ -110,20 +112,19 @@
 A complex decomposition may be forced by passing the flag\n\
 @qcode{\"complex\"}.\n\
 \n\
-The eigenvalues are optionally ordered along the diagonal according to\n\
-the value of @var{opt}.  @code{@var{opt} = \"a\"} indicates that all\n\
-eigenvalues with negative real parts should be moved to the leading\n\
-block of @var{S}\n\
-(used in @code{are}), @code{@var{opt} = \"d\"} indicates that all eigenvalues\n\
-with magnitude less than one should be moved to the leading block of @var{S}\n\
-(used in @code{dare}), and @code{@var{opt} = \"u\"}, the default, indicates\n\
-that no ordering of eigenvalues should occur.  The leading @var{k}\n\
-columns of @var{U} always span the @var{A}-invariant\n\
+The eigenvalues are optionally ordered along the diagonal according to the\n\
+value of @var{opt}.  @code{@var{opt} = \"a\"} indicates that all eigenvalues\n\
+with negative real parts should be moved to the leading block of @var{S}\n\
+(used in @code{are}), @code{@var{opt} = \"d\"} indicates that all\n\
+eigenvalues with magnitude less than one should be moved to the leading\n\
+block of @var{S} (used in @code{dare}), and @code{@var{opt} = \"u\"}, the\n\
+default, indicates that no ordering of eigenvalues should occur.  The\n\
+leading @var{k} columns of @var{U} always span the @var{A}-invariant\n\
 subspace corresponding to the @var{k} leading eigenvalues of @var{S}.\n\
 \n\
-The Schur@tie{}decomposition is used to compute eigenvalues of a\n\
-square matrix, and has applications in the solution of algebraic\n\
-Riccati equations in control (see @code{are} and @code{dare}).\n\
+The Schur@tie{}decomposition is used to compute eigenvalues of a square\n\
+matrix, and has applications in the solution of algebraic Riccati equations\n\
+in control (see @code{are} and @code{dare}).\n\
 @seealso{rsf2csf, ordschur, lu, chol, hess, qr, qz, svd}\n\
 @end deftypefn")
 {
--- a/libinterp/corefcn/sighandlers.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/sighandlers.cc	Sun May 10 21:37:19 2015 -0700
@@ -1080,11 +1080,13 @@
 @deftypefnx {Built-in Function} {} debug_on_interrupt (@var{new_val}, \"local\")\n\
 Query or set the internal variable that controls whether Octave will try\n\
 to enter debugging mode when it receives an interrupt signal (typically\n\
-generated with @kbd{C-c}).  If a second interrupt signal is received\n\
-before reaching the debugging mode, a normal interrupt will occur.\n\
+generated with @kbd{C-c}).\n\
+\n\
+If a second interrupt signal is received before reaching the debugging mode,\n\
+a normal interrupt will occur.\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
-variable is changed locally for the function and any subroutines it calls.  \n\
+variable is changed locally for the function and any subroutines it calls.\n\
 The original variable value is restored when exiting the function.\n\
 @seealso{debug_on_error, debug_on_warning}\n\
 @end deftypefn")
@@ -1114,7 +1116,7 @@
 receives a hangup signal.\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
-variable is changed locally for the function and any subroutines it calls.  \n\
+variable is changed locally for the function and any subroutines it calls.\n\
 The original variable value is restored when exiting the function.\n\
 @end deftypefn")
 {
@@ -1143,7 +1145,7 @@
 receives a terminate signal.\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
-variable is changed locally for the function and any subroutines it calls.  \n\
+variable is changed locally for the function and any subroutines it calls.\n\
 The original variable value is restored when exiting the function.\n\
 @end deftypefn")
 {
--- a/libinterp/corefcn/sparse.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/sparse.cc	Sun May 10 21:37:19 2015 -0700
@@ -65,7 +65,7 @@
 @deftypefnx {Built-in Function} {@var{s} =} sparse (@var{m}, @var{n})\n\
 @deftypefnx {Built-in Function} {@var{s} =} sparse (@var{i}, @var{j}, @var{s}, @var{m}, @var{n}, \"unique\")\n\
 @deftypefnx {Built-in Function} {@var{s} =} sparse (@var{i}, @var{j}, @var{sv}, @var{m}, @var{n}, @var{nzmax})\n\
-Create a sparse matrix from a full matrix or row, column, value triplets.\n\
+Create a sparse matrix from a full matrix, or row, column, value triplets.\n\
 \n\
 If @var{a} is a full matrix, convert it to a sparse matrix representation,\n\
 removing all zero values in the process.\n\
@@ -101,7 +101,7 @@
 @group\n\
 @var{i} = [1 1 2]; @var{j} = [1 1 2]; @var{sv} = [3 4 5];\n\
 sparse (@var{i}, @var{j}, @var{sv}, 3, 4)\n\
-@result{} \n\
+@result{}\n\
 Compressed Column Sparse (rows = 3, cols = 4, nnz = 2 [17%])\n\
 \n\
   (1, 1) ->  7\n\
@@ -115,7 +115,7 @@
 @group\n\
 @var{i} = [1 1 2]; @var{j} = [1 1 2]; @var{sv} = [3 4 5];\n\
 sparse (@var{i}, @var{j}, @var{sv}, 3, 4, \"unique\")\n\
-@result{} \n\
+@result{}\n\
 Compressed Column Sparse (rows = 3, cols = 4, nnz = 2 [17%])\n\
 \n\
   (1, 1) ->  4\n\
--- a/libinterp/corefcn/spparms.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/spparms.cc	Sun May 10 21:37:19 2015 -0700
@@ -44,10 +44,12 @@
 @deftypefnx {Built-in Function} { } spparms (\"tight\")\n\
 @deftypefnx {Built-in Function} { } spparms (@var{key}, @var{val})\n\
 Query or set the parameters used by the sparse solvers and factorization\n\
-functions.  The first four calls above get information about the current\n\
-settings, while the others change the current settings.  The parameters are\n\
-stored as pairs of keys and values, where the values are all floats and the\n\
-keys are one of the following strings:\n\
+functions.\n\
+\n\
+The first four calls above get information about the current settings, while\n\
+the others change the current settings.  The parameters are stored as pairs\n\
+of keys and values, where the values are all floats and the keys are one of\n\
+the following strings:\n\
 \n\
 @table @samp\n\
 @item spumoni\n\
--- a/libinterp/corefcn/str2double.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/str2double.cc	Sun May 10 21:37:19 2015 -0700
@@ -299,8 +299,8 @@
 @deftypefn {Built-in Function} {} str2double (@var{s})\n\
 Convert a string to a real or complex number.\n\
 \n\
-The string must be in one of the following formats where\n\
-a and b are real numbers and the complex unit is @qcode{'i'} or @qcode{'j'}:\n\
+The string must be in one of the following formats where a and b are real\n\
+numbers and the complex unit is @qcode{'i'} or @qcode{'j'}:\n\
 \n\
 @itemize\n\
 @item a + bi\n\
@@ -321,12 +321,12 @@
 more digits.  The special input values @code{Inf}, @code{NaN}, and @code{NA}\n\
 are also accepted.\n\
 \n\
-@var{s} may be a character string, character matrix, or cell array.\n\
-For character arrays the conversion is repeated for every row, and\n\
-a double or complex array is returned.  Empty rows in @var{s} are deleted\n\
-and not returned in the numeric array.  For cell arrays each character\n\
-string element is processed and a double or complex array of the same\n\
-dimensions as @var{s} is returned.\n\
+@var{s} may be a character string, character matrix, or cell array.  For\n\
+character arrays the conversion is repeated for every row, and a double or\n\
+complex array is returned.  Empty rows in @var{s} are deleted and not\n\
+returned in the numeric array.  For cell arrays each character string\n\
+element is processed and a double or complex array of the same dimensions as\n\
+@var{s} is returned.\n\
 \n\
 For unconvertible scalar or character string input @code{str2double} returns\n\
 a NaN@.  Similarly, for character array input @code{str2double} returns a\n\
--- a/libinterp/corefcn/strfind.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/strfind.cc	Sun May 10 21:37:19 2015 -0700
@@ -153,18 +153,19 @@
 @deftypefn  {Built-in Function} {@var{idx} =} strfind (@var{str}, @var{pattern})\n\
 @deftypefnx {Built-in Function} {@var{idx} =} strfind (@var{cellstr}, @var{pattern})\n\
 @deftypefnx {Built-in Function} {@var{idx} =} strfind (@dots{}, \"overlaps\", @var{val})\n\
-Search for @var{pattern} in the string @var{str} and return the\n\
-starting index of every such occurrence in the vector @var{idx}.\n\
+Search for @var{pattern} in the string @var{str} and return the starting\n\
+index of every such occurrence in the vector @var{idx}.\n\
 \n\
-If there is no such occurrence, or if @var{pattern} is longer\n\
-than @var{str}, or if @var{pattern} itself is empty, then @var{idx} is the\n\
-empty array @code{[]}.\n\
+If there is no such occurrence, or if @var{pattern} is longer than\n\
+@var{str}, or if @var{pattern} itself is empty, then @var{idx} is the empty\n\
+array @code{[]}.\n\
+\n\
 The optional argument @qcode{\"overlaps\"} determines whether the pattern\n\
 can match at every position in @var{str} (true), or only for unique\n\
 occurrences of the complete pattern (false).  The default is true.\n\
 \n\
-If a cell array of strings @var{cellstr} is specified\n\
-then @var{idx} is a cell array of vectors, as specified above.\n\
+If a cell array of strings @var{cellstr} is specified then @var{idx} is a\n\
+cell array of vectors, as specified above.\n\
 \n\
 Examples:\n\
 \n\
--- a/libinterp/corefcn/strfns.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/strfns.cc	Sun May 10 21:37:19 2015 -0700
@@ -47,19 +47,19 @@
 @deftypefnx {Built-in Function} {} char (@var{s1}, @var{s2}, @dots{})\n\
 @deftypefnx {Built-in Function} {} char (@var{cell_array})\n\
 Create a string array from one or more numeric matrices, character\n\
-matrices, or cell arrays.  Arguments are concatenated vertically.\n\
-The returned values are padded with blanks as needed to make each row\n\
-of the string array have the same length.  Empty input strings are\n\
-significant and will concatenated in the output.\n\
+matrices, or cell arrays.\n\
 \n\
-For numerical input, each element is converted\n\
-to the corresponding ASCII character.  A range error results if an input\n\
-is outside the ASCII range (0-255).\n\
+Arguments are concatenated vertically.  The returned values are padded with\n\
+blanks as needed to make each row of the string array have the same length. \n\
+Empty input strings are significant and will concatenated in the output.\n\
+\n\
+For numerical input, each element is converted to the corresponding ASCII\n\
+character.  A range error results if an input is outside the ASCII range\n\
+(0-255).\n\
 \n\
 For cell arrays, each element is concatenated separately.  Cell arrays\n\
-converted through\n\
-@code{char} can mostly be converted back with @code{cellstr}.\n\
-For example:\n\
+converted through @code{char} can mostly be converted back with\n\
+@code{cellstr}.  For example:\n\
 \n\
 @example\n\
 @group\n\
@@ -178,19 +178,20 @@
 @deftypefnx {Built-in Function} {} strvcat (@var{s1}, @var{s2}, @dots{})\n\
 @deftypefnx {Built-in Function} {} strvcat (@var{cell_array})\n\
 Create a character array from one or more numeric matrices, character\n\
-matrices, or cell arrays.  Arguments are concatenated vertically.\n\
-The returned values are padded with blanks as needed to make each row\n\
-of the string array have the same length.  Unlike @code{char}, empty\n\
-strings are removed and will not appear in the output.\n\
+matrices, or cell arrays.\n\
 \n\
-For numerical input, each element is converted\n\
-to the corresponding ASCII character.  A range error results if an input\n\
-is outside the ASCII range (0-255).\n\
+Arguments are concatenated vertically.  The returned values are padded with\n\
+blanks as needed to make each row of the string array have the same length. \n\
+Unlike @code{char}, empty strings are removed and will not appear in the\n\
+output.\n\
+\n\
+For numerical input, each element is converted to the corresponding ASCII\n\
+character.  A range error results if an input is outside the ASCII range\n\
+(0-255).\n\
 \n\
 For cell arrays, each element is concatenated separately.  Cell arrays\n\
-converted through\n\
-@code{strvcat} can mostly be converted back with @code{cellstr}.\n\
-For example:\n\
+converted through @code{strvcat} can mostly be converted back with\n\
+@code{cellstr}.  For example:\n\
 \n\
 @example\n\
 @group\n\
@@ -861,14 +862,15 @@
 DEFUN (list_in_columns, args, ,
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} list_in_columns (@var{arg}, @var{width}, @var{prefix})\n\
-Return a string containing the elements of @var{arg} listed in\n\
-columns with an overall maximum width of @var{width} and optional\n\
-prefix @var{prefix}.  The argument @var{arg} must be a cell array\n\
-of character strings or a character array.  If @var{width} is not\n\
-specified or is an empty matrix, or less than or equal to zero,\n\
-the width of the terminal screen is used.\n\
-Newline characters are used to break the lines in the output string.\n\
-For example:\n\
+Return a string containing the elements of @var{arg} listed in columns with\n\
+an overall maximum width of @var{width} and optional prefix @var{prefix}.\n\
+\n\
+The argument @var{arg} must be a cell array of character strings or a\n\
+character array.\n\
+\n\
+If @var{width} is not specified or is an empty matrix, or less than or equal\n\
+to zero, the width of the terminal screen is used.  Newline characters are\n\
+used to break the lines in the output string.  For example:\n\
 @c Set example in small font to prevent overfull line\n\
 \n\
 @smallexample\n\
--- a/libinterp/corefcn/sub2ind.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/sub2ind.cc	Sun May 10 21:37:19 2015 -0700
@@ -69,10 +69,9 @@
 @deftypefnx {Function File} {@var{ind} =} sub2ind (@var{dims}, @var{s1}, @var{s2}, @dots{}, @var{sN})\n\
 Convert subscripts to a linear index.\n\
 \n\
-The following example shows how to convert the two-dimensional\n\
-index @code{(2,3)} of a 3-by-3 matrix to a linear index.  The matrix\n\
-is linearly indexed moving from one column to next, filling up\n\
-all rows in each column.\n\
+The following example shows how to convert the two-dimensional index\n\
+@code{(2,3)} of a 3-by-3 matrix to a linear index.  The matrix is linearly\n\
+indexed moving from one column to next, filling up all rows in each column.\n\
 \n\
 @example\n\
 @group\n\
--- a/libinterp/corefcn/svd.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/svd.cc	Sun May 10 21:37:19 2015 -0700
@@ -408,11 +408,12 @@
 @deftypefnx {Built-in Function} {@var{old_val} =} svd_driver (@var{new_val})\n\
 @deftypefnx {Built-in Function} {} svd_driver (@var{new_val}, \"local\")\n\
 Query or set the underlying @sc{lapack} driver used by @code{svd}.\n\
-Currently recognized values are @qcode{\"gesvd\"} and @qcode{\"gesdd\"}.  \n\
+\n\
+Currently recognized values are @qcode{\"gesvd\"} and @qcode{\"gesdd\"}.\n\
 The default is @qcode{\"gesvd\"}.\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
-variable is changed locally for the function and any subroutines it calls.  \n\
+variable is changed locally for the function and any subroutines it calls.\n\
 The original variable value is restored when exiting the function.\n\
 @seealso{svd}\n\
 @end deftypefn")
--- a/libinterp/corefcn/symtab.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/symtab.cc	Sun May 10 21:37:19 2015 -0700
@@ -1650,15 +1650,17 @@
 @deftypefnx {Built-in Function} {@var{old_val} =} ignore_function_time_stamp (@var{new_val})\n\
 Query or set the internal variable that controls whether Octave checks\n\
 the time stamp on files each time it looks up functions defined in\n\
-function files.  If the internal variable is set to @qcode{\"system\"},\n\
-Octave will not automatically recompile function files in subdirectories of\n\
-@file{@var{octave-home}/lib/@var{version}} if they have changed since\n\
-they were last compiled, but will recompile other function files in the\n\
-search path if they change.  If set to @qcode{\"all\"}, Octave will not\n\
-recompile any function files unless their definitions are removed with\n\
-@code{clear}.  If set to @qcode{\"none\"}, Octave will always check time\n\
-stamps on files to determine whether functions defined in function files\n\
-need to recompiled.\n\
+function files.\n\
+\n\
+If the internal variable is set to @qcode{\"system\"}, Octave will not\n\
+automatically recompile function files in subdirectories of\n\
+@file{@var{octave-home}/lib/@var{version}} if they have changed since they were last compiled, but will recompile other function files in the search path if they change.\n\
+\n\
+If set to @qcode{\"all\"}, Octave will not recompile any function files\n\
+unless their definitions are removed with @code{clear}.\n\
+\n\
+If set to @qcode{\"none\"}, Octave will always check time stamps on files to\n\
+determine whether functions defined in function files need to recompiled.\n\
 @end deftypefn")
 {
   octave_value retval;
--- a/libinterp/corefcn/syscalls.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/syscalls.cc	Sun May 10 21:37:19 2015 -0700
@@ -114,9 +114,9 @@
 @deftypefn {Built-in Function} {[@var{fid}, @var{msg}] =} dup2 (@var{old}, @var{new})\n\
 Duplicate a file descriptor.\n\
 \n\
-If successful, @var{fid} is greater than zero and contains the new file\n\
-ID@.  Otherwise, @var{fid} is negative and @var{msg} contains a\n\
-system-dependent error message.\n\
+If successful, @var{fid} is greater than zero and contains the new file ID@.\n\
+Otherwise, @var{fid} is negative and @var{msg} contains a system-dependent\n\
+error message.\n\
 @seealso{fopen, fclose, fcntl}\n\
 @end deftypefn")
 {
@@ -165,9 +165,11 @@
 DEFUNX ("exec", Fexec, args, ,
         "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {[@var{err}, @var{msg}] =} exec (@var{file}, @var{args})\n\
-Replace current process with a new process.  Calling @code{exec} without\n\
-first calling @code{fork} will terminate your current Octave process and\n\
-replace it with the program named by @var{file}.  For example,\n\
+Replace current process with a new process.\n\
+\n\
+Calling @code{exec} without first calling @code{fork} will terminate your\n\
+current Octave process and replace it with the program named by @var{file}. \n\
+For example,\n\
 \n\
 @example\n\
 exec (\"ls\" \"-l\")\n\
@@ -248,13 +250,15 @@
 DEFUNX ("popen2", Fpopen2, args, ,
         "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {[@var{in}, @var{out}, @var{pid}] =} popen2 (@var{command}, @var{args})\n\
-Start a subprocess with two-way communication.  The name of the process\n\
-is given by @var{command}, and @var{args} is an array of strings\n\
-containing options for the command.  The file identifiers for the input\n\
-and output streams of the subprocess are returned in @var{in} and\n\
-@var{out}.  If execution of the command is successful, @var{pid}\n\
-contains the process ID of the subprocess.  Otherwise, @var{pid} is\n\
-@minus{}1.\n\
+Start a subprocess with two-way communication.\n\
+\n\
+The name of the process is given by @var{command}, and @var{args} is an\n\
+array of strings containing options for the command.\n\
+\n\
+The file identifiers for the input and output streams of the subprocess are\n\
+returned in @var{in} and @var{out}.  If execution of the command is\n\
+successful, @var{pid} contains the process ID of the subprocess.  Otherwise,\n\
+@var{pid} is @minus{}1.\n\
 \n\
 For example:\n\
 \n\
@@ -494,14 +498,14 @@
 @end vtable\n\
 \n\
 @item F_SETFL\n\
-Set the file status flags for @var{fid} to the value specified by\n\
-@var{arg}.  The only flags that can be changed are @w{@code{O_APPEND}} and\n\
+Set the file status flags for @var{fid} to the value specified by @var{arg}.\n\
+ The only flags that can be changed are @w{@code{O_APPEND}} and\n\
 @w{@code{O_NONBLOCK}}.\n\
 @end vtable\n\
 \n\
-If successful, @var{err} is 0 and @var{msg} is an empty string.\n\
-Otherwise, @var{err} is nonzero and @var{msg} contains a\n\
-system-dependent error message.\n\
+If successful, @var{err} is 0 and @var{msg} is an empty string.  Otherwise,\n\
+@var{err} is nonzero and @var{msg} contains a system-dependent error\n\
+message.\n\
 @seealso{fopen, dup2}\n\
 @end deftypefn")
 {
@@ -557,9 +561,9 @@
 \n\
 @table @asis\n\
 @item > 0\n\
-You are in the parent process.  The value returned from @code{fork} is\n\
-the process id of the child process.  You should probably arrange to\n\
-wait for any child processes to exit.\n\
+You are in the parent process.  The value returned from @code{fork} is the\n\
+process id of the child process.  You should probably arrange to wait for\n\
+any child processes to exit.\n\
 \n\
 @item 0\n\
 You are in the child process.  You can call @code{exec} to start another\n\
@@ -623,6 +627,7 @@
         "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {pid =} getpid ()\n\
 Return the process id of the current process.\n\
+@seealso{getppid}\n\
 @end deftypefn")
 {
   octave_value retval = -1;
@@ -641,6 +646,7 @@
         "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {pid =} getppid ()\n\
 Return the process id of the parent process.\n\
+@seealso{getpid}\n\
 @end deftypefn")
 {
   octave_value retval = -1;
@@ -659,6 +665,7 @@
         "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {egid =} getegid ()\n\
 Return the effective group id of the current process.\n\
+@seealso{getgid}\n\
 @end deftypefn")
 {
   octave_value retval = -1;
@@ -677,6 +684,7 @@
         "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {gid =} getgid ()\n\
 Return the real group id of the current process.\n\
+@seealso{getegid}\n\
 @end deftypefn")
 {
   octave_value retval = -1;
@@ -695,6 +703,7 @@
         "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {euid =} geteuid ()\n\
 Return the effective user id of the current process.\n\
+@seealso{getuid}\n\
 @end deftypefn")
 {
   octave_value retval = -1;
@@ -713,6 +722,7 @@
         "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {uid =} getuid ()\n\
 Return the real user id of the current process.\n\
+@seealso{geteuid}\n\
 @end deftypefn")
 {
   octave_value retval = -1;
@@ -816,8 +826,8 @@
 Create a FIFO special file named @var{name} with file mode @var{mode}\n\
 \n\
 If successful, @var{err} is 0 and @var{msg} is an empty string.\n\
-Otherwise, @var{err} is nonzero and @var{msg} contains a\n\
-system-dependent error message.\n\
+Otherwise, @var{err} is nonzero and @var{msg} contains a system-dependent\n\
+error message.\n\
 @seealso{pipe}\n\
 @end deftypefn")
 {
@@ -867,12 +877,12 @@
 DEFUNX ("pipe", Fpipe, args, ,
         "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {[@var{read_fd}, @var{write_fd}, @var{err}, @var{msg}] =} pipe ()\n\
-Create a pipe and return the reading and writing ends of the pipe\n\
-into @var{read_fd} and @var{write_fd} respectively.\n\
+Create a pipe and return the reading and writing ends of the pipe into\n\
+@var{read_fd} and @var{write_fd} respectively.\n\
 \n\
 If successful, @var{err} is 0 and @var{msg} is an empty string.\n\
-Otherwise, @var{err} is nonzero and @var{msg} contains a\n\
-system-dependent error message.\n\
+Otherwise, @var{err} is nonzero and @var{msg} contains a system-dependent\n\
+error message.\n\
 @seealso{mkfifo}\n\
 @end deftypefn")
 {
@@ -979,14 +989,14 @@
 Number of blocks allocated for file.\n\
 @end table\n\
 \n\
-If the call is successful @var{err} is 0 and @var{msg} is an empty\n\
-string.  If the file does not exist, or some other error occurs, @var{info}\n\
-is an empty matrix, @var{err} is @minus{}1, and @var{msg} contains the\n\
+If the call is successful @var{err} is 0 and @var{msg} is an empty string.\n\
+If the file does not exist, or some other error occurs, @var{info} is an\n\
+empty matrix, @var{err} is @minus{}1, and @var{msg} contains the\n\
 corresponding system error message.\n\
 \n\
-If @var{file} is a symbolic link, @code{stat} will return information\n\
-about the actual file that is referenced by the link.  Use @code{lstat}\n\
-if you want information about the symbolic link itself.\n\
+If @var{file} is a symbolic link, @code{stat} will return information about\n\
+the actual file that is referenced by the link.  Use @code{lstat} if you\n\
+want information about the symbolic link itself.\n\
 \n\
 For example:\n\
 \n\
@@ -1249,7 +1259,9 @@
 DEFUN (uname, args, ,
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {[@var{uts}, @var{err}, @var{msg}] =} uname ()\n\
-Return system information in the structure.  For example:\n\
+Return system information in the structure.\n\
+\n\
+For example:\n\
 \n\
 @example\n\
 @group\n\
@@ -1299,8 +1311,9 @@
 Delete the file named @var{file}.\n\
 \n\
 If successful, @var{err} is 0 and @var{msg} is an empty string.\n\
-Otherwise, @var{err} is nonzero and @var{msg} contains a\n\
-system-dependent error message.\n\
+Otherwise, @var{err} is nonzero and @var{msg} contains a system-dependent\n\
+error message.\n\
+@seealso{delete, rmdir}\n\
 @end deftypefn")
 {
   octave_value_list retval;
@@ -1335,45 +1348,47 @@
 DEFUNX ("waitpid", Fwaitpid, args, ,
         "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {[@var{pid}, @var{status}, @var{msg}] =} waitpid (@var{pid}, @var{options})\n\
-Wait for process @var{pid} to terminate.  The @var{pid} argument can be:\n\
+Wait for process @var{pid} to terminate.\n\
+\n\
+The @var{pid} argument can be:\n\
 \n\
 @table @asis\n\
 @item @minus{}1\n\
 Wait for any child process.\n\
 \n\
 @item 0\n\
-Wait for any child process whose process group ID is equal to that of\n\
-the Octave interpreter process.\n\
+Wait for any child process whose process group ID is equal to that of the\n\
+Octave interpreter process.\n\
 \n\
 @item > 0\n\
 Wait for termination of the child process with ID @var{pid}.\n\
 @end table\n\
 \n\
-The @var{options} argument can be a bitwise OR of zero or more of\n\
-the following constants:\n\
+The @var{options} argument can be a bitwise OR of zero or more of the\n\
+following constants:\n\
 \n\
 @table @code\n\
 @item 0\n\
-Wait until signal is received or a child process exits (this is the\n\
-default if the @var{options} argument is missing).\n\
+Wait until signal is received or a child process exits (this is the default\n\
+if the @var{options} argument is missing).\n\
 \n\
 @item WNOHANG\n\
 Do not hang if status is not immediately available.\n\
 \n\
 @item WUNTRACED\n\
-Report the status of any child processes that are stopped, and whose\n\
-status has not yet been reported since they stopped.\n\
+Report the status of any child processes that are stopped, and whose status\n\
+has not yet been reported since they stopped.\n\
 \n\
 @item WCONTINUE\n\
 Return if a stopped child has been resumed by delivery of @code{SIGCONT}.\n\
 This value may not be meaningful on all systems.\n\
 @end table\n\
 \n\
-If the returned value of @var{pid} is greater than 0, it is the process\n\
-ID of the child process that exited.  If an error occurs, @var{pid} will\n\
-be less than zero and @var{msg} will contain a system-dependent error\n\
-message.  The value of @var{status} contains additional system-dependent\n\
-information about the subprocess that exited.\n\
+If the returned value of @var{pid} is greater than 0, it is the process ID\n\
+of the child process that exited.  If an error occurs, @var{pid} will be\n\
+less than zero and @var{msg} will contain a system-dependent error message. \n\
+The value of @var{status} contains additional system-dependent information\n\
+about the subprocess that exited.\n\
 @seealso{WCONTINUE, WCOREDUMP, WEXITSTATUS, WIFCONTINUED, WIFSIGNALED, WIFSTOPPED, WNOHANG, WSTOPSIG, WTERMSIG, WUNTRACED}\n\
 @end deftypefn")
 {
@@ -1424,8 +1439,8 @@
 DEFUNX ("WIFEXITED", FWIFEXITED, args, ,
         "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} WIFEXITED (@var{status})\n\
-Given @var{status} from a call to @code{waitpid}, return true if the\n\
-child terminated normally.\n\
+Given @var{status} from a call to @code{waitpid}, return\n\
+true if the child terminated normally.\n\
 @seealso{waitpid, WEXITSTATUS, WIFSIGNALED, WTERMSIG, WCOREDUMP, WIFSTOPPED, WSTOPSIG, WIFCONTINUED}\n\
 @end deftypefn")
 {
@@ -1447,9 +1462,10 @@
 DEFUNX ("WEXITSTATUS", FWEXITSTATUS, args, ,
         "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} WEXITSTATUS (@var{status})\n\
-Given @var{status} from a call to @code{waitpid}, return the exit\n\
-status of the child.  This function should only be employed if\n\
-@code{WIFEXITED} returned true.\n\
+Given @var{status} from a call to @code{waitpid}, return\n\
+the exit status of the child.\n\
+\n\
+This function should only be employed if @code{WIFEXITED} returned true.\n\
 @seealso{waitpid, WIFEXITED, WIFSIGNALED, WTERMSIG, WCOREDUMP, WIFSTOPPED, WSTOPSIG, WIFCONTINUED}\n\
 @end deftypefn")
 {
@@ -1471,8 +1487,8 @@
 DEFUNX ("WIFSIGNALED", FWIFSIGNALED, args, ,
         "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} WIFSIGNALED (@var{status})\n\
-Given @var{status} from a call to @code{waitpid}, return true if the\n\
-child process was terminated by a signal.\n\
+Given @var{status} from a call to @code{waitpid}, return\n\
+true if the child process was terminated by a signal.\n\
 @seealso{waitpid, WIFEXITED, WEXITSTATUS, WTERMSIG, WCOREDUMP, WIFSTOPPED, WSTOPSIG, WIFCONTINUED}\n\
 @end deftypefn")
 {
@@ -1494,9 +1510,10 @@
 DEFUNX ("WTERMSIG", FWTERMSIG, args, ,
         "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} WTERMSIG (@var{status})\n\
-Given @var{status} from a call to @code{waitpid}, return the number of\n\
-the signal that caused the child process to terminate.  This function\n\
-should only be employed if @code{WIFSIGNALED} returned true.\n\
+Given @var{status} from a call to @code{waitpid}, return\n\
+the number of the signal that caused the child process to terminate.\n\
+\n\
+This function should only be employed if @code{WIFSIGNALED} returned true.\n\
 @seealso{waitpid, WIFEXITED, WEXITSTATUS, WIFSIGNALED, WCOREDUMP, WIFSTOPPED, WSTOPSIG, WIFCONTINUED}\n\
 @end deftypefn")
 {
@@ -1518,11 +1535,12 @@
 DEFUNX ("WCOREDUMP", FWCOREDUMP, args, ,
         "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} WCOREDUMP (@var{status})\n\
-Given @var{status} from a call to @code{waitpid}, return true if the\n\
-child produced a core dump.  This function should only be employed if\n\
-@code{WIFSIGNALED} returned true.  The macro used to implement this\n\
-function is not specified in POSIX.1-2001 and is not available on some\n\
-Unix implementations (e.g., AIX, SunOS).\n\
+Given @var{status} from a call to @code{waitpid}, return\n\
+true if the child produced a core dump.\n\
+\n\
+This function should only be employed if @code{WIFSIGNALED} returned true. \n\
+The macro used to implement this function is not specified in POSIX.1-2001\n\
+and is not available on some Unix implementations (e.g., AIX, SunOS).\n\
 @seealso{waitpid, WIFEXITED, WEXITSTATUS, WIFSIGNALED, WTERMSIG, WIFSTOPPED, WSTOPSIG, WIFCONTINUED}\n\
 @end deftypefn")
 {
@@ -1544,10 +1562,11 @@
 DEFUNX ("WIFSTOPPED", FWIFSTOPPED, args, ,
         "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} WIFSTOPPED (@var{status})\n\
-Given @var{status} from a call to @code{waitpid}, return true if the\n\
-child process was stopped by delivery of a signal; this is only\n\
-possible if the call was done using @code{WUNTRACED} or when the child\n\
-is being traced (see ptrace(2)).\n\
+Given @var{status} from a call to @code{waitpid}, return\n\
+true if the child process was stopped by delivery of a signal.\n\
+\n\
+This is only possible if the call was done using @code{WUNTRACED} or when\n\
+the child is being traced (see ptrace(2)).\n\
 @seealso{waitpid, WIFEXITED, WEXITSTATUS, WIFSIGNALED, WTERMSIG, WCOREDUMP, WSTOPSIG, WIFCONTINUED}\n\
 @end deftypefn")
 {
@@ -1569,9 +1588,10 @@
 DEFUNX ("WSTOPSIG", FWSTOPSIG, args, ,
         "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} WSTOPSIG (@var{status})\n\
-Given @var{status} from a call to @code{waitpid}, return the number of\n\
-the signal which caused the child to stop.  This function should only\n\
-be employed if @code{WIFSTOPPED} returned true.\n\
+Given @var{status} from a call to @code{waitpid}, return\n\
+the number of the signal which caused the child to stop.\n\
+\n\
+This function should only be employed if @code{WIFSTOPPED} returned true.\n\
 @seealso{waitpid, WIFEXITED, WEXITSTATUS, WIFSIGNALED, WTERMSIG, WCOREDUMP, WIFSTOPPED, WIFCONTINUED}\n\
 @end deftypefn")
 {
@@ -1593,8 +1613,8 @@
 DEFUNX ("WIFCONTINUED", FWIFCONTINUED, args, ,
         "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} WIFCONTINUED (@var{status})\n\
-Given @var{status} from a call to @code{waitpid}, return true if the\n\
-child process was resumed by delivery of @code{SIGCONT}.\n\
+Given @var{status} from a call to @code{waitpid}, return\n\
+true if the child process was resumed by delivery of @code{SIGCONT}.\n\
 @seealso{waitpid, WIFEXITED, WEXITSTATUS, WIFSIGNALED, WTERMSIG, WCOREDUMP, WIFSTOPPED, WSTOPSIG}\n\
 @end deftypefn")
 {
@@ -1616,8 +1636,9 @@
 DEFUNX ("canonicalize_file_name", Fcanonicalize_file_name, args, ,
         "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {[@var{cname}, @var{status}, @var{msg}] =} canonicalize_file_name (@var{fname})\n\
-Return the canonical name of file @var{fname}.  If the file does not exist\n\
-the empty string (\"\") is returned.\n\
+Return the canonical name of file @var{fname}.\n\
+\n\
+If the file does not exist the empty string (\"\") is returned.\n\
 @seealso{make_absolute_filename, is_absolute_filename, is_rooted_relative_filename}\n\
 @end deftypefn")
 {
@@ -1667,8 +1688,8 @@
 DEFUNX ("F_DUPFD", FF_DUPFD, args, ,
         "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} F_DUPFD ()\n\
-Return the numerical value to pass to @code{fcntl} to return a\n\
-duplicate file descriptor.\n\
+Return the numerical value to pass to @code{fcntl} to return\n\
+a duplicate file descriptor.\n\
 @seealso{fcntl, F_GETFD, F_GETFL, F_SETFD, F_SETFL}\n\
 @end deftypefn")
 {
@@ -1683,8 +1704,8 @@
 DEFUNX ("F_GETFD", FF_GETFD, args, ,
         "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} F_GETFD ()\n\
-Return the numerical value to pass to @code{fcntl} to return the\n\
-file descriptor flags.\n\
+Return the numerical value to pass to @code{fcntl} to return\n\
+the file descriptor flags.\n\
 @seealso{fcntl, F_DUPFD, F_GETFL, F_SETFD, F_SETFL}\n\
 @end deftypefn")
 {
@@ -1699,8 +1720,8 @@
 DEFUNX ("F_GETFL", FF_GETFL, args, ,
         "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} F_GETFL ()\n\
-Return the numerical value to pass to @code{fcntl} to return the\n\
-file status flags.\n\
+Return the numerical value to pass to @code{fcntl} to return\n\
+the file status flags.\n\
 @seealso{fcntl, F_DUPFD, F_GETFD, F_SETFD, F_SETFL}\n\
 @end deftypefn")
 {
@@ -1781,8 +1802,8 @@
         "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} O_CREAT ()\n\
 Return the numerical value of the file status flag that may be\n\
-returned by @code{fcntl} to indicate that a file should be\n\
-created if it does not exist.\n\
+returned by @code{fcntl} to indicate that a file should be created if it\n\
+does not exist.\n\
 @seealso{fcntl, O_APPEND, O_ASYNC, O_EXCL, O_NONBLOCK, O_RDONLY, O_RDWR, O_SYNC, O_TRUNC, O_WRONLY}\n\
 @end deftypefn")
 {
@@ -1831,8 +1852,7 @@
         "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} O_RDONLY ()\n\
 Return the numerical value of the file status flag that may be\n\
-returned by @code{fcntl} to indicate that a file is open for\n\
-reading only.\n\
+returned by @code{fcntl} to indicate that a file is open for reading only.\n\
 @seealso{fcntl, O_APPEND, O_ASYNC, O_CREAT, O_EXCL, O_NONBLOCK, O_RDWR, O_SYNC, O_TRUNC, O_WRONLY}\n\
 @end deftypefn")
 {
@@ -1848,8 +1868,8 @@
         "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} O_RDWR ()\n\
 Return the numerical value of the file status flag that may be\n\
-returned by @code{fcntl} to indicate that a file is open for both\n\
-reading and writing.\n\
+returned by @code{fcntl} to indicate that a file is open for both reading\n\
+and writing.\n\
 @seealso{fcntl, O_APPEND, O_ASYNC, O_CREAT, O_EXCL, O_NONBLOCK, O_RDONLY, O_SYNC, O_TRUNC, O_WRONLY}\n\
 @end deftypefn")
 {
@@ -1865,8 +1885,7 @@
         "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} O_SYNC ()\n\
 Return the numerical value of the file status flag that may be\n\
-returned by @code{fcntl} to indicate that a file is open for\n\
-synchronous I/O.\n\
+returned by @code{fcntl} to indicate that a file is open for synchronous I/O.\n\
 @seealso{fcntl, O_APPEND, O_ASYNC, O_CREAT, O_EXCL, O_NONBLOCK, O_RDONLY, O_RDWR, O_TRUNC, O_WRONLY}\n\
 @end deftypefn")
 {
@@ -1882,8 +1901,8 @@
         "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} O_TRUNC ()\n\
 Return the numerical value of the file status flag that may be\n\
-returned by @code{fcntl} to indicate that if file exists, it should\n\
-be truncated when writing.\n\
+returned by @code{fcntl} to indicate that if file exists, it should be\n\
+truncated when writing.\n\
 @seealso{fcntl, O_APPEND, O_ASYNC, O_CREAT, O_EXCL, O_NONBLOCK, O_RDONLY, O_RDWR, O_SYNC, O_WRONLY}\n\
 @end deftypefn")
 {
@@ -1899,8 +1918,7 @@
         "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} O_WRONLY ()\n\
 Return the numerical value of the file status flag that may be\n\
-returned by @code{fcntl} to indicate that a file is open for\n\
-writing only.\n\
+returned by @code{fcntl} to indicate that a file is open for writing only.\n\
 @seealso{fcntl, O_APPEND, O_ASYNC, O_CREAT, O_EXCL, O_NONBLOCK, O_RDONLY, O_RDWR, O_SYNC, O_TRUNC}\n\
 @end deftypefn")
 {
@@ -1920,8 +1938,8 @@
         "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} WNOHANG ()\n\
 Return the numerical value of the option argument that may be\n\
-passed to @code{waitpid} to indicate that it should return its\n\
-status immediately instead of waiting for a process to exit.\n\
+passed to @code{waitpid} to indicate that it should return its status\n\
+immediately instead of waiting for a process to exit.\n\
 @seealso{waitpid, WUNTRACED, WCONTINUE}\n\
 @end deftypefn")
 {
@@ -1936,9 +1954,8 @@
         "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} WUNTRACED ()\n\
 Return the numerical value of the option argument that may be\n\
-passed to @code{waitpid} to indicate that it should also return\n\
-if the child process has stopped but is not traced via the\n\
-@code{ptrace} system call\n\
+passed to @code{waitpid} to indicate that it should also return if the child\n\
+process has stopped but is not traced via the @code{ptrace} system call\n\
 @seealso{waitpid, WNOHANG, WCONTINUE}\n\
 @end deftypefn")
 {
@@ -1953,9 +1970,8 @@
         "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} WCONTINUE ()\n\
 Return the numerical value of the option argument that may be\n\
-passed to @code{waitpid} to indicate that it should also return\n\
-if a stopped child has been resumed by delivery of a @code{SIGCONT}\n\
-signal.\n\
+passed to @code{waitpid} to indicate that it should also return if a stopped\n\
+child has been resumed by delivery of a @code{SIGCONT} signal.\n\
 @seealso{waitpid, WNOHANG, WUNTRACED}\n\
 @end deftypefn")
 {
--- a/libinterp/corefcn/sysdep.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/sysdep.cc	Sun May 10 21:37:19 2015 -0700
@@ -599,7 +599,9 @@
 DEFUN (getenv, args, ,
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} getenv (@var{var})\n\
-Return the value of the environment variable @var{var}.  For example,\n\
+Return the value of the environment variable @var{var}.\n\
+\n\
+For example,\n\
 \n\
 @example\n\
 getenv (\"PATH\")\n\
@@ -720,8 +722,11 @@
        "-*- texinfo -*-\n\
 @deftypefn  {Built-in Function} {} kbhit ()\n\
 @deftypefnx {Built-in Function} {} kbhit (1)\n\
-Read a single keystroke from the keyboard.  If called with an\n\
-argument, don't wait for a keypress.  For example,\n\
+Read a single keystroke from the keyboard.\n\
+\n\
+If called with an argument, don't wait for a keypress.\n\
+\n\
+For example,\n\
 \n\
 @example\n\
 x = kbhit ();\n\
@@ -769,6 +774,7 @@
 Suspend the execution of the program for @var{n} seconds.\n\
 \n\
 @var{n} is a positive real value and may be a fraction of a second.\n\
+\n\
 If invoked without an input arguments then the program is suspended until a\n\
 character is typed.\n\
 \n\
@@ -876,9 +882,11 @@
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} usleep (@var{microseconds})\n\
 Suspend the execution of the program for the given number of\n\
-microseconds.  On systems where it is not possible to sleep for periods\n\
-of time less than one second, @code{usleep} will pause the execution for\n\
-@code{round (@var{microseconds} / 1e6)} seconds.\n\
+microseconds.\n\
+\n\
+On systems where it is not possible to sleep for periods of time less than\n\
+one second, @code{usleep} will pause the execution for @code{round\n\
+(@var{microseconds} / 1e6)} seconds.\n\
 @seealso{sleep, pause}\n\
 @end deftypefn")
 {
@@ -924,7 +932,9 @@
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} isieee ()\n\
 Return true if your computer @emph{claims} to conform to the IEEE standard\n\
-for floating point calculations.  No actual tests are performed.\n\
+for floating point calculations.\n\
+\n\
+No actual tests are performed.\n\
 @end deftypefn")
 {
   oct_mach_info::float_format flt_fmt = oct_mach_info::native_float_format ();
@@ -940,7 +950,7 @@
 DEFUN (native_float_format, , ,
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} native_float_format ()\n\
-Return the native floating point format as a string\n\
+Return the native floating point format as a string.\n\
 @end deftypefn")
 {
   oct_mach_info::float_format flt_fmt = oct_mach_info::native_float_format ();
@@ -955,13 +965,16 @@
 DEFUN (tilde_expand, args, ,
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} tilde_expand (@var{string})\n\
-Perform tilde expansion on @var{string}.  If @var{string} begins with a\n\
-tilde character, (@samp{~}), all of the characters preceding the first\n\
-slash (or all characters, if there is no slash) are treated as a\n\
-possible user name, and the tilde and the following characters up to the\n\
-slash are replaced by the home directory of the named user.  If the\n\
-tilde is followed immediately by a slash, the tilde is replaced by the\n\
-home directory of the user running Octave.  For example:\n\
+Perform tilde expansion on @var{string}.\n\
+\n\
+If @var{string} begins with a tilde character, (@samp{~}), all of the\n\
+characters preceding the first slash (or all characters, if there is no\n\
+slash) are treated as a possible user name, and the tilde and the following\n\
+characters up to the slash are replaced by the home directory of the named\n\
+user.  If the tilde is followed immediately by a slash, the tilde is\n\
+replaced by the home directory of the user running Octave.\n\
+\n\
+For example:\n\
 \n\
 @example\n\
 @group\n\
--- a/libinterp/corefcn/time.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/time.cc	Sun May 10 21:37:19 2015 -0700
@@ -104,10 +104,11 @@
 DEFUN (time, args, ,
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {@var{seconds} =} time ()\n\
-Return the current time as the number of seconds since the epoch.  The\n\
-epoch is referenced to 00:00:00 CUT (Coordinated Universal Time) 1 Jan\n\
-1970.  For example, on Monday February 17, 1997 at 07:15:06 CUT, the\n\
-value returned by @code{time} was 856163706.\n\
+Return the current time as the number of seconds since the epoch.\n\
+\n\
+The epoch is referenced to 00:00:00 CUT (Coordinated Universal Time) 1 Jan\n\
+1970.  For example, on Monday February 17, 1997 at 07:15:06 CUT, the value\n\
+returned by @code{time} was 856163706.\n\
 @seealso{strftime, strptime, localtime, gmtime, mktime, now, date, clock, datenum, datestr, datevec, calendar, weekday}\n\
 @end deftypefn")
 {
@@ -132,6 +133,7 @@
 @deftypefn {Built-in Function} {@var{tm_struct} =} gmtime (@var{t})\n\
 Given a value returned from @code{time}, or any non-negative integer,\n\
 return a time structure corresponding to CUT (Coordinated Universal Time).\n\
+\n\
 For example:\n\
 \n\
 @example\n\
@@ -253,8 +255,10 @@
 DEFUN (mktime, args, ,
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {@var{seconds} =} mktime (@var{tm_struct})\n\
-Convert a time structure corresponding to the local time to the number\n\
-of seconds since the epoch.  For example:\n\
+Convert a time structure corresponding to the local time to the number of\n\
+seconds since the epoch.\n\
+\n\
+For example:\n\
 \n\
 @example\n\
 @group\n\
@@ -309,15 +313,16 @@
 DEFUN (strftime, args, ,
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} strftime (@var{fmt}, @var{tm_struct})\n\
-Format the time structure @var{tm_struct} in a flexible way using the\n\
-format string @var{fmt} that contains @samp{%} substitutions\n\
-similar to those in @code{printf}.  Except where noted, substituted\n\
-fields have a fixed size; numeric fields are padded if necessary.\n\
-Padding is with zeros by default; for fields that display a single\n\
-number, padding can be changed or inhibited by following the @samp{%}\n\
-with one of the modifiers described below.  Unknown field specifiers are\n\
-copied as normal characters.  All other characters are copied to the\n\
-output without change.  For example:\n\
+Format the time structure @var{tm_struct} in a flexible way using the format\n\
+string @var{fmt} that contains @samp{%} substitutions similar to those in\n\
+@code{printf}.\n\
+\n\
+Except where noted, substituted fields have a fixed size; numeric fields are\n\
+padded if necessary.  Padding is with zeros by default; for fields that\n\
+display a single number, padding can be changed or inhibited by following\n\
+the @samp{%} with one of the modifiers described below.  Unknown field\n\
+specifiers are copied as normal characters.  All other characters are copied\n\
+to the output without change.  For example:\n\
 \n\
 @example\n\
 @group\n\
@@ -326,8 +331,8 @@
 @end group\n\
 @end example\n\
 \n\
-Octave's @code{strftime} function supports a superset of the ANSI C\n\
-field specifiers.\n\
+Octave's @code{strftime} function supports a superset of the ANSI C field\n\
+specifiers.\n\
 \n\
 @noindent\n\
 Literal character fields:\n\
--- a/libinterp/corefcn/toplev.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/toplev.cc	Sun May 10 21:37:19 2015 -0700
@@ -958,15 +958,16 @@
 @deftypefnx {Built-in Function} {} system (\"@var{string}\", @var{return_output}, @var{type})\n\
 @deftypefnx {Built-in Function} {[@var{status}, @var{output}] =} system (@dots{})\n\
 Execute a shell command specified by @var{string}.\n\
-If the optional argument @var{type} is @qcode{\"async\"}, the process\n\
-is started in the background and the process ID of the child process\n\
-is returned immediately.  Otherwise, the child process is started and\n\
-Octave waits until it exits.  If the @var{type} argument is omitted, it\n\
-defaults to the value @qcode{\"sync\"}.\n\
+\n\
+If the optional argument @var{type} is @qcode{\"async\"}, the process is\n\
+started in the background and the process ID of the child process is\n\
+returned immediately.  Otherwise, the child process is started and Octave\n\
+waits until it exits.  If the @var{type} argument is omitted, it defaults to\n\
+the value @qcode{\"sync\"}.\n\
 \n\
 If @var{system} is called with one or more output arguments, or if the\n\
 optional argument @var{return_output} is true and the subprocess is started\n\
-synchronously, then the output from the command is returned as a variable.  \n\
+synchronously, then the output from the command is returned as a variable.\n\
 Otherwise, if the subprocess is executed synchronously, its output is sent\n\
 to the standard output.  To send the output of a command executed with\n\
 @code{system} through the pager, use a command like\n\
@@ -1188,11 +1189,11 @@
 @noindent\n\
 will print the message @qcode{\"Bye bye\"} when Octave exits.\n\
 \n\
-The additional argument @var{flag} will register or unregister\n\
-@var{fcn} from the list of functions to be called when Octave\n\
-exits.  If @var{flag} is true, the function is registered, and if\n\
-@var{flag} is false, it is unregistered.  For example,\n\
-after registering the function @code{last_words} above,\n\
+The additional argument @var{flag} will register or unregister @var{fcn}\n\
+from the list of functions to be called when Octave exits.  If @var{flag} is\n\
+true, the function is registered, and if @var{flag} is false, it is\n\
+unregistered.  For example, after registering the function @code{last_words}\n\
+above,\n\
 \n\
 @example\n\
 atexit (\"last_words\", false);\n\
@@ -1203,9 +1204,8 @@
 @code{last_words} when it exits.\n\
 \n\
 Note that @code{atexit} only removes the first occurrence of a function\n\
-from the list, so if a function was placed in the list multiple\n\
-times with @code{atexit}, it must also be removed from the list\n\
-multiple times.\n\
+from the list, so if a function was placed in the list multiple times with\n\
+@code{atexit}, it must also be removed from the list multiple times.\n\
 @seealso{quit}\n\
 @end deftypefn")
 {
--- a/libinterp/corefcn/tril.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/tril.cc	Sun May 10 21:37:19 2015 -0700
@@ -355,16 +355,17 @@
 @deftypefnx {Function File} {} triu (@var{A}, @var{k}, @var{pack})\n\
 Return a new matrix formed by extracting the lower (@code{tril})\n\
 or upper (@code{triu}) triangular part of the matrix @var{A}, and\n\
-setting all other elements to zero.  The second argument is optional,\n\
-and specifies how many diagonals above or below the main diagonal should\n\
-also be set to zero.\n\
+setting all other elements to zero.\n\
+\n\
+The second argument is optional, and specifies how many diagonals above or\n\
+below the main diagonal should also be set to zero.\n\
 \n\
-The default value of @var{k} is zero, so that @code{triu} and\n\
-@code{tril} normally include the main diagonal as part of the result.\n\
+The default value of @var{k} is zero, so that @code{triu} and @code{tril}\n\
+normally include the main diagonal as part of the result.\n\
 \n\
-If the value of @var{k} is nonzero integer, the selection of elements\n\
-starts at an offset of @var{k} diagonals above or below the main\n\
-diagonal; above for positive @var{k} and below for negative @var{k}.\n\
+If the value of @var{k} is nonzero integer, the selection of elements starts\n\
+at an offset of @var{k} diagonals above or below the main diagonal; above\n\
+for positive @var{k} and below for negative @var{k}.\n\
 \n\
 The absolute value of @var{k} must not be greater than the number of\n\
 subdiagonals or superdiagonals.\n\
@@ -407,6 +408,7 @@
 @deftypefnx {Function File} {} triu (@var{A}, @var{k})\n\
 @deftypefnx {Function File} {} triu (@var{A}, @var{k}, @var{pack})\n\
 See the documentation for the @code{tril} function (@pxref{tril}).\n\
+@seealso{tril}\n\
 @end deftypefn")
 {
   return do_trilu ("triu", args);
--- a/libinterp/corefcn/tsearch.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/tsearch.cc	Sun May 10 21:37:19 2015 -0700
@@ -62,10 +62,11 @@
 DEFUN (tsearch, args, ,
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {@var{idx} =} tsearch (@var{x}, @var{y}, @var{t}, @var{xi}, @var{yi})\n\
-Search for the enclosing Delaunay convex hull.  For @code{@var{t} =\n\
-delaunay (@var{x}, @var{y})}, finds the index in @var{t} containing the\n\
-points @code{(@var{xi}, @var{yi})}.  For points outside the convex hull,\n\
-@var{idx} is NaN.\n\
+Search for the enclosing Delaunay convex hull.\n\
+\n\
+For @code{@var{t} = delaunay (@var{x}, @var{y})}, finds the index in @var{t}\n\
+containing the points @code{(@var{xi}, @var{yi})}.  For points outside the\n\
+convex hull, @var{idx} is NaN.\n\
 @seealso{delaunay, delaunayn}\n\
 @end deftypefn")
 {
--- a/libinterp/corefcn/typecast.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/typecast.cc	Sun May 10 21:37:19 2015 -0700
@@ -91,8 +91,8 @@
 DEFUN (typecast, args, ,
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {@var{y} =} typecast (@var{x}, \"@var{class}\")\n\
-Return a new array @var{y} resulting from interpreting the data of\n\
-@var{x} in memory as data of the numeric class @var{class}.\n\
+Return a new array @var{y} resulting from interpreting the data of @var{x}\n\
+in memory as data of the numeric class @var{class}.\n\
 \n\
 Both the class of @var{x} and @var{class} must be one of the built-in\n\
 numeric classes:\n\
@@ -117,14 +117,17 @@
 @end example\n\
 \n\
 @noindent\n\
-the last two are reserved for @var{class}; they indicate that a\n\
+the last two are only used with @var{class}; they indicate that a\n\
 complex-valued result is requested.  Complex arrays are stored in memory as\n\
 consecutive pairs of real numbers.  The sizes of integer types are given by\n\
 their bit counts.  Both logical and char are typically one byte wide;\n\
 however, this is not guaranteed by C++.  If your system is IEEE conformant,\n\
 single and double will be 4 bytes and 8 bytes wide, respectively.\n\
-@qcode{\"logical\"} is not allowed for @var{class}.  If the input is a row\n\
-vector, the return value is a row vector, otherwise it is a column vector.  \n\
+@qcode{\"logical\"} is not allowed for @var{class}.\n\
+\n\
+If the input is a row vector, the return value is a row vector, otherwise it\n\
+is a column vector.\n\
+\n\
 If the bit length of @var{x} is not divisible by that of @var{class}, an\n\
 error occurs.\n\
 \n\
@@ -325,8 +328,10 @@
 The number of elements of @var{x} should be divisible by the bit length of\n\
 @var{class}.  If it is not, excess bits are discarded.  Bits come in\n\
 increasing order of significance, i.e., @code{x(1)} is bit 0, @code{x(2)} is\n\
-bit 1, etc.  The result is a row vector if @var{x} is a row vector, otherwise\n\
-it is a column vector.\n\
+bit 1, etc.\n\
+\n\
+The result is a row vector if @var{x} is a row vector, otherwise it is a\n\
+column vector.\n\
 @seealso{bitunpack, typecast}\n\
 @end deftypefn")
 {
--- a/libinterp/corefcn/urlwrite.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/urlwrite.cc	Sun May 10 21:37:19 2015 -0700
@@ -295,7 +295,9 @@
 @deftypefnx {Loadable Function} {[@var{f}, @var{success}] =} urlwrite (@var{url}, @var{localfile})\n\
 @deftypefnx {Loadable Function} {[@var{f}, @var{success}, @var{message}] =} urlwrite (@var{url}, @var{localfile})\n\
 Download a remote file specified by its @var{url} and save it as\n\
-@var{localfile}.  For example:\n\
+@var{localfile}.\n\
+\n\
+For example:\n\
 \n\
 @example\n\
 @group\n\
@@ -304,15 +306,17 @@
 @end group\n\
 @end example\n\
 \n\
-The full path of the downloaded file is returned in @var{f}.  The\n\
-variable @var{success} is 1 if the download was successful,\n\
-otherwise it is 0 in which case @var{message} contains an error\n\
-message.  If no output argument is specified and an error occurs,\n\
-then the error is signaled through Octave's error handling mechanism.\n\
+The full path of the downloaded file is returned in @var{f}.\n\
 \n\
-This function uses libcurl.  Curl supports, among others, the HTTP,\n\
-FTP and FILE protocols.  Username and password may be specified in\n\
-the URL, for example:\n\
+The variable @var{success} is 1 if the download was successful,\n\
+otherwise it is 0 in which case @var{message} contains an error message.\n\
+ \n\
+If no output argument is specified and an error occurs, then the error is\n\
+signaled through Octave's error handling mechanism.\n\
+\n\
+This function uses libcurl.  Curl supports, among others, the HTTP, FTP and\n\
+FILE protocols.  Username and password may be specified in the URL, for\n\
+example:\n\
 \n\
 @example\n\
 @group\n\
@@ -322,8 +326,8 @@
 @end example\n\
 \n\
 GET and POST requests can be specified by @var{method} and @var{param}.\n\
-The parameter @var{method} is either @samp{get} or @samp{post}\n\
-and @var{param} is a cell array of parameter and value pairs.\n\
+The parameter @var{method} is either @samp{get} or @samp{post} and\n\
+@var{param} is a cell array of parameter and value pairs.\n\
 For example:\n\
 \n\
 @example\n\
@@ -458,7 +462,9 @@
 @deftypefnx {Loadable Function} {[@var{s}, @var{success}, @var{message}] =} urlread (@var{url})\n\
 @deftypefnx {Loadable Function} {[@dots{}] =} urlread (@var{url}, @var{method}, @var{param})\n\
 Download a remote file specified by its @var{url} and return its content\n\
-in string @var{s}.  For example:\n\
+in string @var{s}.\n\
+\n\
+For example:\n\
 \n\
 @example\n\
 s = urlread (\"ftp://ftp.octave.org/pub/README\");\n\
@@ -466,20 +472,22 @@
 \n\
 The variable @var{success} is 1 if the download was successful,\n\
 otherwise it is 0 in which case @var{message} contains an error\n\
-message.  If no output argument is specified and an error occurs,\n\
-then the error is signaled through Octave's error handling mechanism.\n\
+message.\n\
 \n\
-This function uses libcurl.  Curl supports, among others, the HTTP,\n\
-FTP and FILE protocols.  Username and password may be specified in the\n\
-URL@.  For example:\n\
+If no output argument is specified and an error occurs, then the error is\n\
+signaled through Octave's error handling mechanism.\n\
+\n\
+This function uses libcurl.  Curl supports, among others, the HTTP, FTP and\n\
+FILE protocols.  Username and password may be specified in the URL@.  For\n\
+example:\n\
 \n\
 @example\n\
 s = urlread (\"http://user:password@@example.com/file.txt\");\n\
 @end example\n\
 \n\
 GET and POST requests can be specified by @var{method} and @var{param}.\n\
-The parameter @var{method} is either @samp{get} or @samp{post}\n\
-and @var{param} is a cell array of parameter and value pairs.\n\
+The parameter @var{method} is either @samp{get} or @samp{post} and\n\
+@var{param} is a cell array of parameter and value pairs.\n\
 For example:\n\
 \n\
 @example\n\
--- a/libinterp/corefcn/utils.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/utils.cc	Sun May 10 21:37:19 2015 -0700
@@ -295,15 +295,16 @@
 \n\
 Return the absolute name of @var{file} if it can be found in\n\
 the list of directories specified by @code{path}.\n\
+\n\
 If no file is found, return an empty character string.\n\
 \n\
-If the first argument is a cell array of strings, search each\n\
-directory of the loadpath for element of the cell array and return\n\
-the first that matches.\n\
+If the first argument is a cell array of strings, search each directory of\n\
+the loadpath for element of the cell array and return the first that\n\
+matches.\n\
 \n\
-If the second optional argument @qcode{\"all\"} is supplied, return\n\
-a cell array containing the list of all files that have the same\n\
-name in the path.  If no files are found, return an empty cell array.\n\
+If the second optional argument @qcode{\"all\"} is supplied, return a cell\n\
+array containing the list of all files that have the same name in the path. \n\
+If no files are found, return an empty cell array.\n\
 @seealso{file_in_path, dir_in_loadpath, path}\n\
 @end deftypefn")
 {
@@ -364,10 +365,11 @@
        "-*- texinfo -*-\n\
 @deftypefn  {Built-in Function} {} file_in_path (@var{path}, @var{file})\n\
 @deftypefnx {Built-in Function} {} file_in_path (@var{path}, @var{file}, \"all\")\n\
-Return the absolute name of @var{file} if it can be found in\n\
-@var{path}.  The value of @var{path} should be a colon-separated list of\n\
-directories in the format described for @code{path}.  If no file\n\
-is found, return an empty character string.  For example:\n\
+Return the absolute name of @var{file} if it can be found in @var{path}.\n\
+\n\
+The value of @var{path} should be a colon-separated list of directories in\n\
+the format described for @code{path}.  If no file is found, return an empty\n\
+character string.  For example:\n\
 \n\
 @example\n\
 @group\n\
@@ -376,13 +378,12 @@
 @end group\n\
 @end example\n\
 \n\
-If the second argument is a cell array of strings, search each\n\
-directory of the path for element of the cell array and return\n\
-the first that matches.\n\
+If the second argument is a cell array of strings, search each directory of\n\
+the path for element of the cell array and return the first that matches.\n\
 \n\
-If the third optional argument @qcode{\"all\"} is supplied, return\n\
-a cell array containing the list of all files that have the same\n\
-name in the path.  If no files are found, return an empty cell array.\n\
+If the third optional argument @qcode{\"all\"} is supplied, return a cell\n\
+array containing the list of all files that have the same name in the path. \n\
+If no files are found, return an empty cell array.\n\
 @seealso{file_in_loadpath, dir_in_loadpath, path}\n\
 @end deftypefn")
 {
@@ -694,11 +695,21 @@
 
   return retval;
 }
+/*
+Escape sequences begin with a leading backslash (@qcode{"@xbackslashchar{}"})\n\
+followed by 1--3 characters (.e.g., @qcode{"@xbackslashchar{}n"} => newline).\n\
 
+
+   */
 DEFUN (do_string_escapes, args, ,
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} do_string_escapes (@var{string})\n\
-Convert special characters in @var{string} to their escaped forms.\n\
+Convert escape sequences in @var{string} to the characters they represent.\n\
+\n\
+Escape sequences begin with a leading backslash\n\
+(@qcode{'@xbackslashchar{}'}) followed by 1--3 characters\n\
+(.e.g., @qcode{\"@xbackslashchar{}n\"} => newline).\n\
+@seealso{undo_string_escapes}\n\
 @end deftypefn")
 {
   octave_value retval;
@@ -806,20 +817,21 @@
 DEFUN (undo_string_escapes, args, ,
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} undo_string_escapes (@var{s})\n\
-Convert special characters in strings back to their escaped forms.  For\n\
-example, the expression\n\
+Convert special characters in strings back to their escaped forms.\n\
+\n\
+For example, the expression\n\
 \n\
 @example\n\
 bell = \"\\a\";\n\
 @end example\n\
 \n\
 @noindent\n\
-assigns the value of the alert character (control-g, ASCII code 7) to\n\
-the string variable @code{bell}.  If this string is printed, the\n\
-system will ring the terminal bell (if it is possible).  This is\n\
-normally the desired outcome.  However, sometimes it is useful to be\n\
-able to print the original representation of the string, with the\n\
-special characters replaced by their escape sequences.  For example,\n\
+assigns the value of the alert character (control-g, ASCII code 7) to the\n\
+string variable @code{bell}.  If this string is printed, the system will\n\
+ring the terminal bell (if it is possible).  This is normally the desired\n\
+outcome.  However, sometimes it is useful to be able to print the original\n\
+representation of the string, with the special characters replaced by their\n\
+escape sequences.  For example,\n\
 \n\
 @example\n\
 @group\n\
@@ -829,8 +841,8 @@
 @end example\n\
 \n\
 @noindent\n\
-replaces the unprintable alert character with its printable\n\
-representation.\n\
+replaces the unprintable alert character with its printable representation.\n\
+@seealso{do_string_escapes}\n\
 @end deftypefn")
 {
   octave_value retval;
@@ -926,7 +938,9 @@
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} make_absolute_filename (@var{file})\n\
 Return the full name of @var{file} beginning from the root of the file\n\
-system.  No check is done for the existence of @var{file}.\n\
+system.\n\
+\n\
+No check is done for the existence of @var{file}.\n\
 @seealso{canonicalize_file_name, is_absolute_filename, is_rooted_relative_filename, isdir}\n\
 @end deftypefn")
 {
@@ -958,15 +972,16 @@
        "-*- texinfo -*-\n\
 @deftypefn  {Built-in Function} {} dir_in_loadpath (@var{dir})\n\
 @deftypefnx {Built-in Function} {} dir_in_loadpath (@var{dir}, \"all\")\n\
-Return the full name of the path element matching @var{dir}.  The\n\
-match is performed at the end of each path element.  For example, if\n\
+Return the full name of the path element matching @var{dir}.\n\
+\n\
+The match is performed at the end of each path element.  For example, if\n\
 @var{dir} is @qcode{\"foo/bar\"}, it matches the path element\n\
 @nospell{@qcode{\"/some/dir/foo/bar\"}}, but not\n\
 @nospell{@qcode{\"/some/dir/foo/bar/baz\"}}\n\
 @nospell{@qcode{\"/some/dir/allfoo/bar\"}}.\n\
 \n\
-The second argument is optional.  If it is supplied, return a cell array\n\
-containing all name matches rather than just the first.\n\
+If the optional second argument is supplied, return a cell array containing\n\
+all name matches rather than just the first.\n\
 @seealso{file_in_path, file_in_loadpath, path}\n\
 @end deftypefn")
 {
@@ -1023,6 +1038,7 @@
 set its value to @var{val} and return the previous value, or return\n\
 the named error code given @var{name} as a character string, or -1\n\
 if @var{name} is not found.\n\
+@seealso{errno_list}\n\
 @end deftypefn")
 {
   octave_value retval;
@@ -1074,6 +1090,7 @@
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} errno_list ()\n\
 Return a structure containing the system-dependent errno values.\n\
+@seealso{errno}\n\
 @end deftypefn")
 {
   octave_value retval;
@@ -1359,9 +1376,11 @@
 Return true if @var{ind} is a valid index.\n\
 \n\
 Valid indices are either positive integers (although possibly of real data\n\
-type), or logical arrays.  If present, @var{n} specifies the maximum extent\n\
-of the dimension to be indexed.  When possible the internal result is cached\n\
-so that subsequent indexing using @var{ind} will not perform the check again.\n\
+type), or logical arrays.\n\
+\n\
+If present, @var{n} specifies the maximum extent of the dimension to be\n\
+indexed.  When possible the internal result is cached so that subsequent\n\
+indexing using @var{ind} will not perform the check again.\n\
 \n\
 Implementation Note: Strings are first converted to double values before the\n\
 checks for valid indices are made.  Unless a string contains the NULL\n\
@@ -1525,7 +1544,6 @@
 Return true if running in the student edition of @sc{matlab}.\n\
 \n\
 @code{isstudent} always returns false in Octave.\n\
-\n\
 @seealso{false}\n\
 @end deftypefn")
 {
--- a/libinterp/corefcn/variables.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/corefcn/variables.cc	Sun May 10 21:37:19 2015 -0700
@@ -353,6 +353,7 @@
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} isglobal (@var{name})\n\
 Return true if @var{name} is a globally visible variable.\n\
+\n\
 For example:\n\
 \n\
 @example\n\
@@ -546,8 +547,8 @@
 @var{name} does not exist.\n\
 @end table\n\
 \n\
-If the optional argument @var{type} is supplied, check only for\n\
-symbols of the specified type.  Valid types are\n\
+If the optional argument @var{type} is supplied, check only for symbols of\n\
+the specified type.  Valid types are\n\
 \n\
 @table @asis\n\
 @item @qcode{\"var\"}\n\
@@ -569,7 +570,7 @@
 \n\
 If no type is given, and there are multiple possible matches for name,\n\
 @code{exist} will return a code according to the following priority list:\n\
-variable, built-in function, oct-file, directory, file, class. \n\
+variable, built-in function, oct-file, directory, file, class.\n\
 \n\
 @code{exist} returns 2 if a regular file called @var{name} is present in\n\
 Octave's search path.  If you want information about other types of files\n\
@@ -1846,12 +1847,14 @@
 @deftypefnx {Command} {} who pattern @dots{}\n\
 @deftypefnx {Command} {} who option pattern @dots{}\n\
 @deftypefnx {Command} {C =} who (\"pattern\", @dots{})\n\
-List currently defined variables matching the given patterns.  Valid\n\
-pattern syntax is the same as described for the @code{clear} command.\n\
+List currently defined variables matching the given patterns.\n\
+\n\
+Valid pattern syntax is the same as described for the @code{clear} command.\n\
 If no patterns are supplied, all variables are listed.\n\
+\n\
 By default, only variables visible in the local scope are displayed.\n\
 \n\
-The following are valid options but may not be combined.\n\
+The following are valid options, but may not be combined.\n\
 \n\
 @table @code\n\
 @item global\n\
@@ -1859,8 +1862,8 @@
 \n\
 @item -regexp\n\
 The patterns are considered to be regular expressions when matching the\n\
-variables to display.  The same pattern syntax accepted by\n\
-the @code{regexp} function is used.\n\
+variables to display.  The same pattern syntax accepted by the @code{regexp}\n\
+function is used.\n\
 \n\
 @item -file\n\
 The next argument is treated as a filename.  All variables found within the\n\
@@ -1897,9 +1900,12 @@
 @deftypefnx {Command} {} whos option pattern @dots{}\n\
 @deftypefnx {Command} {S =} whos (\"pattern\", @dots{})\n\
 Provide detailed information on currently defined variables matching the\n\
-given patterns.  Options and pattern syntax are the same as for the\n\
-@code{who} command.  Extended information about each variable is\n\
-summarized in a table with the following default entries.\n\
+given patterns.\n\
+\n\
+Options and pattern syntax are the same as for the @code{who} command.\n\
+\n\
+Extended information about each variable is summarized in a table with the\n\
+following default entries.\n\
 \n\
 @table @asis\n\
 @item Attr\n\
@@ -2075,8 +2081,9 @@
        "-*- texinfo -*-\n\
 @deftypefn  {Built-in Function} {} munlock ()\n\
 @deftypefnx {Built-in Function} {} munlock (@var{fcn})\n\
-Unlock the named function @var{fcn}.  If no function is named\n\
-then unlock the current function.\n\
+Unlock the named function @var{fcn}.\n\
+\n\
+If no function is named then unlock the current function.\n\
 @seealso{mlock, mislocked, persistent}\n\
 @end deftypefn")
 {
@@ -2112,8 +2119,9 @@
        "-*- texinfo -*-\n\
 @deftypefn  {Built-in Function} {} mislocked ()\n\
 @deftypefnx {Built-in Function} {} mislocked (@var{fcn})\n\
-Return true if the named function @var{fcn} is locked.  If no function is\n\
-named then return true if the current function is locked.\n\
+Return true if the named function @var{fcn} is locked.\n\
+\n\
+If no function is named then return true if the current function is locked.\n\
 @seealso{mlock, munlock, persistent}\n\
 @end deftypefn")
 {
@@ -2370,8 +2378,9 @@
 DEFUN (clear, args, ,
        "-*- texinfo -*-\n\
 @deftypefn {Command} {} clear [options] pattern @dots{}\n\
-Delete the names matching the given patterns from the symbol table.  The\n\
-pattern may contain the following special characters:\n\
+Delete the names matching the given patterns from the symbol table.\n\
+\n\
+The pattern may contain the following special characters:\n\
 \n\
 @table @code\n\
 @item ?\n\
@@ -2398,8 +2407,9 @@
 @code{b} and end with the letter @code{r}.\n\
 \n\
 If @code{clear} is called without any arguments, all user-defined\n\
-variables (local and global) are cleared from the symbol table.  If\n\
-@code{clear} is called with at least one argument, only the visible\n\
+variables (local and global) are cleared from the symbol table.\n\
+\n\
+If @code{clear} is called with at least one argument, only the visible\n\
 names matching the arguments are cleared.  For example, suppose you have\n\
 defined a function @code{foo}, and then hidden it by performing the\n\
 assignment @code{foo = 2}.  Executing the command @kbd{clear foo} once\n\
@@ -2411,20 +2421,20 @@
 \n\
 @table @code\n\
 @item -all, -a\n\
-Clears all local and global user-defined variables and all functions\n\
-from the symbol table.\n\
+Clear all local and global user-defined variables and all functions from the\n\
+symbol table.\n\
 \n\
 @item -exclusive, -x\n\
-Clears the variables that don't match the following pattern.\n\
+Clear the variables that don't match the following pattern.\n\
 \n\
 @item -functions, -f\n\
-Clears the function names and the built-in symbols names.\n\
+Clear the function names and the built-in symbols names.\n\
 \n\
 @item -global, -g\n\
-Clears the global symbol names.\n\
+Clear global symbol names.\n\
 \n\
 @item -variables, -v\n\
-Clears the local variable names.\n\
+Clear local variable names.\n\
 \n\
 @item -classes, -c\n\
 Clears the class structure table and clears all objects.\n\
@@ -2436,6 +2446,7 @@
 \n\
 With the exception of @code{exclusive}, all long options can be used\n\
 without the dash as well.\n\
+@seealso{who, whos, exist}\n\
 @end deftypefn")
 {
   octave_value_list retval;
@@ -2591,8 +2602,8 @@
 \n\
 @table @code\n\
 @item %a\n\
-Prints attributes of variables (g=global, p=persistent,\n\
-f=formal parameter, a=automatic variable).\n\
+Prints attributes of variables (g=global, p=persistent, f=formal parameter,\n\
+a=automatic variable).\n\
 \n\
 @item %b\n\
 Prints number of bytes occupied by variables.\n\
@@ -2642,7 +2653,7 @@
 @qcode{\"  %a:4; %ln:6; %cs:16:6:1;  %rb:12;  %lc:-1;@xbackslashchar{}n\"}\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
-variable is changed locally for the function and any subroutines it calls.  \n\
+variable is changed locally for the function and any subroutines it calls.\n\
 The original variable value is restored when exiting the function.\n\
 @seealso{whos}\n\
 @end deftypefn")
@@ -2661,7 +2672,7 @@
 an unknown identifier is requested.\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
-variable is changed locally for the function and any subroutines it calls.  \n\
+variable is changed locally for the function and any subroutines it calls.\n\
 The original variable value is restored when exiting the function.\n\
 @seealso{missing_component_hook}\n\
 @end deftypefn")
@@ -2723,12 +2734,14 @@
 @deftypefnx {Built-in Function} {@var{old_val} =} missing_component_hook (@var{new_val})\n\
 @deftypefnx {Built-in Function} {} missing_component_hook (@var{new_val}, \"local\")\n\
 Query or set the internal variable that specifies the function to call when\n\
-a component of Octave is missing.  This can be useful for packagers that\n\
-may split the Octave installation into multiple sub-packages, for example,\n\
-to provide a hint to users for how to install the missing components.\n\
+a component of Octave is missing.\n\
+\n\
+This can be useful for packagers that may split the Octave installation into\n\
+multiple sub-packages, for example, to provide a hint to users for how to\n\
+install the missing components.\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
-variable is changed locally for the function and any subroutines it calls.  \n\
+variable is changed locally for the function and any subroutines it calls.\n\
 The original variable value is restored when exiting the function.\n\
 \n\
 The hook function is expected to be of the form\n\
--- a/libinterp/dldfcn/__magick_read__.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/dldfcn/__magick_read__.cc	Sun May 10 21:37:19 2015 -0700
@@ -724,8 +724,8 @@
 @deftypefn {Loadable Function} {[@var{img}, @var{map}, @var{alpha}] =} __magick_read__ (@var{fname}, @var{options})\n\
 Read image with GraphicsMagick or ImageMagick.\n\
 \n\
-This is a private internal function not intended for direct use.  Instead\n\
-use @code{imread}.\n\
+This is a private internal function not intended for direct use.\n\
+Use @code{imread} instead.\n\
 \n\
 @seealso{imfinfo, imformats, imread, imwrite}\n\
 @end deftypefn")
@@ -1388,8 +1388,8 @@
 @deftypefn {Loadable Function} {} __magick_write__ (@var{fname}, @var{fmt}, @var{img}, @var{map}, @var{options})\n\
 Write image with GraphicsMagick or ImageMagick.\n\
 \n\
-This is a private internal function not intended for direct use.  Instead\n\
-use @code{imwrite}.\n\
+This is a private internal function not intended for direct use.\n\
+Use @code{imwrite} instead.\n\
 \n\
 @seealso{imfinfo, imformats, imread, imwrite}\n\
 @end deftypefn")
@@ -1789,8 +1789,8 @@
 @deftypefn {Loadable Function} {} __magick_finfo__ (@var{fname})\n\
 Read image information with GraphicsMagick or ImageMagick.\n\
 \n\
-This is a private internal function not intended for direct use.  Instead\n\
-use @code{imfinfo}.\n\
+This is a private internal function not intended for direct use.\n\
+Use @code{imfinfo} instead.\n\
 \n\
 @seealso{imfinfo, imformats, imread, imwrite}\n\
 @end deftypefn")
--- a/libinterp/dldfcn/amd.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/dldfcn/amd.cc	Sun May 10 21:37:19 2015 -0700
@@ -55,22 +55,23 @@
 @deftypefn  {Loadable Function} {@var{p} =} amd (@var{S})\n\
 @deftypefnx {Loadable Function} {@var{p} =} amd (@var{S}, @var{opts})\n\
 \n\
-Return the approximate minimum degree permutation of a matrix.  This\n\
-permutation such that the Cholesky@tie{}factorization of @code{@var{S}\n\
-(@var{p}, @var{p})} tends to be sparser than the Cholesky@tie{}factorization\n\
-of @var{S} itself.  @code{amd} is typically faster than @code{symamd} but\n\
-serves a similar purpose.\n\
+Return the approximate minimum degree permutation of a matrix.\n\
 \n\
-The optional parameter @var{opts} is a structure that controls the\n\
-behavior of @code{amd}.  The fields of the structure are\n\
+This is a permutation such that the Cholesky@tie{}factorization of\n\
+@code{@var{S} (@var{p}, @var{p})} tends to be sparser than the\n\
+Cholesky@tie{}factorization of @var{S} itself.  @code{amd} is typically\n\
+faster than @code{symamd} but serves a similar purpose.\n\
+\n\
+The optional parameter @var{opts} is a structure that controls the behavior\n\
+of @code{amd}.  The fields of the structure are\n\
 \n\
 @table @asis\n\
 @item @var{opts}.dense\n\
 Determines what @code{amd} considers to be a dense row or column of the\n\
 input matrix.  Rows or columns with more than @code{max (16, (dense *\n\
 sqrt (@var{n})))} entries, where @var{n} is the order of the matrix @var{S},\n\
-are ignored by @code{amd} during the calculation of the permutation\n\
-The value of dense must be a positive scalar and its default value is 10.0\n\
+are ignored by @code{amd} during the calculation of the permutation.\n\
+The value of dense must be a positive scalar and the default value is 10.0\n\
 \n\
 @item @var{opts}.aggressive\n\
 If this value is a nonzero scalar, then @code{amd} performs aggressive\n\
@@ -78,8 +79,8 @@
 @end table\n\
 \n\
 The author of the code itself is Timothy A. Davis\n\
-@email{davis@@cise.ufl.edu}, University of Florida (see\n\
-@url{http://www.cise.ufl.edu/research/sparse/amd}).\n\
+@email{davis@@cise.ufl.edu}, University of Florida\n\
+(see @url{http://www.cise.ufl.edu/research/sparse/amd}).\n\
 @seealso{symamd, colamd}\n\
 @end deftypefn")
 {
--- a/libinterp/dldfcn/audiodevinfo.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/dldfcn/audiodevinfo.cc	Sun May 10 21:37:19 2015 -0700
@@ -77,25 +77,28 @@
 \n\
 @deftypefnx {Loadable Function} {@var{supports} =} audiodevinfo (@var{io}, @var{id}, @var{rate}, @var{bits}, @var{chans})\n\
 \n\
-Return a structure with fields \"input\" and \"output\".\n\
-The value of each field is a structure array with fields\n\
-\"Name\", @nospell{\"DriverVersion\"} and \"ID\" describing an audio device.\n\
+Return a structure describing the available audio input and output devices.\n\
+\n\
+The @var{devinfo} structure has two fields @qcode{\"input\"} and\n\
+@qcode{\"output\"}.  The value of each field is a structure array with fields\n\
+@qcode{\"Name\"}, @nospell{\"DriverVersion\"} and @qcode{\"ID\"} describing\n\
+an audio device.\n\
 \n\
 If the optional argument @var{io} is 1, return information about input\n\
 devices only.  If it is 0, return information about output devices only.\n\
 \n\
 If the optional argument @var{id} is provided, return information about\n\
-corresponding device.\n\
+the corresponding device.\n\
 \n\
 If the optional argument @var{name} is provided, return the id of the\n\
 named device.\n\
 \n\
-Given a sampling rate, bits per sample, and number of channels for\n\
-an input or output device, return the ID of the first device that\n\
-supports playback or recording using the specified parameters.\n\
+Given a sampling rate, bits per sample, and number of channels for an input\n\
+or output device, return the ID of the first device that supports playback\n\
+or recording using the specified parameters.\n\
 \n\
-If also given a device ID, return true if the device supports playback\n\
-or recording using those parameters.\n\
+If also given a device ID, return true if the device supports playback or\n\
+recording using those parameters.\n\
 @end deftypefn")
 {
   octave_value retval;
--- a/libinterp/dldfcn/audioread.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/dldfcn/audioread.cc	Sun May 10 21:37:19 2015 -0700
@@ -56,20 +56,18 @@
 \n\
 @deftypefnx {Loadable Function} {[@var{y}, @var{fs}] =} audioread (@var{filename}, @var{datatype})\n\
 @deftypefnx {Loadable Function} {[@var{y}, @var{fs}] =} audioread (@var{filename}, @var{samples}, @var{datatype})\n\
-Read the audio file @var{filename} and return the audio data and sampling\n\
-rate.  The audio data is stored as matrix with rows corresponding\n\
-to audio frames and columns corresponding to channels.\n\
+Read the audio file @var{filename} and return the audio data @var{y} and\n\
+sampling rate @var{fs}.\n\
+\n\
+The audio data is stored as matrix with rows corresponding to audio frames\n\
+and columns corresponding to channels.\n\
 \n\
 The optional two-element vector argument @var{samples} specifies starting\n\
 and ending frames.\n\
 \n\
 The optional argument @var{datatype} specifies the datatype to return.\n\
-If it is @qcode{\"native\"}, then the type of data depends on how the\n\
-data is stored in the audio file.\n\
-\n\
-Read a file and return a specified range of frames in an array of specified\n\
-type.\n\
-\n\
+If it is @qcode{\"native\"}, then the type of data depends on how the data\n\
+is stored in the audio file.\n\
 @end deftypefn")
 {
   octave_value_list retval;
@@ -258,10 +256,10 @@
 @deftypefn  {Loadable Function} {} audiowrite (@var{filename}, @var{y}, @var{fs})\n\
 @deftypefnx {Loadable Function} {} audiowrite (@var{filename}, @var{y}, @var{fs}, @var{name}, @var{value}, @dots{})\n\
 \n\
-Write audio data from the matrix @var{y} to @var{filename} with the file\n\
-format determined by the file extension.\n\
+Write audio data from the matrix @var{y} to @var{filename} at sampling rate\n\
+@var{fs} with the file format determined by the file extension.\n\
 \n\
-Additional name and value argument pairs may be used to specify the\n\
+Additional name/value argument pairs may be used to specify the\n\
 following options:\n\
 \n\
 @table @samp\n\
--- a/libinterp/dldfcn/ccolamd.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/dldfcn/ccolamd.cc	Sun May 10 21:37:19 2015 -0700
@@ -59,16 +59,16 @@
 @deftypefnx {Loadable Function} {[@var{p}, @var{stats}] =} ccolamd (@dots{})\n\
 \n\
 Constrained column approximate minimum degree permutation.\n\
+\n\
 @code{@var{p} = ccolamd (@var{S})} returns the column approximate minimum\n\
 degree permutation vector for the sparse matrix @var{S}.  For a non-symmetric\n\
-matrix\n\
-@var{S},\n\
-@code{@var{S}(:, @var{p})} tends to have sparser LU@tie{}factors than\n\
-@var{S}.  @code{chol (@var{S}(:, @var{p})' * @var{S}(:, @var{p}))} also\n\
-tends to be sparser than @code{chol (@var{S}' * @var{S})}.  @code{@var{p} =\n\
-ccolamd (@var{S}, 1)} optimizes the ordering for @code{lu (@var{S}(:,\n\
-@var{p}))}.  The ordering is followed by a column elimination tree\n\
-post-ordering.\n\
+matrix @var{S}, @code{@var{S}(:, @var{p})} tends to have sparser\n\
+LU@tie{}factors than @var{S}.\n\
+@code{chol (@var{S}(:, @var{p})' * @var{S}(:, @var{p}))} also tends to be\n\
+sparser than @code{chol (@var{S}' * @var{S})}.\n\
+@code{@var{p} = ccolamd (@var{S}, 1)} optimizes the ordering for\n\
+@code{lu (@var{S}(:, @var{p}))}.  The ordering is followed by a column\n\
+elimination tree post-ordering.\n\
 \n\
 @var{knobs} is an optional 1-element to 5-element input vector, with a\n\
 default value of @code{[0 10 10 1 0]} if not present or empty.  Entries not\n\
@@ -77,16 +77,17 @@
 @table @code\n\
 @item @var{knobs}(1)\n\
 if nonzero, the ordering is optimized for @code{lu (S(:, p))}.  It will be a\n\
-poor ordering for @code{chol (@var{S}(:, @var{p})' * @var{S}(:,\n\
-@var{p}))}.  This is the most important knob for ccolamd.\n\
+poor ordering for @code{chol (@var{S}(:, @var{p})' * @var{S}(:, @var{p}))}.\n\
+This is the most important knob for ccolamd.\n\
 \n\
 @item @var{knobs}(2)\n\
-if @var{S} is m-by-n, rows with more than @code{max (16, @var{knobs}(2) *\n\
-sqrt (n))} entries are ignored.\n\
+if @var{S} is m-by-n, rows with more than\n\
+@code{max (16, @var{knobs}(2) * sqrt (n))} entries are ignored.\n\
 \n\
 @item @var{knobs}(3)\n\
-columns with more than @code{max (16, @var{knobs}(3) * sqrt (min (@var{m},\n\
-@var{n})))} entries are ignored and ordered last in the output permutation\n\
+columns with more than\n\
+@code{max (16, @var{knobs}(3) * sqrt (min (@var{m}, @var{n})))} entries are\n\
+ignored and ordered last in the output permutation\n\
 (subject to the cmember constraints).\n\
 \n\
 @item @var{knobs}(4)\n\
@@ -344,17 +345,18 @@
 @deftypefnx {Loadable Function} {@var{p} =} csymamd (@var{S}, @var{knobs}, @var{cmember})\n\
 @deftypefnx {Loadable Function} {[@var{p}, @var{stats}] =} csymamd (@dots{})\n\
 \n\
-For a symmetric positive definite matrix @var{S}, returns the permutation\n\
+For a symmetric positive definite matrix @var{S}, return the permutation\n\
 vector @var{p} such that @code{@var{S}(@var{p},@var{p})} tends to have a\n\
-sparser Cholesky@tie{}factor than @var{S}.  Sometimes @code{csymamd} works\n\
-well for symmetric indefinite matrices too.  The matrix @var{S} is assumed\n\
-to be symmetric; only the strictly lower triangular part is referenced.\n\
-@var{S} must be square.  The ordering is followed by an elimination tree\n\
-post-ordering.\n\
+sparser Cholesky@tie{}factor than @var{S}.\n\
+\n\
+Sometimes @code{csymamd} works well for symmetric indefinite matrices too.  \n\
+The matrix @var{S} is assumed to be symmetric; only the strictly lower\n\
+triangular part is referenced.  @var{S} must be square.  The ordering is\n\
+followed by an elimination tree post-ordering.\n\
 \n\
 @var{knobs} is an optional 1-element to 3-element input vector, with a\n\
-default value of @code{[10 1 0]} if present or empty.  Entries not\n\
-present are set to their defaults.\n\
+default value of @code{[10 1 0]}.  Entries not present are set to their\n\
+defaults.\n\
 \n\
 @table @code\n\
 @item @var{knobs}(1)\n\
@@ -377,8 +379,9 @@
 by all rows/columns in set 2, and so on.  @code{@var{cmember} = ones (1,n)}\n\
 if not present or empty.  @code{csymamd (@var{S},[],1:n)} returns @code{1:n}.\n\
 \n\
-@code{@var{p} = csymamd (@var{S})} is about the same as @code{@var{p} =\n\
-symamd (@var{S})}.  @var{knobs} and its default values differ.\n\
+@code{@var{p} = csymamd (@var{S})} is about the same as\n\
+@code{@var{p} = symamd (@var{S})}.  @var{knobs} and its default values\n\
+differ.\n\
 \n\
 @code{@var{stats}(4:7)} provide information if CCOLAMD was able to\n\
 continue.  The matrix is OK if @code{@var{stats}(4)} is zero, or 1 if\n\
--- a/libinterp/dldfcn/chol.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/dldfcn/chol.cc	Sun May 10 21:37:19 2015 -0700
@@ -70,7 +70,9 @@
 @deftypefnx {Loadable Function} {[@var{L}, @dots{}] =} chol (@dots{}, \"upper\")\n\
 @cindex Cholesky factorization\n\
 Compute the Cholesky@tie{}factor, @var{R}, of the symmetric positive definite\n\
-matrix @var{A}, where\n\
+matrix @var{A}.\n\
+\n\
+The Cholesky@tie{}factor is defined by\n\
 @tex\n\
 $ R^T R = A $.\n\
 @end tex\n\
@@ -89,8 +91,8 @@
 gives the factorization, and @var{p} will have a positive value otherwise.\n\
 \n\
 If called with 3 outputs then a sparsity preserving row/column permutation\n\
-is applied to @var{A} prior to the factorization.  That is @var{R}\n\
-is the factorization of @code{@var{A}(@var{Q},@var{Q})} such that\n\
+is applied to @var{A} prior to the factorization.  That is @var{R} is the\n\
+factorization of @code{@var{A}(@var{Q},@var{Q})} such that\n\
 @tex\n\
 $ R^T R = Q^T A Q$.\n\
 @end tex\n\
@@ -390,8 +392,8 @@
 DEFUN_DLD (cholinv, args, ,
            "-*- texinfo -*-\n\
 @deftypefn {Loadable Function} {} cholinv (@var{A})\n\
-Use the Cholesky@tie{}factorization to compute the inverse of the\n\
-symmetric positive definite matrix @var{A}.\n\
+Compute the inverse of the symmetric positive definite matrix @var{A} using\n\
+the Cholesky@tie{}factorization.\n\
 @seealso{chol, chol2inv, inv}\n\
 @end deftypefn")
 {
@@ -538,10 +540,11 @@
            "-*- texinfo -*-\n\
 @deftypefn {Loadable Function} {} chol2inv (@var{U})\n\
 Invert a symmetric, positive definite square matrix from its Cholesky\n\
-decomposition, @var{U}.  Note that @var{U} should be an upper-triangular\n\
-matrix with positive diagonal elements.  @code{chol2inv (@var{U})}\n\
-provides @code{inv (@var{U}'*@var{U})} but it is much faster than\n\
-using @code{inv}.\n\
+decomposition, @var{U}.\n\
+\n\
+Note that @var{U} should be an upper-triangular matrix with positive\n\
+diagonal elements.  @code{chol2inv (@var{U})} provides\n\
+@code{inv (@var{U}'*@var{U})} but it is much faster than using @code{inv}.\n\
 @seealso{chol, cholinv, inv}\n\
 @end deftypefn")
 {
@@ -629,9 +632,10 @@
 DEFUN_DLD (cholupdate, args, nargout,
            "-*- texinfo -*-\n\
 @deftypefn {Loadable Function} {[@var{R1}, @var{info}] =} cholupdate (@var{R}, @var{u}, @var{op})\n\
-Update or downdate a Cholesky@tie{}factorization.  Given an upper triangular\n\
-matrix @var{R} and a column vector @var{u}, attempt to determine another\n\
-upper triangular matrix @var{R1} such that\n\
+Update or downdate a Cholesky@tie{}factorization.\n\
+\n\
+Given an upper triangular matrix @var{R} and a column vector @var{u},\n\
+attempt to determine another upper triangular matrix @var{R1} such that\n\
 \n\
 @itemize @bullet\n\
 @item\n\
@@ -844,6 +848,7 @@
 triangular, return the Cholesky@tie{}factorization of\n\
 @var{A1}, where @w{A1(p,p) = A}, @w{A1(:,j) = A1(j,:)' = u} and\n\
 @w{p = [1:j-1,j+1:n+1]}.  @w{u(j)} should be positive.\n\
+\n\
 On return, @var{info} is set to\n\
 \n\
 @itemize\n\
--- a/libinterp/dldfcn/colamd.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/dldfcn/colamd.cc	Sun May 10 21:37:19 2015 -0700
@@ -216,7 +216,8 @@
 @deftypefnx {Loadable Function} {[@var{p}, @var{stats}] =} colamd (@var{S})\n\
 @deftypefnx {Loadable Function} {[@var{p}, @var{stats}] =} colamd (@var{S}, @var{knobs})\n\
 \n\
-Column approximate minimum degree permutation.\n\
+Compute the column approximate minimum degree permutation.\n\
+\n\
 @code{@var{p} = colamd (@var{S})} returns the column approximate minimum\n\
 degree permutation vector for the sparse matrix @var{S}.  For a\n\
 non-symmetric matrix @var{S}, @code{@var{S}(:,@var{p})} tends to have\n\
@@ -258,7 +259,7 @@
 @sc{colamd} is thus a simple way to check a sparse matrix to see if it's\n\
 valid.\n\
 \n\
-@code{@var{stats}(4:7)} provide information if COLAMD was able to\n\
+@code{@var{stats}(4:7)} provide information if @sc{colamd} was able to\n\
 continue.  The matrix is OK if @code{@var{stats}(4)} is zero, or 1 if\n\
 invalid.  @code{@var{stats}(5)} is the rightmost column index that is\n\
 unsorted or contains duplicate entries, or zero if no such column exists.\n\
@@ -458,25 +459,27 @@
 \n\
 For a symmetric positive definite matrix @var{S}, returns the permutation\n\
 vector p such that @code{@var{S}(@var{p}, @var{p})} tends to have a\n\
-sparser Cholesky@tie{}factor than @var{S}.  Sometimes @code{symamd} works\n\
-well for symmetric indefinite matrices too.  The matrix @var{S} is assumed\n\
-to be symmetric; only the strictly lower triangular part is referenced.\n\
-@var{S} must be square.\n\
+sparser Cholesky@tie{}factor than @var{S}.\n\
+\n\
+Sometimes @code{symamd} works well for symmetric indefinite matrices too.  \n\
+The matrix @var{S} is assumed to be symmetric; only the strictly lower\n\
+triangular part is referenced.  @var{S} must be square.\n\
 \n\
 @var{knobs} is an optional one- to two-element input vector.  If @var{S} is\n\
 n-by-n, then rows and columns with more than\n\
 @code{max (16,@var{knobs}(1)*sqrt(n))} entries are removed prior to ordering,\n\
 and ordered last in the output permutation @var{p}.  No rows/columns are\n\
 removed if @code{@var{knobs}(1) < 0}.  If @code{@var{knobs} (2)} is nonzero,\n\
-@code{stats} and @var{knobs} are printed.  The default is @code{@var{knobs}\n\
-= [10 0]}.  Note that @var{knobs} differs from earlier versions of symamd.\n\
+@code{stats} and @var{knobs} are printed.  The default is\n\
+@code{@var{knobs} = [10 0]}.  Note that @var{knobs} differs from earlier\n\
+versions of @code{symamd}.\n\
 \n\
 @var{stats} is an optional 20-element output vector that provides data\n\
 about the ordering and the validity of the input matrix @var{S}.  Ordering\n\
-statistics are in @code{@var{stats}(1:3)}.  @code{@var{stats}(1) =\n\
-@var{stats}(2)} is the number of dense or empty rows and columns\n\
-ignored by SYMAMD and @code{@var{stats}(3)} is the number of garbage\n\
-collections performed on the internal data structure used by SYMAMD\n\
+statistics are in @code{@var{stats}(1:3)}.\n\
+@code{@var{stats}(1) = @var{stats}(2)} is the number of dense or empty rows\n\
+and columns ignored by SYMAMD and @code{@var{stats}(3)} is the number of\n\
+garbage collections performed on the internal data structure used by SYMAMD\n\
 (roughly of size @code{8.4 * nnz (tril (@var{S}, -1)) + 9 * @var{n}}\n\
 integers).\n\
 \n\
@@ -648,9 +651,10 @@
 @deftypefnx {Loadable Function} {@var{p} =} etree (@var{S}, @var{typ})\n\
 @deftypefnx {Loadable Function} {[@var{p}, @var{q}] =} etree (@var{S}, @var{typ})\n\
 \n\
-Return the elimination tree for the matrix @var{S}.  By default @var{S}\n\
-is assumed to be symmetric and the symmetric elimination tree is\n\
-returned.  The argument @var{typ} controls whether a symmetric or\n\
+Return the elimination tree for the matrix @var{S}.\n\
+\n\
+By default @var{S} is assumed to be symmetric and the symmetric elimination\n\
+tree is returned.  The argument @var{typ} controls whether a symmetric or\n\
 column elimination tree is returned.  Valid values of @var{typ} are\n\
 @qcode{\"sym\"} or @qcode{\"col\"}, for symmetric or column elimination tree\n\
 respectively.\n\
--- a/libinterp/dldfcn/convhulln.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/dldfcn/convhulln.cc	Sun May 10 21:37:19 2015 -0700
@@ -77,8 +77,11 @@
 @deftypefn  {Loadable Function} {@var{h} =} convhulln (@var{pts})\n\
 @deftypefnx {Loadable Function} {@var{h} =} convhulln (@var{pts}, @var{options})\n\
 @deftypefnx {Loadable Function} {[@var{h}, @var{v}] =} convhulln (@dots{})\n\
-Compute the convex hull of the set of points @var{pts} which is a matrix\n\
-of size [n, dim] containing n points in a space of dimension dim.\n\
+Compute the convex hull of the set of points @var{pts}.\n\
+\n\
+@var{pts} is a matrix of size [n, dim] containing n points in a space of\n\
+dimension dim.\n\
+\n\
 The hull @var{h} is an index vector into the set of points and specifies\n\
 which points form the enclosing hull.\n\
 \n\
--- a/libinterp/dldfcn/dmperm.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/dldfcn/dmperm.cc	Sun May 10 21:37:19 2015 -0700
@@ -194,9 +194,10 @@
 @deftypefn {Loadable Function} {@var{p} =} sprank (@var{S})\n\
 @cindex structural rank\n\
 \n\
-Calculate the structural rank of the sparse matrix @var{S}.  Note that\n\
-only the structure of the matrix is used in this calculation based on\n\
-a @nospell{Dulmage-Mendelsohn} permutation to block triangular form.  As\n\
+Calculate the structural rank of the sparse matrix @var{S}.\n\
+\n\
+Note that only the structure of the matrix is used in this calculation based\n\
+on a @nospell{Dulmage-Mendelsohn} permutation to block triangular form.  As\n\
 such the numerical rank of the matrix @var{S} is bounded by\n\
 @code{sprank (@var{S}) >= rank (@var{S})}.  Ignoring floating point errors\n\
 @code{sprank (@var{S}) == rank (@var{S})}.\n\
--- a/libinterp/dldfcn/fftw.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/dldfcn/fftw.cc	Sun May 10 21:37:19 2015 -0700
@@ -43,12 +43,14 @@
 @deftypefnx {Loadable Function} {} fftw (\"threads\", @var{nthreads})\n\
 @deftypefnx {Loadable Function} {@var{nthreads} =} fftw (\"threads\")\n\
 \n\
-Manage @sc{fftw} wisdom data.  Wisdom data can be used to significantly\n\
-accelerate the calculation of the FFTs, but implies an initial cost\n\
-in its calculation.  When the @sc{fftw} libraries are initialized, they read\n\
-a system wide wisdom file (typically in @file{/etc/fftw/wisdom}), allowing\n\
-wisdom to be shared between applications other than Octave.  Alternatively,\n\
-the @code{fftw} function can be used to import wisdom.  For example,\n\
+Manage @sc{fftw} wisdom data.\n\
+\n\
+Wisdom data can be used to significantly accelerate the calculation of the\n\
+FFTs, but implies an initial cost in its calculation.  When the @sc{fftw}\n\
+libraries are initialized, they read a system wide wisdom file (typically in\n\
+@file{/etc/fftw/wisdom}), allowing wisdom to be shared between applications\n\
+other than Octave.  Alternatively, the @code{fftw} function can be used to\n\
+import wisdom.  For example,\n\
 \n\
 @example\n\
 @var{wisdom} = fftw (\"dwisdom\")\n\
--- a/libinterp/dldfcn/qr.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/dldfcn/qr.cc	Sun May 10 21:37:19 2015 -0700
@@ -80,7 +80,9 @@
 @deftypefnx {Loadable Function} {[@var{C}, @var{R}] =} qr (@var{A}, @var{B}, '0')\n\
 @cindex QR factorization\n\
 Compute the QR@tie{}factorization of @var{A}, using standard @sc{lapack}\n\
-subroutines.  For example, given the matrix @code{@var{A} = [1, 2; 3, 4]},\n\
+subroutines.\n\
+\n\
+For example, given the matrix @code{@var{A} = [1, 2; 3, 4]},\n\
 \n\
 @example\n\
 [@var{Q}, @var{R}] = qr (@var{A})\n\
@@ -124,7 +126,7 @@
 @ifnottex\n\
 @var{A}\n\
 @end ifnottex\n\
- is a tall, thin matrix).  The QR@tie{}factorization is\n\
+is a tall, thin matrix).  The QR@tie{}factorization is\n\
 @tex\n\
 $QR = A$ where $Q$ is an orthogonal matrix and $R$ is upper triangular.\n\
 @end tex\n\
@@ -140,8 +142,8 @@
 If the matrix @var{A} is full, the permuted QR@tie{}factorization\n\
 @code{[@var{Q}, @var{R}, @var{P}] = qr (@var{A})} forms the\n\
 QR@tie{}factorization such that the diagonal entries of @var{R} are\n\
-decreasing in magnitude order.  For example, given the matrix @code{a = [1,\n\
-2; 3, 4]},\n\
+decreasing in magnitude order.  For example, given the matrix\n\
+@code{a = [1, 2; 3, 4]},\n\
 \n\
 @example\n\
 [@var{Q}, @var{R}, @var{P}] = qr (@var{A})\n\
@@ -169,15 +171,15 @@
 @end group\n\
 @end example\n\
 \n\
-The permuted @code{qr} factorization @code{[@var{Q}, @var{R}, @var{P}] = qr\n\
-(@var{A})} factorization allows the construction of an orthogonal basis of\n\
-@code{span (A)}.\n\
+The permuted @code{qr} factorization\n\
+@code{[@var{Q}, @var{R}, @var{P}] = qr (@var{A})} factorization allows the\n\
+construction of an orthogonal basis of @code{span (A)}.\n\
 \n\
 If the matrix @var{A} is sparse, then compute the sparse\n\
 QR@tie{}factorization of @var{A}, using @sc{CSparse}.  As the matrix @var{Q}\n\
 is in general a full matrix, this function returns the @var{Q}-less\n\
-factorization @var{R} of @var{A}, such that @code{@var{R} = chol (@var{A}' *\n\
-@var{A})}.\n\
+factorization @var{R} of @var{A}, such that\n\
+@code{@var{R} = chol (@var{A}' * @var{A})}.\n\
 \n\
 If the final argument is the scalar @code{0} and the number of rows is\n\
 larger than the number of columns, then an economy factorization is\n\
@@ -763,15 +765,15 @@
 @deftypefn {Loadable Function} {[@var{Q1}, @var{R1}] =} qrupdate (@var{Q}, @var{R}, @var{u}, @var{v})\n\
 Given a QR@tie{}factorization of a real or complex matrix\n\
 @w{@var{A} = @var{Q}*@var{R}}, @var{Q}@tie{}unitary and\n\
-@var{R}@tie{}upper trapezoidal, return the QR@tie{}factorization\n\
-of @w{@var{A} + @var{u}*@var{v}'}, where @var{u} and @var{v} are\n\
-column vectors (rank-1 update) or matrices with equal number of columns\n\
+@var{R}@tie{}upper trapezoidal, return the QR@tie{}factorization of\n\
+@w{@var{A} + @var{u}*@var{v}'}, where @var{u} and @var{v} are column vectors\n\
+(rank-1 update) or matrices with equal number of columns\n\
 (rank-k update).  Notice that the latter case is done as a sequence of rank-1\n\
 updates; thus, for k large enough, it will be both faster and more accurate\n\
 to recompute the factorization from scratch.\n\
 \n\
-The QR@tie{}factorization supplied may be either full\n\
-(Q is square) or economized (R is square).\n\
+The QR@tie{}factorization supplied may be either full (Q is square) or\n\
+economized (R is square).\n\
 \n\
 @seealso{qr, qrinsert, qrdelete, qrshift}\n\
 @end deftypefn")
@@ -944,24 +946,21 @@
 Given a QR@tie{}factorization of a real or complex matrix\n\
 @w{@var{A} = @var{Q}*@var{R}}, @var{Q}@tie{}unitary and\n\
 @var{R}@tie{}upper trapezoidal, return the QR@tie{}factorization of\n\
-@w{[A(:,1:j-1) x A(:,j:n)]}, where @var{u} is a column vector to be\n\
-inserted into @var{A} (if @var{orient} is @qcode{\"col\"}), or the\n\
-QR@tie{}factorization of @w{[A(1:j-1,:);x;A(:,j:n)]}, where @var{x}\n\
-is a row vector to be inserted into @var{A} (if @var{orient} is\n\
-@qcode{\"row\"}).\n\
+@w{[A(:,1:j-1) x A(:,j:n)]}, where @var{u} is a column vector to be inserted\n\
+into @var{A} (if @var{orient} is @qcode{\"col\"}), or the\n\
+QR@tie{}factorization of @w{[A(1:j-1,:);x;A(:,j:n)]}, where @var{x} is a row\n\
+vector to be inserted into @var{A} (if @var{orient} is @qcode{\"row\"}).\n\
 \n\
-The default value of @var{orient} is @qcode{\"col\"}.\n\
-If @var{orient} is @qcode{\"col\"},\n\
-@var{u} may be a matrix and @var{j} an index vector\n\
+The default value of @var{orient} is @qcode{\"col\"}.  If @var{orient} is\n\
+@qcode{\"col\"}, @var{u} may be a matrix and @var{j} an index vector\n\
 resulting in the QR@tie{}factorization of a matrix @var{B} such that\n\
 @w{B(:,@var{j})} gives @var{u} and @w{B(:,@var{j}) = []} gives @var{A}.\n\
 Notice that the latter case is done as a sequence of k insertions;\n\
 thus, for k large enough, it will be both faster and more accurate to\n\
 recompute the factorization from scratch.\n\
 \n\
-If @var{orient} is @qcode{\"col\"},\n\
-the QR@tie{}factorization supplied may be either full\n\
-(Q is square) or economized (R is square).\n\
+If @var{orient} is @qcode{\"col\"}, the QR@tie{}factorization supplied may\n\
+be either full (Q is square) or economized (R is square).\n\
 \n\
 If @var{orient} is @qcode{\"row\"}, full factorization is needed.\n\
 @seealso{qr, qrupdate, qrdelete, qrshift}\n\
@@ -1173,17 +1172,14 @@
 \n\
 The default value of @var{orient} is @qcode{\"col\"}.\n\
 \n\
-If @var{orient} is @qcode{\"col\"},\n\
-@var{j} may be an index vector\n\
+If @var{orient} is @qcode{\"col\"}, @var{j} may be an index vector\n\
 resulting in the QR@tie{}factorization of a matrix @var{B} such that\n\
-@w{A(:,@var{j}) = []} gives @var{B}.\n\
-Notice that the latter case is done as a sequence of k deletions;\n\
-thus, for k large enough, it will be both faster and more accurate to\n\
-recompute the factorization from scratch.\n\
+@w{A(:,@var{j}) = []} gives @var{B}.  Notice that the latter case is done as\n\
+a sequence of k deletions; thus, for k large enough, it will be both faster\n\
+and more accurate to recompute the factorization from scratch.\n\
 \n\
-If @var{orient} is @qcode{\"col\"},\n\
-the QR@tie{}factorization supplied may be either full\n\
-(Q is square) or economized (R is square).\n\
+If @var{orient} is @qcode{\"col\"}, the QR@tie{}factorization supplied may\n\
+be either full (Q is square) or economized (R is square).\n\
 \n\
 If @var{orient} is @qcode{\"row\"}, full factorization is needed.\n\
 @seealso{qr, qrupdate, qrinsert, qrshift}\n\
--- a/libinterp/dldfcn/symbfact.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/dldfcn/symbfact.cc	Sun May 10 21:37:19 2015 -0700
@@ -46,7 +46,8 @@
 @deftypefnx {Loadable Function} {[@dots{}] =} symbfact (@var{S}, @var{typ}, @var{mode})\n\
 \n\
 Perform a symbolic factorization analysis on the sparse matrix @var{S}.\n\
-Where\n\
+\n\
+The input variables are\n\
 \n\
 @table @var\n\
 @item S\n\
--- a/libinterp/dldfcn/symrcm.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/dldfcn/symrcm.cc	Sun May 10 21:37:19 2015 -0700
@@ -415,15 +415,16 @@
            "-*- texinfo -*-\n\
 @deftypefn {Loadable Function} {@var{p} =} symrcm (@var{S})\n\
 Return the symmetric reverse @nospell{Cuthill-McKee} permutation of @var{S}.\n\
+\n\
 @var{p} is a permutation vector such that\n\
-@code{@var{S}(@var{p}, @var{p})} tends to have its diagonal elements\n\
-closer to the diagonal than @var{S}.  This is a good preordering for LU\n\
-or Cholesky@tie{}factorization of matrices that come from ``long, skinny''\n\
+@code{@var{S}(@var{p}, @var{p})} tends to have its diagonal elements closer\n\
+to the diagonal than @var{S}.  This is a good preordering for LU or\n\
+Cholesky@tie{}factorization of matrices that come from ``long, skinny''\n\
 problems.  It works for both symmetric and asymmetric @var{S}.\n\
 \n\
-The algorithm represents a heuristic approach to the NP-complete\n\
-bandwidth minimization problem.  The implementation is based in the\n\
-descriptions found in\n\
+The algorithm represents a heuristic approach to the NP-complete bandwidth\n\
+minimization problem.  The implementation is based in the descriptions found\n\
+in\n\
 \n\
 @nospell{E. Cuthill, J. McKee}. @cite{Reducing the Bandwidth of Sparse\n\
 Symmetric Matrices}. Proceedings of the 24th ACM National Conference,\n\
--- a/libinterp/octave-value/ov-base.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/octave-value/ov-base.cc	Sun May 10 21:37:19 2015 -0700
@@ -1684,6 +1684,7 @@
 @deftypefnx {Built-in Function} {} sparse_auto_mutate (@var{new_val}, \"local\")\n\
 Query or set the internal variable that controls whether Octave will\n\
 automatically mutate sparse matrices to full matrices to save memory.\n\
+\n\
 For example:\n\
 \n\
 @example\n\
@@ -1701,7 +1702,7 @@
 @end example\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
-variable is changed locally for the function and any subroutines it calls.  \n\
+variable is changed locally for the function and any subroutines it calls.\n\
 The original variable value is restored when exiting the function.\n\
 @end deftypefn")
 {
--- a/libinterp/octave-value/ov-bool-mat.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/octave-value/ov-bool-mat.cc	Sun May 10 21:37:19 2015 -0700
@@ -561,9 +561,9 @@
 @deftypefn {Built-in Function} {} logical (@var{x})\n\
 Convert the numeric object @var{x} to logical type.\n\
 \n\
-Any nonzero values will be converted to true (1) while zero values\n\
-will be converted to false (0).  The non-numeric value NaN cannot be\n\
-converted and will produce an error.\n\
+Any nonzero values will be converted to true (1) while zero values will be\n\
+converted to false (0).  The non-numeric value NaN cannot be converted and\n\
+will produce an error.\n\
 \n\
 Compatibility Note: Octave accepts complex values as input, whereas\n\
 @sc{matlab} issues an error.\n\
--- a/libinterp/octave-value/ov-cell.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/octave-value/ov-cell.cc	Sun May 10 21:37:19 2015 -0700
@@ -1301,9 +1301,9 @@
 Create a new cell array object.\n\
 \n\
 If invoked with a single scalar integer argument, return a square\n\
-@nospell{NxN} cell array.  If invoked with two or more scalar\n\
-integer arguments, or a vector of integer values, return an array with\n\
-the given dimensions.\n\
+@nospell{NxN} cell array.  If invoked with two or more scalar integer\n\
+arguments, or a vector of integer values, return an array with the given\n\
+dimensions.\n\
 @seealso{cellstr, mat2cell, num2cell, struct2cell}\n\
 @end deftypefn")
 {
@@ -1357,8 +1357,8 @@
 DEFUN (iscellstr, args, ,
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} iscellstr (@var{cell})\n\
-Return true if every element of the cell array @var{cell} is a\n\
-character string.\n\
+Return true if every element of the cell array @var{cell} is a character\n\
+string.\n\
 @seealso{ischar}\n\
 @end deftypefn")
 {
@@ -1380,8 +1380,8 @@
 DEFUN (cellstr, args, ,
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {@var{cstr} =} cellstr (@var{strmat})\n\
-Create a new cell array object from the elements of the string\n\
-array @var{strmat}.\n\
+Create a new cell array object from the elements of the string array\n\
+@var{strmat}.\n\
 \n\
 Each row of @var{strmat} becomes an element of @var{cstr}.  Any trailing\n\
 spaces in a row are deleted before conversion.\n\
@@ -1420,8 +1420,9 @@
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {@var{c} =} struct2cell (@var{s})\n\
 Create a new cell array from the objects stored in the struct object.\n\
-If @var{f} is the number of fields in the structure, the resulting\n\
-cell array will have a dimension vector corresponding to\n\
+\n\
+If @var{f} is the number of fields in the structure, the resulting cell\n\
+array will have a dimension vector corresponding to\n\
 @code{[@var{f} size(@var{s})]}.  For example:\n\
 \n\
 @example\n\
--- a/libinterp/octave-value/ov-class.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/octave-value/ov-class.cc	Sun May 10 21:37:19 2015 -0700
@@ -1863,10 +1863,11 @@
 @deftypefn  {Function File} {@var{classname} =} class (@var{obj})\n\
 @deftypefnx {Function File} {} class (@var{s}, @var{id})\n\
 @deftypefnx {Function File} {} class (@var{s}, @var{id}, @var{p}, @dots{})\n\
-Return the class of the object @var{obj} or create a class with\n\
-fields from structure @var{s} and name (string) @var{id}.  Additional\n\
-arguments name a list of parent classes from which the new class is\n\
-derived.\n\
+Return the class of the object @var{obj}, or create a class with\n\
+fields from structure @var{s} and name (string) @var{id}.\n\
+\n\
+Additional arguments name a list of parent classes from which the new class\n\
+is derived.\n\
 @seealso{typeinfo, isa}\n\
 @end deftypefn")
 {
@@ -2209,6 +2210,7 @@
 @deftypefn {Built-in Function} {} superiorto (@var{class_name}, @dots{})\n\
 When called from a class constructor, mark the object currently\n\
 constructed as having a higher precedence than @var{class_name}.\n\
+\n\
 More that one such class can be specified in a single call.\n\
 This function may only be called from a class constructor.\n\
 @seealso{inferiorto}\n\
@@ -2254,6 +2256,7 @@
 @deftypefn {Built-in Function} {} inferiorto (@var{class_name}, @dots{})\n\
 When called from a class constructor, mark the object currently\n\
 constructed as having a lower precedence than @var{class_name}.\n\
+\n\
 More that one such class can be specified in a single call.\n\
 This function may only be called from a class constructor.\n\
 @seealso{superiorto}\n\
--- a/libinterp/octave-value/ov-fcn-handle.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/octave-value/ov-fcn-handle.cc	Sun May 10 21:37:19 2015 -0700
@@ -1676,7 +1676,7 @@
 Return a structure containing information about the function handle\n\
 @var{fcn_handle}.\n\
 \n\
-The structure @var{s} always contains these 3 fields:\n\
+The structure @var{s} always contains these three fields:\n\
 \n\
 @table @asis\n\
 @item function\n\
@@ -1811,8 +1811,8 @@
 DEFUN (func2str, args, ,
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} func2str (@var{fcn_handle})\n\
-Return a string containing the name of the function referenced by\n\
-the function handle @var{fcn_handle}.\n\
+Return a string containing the name of the function referenced by the\n\
+function handle @var{fcn_handle}.\n\
 @seealso{str2func, functions}\n\
 @end deftypefn")
 {
@@ -1851,6 +1851,7 @@
 @deftypefn  {Built-in Function} {} str2func (@var{fcn_name})\n\
 @deftypefnx {Built-in Function} {} str2func (@var{fcn_name}, \"global\")\n\
 Return a function handle constructed from the string @var{fcn_name}.\n\
+\n\
 If the optional @qcode{\"global\"} argument is passed, locally visible\n\
 functions are ignored in the lookup.\n\
 @seealso{func2str, inline}\n\
--- a/libinterp/octave-value/ov-fcn-inline.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/octave-value/ov-fcn-inline.cc	Sun May 10 21:37:19 2015 -0700
@@ -654,17 +654,16 @@
 @deftypefnx {Built-in Function} {} inline (@var{str}, @var{n})\n\
 Create an inline function from the character string @var{str}.\n\
 \n\
-If called with a single argument, the arguments of the generated\n\
-function are extracted from the function itself.  The generated\n\
-function arguments will then be in alphabetical order.  It should\n\
-be noted that i, and j are ignored as arguments due to the\n\
-ambiguity between their use as a variable or their use as an inbuilt\n\
-constant.  All arguments followed by a parenthesis are considered\n\
-to be functions.  If no arguments are found, a function taking a single\n\
-argument named @code{x} will be created.\n\
+If called with a single argument, the arguments of the generated function\n\
+are extracted from the function itself.  The generated function arguments\n\
+will then be in alphabetical order.  It should be noted that i and j are\n\
+ignored as arguments due to the ambiguity between their use as a variable or\n\
+their use as an built-in constant.  All arguments followed by a parenthesis\n\
+are considered to be functions.  If no arguments are found, a function\n\
+taking a single argument named @code{x} will be created.\n\
 \n\
-If the second and subsequent arguments are character strings,\n\
-they are the names of the arguments of the function.\n\
+If the second and subsequent arguments are character strings, they are the\n\
+names of the arguments of the function.\n\
 \n\
 If the second argument is an integer @var{n}, the arguments are\n\
 @qcode{\"x\"}, @qcode{\"P1\"}, @dots{}, @qcode{\"P@var{N}\"}.\n\
@@ -904,8 +903,8 @@
 DEFUN (argnames, args, ,
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} argnames (@var{fun})\n\
-Return a cell array of character strings containing the names of\n\
-the arguments of the inline function @var{fun}.\n\
+Return a cell array of character strings containing the names of the\n\
+arguments of the inline function @var{fun}.\n\
 @seealso{inline, formula, vectorize}\n\
 @end deftypefn")
 {
@@ -951,13 +950,11 @@
 DEFUN (vectorize, args, ,
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} vectorize (@var{fun})\n\
-Create a vectorized version of the inline function @var{fun}\n\
-by replacing all occurrences of @code{*}, @code{/}, etc., with\n\
-@code{.*}, @code{./}, etc.\n\
+Create a vectorized version of the inline function @var{fun} by replacing\n\
+all occurrences of @code{*}, @code{/}, etc., with @code{.*}, @code{./}, etc.\n\
 \n\
-This may be useful, for example, when using inline functions with\n\
-numerical integration or optimization where a vector-valued function\n\
-is expected.\n\
+This may be useful, for example, when using inline functions with numerical\n\
+integration or optimization where a vector-valued function is expected.\n\
 \n\
 @example\n\
 @group\n\
--- a/libinterp/octave-value/ov-java.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/octave-value/ov-java.cc	Sun May 10 21:37:19 2015 -0700
@@ -2041,8 +2041,9 @@
 
 DEFUN (__java_init__, , ,
        "-*- texinfo -*-\n\
-@deftypefn {Built-in Function} {} java_init ()\n\
+@deftypefn {Built-in Function} {} __java_init__ ()\n\
 Internal function used @strong{only} when debugging Java interface.\n\
+\n\
 Function will directly call initialize_java() to create an instance of a JVM.\n\
 @end deftypefn")
 {
@@ -2066,8 +2067,9 @@
 
 DEFUN (__java_exit__, , ,
        "-*- texinfo -*-\n\
-@deftypefn {Built-in Function} {} java_exit ()\n\
+@deftypefn {Built-in Function} {} __java_exit__ ()\n\
 Internal function used @strong{only} when debugging Java interface.\n\
+\n\
 Function will directly call terminate_jvm() to destroy the current JVM\n\
 instance.\n\
 @end deftypefn")
@@ -2088,8 +2090,8 @@
 Create a Java object of class @var{classsname}, by calling the class\n\
 constructor with the arguments @var{arg1}, @dots{}\n\
 \n\
-The first example below creates an uninitialized object,\n\
-while the second example supplies an initial argument to the constructor.\n\
+The first example below creates an uninitialized object, while the second\n\
+example supplies an initial argument to the constructor.\n\
 \n\
 @example\n\
 @group\n\
@@ -2136,10 +2138,10 @@
 }
 
 /*
+## The tests below merely check if javaObject() works at all.  Whether it works
+## properly, i.e., creates the right values, is a matter of Java itself.
+## Create a Short and check if it really is a short, i.e., whether it overflows.
 %!testif HAVE_JAVA
-%% The tests below merely check if javaObject works at all. Whether it works
-%% properly, i.e. creates the right values, is a matter of Java itself
-%% Create a Short and check if it really is a short, i.e. whether it overflows
 %! assert (javaObject ("java.lang.Short", 40000).doubleValue < 0);
 */
 
@@ -2148,9 +2150,10 @@
 @deftypefn  {Built-in Function} {@var{ret} =} javaMethod (@var{methodname}, @var{obj})\n\
 @deftypefnx {Built-in Function} {@var{ret} =} javaMethod (@var{methodname}, @var{obj}, @var{arg1}, @dots{})\n\
 Invoke the method @var{methodname} on the Java object @var{obj} with the\n\
-arguments @var{arg1}, @dots{}  For static methods, @var{obj} can be a string\n\
-representing the fully qualified name of the corresponding class.  The\n\
-function returns the result of the method invocation.\n\
+arguments @var{arg1}, @dots{}.\n\
+\n\
+For static methods, @var{obj} can be a string representing the fully\n\
+qualified name of the corresponding class.\n\
 \n\
 When @var{obj} is a regular Java object, structure-like indexing can be\n\
 used as a shortcut syntax.  For instance, the two following statements are\n\
@@ -2163,6 +2166,8 @@
 @end group\n\
 @end example\n\
 \n\
+@code{javaMethod} returns the result of the method invocation.\n\
+\n\
 @seealso{methods, javaObject}\n\
 @end deftypefn")
 {
@@ -2214,20 +2219,21 @@
 
 /*
 %!testif HAVE_JAVA
-%% Check for valid first two Java version numbers
-%! jver = strsplit (javaMethod ('getProperty', 'java.lang.System', 'java.version'), '.');
+%! ## Check for valid first two Java version numbers
+%! jver = strsplit (javaMethod ("getProperty", "java.lang.System", "java.version"), ".");
 %! assert (isfinite (str2double (jver{1})) && isfinite (str2double (jver{2})));
 */
 
 DEFUN (__java_get__, args, ,
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {@var{val} =} __java_get__ (@var{obj}, @var{name})\n\
-Get the value of the field @var{name} of the Java object @var{obj}.  For\n\
-static fields, @var{obj} can be a string representing the fully qualified\n\
+Get the value of the field @var{name} of the Java object @var{obj}.\n\
+\n\
+For static fields, @var{obj} can be a string representing the fully qualified\n\
 name of the corresponding class.\n\
 \n\
-When @var{obj} is a regular Java object, structure-like indexing can be\n\
-used as a shortcut syntax.  For instance, the two following statements are\n\
+When @var{obj} is a regular Java object, structure-like indexing can be used\n\
+as a shortcut syntax.  For instance, the two following statements are\n\
 equivalent\n\
 \n\
 @example\n\
@@ -2286,8 +2292,10 @@
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {@var{obj} =} __java_set__ (@var{obj}, @var{name}, @var{val})\n\
 Set the value of the field @var{name} of the Java object @var{obj} to\n\
-@var{val}.  For static fields, @var{obj} can be a string representing the\n\
-fully qualified named of the corresponding Java class.\n\
+@var{val}.\n\
+\n\
+For static fields, @var{obj} can be a string representing the fully\n\
+qualified named of the corresponding Java class.\n\
 \n\
 When @var{obj} is a regular Java object, structure-like indexing can be\n\
 used as a shortcut syntax.  For instance, the two following statements are\n\
@@ -2387,10 +2395,12 @@
 @deftypefnx {Built-in Function} {@var{old_val} =} java_matrix_autoconversion (@var{new_val})\n\
 @deftypefnx {Built-in Function} {} java_matrix_autoconversion (@var{new_val}, \"local\")\n\
 Query or set the internal variable that controls whether Java arrays are\n\
-automatically converted to Octave matrices.  The default value is false.\n\
+automatically converted to Octave matrices.\n\
+\n\
+The default value is false.\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
-variable is changed locally for the function and any subroutines it calls.  \n\
+variable is changed locally for the function and any subroutines it calls.\n\
 The original variable value is restored when exiting the function.\n\
 @seealso{java_unsigned_autoconversion, debug_java}\n\
 @end deftypefn")
@@ -2409,12 +2419,13 @@
 @deftypefnx {Built-in Function} {@var{old_val} =} java_unsigned_autoconversion (@var{new_val})\n\
 @deftypefnx {Built-in Function} {} java_unsigned_autoconversion (@var{new_val}, \"local\")\n\
 Query or set the internal variable that controls how integer classes are\n\
-converted when @code{java_matrix_autoconversion} is enabled.  When enabled,\n\
-Java arrays of class Byte or Integer are converted to matrices of class\n\
-uint8 or uint32 respectively.  The default value is true.\n\
+converted when @code{java_matrix_autoconversion} is enabled.\n\
+\n\
+When enabled, Java arrays of class Byte or Integer are converted to matrices\n\
+of class uint8 or uint32 respectively.  The default value is true.\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
-variable is changed locally for the function and any subroutines it calls.  \n\
+variable is changed locally for the function and any subroutines it calls.\n\
 The original variable value is restored when exiting the function.\n\
 @seealso{java_matrix_autoconversion, debug_java}\n\
 @end deftypefn")
@@ -2437,7 +2448,7 @@
 is printed.\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
-variable is changed locally for the function and any subroutines it calls.  \n\
+variable is changed locally for the function and any subroutines it calls.\n\
 The original variable value is restored when exiting the function.\n\
 @seealso{java_matrix_autoconversion, java_unsigned_autoconversion}\n\
 @end deftypefn")
@@ -2470,21 +2481,24 @@
 }
 
 /*
-## Check automatic conversion of java primitive arrays into octave types
-%!assert (javaObject ("java.lang.String", "hello").getBytes (),
-%!        int8 ([104 101 108 108 111]'))
-
-## Check automatic conversion of octave types into java primitive arrays
-## Note that uint8 are casted into int8
-%!assert (javaMethod ("binarySearch", "java.util.Arrays", [90 100 255], 255), 2)
-%!assert (javaMethod ("binarySearch", "java.util.Arrays", uint8  ([90 100 255]), uint8  (255)) < 0)
-%!assert (javaMethod ("binarySearch", "java.util.Arrays", uint8  ([90 100 128]), uint8  (128)) < 0)
-%!assert (javaMethod ("binarySearch", "java.util.Arrays", uint8  ([90 100 127]), uint8  (127)), 2)
-%!assert (javaMethod ("binarySearch", "java.util.Arrays", uint16 ([90 100 128]), uint16 (128)), 2)
-
-## Check we can create objects that wrap java literals (bug #38821)
-%!assert (class (javaObject ("java.lang.Byte", uint8 (1))), "java.lang.Byte");
-%!assert (class (javaObject ("java.lang.Byte", int8 (1))), "java.lang.Byte");
-%!assert (class (javaObject ("java.lang.Short", uint16 (1))), "java.lang.Short");
-%!assert (class (javaObject ("java.lang.Short", int16 (1))), "java.lang.Short");
+## Check automatic conversion of java primitive arrays into octave types.
+%!testif HAVE_JAVA
+%! assert (javaObject ("java.lang.String", "hello").getBytes (),
+%!         int8 ([104 101 108 108 111]'));
+
+## Check automatic conversion of octave types into java primitive arrays.
+## Note that uint8 is casted to int8.
+%!testif HAVE_JAVA
+%! assert (javaMethod ("binarySearch", "java.util.Arrays", [90 100 255], 255), 2);
+%! assert (javaMethod ("binarySearch", "java.util.Arrays", uint8 ([90 100 255]), uint8 (255)) < 0);
+%! assert (javaMethod ("binarySearch", "java.util.Arrays", uint8 ([90 100 128]), uint8 (128)) < 0);
+%! assert (javaMethod ("binarySearch", "java.util.Arrays", uint8 ([90 100 127]), uint8 (127)), 2);
+%! assert (javaMethod ("binarySearch", "java.util.Arrays", uint16 ([90 100 128]), uint16 (128)), 2);
+
+## Check we can create objects that wrap java literals (bug #38821).
+%!testif HAVE_JAVA
+%! assert (class (javaObject ("java.lang.Byte", uint8 (1))), "java.lang.Byte");
+%! assert (class (javaObject ("java.lang.Byte", int8 (1))), "java.lang.Byte");
+%! assert (class (javaObject ("java.lang.Short", uint16 (1))), "java.lang.Short");
+%! assert (class (javaObject ("java.lang.Short", int16 (1))), "java.lang.Short");
 */
--- a/libinterp/octave-value/ov-null-mat.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/octave-value/ov-null-mat.cc	Sun May 10 21:37:19 2015 -0700
@@ -97,9 +97,11 @@
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} isnull (@var{x})\n\
 Return true if @var{x} is a special null matrix, string, or single quoted\n\
-string.  Indexed assignment with such a value on the right-hand side should\n\
-delete array elements.  This function should be used when overloading\n\
-indexed assignment for user-defined classes instead of @code{isempty}, to\n\
+string.\n\
+\n\
+Indexed assignment with such a value on the right-hand side should delete\n\
+array elements.  This function should be used when overloading indexed\n\
+assignment for user-defined classes instead of @code{isempty}, to\n\
 distinguish the cases:\n\
 \n\
 @table @asis\n\
--- a/libinterp/octave-value/ov-oncleanup.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/octave-value/ov-oncleanup.cc	Sun May 10 21:37:19 2015 -0700
@@ -184,6 +184,7 @@
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {@var{obj} =} onCleanup (@var{function})\n\
 Create a special object that executes a given function upon destruction.\n\
+\n\
 If the object is copied to multiple variables (or cell or struct array\n\
 elements) or returned from a function, @var{function} will be executed after\n\
 clearing the last copy of the object.  Note that if multiple local onCleanup\n\
--- a/libinterp/octave-value/ov-range.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/octave-value/ov-range.cc	Sun May 10 21:37:19 2015 -0700
@@ -703,12 +703,14 @@
 @deftypefnx {Built-in Function} {@var{old_val} =} allow_noninteger_range_as_index (@var{new_val})\n\
 @deftypefnx {Built-in Function} {} allow_noninteger_range_as_index (@var{new_val}, \"local\")\n\
 Query or set the internal variable that controls whether non-integer\n\
-ranges are allowed as indices.  This might be useful for @sc{matlab}\n\
-compatibility; however, it is still not entirely compatible because\n\
-@sc{matlab} treats the range expression differently in different contexts.\n\
+ranges are allowed as indices.\n\
+\n\
+This might be useful for @sc{matlab} compatibility; however, it is still not\n\
+entirely compatible because @sc{matlab} treats the range expression\n\
+differently in different contexts.\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
-variable is changed locally for the function and any subroutines it calls.  \n\
+variable is changed locally for the function and any subroutines it calls.\n\
 The original variable value is restored when exiting the function.\n\
 @end deftypefn")
 {
--- a/libinterp/octave-value/ov-struct.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/octave-value/ov-struct.cc	Sun May 10 21:37:19 2015 -0700
@@ -1784,16 +1784,17 @@
 @deftypefnx {Built-in Function} {@var{s} =} struct (@var{field1}, @var{value1}, @var{field2}, @var{value2}, @dots{})\n\
 @deftypefnx {Built-in Function} {@var{s} =} struct (@var{obj})\n\
 \n\
-Create a scalar or array structure and initialize its values.  The\n\
-@var{field1}, @var{field2}, @dots{} variables are strings specifying the\n\
-names of the fields and the @var{value1}, @var{value2}, @dots{}\n\
-variables can be of any type.\n\
+Create a scalar or array structure and initialize its values.\n\
+\n\
+The @var{field1}, @var{field2}, @dots{} variables are strings specifying the\n\
+names of the fields and the @var{value1}, @var{value2}, @dots{} variables\n\
+can be of any type.\n\
 \n\
-If the values are cell arrays, create a structure array and initialize\n\
-its values.  The dimensions of each cell array of values must match.\n\
-Singleton cells and non-cell values are repeated so that they fill\n\
-the entire array.  If the cells are empty, create an empty structure\n\
-array with the specified field names.\n\
+If the values are cell arrays, create a structure array and initialize its\n\
+values.  The dimensions of each cell array of values must match.  Singleton\n\
+cells and non-cell values are repeated so that they fill the entire array.  \n\
+If the cells are empty, create an empty structure array with the specified\n\
+field names.\n\
 \n\
 If the argument is an object, return the underlying struct.\n\
 \n\
@@ -1824,7 +1825,7 @@
 @noindent\n\
 The first case is an ordinary scalar struct---one field, one value.  The\n\
 second produces an empty struct array with one field and no values, since\n\
-s being passed an empty cell array of struct array values.  When the value is\n\
+being passed an empty cell array of struct array values.  When the value is\n\
 a cell array containing a single entry, this becomes a scalar struct with\n\
 that single entry as the value of the field.  That single entry happens\n\
 to be an empty cell array.\n\
@@ -2122,10 +2123,12 @@
        "-*- texinfo -*-\n\
 @deftypefn  {Built-in Function} {} cell2struct (@var{cell}, @var{fields})\n\
 @deftypefnx {Built-in Function} {} cell2struct (@var{cell}, @var{fields}, @var{dim})\n\
-Convert @var{cell} to a structure.  The number of fields in @var{fields}\n\
-must match the number of elements in @var{cell} along dimension @var{dim},\n\
-that is @code{numel (@var{fields}) == size (@var{cell}, @var{dim})}.\n\
-If @var{dim} is omitted, a value of 1 is assumed.\n\
+Convert @var{cell} to a structure.\n\
+\n\
+The number of fields in @var{fields} must match the number of elements in\n\
+@var{cell} along dimension @var{dim}, that is\n\
+@code{numel (@var{fields}) == size (@var{cell}, @var{dim})}.  If @var{dim}\n\
+is omitted, a value of 1 is assumed.\n\
 \n\
 @example\n\
 @group\n\
@@ -2329,7 +2332,7 @@
 structure levels to display.\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
-variable is changed locally for the function and any subroutines it calls.  \n\
+variable is changed locally for the function and any subroutines it calls.\n\
 The original variable value is restored when exiting the function.\n\
 @seealso{print_struct_array_contents}\n\
 @end deftypefn")
@@ -2346,13 +2349,13 @@
 Query or set the internal variable that specifies whether to print struct\n\
 array contents.\n\
 \n\
-If true, values of struct array elements are printed.\n\
-This variable does not affect scalar structures whose elements are always\n\
-printed.  In both cases, however, printing will be limited to\n\
-the number of levels specified by @var{struct_levels_to_print}.\n\
+If true, values of struct array elements are printed.  This variable does\n\
+not affect scalar structures whose elements are always printed.  In both\n\
+cases, however, printing will be limited to the number of levels specified\n\
+by @var{struct_levels_to_print}.\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
-variable is changed locally for the function and any subroutines it calls.  \n\
+variable is changed locally for the function and any subroutines it calls.\n\
 The original variable value is restored when exiting the function.\n\
 @seealso{struct_levels_to_print}\n\
 @end deftypefn")
--- a/libinterp/octave-value/ov-typeinfo.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/octave-value/ov-typeinfo.cc	Sun May 10 21:37:19 2015 -0700
@@ -614,8 +614,9 @@
 @deftypefn  {Built-in Function} {} typeinfo ()\n\
 @deftypefnx {Built-in Function} {} typeinfo (@var{expr})\n\
 \n\
-Return the type of the expression @var{expr}, as a string.  If\n\
-@var{expr} is omitted, return a cell array of strings containing all the\n\
+Return the type of the expression @var{expr}, as a string.\n\
+\n\
+If @var{expr} is omitted, return a cell array of strings containing all the\n\
 currently installed data types.\n\
 @seealso{class, isa}\n\
 @end deftypefn")
--- a/libinterp/octave-value/ov-usr-fcn.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/octave-value/ov-usr-fcn.cc	Sun May 10 21:37:19 2015 -0700
@@ -1049,7 +1049,7 @@
 the subsasgn method of a user-defined class.\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
-variable is changed locally for the function and any subroutines it calls.  \n\
+variable is changed locally for the function and any subroutines it calls.\n\
 The original variable value is restored when exiting the function.\n\
 @end deftypefn")
 {
--- a/libinterp/octave-value/ov.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/octave-value/ov.cc	Sun May 10 21:37:19 2015 -0700
@@ -3024,17 +3024,15 @@
 DEFUN (subsref, args, nargout,
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} subsref (@var{val}, @var{idx})\n\
-Perform the subscripted element selection operation according to\n\
-the subscript specified by @var{idx}.\n\
+Perform the subscripted element selection operation according to the\n\
+subscript specified by @var{idx}.\n\
 \n\
-The subscript @var{idx} is expected to be a structure array with\n\
-fields @samp{type} and @samp{subs}.  Valid values for @samp{type}\n\
-are @samp{\"()\"}, @samp{\"@{@}\"}, and @samp{\".\"}.\n\
-The @samp{subs} field may be either @samp{\":\"} or a cell array\n\
-of index values.\n\
+The subscript @var{idx} is expected to be a structure array with fields\n\
+@samp{type} and @samp{subs}.  Valid values for @samp{type} are\n\
+@samp{\"()\"}, @samp{\"@{@}\"}, and @samp{\".\"}.  The @samp{subs} field may\n\
+be either @samp{\":\"} or a cell array of index values.\n\
 \n\
-The following example shows how to extract the first two columns of\n\
-a matrix\n\
+The following example shows how to extract the first two columns of a matrix\n\
 \n\
 @example\n\
 @group\n\
@@ -3054,8 +3052,8 @@
 @noindent\n\
 Note that this is the same as writing @code{val(:,1:2)}.\n\
 \n\
-If @var{idx} is an empty structure array with fields @samp{type}\n\
-and @samp{subs}, return @var{val}.\n\
+If @var{idx} is an empty structure array with fields @samp{type} and\n\
+@samp{subs}, return @var{val}.\n\
 @seealso{subsasgn, substruct}\n\
 @end deftypefn")
 {
@@ -3087,17 +3085,16 @@
 DEFUN (subsasgn, args, ,
        "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} subsasgn (@var{val}, @var{idx}, @var{rhs})\n\
-Perform the subscripted assignment operation according to\n\
-the subscript specified by @var{idx}.\n\
+Perform the subscripted assignment operation according to the subscript\n\
+specified by @var{idx}.\n\
 \n\
-The subscript @var{idx} is expected to be a structure array with\n\
-fields @samp{type} and @samp{subs}.  Valid values for @samp{type}\n\
-are @samp{\"()\"}, @samp{\"@{@}\"}, and @samp{\".\"}.\n\
-The @samp{subs} field may be either @samp{\":\"} or a cell array\n\
-of index values.\n\
+The subscript @var{idx} is expected to be a structure array with fields\n\
+@samp{type} and @samp{subs}.  Valid values for @samp{type} are\n\
+@samp{\"()\"}, @samp{\"@{@}\"}, and @samp{\".\"}.  The @samp{subs} field may\n\
+be either @samp{\":\"} or a cell array of index values.\n\
 \n\
-The following example shows how to set the two first columns of a\n\
-3-by-3 matrix to zero.\n\
+The following example shows how to set the two first columns of a 3-by-3\n\
+matrix to zero.\n\
 \n\
 @example\n\
 @group\n\
@@ -3113,8 +3110,8 @@
 \n\
 Note that this is the same as writing @code{val(:,1:2) = 0}.\n\
 \n\
-If @var{idx} is an empty structure array with fields @samp{type}\n\
-and @samp{subs}, return @var{rhs}.\n\
+If @var{idx} is an empty structure array with fields @samp{type} and\n\
+@samp{subs}, return @var{rhs}.\n\
 @seealso{subsref, substruct}\n\
 @end deftypefn")
 {
@@ -3279,9 +3276,10 @@
 @deftypefnx {Built-in Function} {@var{old_val} =} disable_permutation_matrix (@var{new_val})\n\
 @deftypefnx {Built-in Function} {} disable_permutation_matrix (@var{new_val}, \"local\")\n\
 Query or set the internal variable that controls whether permutation\n\
-matrices are stored in a special space-efficient format.  The default\n\
-value is true.  If this option is disabled Octave will store permutation\n\
-matrices as full matrices.\n\
+matrices are stored in a special space-efficient format.\n\
+\n\
+The default value is true.  If this option is disabled Octave will store\n\
+permutation matrices as full matrices.\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
 variable is changed locally for the function and any subroutines it calls.\n\
@@ -3308,9 +3306,10 @@
 @deftypefnx {Built-in Function} {@var{old_val} =} disable_diagonal_matrix (@var{new_val})\n\
 @deftypefnx {Built-in Function} {} disable_diagonal_matrix (@var{new_val}, \"local\")\n\
 Query or set the internal variable that controls whether diagonal\n\
-matrices are stored in a special space-efficient format.  The default\n\
-value is true.  If this option is disabled Octave will store diagonal\n\
-matrices as full matrices.\n\
+matrices are stored in a special space-efficient format.\n\
+\n\
+The default value is true.  If this option is disabled Octave will store\n\
+diagonal matrices as full matrices.\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
 variable is changed locally for the function and any subroutines it calls.\n\
@@ -3351,8 +3350,10 @@
 @deftypefnx {Built-in Function} {@var{old_val} =} disable_range (@var{new_val})\n\
 @deftypefnx {Built-in Function} {} disable_range (@var{new_val}, \"local\")\n\
 Query or set the internal variable that controls whether ranges are stored\n\
-in a special space-efficient format.  The default value is true.  If this\n\
-option is disabled Octave will store ranges as full matrices.\n\
+in a special space-efficient format.\n\
+\n\
+The default value is true.  If this option is disabled Octave will store\n\
+ranges as full matrices.\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
 variable is changed locally for the function and any subroutines it calls.\n\
--- a/libinterp/parse-tree/lex.ll	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/parse-tree/lex.ll	Sun May 10 21:37:19 2015 -0700
@@ -1899,8 +1899,9 @@
   "-*- texinfo -*-\n\
 @deftypefn  {Built-in Function} {} iskeyword ()\n\
 @deftypefnx {Built-in Function} {} iskeyword (@var{name})\n\
-Return true if @var{name} is an Octave keyword.  If @var{name}\n\
-is omitted, return a list of keywords.\n\
+Return true if @var{name} is an Octave keyword.\n\
+\n\
+If @var{name} is omitted, return a list of keywords.\n\
 @seealso{isvarname, exist}\n\
 @end deftypefn")
 {
--- a/libinterp/parse-tree/oct-parse.in.yy	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/parse-tree/oct-parse.in.yy	Sun May 10 21:37:19 2015 -0700
@@ -4316,15 +4316,15 @@
 @deftypefnx {Built-in Function} {} autoload (@dots{}, \"remove\")\n\
 Define @var{function} to autoload from @var{file}.\n\
 \n\
-The second argument, @var{file}, should be an absolute file name or\n\
-a file name in the same directory as the function or script from which\n\
-the autoload command was run.  @var{file} @emph{should not} depend on the\n\
-Octave load path.\n\
+The second argument, @var{file}, should be an absolute file name or a file\n\
+name in the same directory as the function or script from which the autoload\n\
+command was run.  @var{file} @emph{should not} depend on the Octave load\n\
+path.\n\
 \n\
-Normally, calls to @code{autoload} appear in PKG_ADD script files that\n\
-are evaluated when a directory is added to Octave's load path.  To\n\
-avoid having to hardcode directory names in @var{file}, if @var{file}\n\
-is in the same directory as the PKG_ADD script then\n\
+Normally, calls to @code{autoload} appear in PKG_ADD script files that are\n\
+evaluated when a directory is added to Octave's load path.  To avoid having\n\
+to hardcode directory names in @var{file}, if @var{file} is in the same\n\
+directory as the PKG_ADD script then\n\
 \n\
 @example\n\
 autoload (\"foo\", \"bar.oct\");\n\
@@ -4543,10 +4543,13 @@
 @deftypefnx {Built-in Function} {} mfilename (\"fullpathext\")\n\
 Return the name of the currently executing file.\n\
 \n\
-When called from outside an m-file return the empty string.  Given the\n\
-argument @qcode{\"fullpath\"}, include the directory part of the file name,\n\
-but not the extension.  Given the argument @qcode{\"fullpathext\"}, include\n\
-the directory part of the file name and the extension.\n\
+When called from outside an m-file return the empty string.\n\
+\n\
+Given the argument @qcode{\"fullpath\"}, include the directory part of the\n\
+file name, but not the extension.\n\
+\n\
+Given the argument @qcode{\"fullpathext\"}, include the directory part of\n\
+the file name and the extension.\n\
 @end deftypefn")
 {
   octave_value retval;
@@ -4732,8 +4735,10 @@
 DEFUN (feval, args, nargout,
   "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {} feval (@var{name}, @dots{})\n\
-Evaluate the function named @var{name}.  Any arguments after the first\n\
-are passed as inputs to the named function.  For example,\n\
+Evaluate the function named @var{name}.\n\
+\n\
+Any arguments after the first are passed as inputs to the named function.\n\
+For example,\n\
 \n\
 @example\n\
 @group\n\
@@ -4745,11 +4750,10 @@
 @noindent\n\
 calls the function @code{acos} with the argument @samp{-1}.\n\
 \n\
-The function @code{feval} can also be used with function handles of\n\
-any sort (@pxref{Function Handles}).  Historically, @code{feval} was\n\
-the only way to call user-supplied functions in strings, but\n\
-function handles are now preferred due to the cleaner syntax they\n\
-offer.  For example,\n\
+The function @code{feval} can also be used with function handles of any sort\n\
+(@pxref{Function Handles}).  Historically, @code{feval} was the only way to\n\
+call user-supplied functions in strings, but function handles are now\n\
+preferred due to the cleaner syntax they offer.  For example,\n\
 \n\
 @example\n\
 @group\n\
@@ -4783,12 +4787,12 @@
 DEFUN (builtin, args, nargout,
   "-*- texinfo -*-\n\
 @deftypefn {Built-in Function} {[@dots{}] =} builtin (@var{f}, @dots{})\n\
-Call the base function @var{f} even if @var{f} is overloaded to\n\
-another function for the given type signature.\n\
+Call the base function @var{f} even if @var{f} is overloaded to another\n\
+function for the given type signature.\n\
 \n\
-This is normally useful when doing object-oriented programming and there\n\
-is a requirement to call one of Octave's base functions rather than\n\
-the overloaded one of a new class.\n\
+This is normally useful when doing object-oriented programming and there is\n\
+a requirement to call one of Octave's base functions rather than the\n\
+overloaded one of a new class.\n\
 \n\
 A trivial example which redefines the @code{sin} function to be the\n\
 @code{cos} function shows how @code{builtin} works.\n\
@@ -4945,9 +4949,12 @@
 @deftypefn  {Built-in Function} {} eval (@var{try})\n\
 @deftypefnx {Built-in Function} {} eval (@var{try}, @var{catch})\n\
 Parse the string @var{try} and evaluate it as if it were an Octave\n\
-program.  If that fails, evaluate the optional string @var{catch}.\n\
-The string @var{try} is evaluated in the current context,\n\
-so any results remain available after @code{eval} returns.\n\
+program.\n\
+\n\
+If execution fails, evaluate the optional string @var{catch}.\n\
+\n\
+The string @var{try} is evaluated in the current context, so any results\n\
+remain available after @code{eval} returns.\n\
 \n\
 The following example creates the variable @var{A} with the approximate\n\
 value of 3.1416 in the current workspace.\n\
@@ -5113,9 +5120,8 @@
   "-*- texinfo -*-\n\
 @deftypefn  {Built-in Function} {} evalin (@var{context}, @var{try})\n\
 @deftypefnx {Built-in Function} {} evalin (@var{context}, @var{try}, @var{catch})\n\
-Like @code{eval}, except that the expressions are evaluated in the\n\
-context @var{context}, which may be either @qcode{\"caller\"} or\n\
-@qcode{\"base\"}.\n\
+Like @code{eval}, except that the expressions are evaluated in the context\n\
+@var{context}, which may be either @qcode{\"caller\"} or @qcode{\"base\"}.\n\
 @seealso{eval, assignin}\n\
 @end deftypefn")
 {
--- a/libinterp/parse-tree/pt-binop.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/parse-tree/pt-binop.cc	Sun May 10 21:37:19 2015 -0700
@@ -308,7 +308,7 @@
 you should always use the @samp{&&} and @samp{||} operators.\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
-variable is changed locally for the function and any subroutines it calls.  \n\
+variable is changed locally for the function and any subroutines it calls.\n\
 The original variable value is restored when exiting the function.\n\
 @end deftypefn")
 {
--- a/libinterp/parse-tree/pt-eval.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/parse-tree/pt-eval.cc	Sun May 10 21:37:19 2015 -0700
@@ -1259,8 +1259,10 @@
 @deftypefnx {Built-in Function} {@var{old_val} =} max_recursion_depth (@var{new_val})\n\
 @deftypefnx {Built-in Function} {} max_recursion_depth (@var{new_val}, \"local\")\n\
 Query or set the internal limit on the number of times a function may\n\
-be called recursively.  If the limit is exceeded, an error message is\n\
-printed and control returns to the top level.\n\
+be called recursively.\n\
+\n\
+If the limit is exceeded, an error message is printed and control returns to\n\
+the top level.\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
 variable is changed locally for the function and any subroutines it calls.\n\
@@ -1288,9 +1290,11 @@
 @deftypefnx {Built-in Function} {@var{old_val} =} silent_functions (@var{new_val})\n\
 @deftypefnx {Built-in Function} {} silent_functions (@var{new_val}, \"local\")\n\
 Query or set the internal variable that controls whether internal\n\
-output from a function is suppressed.  If this option is disabled,\n\
-Octave will display the results produced by evaluating expressions\n\
-within a function body that are not terminated with a semicolon.\n\
+output from a function is suppressed.\n\
+\n\
+If this option is disabled, Octave will display the results produced by\n\
+evaluating expressions within a function body that are not terminated with\n\
+a semicolon.\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
 variable is changed locally for the function and any subroutines it calls.\n\
--- a/libinterp/parse-tree/pt-mat.cc	Wed May 06 20:52:16 2015 +0100
+++ b/libinterp/parse-tree/pt-mat.cc	Sun May 10 21:37:19 2015 -0700
@@ -1391,8 +1391,10 @@
 @deftypefnx {Built-in Function} {@var{old_val} =} string_fill_char (@var{new_val})\n\
 @deftypefnx {Built-in Function} {} string_fill_char (@var{new_val}, \"local\")\n\
 Query or set the internal variable used to pad all rows of a character\n\
-matrix to the same length; It must be a single character.  The default\n\
-value is @qcode{\" \"} (a single space).  For example:\n\
+matrix to the same length.\n\
+\n\
+The value must be a single character and the default is @qcode{\" \"} (a\n\
+single space).  For example:\n\
 \n\
 @example\n\
 @group\n\
@@ -1405,7 +1407,7 @@
 @end example\n\
 \n\
 When called from inside a function with the @qcode{\"local\"} option, the\n\
-variable is changed locally for the function and any subroutines it calls.  \n\
+variable is changed locally for the function and any subroutines it calls.\n\
 The original variable value is restored when exiting the function.\n\
 @end deftypefn")
 {
--- a/liboctave/util/lo-utils.cc	Wed May 06 20:52:16 2015 +0100
+++ b/liboctave/util/lo-utils.cc	Sun May 10 21:37:19 2015 -0700
@@ -239,7 +239,8 @@
             else
               {
                 val = octave_numeric_limits<T>::NA ();
-                is.putback (c2);
+                if (c2 != EOF)
+                  is.putback (c2);
               }
           }
         else
--- a/m4/acinclude.m4	Wed May 06 20:52:16 2015 +0100
+++ b/m4/acinclude.m4	Sun May 10 21:37:19 2015 -0700
@@ -1059,6 +1059,28 @@
     :
   fi
 ])
+dnl 
+dnl Check whether sndfile library is modern enough to include things like Ogg
+dnl
+AC_DEFUN([OCTAVE_CHECK_LIB_SNDFILE_OK], [
+  AC_CACHE_CHECK([whether sndfile library is modern enough],
+    [octave_cv_lib_sndfile_ok],
+    [AC_COMPILE_IFELSE([AC_LANG_PROGRAM([[
+        #include <sndfile.h>
+        ]], [[
+        int x = SF_FORMAT_OGG;
+      ]])],
+      octave_cv_lib_sndfile_ok=yes,
+      octave_cv_lib_sndfile_ok=no)
+  ])
+  if test $octave_cv_lib_sndfile_ok = yes; then
+    $1
+    :
+  else
+    $2
+    :
+  fi
+])
 dnl
 dnl Find a suitable termlib to use.
 dnl
--- a/scripts/@ftp/ascii.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/@ftp/ascii.m	Sun May 10 21:37:19 2015 -0700
@@ -19,8 +19,9 @@
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} ascii (@var{f})
 ## Set the FTP connection @var{f} to use ASCII mode for transfers.
-## ASCII mode is only appropriate for text files as it will convert
-## the remote host's newline representation to the local host's newline
+##
+## ASCII mode is only appropriate for text files as it will convert the
+## remote host's newline representation to the local host's newline
 ## representation.
 ##
 ## @var{f} is an FTP object returned by the @code{ftp} function.
--- a/scripts/@ftp/binary.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/@ftp/binary.m	Sun May 10 21:37:19 2015 -0700
@@ -19,6 +19,7 @@
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} binary (@var{f})
 ## Set the FTP connection @var{f} to use binary mode for transfers.
+##
 ## In binary mode there is no conversion of newlines from the remote
 ## representation to the local representation.
 ##
--- a/scripts/@ftp/cd.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/@ftp/cd.m	Sun May 10 21:37:19 2015 -0700
@@ -24,8 +24,8 @@
 ## @var{f} is an FTP object returned by the @code{ftp} function.
 ##
 ## If @var{path} is not specified, return the remote current working
-## directory.  Otherwise, set the remote directory to @var{path} and
-## return the new remote working directory.
+## directory.  Otherwise, set the remote directory to @var{path} and return
+## the new remote working directory.
 ##
 ## If the directory does not exist, an error message is printed and the
 ## working directory is not changed.
--- a/scripts/@ftp/dir.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/@ftp/dir.m	Sun May 10 21:37:19 2015 -0700
@@ -18,8 +18,7 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {@var{lst} =} dir (@var{f})
-## List the current directory in verbose form for the FTP connection
-## @var{f}.
+## List the current directory in verbose form for the FTP connection @var{f}.
 ##
 ## @var{f} is an FTP object returned by the @code{ftp} function.
 ## @end deftypefn
--- a/scripts/@ftp/ftp.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/@ftp/ftp.m	Sun May 10 21:37:19 2015 -0700
@@ -20,6 +20,7 @@
 ## @deftypefn  {Function File} {@var{f} =} ftp (@var{host})
 ## @deftypefnx {Function File} {@var{f} =} ftp (@var{host}, @var{username}, @var{password})
 ## Connect to the FTP server @var{host} with @var{username} and @var{password}.
+##
 ## If @var{username} and @var{password} are not specified, user
 ## @qcode{"anonymous"} with no password is used.  The returned FTP object
 ## @var{f} represents the established FTP connection.
--- a/scripts/@ftp/mget.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/@ftp/mget.m	Sun May 10 21:37:19 2015 -0700
@@ -21,8 +21,9 @@
 ## @deftypefnx {Function File} {} mget (@var{f}, @var{dir})
 ## @deftypefnx {Function File} {} mget (@var{f}, @var{remote_name}, @var{target})
 ## Download a remote file @var{file} or directory @var{dir} to the local
-## directory on the FTP connection @var{f}.  @var{f} is an FTP object
-## returned by the @code{ftp} function.
+## directory on the FTP connection @var{f}.
+##
+## @var{f} is an FTP object returned by the @code{ftp} function.
 ##
 ## The arguments @var{file} and @var{dir} can include wildcards and any
 ## files or directories on the remote server that match will be downloaded.
--- a/scripts/@ftp/mput.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/@ftp/mput.m	Sun May 10 21:37:19 2015 -0700
@@ -18,9 +18,10 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} mput (@var{f}, @var{file})
-## Upload the local file @var{file} into the current remote directory on
-## the FTP connection @var{f}.  @var{f} is an FTP object returned by the
-## ftp function.
+## Upload the local file @var{file} into the current remote directory on the
+## FTP connection @var{f}.
+##
+## @var{f} is an FTP object returned by the ftp function.
 ##
 ## The argument @var{file} is passed through the @code{glob} function and any
 ## files that match the wildcards in @var{file} will be uploaded.
--- a/scripts/audio/@audioplayer/__get_properties__.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/audio/@audioplayer/__get_properties__.m	Sun May 10 21:37:19 2015 -0700
@@ -18,8 +18,8 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {@var{properties} =} __get_properties__ (@var{player})
-## Return a struct containing all named properties of the audioplayer
-## object @var{player}.
+## Return a struct containing all named properties of the audioplayer object
+## @var{player}.
 ## @end deftypefn
 
 function props = __get_properties__ (player)
--- a/scripts/audio/@audioplayer/audioplayer.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/audio/@audioplayer/audioplayer.m	Sun May 10 21:37:19 2015 -0700
@@ -23,11 +23,12 @@
 ## @deftypefnx {Function File} {@var{player} =} audioplayer (@var{recorder})
 ## @deftypefnx {Function File} {@var{player} =} audioplayer (@var{recorder}, @var{id})
 ## Create an audioplayer object that will play back data @var{y} at sample
-## rate @var{fs}.  The optional arguments @var{nbits}, and @var{id}
-## specify the bit depth and player device id, respectively.  Device IDs
-## may be found using the audiodevinfo function.
-## Given an audioplayer object, use the data from the object to
-## initialize the player.
+## rate @var{fs}.
+##
+## The optional arguments @var{nbits}, and @var{id} specify the bit depth and
+## player device id, respectively.  Device IDs may be found using the
+## audiodevinfo function.  Given an audioplayer object, use the data from the
+## object to initialize the player.
 ##
 ## The signal @var{y} can be a vector or a two-dimensional array.
 ##
--- a/scripts/audio/@audioplayer/get.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/audio/@audioplayer/get.m	Sun May 10 21:37:19 2015 -0700
@@ -20,11 +20,12 @@
 ## @deftypefn  {Function File} {@var{value} =} get (@var{player}, @var{name})
 ## @deftypefnx {Function File} {@var{values} =} get (@var{player})
 ## Return the @var{value} of the property identified by @var{name}.
+##
 ## If @var{name} is a cell array return the values of the properties
-## identified by the elements of the cell array.  Given only the
-## player object, return a scalar structure with values of all
-## properties of @var{player}.  The field names of the structure
-## correspond to property names.
+## identified by the elements of the cell array.  Given only the player
+## object, return a scalar structure with values of all properties of
+## @var{player}.  The field names of the structure correspond to property
+## names.
 ## @end deftypefn
 
 function retval = get (varargin)
--- a/scripts/audio/@audioplayer/isplaying.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/audio/@audioplayer/isplaying.m	Sun May 10 21:37:19 2015 -0700
@@ -18,8 +18,8 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} isplaying (@var{player})
-## Return 1 if the audioplayer object @var{player}is currently playing
-## back audio and 0 otherwise.
+## Return true if the audioplayer object @var{player} is currently playing back
+## audio and false otherwise.
 ## @end deftypefn
 
 function result = isplaying (player)
--- a/scripts/audio/@audioplayer/play.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/audio/@audioplayer/play.m	Sun May 10 21:37:19 2015 -0700
@@ -21,10 +21,10 @@
 ## @deftypefnx {Function File} {} play (@var{player}, @var{start})
 ## @deftypefnx {Function File} {} play (@var{player}, @var{limits})
 ## Play audio stored in the audioplayer object @var{player} without blocking.
-## Given optional argument start, begin playing at @var{start} seconds
-## in the recording.  Given a two-element vector @var{limits}, begin and
-## end playing at the number of seconds specified by the elements of the
-## vector.
+##
+## Given optional argument start, begin playing at @var{start} seconds in the
+## recording.  Given a two-element vector @var{limits}, begin and end playing
+## at the number of seconds specified by the elements of the vector.
 ## @end deftypefn
 
 function play (varargin)
--- a/scripts/audio/@audioplayer/playblocking.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/audio/@audioplayer/playblocking.m	Sun May 10 21:37:19 2015 -0700
@@ -21,10 +21,10 @@
 ## @deftypefnx {Function File} {} playblocking (@var{player}, @var{start})
 ## @deftypefnx {Function File} {} playblocking (@var{player}, @var{limits})
 ## Play audio stored in the audioplayer object @var{player} with blocking.
-## Given optional argument start, begin playing at @var{start} seconds
-## in the recording.  Given a two-element vector @var{limits}, begin and
-## end playing at the number of seconds specified by the elements of the
-## vector.
+##
+## Given optional argument start, begin playing at @var{start} seconds in the
+## recording.  Given a two-element vector @var{limits}, begin and end playing
+## at the number of seconds specified by the elements of the vector.
 ## @end deftypefn
 
 function playblocking (varargin)
--- a/scripts/audio/@audioplayer/set.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/audio/@audioplayer/set.m	Sun May 10 21:37:19 2015 -0700
@@ -21,11 +21,12 @@
 ## @deftypefnx {Function File} {} set (@var{player}, @var{properties})
 ## @deftypefnx {Function File} {@var{properties} =} set (@var{player})
 ## Set the value of property specified by @var{name} to a given @var{value}.
+##
 ## If @var{name} and @var{value} are cell arrays, set each property to the
-## corresponding value.  Given a structure of @var{properties} with
-## fields corresponding to property names, set the value of those
-## properties to the field values.  Given only the audioplayer object,
-## return a structure of settable properties.
+## corresponding value.  Given a structure of @var{properties} with fields
+## corresponding to property names, set the value of those properties to the
+## field values.  Given only the audioplayer object, return a structure of
+## settable properties.
 ## @end deftypefn
 
 function settable = set (varargin)
--- a/scripts/audio/@audioplayer/subsasgn.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/audio/@audioplayer/subsasgn.m	Sun May 10 21:37:19 2015 -0700
@@ -19,6 +19,7 @@
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {@var{value} =} subsasgn (@var{player}, @var{idx}, @var{rhs})
 ## Perform subscripted assignment on the audio player object @var{player}.
+##
 ## Assign the value of @var{rhs} to the player property named by @var{idx}.
 ## @end deftypefn
 
--- a/scripts/audio/@audioplayer/subsref.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/audio/@audioplayer/subsref.m	Sun May 10 21:37:19 2015 -0700
@@ -19,6 +19,7 @@
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {@var{value} =} subsref (@var{player}, @var{idx})
 ## Perform subscripted selection on the audio player object @var{player}.
+##
 ## Return the player property value named by @var{idx}.
 ## @end deftypefn
 
--- a/scripts/audio/@audiorecorder/audiorecorder.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/audio/@audiorecorder/audiorecorder.m	Sun May 10 21:37:19 2015 -0700
@@ -21,10 +21,12 @@
 ## @deftypefnx {Function File} {@var{recorder} =} audiorecorder (@var{fs}, @var{nbits}, @var{channels})
 ## @deftypefnx {Function File} {@var{recorder} =} audiorecorder (@var{fs}, @var{nbits}, @var{channels}, @var{id})
 ## Create an audiorecorder object recording 8 bit mono audio at 8000 Hz
-## sample rate.  The optional arguments @var{fs}, @var{nbits},
-## @var{channels}, and @var{id} specify the sample rate, bit depth,
-## number of channels and recording device id, respectively.  Device IDs
-## may be found using the audiodevinfo function.
+## sample rate.
+##
+## The optional arguments @var{fs}, @var{nbits}, @var{channels}, and @var{id}
+## specify the sample rate, bit depth, number of channels and recording
+## device id, respectively.  Device IDs may be found using the audiodevinfo
+## function.
 ## @end deftypefn
 
 ## FIXME: callbacks don't work properly, apparently because portaudio
--- a/scripts/audio/@audiorecorder/get.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/audio/@audiorecorder/get.m	Sun May 10 21:37:19 2015 -0700
@@ -20,11 +20,12 @@
 ## @deftypefn  {Function File} {@var{value} =} get (@var{recorder}, @var{name})
 ## @deftypefnx {Function File} {@var{values} =} get (@var{recorder})
 ## Return the @var{value} of the property identified by @var{name}.
+##
 ## If @var{name} is a cell array, return the values of the properties
-## corresponding to the elements of the cell array.  Given only the
-## recorder object, return a scalar structure with values of all
-## properties of @var{recorder}.  The field names of the structure
-## correspond to property names.
+## corresponding to the elements of the cell array.  Given only the recorder
+## object, return a scalar structure with values of all properties of
+## @var{recorder}.  The field names of the structure correspond to property
+## names.
 ## @end deftypefn
 
 function retval = get (varargin)
--- a/scripts/audio/@audiorecorder/getaudiodata.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/audio/@audiorecorder/getaudiodata.m	Sun May 10 21:37:19 2015 -0700
@@ -21,6 +21,7 @@
 ## @deftypefnx {Function File} {@var{data} =} getaudiodata (@var{recorder}, @var{datatype})
 ## Return recorder audio data as a matrix with values between -1.0 and 1.0
 ## and with as many columns as there are channels in the recorder.
+##
 ## Given the optional argument @var{datatype}, convert the recorded data
 ## to the specified type, which may be one of @qcode{"double"},
 ## @qcode{"single"}, @qcode{"int16"}, @qcode{"int8"} or @qcode{"uint8"}.
--- a/scripts/audio/@audiorecorder/getplayer.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/audio/@audiorecorder/getplayer.m	Sun May 10 21:37:19 2015 -0700
@@ -18,8 +18,8 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {@var{player} =} getplayer (@var{recorder})
-## Return an audioplayer object with data recorded by the audiorecorder
-## object @var{recorder}.
+## Return an audioplayer object with data recorded by the audiorecorder object
+## @var{recorder}.
 ## @end deftypefn
 
 function player = getplayer (varargin)
--- a/scripts/audio/@audiorecorder/isrecording.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/audio/@audiorecorder/isrecording.m	Sun May 10 21:37:19 2015 -0700
@@ -18,8 +18,8 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} isrecording (@var{recorder})
-## Return 1 if the audiorecorder object @var{recorder} is currently
-## recording audio and 0 otherwise.
+## Return true if the audiorecorder object @var{recorder} is currently recording
+## audio and false otherwise.
 ## @end deftypefn
 
 function result = isrecording (recorder)
--- a/scripts/audio/@audiorecorder/play.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/audio/@audiorecorder/play.m	Sun May 10 21:37:19 2015 -0700
@@ -21,8 +21,11 @@
 ## @deftypefnx {Function File} {@var{player} =} play (@var{recorder}, @var{start})
 ## @deftypefnx {Function File} {@var{player} =} play (@var{recorder}, [@var{start}, @var{end}])
 ## Play the audio recorded in @var{recorder} and return a corresponding
-## audioplayer object.  If the optional argument @var{start} is
-## provided, begin playing @var{start} seconds in to the recording.
+## audioplayer object.
+## 
+## If the optional argument @var{start} is provided, begin playing
+## @var{start} seconds in to the recording.
+## 
 ## If the optional argument @var{end} is provided, stop playing at
 ## @var{end} seconds in the recording.
 ## @end deftypefn
--- a/scripts/audio/@audiorecorder/record.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/audio/@audiorecorder/record.m	Sun May 10 21:37:19 2015 -0700
@@ -20,9 +20,10 @@
 ## @deftypefn  {Function File} {} record (@var{recorder})
 ## @deftypefnx {Function File} {} record (@var{recorder}, @var{length})
 ## Record audio without blocking using the audiorecorder object
-## @var{recorder} until stopped or paused by the @var{stop} or
-## @var{pause} method.  Given the optional argument @var{length}, record
-## for @var{length} seconds.
+## @var{recorder} until stopped or paused by the @var{stop} or @var{pause}
+## method.
+##
+## Given the optional argument @var{length}, record for @var{length} seconds.
 ## @end deftypefn
 
 function record (varargin)
--- a/scripts/audio/@audiorecorder/recordblocking.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/audio/@audiorecorder/recordblocking.m	Sun May 10 21:37:19 2015 -0700
@@ -18,8 +18,9 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} recordblocking (@var{recorder}, @var{length})
-## Record audio with blocking (synchronous I/O).  You must specify the
-## length of the recording in seconds.
+## Record audio with blocking (synchronous I/O).
+##
+## The length of the recording in seconds (@var{length}) must be specified.
 ## @end deftypefn
 
 function recordblocking (varargin)
--- a/scripts/audio/@audiorecorder/set.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/audio/@audiorecorder/set.m	Sun May 10 21:37:19 2015 -0700
@@ -21,12 +21,12 @@
 ## @deftypefnx {Function File} {} set (@var{recorder}, @var{properties})
 ## @deftypefnx {Function File} {@var{properties} =} set (@var{recorder})
 ## Set the value of property specified by @var{name} to a given @var{value}.
-## If @var{name} and @var{value} are cell arrays of the same size,
-## set each property to a corresponding value.
-## Given a structure with fields corresponding to property names, set
-## the value of those properties to the corresponding field values.
-## Given only the recorder object, return a structure of settable
-## properties.
+##
+## If @var{name} and @var{value} are cell arrays of the same size, set each
+## property to a corresponding value.  Given a structure with fields
+## corresponding to property names, set the value of those properties to the
+## corresponding field values.  Given only the recorder object, return a
+## structure of settable properties.
 ## @end deftypefn
 
 function settable = set (varargin)
--- a/scripts/audio/@audiorecorder/stop.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/audio/@audiorecorder/stop.m	Sun May 10 21:37:19 2015 -0700
@@ -18,8 +18,7 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} stop (@var{recorder})
-## Stop the audiorecorder object @var{recorder} and clean up any audio
-## streams.
+## Stop the audiorecorder object @var{recorder} and clean up any audio streams.
 ## @end deftypefn
 
 function stop (recorder)
--- a/scripts/audio/@audiorecorder/subsasgn.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/audio/@audiorecorder/subsasgn.m	Sun May 10 21:37:19 2015 -0700
@@ -19,6 +19,7 @@
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {@var{value} =} subsasgn (@var{recorder}, @var{idx}, @var{rhs})
 ## Perform subscripted assignment on the audio recorder object @var{recorder}.
+##
 ## Assign the value of @var{rhs} to the recorder property named by @var{idx}.
 ## @end deftypefn
 
--- a/scripts/audio/@audiorecorder/subsref.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/audio/@audiorecorder/subsref.m	Sun May 10 21:37:19 2015 -0700
@@ -19,6 +19,7 @@
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {@var{value} =} subsref (@var{recorder}, @var{idx})
 ## Perform subscripted selection on the audio recorder object @var{recorder}.
+##
 ## Return the recorder property value named by @var{idx}.
 ## @end deftypefn
 
--- a/scripts/audio/lin2mu.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/audio/lin2mu.m	Sun May 10 21:37:19 2015 -0700
@@ -18,10 +18,11 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} lin2mu (@var{x}, @var{n})
-## Convert audio data from linear to mu-law.  Mu-law values use 8-bit
-## unsigned integers.  Linear values use @var{n}-bit signed integers or
-## floating point values in the range -1 @leq{} @var{x} @leq{} 1 if
-## @var{n} is 0.
+## Convert audio data from linear to mu-law.
+##
+## Mu-law values use 8-bit unsigned integers.  Linear values use @var{n}-bit
+## signed integers or floating point values in the range -1 @leq{} @var{x}
+## @leq{} 1 if @var{n} is 0.
 ##
 ## If @var{n} is not specified it defaults to 0, 8, or 16 depending on
 ## the range of values in @var{x}.
--- a/scripts/audio/mu2lin.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/audio/mu2lin.m	Sun May 10 21:37:19 2015 -0700
@@ -18,10 +18,11 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} mu2lin (@var{x}, @var{n})
-## Convert audio data from mu-law to linear.  Mu-law values are 8-bit
-## unsigned integers.  Linear values use @var{n}-bit signed integers
-## or floating point values in the range -1@leq{}y@leq{}1 if @var{n}
-## is 0.
+## Convert audio data from mu-law to linear.
+##
+## Mu-law values are 8-bit unsigned integers.  Linear values use @var{n}-bit
+## signed integers or floating point values in the range -1@leq{}y@leq{}1 if
+## @var{n} is 0.
 ##
 ## If @var{n} is not specified it defaults to 0.
 ## @seealso{lin2mu}
--- a/scripts/audio/record.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/audio/record.m	Sun May 10 21:37:19 2015 -0700
@@ -21,10 +21,13 @@
 ## @deftypefn  {Function File} {} record (@var{sec})
 ## @deftypefnx {Function File} {} record (@var{sec}, @var{fs})
 ## Record @var{sec} seconds of audio from the system's default audio input at
-## a sampling rate of 8000 samples per second.  If the optional argument
-## @var{fs} is given, it specifies the sampling rate for recording.
+## a sampling rate of 8000 samples per second.
+##
+## If the optional argument @var{fs} is given, it specifies the sampling rate
+## for recording.
 ##
 ## For more control over audio recording, use the @code{audiorecorder} class.
+## @seealso{sound, soundsc}
 ## @end deftypefn
 
 function x = record (sec, fs)
--- a/scripts/audio/sound.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/audio/sound.m	Sun May 10 21:37:19 2015 -0700
@@ -21,15 +21,19 @@
 ## @deftypefnx {Function File} {} sound (@var{y}, @var{fs})
 ## @deftypefnx {Function File} {} sound (@var{y}, @var{fs}, @var{nbits})
 ## Play audio data @var{y} at sample rate @var{fs} to the default audio
-## device.  If @var{fs} is not given, a default sample rate of 8000 samples
-## per second is used.  The optional argument @var{nbits} specifies the bit
-## depth to play to the audio device and defaults to 8 bits.
+## device.
 ##
 ## The audio signal @var{y} can be a vector or a two-column array, representing
 ## mono or stereo audio, respectively.
 ##
+## If @var{fs} is not given, a default sample rate of 8000 samples per second
+## is used.
+##
+## The optional argument @var{nbits} specifies the bit depth to play to the
+## audio device and defaults to 8 bits.
+##
 ## For more control over audio playback, use the @code{audioplayer} class.
-## @seealso{record, soundsc}
+## @seealso{soundsc, record}
 ## @end deftypefn
 
 function sound (y, fs, nbits)
--- a/scripts/audio/soundsc.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/audio/soundsc.m	Sun May 10 21:37:19 2015 -0700
@@ -22,20 +22,24 @@
 ## @deftypefnx {Function File} {} soundsc (@var{y}, @var{fs}, @var{nbits})
 ## @deftypefnx {Function File} {} soundsc (@dots{}, [@var{ymin}, @var{ymax}])
 ## Scale the audio data @var{y} and play it at sample rate @var{fs} to the
-## default audio device.  If @var{fs} is not given, a default sample rate of
-## 8000 samples per second is used.  The optional argument @var{nbits} specifies
-## the bit depth to play to the audio device and defaults to 8 bits.
+## default audio device.
+##
+## The audio signal @var{y} can be a vector or a two-column array, representing
+## mono or stereo audio, respectively.
+##
+## If @var{fs} is not given, a default sample rate of 8000 samples per second
+## is used.
+##
+## The optional argument @var{nbits} specifies the bit depth to play to the
+## audio device and defaults to 8 bits.
 ##
 ## By default, @var{y} is automatically normalized to the range [-1, 1].  If the
 ## range [@var{ymin}, @var{ymax}] is given, then elements of @var{y} that fall
 ## within the range @var{ymin} @leq{} @var{y} @leq{} @var{ymax} are scaled to
 ## the range [-1, 1] instead.
 ##
-## The audio signal @var{y} can be a vector or a two-column array, representing
-## mono or stereo audio, respectively.
-##
 ## For more control over audio playback, use the @code{audioplayer} class.
-## @seealso{record, sound}
+## @seealso{sound, record}
 ## @end deftypefn
 
 function soundsc (y, fs, nbits, yrange)
--- a/scripts/audio/wavread.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/audio/wavread.m	Sun May 10 21:37:19 2015 -0700
@@ -24,14 +24,12 @@
 ## @deftypefnx {Function File} {[@dots{}] =} wavread (@var{filename}, [@var{n1} @var{n2}])
 ## @deftypefnx {Function File} {[@dots{}] =} wavread (@dots{}, @var{datatype})
 ## @deftypefnx {Function File} {@var{sz} =} wavread (@var{filename}, "size")
+## @deftypefnx {Function File} {[@var{n_samp}, @var{n_chan}] =} wavread (@var{filename}, "size")
 ## Read the audio signal @var{y} from the RIFF/WAVE sound file @var{filename}.
+##
 ## If the file contains multichannel data, then @var{y} is a matrix with the
 ## channels represented as columns.
 ##
-## The optional return value @var{fs} is the sample rate of the audio file in
-## Hz.  The optional return value @var{nbits} is the number of bits per sample
-## as encoded in the file.
-##
 ## If @var{n} is specified, only the first @var{n} samples of the file are
 ## returned.  If [@var{n1} @var{n2}] is specified, only the range of samples
 ## from @var{n1} to @var{n2} is returned.  A value of @code{Inf} can be used
@@ -42,6 +40,11 @@
 ## the form [@var{samples} @var{channels}].  If there are two output arguments,
 ## the number of samples is assigned to the first and the number of channels
 ## is assigned to the second.
+##
+## The optional return value @var{fs} is the sample rate of the audio file in
+## Hz.  The optional return value @var{nbits} is the number of bits per sample
+## as encoded in the file.
+##
 ## @seealso{audioread, audiowrite, wavwrite}
 ## @end deftypefn
 
--- a/scripts/audio/wavwrite.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/audio/wavwrite.m	Sun May 10 21:37:19 2015 -0700
@@ -22,14 +22,19 @@
 ## @deftypefnx {Function File} {} wavwrite (@var{y}, @var{fs}, @var{filename})
 ## @deftypefnx {Function File} {} wavwrite (@var{y}, @var{fs}, @var{nbits}, @var{filename})
 ## Write the audio signal @var{y} to the RIFF/WAVE sound file @var{filename}.
+##
 ## If @var{y} is a matrix, the columns represent multiple audio channels.
 ##
 ## The optional argument @var{fs} specifies the sample rate of the audio signal
-## in Hz.  The optional argument @var{nbits} specifies the number of bits per
-## sample to write to @var{filename}.  The default sample rate is 8000 Hz and
-## the default bit depth is 16 bits per sample.
+## in Hz.
+## 
+## The optional argument @var{nbits} specifies the number of bits per sample
+## to write to @var{filename}.
 ##
-## @seealso{audioread, audiowrite, wavread}
+## The default sample rate is 8000 Hz and the default bit depth is 16 bits
+## per sample.
+##
+## @seealso{audiowrite, audioread, wavread}
 ## @end deftypefn
 
 function wavwrite (y, varargin)
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/scripts/deprecated/gmap40.m	Sun May 10 21:37:19 2015 -0700
@@ -0,0 +1,72 @@
+## Copyright (C) 2007-2015 David Bateman
+##
+## This file is part of Octave.
+##
+## Octave is free software; you can redistribute it and/or modify it
+## under the terms of the GNU General Public License as published by
+## the Free Software Foundation; either version 3 of the License, or (at
+## your option) any later version.
+##
+## Octave is distributed in the hope that it will be useful, but
+## WITHOUT ANY WARRANTY; without even the implied warranty of
+## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
+## General Public License for more details.
+##
+## You should have received a copy of the GNU General Public License
+## along with Octave; see the file COPYING.  If not, see
+## <http://www.gnu.org/licenses/>.
+
+## -*- texinfo -*-
+## @deftypefn  {Function File} {@var{map} =} gmap40 ()
+## @deftypefnx {Function File} {@var{map} =} gmap40 (@var{n})
+##
+## @code{gmap40} is deprecated and will be removed in Octave version 4.4.
+##
+## Create color colormap.  The colormap consists of red, green, blue, yellow,
+## magenta and cyan.
+##
+## This colormap is specifically designed for users of gnuplot 4.0 where these
+## 6 colors are the allowable ones for patch objects.
+##
+## The argument @var{n} must be a scalar.
+## If unspecified, a length of 6 is assumed.  Larger values of @var{n} result
+## in a repetition of the above colors.
+## @seealso{colormap}
+## @end deftypefn
+
+## PKG_ADD: colormap ("register", "gmap40");
+## PKG_DEL: colormap ("unregister", "gmap40");
+
+## Deprecated in 4.0
+
+function map = gmap40 (n = rows (colormap ()))
+
+  persistent warned = false;
+  if (! warned)
+    warned = true;
+    warning ("Octave:deprecated-function",
+             "gmap40 is obsolete and will be removed from a future version of Octave");
+  endif
+
+  if (nargin > 1)
+    print_usage ();
+  elseif (! isscalar (n))
+    error ("gmap40: N must be a scalar");
+  endif
+
+  if (n > 0)
+    C = [1, 0, 0; 0, 1, 0; 0, 0, 1; 1, 1, 0; 1, 0, 1; 0, 1, 1];
+    map = C(rem (0:(n-1), 6) + 1, :);
+  else
+    map = zeros (0, 3);
+  endif
+
+endfunction
+
+
+%!demo
+%! ## Show the 'gmap40' colormap as an image
+%! image (1:6, linspace (0, 1, 6), repmat ((1:6)', 1, 6));
+%! axis ([1, 6, 0, 1], "ticy", "xy");
+%! colormap (gmap40 (6));
+
--- a/scripts/deprecated/module.mk	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/deprecated/module.mk	Sun May 10 21:37:19 2015 -0700
@@ -10,6 +10,7 @@
   deprecated/fmod.m \
   deprecated/fnmatch.m \
   deprecated/gen_doc_cache.m \
+  deprecated/gmap40.m \
   deprecated/interp1q.m \
   deprecated/isequalwithequalnans.m \
   deprecated/isstr.m \
--- a/scripts/elfun/cosd.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/elfun/cosd.m	Sun May 10 21:37:19 2015 -0700
@@ -18,8 +18,9 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} cosd (@var{x})
-## Compute the cosine for each element of @var{x} in degrees.  Returns zero
-## for elements where @code{(@var{x}-90)/180} is an integer.
+## Compute the cosine for each element of @var{x} in degrees.
+##
+## Returns zero for elements where @code{(@var{x}-90)/180} is an integer.
 ## @seealso{acosd, cos}
 ## @end deftypefn
 
--- a/scripts/elfun/sind.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/elfun/sind.m	Sun May 10 21:37:19 2015 -0700
@@ -18,8 +18,9 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} sind (@var{x})
-## Compute the sine for each element of @var{x} in degrees.  Returns zero
-## for elements where @code{@var{x}/180} is an integer.
+## Compute the sine for each element of @var{x} in degrees.
+##
+## Returns zero for elements where @code{@var{x}/180} is an integer.
 ## @seealso{asind, sin}
 ## @end deftypefn
 
--- a/scripts/elfun/tand.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/elfun/tand.m	Sun May 10 21:37:19 2015 -0700
@@ -18,9 +18,10 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} tand (@var{x})
-## Compute the tangent for each element of @var{x} in degrees.  Returns zero
-## for elements where @code{@var{x}/180} is an integer and @code{Inf} for
-## elements where @code{(@var{x}-90)/180} is an integer.
+## Compute the tangent for each element of @var{x} in degrees.
+##
+## Returns zero for elements where @code{@var{x}/180} is an integer and
+## @code{Inf} for elements where @code{(@var{x}-90)/180} is an integer.
 ## @seealso{atand, tan}
 ## @end deftypefn
 
--- a/scripts/general/accumarray.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/general/accumarray.m	Sun May 10 21:37:19 2015 -0700
@@ -22,12 +22,13 @@
 ## @deftypefnx {Function File} {} accumarray (@var{subs}, @var{vals}, @dots{})
 ##
 ## Create an array by accumulating the elements of a vector into the
-## positions defined by their subscripts.  The subscripts are defined by
-## the rows of the matrix @var{subs} and the values by @var{vals}.  Each
-## row of @var{subs} corresponds to one of the values in @var{vals}.  If
-## @var{vals} is a scalar, it will be used for each of the row of
-## @var{subs}.  If @var{subs} is a cell array of vectors, all vectors
-## must be of the same length, and the subscripts in the @var{k}th
+## positions defined by their subscripts.
+##
+## The subscripts are defined by the rows of the matrix @var{subs} and the
+## values by @var{vals}.  Each row of @var{subs} corresponds to one of the
+## values in @var{vals}.  If @var{vals} is a scalar, it will be used for each
+## of the row of @var{subs}.  If @var{subs} is a cell array of vectors, all
+## vectors must be of the same length, and the subscripts in the @var{k}th
 ## vector must correspond to the @var{k}th dimension of the result.
 ##
 ## The size of the matrix will be determined by the subscripts
--- a/scripts/general/accumdim.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/general/accumdim.m	Sun May 10 21:37:19 2015 -0700
@@ -20,6 +20,7 @@
 ## @deftypefn {Function File} {} accumdim (@var{subs}, @var{vals}, @var{dim}, @var{n}, @var{func}, @var{fillval})
 ## Create an array by accumulating the slices of an array into the
 ## positions defined by their subscripts along a specified dimension.
+##
 ## The subscripts are defined by the index vector @var{subs}.
 ## The dimension is specified by @var{dim}.  If not given, it defaults
 ## to the first non-singleton dimension.  The length of @var{subs} must
--- a/scripts/general/bitcmp.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/general/bitcmp.m	Sun May 10 21:37:19 2015 -0700
@@ -18,8 +18,9 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} bitcmp (@var{A}, @var{k})
-## Return the @var{k}-bit complement of integers in @var{A}.  If
-## @var{k} is omitted @code{k = log2 (bitmax) + 1} is assumed.
+## Return the @var{k}-bit complement of integers in @var{A}.
+##
+## If @var{k} is omitted @code{k = log2 (bitmax) + 1} is assumed.
 ##
 ## @example
 ## @group
--- a/scripts/general/bitget.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/general/bitget.m	Sun May 10 21:37:19 2015 -0700
@@ -18,8 +18,9 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {@var{c} =} bitget (@var{A}, @var{n})
-## Return the status of bit(s) @var{n} of unsigned integers in @var{A}
-## the lowest significant bit is @var{n} = 1.
+## Return the status of bit(s) @var{n} of the unsigned integers in @var{A}.
+##
+## The least significant bit is @var{n} = 1.
 ##
 ## @example
 ## @group
--- a/scripts/general/bitset.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/general/bitset.m	Sun May 10 21:37:19 2015 -0700
@@ -20,10 +20,11 @@
 ## -*- texinfo -*-
 ## @deftypefn  {Function File} {@var{C} =} bitset (@var{A}, @var{n})
 ## @deftypefnx {Function File} {@var{C} =} bitset (@var{A}, @var{n}, @var{val})
-## Set or reset bit(s) @var{n} of unsigned integers in @var{A}.
+## Set or reset bit(s) @var{n} of the unsigned integers in @var{A}.
+##
 ## @var{val} = 0 resets and @var{val} = 1 sets the bits.
-## The lowest significant bit is: @var{n} = 1.  All variables must be the
-## same size or scalars.
+## The least significant bit is @var{n} = 1.  All variables must be the same
+## size or scalars.
 ##
 ## @example
 ## @group
--- a/scripts/general/blkdiag.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/general/blkdiag.m	Sun May 10 21:37:19 2015 -0700
@@ -19,9 +19,9 @@
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} blkdiag (@var{A}, @var{B}, @var{C}, @dots{})
 ## Build a block diagonal matrix from @var{A}, @var{B}, @var{C}, @dots{}
-## All the arguments must be numeric and are two-dimensional matrices or
-## scalars.  If any argument is of type sparse, the output will also be
-## sparse.
+##
+## All arguments must be numeric and either two-dimensional matrices or
+## scalars.  If any argument is of type sparse, the output will also be sparse.
 ## @seealso{diag, horzcat, vertcat, sparse}
 ## @end deftypefn
 
--- a/scripts/general/cart2pol.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/general/cart2pol.m	Sun May 10 21:37:19 2015 -0700
@@ -23,16 +23,18 @@
 ## @deftypefnx {Function File} {[@var{theta}, @var{r}, @var{z}] =} cart2pol (@var{C})
 ## @deftypefnx {Function File} {@var{P} =} cart2pol (@dots{})
 ##
-## Transform Cartesian to polar or cylindrical coordinates.
+## Transform Cartesian coordinates to polar or cylindrical coordinates.
+##
+## The inputs @var{x}, @var{y} (, and @var{z}) must be the same shape, or
+## scalar.  If called with a single matrix argument then each row of @var{C}
+## represents the Cartesian coordinate (@var{x}, @var{y} (, @var{z})).
 ##
 ## @var{theta} describes the angle relative to the positive x-axis.
+##
 ## @var{r} is the distance to the z-axis @w{(0, 0, z)}.
-## @var{x}, @var{y} (, and @var{z}) must be the same shape, or scalar.
-## If called with a single matrix argument then each row of @var{C}
-## represents the Cartesian coordinate (@var{x}, @var{y} (, @var{z})).
 ##
-## If only a single return argument is requested then return a matrix
-## @var{P} where each row represents one polar/(cylindrical) coordinate
+## If only a single return argument is requested then return a matrix @var{P}
+## where each row represents one polar/(cylindrical) coordinate
 ## (@var{theta}, @var{phi} (, @var{z})).
 ## @seealso{pol2cart, cart2sph, sph2cart}
 ## @end deftypefn
--- a/scripts/general/cart2sph.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/general/cart2sph.m	Sun May 10 21:37:19 2015 -0700
@@ -20,17 +20,20 @@
 ## @deftypefn  {Function File} {[@var{theta}, @var{phi}, @var{r}] =} cart2sph (@var{x}, @var{y}, @var{z})
 ## @deftypefnx {Function File} {[@var{theta}, @var{phi}, @var{r}] =} cart2sph (@var{C})
 ## @deftypefnx {Function File} {@var{S} =} cart2sph (@dots{})
-## Transform Cartesian to spherical coordinates.
+## Transform Cartesian coordinates to spherical coordinates.
 ##
+## The inputs @var{x}, @var{y}, and @var{z} must be the same shape, or scalar.
+## If called with a single matrix argument then each row of @var{C} represents
+## the Cartesian coordinate (@var{x}, @var{y}, @var{z}).
+## 
 ## @var{theta} describes the angle relative to the positive x-axis.
+##
 ## @var{phi} is the angle relative to the xy-plane.
+##
 ## @var{r} is the distance to the origin @w{(0, 0, 0)}.
-## @var{x}, @var{y}, and @var{z} must be the same shape, or scalar.
-## If called with a single matrix argument then each row of @var{C}
-## represents the Cartesian coordinate (@var{x}, @var{y}, @var{z}).
 ##
-## If only a single return argument is requested then return a matrix
-## @var{S} where each row represents one spherical coordinate
+## If only a single return argument is requested then return a matrix @var{S}
+## where each row represents one spherical coordinate
 ## (@var{theta}, @var{phi}, @var{r}).
 ## @seealso{sph2cart, cart2pol, pol2cart}
 ## @end deftypefn
--- a/scripts/general/cell2mat.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/general/cell2mat.m	Sun May 10 21:37:19 2015 -0700
@@ -20,9 +20,10 @@
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {@var{m} =} cell2mat (@var{c})
 ## Convert the cell array @var{c} into a matrix by concatenating all
-## elements of @var{c} into a hyperrectangle.  Elements of @var{c} must
-## be numeric, logical, or char matrices; or cell arrays; or structs; and
-## @code{cat} must be able to concatenate them together.
+## elements of @var{c} into a hyperrectangle.
+##
+## Elements of @var{c} must be numeric, logical, or char matrices; or cell
+## arrays; or structs; and @code{cat} must be able to concatenate them together.
 ## @seealso{mat2cell, num2cell}
 ## @end deftypefn
 
--- a/scripts/general/celldisp.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/general/celldisp.m	Sun May 10 21:37:19 2015 -0700
@@ -19,9 +19,11 @@
 ## -*- texinfo -*-
 ## @deftypefn  {Function File} {} celldisp (@var{c})
 ## @deftypefnx {Function File} {} celldisp (@var{c}, @var{name})
-## Recursively display the contents of a cell array.  By default the values
-## are displayed with the name of the variable @var{c}.  However, this name
-## can be replaced with the variable @var{name}.  For example:
+## Recursively display the contents of a cell array.
+##
+## By default the values are displayed with the name of the variable @var{c}.
+## However, this name can be replaced with the variable @var{name}.  For
+## example:
 ##
 ## @example
 ## @group
--- a/scripts/general/chop.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/general/chop.m	Sun May 10 21:37:19 2015 -0700
@@ -19,8 +19,9 @@
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} chop (@var{x}, @var{ndigits}, @var{base})
 ## Truncate elements of @var{x} to a length of @var{ndigits} such that the
-## resulting numbers are exactly divisible by @var{base}.  If @var{base} is not
-## specified it defaults to 10.
+## resulting numbers are exactly divisible by @var{base}.
+##
+## If @var{base} is not specified it defaults to 10.
 ##
 ## @example
 ## @group
--- a/scripts/general/circshift.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/general/circshift.m	Sun May 10 21:37:19 2015 -0700
@@ -18,11 +18,12 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {@var{y} =} circshift (@var{x}, @var{n})
-## Circularly shift the values of the array @var{x}.  @var{n} must be
-## a vector of integers no longer than the number of dimensions in
-## @var{x}.  The values of @var{n} can be either positive or negative,
-## which determines the direction in which the values or @var{x} are
-## shifted.  If an element of @var{n} is zero, then the corresponding
+## Circularly shift the values of the array @var{x}.
+##
+## @var{n} must be a vector of integers no longer than the number of
+## dimensions in @var{x}.  The values of @var{n} can be either positive or
+## negative, which determines the direction in which the values or @var{x}
+## are shifted.  If an element of @var{n} is zero, then the corresponding
 ## dimension of @var{x} will not be shifted.  For example:
 ##
 ## @example
--- a/scripts/general/common_size.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/general/common_size.m	Sun May 10 21:37:19 2015 -0700
@@ -20,11 +20,12 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {[@var{err}, @var{y1}, @dots{}] =} common_size (@var{x1}, @dots{})
-## Determine if all input arguments are either scalar or of common
-## size.  If so, @var{err} is zero, and @var{yi} is a matrix of the
-## common size with all entries equal to @var{xi} if this is a scalar or
-## @var{xi} otherwise.  If the inputs cannot be brought to a common size,
-## @var{err} is 1, and @var{yi} is @var{xi}.  For example:
+## Determine if all input arguments are either scalar or of common size.
+##
+## If true, @var{err} is zero, and @var{yi} is a matrix of the common size
+## with all entries equal to @var{xi} if this is a scalar or @var{xi}
+## otherwise.  If the inputs cannot be brought to a common size, @var{err} is
+## 1, and @var{yi} is @var{xi}.  For example:
 ##
 ## @example
 ## @group
@@ -36,8 +37,8 @@
 ## @end example
 ##
 ## @noindent
-## This is useful for implementing functions where arguments can either
-## be scalars or of common size.
+## This is useful for implementing functions where arguments can either be
+## scalars or of common size.
 ## @end deftypefn
 
 ## Author: KH <Kurt.Hornik@wu-wien.ac.at>
--- a/scripts/general/cplxpair.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/general/cplxpair.m	Sun May 10 21:37:19 2015 -0700
@@ -21,21 +21,23 @@
 ## @deftypefnx {Function File} {} cplxpair (@var{z}, @var{tol})
 ## @deftypefnx {Function File} {} cplxpair (@var{z}, @var{tol}, @var{dim})
 ## Sort the numbers @var{z} into complex conjugate pairs ordered by
-## increasing real part.  Place the negative imaginary complex number
-## first within each pair.  Place all the real numbers (those with
-## @code{abs (imag (@var{z}) / @var{z}) < @var{tol}}) after the
+## increasing real part.
+##
+## The negative imaginary complex numbers are placed first within each pair.
+## All real numbers (those with
+## @code{abs (imag (@var{z}) / @var{z}) < @var{tol}}) are placed after the
 ## complex pairs.
 ##
 ## If @var{tol} is unspecified the default value is 100*@code{eps}.
 ##
 ## By default the complex pairs are sorted along the first non-singleton
-## dimension of @var{z}.  If @var{dim} is specified, then the complex
-## pairs are sorted along this dimension.
+## dimension of @var{z}.  If @var{dim} is specified, then the complex pairs are
+## sorted along this dimension.
 ##
 ## Signal an error if some complex numbers could not be paired.  Signal an
-## error if all complex numbers are not exact conjugates (to within
-## @var{tol}).  Note that there is no defined order for pairs with identical
-## real parts but differing imaginary parts.
+## error if all complex numbers are not exact conjugates (to within @var{tol}).
+## Note that there is no defined order for pairs with identical real parts but
+## differing imaginary parts.
 ## @c Set example in small font to prevent overfull line
 ##
 ## @smallexample
--- a/scripts/general/cumtrapz.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/general/cumtrapz.m	Sun May 10 21:37:19 2015 -0700
@@ -20,22 +20,24 @@
 ## @deftypefn  {Function File} {@var{q} =} cumtrapz (@var{y})
 ## @deftypefnx {Function File} {@var{q} =} cumtrapz (@var{x}, @var{y})
 ## @deftypefnx {Function File} {@var{q} =} cumtrapz (@dots{}, @var{dim})
-##
 ## Cumulative numerical integration of points @var{y} using the trapezoidal
 ## method.
+##
 ## @w{@code{cumtrapz (@var{y})}} computes the cumulative integral of @var{y}
-## along the first non-singleton dimension.  Where @code{trapz} reports
-## only the overall integral sum, @code{cumtrapz} reports the current partial
-## sum value at each point of @var{y}.  When the argument @var{x} is omitted
-## an equally spaced @var{x} vector with unit spacing (1) is assumed.
-## @code{cumtrapz (@var{x}, @var{y})} evaluates the integral with respect to
-## the spacing in @var{x} and the values in @var{y}.  This is useful if the
-## points in @var{y} have been sampled unevenly.  If the optional @var{dim}
-## argument is given, operate along this dimension.
+## along the first non-singleton dimension.  Where @code{trapz} reports only
+## the overall integral sum, @code{cumtrapz} reports the current partial sum
+## value at each point of @var{y}.
 ##
-## If @var{x} is not specified then unit spacing will be used.  To scale
-## the integral to the correct value you must multiply by the actual spacing
-## value (deltaX).
+## When the argument @var{x} is omitted an equally spaced @var{x} vector with
+## unit spacing (1) is assumed.  @code{cumtrapz (@var{x}, @var{y})} evaluates
+## the integral with respect to the spacing in @var{x} and the values in
+## @var{y}.  This is useful if the points in @var{y} have been sampled unevenly.
+##
+## If the optional @var{dim} argument is given, operate along this dimension.
+##
+## Application Note: If @var{x} is not specified then unit spacing will be
+## used.  To scale the integral to the correct value you must multiply by the
+## actual spacing value (deltaX).
 ## @seealso{trapz, cumsum}
 ## @end deftypefn
 
--- a/scripts/general/dblquad.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/general/dblquad.m	Sun May 10 21:37:19 2015 -0700
@@ -22,11 +22,11 @@
 ## @deftypefnx {Function File} {} dblquad (@var{f}, @var{xa}, @var{xb}, @var{ya}, @var{yb}, @var{tol}, @var{quadf})
 ## @deftypefnx {Function File} {} dblquad (@var{f}, @var{xa}, @var{xb}, @var{ya}, @var{yb}, @var{tol}, @var{quadf}, @dots{})
 ## Numerically evaluate the double integral of @var{f}.
-## @var{f} is a function handle, inline function, or string
-## containing the name of the function to evaluate.  The function @var{f} must
-## have the form @math{z = f(x,y)} where @var{x} is a vector and @var{y} is a
-## scalar.  It should return a vector of the same length and orientation as
-## @var{x}.
+##
+## @var{f} is a function handle, inline function, or string containing the name
+## of the function to evaluate.  The function @var{f} must have the form
+## @math{z = f(x,y)} where @var{x} is a vector and @var{y} is a scalar.  It
+## should return a vector of the same length and orientation as @var{x}.
 ##
 ## @var{xa}, @var{ya} and @var{xb}, @var{yb} are the lower and upper limits of
 ## integration for x and y respectively.  The underlying integrator determines
--- a/scripts/general/deal.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/general/deal.m	Sun May 10 21:37:19 2015 -0700
@@ -21,7 +21,8 @@
 ## @deftypefnx {Function File} {[@var{r1}, @var{r2}, @dots{}, @var{rn}] =} deal (@var{a1}, @var{a2}, @dots{}, @var{an})
 ##
 ## Copy the input parameters into the corresponding output parameters.
-## If only one input parameter is supplied, its value is copied to each
+##
+## If only a single input parameter is supplied, its value is copied to each
 ## of the outputs.
 ##
 ## For example,
--- a/scripts/general/del2.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/general/del2.m	Sun May 10 21:37:19 2015 -0700
@@ -29,6 +29,7 @@
 ## @ifnottex
 ## operator.
 ## @end ifnottex
+##
 ## For a 2-dimensional matrix @var{M} this is defined as
 ## @tex
 ## $$d = {1 \over 4} \left( {d^2 \over dx^2} M(x,y) + {d^2 \over dy^2} M(x,y) \right)$$
--- a/scripts/general/display.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/general/display.m	Sun May 10 21:37:19 2015 -0700
@@ -18,8 +18,10 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} display (@var{a})
-## Display the contents of an object.  If @var{a} is an object of the
-## class @qcode{"myclass"}, then @code{display} is called in a case like
+## Display the contents of an object.
+##
+## If @var{a} is an object of the class @qcode{"myclass"}, then @code{display}
+## is called in a case like
 ##
 ## @example
 ## myclass (@dots{})
--- a/scripts/general/divergence.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/general/divergence.m	Sun May 10 21:37:19 2015 -0700
@@ -23,6 +23,7 @@
 ## @deftypefnx {Function File} {@var{div} =} divergence (@var{fx}, @var{fy})
 ## Calculate divergence of a vector field given by the arrays @var{fx},
 ## @var{fy}, and @var{fz} or @var{fx}, @var{fy} respectively.
+##
 ## @tex
 ## $$
 ## div F(x,y,z) = \partial_x{F} + \partial_y{F} + \partial_z{F}
--- a/scripts/general/fieldnames.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/general/fieldnames.m	Sun May 10 21:37:19 2015 -0700
@@ -24,8 +24,8 @@
 ## Return a cell array of strings with the names of the fields in the
 ## specified input.
 ##
-## When the input is a structure @var{struct}, the names are the elements
-## of the structure.
+## When the input is a structure @var{struct}, the names are the elements of
+## the structure.
 ##
 ## When the input is an Octave object @var{obj}, the names are the public
 ## properties of the object.
--- a/scripts/general/flip.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/general/flip.m	Sun May 10 21:37:19 2015 -0700
@@ -20,7 +20,7 @@
 ## -*- texinfo -*-
 ## @deftypefn  {Function File} {} flip (@var{x})
 ## @deftypefnx {Function File} {} flip (@var{x}, @var{dim})
-## Flip array across specific dimension.
+## Flip array across dimension @var{dim}.
 ##
 ## Return a copy of @var{x} flipped about the dimension @var{dim}.
 ## @var{dim} defaults to the first non-singleton dimension.
--- a/scripts/general/flipdim.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/general/flipdim.m	Sun May 10 21:37:19 2015 -0700
@@ -20,11 +20,10 @@
 ## -*- texinfo -*-
 ## @deftypefn  {Function File} {} flipdim (@var{x})
 ## @deftypefnx {Function File} {} flipdim (@var{x}, @var{dim})
-## Flip array across specific dimension.
+## Flip array across dimension @var{dim}.
 ##
-## This function is an alias for @code{flip} and exists for backwards
-## and @sc{matlab} compatibility.  See @code{flip} for complete usage
-## information.
+## This function is an alias for @code{flip} and exists for backwards and
+## @sc{matlab} compatibility.  See @code{flip} for complete usage information.
 ##
 ## @seealso{flip, fliplr, flipud, rot90, rotdim}
 ## @end deftypefn
--- a/scripts/general/fliplr.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/general/fliplr.m	Sun May 10 21:37:19 2015 -0700
@@ -20,9 +20,8 @@
 ## @deftypefn {Function File} {} fliplr (@var{x})
 ## Flip array left to right.
 ##
-## Return a copy of @var{x} with the order of the columns reversed.  In
-## other words, @var{x} is flipped left-to-right about a vertical axis.  For
-## example:
+## Return a copy of @var{x} with the order of the columns reversed.  In other
+## words, @var{x} is flipped left-to-right about a vertical axis.  For example:
 ##
 ## @example
 ## @group
--- a/scripts/general/flipud.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/general/flipud.m	Sun May 10 21:37:19 2015 -0700
@@ -20,9 +20,8 @@
 ## @deftypefn {Function File} {} flipud (@var{x})
 ## Flip array upside down.
 ##
-## Return a copy of @var{x} with the order of the rows reversed.  In
-## other words, @var{x} is flipped upside-down about a horizontal axis.  For
-## example:
+## Return a copy of @var{x} with the order of the rows reversed.  In other
+## words, @var{x} is flipped upside-down about a horizontal axis.  For example:
 ##
 ## @example
 ## @group
--- a/scripts/general/gradient.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/general/gradient.m	Sun May 10 21:37:19 2015 -0700
@@ -25,24 +25,23 @@
 ## @deftypefnx {Function File} {[@dots{}] =} gradient (@var{f}, @var{x0}, @var{s})
 ## @deftypefnx {Function File} {[@dots{}] =} gradient (@var{f}, @var{x0}, @var{x}, @var{y}, @dots{})
 ##
-## Calculate the gradient of sampled data or a function.  If @var{m}
-## is a vector, calculate the one-dimensional gradient of @var{m}.  If
-## @var{m} is a matrix the gradient is calculated for each dimension.
+## Calculate the gradient of sampled data or a function.
 ##
-## @code{[@var{dx}, @var{dy}] = gradient (@var{m})} calculates the one
-## dimensional gradient for @var{x} and @var{y} direction if @var{m} is a
+## If @var{m} is a vector, calculate the one-dimensional gradient of @var{m}.
+## If @var{m} is a matrix the gradient is calculated for each dimension.
+##
+## @code{[@var{dx}, @var{dy}] = gradient (@var{m})} calculates the
+## one-dimensional gradient for @var{x} and @var{y} direction if @var{m} is a
 ## matrix.  Additional return arguments can be use for multi-dimensional
 ## matrices.
 ##
-## A constant spacing between two points can be provided by the
-## @var{s} parameter.  If @var{s} is a scalar, it is assumed to be the spacing
-## for all dimensions.
-## Otherwise, separate values of the spacing can be supplied by
+## A constant spacing between two points can be provided by the @var{s}
+## parameter.  If @var{s} is a scalar, it is assumed to be the spacing for all
+## dimensions.  Otherwise, separate values of the spacing can be supplied by
 ## the @var{x}, @dots{} arguments.  Scalar values specify an equidistant
-## spacing.
-## Vector values for the @var{x}, @dots{} arguments specify the coordinate for
-## that
-## dimension.  The length must match their respective dimension of @var{m}.
+## spacing.  Vector values for the @var{x}, @dots{} arguments specify the
+## coordinate for that dimension.  The length must match their respective
+## dimension of @var{m}.
 ##
 ## At boundary points a linear extrapolation is applied.  Interior points
 ## are calculated with the first approximation of the numerical gradient
@@ -52,12 +51,12 @@
 ## @end example
 ##
 ## If the first argument @var{f} is a function handle, the gradient of the
-## function at the points in @var{x0} is approximated using central
-## difference.  For example, @code{gradient (@@cos, 0)} approximates the
-## gradient of the cosine function in the point @math{x0 = 0}.  As with
-## sampled data, the spacing values between the points from which the
-## gradient is estimated can be set via the @var{s} or @var{dx},
-## @var{dy}, @dots{} arguments.  By default a spacing of 1 is used.
+## function at the points in @var{x0} is approximated using central difference.
+## For example, @code{gradient (@@cos, 0)} approximates the gradient of the
+## cosine function in the point @math{x0 = 0}.  As with sampled data, the
+## spacing values between the points from which the gradient is estimated can
+## be set via the @var{s} or @var{dx}, @var{dy}, @dots{} arguments.  By default
+## a spacing of 1 is used.
 ## @seealso{diff, del2}
 ## @end deftypefn
 
--- a/scripts/general/interp3.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/general/interp3.m	Sun May 10 21:37:19 2015 -0700
@@ -29,12 +29,11 @@
 ## Interpolate reference data @var{x}, @var{y}, @var{z}, @var{v} to determine
 ## @var{vi} at the coordinates @var{xi}, @var{yi}, @var{zi}.  The reference
 ## data @var{x}, @var{y}, @var{z} can be matrices, as returned by
-## @code{meshgrid}, in which case the sizes of
-## @var{x}, @var{y}, @var{z}, and @var{v} must be equal.  If @var{x}, @var{y},
-## @var{z} are vectors describing a cubic grid then
-## @code{length (@var{x}) == columns (@var{v})},
-## @code{length (@var{y}) == rows (@var{v})},
-## and @code{length (@var{z}) == size (@var{v}, 3)}.  In either case the input
+## @code{meshgrid}, in which case the sizes of @var{x}, @var{y}, @var{z}, and
+## @var{v} must be equal.  If @var{x}, @var{y}, @var{z} are vectors describing
+## a cubic grid then @code{length (@var{x}) == columns (@var{v})},
+## @code{length (@var{y}) == rows (@var{v})}, and
+## @code{length (@var{z}) == size (@var{v}, 3)}.  In either case the input
 ## data must be strictly monotonic.
 ##
 ## If called without @var{x}, @var{y}, @var{z}, and just a single reference
--- a/scripts/general/interpft.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/general/interpft.m	Sun May 10 21:37:19 2015 -0700
@@ -20,15 +20,17 @@
 ## @deftypefn  {Function File} {} interpft (@var{x}, @var{n})
 ## @deftypefnx {Function File} {} interpft (@var{x}, @var{n}, @var{dim})
 ##
-## Fourier interpolation.  If @var{x} is a vector, then @var{x} is
-## resampled with @var{n} points.  The data in @var{x} is assumed to be
-## equispaced.  If @var{x} is a matrix or an N-dimensional array, the
-## interpolation is performed on each column of @var{x}.  If @var{dim} is
-## specified, then interpolate along the dimension @var{dim}.
+## Fourier interpolation.
 ##
-## @code{interpft} assumes that the interpolated function is periodic,
-## and so assumptions are made about the endpoints of the interpolation.
+## If @var{x} is a vector then @var{x} is resampled with @var{n} points.  The
+## data in @var{x} is assumed to be equispaced.  If @var{x} is a matrix or an
+## N-dimensional array, the interpolation is performed on each column of
+## @var{x}.
 ##
+## If @var{dim} is specified, then interpolate along the dimension @var{dim}.
+##
+## @code{interpft} assumes that the interpolated function is periodic, and so
+## assumptions are made about the endpoints of the interpolation.
 ## @seealso{interp1}
 ## @end deftypefn
 
--- a/scripts/general/interpn.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/general/interpn.m	Sun May 10 21:37:19 2015 -0700
@@ -25,6 +25,7 @@
 ## @deftypefnx {Function File} {@var{vi} =} interpn (@dots{}, @var{method}, @var{extrapval})
 ##
 ## Perform @var{n}-dimensional interpolation, where @var{n} is at least two.
+##
 ## Each element of the @var{n}-dimensional array @var{v} represents a value
 ## at a location given by the parameters @var{x1}, @var{x2}, @dots{}, @var{xn}.
 ## The parameters @var{x1}, @var{x2}, @dots{}, @var{xn} are either
--- a/scripts/general/loadobj.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/general/loadobj.m	Sun May 10 21:37:19 2015 -0700
@@ -19,6 +19,7 @@
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {@var{b} =} loadobj (@var{a})
 ## Method of a class to manipulate an object after loading it from a file.
+##
 ## The function @code{loadobj} is called when the object @var{a} is loaded
 ## using the @code{load} function.  An example of the use of @code{saveobj}
 ## might be to add fields to an object that don't make sense to be saved.
--- a/scripts/general/logspace.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/general/logspace.m	Sun May 10 21:37:19 2015 -0700
@@ -27,6 +27,7 @@
 ## @ifnottex
 ## 10^@var{a} to 10^@var{b}.
 ## @end ifnottex
+##
 ## If @var{n} is unspecified it defaults to 50.
 ##
 ## If @var{b} is equal to
--- a/scripts/general/methods.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/general/methods.m	Sun May 10 21:37:19 2015 -0700
@@ -23,6 +23,7 @@
 ##
 ## Return a cell array containing the names of the methods for the
 ## object @var{obj} or the named class @var{classname}.
+##
 ## @var{obj} may be an Octave class object or a Java object.
 ##
 ## @seealso{fieldnames}
--- a/scripts/general/nargchk.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/general/nargchk.m	Sun May 10 21:37:19 2015 -0700
@@ -20,15 +20,15 @@
 ## @deftypefn  {Function File} {@var{msgstr} =} nargchk (@var{minargs}, @var{maxargs}, @var{nargs})
 ## @deftypefnx {Function File} {@var{msgstr} =} nargchk (@var{minargs}, @var{maxargs}, @var{nargs}, "string")
 ## @deftypefnx {Function File} {@var{msgstruct} =} nargchk (@var{minargs}, @var{maxargs}, @var{nargs}, "struct")
-## Return an appropriate error message string (or structure) if the
-## number of inputs requested is invalid.
+## Return an appropriate error message string (or structure) if the number of
+## inputs requested is invalid.
 ##
 ## This is useful for checking to see that the number of input arguments
 ## supplied to a function is within an acceptable range.
 ##
 ## @strong{Caution}: @code{nargchk} is scheduled for deprecation.  Use
 ## @code{narginchk} in all new code.
-## @seealso{nargoutchk, narginchk, error, nargin, nargout}
+## @seealso{narginchk, nargoutchk, error, nargin, nargout}
 ## @end deftypefn
 
 ## Author: Bill Denney <bill@denney.ws>
--- a/scripts/general/narginchk.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/general/narginchk.m	Sun May 10 21:37:19 2015 -0700
@@ -18,13 +18,14 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} narginchk (@var{minargs}, @var{maxargs})
-## Check for correct number of arguments or generate an error message if
-## the number of arguments in the calling function is outside the range
-## @var{minargs} and @var{maxargs}.  Otherwise, do nothing.
+## Check for correct number of input arguments.
 ##
-## Both @var{minargs} and @var{maxargs} need to be scalar numeric
-## values.  Zero, Inf and negative values are all allowed, and
-## @var{minargs} and @var{maxargs} may be equal.
+## Generate an error message if the number of arguments in the calling function
+## is outside the range @var{minargs} and @var{maxargs}.  Otherwise, do nothing.
+##
+## Both @var{minargs} and @var{maxargs} must be scalar numeric values.  Zero,
+## Inf, and negative values are all allowed, and @var{minargs} and @var{maxargs}
+## may be equal.
 ##
 ## Note that this function evaluates @code{nargin} on the caller.
 ##
--- a/scripts/general/nargoutchk.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/general/nargoutchk.m	Sun May 10 21:37:19 2015 -0700
@@ -24,20 +24,20 @@
 ## @deftypefnx {Function File} {@var{msgstruct} =} nargoutchk (@var{minargs}, @var{maxargs}, @var{nargs}, "struct")
 ## Check for correct number of output arguments.
 ##
-## On the first form, returns an error unless the number of arguments in its
-## caller is between the values of @var{minargs} and @var{maxargs}.  It does
-## nothing otherwise.  Note that this function evaluates the value of
-## @code{nargout} on the caller so its value must have not been tampered with.
+## In the first form, return an error if the number of arguments is not between
+## @var{minargs} and @var{maxargs}.  Otherwise, do nothing.  Note that this
+## function evaluates the value of @code{nargout} on the caller so its value
+## must have not been tampered with.
 ##
-## Both @var{minargs} and @var{maxargs} need to be a numeric scalar.  Zero, Inf
+## Both @var{minargs} and @var{maxargs} must be numeric scalars.  Zero, Inf,
 ## and negative are all valid, and they can have the same value.
 ##
-## For backward compatibility reasons, the other forms return an appropriate
-## error message string (or structure) if the number of outputs requested is
+## For backwards compatibility, the other forms return an appropriate error
+## message string (or structure) if the number of outputs requested is
 ## invalid.
 ##
-## This is useful for checking to see that the number of output
-## arguments supplied to a function is within an acceptable range.
+## This is useful for checking to that the number of output arguments supplied
+## to a function is within an acceptable range.
 ## @seealso{narginchk, error, nargout, nargin}
 ## @end deftypefn
 
--- a/scripts/general/nextpow2.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/general/nextpow2.m	Sun May 10 21:37:19 2015 -0700
@@ -18,9 +18,9 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} nextpow2 (@var{x})
-## Compute exponent for smallest power of two larger than input.
+## Compute the exponent for the smallest power of two larger than the input.
 ##
-## For each element in the input array @var{x}, returns the first integer
+## For each element in the input array @var{x}, return the first integer
 ## @var{n} such that
 ## @tex
 ## $2^n \ge |x|$.
--- a/scripts/general/nthargout.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/general/nthargout.m	Sun May 10 21:37:19 2015 -0700
@@ -19,17 +19,18 @@
 ## -*- texinfo -*-
 ## @deftypefn  {Function File} {} nthargout (@var{n}, @var{func}, @dots{})
 ## @deftypefnx {Function File} {} nthargout (@var{n}, @var{ntot}, @var{func}, @dots{})
-## Return the @var{n}th output argument of function given by the
-## function handle or string @var{func}.  Any arguments after @var{func}
-## are passed to @var{func}.  The total number of arguments to call
-## @var{func} with can be passed in @var{ntot}; by default @var{ntot}
-## is @var{n}.  The input @var{n} can also be a vector of indices of the
-## output, in which case the output will be a cell array of the
+## Return the @var{n}th output argument of the function specified by the
+## function handle or string @var{func}.
+##
+## Any additional arguments are passed directly to @var{func}.  The total
+## number of arguments to call @var{func} with can be passed in @var{ntot}; by
+## default @var{ntot} is @var{n}.  The input @var{n} can also be a vector of
+## indices of the output, in which case the output will be a cell array of the
 ## requested output arguments.
 ##
-## The intended use @code{nthargout} is to avoid intermediate variables.
-## For example, when finding the indices of the maximum entry of a
-## matrix, the following two compositions of nthargout
+## The intended use @code{nthargout} is to avoid intermediate variables.  For
+## example, when finding the indices of the maximum entry of a matrix, the
+## following two compositions of nthargout
 ##
 ## @example
 ## @group
@@ -53,8 +54,8 @@
 ## @end group
 ## @end example
 ##
-## It can also be helpful to have all output arguments in a single cell
-## in the following manner:
+## It can also be helpful to have all output arguments in a single cell in the
+## following manner:
 ##
 ## @example
 ## @var{USV} = nthargout ([1:3], @@svd, hilb (5));
--- a/scripts/general/num2str.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/general/num2str.m	Sun May 10 21:37:19 2015 -0700
@@ -20,11 +20,12 @@
 ## @deftypefn  {Function File} {} num2str (@var{x})
 ## @deftypefnx {Function File} {} num2str (@var{x}, @var{precision})
 ## @deftypefnx {Function File} {} num2str (@var{x}, @var{format})
-## Convert a number (or array) to a string (or a character array).  The
-## optional second argument may either give the number of significant
-## digits (@var{precision}) to be used in the output or a format
-## template string (@var{format}) as in @code{sprintf} (@pxref{Formatted
-## Output}).  @code{num2str} can also handle complex numbers.
+## Convert a number (or array) to a string (or a character array).
+##
+## The optional second argument may either give the number of significant
+## digits (@var{precision}) to be used in the output or a format template
+## string (@var{format}) as in @code{sprintf} (@pxref{Formatted Output}).
+## @code{num2str} can also process complex numbers.
 ##
 ## Examples:
 ##
@@ -59,9 +60,9 @@
 ## The @code{num2str} function is not very flexible.  For better control
 ## over the results, use @code{sprintf} (@pxref{Formatted Output}).
 ##
-## For complex @var{x}, the format string may only contain one
-## output conversion specification and nothing else.  Otherwise, results
-## will be unpredictable.
+## For complex @var{x}, the format string may only contain one output
+## conversion specification and nothing else.  Otherwise, results will be
+## unpredictable.
 ## @seealso{sprintf, int2str, mat2str}
 ## @end deftypefn
 
--- a/scripts/general/pol2cart.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/general/pol2cart.m	Sun May 10 21:37:19 2015 -0700
@@ -22,17 +22,19 @@
 ## @deftypefnx {Function File} {[@var{x}, @var{y}] =} pol2cart (@var{P})
 ## @deftypefnx {Function File} {[@var{x}, @var{y}, @var{z}] =} pol2cart (@var{P})
 ## @deftypefnx {Function File} {@var{C} =} pol2cart (@dots{})
-## Transform polar or cylindrical to Cartesian coordinates.
+## Transform polar or cylindrical coordinates to Cartesian coordinates.
 ##
-## @var{theta}, @var{r}, (and @var{z}) must be the same shape, or scalar.
+## The inputs @var{theta}, @var{r}, (and @var{z}) must be the same shape, or
+## scalar.  If called with a single matrix argument then each row of @var{P}
+## represents the polar/(cylindrical) coordinate (@var{theta}, @var{r}
+## (, @var{z})).
+##
 ## @var{theta} describes the angle relative to the positive x-axis.
+##
 ## @var{r} is the distance to the z-axis (0, 0, z).
-## If called with a single matrix argument then each row of @var{P}
-## represents the polar/(cylindrical) coordinate (@var{theta}, @var{r} (,
-## @var{z})).
 ##
-## If only a single return argument is requested then return a matrix
-## @var{C} where each row represents one Cartesian coordinate
+## If only a single return argument is requested then return a matrix @var{C}
+## where each row represents one Cartesian coordinate
 ## (@var{x}, @var{y} (, @var{z})).
 ## @seealso{cart2pol, sph2cart, cart2sph}
 ## @end deftypefn
--- a/scripts/general/polyarea.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/general/polyarea.m	Sun May 10 21:37:19 2015 -0700
@@ -20,14 +20,15 @@
 ## @deftypefn  {Function File} {} polyarea (@var{x}, @var{y})
 ## @deftypefnx {Function File} {} polyarea (@var{x}, @var{y}, @var{dim})
 ##
-## Determine area of a polygon by triangle method.  The variables
-## @var{x} and @var{y} define the vertex pairs, and must therefore have
-## the same shape.  They can be either vectors or arrays.  If they are
-## arrays then the columns of @var{x} and @var{y} are treated separately
-## and an area returned for each.
+## Determine area of a polygon by triangle method.
 ##
-## If the optional @var{dim} argument is given, then @code{polyarea}
-## works along this dimension of the arrays @var{x} and @var{y}.
+## The variables @var{x} and @var{y} define the vertex pairs, and must
+## therefore have the same shape.  They can be either vectors or arrays.  If
+## they are arrays then the columns of @var{x} and @var{y} are treated
+## separately and an area returned for each.
+##
+## If the optional @var{dim} argument is given, then @code{polyarea} works
+## along this dimension of the arrays @var{x} and @var{y}.
 ##
 ## @end deftypefn
 
--- a/scripts/general/postpad.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/general/postpad.m	Sun May 10 21:37:19 2015 -0700
@@ -23,16 +23,15 @@
 ## Append the scalar value @var{c} to the vector @var{x} until it is of length
 ## @var{l}.  If @var{c} is not given, a value of 0 is used.
 ##
-## If @code{length (@var{x}) > @var{l}}, elements from the end of
-## @var{x} are removed until a vector of length @var{l} is obtained.
+## If @code{length (@var{x}) > @var{l}}, elements from the end of @var{x} are
+## removed until a vector of length @var{l} is obtained.
 ##
 ## If @var{x} is a matrix, elements are appended or removed from each row.
 ##
-## If the optional argument @var{dim} is given, operate along this
-## dimension.
+## If the optional argument @var{dim} is given, operate along this dimension.
 ##
-## If @var{dim} is larger than the dimensions of @var{x}, the result will
-## have @var{dim} dimensions.
+## If @var{dim} is larger than the dimensions of @var{x}, the result will have
+## @var{dim} dimensions.
 ## @seealso{prepad, cat, resize}
 ## @end deftypefn
 
--- a/scripts/general/prepad.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/general/prepad.m	Sun May 10 21:37:19 2015 -0700
@@ -23,16 +23,15 @@
 ## Prepend the scalar value @var{c} to the vector @var{x} until it is of length
 ## @var{l}.  If @var{c} is not given, a value of 0 is used.
 ##
-## If @code{length (@var{x}) > @var{l}}, elements from the beginning of
-## @var{x} are removed until a vector of length @var{l} is obtained.
+## If @code{length (@var{x}) > @var{l}}, elements from the beginning of @var{x}
+## are removed until a vector of length @var{l} is obtained.
 ##
 ## If @var{x} is a matrix, elements are prepended or removed from each row.
 ##
-## If the optional argument @var{dim} is given, operate along this
-## dimension.
+## If the optional argument @var{dim} is given, operate along this dimension.
 ##
-## If @var{dim} is larger than the dimensions of @var{x}, the result will
-## have @var{dim} dimensions.
+## If @var{dim} is larger than the dimensions of @var{x}, the result will have
+## @var{dim} dimensions.
 ## @seealso{postpad, cat, resize}
 ## @end deftypefn
 
--- a/scripts/general/profile.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/general/profile.m	Sun May 10 21:37:19 2015 -0700
@@ -27,34 +27,33 @@
 ##
 ## @table @code
 ## @item profile on
-## Start the profiler, clearing all previously collected data if there
-## is any.
+## Start the profiler, clearing all previously collected data if there is any.
 ##
 ## @item profile off
 ## Stop profiling.  The collected data can later be retrieved and examined
-## with calls like @code{S = profile ("info")}.
+## with @code{T = profile ("info")}.
 ##
 ## @item profile clear
 ## Clear all collected profiler data.
 ##
 ## @item profile resume
-## Restart profiling without cleaning up the old data and instead
-## all newly collected statistics are added to the already existing ones.
+## Restart profiling without clearing the old data.  All newly collected
+## statistics are added to the existing ones.
 ##
 ## @item @var{S} = profile ("status")
-## Return a structure filled with certain information about the current status
-## of the profiler.  At the moment, the only field is @code{ProfilerStatus}
-## which is either @qcode{"on"} or @qcode{"off"}.
+## Return a structure with information about the current status of the profiler.
+## At the moment, the only field is @code{ProfilerStatus} which is either
+## @qcode{"on"} or @qcode{"off"}.
 ##
 ## @item @var{T} = profile ("info")
-## Return the collected profiling statistics in the structure @var{T}.
-## The flat profile is returned in the field @code{FunctionTable} which is an
+## Return the collected profiling statistics in the structure @var{T}.  The
+## flat profile is returned in the field @code{FunctionTable} which is an
 ## array of structures, each entry corresponding to a function which was called
-## and for which profiling statistics are present.  Furthermore, the field
-## @code{Hierarchical} contains the hierarchical call-tree.  Each node
-## has an index into the @code{FunctionTable} identifying the function it
-## corresponds to as well as data fields for number of calls and time spent
-## at this level in the call-tree.
+## and for which profiling statistics are present.  In addition, the field
+## @code{Hierarchical} contains the hierarchical call tree.  Each node has an
+## index into the @code{FunctionTable} identifying the function it corresponds
+## to as well as data fields for number of calls and time spent at this level
+## in the call tree.
 ## @seealso{profshow, profexplore}
 ## @end table
 ## @end deftypefn
--- a/scripts/general/quadgk.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/general/quadgk.m	Sun May 10 21:37:19 2015 -0700
@@ -25,40 +25,33 @@
 ##
 ## Numerically evaluate the integral of @var{f} from @var{a} to @var{b}
 ## using adaptive Gauss-Konrod quadrature.
-## @var{f} is a function handle, inline function, or string
-## containing the name of the function to evaluate.
-## The formulation is based on a proposal by @nospell{L.F. Shampine},
-## @cite{"Vectorized adaptive quadrature in @sc{matlab}", Journal of
-## Computational and Applied Mathematics, pp131-140, Vol 211, Issue 2,
-## Feb 2008} where all function evaluations at an iteration are
-## calculated with a single call to @var{f}.  Therefore, the function
-## @var{f} must be vectorized and must accept a vector of input values @var{x}
-## and return an output vector representing the function evaluations at the
-## given values of @var{x}.
+##
+## @var{f} is a function handle, inline function, or string containing the name
+## of the function to evaluate.  The function @var{f} must be vectorized and
+## return a vector of output values when given a vector of input values.
 ##
 ## @var{a} and @var{b} are the lower and upper limits of integration.  Either
-## or both limits may be infinite or contain weak end singularities.
-## Variable transformation will be used to treat any infinite intervals and
-## weaken the singularities.  For example:
+## or both limits may be infinite or contain weak end singularities.  Variable
+## transformation will be used to treat any infinite intervals and weaken the
+## singularities.  For example:
 ##
 ## @example
 ## quadgk (@@(x) 1 ./ (sqrt (x) .* (x + 1)), 0, Inf)
 ## @end example
 ##
 ## @noindent
-## Note that the formulation of the integrand uses the
-## element-by-element operator @code{./} and all user functions to
-## @code{quadgk} should do the same.
+## Note that the formulation of the integrand uses the element-by-element
+## operator @code{./} and all user functions to @code{quadgk} should do the
+## same.
 ##
 ## The optional argument @var{tol} defines the absolute tolerance used to stop
-## the integration procedure.  The default value is @math{1e^{-10}}.
+## the integration procedure.  The default value is 1e-10.
 ##
-## The algorithm used by @code{quadgk} involves subdividing the
-## integration interval and evaluating each subinterval.
-## If @var{trace} is true then after computing each of these partial
-## integrals display: (1) the number of subintervals at this step,
-## (2) the current estimate of the error @var{err}, (3) the current estimate
-## for the integral @var{q}.
+## The algorithm used by @code{quadgk} involves subdividing the integration
+## interval and evaluating each subinterval.  If @var{trace} is true then after
+## computing each of these partial integrals display: (1) the number of
+## subintervals at this step, (2) the current estimate of the error @var{err},
+## (3) the current estimate for the integral @var{q}.
 ##
 ## Alternatively, properties of @code{quadgk} can be passed to the function as
 ## pairs @qcode{"@var{prop}", @var{val}}.  Valid properties are
@@ -73,18 +66,18 @@
 ## relative tolerance is 1e-5.
 ##
 ## @item MaxIntervalCount
-## @code{quadgk} initially subdivides the interval on which to perform
-## the quadrature into 10 intervals.  Subintervals that have an
-## unacceptable error are subdivided and re-evaluated.  If the number of
-## subintervals exceeds 650 subintervals at any point then a poor
-## convergence is signaled and the current estimate of the integral is
-## returned.  The property @qcode{"MaxIntervalCount"} can be used to alter the
-## number of subintervals that can exist before exiting.
+## @code{quadgk} initially subdivides the interval on which to perform the
+## quadrature into 10 intervals.  Subintervals that have an unacceptable error
+## are subdivided and re-evaluated.  If the number of subintervals exceeds 650
+## subintervals at any point then a poor convergence is signaled and the
+## current estimate of the integral is returned.  The property
+## @qcode{"MaxIntervalCount"} can be used to alter the number of subintervals
+## that can exist before exiting.
 ##
 ## @item WayPoints
 ## Discontinuities in the first derivative of the function to integrate can be
-## flagged with the @qcode{"WayPoints"} property.  This forces the ends of
-## a subinterval to fall on the breakpoints of the function and can result in
+## flagged with the @qcode{"WayPoints"} property.  This forces the ends of a
+## subinterval to fall on the breakpoints of the function and can result in
 ## significantly improved estimation of the error in the integral, faster
 ## computation, or both.  For example,
 ##
@@ -96,14 +89,14 @@
 ## signals the breakpoint in the integrand at @code{@var{x} = 1}.
 ##
 ## @item Trace
-## If logically true @code{quadgk} prints information on the
-## convergence of the quadrature at each iteration.
+## If logically true @code{quadgk} prints information on the convergence of the
+## quadrature at each iteration.
 ## @end table
 ##
 ## If any of @var{a}, @var{b}, or @var{waypoints} is complex then the
-## quadrature is treated as a contour integral along a piecewise
-## continuous path defined by the above.  In this case the integral is
-## assumed to have no edge singularities.  For example,
+## quadrature is treated as a contour integral along a piecewise continuous
+## path defined by the above.  In this case the integral is assumed to have no
+## edge singularities.  For example,
 ##
 ## @example
 ## @group
@@ -113,14 +106,20 @@
 ## @end example
 ##
 ## @noindent
-## integrates @code{log (z)} along the square defined by @code{[1+1i,
-##  1-1i, -1-1i, -1+1i]}
+## integrates @code{log (z)} along the square defined by
+## @code{[1+1i, 1-1i, -1-1i, -1+1i]}.
 ##
 ## The result of the integration is returned in @var{q}.
+##
 ## @var{err} is an approximate bound on the error in the integral
 ## @code{abs (@var{q} - @var{I})}, where @var{I} is the exact value of the
 ## integral.
 ##
+## Reference: @nospell{L.F. Shampine},
+## @cite{"Vectorized adaptive quadrature in @sc{matlab}"}, Journal of
+## Computational and Applied Mathematics, pp. 131--140, Vol 211, Issue 2,
+## Feb 2008.
+##
 ## @seealso{quad, quadv, quadl, quadcc, trapz, dblquad, triplequad}
 ## @end deftypefn
 
--- a/scripts/general/quadl.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/general/quadl.m	Sun May 10 21:37:19 2015 -0700
@@ -22,12 +22,12 @@
 ## @deftypefnx {Function File} {@var{q} =} quadl (@var{f}, @var{a}, @var{b}, @var{tol}, @var{trace})
 ## @deftypefnx {Function File} {@var{q} =} quadl (@var{f}, @var{a}, @var{b}, @var{tol}, @var{trace}, @var{p1}, @var{p2}, @dots{})
 ##
-## Numerically evaluate the integral of @var{f} from @var{a} to @var{b}
-## using an adaptive Lobatto rule.
-## @var{f} is a function handle, inline function, or string
-## containing the name of the function to evaluate.
-## The function @var{f} must be vectorized and return a vector of output values
-## if given a vector of input values.
+## Numerically evaluate the integral of @var{f} from @var{a} to @var{b} using
+## an adaptive Lobatto rule.
+##
+## @var{f} is a function handle, inline function, or string containing the name
+## of the function to evaluate.  The function @var{f} must be vectorized and
+## return a vector of output values when given a vector of input values.
 ##
 ## @var{a} and @var{b} are the lower and upper limits of integration.  Both
 ## limits must be finite.
@@ -36,10 +36,9 @@
 ## to perform the integration.  The default value is @code{eps}.
 ##
 ## The algorithm used by @code{quadl} involves recursively subdividing the
-## integration interval.
-## If @var{trace} is defined then for each subinterval display: (1) the left
-## end of the subinterval, (2) the length of the subinterval, (3) the
-## approximation of the integral over the subinterval.
+## integration interval.  If @var{trace} is defined then for each subinterval
+## display: (1) the left end of the subinterval, (2) the length of the
+## subinterval, (3) the approximation of the integral over the subinterval.
 ##
 ## Additional arguments @var{p1}, etc., are passed directly to the function
 ## @var{f}.  To use default values for @var{tol} and @var{trace}, one may pass
--- a/scripts/general/quadv.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/general/quadv.m	Sun May 10 21:37:19 2015 -0700
@@ -26,17 +26,17 @@
 ##
 ## Numerically evaluate the integral of @var{f} from @var{a} to @var{b}
 ## using an adaptive Simpson's rule.
-## @var{f} is a function handle, inline function, or string
-## containing the name of the function to evaluate.
-## @code{quadv} is a vectorized version of @code{quad} and the function
-## defined by @var{f} must accept a scalar or vector as input and return a
-## scalar, vector, or array as output.
+##
+## @var{f} is a function handle, inline function, or string containing the name
+## of the function to evaluate.  @code{quadv} is a vectorized version of
+## @code{quad} and the function defined by @var{f} must accept a scalar or
+## vector as input and return a scalar, vector, or array as output.
 ##
 ## @var{a} and @var{b} are the lower and upper limits of integration.  Both
 ## limits must be finite.
 ##
-## The optional argument @var{tol} defines the tolerance used to stop
-## the adaptation procedure.  The default value is @math{1e^{-6}}.
+## The optional argument @var{tol} defines the tolerance used to stop the
+## adaptation procedure.  The default value is 1e-6.
 ##
 ## The algorithm used by @code{quadv} involves recursively subdividing the
 ## integration interval and applying Simpson's rule on each subinterval.
@@ -49,12 +49,13 @@
 ## @var{f}.  To use default values for @var{tol} and @var{trace}, one may pass
 ## empty matrices ([]).
 ##
-## The result of the integration is returned in @var{q}.  @var{nfun} indicates
-## the number of function evaluations that were made.
+## The result of the integration is returned in @var{q}
+##
+## @var{nfun} indicates the number of function evaluations that were made.
 ##
 ## Note: @code{quadv} is written in Octave's scripting language and can be
 ## used recursively in @code{dblquad} and @code{triplequad}, unlike the
-## similar @code{quad} function.
+## @code{quad} function.
 ## @seealso{quad, quadl, quadgk, quadcc, trapz, dblquad, triplequad}
 ## @end deftypefn
 
--- a/scripts/general/randi.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/general/randi.m	Sun May 10 21:37:19 2015 -0700
@@ -26,18 +26,18 @@
 ##
 ## Additional arguments determine the shape of the return matrix.  When no
 ## arguments are specified a single random integer is returned.  If one
-## argument @var{n} is specified then a square matrix @w{(@var{n} x @var{n})} is
-## returned.  Two or more arguments will return a multi-dimensional
-## matrix @w{(@var{m} x @var{n} x @dots{})}.
+## argument @var{n} is specified then a square matrix @w{(@var{n} x @var{n})}
+## is returned.  Two or more arguments will return a multi-dimensional matrix
+## @w{(@var{m} x @var{n} x @dots{})}.
 ##
-## The integer range may optionally be described by a two element matrix
-## with a lower and upper bound in which case the returned integers will be
-## on the interval @w{[@var{imin}, @var{imax}]}.
+## The integer range may optionally be described by a two element matrix with a
+## lower and upper bound in which case the returned integers will be on the
+## interval @w{[@var{imin}, @var{imax}]}.
 ##
 ## The optional argument @var{class} will return a matrix of the requested
 ## type.  The default is @qcode{"double"}.
 ##
-## The following example returns 150 integers in the range 1-10.
+## The following example returns 150 integers in the range 1--10.
 ##
 ## @example
 ## ri = randi (10, 150, 1)
--- a/scripts/general/rat.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/general/rat.m	Sun May 10 21:37:19 2015 -0700
@@ -20,8 +20,10 @@
 ## @deftypefn  {Function File} {@var{s} =} rat (@var{x}, @var{tol})
 ## @deftypefnx {Function File} {[@var{n}, @var{d}] =} rat (@var{x}, @var{tol})
 ##
-## Find a rational approximation to @var{x} within the tolerance defined
-## by @var{tol} using a continued fraction expansion.  For example:
+## Find a rational approximation to @var{x} within the tolerance defined by
+## @var{tol} using a continued fraction expansion.
+##
+## For example:
 ##
 ## @example
 ## @group
@@ -31,8 +33,8 @@
 ## @end group
 ## @end example
 ##
-## Called with two arguments returns the numerator and denominator separately
-## as two matrices.
+## When called with two output arguments return the numerator and denominator
+## separately as two matrices.
 ## @seealso{rats}
 ## @end deftypefn
 
--- a/scripts/general/repmat.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/general/repmat.m	Sun May 10 21:37:19 2015 -0700
@@ -25,10 +25,12 @@
 ## @deftypefnx {Function File} {} repmat (@var{A}, [@var{m} @var{n}])
 ## @deftypefnx {Function File} {} repmat (@var{A}, [@var{m} @var{n} @var{p} @dots{}])
 ## Form a block matrix of size @var{m} by @var{n}, with a copy of matrix
-## @var{A} as each element.  If @var{n} is not specified, form an
-## @var{m} by @var{m} block matrix.  For copying along more than two
-## dimensions, specify the number of times to copy across each dimension
-## @var{m}, @var{n}, @var{p}, @dots{}, in a vector in the second argument.
+## @var{A} as each element.
+##
+## If @var{n} is not specified, form an @var{m} by @var{m} block matrix.  For
+## copying along more than two dimensions, specify the number of times to copy
+## across each dimension @var{m}, @var{n}, @var{p}, @dots{}, in a vector in the
+## second argument.
 ## @seealso{repelems}
 ## @end deftypefn
 
--- a/scripts/general/rot90.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/general/rot90.m	Sun May 10 21:37:19 2015 -0700
@@ -22,9 +22,11 @@
 ## Rotate array by 90 degree increments.
 ##
 ## Return a copy of @var{A} with the elements rotated counterclockwise in
-## 90-degree increments.  The second argument is optional, and specifies
-## how many 90-degree rotations are to be applied (the default value is 1).
-## Negative values of @var{k} rotate the matrix in a clockwise direction.
+## 90-degree increments.
+##
+## The second argument is optional, and specifies how many 90-degree rotations
+## are to be applied (the default value is 1).  Negative values of @var{k}
+## rotate the matrix in a clockwise direction.
 ## For example,
 ##
 ## @example
--- a/scripts/general/rotdim.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/general/rotdim.m	Sun May 10 21:37:19 2015 -0700
@@ -22,14 +22,16 @@
 ## @deftypefnx {Function File} {} rotdim (@var{x}, @var{n}, @var{plane})
 ## Return a copy of @var{x} with the elements rotated counterclockwise in
 ## 90-degree increments.
+##
 ## The second argument @var{n} is optional, and specifies how many 90-degree
-## rotations are to be applied (the default value is 1).
-## The third argument is also optional and defines the plane of the
-## rotation.  If present, @var{plane} is a two element vector containing two
-## different valid dimensions of the matrix.  When @var{plane} is not given
-## the first two non-singleton dimensions are used.
+## rotations are to be applied (the default value is 1).  Negative values of
+## @var{n} rotate the matrix in a clockwise direction.
 ##
-## Negative values of @var{n} rotate the matrix in a clockwise direction.
+## The third argument is also optional and defines the plane of the rotation.
+## If present, @var{plane} is a two element vector containing two different
+## valid dimensions of the matrix.  When @var{plane} is not given the first two
+## non-singleton dimensions are used.
+##
 ## For example,
 ##
 ## @example
--- a/scripts/general/saveobj.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/general/saveobj.m	Sun May 10 21:37:19 2015 -0700
@@ -19,6 +19,7 @@
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {@var{b} =} saveobj (@var{a})
 ## Method of a class to manipulate an object prior to saving it to a file.
+##
 ## The function @code{saveobj} is called when the object @var{a} is saved
 ## using the @code{save} function.  An example of the use of @code{saveobj}
 ## might be to remove fields of the object that don't make sense to be saved
--- a/scripts/general/shift.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/general/shift.m	Sun May 10 21:37:19 2015 -0700
@@ -23,8 +23,8 @@
 ## the elements of @var{x}.
 ##
 ## If @var{x} is a matrix, do the same for each column of @var{x}.
-## If the optional @var{dim} argument is given, operate along this
-## dimension.
+##
+## If the optional @var{dim} argument is given, operate along this dimension.
 ## @end deftypefn
 
 ## Author: AW <Andreas.Weingessel@ci.tuwien.ac.at>
--- a/scripts/general/shiftdim.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/general/shiftdim.m	Sun May 10 21:37:19 2015 -0700
@@ -20,15 +20,16 @@
 ## @deftypefn  {Function File} {@var{y} =} shiftdim (@var{x}, @var{n})
 ## @deftypefnx {Function File} {[@var{y}, @var{ns}] =} shiftdim (@var{x})
 ## Shift the dimensions of @var{x} by @var{n}, where @var{n} must be
-## an integer scalar.  When @var{n} is positive, the dimensions of
-## @var{x} are shifted to the left, with the leading dimensions
-## circulated to the end.  If @var{n} is negative, then the dimensions
-## of @var{x} are shifted to the right, with @var{n} leading singleton
-## dimensions added.
+## an integer scalar.
+##
+## When @var{n} is positive, the dimensions of @var{x} are shifted to the left,
+## with the leading dimensions circulated to the end.  If @var{n} is negative,
+## then the dimensions of @var{x} are shifted to the right, with @var{n}
+## leading singleton dimensions added.
 ##
 ## Called with a single argument, @code{shiftdim}, removes the leading
-## singleton dimensions, returning the number of dimensions removed
-## in the second output argument @var{ns}.
+## singleton dimensions, returning the number of dimensions removed in the
+## second output argument @var{ns}.
 ##
 ## For example:
 ##
--- a/scripts/general/sortrows.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/general/sortrows.m	Sun May 10 21:37:19 2015 -0700
@@ -20,11 +20,12 @@
 ## -*- texinfo -*-
 ## @deftypefn  {Function File} {[@var{s}, @var{i}] =} sortrows (@var{A})
 ## @deftypefnx {Function File} {[@var{s}, @var{i}] =} sortrows (@var{A}, @var{c})
-## Sort the rows of the matrix @var{A} according to the order of the
-## columns specified in @var{c}.  If @var{c} is omitted, a
-## lexicographical sort is used.  By default ascending order is used
-## however if elements of @var{c} are negative then the corresponding
-## column is sorted in descending order.
+## Sort the rows of the matrix @var{A} according to the order of the columns
+## specified in @var{c}.
+##
+## If @var{c} is omitted, a lexicographical sort is used.  By default ascending
+## order is used however if elements of @var{c} are negative then the
+## corresponding column is sorted in descending order.
 ## @seealso{sort}
 ## @end deftypefn
 
--- a/scripts/general/sph2cart.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/general/sph2cart.m	Sun May 10 21:37:19 2015 -0700
@@ -20,17 +20,20 @@
 ## @deftypefn  {Function File} {[@var{x}, @var{y}, @var{z}] =} sph2cart (@var{theta}, @var{phi}, @var{r})
 ## @deftypefnx {Function File} {[@var{x}, @var{y}, @var{z}] =} sph2cart (@var{S})
 ## @deftypefnx {Function File} {@var{C} =} sph2cart (@dots{})
-## Transform spherical to Cartesian coordinates.
+## Transform spherical coordinates to Cartesian coordinates.
+##
+## The inputs @var{theta}, @var{phi}, and @var{r} must be the same shape, or
+## scalar.  If called with a single matrix argument then each row of @var{S}
+## represents the spherical coordinate (@var{theta}, @var{phi}, @var{r}).
 ##
 ## @var{theta} describes the angle relative to the positive x-axis.
+##
 ## @var{phi} is the angle relative to the xy-plane.
+##
 ## @var{r} is the distance to the origin @w{(0, 0, 0)}.
-## @var{theta}, @var{phi}, and @var{r} must be the same shape, or scalar.
-## If called with a single matrix argument then each row of @var{S}
-## represents the spherical coordinate (@var{theta}, @var{phi}, @var{r}).
 ##
-## If only a single return argument is requested then return a matrix
-## @var{C} where each row represents one Cartesian coordinate
+## If only a single return argument is requested then return a matrix @var{C}
+## where each row represents one Cartesian coordinate
 ## (@var{x}, @var{y}, @var{z}).
 ## @seealso{cart2sph, pol2cart, cart2pol}
 ## @end deftypefn
--- a/scripts/general/structfun.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/general/structfun.m	Sun May 10 21:37:19 2015 -0700
@@ -27,18 +27,17 @@
 ## @var{S}.  The fields of @var{S} are passed to the function @var{func}
 ## individually.
 ##
-## @code{structfun} accepts an arbitrary function @var{func} in the form of
-## an inline function, function handle, or the name of a function (in a
-## character string).  In the case of a character string argument, the
-## function must accept a single argument named @var{x}, and it must return
-## a string value.  If the function returns more than one argument, they are
-## returned as separate output variables.
+## @code{structfun} accepts an arbitrary function @var{func} in the form of an
+## inline function, function handle, or the name of a function (in a character
+## string).  In the case of a character string argument, the function must
+## accept a single argument named @var{x}, and it must return a string value.
+## If the function returns more than one argument, they are returned as
+## separate output variables.
 ##
-## If the parameter @qcode{"UniformOutput"} is set to true (the default),
-## then the function must return a single element which will be concatenated
-## into the return value.  If @qcode{"UniformOutput"} is false, the outputs
-## are placed into a structure with the same fieldnames as the input
-## structure.
+## If the parameter @qcode{"UniformOutput"} is set to true (the default), then
+## the function must return a single element which will be concatenated into
+## the return value.  If @qcode{"UniformOutput"} is false, the outputs are
+## placed into a structure with the same fieldnames as the input structure.
 ##
 ## @example
 ## @group
@@ -54,9 +53,8 @@
 ## @end group
 ## @end example
 ##
-## Given the parameter @qcode{"ErrorHandler"}, @var{errfunc} defines a
-## function to call in case @var{func} generates an error.  The form of the
-## function is
+## Given the parameter @qcode{"ErrorHandler"}, @var{errfunc} defines a function
+## to call in case @var{func} generates an error.  The form of the function is
 ##
 ## @example
 ## function [@dots{}] = errfunc (@var{se}, @dots{})
--- a/scripts/general/subsindex.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/general/subsindex.m	Sun May 10 21:37:19 2015 -0700
@@ -18,12 +18,13 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {@var{idx} =} subsindex (@var{a})
-## Convert an object to an index vector.  When @var{a} is a class object
-## defined with a class constructor, then @code{subsindex} is the
-## overloading method that allows the conversion of this class object to
-## a valid indexing vector.  It is important to note that
-## @code{subsindex} must return a zero-based real integer vector of the
-## class @qcode{"double"}.  For example, if the class constructor
+## Convert an object to an index vector.
+##
+## When @var{a} is a class object defined with a class constructor, then
+## @code{subsindex} is the overloading method that allows the conversion of
+## this class object to a valid indexing vector.  It is important to note that
+## @code{subsindex} must return a zero-based real integer vector of the class
+## @qcode{"double"}.  For example, if the class constructor
 ##
 ## @example
 ## @group
--- a/scripts/general/trapz.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/general/trapz.m	Sun May 10 21:37:19 2015 -0700
@@ -23,19 +23,21 @@
 ##
 ## Numerically evaluate the integral of points @var{y} using the trapezoidal
 ## method.
+##
 ## @w{@code{trapz (@var{y})}} computes the integral of @var{y} along the first
-## non-singleton dimension.  When the argument @var{x} is omitted an
-## equally spaced @var{x} vector with unit spacing (1) is assumed.
-## @code{trapz (@var{x}, @var{y})} evaluates the integral with respect
-## to the spacing in @var{x} and the values in @var{y}.  This is useful if
-## the points in @var{y} have been sampled unevenly.
+## non-singleton dimension.  When the argument @var{x} is omitted an equally
+## spaced @var{x} vector with unit spacing (1) is assumed.
+## @code{trapz (@var{x}, @var{y})} evaluates the integral with respect to the
+## spacing in @var{x} and the values in @var{y}.  This is useful if the points
+## in @var{y} have been sampled unevenly.
+##
 ## If the optional @var{dim} argument is given, operate along this dimension.
 ##
-## If @var{x} is not specified then unit spacing will be used.  To scale
-## the integral to the correct value you must multiply by the actual spacing
-## value (deltaX).  As an example, the integral of @math{x^3} over the range
-## [0, 1] is @math{x^4/4} or 0.25.  The following code uses @code{trapz} to
-## calculate the integral in three different ways.
+## Application Note: If @var{x} is not specified then unit spacing will be
+## used.  To scale the integral to the correct value you must multiply by the
+## actual spacing value (deltaX).  As an example, the integral of @math{x^3}
+## over the range [0, 1] is @math{x^4/4} or 0.25.  The following code uses
+## @code{trapz} to calculate the integral in three different ways.
 ##
 ## @example
 ## @group
--- a/scripts/general/triplequad.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/general/triplequad.m	Sun May 10 21:37:19 2015 -0700
@@ -22,18 +22,19 @@
 ## @deftypefnx {Function File} {} triplequad (@var{f}, @var{xa}, @var{xb}, @var{ya}, @var{yb}, @var{za}, @var{zb}, @var{tol}, @var{quadf})
 ## @deftypefnx {Function File} {} triplequad (@var{f}, @var{xa}, @var{xb}, @var{ya}, @var{yb}, @var{za}, @var{zb}, @var{tol}, @var{quadf}, @dots{})
 ## Numerically evaluate the triple integral of @var{f}.
-## @var{f} is a function handle, inline function, or string
-## containing the name of the function to evaluate.  The function @var{f} must
-## have the form @math{w = f(x,y,z)} where either @var{x} or @var{y} is a
-## vector and the remaining inputs are scalars.  It should return a vector of
-## the same length and orientation as @var{x} or @var{y}.
+##
+## @var{f} is a function handle, inline function, or string containing the name
+## of the function to evaluate.  The function @var{f} must have the form
+## @math{w = f(x,y,z)} where either @var{x} or @var{y} is a vector and the
+## remaining inputs are scalars.  It should return a vector of the same length
+## and orientation as @var{x} or @var{y}.
 ##
 ## @var{xa}, @var{ya}, @var{za} and @var{xb}, @var{yb}, @var{zb} are the lower
 ## and upper limits of integration for x, y, and z respectively.  The
 ## underlying integrator determines whether infinite bounds are accepted.
 ##
 ## The optional argument @var{tol} defines the absolute tolerance used to
-## integrate each sub-integral.  The default value is @math{1e^{-6}}.
+## integrate each sub-integral.  The default value is 1e-6.
 ##
 ## The optional argument @var{quadf} specifies which underlying integrator
 ## function to use.  Any choice but @code{quad} is available and the default
--- a/scripts/geometry/delaunayn.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/geometry/delaunayn.m	Sun May 10 21:37:19 2015 -0700
@@ -20,13 +20,14 @@
 ## @deftypefn  {Function File} {@var{T} =} delaunayn (@var{pts})
 ## @deftypefnx {Function File} {@var{T} =} delaunayn (@var{pts}, @var{options})
 ## Compute the Delaunay triangulation for an N-dimensional set of points.
-## The Delaunay triangulation is a tessellation of the convex hull of a set
-## of points such that no N-sphere defined by the N-triangles contains
-## any other points from the set.
+##
+## The Delaunay triangulation is a tessellation of the convex hull of a set of
+## points such that no N-sphere defined by the N-triangles contains any other
+## points from the set.
 ##
 ## The input matrix @var{pts} of size [n, dim] contains n points in a space of
-## dimension dim.  The return matrix @var{T} has size [m, dim+1].  Each row
-## of @var{T} contains a set of indices back into the original set of points
+## dimension dim.  The return matrix @var{T} has size [m, dim+1].  Each row of
+## @var{T} contains a set of indices back into the original set of points
 ## @var{pts} which describes a simplex of dimension dim.  For example, a 2-D
 ## simplex is a triangle and 3-D simplex is a tetrahedron.
 ##
--- a/scripts/geometry/dsearch.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/geometry/dsearch.m	Sun May 10 21:37:19 2015 -0700
@@ -19,9 +19,10 @@
 ## -*- texinfo -*-
 ## @deftypefn  {Function File} {@var{idx} =} dsearch (@var{x}, @var{y}, @var{tri}, @var{xi}, @var{yi})
 ## @deftypefnx {Function File} {@var{idx} =} dsearch (@var{x}, @var{y}, @var{tri}, @var{xi}, @var{yi}, @var{s})
-## Return the index @var{idx} or the closest point in @code{@var{x}, @var{y}}
-## to the elements @code{[@var{xi}(:), @var{yi}(:)]}.  The variable @var{s} is
-## accepted for compatibility but is ignored.
+## Return the index @var{idx} of the closest point in @code{@var{x}, @var{y}}
+## to the elements @code{[@var{xi}(:), @var{yi}(:)]}.
+##
+## The variable @var{s} is accepted for compatibility but is ignored.
 ## @seealso{dsearchn, tsearch}
 ## @end deftypefn
 
--- a/scripts/geometry/dsearchn.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/geometry/dsearchn.m	Sun May 10 21:37:19 2015 -0700
@@ -21,11 +21,12 @@
 ## @deftypefnx {Function File} {@var{idx} =} dsearchn (@var{x}, @var{tri}, @var{xi}, @var{outval})
 ## @deftypefnx {Function File} {@var{idx} =} dsearchn (@var{x}, @var{xi})
 ## @deftypefnx {Function File} {[@var{idx}, @var{d}] =} dsearchn (@dots{})
-## Return the index @var{idx} or the closest point in @var{x} to the elements
-## @var{xi}.  If @var{outval} is supplied, then the values of @var{xi} that are
-## not contained within one of the simplices @var{tri} are set to
-## @var{outval}.  Generally, @var{tri} is returned from @code{delaunayn
-## (@var{x})}.
+## Return the index @var{idx} of the closest point in @var{x} to the elements
+## @var{xi}.
+##
+## If @var{outval} is supplied, then the values of @var{xi} that are not
+## contained within one of the simplices @var{tri} are set to @var{outval}.
+## Generally, @var{tri} is returned from @code{delaunayn (@var{x})}.
 ## @seealso{dsearch, tsearch}
 ## @end deftypefn
 
--- a/scripts/geometry/griddata.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/geometry/griddata.m	Sun May 10 21:37:19 2015 -0700
@@ -22,12 +22,13 @@
 ## @deftypefnx {Function File} {[@var{xi}, @var{yi}, @var{zi}] =} griddata (@dots{})
 ##
 ## Generate a regular mesh from irregular data using interpolation.
-## The function is defined by @code{@var{z} = f (@var{x}, @var{y})}.
-## Inputs @code{@var{x}, @var{y}, @var{z}} are vectors of the same length
-## or @code{@var{x}, @var{y}} are vectors and @code{@var{z}} is matrix.
 ##
-## The interpolation points are all @code{(@var{xi}, @var{yi})}.  If
-## @var{xi}, @var{yi} are vectors then they are made into a 2-D mesh.
+## The function is defined by @code{@var{z} = f (@var{x}, @var{y})}.  Inputs
+## @code{@var{x}, @var{y}, @var{z}} are vectors of the same length or
+## @code{@var{x}, @var{y}} are vectors and @code{@var{z}} is matrix.
+##
+## The interpolation points are all @code{(@var{xi}, @var{yi})}.  If @var{xi},
+## @var{yi} are vectors then they are made into a 2-D mesh.
 ##
 ## The interpolation method can be @qcode{"nearest"}, @qcode{"cubic"} or
 ## @qcode{"linear"}.  If method is omitted it defaults to @qcode{"linear"}.
--- a/scripts/geometry/griddata3.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/geometry/griddata3.m	Sun May 10 21:37:19 2015 -0700
@@ -22,6 +22,7 @@
 ## @deftypefnx {Function File} {@var{vi} =} griddata3 (@var{x}, @var{y}, @var{z}, @var{v}, @var{xi}, @var{yi}, @var{zi}, @var{method}, @var{options})
 ##
 ## Generate a regular mesh from irregular data using interpolation.
+##
 ## The function is defined by @code{@var{v} = f (@var{x}, @var{y}, @var{z})}.
 ## The interpolation points are specified by @var{xi}, @var{yi}, @var{zi}.
 ##
--- a/scripts/geometry/griddatan.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/geometry/griddatan.m	Sun May 10 21:37:19 2015 -0700
@@ -22,6 +22,7 @@
 ## @deftypefnx {Function File} {@var{yi} =} griddatan (@var{x}, @var{y}, @var{xi}, @var{method}, @var{options})
 ##
 ## Generate a regular mesh from irregular data using interpolation.
+##
 ## The function is defined by @code{@var{y} = f (@var{x})}.
 ## The interpolation points are all @var{xi}.
 ##
--- a/scripts/geometry/inpolygon.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/geometry/inpolygon.m	Sun May 10 21:37:19 2015 -0700
@@ -25,9 +25,10 @@
 ## true if the points @code{(@var{x}, @var{y})} are inside (or on the boundary)
 ## of the polygon; Otherwise, return false.
 ##
-## The variables @var{x}, @var{y}, must have the same dimension.  The optional
-## output @var{on} returns true if the points are exactly on the polygon
-## edge, and false otherwise.
+## The input variables @var{x} and @var{y}, must have the same dimension.
+##
+## The optional output @var{on} returns true if the points are exactly on the
+## polygon edge, and false otherwise.
 ## @seealso{delaunay}
 ## @end deftypefn
 
--- a/scripts/geometry/rectint.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/geometry/rectint.m	Sun May 10 21:37:19 2015 -0700
@@ -18,23 +18,22 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {@var{area} =} rectint (@var{a}, @var{b})
-## Compute area or volume of intersection of rectangles or ND boxes.
+## Compute area or volume of intersection of rectangles or N-D boxes.
+##
+## Compute the area of intersection of rectangles in @var{a} and rectangles in
+## @var{b}.  N-dimensional boxes are supported in which case the volume, or
+## hypervolume is computed according to the number of dimensions.
 ##
-## Compute the area of intersection of rectangles in @var{a} and
-## rectangles in @var{b}.  N dimensional boxes are supported in which
-## case the volume, or hypervolume is computed according to the number
-## of dimensions.
-##
-## 2 dimensional rectangles are defined as @code{[xpos ypos width height]}
-## where xpos and ypos are the position of the bottom left corner.
-## Higher dimensions are supported where the coordinates for the minimum
-## value of each dimension follow the length of the box in that dimension,
-## e.g., @code{[xpos ypos zpos kpos @dots{} width height depth k_length @dots{}]}.
+## 2-dimensional rectangles are defined as @code{[xpos ypos width height]}
+## where xpos and ypos are the position of the bottom left corner.  Higher
+## dimensions are supported where the coordinates for the minimum value of each
+## dimension follow the length of the box in that dimension, e.g.,
+## @code{[xpos ypos zpos kpos @dots{} width height depth k_length @dots{}]}.
 ##
 ## Each row of @var{a} and @var{b} define a rectangle, and if both define
-## multiple rectangles, then the output, @var{area}, is a matrix where
-## the i-th row corresponds to the i-th row of a and the j-th column
-## corresponds to the j-th row of b.
+## multiple rectangles, then the output, @var{area}, is a matrix where the i-th
+## row corresponds to the i-th row of a and the j-th column corresponds to the
+## j-th row of b.
 ##
 ## @seealso{polyarea}
 ## @end deftypefn
--- a/scripts/geometry/tsearchn.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/geometry/tsearchn.m	Sun May 10 21:37:19 2015 -0700
@@ -17,10 +17,14 @@
 ## <http://www.gnu.org/licenses/>.
 
 ## -*- texinfo -*-
-## @deftypefn {Function File} {[@var{idx}, @var{p}] =} tsearchn (@var{x}, @var{t}, @var{xi})
-## Search for the enclosing Delaunay convex hull.  For @code{@var{t} =
-## delaunayn (@var{x})}, finds the index in @var{t} containing the
-## points @var{xi}.  For points outside the convex hull, @var{idx} is NaN.
+## @deftypefn  {Function File} {@var{idx} =} tsearchn (@var{x}, @var{t}, @var{xi})
+## @deftypefnx {Function File} {[@var{idx}, @var{p}] =} tsearchn (@var{x}, @var{t}, @var{xi})
+## Search for the enclosing Delaunay convex hull.
+##
+## For @code{@var{t} = delaunayn (@var{x})}, finds the index in @var{t}
+## containing the points @var{xi}.  For points outside the convex hull,
+## @var{idx} is NaN.
+##
 ## If requested @code{tsearchn} also returns the Barycentric coordinates @var{p}
 ## of the enclosing triangles.
 ## @seealso{delaunay, delaunayn}
--- a/scripts/geometry/voronoi.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/geometry/voronoi.m	Sun May 10 21:37:19 2015 -0700
@@ -24,20 +24,23 @@
 ## @deftypefnx {Function File} {@var{h} =} voronoi (@dots{})
 ## @deftypefnx {Function File} {[@var{vx}, @var{vy}] =} voronoi (@dots{})
 ## Plot the Voronoi diagram of points @code{(@var{x}, @var{y})}.
+##
 ## The Voronoi facets with points at infinity are not drawn.
 ##
-## If @qcode{"linespec"} is given it is used to set the color and line style
-## of the plot.  If an axis graphics handle @var{hax} is supplied then the
-## Voronoi diagram is drawn on the specified axis rather than in a new
-## figure.
-##
 ## The @var{options} argument, which must be a string or cell array of strings,
 ## contains options passed to the underlying qhull command.
 ## See the documentation for the Qhull library for details
 ## @url{http://www.qhull.org/html/qh-quick.htm#options}.
 ##
+## If @qcode{"linespec"} is given it is used to set the color and line style of
+## the plot.
+##
+## If an axis graphics handle @var{hax} is supplied then the Voronoi diagram is
+## drawn on the specified axis rather than in a new figure.
+##
 ## If a single output argument is requested then the Voronoi diagram will be
 ## plotted and a graphics handle @var{h} to the plot is returned.
+##
 ## [@var{vx}, @var{vy}] = voronoi (@dots{}) returns the Voronoi vertices
 ## instead of plotting the diagram.
 ##
--- a/scripts/geometry/voronoin.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/geometry/voronoin.m	Sun May 10 21:37:19 2015 -0700
@@ -19,8 +19,11 @@
 ## -*- texinfo -*-
 ## @deftypefn  {Function File} {[@var{C}, @var{F}] =} voronoin (@var{pts})
 ## @deftypefnx {Function File} {[@var{C}, @var{F}] =} voronoin (@var{pts}, @var{options})
-## Compute N-dimensional Voronoi facets.  The input matrix @var{pts}
-## of size [n, dim] contains n points in a space of dimension dim.
+## Compute N-dimensional Voronoi facets.
+##
+## The input matrix @var{pts} of size [n, dim] contains n points in a space of
+## dimension dim.
+##
 ## @var{C} contains the points of the Voronoi facets.  The list @var{F}
 ## contains, for each facet, the indices of the Voronoi points.
 ##
--- a/scripts/gui/errordlg.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/gui/errordlg.m	Sun May 10 21:37:19 2015 -0700
@@ -22,10 +22,11 @@
 ## @deftypefnx {Function File} {@var{h} =} errordlg (@var{msg}, @var{title}, @var{createmode})
 ## Display @var{msg} using an error dialog box.
 ##
-## The message may have multiple lines separated by newline characters
-## ("\n"), or it may be a cellstr array with one element for each
-## line.  The optional input @var{title} (character string) can be used to
-## set the dialog caption.  The default title is @qcode{"Error Dialog"}.
+## The message may have multiple lines separated by newline characters ("\n"),
+## or it may be a cellstr array with one element for each line.
+##
+## The optional input @var{title} (character string) can be used to set the
+## dialog caption.  The default title is @qcode{"Error Dialog"}.
 ##
 ## The return value is always 1.
 ##
--- a/scripts/gui/helpdlg.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/gui/helpdlg.m	Sun May 10 21:37:19 2015 -0700
@@ -23,7 +23,9 @@
 ##
 ## The message may have multiple lines separated by newline characters
 ## ("\n"), or it may be a cellstr array with one element for each
-## line.  The optional input @var{title} (character string) can be used to
+## line.
+##
+## The optional input @var{title} (character string) can be used to
 ## set the dialog caption.  The default title is @qcode{"Help Dialog"}.
 ##
 ## The return value is always 1.
--- a/scripts/gui/inputdlg.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/gui/inputdlg.m	Sun May 10 21:37:19 2015 -0700
@@ -21,9 +21,9 @@
 ## @deftypefnx {Function File} {@var{cstr} =} inputdlg (@var{prompt}, @var{title})
 ## @deftypefnx {Function File} {@var{cstr} =} inputdlg (@var{prompt}, @var{title}, @var{rowscols})
 ## @deftypefnx {Function File} {@var{cstr} =} inputdlg (@var{prompt}, @var{title}, @var{rowscols}, @var{defaults})
-## Return user input from a multi-textfield dialog box in a cell array
-## of strings, or an empty cell array if the dialog is closed by the
-## Cancel button.
+## Return user input from a multi-textfield dialog box in a cell array of
+## strings, or an empty cell array if the dialog is closed by the Cancel
+## button.
 ##
 ## Inputs:
 ##
@@ -32,28 +32,23 @@
 ## A cell array with strings labeling each text field.  This input is required.
 ##
 ## @item title
-## String to use for the caption of the dialog.  The default is @qcode{"Input
-## Dialog"}.
+## String to use for the caption of the dialog.  The default is
+## @qcode{"Input Dialog"}.
 ##
 ## @item rowscols
 ## Specifies the size of the text fields and can take three forms:
 ##
 ## @enumerate
-## @item a scalar value which defines the number of rows used for each
-## text field.
+## @item a scalar value which defines the number of rows used for each text field.
 ##
-## @item a vector which defines the individual number of rows
-## used for each text field.
+## @item a vector which defines the individual number of rows used for each text field.
 ##
-## @item a matrix which defines the individual number of rows and
-## columns used for each text field.  In the matrix each row describes
-## a single text field.  The first column specifies the number of input
-## rows to use and the second column specifies the text field width.
+## @item a matrix which defines the individual number of rows and columns used for each text field.  In the matrix each row describes a single text field.  The first column specifies the number of input rows to use and the second column specifies the text field width.
 ## @end enumerate
 ##
 ## @item defaults
-## A list of default values to place in each text fields.  It must be
-## a cell array of strings with the same size as @var{prompt}.
+## A list of default values to place in each text fields.  It must be a cell
+## array of strings with the same size as @var{prompt}.
 ## @end table
 ## @seealso{errordlg, helpdlg, listdlg, msgbox, questdlg, warndlg}
 ## @end deftypefn
--- a/scripts/gui/listdlg.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/gui/listdlg.m	Sun May 10 21:37:19 2015 -0700
@@ -18,11 +18,12 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {[@var{sel}, @var{ok}] =} listdlg (@var{key}, @var{value}, @dots{})
-## Return user inputs from a list dialog box in a vector of
-## selection indices @var{sel} and a flag @var{ok} indicating how the
-## user closed the dialog box.  The value of @var{ok} is 1 if the user
-## closed the box with the OK button, otherwise it is 0 and @var{sel} is
-## empty.
+## Return user inputs from a list dialog box in a vector of selection indices
+## @var{sel} and a flag @var{ok} indicating how the user closed the dialog
+## box.
+##
+## The value of @var{ok} is 1 if the user closed the box with the OK button,
+## otherwise it is 0 and @var{sel} is empty.
 ##
 ## The indices in @var{sel} are 1-based.
 ##
@@ -39,19 +40,19 @@
 ## can be either @qcode{"Single"} or @qcode{"Multiple"} (default).
 ##
 ## @item @qcode{"ListSize"}
-## a vector with two elements @var{width} and @var{height} defining
-## the size of the list field in pixels.  Default is [160 300].
+## a vector with two elements @var{width} and @var{height} defining the size
+## of the list field in pixels.  Default is [160 300].
 ##
 ## @item @qcode{"InitialValue"}
-## a vector containing 1-based indices of preselected elements.  Default
-## is 1 (first item).
+## a vector containing 1-based indices of preselected elements.
+## Default is 1 (first item).
 ##
 ## @item @qcode{"Name"}
 ## a string to be used as the dialog caption.  Default is "".
 ##
 ## @item @qcode{"PromptString"}
-## a cell array of strings to be displayed above the list field.  Default
-## is @{@}.
+## a cell array of strings to be displayed above the list field.
+## Default is @{@}.
 ##
 ## @item @qcode{"OKString"}
 ## a string used to label the OK button.  Default is @qcode{"OK"}.
--- a/scripts/gui/msgbox.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/gui/msgbox.m	Sun May 10 21:37:19 2015 -0700
@@ -23,20 +23,21 @@
 ## @deftypefnx {Function File} {@var{h} =} msgbox (@dots{}, @var{createmode})
 ## Display @var{msg} using a message dialog box.
 ##
-## The message may have multiple lines separated by newline characters
-## ("\n"), or it may be a cellstr array with one element for each
-## line.  The optional input @var{title} (character string) can be used to
-## decorate the dialog caption.
+## The message may have multiple lines separated by newline characters ("\n"),
+## or it may be a cellstr array with one element for each line.
+##
+## The optional input @var{title} (character string) can be used to decorate
+## the dialog caption.
 ##
 ## The optional argument @var{icon} selects a dialog icon.
-## It can be one of @qcode{"none"} (default), @qcode{"error"},
-## @qcode{"help"}, or @qcode{"warn"}.
+## It can be one of @qcode{"none"} (default), @qcode{"error"}, @qcode{"help"},
+## or @qcode{"warn"}.
 ##
 ## The return value is always 1.
 ##
 ## Compatibility Note: The optional argument @var{createmode} is accepted for
 ## @sc{matlab} compatibility, but is not implemented.
-#
+## 
 ## @seealso{errordlg, helpdlg, inputdlg, listdlg, questdlg, warndlg}
 ## @end deftypefn
 
--- a/scripts/gui/private/__get_funcname__.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/gui/private/__get_funcname__.m	Sun May 10 21:37:19 2015 -0700
@@ -20,7 +20,7 @@
 ## @deftypefn {Function File} {@var{funcname} =} __get_funcname__ (@var{basename})
 ## Internal function.
 ##
-## Build function name for the current graphics toolkit according to schema
+## Build function name for the current graphics toolkit according to the schema
 ## __[basename]_[graphics_toolkit]__, use fltk as default.
 ## @end deftypefn
 
--- a/scripts/gui/private/__uiobject_split_args__.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/gui/private/__uiobject_split_args__.m	Sun May 10 21:37:19 2015 -0700
@@ -18,6 +18,7 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {[@var{p}, @var{args}] =} __uiobject_split_args__ (@var{who}, @var{args}, @var{parent_type}, @var{use_gcf})
+## Undocumented internal function.
 ## @end deftypefn
 
 ## Author: goffioul
--- a/scripts/gui/questdlg.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/gui/questdlg.m	Sun May 10 21:37:19 2015 -0700
@@ -22,27 +22,26 @@
 ## @deftypefnx {Function File} {@var{btn} =} questdlg (@var{msg}, @var{title}, @var{default})
 ## @deftypefnx {Function File} {@var{btn} =} questdlg (@var{msg}, @var{title}, @var{btn1}, @var{btn2}, @var{default})
 ## @deftypefnx {Function File} {@var{btn} =} questdlg (@var{msg}, @var{title}, @var{btn1}, @var{btn2}, @var{btn3}, @var{default})
-## Display @var{msg} using a question dialog box and return the caption
-## of the activated button.
+## Display @var{msg} using a question dialog box and return the caption of
+## the activated button.
 ##
 ## The dialog may contain two or three buttons which will all close the dialog.
 ##
-## The message may have multiple lines separated by newline characters
-## ("\n"), or it may be a cellstr array with one element for each
-## line.  The optional @var{title} (character string) can be used to
-## decorate the dialog caption.
+## The message may have multiple lines separated by newline characters ("\n"),
+## or it may be a cellstr array with one element for each line.
+##
+## The optional @var{title} (character string) can be used to decorate the
+## dialog caption.
 ##
-## The string @var{default} identifies the default button,
-## which is activated by pressing the @key{ENTER} key.
-## It must match one of the strings given in @var{btn1}, @var{btn2}, or
-## @var{btn3}.
+## The string @var{default} identifies the default button, which is activated
+## by pressing the @key{ENTER} key.  It must match one of the strings given
+## in @var{btn1}, @var{btn2}, or @var{btn3}.
 ##
-## If only @var{msg} and @var{title} are specified, three buttons with
-## the default captions @qcode{"Yes"}, @qcode{"No"}, and @qcode{"Cancel"} are
-## used.
+## If only @var{msg} and @var{title} are specified, three buttons with the
+## default captions @qcode{"Yes"}, @qcode{"No"}, and @qcode{"Cancel"} are used.
 ##
-## If only two button captions, @var{btn1} and @var{btn2}, are specified
-## the dialog will have only these two buttons.
+## If only two button captions, @var{btn1} and @var{btn2}, are specified the
+## dialog will have only these two buttons.
 ##
 ## @seealso{errordlg, helpdlg, inputdlg, listdlg, warndlg}
 ## @end deftypefn
--- a/scripts/gui/uigetdir.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/gui/uigetdir.m	Sun May 10 21:37:19 2015 -0700
@@ -23,6 +23,7 @@
 ## Open a GUI dialog for selecting a directory.
 ##
 ## If @var{init_path} is not given the current working directory is used.
+##
 ## @var{dialog_name} may be used to customize the dialog title.
 ## @seealso{uigetfile, uiputfile}
 ## @end deftypefn
--- a/scripts/gui/uigetfile.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/gui/uigetfile.m	Sun May 10 21:37:19 2015 -0700
@@ -40,8 +40,8 @@
 ## Example: @code{uigetfile ("*.ext")}
 ##
 ## @item A 2-column cell array
-## containing a file extension in the first column and a brief description
-## in the second column.
+## containing a file extension in the first column and a brief description in
+## the second column.
 ## Example: @code{uigetfile (@{"*.ext", "My Description";"*.xyz",
 ## "XYZ-Format"@})}
 ##
@@ -52,6 +52,7 @@
 ## @end table
 ##
 ## @var{dialog_name} can be used to customize the dialog title.
+##
 ## If @var{default_file} is given then it will be selected in the GUI dialog.
 ## If, in addition, a path is given it is also used as current path.
 ##
--- a/scripts/gui/uiwait.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/gui/uiwait.m	Sun May 10 21:37:19 2015 -0700
@@ -20,8 +20,8 @@
 ## @deftypefn  {Function File} {} uiwait
 ## @deftypefnx {Function File} {} uiwait (@var{h})
 ## @deftypefnx {Function File} {} uiwait (@var{h}, @var{timeout})
-## Suspend program execution until the figure with handle @var{h} is
-## deleted or @code{uiresume} is called.
+## Suspend program execution until the figure with handle @var{h} is deleted
+## or @code{uiresume} is called.
 ##
 ## When no figure handle is specified this function uses the current figure.
 ## If the figure handle is invalid or there is no current figure, this
--- a/scripts/gui/waitbar.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/gui/waitbar.m	Sun May 10 21:37:19 2015 -0700
@@ -26,9 +26,12 @@
 ## Return a handle @var{h} to a new waitbar object.
 ##
 ## The waitbar is filled to fraction @var{frac} which must be in the range
-## [0, 1].  The optional message @var{msg} is centered and displayed above the
-## waitbar.  The appearance of the waitbar figure window can be configured by
-## passing property/value pairs to the function.
+## [0, 1].
+##
+## The optional message @var{msg} is centered and displayed above the waitbar.
+##
+## The appearance of the waitbar figure window can be configured by passing
+## property/value pairs to the function.
 ##
 ## When called with a single input the current waitbar, if it exists, is
 ## updated to the new value @var{frac}.  If there are multiple outstanding
--- a/scripts/gui/warndlg.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/gui/warndlg.m	Sun May 10 21:37:19 2015 -0700
@@ -22,10 +22,11 @@
 ## @deftypefnx {Function File} {@var{h} =} warndlg (@var{msg}, @var{title}, @var{createmode})
 ## Display @var{msg} using a warning dialog box.
 ##
-## The message may have multiple lines separated by newline characters
-## ("\n"), or it may be a cellstr array with one element for each
-## line.  The optional input @var{title} (character string) can be used to
-## set the dialog caption.  The default title is @qcode{"Warning Dialog"}.
+## The message may have multiple lines separated by newline characters ("\n"),
+## or it may be a cellstr array with one element for each line.
+##
+## The optional input @var{title} (character string) can be used to set the
+## dialog caption.  The default title is @qcode{"Warning Dialog"}.
 ##
 ## The return value is always 1.
 ##
--- a/scripts/help/__unimplemented__.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/help/__unimplemented__.m	Sun May 10 21:37:19 2015 -0700
@@ -18,13 +18,14 @@
 ## <http://www.gnu.org/licenses/>.
 
 ## -*- texinfo -*-
-## @deftypefn {Function File} {@var{txt} =} unimplemented (@var{fcn})
+## @deftypefn {Function File} {@var{txt} =} __unimplemented__ (@var{fcn})
 ## Return specific help text for the unimplemented function @var{fcn}.
+##
 ## This is usually a suggestion for an existing compatible function to use in
 ## place of @var{fcn}.
 ##
-## This function is not called by users, but by the Octave interpreter when
-## it fails to recognize an input string as a valid function name.  See
+## This function is not called by users, but by the Octave interpreter when it
+## fails to recognize an input string as a valid function name.  See
 ## @code{missing_function_hook} for using a different handler for this event.
 ## @seealso{missing_function_hook}
 ## @end deftypefn
--- a/scripts/help/doc.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/help/doc.m	Sun May 10 21:37:19 2015 -0700
@@ -17,17 +17,18 @@
 ## <http://www.gnu.org/licenses/>.
 
 ## -*- texinfo -*-
-## @deftypefn {Command} {} doc @var{function_name}
-## Display documentation for the function @var{function_name}
-## directly from an online version of
-## the printed manual, using the GNU Info browser.  If invoked without
-## any arguments, the manual is shown from the beginning.
+## @deftypefn  {Command} {} doc @var{function_name}
+## @deftypefnx {Command} {} doc
+## Display documentation for the function @var{function_name} directly from an
+## online version of the printed manual, using the GNU Info browser.
 ##
-## For example, the command @kbd{doc rand} starts the GNU Info browser
-## at the @code{rand} node in the online version of the manual.
+## If invoked without an argument, the manual is shown from the beginning.
 ##
-## Once the GNU Info browser is running, help for using it is available
-## using the command @kbd{C-h}.
+## For example, the command @kbd{doc rand} starts the GNU Info browser at the
+## @code{rand} node in the online version of the manual.
+##
+## Once the GNU Info browser is running, help for using it is available using
+## the command @kbd{C-h}.
 ## @seealso{help}
 ## @end deftypefn
 
--- a/scripts/help/doc_cache_create.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/help/doc_cache_create.m	Sun May 10 21:37:19 2015 -0700
@@ -17,13 +17,17 @@
 ## <http://www.gnu.org/licenses/>.
 
 ## -*- texinfo -*-
-## @deftypefn {Function File} {} doc_cache_create (@var{out_file}, @var{directory})
-## Generate documentation caches for all functions in a given directory.
+## @deftypefn  {Function File} {} doc_cache_create (@var{out_file}, @var{directory})
+## @deftypefnx {Function File} {} doc_cache_create (@var{out_file})
+## @deftypefnx {Function File} {} doc_cache_create ()
+## Generate documentation cache for all functions in @var{directory}.
 ##
-## A documentation cache is generated for all functions in @var{directory}.
-## The
-## resulting cache is saved in the file @var{out_file}.
-## The cache is used to speed up @code{lookfor}.
+## A documentation cache is generated for all functions in @var{directory}
+## which may be a single string or a cell array of strings.  The cache is used
+## to speed up the function @code{lookfor}.
+##
+## The cache is saved in the file @var{out_file} which defaults to the value
+## @file{doc-cache} if not given.
 ##
 ## If no directory is given (or it is the empty matrix), a cache for built-in
 ## operators, etc. is generated.
--- a/scripts/help/get_first_help_sentence.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/help/get_first_help_sentence.m	Sun May 10 21:37:19 2015 -0700
@@ -17,14 +17,15 @@
 ## <http://www.gnu.org/licenses/>.
 
 ## -*- texinfo -*-
-## @deftypefn  {Function File} {[@var{text}, @var{status}] =} get_first_help_sentence (@var{name})
-## @deftypefnx {Function File} {[@var{text}, @var{status}] =} get_first_help_sentence (@var{name}, @var{max_len})
+## @deftypefn  {Function File} {@var{text} =} get_first_help_sentence (@var{name})
+## @deftypefnx {Function File} {@var{text} =} get_first_help_sentence (@var{name}, @var{max_len})
+## @deftypefnx {Function File} {[@var{text}, @var{status}] =} get_first_help_sentence (@dots{})
 ## Return the first sentence of a function's help text.
 ##
-## The first sentence is defined as the text after the function
-## declaration until either the first period (".") or the first appearance of
-## two consecutive newlines ("\n\n").  The text is truncated to a maximum
-## length of @var{max_len}, which defaults to 80.
+## The first sentence is defined as the text after the function declaration
+## until either the first period (".") or the first appearance of two
+## consecutive newlines ("\n\n").  The text is truncated to a maximum length of 
+## @var{max_len}, which defaults to 80.
 ##
 ## The optional output argument @var{status} returns the status reported by
 ## @code{makeinfo}.  If only one output argument is requested, and @var{status}
--- a/scripts/help/help.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/help/help.m	Sun May 10 21:37:19 2015 -0700
@@ -26,15 +26,15 @@
 ## For example, the command @kbd{help help} prints a short message describing
 ## the @code{help} command.
 ##
-## Given the single argument @code{--list}, list all operators,
-## keywords, built-in functions, and loadable functions available
-## in the current session of Octave.
+## Given the single argument @code{--list}, list all operators, keywords,
+## built-in functions, and loadable functions available in the current session
+## of Octave.
 ##
-## Given the single argument @code{.}, list all operators available
-## in the current session of Octave.
+## Given the single argument @code{.}, list all operators available in the
+## current session of Octave.
 ##
-## If invoked without any arguments, @code{help} display instructions
-## on how to access help from the command line.
+## If invoked without any arguments, @code{help} display instructions on how to
+## access help from the command line.
 ##
 ## The help command can provide information about most operators, for example
 ## @code{help +}, but not the comma and semicolon characters which are used
--- a/scripts/help/lookfor.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/help/lookfor.m	Sun May 10 21:37:19 2015 -0700
@@ -21,13 +21,13 @@
 ## @deftypefnx {Command} {} lookfor -all @var{str}
 ## @deftypefnx {Function File} {[@var{fcn}, @var{help1str}] =} lookfor (@var{str})
 ## @deftypefnx {Function File} {[@var{fcn}, @var{help1str}] =} lookfor ("-all", @var{str})
-## Search for the string @var{str} in all functions using the current function
-## search path.
+## Search for the string @var{str} in the documentation of all functions in the
+## current function search path.
 ##
-## By default, @code{lookfor} looks for @var{str} in the first sentence of the
-## help string for each function found.  The entire help text of each function
-## can be searched by using the @qcode{"-all"} argument.  All searches are case
-## insensitive.
+## By default, @code{lookfor} looks for @var{str} in just the first sentence of
+## the help string for each function found.  The entire help text of each
+## function can be searched by using the @qcode{"-all"} argument.  All searches 
+## are case insensitive.
 ##
 ## When called with no output arguments, @code{lookfor} prints the list of
 ## matching functions to the terminal.  Otherwise, the output argument
@@ -40,7 +40,10 @@
 ## not be guaranteed for external packages and user-supplied functions.
 ## Therefore, the use of the @qcode{"-all"} argument may be necessary to find
 ## related functions that are not a part of Octave.
-## @seealso{help, doc, which}
+##
+## The speed of lookup is greatly enhanced by having a cached documentation
+## file.  See @code{doc_cache_create} for more information.
+## @seealso{help, doc, which, path, doc_cache_create}
 ## @end deftypefn
 
 function [fcn, help1str] = lookfor (str, arg2)
--- a/scripts/help/print_usage.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/help/print_usage.m	Sun May 10 21:37:19 2015 -0700
@@ -19,9 +19,10 @@
 ## -*- texinfo -*-
 ## @deftypefn  {Function File} {} print_usage ()
 ## @deftypefnx {Function File} {} print_usage (@var{name})
-## Print the usage message for a function.  When called with no input arguments
-## the @code{print_usage} function displays the usage message of the currently
-## executing function.
+## Print the usage message for the function @var{name}.
+##
+## When called with no input arguments the @code{print_usage} function displays
+## the usage message of the currently executing function.
 ## @seealso{help}
 ## @end deftypefn
 
--- a/scripts/help/type.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/help/type.m	Sun May 10 21:37:19 2015 -0700
@@ -23,9 +23,9 @@
 ## Display the contents of @var{name} which may be a file, function (m-file),
 ## variable, operator, or keyword.
 ##
-## @code{type} normally prepends a header line describing the category
-## of @var{name} such as function or variable; The @option{-q} option
-## suppresses this behavior.
+## @code{type} normally prepends a header line describing the category of
+## @var{name} such as function or variable; The @option{-q} option suppresses
+## this behavior.
 ##
 ## If no output variable is used the contents are displayed on screen.
 ## Otherwise, a cell array of strings is returned, where each element
--- a/scripts/help/which.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/help/which.m	Sun May 10 21:37:19 2015 -0700
@@ -18,8 +18,10 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Command} {} which name @dots{}
-## Display the type of each @var{name}.  If @var{name} is defined from a
-## function file, the full name of the file is also displayed.
+## Display the type of each @var{name}.
+##
+## If @var{name} is defined from a function file, the full name of the file is
+## also displayed.
 ## @seealso{help, lookfor}
 ## @end deftypefn
 
--- a/scripts/image/autumn.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/image/autumn.m	Sun May 10 21:37:19 2015 -0700
@@ -19,8 +19,9 @@
 ## -*- texinfo -*-
 ## @deftypefn  {Function File} {@var{map} =} autumn ()
 ## @deftypefnx {Function File} {@var{map} =} autumn (@var{n})
-## Create color colormap.  This colormap ranges from red through orange
-## to yellow.
+## Create color colormap.
+## This colormap ranges from red through orange to yellow.
+##
 ## The argument @var{n} must be a scalar.
 ## If unspecified, the length of the current colormap, or 64, is used.
 ## @seealso{colormap}
--- a/scripts/image/bone.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/image/bone.m	Sun May 10 21:37:19 2015 -0700
@@ -21,6 +21,7 @@
 ## @deftypefnx {Function File} {@var{map} =} bone (@var{n})
 ## Create color colormap.  This colormap varies from black to white with
 ## gray-blue shades.
+##
 ## The argument @var{n} must be a scalar.
 ## If unspecified, the length of the current colormap, or 64, is used.
 ## @seealso{colormap}
--- a/scripts/image/brighten.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/image/brighten.m	Sun May 10 21:37:19 2015 -0700
@@ -17,16 +17,20 @@
 ## <http://www.gnu.org/licenses/>.
 
 ## -*- texinfo -*-
-## @deftypefn  {Function File} {@var{map_out} =} brighten (@var{map}, @var{beta})
-## @deftypefnx {Function File} {@var{map_out} =} brighten (@var{beta})
+## @deftypefn  {Function File} {@var{map_out} =} brighten (@var{beta})
+## @deftypefnx {Function File} {@var{map_out} =} brighten (@var{map}, @var{beta})
 ## @deftypefnx {Function File} {@var{map_out} =} brighten (@var{h}, @var{beta})
-## Brighten or darken a colormap.  If the @var{map} argument is omitted, the
-## function is applied to the current colormap.  The first argument can also be
-## a valid graphics handle @var{h}, in which case @code{brighten} is applied to
-## the colormap associated with this handle.
+## @deftypefnx {Function File} {} brighten (@dots{})
+## Brighten or darken a colormap.
+##
+## The argument @var{beta} must be a scalar between -1 and 1, where a negative
+## value darkens and a positive value brightens the colormap.
 ##
-## The argument @var{beta} must be a scalar between -1 and 1, where a
-## negative value darkens and a positive value brightens the colormap.
+## If the @var{map} argument is omitted, the function is applied to the current
+## colormap.
+##
+## The first argument can also be a valid graphics handle @var{h}, in which
+## case @code{brighten} is applied to the colormap associated with this handle.
 ##
 ## If no output is specified then the result is written to the current colormap.
 ## @seealso{colormap, contrast}
--- a/scripts/image/cmpermute.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/image/cmpermute.m	Sun May 10 21:37:19 2015 -0700
@@ -27,8 +27,8 @@
 ## returns the indexed image @var{Y} which is the equivalent of the original
 ## input image @var{X} when displayed using @var{newmap}.
 ##
-## When called with an optional third argument the order of colors in the
-## new colormap is defined by @var{index}.
+## When called with an optional third argument the order of colors in the new
+## colormap is defined by @var{index}.
 ##
 ## @strong{Caution:} @code{index} should not have repeated elements or the
 ## function will fail.
--- a/scripts/image/colorcube.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/image/colorcube.m	Sun May 10 21:37:19 2015 -0700
@@ -20,10 +20,12 @@
 ## @deftypefn  {Function File} {@var{map} =} colorcube ()
 ## @deftypefnx {Function File} {@var{map} =} colorcube (@var{n})
 ## Create color colormap.  This colormap is composed of as many equally
-## spaced colors (not grays) in the RGB color space as possible.  If there
-## are not a perfect number @var{n} of regularly spaced colors then the
+## spaced colors (not grays) in the RGB color space as possible.
+##
+## If there are not a perfect number @var{n} of regularly spaced colors then the
 ## remaining entries in the colormap are gradients of pure red, green, blue,
 ## and gray.
+##
 ## The argument @var{n} must be a scalar.
 ## If unspecified, the length of the current colormap, or 64, is used.
 ## @seealso{colormap}
--- a/scripts/image/contrast.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/image/contrast.m	Sun May 10 21:37:19 2015 -0700
@@ -19,8 +19,9 @@
 ## -*- texinfo -*-
 ## @deftypefn  {Function File} {@var{cmap} =} contrast (@var{x})
 ## @deftypefnx {Function File} {@var{cmap} =} contrast (@var{x}, @var{n})
-## Return a gray colormap that maximizes the contrast in an image.  The
-## returned colormap will have @var{n} rows.  If @var{n} is not defined
+## Return a gray colormap that maximizes the contrast in an image.
+##
+## The returned colormap will have @var{n} rows.  If @var{n} is not defined
 ## then the size of the current colormap is used.
 ## @seealso{colormap, brighten}
 ## @end deftypefn
--- a/scripts/image/cool.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/image/cool.m	Sun May 10 21:37:19 2015 -0700
@@ -20,6 +20,7 @@
 ## @deftypefn  {Function File} {@var{map} =} cool ()
 ## @deftypefnx {Function File} {@var{map} =} cool (@var{n})
 ## Create color colormap.  The colormap varies from cyan to magenta.
+##
 ## The argument @var{n} must be a scalar.
 ## If unspecified, the length of the current colormap, or 64, is used.
 ## @seealso{colormap}
--- a/scripts/image/copper.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/image/copper.m	Sun May 10 21:37:19 2015 -0700
@@ -19,8 +19,9 @@
 ## -*- texinfo -*-
 ## @deftypefn  {Function File} {@var{map} =} copper ()
 ## @deftypefnx {Function File} {@var{map} =} copper (@var{n})
-## Create color colormap.  This colormap varies from black to
-## a light copper tone.
+## Create color colormap.  This colormap varies from black to a light copper
+## tone.
+##
 ## The argument @var{n} must be a scalar.
 ## If unspecified, the length of the current colormap, or 64, is used.
 ## @seealso{colormap}
--- a/scripts/image/cubehelix.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/image/cubehelix.m	Sun May 10 21:37:19 2015 -0700
@@ -31,12 +31,12 @@
 ## rgbplot (cubehelix (256))
 ## @end example
 ##
-## The argument @var{n} must be a scalar and corresponds to the lenght of the
-## colormap.  Defaults to the length of the current colormap.
+## The argument @var{n} must be a scalar.
+## If unspecified, the length of the current colormap, or 64, is used.
 ##
-## Development of this colormap is described in @cite{Green, D. A., 2011,
-## "A @nospell{colour} scheme for the display of astronomical intensity images",
-## Bulletin of the Astronomical Society of India, 39, 289.}.
+## Reference: Green, D. A., 2011,
+## @cite{"A @nospell{colour} scheme for the display of astronomical intensity
+## images"}, Bulletin of the Astronomical Society of India, 39, 289.
 ##
 ## @seealso{colormap}
 ## @end deftypefn
--- a/scripts/image/flag.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/image/flag.m	Sun May 10 21:37:19 2015 -0700
@@ -19,8 +19,9 @@
 ## -*- texinfo -*-
 ## @deftypefn  {Function File} {@var{map} =} flag ()
 ## @deftypefnx {Function File} {@var{map} =} flag (@var{n})
-## Create color colormap.  This colormap cycles through red, white, blue,
-## and black with each index change.
+## Create color colormap.  This colormap cycles through red, white, blue, and
+## black with each index change.
+##
 ## The argument @var{n} must be a scalar.
 ## If unspecified, the length of the current colormap, or 64, is used.
 ## @seealso{colormap}
--- a/scripts/image/gmap40.m	Wed May 06 20:52:16 2015 +0100
+++ /dev/null	Thu Jan 01 00:00:00 1970 +0000
@@ -1,57 +0,0 @@
-## Copyright (C) 2007-2015 David Bateman
-##
-## This file is part of Octave.
-##
-## Octave is free software; you can redistribute it and/or modify it
-## under the terms of the GNU General Public License as published by
-## the Free Software Foundation; either version 3 of the License, or (at
-## your option) any later version.
-##
-## Octave is distributed in the hope that it will be useful, but
-## WITHOUT ANY WARRANTY; without even the implied warranty of
-## MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-## General Public License for more details.
-##
-## You should have received a copy of the GNU General Public License
-## along with Octave; see the file COPYING.  If not, see
-## <http://www.gnu.org/licenses/>.
-
-## -*- texinfo -*-
-## @deftypefn  {Function File} {@var{map} =} gmap40 ()
-## @deftypefnx {Function File} {@var{map} =} gmap40 (@var{n})
-## Create color colormap.  The colormap consists of red, green, blue, yellow,
-## magenta and cyan.  This colormap is specifically designed for users of
-## gnuplot 4.0 where these 6 colors are the allowable ones for patch objects.
-## The argument @var{n} must be a scalar.
-## If unspecified, a length of 6 is assumed.  Larger values of @var{n} result
-## in a repetition of the above colors.
-## @seealso{colormap}
-## @end deftypefn
-
-## PKG_ADD: colormap ("register", "gmap40");
-## PKG_DEL: colormap ("unregister", "gmap40");
-
-function map = gmap40 (n = rows (colormap ()))
-
-  if (nargin > 1)
-    print_usage ();
-  elseif (! isscalar (n))
-    error ("gmap40: N must be a scalar");
-  endif
-
-  if (n > 0)
-    C = [1, 0, 0; 0, 1, 0; 0, 0, 1; 1, 1, 0; 1, 0, 1; 0, 1, 1];
-    map = C(rem (0:(n-1), 6) + 1, :);
-  else
-    map = zeros (0, 3);
-  endif
-
-endfunction
-
-
-%!demo
-%! ## Show the 'gmap40' colormap as an image
-%! image (1:6, linspace (0, 1, 6), repmat ((1:6)', 1, 6));
-%! axis ([1, 6, 0, 1], "ticy", "xy");
-%! colormap (gmap40 (6));
-
--- a/scripts/image/gray.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/image/gray.m	Sun May 10 21:37:19 2015 -0700
@@ -19,8 +19,9 @@
 ## -*- texinfo -*-
 ## @deftypefn  {Function File} {@var{map} =} gray ()
 ## @deftypefnx {Function File} {@var{map} =} gray (@var{n})
-## Create gray colormap.  This colormap varies from black to white with
-## shades of gray.
+## Create gray colormap.  This colormap varies from black to white with shades
+## of gray.
+##
 ## The argument @var{n} must be a scalar.
 ## If unspecified, the length of the current colormap, or 64, is used.
 ## @seealso{colormap}
--- a/scripts/image/gray2ind.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/image/gray2ind.m	Sun May 10 21:37:19 2015 -0700
@@ -25,11 +25,11 @@
 ## Convert a grayscale or binary intensity image to an indexed image.
 ##
 ## The indexed image will consist of @var{n} different intensity values.
-## If not given @var{n} defaults to 64 for grayscale images or 2 for
-## binary black and white images.
+## If not given @var{n} defaults to 64 for grayscale images or 2 for binary
+## black and white images.
 ##
-## The output @var{img} is of class uint8 if @var{n} is less than or
-## equal to 256; Otherwise the return class is uint16.
+## The output @var{img} is of class uint8 if @var{n} is less than or equal to
+## 256; Otherwise the return class is uint16.
 ## @seealso{ind2gray, rgb2ind}
 ## @end deftypefn
 
--- a/scripts/image/hot.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/image/hot.m	Sun May 10 21:37:19 2015 -0700
@@ -21,6 +21,7 @@
 ## @deftypefnx {Function File} {@var{map} =} hot (@var{n})
 ## Create color colormap.  This colormap ranges from black through dark red,
 ## red, orange, yellow, to white.
+##
 ## The argument @var{n} must be a scalar.
 ## If unspecified, the length of the current colormap, or 64, is used.
 ## @seealso{colormap}
--- a/scripts/image/hsv.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/image/hsv.m	Sun May 10 21:37:19 2015 -0700
@@ -20,6 +20,7 @@
 ## @deftypefn {Function File} {} hsv (@var{n})
 ## Create color colormap.  This colormap begins with red, changes through
 ## yellow, green, cyan, blue, and magenta, before returning to red.
+##
 ## It is useful for displaying periodic functions.  The map is obtained by
 ## linearly varying the hue through all possible values while keeping constant
 ## maximum saturation and value.  The equivalent code is
--- a/scripts/image/image.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/image/image.m	Sun May 10 21:37:19 2015 -0700
@@ -25,6 +25,7 @@
 ## Display a matrix as an indexed color image.
 ##
 ## The elements of @var{img} are indices into the current colormap.
+##
 ## @var{x} and @var{y} are optional 2-element vectors, @w{@code{[min, max]}},
 ## which specify the range for the axis labels.  If a range is specified as
 ## @w{@code{[max, min]}} then the image will be reversed along that axis.  For
--- a/scripts/image/imagesc.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/image/imagesc.m	Sun May 10 21:37:19 2015 -0700
@@ -24,10 +24,11 @@
 ## @deftypefnx {Function File} {} imagesc ("@var{prop1}", @var{val1}, @dots{})
 ## @deftypefnx {Function File} {} imagesc (@var{hax}, @dots{})
 ## @deftypefnx {Function File} {@var{h} =} imagesc (@dots{})
-## Display a scaled version of the matrix @var{img} as a color image.  The
-## colormap is scaled so that the entries of the matrix occupy the entire
-## colormap.  If @code{@var{climits} = [@var{lo}, @var{hi}]} is given, then that
-## range is set to the @qcode{"clim"} of the current axes.
+## Display a scaled version of the matrix @var{img} as a color image.
+##
+## The colormap is scaled so that the entries of the matrix occupy the entire
+## colormap.  If @code{@var{climits} = [@var{lo}, @var{hi}]} is given, then
+## that range is set to the @qcode{"clim"} of the current axes.
 ##
 ## The axis values corresponding to the matrix elements are specified in
 ## @var{x} and @var{y}, either as pairs giving the minimum and maximum
--- a/scripts/image/imfinfo.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/image/imfinfo.m	Sun May 10 21:37:19 2015 -0700
@@ -66,8 +66,8 @@
 ## @qcode{"Centimeter"}, or @qcode{"undefined"}.
 ##
 ## @item DelayTime
-## Time in 1/100ths of a second (0 to 65535) which must expire before displaying
-## the next image in an animated sequence.
+## Time in 1/100ths of a second (0 to 65535) which must expire before
+## displaying the next image in an animated sequence.
 ##
 ## @item LoopCount
 ## Number of iterations to loop an animation.
@@ -120,8 +120,8 @@
 ## the image.
 ##
 ## @item Model
-## The model name or model number of the recording equipment as mentioned
-## on the field @qcode{"Make"}.
+## The model name or model number of the recording equipment as mentioned on
+## the field @qcode{"Make"}.
 ##
 ## @item DateTime
 ## The date and time of image creation as defined by the Exif standard, i.e.,
--- a/scripts/image/imformats.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/image/imformats.m	Sun May 10 21:37:19 2015 -0700
@@ -57,9 +57,9 @@
 ## Logical value if format supports multipage (multiple images per file).
 ## @end table
 ##
-## It is possible to change the way Octave manages file formats with the options
-## @qcode{"add"}, @qcode{"remove"}, and @qcode{"update"}, and supplying a
-## structure @var{format} with the required fields.  The option
+## It is possible to change the way Octave manages file formats with the
+## options @qcode{"add"}, @qcode{"remove"}, and @qcode{"update"}, and supplying
+## a structure @var{format} with the required fields.  The option
 ## @qcode{"factory"} resets the configuration to the default.
 ##
 ## This can be used by Octave packages to extend the image reading capabilities
--- a/scripts/image/imread.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/image/imread.m	Sun May 10 21:37:19 2015 -0700
@@ -29,37 +29,35 @@
 ## @deftypefnx {Function File} {[@dots{}] =} imread (@dots{}, @var{param1}, @var{val1}, @dots{})
 ## Read images from various file formats.
 ##
-## Reads an image as a matrix from the file @var{filename}.  If there is
-## no file @var{filename}, and @var{ext} was specified, it will look for
-## a file with the extension @var{ext}.  Finally, it will attempt to download
-## and read an image from @var{url}.
+## Read an image as a matrix from the file @var{filename}.  If there is no file
+## @var{filename}, and @var{ext} was specified, it will look for a file with
+## the extension @var{ext}.  Finally, it will attempt to download and read an
+## image from @var{url}.
 ##
-## The size and class of the output depends on the
-## format of the image.  A color image is returned as an
-## @nospell{MxNx3} matrix.  Gray-level and black-and-white images are
-## of size @nospell{MxN}.  Multipage images will have an additional 4th
-## dimension.
+## The size and class of the output depends on the format of the image.  A
+## color image is returned as an @nospell{MxNx3} matrix.  Gray-level and
+## black-and-white images are of size @nospell{MxN}.  Multipage images will
+## have an additional 4th dimension.
 ##
-## The bit depth of the image determines the
-## class of the output: @qcode{"uint8"}, @qcode{"uint16"} or @qcode{"single"}
-## for gray and color, and @qcode{"logical"} for black and white.
-## Note that indexed images always return the indexes for a colormap,
-## independent if @var{map} is a requested output.  To obtain the actual
-## RGB image, use @code{ind2rgb}.  When more than one indexed image is being
-## read, @var{map} is obtained from the first.  In some rare cases this
-## may be incorrect and @code{imfinfo} can be used to obtain the colormap of
-## each image.
+## The bit depth of the image determines the class of the output:
+## @qcode{"uint8"}, @qcode{"uint16"} or @qcode{"single"} for gray and color,
+## and @qcode{"logical"} for black and white.  Note that indexed images always
+## return the indexes for a colormap, independent if @var{map} is a requested
+## output.  To obtain the actual RGB image, use @code{ind2rgb}.  When more
+## than one indexed image is being read, @var{map} is obtained from the
+## first.  In some rare cases this may be incorrect and @code{imfinfo} can be
+## used to obtain the colormap of each image.
 ##
 ## See the Octave manual for more information in representing images.
 ##
-## Some file formats, such as TIFF and GIF, are able to store multiple
-## images in a single file.  @var{idx} can be a scalar or vector
-## specifying the index of the images to read.  By default, Octave
-## will only read the first page.
+## Some file formats, such as TIFF and GIF, are able to store multiple images
+## in a single file.  @var{idx} can be a scalar or vector specifying the
+## index of the images to read.  By default, Octave will only read the first
+## page.
 ##
-## Depending on the file format, it is possible to configure the reading
-## of images with @var{param}, @var{val} pairs.  The following options
-## are supported:
+## Depending on the file format, it is possible to configure the reading of
+## images with @var{param}, @var{val} pairs.  The following options are
+## supported:
 ##
 ## @table @samp
 ## @item @qcode{"Frames"} or @qcode{"Index"}
@@ -68,15 +66,15 @@
 ##
 ## @item @qcode{"Info"}
 ## This option exists for @sc{matlab} compatibility and has no effect.  For
-## maximum performance while reading multiple images from a single file,
-## use the Index option.
+## maximum performance while reading multiple images from a single file, use
+## the Index option.
 ##
 ## @item @qcode{"PixelRegion"}
-## Controls the image region that is read.  Takes as value a cell array
-## with two arrays of 3 elements @code{@{@var{rows} @var{cols}@}}.  The
-## elements in the array are the start, increment and end pixel to be
-## read.  If the increment value is omitted, defaults to 1.  For example,
-## the following are all equivalent:
+## Controls the image region that is read.  Takes as value a cell array with
+## two arrays of 3 elements @code{@{@var{rows} @var{cols}@}}.  The elements
+## in the array are the start, increment and end pixel to be read.  If the
+## increment value is omitted, defaults to 1.  For example, the following are
+## all equivalent:
 ##
 ## @example
 ## @group
--- a/scripts/image/imshow.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/image/imshow.m	Sun May 10 21:37:19 2015 -0700
@@ -27,20 +27,18 @@
 ## Display the image @var{im}, where @var{im} can be a 2-dimensional
 ## (grayscale image) or a 3-dimensional (RGB image) matrix.
 ##
-## If @var{limits} is a 2-element vector @code{[@var{low}, @var{high}]},
-## the image is shown using a display range between @var{low} and
-## @var{high}.  If an empty matrix is passed for @var{limits}, the
-## display range is computed as the range between the minimal and the
-## maximal value in the image.
+## If @var{limits} is a 2-element vector @code{[@var{low}, @var{high}]}, the
+## image is shown using a display range between @var{low} and @var{high}.  If
+## an empty matrix is passed for @var{limits}, the display range is computed
+## as the range between the minimal and the maximal value in the image.
 ##
 ## If @var{map} is a valid color map, the image will be shown as an indexed
 ## image using the supplied color map.
 ##
-## If a file name is given instead of an image, the file will be read and
-## shown.
+## If a file name is given instead of an image, the file will be read and shown.
 ##
-## If given, the parameter @var{string_param1} has value
-## @var{value1}.  @var{string_param1} can be any of the following:
+## If given, the parameter @var{string_param1} has value @var{value1}.  
+## @var{string_param1} can be any of the following:
 ##
 ## @table @asis
 ## @item @qcode{"displayrange"}
@@ -51,15 +49,13 @@
 ##
 ## @item @qcode{"xdata"}
 ## If @var{value1} is a two element vector, it must contain horizontal axis
-## limits in the form [xmin xmax]; Otherwise @var{value1} must be a
-## vector and only the first and last elements will be used for xmin and
-## xmax respectively.
+## limits in the form [xmin xmax]; Otherwise @var{value1} must be a vector and
+## only the first and last elements will be used for xmin and xmax respectively.
 ##
 ## @item @qcode{"ydata"}
 ## If @var{value1} is a two element vector, it must contain vertical axis
-## limits in the form [ymin ymax]; Otherwise @var{value1} must be a
-## vector and only the first and last elements will be used for ymin and
-## ymax respectively.
+## limits in the form [ymin ymax]; Otherwise @var{value1} must be a vector and
+## only the first and last elements will be used for ymin and ymax respectively.
 ##
 ## @end table
 ##
--- a/scripts/image/imwrite.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/image/imwrite.m	Sun May 10 21:37:19 2015 -0700
@@ -35,17 +35,16 @@
 ## options made during the build of Octave.  Use @code{imformats} to check
 ## the support of the different image formats.
 ##
-## Depending on the file format, it is possible to configure the writing
-## of images with @var{param}, @var{val} pairs.  The following options
-## are supported:
+## Depending on the file format, it is possible to configure the writing of
+## images with @var{param}, @var{val} pairs.  The following options are
+## supported:
 ##
 ## @table @samp
 ## @item Alpha
 ## Alpha (transparency) channel for the image.  This must be a matrix with
 ## same class, and number of rows and columns of @var{img}.  In case of a
 ## multipage image, the size of the 4th dimension must also match and the third
-## dimension must be a singleton.  By default, image will be completely
-## opaque.
+## dimension must be a singleton.  By default, image will be completely opaque.
 ##
 ## @item DelayTime
 ## For formats that accept animations (such as GIF), controls for how long a
@@ -55,8 +54,8 @@
 ## be between 0 and 655.35, and defaults to 0.5.
 ##
 ## @item DisposalMethod
-## For formats that accept animations (such as GIF), controls what happens
-## to a frame before drawing the next one.  Its value can be one of the
+## For formats that accept animations (such as GIF), controls what happens to
+## a frame before drawing the next one.  Its value can be one of the
 ## following strings: "doNotSpecify" (default); "leaveInPlace"; "restoreBG";
 ## and "restorePrevious", or a cell array of those string with length equal
 ## to the number of frames in @var{img}.
@@ -70,21 +69,21 @@
 ## is only a single image at the end of writing the file.
 ##
 ## @item Quality
-## Set the quality of the compression.  The value should be an
-## integer between 0 and 100, with larger values indicating higher visual
-## quality and lower compression.  Defaults to 75.
+## Set the quality of the compression.  The value should be an integer
+## between 0 and 100, with larger values indicating higher visual quality and
+## lower compression.  Defaults to 75.
 ##
 ## @item WriteMode
-## Some file formats, such as TIFF and GIF, are able to store multiple
-## images in a single file.  This option specifies if @var{img} should be
-## appended to the file (if it exists) or if a new file should be created
-## for it (possibly overwriting an existing file).  The value should be
-## the string @qcode{"Overwrite"} (default), or @qcode{"Append"}.
+## Some file formats, such as TIFF and GIF, are able to store multiple images
+## in a single file.  This option specifies if @var{img} should be appended
+## to the file (if it exists) or if a new file should be created for it
+## (possibly overwriting an existing file).  The value should be the string
+## @qcode{"Overwrite"} (default), or @qcode{"Append"}.
 ##
 ## Despite this option, the most efficient method of writing a multipage
-## image is to pass a 4 dimensional @var{img} to @code{imwrite}, the
-## same matrix that could be expected when using @code{imread} with the
-## option @qcode{"Index"} set to @qcode{"all"}.
+## image is to pass a 4 dimensional @var{img} to @code{imwrite}, the same
+## matrix that could be expected when using @code{imread} with the option
+## @qcode{"Index"} set to @qcode{"all"}.
 ##
 ## @end table
 ##
--- a/scripts/image/iscolormap.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/image/iscolormap.m	Sun May 10 21:37:19 2015 -0700
@@ -20,10 +20,9 @@
 ## @deftypefn {Function File} {} iscolormap (@var{cmap})
 ## Return true if @var{cmap} is a colormap.
 ##
-## A colormap is a real matrix with @var{n} rows and 3 columns.
-## Each row represents a single color.  The columns contain red, green,
-## and blue intensities respectively.  All entries must be between 0 and 1
-## inclusive.
+## A colormap is a real matrix with @var{n} rows and 3 columns.  Each row
+## represents a single color.  The columns contain red, green, and blue
+## intensities respectively.  All entries must be between 0 and 1 inclusive.
 ## @seealso{colormap, rgbplot}
 ## @end deftypefn
 
--- a/scripts/image/jet.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/image/jet.m	Sun May 10 21:37:19 2015 -0700
@@ -21,6 +21,7 @@
 ## @deftypefnx {Function File} {@var{map} =} jet (@var{n})
 ## Create color colormap.  This colormap ranges from dark blue through blue,
 ## cyan, green, yellow, red, to dark red.
+##
 ## The argument @var{n} must be a scalar.
 ## If unspecified, the length of the current colormap, or 64, is used.
 ## @seealso{colormap}
--- a/scripts/image/lines.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/image/lines.m	Sun May 10 21:37:19 2015 -0700
@@ -22,6 +22,7 @@
 ## Create color colormap.  This colormap is composed of the list of colors
 ## in the current axes @qcode{"ColorOrder"} property.  The default is blue,
 ## green, red, cyan, pink, yellow, and gray.
+##
 ## The argument @var{n} must be a scalar.
 ## If unspecified, the length of the current colormap, or 64, is used.
 ## @seealso{colormap}
--- a/scripts/image/module.mk	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/image/module.mk	Sun May 10 21:37:19 2015 -0700
@@ -21,7 +21,6 @@
   image/copper.m \
   image/cubehelix.m \
   image/flag.m \
-  image/gmap40.m \
   image/gray.m \
   image/gray2ind.m \
   image/hot.m \
--- a/scripts/image/ntsc2rgb.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/image/ntsc2rgb.m	Sun May 10 21:37:19 2015 -0700
@@ -23,15 +23,15 @@
 ## red-green-blue (RGB) color space.
 ##
 ## Implementation Note:
-## The conversion matrix is chosen to be the inverse of the
-## matrix used for rgb2ntsc such that
+## The conversion matrix is chosen to be the inverse of the matrix used for
+## rgb2ntsc such that
 ##
 ## @example
 ## x == ntsc2rgb (rgb2ntsc (x))
 ## @end example
 ##
-## @sc{matlab} uses a slightly different matrix where rounding
-## means the equality above does not hold.
+## @sc{matlab} uses a slightly different matrix where rounding means the
+## equality above does not hold.
 ## @seealso{rgb2ntsc, hsv2rgb, ind2rgb}
 ## @end deftypefn
 
--- a/scripts/image/ocean.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/image/ocean.m	Sun May 10 21:37:19 2015 -0700
@@ -21,6 +21,7 @@
 ## @deftypefnx {Function File} {@var{map} =} ocean (@var{n})
 ## Create color colormap.  This colormap varies from black to white with shades
 ## of blue.
+##
 ## The argument @var{n} must be a scalar.
 ## If unspecified, the length of the current colormap, or 64, is used.
 ## @seealso{colormap}
--- a/scripts/image/pink.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/image/pink.m	Sun May 10 21:37:19 2015 -0700
@@ -20,7 +20,10 @@
 ## @deftypefn  {Function File} {@var{map} =} pink ()
 ## @deftypefnx {Function File} {@var{map} =} pink (@var{n})
 ## Create color colormap.  This colormap varies from black to white with
-## shades of gray-pink.  It gives a sepia tone when used on grayscale images.
+## shades of gray-pink.
+##
+## This colormap gives a sepia tone when used on grayscale images.
+##
 ## The argument @var{n} must be a scalar.
 ## If unspecified, the length of the current colormap, or 64, is used.
 ## @seealso{colormap}
--- a/scripts/image/prism.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/image/prism.m	Sun May 10 21:37:19 2015 -0700
@@ -21,6 +21,7 @@
 ## @deftypefnx {Function File} {@var{map} =} prism (@var{n})
 ## Create color colormap.  This colormap cycles through red, orange, yellow,
 ## green, blue and violet with each index change.
+##
 ## The argument @var{n} must be a scalar.
 ## If unspecified, the length of the current colormap, or 64, is used.
 ## @seealso{colormap}
--- a/scripts/image/rainbow.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/image/rainbow.m	Sun May 10 21:37:19 2015 -0700
@@ -21,6 +21,7 @@
 ## @deftypefnx {Function File} {@var{map} =} rainbow (@var{n})
 ## Create color colormap.  This colormap ranges from red through orange,
 ## yellow, green, blue, to violet.
+##
 ## The argument @var{n} must be a scalar.
 ## If unspecified, the length of the current colormap, or 64, is used.
 ## @seealso{colormap}
--- a/scripts/image/rgb2ntsc.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/image/rgb2ntsc.m	Sun May 10 21:37:19 2015 -0700
@@ -36,8 +36,8 @@
 ##
 ## @noindent
 ## as documented in @url{http://en.wikipedia.org/wiki/YIQ} and truncated to 3
-## significant figures.  Note: The FCC version of NTSC uses only 2
-## significant digits and is slightly different.
+## significant figures.  Note: The FCC version of NTSC uses only 2 significant
+## digits and is slightly different.
 ## @seealso{ntsc2rgb, rgb2hsv, rgb2ind}
 ## @end deftypefn
 
--- a/scripts/image/spinmap.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/image/spinmap.m	Sun May 10 21:37:19 2015 -0700
@@ -22,11 +22,12 @@
 ## @deftypefnx {Function File} {} spinmap (@var{t}, @var{inc})
 ## @deftypefnx {Function File} {} spinmap ("inf")
 ## Cycle the colormap for @var{t} seconds with a color increment of @var{inc}.
+##
 ## Both parameters are optional.  The default cycle time is 5 seconds and the
 ## default increment is 2.  If the option @qcode{"inf"} is given then cycle
 ## continuously until @kbd{Control-C} is pressed.
 ##
-## When rotating the original color 1 becomes color 2, color 2 becomes
+## When rotating, the original color 1 becomes color 2, color 2 becomes
 ## color 3, etc.  A positive or negative increment is allowed and a higher
 ## value of @var{inc} will cause faster cycling through the colormap.
 ## @seealso{colormap}
--- a/scripts/image/spring.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/image/spring.m	Sun May 10 21:37:19 2015 -0700
@@ -20,6 +20,7 @@
 ## @deftypefn  {Function File} {@var{map} =} spring ()
 ## @deftypefnx {Function File} {@var{map} =} spring (@var{n})
 ## Create color colormap.  This colormap varies from magenta to yellow.
+##
 ## The argument @var{n} must be a scalar.
 ## If unspecified, the length of the current colormap, or 64, is used.
 ## @seealso{colormap}
--- a/scripts/image/summer.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/image/summer.m	Sun May 10 21:37:19 2015 -0700
@@ -20,6 +20,7 @@
 ## @deftypefn  {Function File} {@var{map} =} summer ()
 ## @deftypefnx {Function File} {@var{map} =} summer (@var{n})
 ## Create color colormap.  This colormap varies from green to yellow.
+##
 ## The argument @var{n} must be a scalar.
 ## If unspecified, the length of the current colormap, or 64, is used.
 ## @seealso{colormap}
--- a/scripts/image/white.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/image/white.m	Sun May 10 21:37:19 2015 -0700
@@ -20,8 +20,9 @@
 ## @deftypefn  {Function File} {@var{map} =} white ()
 ## @deftypefnx {Function File} {@var{map} =} white (@var{n})
 ## Create color colormap.  This colormap is completely white.
-## The argument @var{n} should be a scalar.  If it
-## is omitted, the length of the current colormap or 64 is assumed.
+##
+## The argument @var{n} must be a scalar.
+## If unspecified, the length of the current colormap, or 64, is used.
 ## @seealso{colormap}
 ## @end deftypefn
 
--- a/scripts/image/winter.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/image/winter.m	Sun May 10 21:37:19 2015 -0700
@@ -20,6 +20,7 @@
 ## @deftypefn  {Function File} {@var{map} =} winter ()
 ## @deftypefnx {Function File} {@var{map} =} winter (@var{n})
 ## Create color colormap.  This colormap varies from blue to green.
+##
 ## The argument @var{n} must be a scalar.
 ## If unspecified, the length of the current colormap, or 64, is used.
 ## @seealso{colormap}
--- a/scripts/io/beep.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/io/beep.m	Sun May 10 21:37:19 2015 -0700
@@ -19,6 +19,10 @@
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} beep ()
 ## Produce a beep from the speaker (or visual bell).
+##
+## This function sends the alarm character @qcode{"\a"} to the terminal.
+## Depending on the user's configuration this may produce an audible beep,
+## a visual bell, or nothing at all.
 ## @seealso{puts, fputs, printf, fprintf}
 ## @end deftypefn
 
--- a/scripts/io/dlmwrite.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/io/dlmwrite.m	Sun May 10 21:37:19 2015 -0700
@@ -26,20 +26,19 @@
 ##
 ## @var{file} should be a file name or writable file ID given by @code{fopen}.
 ##
-## The parameter @var{delim} specifies the delimiter to use to separate
-## values on a row.
+## The parameter @var{delim} specifies the delimiter to use to separate values
+## on a row.
 ##
-## The value of @var{r} specifies the number of delimiter-only lines to
-## add to the start of the file.
+## The value of @var{r} specifies the number of delimiter-only lines to add to
+## the start of the file.
 ##
-## The value of @var{c} specifies the number of delimiters to prepend to
-## each line of data.
+## The value of @var{c} specifies the number of delimiters to prepend to each
+## line of data.
 ##
-## If the argument @qcode{"-append"} is given, append to the end of
-## @var{file}.
+## If the argument @qcode{"-append"} is given, append to the end of @var{file}.
 ##
-## In addition, the following keyword value pairs may appear at the end
-## of the argument list:
+## In addition, the following keyword value pairs may appear at the end of
+## the argument list:
 ##
 ## @table @asis
 ## @item @qcode{"append"}
@@ -49,12 +48,12 @@
 ## See @var{delim} above.
 ##
 ## @item @qcode{"newline"}
-## The character(s) to use to separate each row.  Three special cases
-## exist for this option.  @qcode{"unix"} is changed into
+## The character(s) to use to separate each row.  Three special cases exist
+## for this option.  @qcode{"unix"} is changed into
 ## @qcode{"@xbackslashchar{}n"}, @qcode{"pc"} is changed into
-## @qcode{"@xbackslashchar{}r@xbackslashchar{}n"}, and @qcode{"mac"} is changed
-## into @qcode{"@xbackslashchar{}r"}.  Any other value is used directly as the
-## newline separator.
+## @qcode{"@xbackslashchar{}r@xbackslashchar{}n"}, and @qcode{"mac"} is
+## changed into @qcode{"@xbackslashchar{}r"}.  Any other value is used
+## directly as the newline separator.
 ##
 ## @item @qcode{"roffset"}
 ## See @var{r} above.
@@ -63,8 +62,8 @@
 ## See @var{c} above.
 ##
 ## @item @qcode{"precision"}
-## The precision to use when writing the file.  It can either be a
-## format string (as used by fprintf) or a number of significant digits.
+## The precision to use when writing the file.  It can either be a format
+## string (as used by fprintf) or a number of significant digits.
 ## @end table
 ##
 ## @example
--- a/scripts/io/importdata.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/io/importdata.m	Sun May 10 21:37:19 2015 -0700
@@ -44,8 +44,8 @@
 ## @itemize
 ## @item ASCII table
 ##
-## Import ASCII table using the specified number of header rows and
-## the specified delimiter.
+## Import ASCII table using the specified number of header rows and the
+## specified delimiter.
 ##
 ## @item Image file
 ##
--- a/scripts/io/strread.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/io/strread.m	Sun May 10 21:37:19 2015 -0700
@@ -32,8 +32,7 @@
 ## been processed.
 ##
 ## The string @var{format} describes how the words in @var{str} should be
-## parsed.
-## It may contain any combination of the following specifiers:
+## parsed.  It may contain any combination of the following specifiers:
 ##
 ## @table @code
 ## @item %s
@@ -83,20 +82,20 @@
 ## [@var{a}, @var{b}, @var{c}] = strread (@var{str}, "%s %s %f");
 ## @end example
 ##
-## Optional numeric argument @var{format_repeat} can be used for
-## limiting the number of items read:
+## Optional numeric argument @var{format_repeat} can be used for limiting the
+## number of items read:
 ##
 ## @table @asis
 ## @item -1
 ## (default) read all of the string until the end.
 ##
 ## @item N
-## Read N times @var{nargout} items.  0 (zero) is an acceptable
-## value for @var{format_repeat}.
+## Read N times @var{nargout} items.  0 (zero) is an acceptable value for
+## @var{format_repeat}.
 ## @end table
 ##
-## The behavior of @code{strread} can be changed via property-value
-## pairs.  The following properties are recognized:
+## The behavior of @code{strread} can be changed via property-value pairs.  The
+## following properties are recognized:
 ##
 ## @table @asis
 ## @item @qcode{"commentstyle"}
@@ -128,8 +127,8 @@
 ##
 ## @item @qcode{"emptyvalue"}:
 ## Value to return for empty numeric values in non-whitespace delimited data.
-## The default is NaN@.  When the data type does not support NaN
-## (int32 for example), then default is zero.
+## The default is NaN@.  When the data type does not support NaN (int32 for
+## example), then default is zero.
 ##
 ## @item @qcode{"multipledelimsasone"}
 ## Treat a series of consecutive delimiters, without whitespace in between,
@@ -145,25 +144,28 @@
 ## If false (0), return an error.
 ##
 ## @item @qcode{"whitespace"}
-## Any character in @var{value} will be interpreted as whitespace and
-## trimmed; the string defining whitespace must be enclosed in double
-## quotes for proper processing of special characters like
-## @qcode{"@xbackslashchar{}t"}.  The default value for whitespace is
-## @qcode{" @xbackslashchar{}b@xbackslashchar{}r@xbackslashchar{}n@xbackslashchar{}t"}
-## (note the space).
-## Unless whitespace is set to '' (empty) AND at least one @qcode{"%s"} format
-## conversion specifier is supplied, a space is always part of whitespace.
+## Any character in @var{value} will be interpreted as whitespace and trimmed;
+## the string defining whitespace must be enclosed in double quotes for proper
+## processing of special characters like @qcode{"@xbackslashchar{}t"}.  The
+## default value for whitespace is
+## @c Note: the next line specifically has a newline which generates a space
+## @c       in the output of qcode, but keeps the next line < 80 characters. 
+## @qcode{"
+## @xbackslashchar{}b@xbackslashchar{}r@xbackslashchar{}n@xbackslashchar{}t"}
+## (note the space).  Unless whitespace is set to @qcode{""} (empty) AND at
+## least one @qcode{"%s"} format conversion specifier is supplied, a space is
+## always part of whitespace.
 ##
 ## @end table
 ##
-## When the number of words in @var{str} doesn't match an exact multiple
-## of the number of format conversion specifiers, strread's behavior
-## depends on the last character of @var{str}:
+## When the number of words in @var{str} doesn't match an exact multiple of
+## the number of format conversion specifiers, strread's behavior depends on
+## the last character of @var{str}:
 ##
 ## @table @asis
 ## @item last character = @qcode{"@xbackslashchar{}n"}
-## Data columns are padded with empty fields or Nan so that all columns
-## have equal length
+## Data columns are padded with empty fields or Nan so that all columns have
+## equal length
 ##
 ## @item last character is not @qcode{"@xbackslashchar{}n"}
 ## Data columns are not padded; strread returns columns of unequal length
--- a/scripts/io/textread.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/io/textread.m	Sun May 10 21:37:19 2015 -0700
@@ -38,14 +38,14 @@
 ## @item @qcode{"endofline"}:
 ## Specify a single character or
 ## @qcode{"@xbackslashchar{}r@xbackslashchar{}n"}.  If no value is given, it
-## will be inferred from the file.  If set to "" (empty string) EOLs are
-## ignored as delimiters.
+## will be inferred from the file.  If set to @qcode{""} (empty string) EOLs
+## are ignored as delimiters.
 ## @end itemize
 ##
 ## The optional input @var{n} specifies the number of data lines to read; in
 ## this sense it differs slightly from the format repeat count in strread.
 ##
-## If the format string is empty (not: omitted) and the file contains only
+## If the format string is empty (not just omitted) and the file contains only
 ## numeric data (excluding headerlines), textread will return a rectangular
 ## matrix with the number of columns matching the number of numeric fields on
 ## the first data line of the file.  Empty fields are returned as zero values.
--- a/scripts/java/javaArray.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/java/javaArray.m	Sun May 10 21:37:19 2015 -0700
@@ -20,15 +20,15 @@
 ## @deftypefn  {Function File} {@var{jary} =} javaArray (@var{classname}, @var{sz})
 ## @deftypefnx {Function File} {@var{jary} =} javaArray (@var{classname}, @var{m}, @var{n}, @dots{})
 ##
-## Create a Java array of size @var{sz} with elements of class
-## @var{classname}.  @var{classname} may be a Java object representing a class
-## or a string containing the fully qualified class name.  The size of
-## the object may also be specified with individual integer arguments
-## @var{m}, @var{n}, etc.
+## Create a Java array of size @var{sz} with elements of class @var{classname}.
 ##
-## The generated array is uninitialized.  All elements are set to null
-## if @var{classname} is a reference type, or to a default value (usually 0)
-## if @var{classname} is a primitive type.
+## @var{classname} may be a Java object representing a class or a string
+## containing the fully qualified class name.  The size of the object may
+## also be specified with individual integer arguments @var{m}, @var{n}, etc.
+##
+## The generated array is uninitialized.  All elements are set to null if
+## @var{classname} is a reference type, or to a default value (usually 0) if
+## @var{classname} is a primitive type.
 ##
 ## Sample code:
 ##
--- a/scripts/java/java_get.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/java/java_get.m	Sun May 10 21:37:19 2015 -0700
@@ -18,12 +18,13 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {@var{val} =} java_get (@var{obj}, @var{name})
-## Get the value of the field @var{name} of the Java object @var{obj}.  For
-## static fields, @var{obj} can be a string representing the fully qualified
-## name of the corresponding class.
+## Get the value of the field @var{name} of the Java object @var{obj}.
+##
+## For static fields, @var{obj} can be a string representing the fully
+## qualified name of the corresponding class.
 ##
 ## When @var{obj} is a regular Java object, structure-like indexing can be
-## used as a shortcut syntax.  For instance, the two following statements are
+## used as a shortcut syntax.  For instance, the following two statements are
 ## equivalent
 ##
 ## @example
--- a/scripts/java/java_set.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/java/java_set.m	Sun May 10 21:37:19 2015 -0700
@@ -19,11 +19,13 @@
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {@var{obj} =} java_set (@var{obj}, @var{name}, @var{val})
 ## Set the value of the field @var{name} of the Java object @var{obj} to
-## @var{val}.  For static fields, @var{obj} can be a string representing the
-## fully qualified named of the corresponding Java class.
+## @var{val}.
+##
+## For static fields, @var{obj} can be a string representing the fully
+## qualified named of the corresponding Java class.
 ##
 ## When @var{obj} is a regular Java object, structure-like indexing can be
-## used as a shortcut syntax.  For instance, the two following statements are
+## used as a shortcut syntax.  For instance, the following two statements are
 ## equivalent
 ##
 ## @example
--- a/scripts/java/javaaddpath.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/java/javaaddpath.m	Sun May 10 21:37:19 2015 -0700
@@ -20,10 +20,11 @@
 ## -*- texinfo -*-
 ## @deftypefn  {Function File} {} javaaddpath (@var{clspath})
 ## @deftypefnx {Function File} {} javaaddpath (@var{clspath1}, @dots{})
-## Add @var{clspath} to the dynamic class path of the Java virtual
-## machine.  @var{clspath} may either be a directory where @file{.class}
-## files are found, or a @file{.jar} file containing Java classes.
-## Multiple paths may be added at once by specifying additional arguments.
+## Add @var{clspath} to the dynamic class path of the Java virtual machine.
+##
+## @var{clspath} may either be a directory where @file{.class} files are
+## found, or a @file{.jar} file containing Java classes.  Multiple paths may
+## be added at once by specifying additional arguments.
 ## @seealso{javarmpath, javaclasspath}
 ## @end deftypefn
 
--- a/scripts/java/javachk.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/java/javachk.m	Sun May 10 21:37:19 2015 -0700
@@ -39,36 +39,34 @@
 ## Swing components for lightweight GUIs.
 ## @end table
 ##
-## If @var{feature} is supported and:
+## If @var{feature} is supported and
 ##
 ## @itemize @bullet
 ## @item
-## No output argument is requested:
+## no output argument is requested:
 ##
 ## Return an empty string
 ##
 ## @item
-## An output argument is requested:
+## an output argument is requested:
 ##
 ## Return a struct with fields @qcode{"feature"} and @qcode{"identifier"}
 ## both empty
-##
 ## @end itemize
 ##
-## If @var{feature} is not supported and:
+## If @var{feature} is not supported and
 ##
 ## @itemize @bullet
 ## @item
-## No output argument is requested:
+## no output argument is requested:
 ##
-## Emit an error message.
+## Emit an error message
 ##
 ## @item
-## An output argument is requested:
+## an output argument is requested:
 ##
-## Return a struct with field @qcode{"feature"} set to @var{feature} and
-## field @qcode{"identifier"} set to @var{component}
-##
+## Return a struct with field @qcode{"feature"} set to @var{feature} and field
+## @qcode{"identifier"} set to @var{component}
 ## @end itemize
 ##
 ## The optional input @var{component} will be used in place of @var{feature}
@@ -81,13 +79,13 @@
 ## Other features may be available if Octave was compiled with the Java
 ## Interface and Java is installed.
 ##
-## @seealso{error, usejava}
+## @seealso{usejava, error}
 ## @end deftypefn
 
 ## Author: Philip Nienhuis <prnienhuis at users.sf.net>
 ## Created: 2014-04-19
 
-function msg = javachk (feature, component="")
+function msg = javachk (feature, component = "")
 
   msg = "";
   chk = false;
--- a/scripts/java/javaclasspath.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/java/javaclasspath.m	Sun May 10 21:37:19 2015 -0700
@@ -31,12 +31,12 @@
 ## @item If no output is requested, the dynamic and static classpaths are
 ## printed to the standard output.
 ##
-## @item If one output value @var{dpath} is requested, the result is
-## the dynamic classpath.
+## @item If one output value @var{dpath} is requested, the result is the
+## dynamic classpath.
 ##
-## @item If two output values@var{dpath} and @var{spath} are
-## requested, the first variable will contain the dynamic classpath and
-## the second will be contain the static classpath.
+## @item If two output values@var{dpath} and @var{spath} are requested, the
+## first variable will contain the dynamic classpath and the second will
+## contain the static classpath.
 ## @end itemize
 ##
 ## If called with a single input parameter @var{what}:
--- a/scripts/java/javamem.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/java/javamem.m	Sun May 10 21:37:19 2015 -0700
@@ -19,44 +19,41 @@
 ## -*- texinfo -*-
 ## @deftypefn  {Function File} {} javamem ()
 ## @deftypefnx {Function File} {@var{jmem} =} javamem ()
-## Show the current memory usage of the Java virtual machine (JVM)
-## and run the garbage collector.
+## Show the current memory usage of the Java virtual machine (JVM) and run the
+## garbage collector.
 ##
 ## When no return argument is given the info is printed to the screen.
-## Otherwise, the output cell array @var{jmem} contains Maximum, Total,
-## and Free memory (in bytes).
+## Otherwise, the output cell array @var{jmem} contains Maximum, Total, and
+## Free memory (in bytes).
 ##
-## All Java-based routines are run in the JVM's shared memory pool,
-## a dedicated and separate part of memory claimed by the JVM from
-## your computer's total memory (which comprises physical RAM and
-## virtual memory / swap space on hard disk).
+## All Java-based routines are run in the JVM's shared memory pool, a
+## dedicated and separate part of memory claimed by the JVM from your
+## computer's total memory (which comprises physical RAM and virtual memory /
+## swap space on hard disk).
 ##
 ## The maximum allowable memory usage can be configured using the file
-## @file{java.opts}.  The directory where this file resides is
-## determined by the environment variable @w{@env{OCTAVE_JAVA_DIR}}.
-## If unset, the directory where @file{javaaddpath.m} resides is used instead
-## (typically
+## @file{java.opts}.  The directory where this file resides is determined by
+## the environment variable @w{@env{OCTAVE_JAVA_DIR}}.  If unset, the directory
+## where @file{javaaddpath.m} resides is used instead (typically
 ## @file{@w{@env{OCTAVE_HOME}}/share/octave/@w{@env{OCTAVE_VERSION}}/m/java/}).
 ##
-## @file{java.opts} is a plain text file with one option per line.  The
-## default initial memory size and default maximum memory size (which
-## are both system dependent) can be overridden like so:
+## @file{java.opts} is a plain text file with one option per line.  The default
+## initial memory size and default maximum memory size (which are both system
+## dependent) can be overridden like so:
 ##
 ## @nospell{-Xms64m}
 ##
 ## @nospell{-Xmx512m}
 ##
 ## (in megabytes in this example).
-## You can adapt these values to your own requirements if your system
-## has limited available physical memory or if you get Java memory
-## errors.
+## You can adapt these values to your own requirements if your system has
+## limited available physical memory or if you get Java memory errors.
 ##
-## "Total memory" is what the operating system has currently assigned
-## to the JVM and depends on actual and active memory usage.
-## "Free memory" is self-explanatory.  During operation of Java-based
-## Octave functions the amount of Total and Free memory will vary,
-## due to Java's own cleaning up and your operating system's memory
-## management.
+## @qcode{"Total memory"} is what the operating system has currently assigned
+## to the JVM and depends on actual and active memory usage.  
+## @qcode{"Free memory"} is self-explanatory.  During operation of Java-based
+## Octave functions the amount of Total and Free memory will vary, due to
+## Java's own cleaning up and your operating system's memory management.
 ## @end deftypefn
 
 ## Author: Philip Nienhuis
--- a/scripts/java/javarmpath.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/java/javarmpath.m	Sun May 10 21:37:19 2015 -0700
@@ -21,9 +21,11 @@
 ## @deftypefn  {Function File} {} javarmpath (@var{clspath})
 ## @deftypefnx {Function File} {} javarmpath (@var{clspath1}, @dots{})
 ## Remove @var{clspath} from the dynamic class path of the Java virtual
-## machine.  @var{clspath} may either be a directory where @file{.class}
-## files are found, or a @file{.jar} file containing Java classes.
-## Multiple paths may be removed at once by specifying additional arguments.
+## machine.
+##
+## @var{clspath} may either be a directory where @file{.class} files are found,
+## or a @file{.jar} file containing Java classes.  Multiple paths may be
+## removed at once by specifying additional arguments.
 ## @seealso{javaaddpath, javaclasspath}
 ## @end deftypefn
 
--- a/scripts/linear-algebra/bandwidth.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/linear-algebra/bandwidth.m	Sun May 10 21:37:19 2015 -0700
@@ -22,9 +22,8 @@
 ## Compute the bandwidth of @var{A}.
 ##
 ## The @var{type} argument is the string @qcode{"lower"} for the lower
-## bandwidth and @qcode{"upper"} for the upper bandwidth.
-## If no @var{type} is specified return both the lower and upper bandwidth
-## of @var{A}.
+## bandwidth and @qcode{"upper"} for the upper bandwidth.  If no @var{type} is
+## specified return both the lower and upper bandwidth of @var{A}.
 ##
 ## The lower/upper bandwidth of a matrix is the number of
 ## subdiagonals/superdiagonals with nonzero entries.
--- a/scripts/linear-algebra/commutation_matrix.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/linear-algebra/commutation_matrix.m	Sun May 10 21:37:19 2015 -0700
@@ -23,35 +23,35 @@
 ##  $K_{m,n}$
 ## @end tex
 ## @ifnottex
-##  K(m,n)
+## K(m,n)
 ## @end ifnottex
-##  which is the unique
+## which is the unique
 ## @tex
 ##  $m n \times m n$
 ## @end tex
 ## @ifnottex
-##  @var{m}*@var{n} by @var{m}*@var{n}
+## @var{m}*@var{n} by @var{m}*@var{n}
 ## @end ifnottex
-##  matrix such that
+## matrix such that
 ## @tex
 ##  $K_{m,n} \cdot {\rm vec} (A) = {\rm vec} (A^T)$
 ## @end tex
 ## @ifnottex
-##  @math{K(m,n) * vec(A) = vec(A')}
+## @math{K(m,n) * vec(A) = vec(A')}
 ## @end ifnottex
-##  for all
+## for all
 ## @tex
 ##  $m\times n$
 ## @end tex
 ## @ifnottex
-##  @math{m} by @math{n}
+## @math{m} by @math{n}
 ## @end ifnottex
-##  matrices
+## matrices
 ## @tex
 ##  $A$.
 ## @end tex
 ## @ifnottex
-##  @math{A}.
+## @math{A}.
 ## @end ifnottex
 ##
 ## If only one argument @var{m} is given,
@@ -59,9 +59,9 @@
 ##  $K_{m,m}$
 ## @end tex
 ## @ifnottex
-##  @math{K(m,m)}
+## @math{K(m,m)}
 ## @end ifnottex
-##  is returned.
+## is returned.
 ##
 ## See @nospell{Magnus and Neudecker} (1988), @cite{Matrix Differential
 ## Calculus with Applications in Statistics and Econometrics.}
--- a/scripts/linear-algebra/cond.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/linear-algebra/cond.m	Sun May 10 21:37:19 2015 -0700
@@ -31,8 +31,8 @@
 ##
 ## By default, @code{@var{p} = 2} is used which implies a (relatively slow)
 ## singular value decomposition.  Other possible selections are
-## @code{@var{p} = 1, Inf, "fro"} which are generally faster.  See
-## @code{norm} for a full discussion of possible @var{p} values.
+## @code{@var{p} = 1, Inf, "fro"} which are generally faster.  See @code{norm}
+## for a full discussion of possible @var{p} values.
 ##
 ## The condition number of a matrix quantifies the sensitivity of the matrix
 ## inversion operation when small changes are made to matrix elements.  Ideally
--- a/scripts/linear-algebra/condest.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/linear-algebra/condest.m	Sun May 10 21:37:19 2015 -0700
@@ -23,8 +23,9 @@
 ## @deftypefnx {Function File} {[@var{est}, @var{v}] =} condest (@var{A}, @var{solve}, @var{solve_t}, @var{t})
 ## @deftypefnx {Function File} {[@var{est}, @var{v}] =} condest (@var{apply}, @var{apply_t}, @var{solve}, @var{solve_t}, @var{n}, @var{t})
 ##
-## Estimate the 1-norm condition number of a matrix @var{A}
-## using @var{t} test vectors using a randomized 1-norm estimator.
+## Estimate the 1-norm condition number of a matrix @var{A} using @var{t} test
+## vectors using a randomized 1-norm estimator.
+##
 ## If @var{t} exceeds 5, then only 5 test vectors are used.
 ##
 ## If the matrix is not explicit, e.g., when estimating the condition
@@ -47,11 +48,10 @@
 ##
 ## The implicit version requires an explicit dimension @var{n}.
 ##
-## @code{condest} uses a randomized algorithm to approximate
-## the 1-norms.
+## @code{condest} uses a randomized algorithm to approximate the 1-norms.
 ##
-## @code{condest} returns the 1-norm condition estimate @var{est} and
-## a vector @var{v} satisfying @code{norm (A*v, 1) == norm (A, 1) * norm
+## @code{condest} returns the 1-norm condition estimate @var{est} and a vector
+## @var{v} satisfying @code{norm (A*v, 1) == norm (A, 1) * norm
 ## (@var{v}, 1) / @var{est}}.  When @var{est} is large, @var{v} is an
 ## approximate null vector.
 ##
--- a/scripts/linear-algebra/cross.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/linear-algebra/cross.m	Sun May 10 21:37:19 2015 -0700
@@ -19,8 +19,16 @@
 ## -*- texinfo -*-
 ## @deftypefn  {Function File} {} cross (@var{x}, @var{y})
 ## @deftypefnx {Function File} {} cross (@var{x}, @var{y}, @var{dim})
-## Compute the vector cross product of two 3-dimensional vectors
-## @var{x} and @var{y}.
+## Compute the vector cross product of two 3-dimensional vectors @var{x} and
+## @var{y}.
+##
+## If @var{x} and @var{y} are matrices, the cross product is applied along the
+## first dimension with three elements.
+##
+## The optional argument  @var{dim} forces the cross product to be calculated
+## along the specified dimension.
+##
+## Example Code:
 ##
 ## @example
 ## @group
@@ -29,10 +37,6 @@
 ## @end group
 ## @end example
 ##
-## If @var{x} and @var{y} are matrices, the cross product is applied
-## along the first dimension with 3 elements.  The optional argument
-## @var{dim} forces the cross product to be calculated along
-## the specified dimension.
 ## @seealso{dot, curl, divergence}
 ## @end deftypefn
 
--- a/scripts/linear-algebra/duplication_matrix.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/linear-algebra/duplication_matrix.m	Sun May 10 21:37:19 2015 -0700
@@ -23,35 +23,35 @@
 ##  $D_n$
 ## @end tex
 ## @ifnottex
-##  @nospell{@math{Dn}}
+## @nospell{@math{Dn}}
 ## @end ifnottex
-##  which is the unique
+## which is the unique
 ## @tex
 ##  $n^2 \times n(n+1)/2$
 ## @end tex
 ## @ifnottex
-##  @math{n^2} by @math{n*(n+1)/2}
+## @math{n^2} by @math{n*(n+1)/2}
 ## @end ifnottex
-##  matrix such that
+## matrix such that
 ## @tex
 ##  $D_n * {\rm vech} (A) = {\rm vec} (A)$
 ## @end tex
 ## @ifnottex
-##  @nospell{@math{Dn vech (A) = vec (A)}}
+## @nospell{@math{Dn vech (A) = vec (A)}}
 ## @end ifnottex
-##  for all symmetric
+## for all symmetric
 ## @tex
 ##  $n \times n$
 ## @end tex
 ## @ifnottex
-##  @math{n} by @math{n}
+## @math{n} by @math{n}
 ## @end ifnottex
-##  matrices
+## matrices
 ## @tex
 ##  $A$.
 ## @end tex
 ## @ifnottex
-##  @math{A}.
+## @math{A}.
 ## @end ifnottex
 ##
 ## See @nospell{Magnus and Neudecker} (1988), @cite{Matrix Differential
--- a/scripts/linear-algebra/expm.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/linear-algebra/expm.m	Sun May 10 21:37:19 2015 -0700
@@ -18,8 +18,9 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} expm (@var{A})
-## Return the exponential of a matrix, defined as the infinite Taylor
-## series
+## Return the exponential of a matrix.
+##
+## The matrix exponential is defined as the infinite Taylor series
 ## @tex
 ## $$
 ##  \exp (A) = I + A + {A^2 \over 2!} + {A^3 \over 3!} + \cdots
@@ -32,7 +33,7 @@
 ## @end example
 ##
 ## @end ifnottex
-## The Taylor series is @emph{not} the way to compute the matrix
+## However, the Taylor series is @emph{not} the way to compute the matrix
 ## exponential; see @nospell{Moler and Van Loan}, @cite{Nineteen Dubious Ways
 ## to Compute the Exponential of a Matrix}, SIAM Review, 1978.  This routine
 ## uses Ward's diagonal Pad@'e approximation method with three step
--- a/scripts/linear-algebra/housh.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/linear-algebra/housh.m	Sun May 10 21:37:19 2015 -0700
@@ -18,8 +18,8 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {[@var{housv}, @var{beta}, @var{zer}] =} housh (@var{x}, @var{j}, @var{z})
-## Compute Householder reflection vector @var{housv} to reflect @var{x}
-## to be the j-th column of identity, i.e.,
+## Compute Householder reflection vector @var{housv} to reflect @var{x} to be
+## the j-th column of identity, i.e.,
 ##
 ## @example
 ## @group
--- a/scripts/linear-algebra/isdefinite.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/linear-algebra/isdefinite.m	Sun May 10 21:37:19 2015 -0700
@@ -21,8 +21,9 @@
 ## @deftypefnx {Function File} {} isdefinite (@var{A}, @var{tol})
 ## Return 1 if @var{A} is symmetric positive definite within the
 ## tolerance specified by @var{tol} or 0 if @var{A} is symmetric
-## positive semidefinite.  Otherwise, return -1.  If @var{tol}
-## is omitted, use a tolerance of
+## positive semidefinite.  Otherwise, return -1.
+##
+## If @var{tol} is omitted, use a tolerance of
 ## @code{100 * eps * norm (@var{A}, "fro")}
 ## @seealso{issymmetric, ishermitian}
 ## @end deftypefn
--- a/scripts/linear-algebra/ishermitian.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/linear-algebra/ishermitian.m	Sun May 10 21:37:19 2015 -0700
@@ -24,6 +24,7 @@
 ## @var{tol}.
 ##
 ## The default tolerance is zero (uses faster code).
+##
 ## Matrix @var{A} is considered symmetric if
 ## @code{norm (@var{A} - @var{A}', Inf) / norm (@var{A}, Inf) < @var{tol}}.
 ## @seealso{issymmetric, isdefinite}
--- a/scripts/linear-algebra/issymmetric.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/linear-algebra/issymmetric.m	Sun May 10 21:37:19 2015 -0700
@@ -24,6 +24,7 @@
 ## by @var{tol}.
 ##
 ## The default tolerance is zero (uses faster code).
+##
 ## Matrix @var{A} is considered symmetric if
 ## @code{norm (@var{A} - @var{A}.', Inf) / norm (@var{A}, Inf) < @var{tol}}.
 ## @seealso{ishermitian, isdefinite}
--- a/scripts/linear-algebra/istril.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/linear-algebra/istril.m	Sun May 10 21:37:19 2015 -0700
@@ -20,8 +20,8 @@
 ## @deftypefn {Function File} {} istril (@var{A})
 ## Return true if @var{A} is a lower triangular matrix.
 ##
-## A lower triangular matrix has nonzero entries only on the main diagonal
-## and below.
+## A lower triangular matrix has nonzero entries only on the main diagonal and
+## below.
 ## @seealso{istriu, isbanded, isdiag, tril, bandwidth}
 ## @end deftypefn
 
--- a/scripts/linear-algebra/istriu.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/linear-algebra/istriu.m	Sun May 10 21:37:19 2015 -0700
@@ -20,8 +20,8 @@
 ## @deftypefn {Function File} {} istriu (@var{A})
 ## Return true if @var{A} is an upper triangular matrix.
 ##
-## An upper triangular matrix has nonzero entries only on the main diagonal
-## and above.
+## An upper triangular matrix has nonzero entries only on the main diagonal and
+## above.
 ## @seealso{isdiag, isbanded, istril, triu, bandwidth}
 ## @end deftypefn
 
--- a/scripts/linear-algebra/krylov.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/linear-algebra/krylov.m	Sun May 10 21:37:19 2015 -0700
@@ -25,29 +25,28 @@
 ## @end example
 ##
 ## @noindent
-## Using Householder reflections to guard against loss of orthogonality.
+## using Householder reflections to guard against loss of orthogonality.
 ##
 ## If @var{V} is a vector, then @var{h} contains the Hessenberg matrix
-## such that @nospell{@tcode{a*u == u*h+rk*ek'}}, in which @code{rk =
-## a*u(:,k)-u*h(:,k)}, and @nospell{@tcode{ek'}} is the vector
+## such that @nospell{@tcode{a*u == u*h+rk*ek'}}, in which
+## @code{rk = a*u(:,k)-u*h(:,k)}, and @nospell{@tcode{ek'}} is the vector
 ## @code{[0, 0, @dots{}, 1]} of length @code{k}.  Otherwise, @var{h} is
 ## meaningless.
 ##
-## If @var{V} is a vector and @var{k} is greater than
-## @code{length (A) - 1}, then @var{h} contains the Hessenberg matrix such
-## that @code{a*u == u*h}.
+## If @var{V} is a vector and @var{k} is greater than @code{length (A) - 1},
+## then @var{h} contains the Hessenberg matrix such that @code{a*u == u*h}.
 ##
-## The value of @var{nu} is the dimension of the span of the Krylov
-## subspace (based on @var{eps1}).
+## The value of @var{nu} is the dimension of the span of the Krylov subspace
+## (based on @var{eps1}).
 ##
-## If @var{b} is a vector and @var{k} is greater than @var{m-1}, then
-## @var{h} contains the Hessenberg decomposition of @var{A}.
+## If @var{b} is a vector and @var{k} is greater than @var{m-1}, then @var{h}
+## contains the Hessenberg decomposition of @var{A}.
 ##
-## The optional parameter @var{eps1} is the threshold for zero.  The
-## default value is 1e-12.
+## The optional parameter @var{eps1} is the threshold for zero.  The default
+## value is 1e-12.
 ##
-## If the optional parameter @var{pflg} is nonzero, row pivoting is used
-## to improve numerical behavior.  The default value is 0.
+## If the optional parameter @var{pflg} is nonzero, row pivoting is used to
+## improve numerical behavior.  The default value is 0.
 ##
 ## Reference: @nospell{A. Hodel, P. Misra}, @cite{Partial Pivoting in the
 ## Computation of Krylov Subspaces of Large Sparse Systems}, Proceedings of
--- a/scripts/linear-algebra/logm.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/linear-algebra/logm.m	Sun May 10 21:37:19 2015 -0700
@@ -22,16 +22,19 @@
 ## @deftypefn  {Function File} {@var{s} =} logm (@var{A})
 ## @deftypefnx {Function File} {@var{s} =} logm (@var{A}, @var{opt_iters})
 ## @deftypefnx {Function File} {[@var{s}, @var{iters}] =} logm (@dots{})
-## Compute the matrix logarithm of the square matrix @var{A}.  The
-## implementation utilizes a Pad@'e approximant and the identity
+## Compute the matrix logarithm of the square matrix @var{A}.
+##
+## The implementation utilizes a Pad@'e approximant and the identity
 ##
 ## @example
 ## logm (@var{A}) = 2^k * logm (@var{A}^(1 / 2^k))
 ## @end example
 ##
-## The optional argument @var{opt_iters} is the maximum number of square roots
-## to compute and defaults to 100.  The optional output @var{iters} is the
-## number of square roots actually computed.
+## The optional input @var{opt_iters} is the maximum number of square roots
+## to compute and defaults to 100.
+##
+## The optional output @var{iters} is the number of square roots actually
+## computed.
 ## @seealso{expm, sqrtm}
 ## @end deftypefn
 
--- a/scripts/linear-algebra/normest.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/linear-algebra/normest.m	Sun May 10 21:37:19 2015 -0700
@@ -21,13 +21,16 @@
 ## @deftypefn  {Function File} {@var{n} =} normest (@var{A})
 ## @deftypefnx {Function File} {@var{n} =} normest (@var{A}, @var{tol})
 ## @deftypefnx {Function File} {[@var{n}, @var{c}] =} normest (@dots{})
-## Estimate the 2-norm of the matrix @var{A} using a power series
-## analysis.  This is typically used for large matrices, where the cost
-## of calculating @code{norm (@var{A})} is prohibitive and an approximation
-## to the 2-norm is acceptable.
+## Estimate the 2-norm of the matrix @var{A} using a power series analysis.
+##
+## This is typically used for large matrices, where the cost of calculating
+## @code{norm (@var{A})} is prohibitive and an approximation to the 2-norm is
+## acceptable.
 ##
 ## @var{tol} is the tolerance to which the 2-norm is calculated.  By default
-## @var{tol} is 1e-6.  @var{c} returns the number of iterations needed for
+## @var{tol} is 1e-6.
+##
+## The optional output @var{c} returns the number of iterations needed for
 ## @code{normest} to converge.
 ## @end deftypefn
 
--- a/scripts/linear-algebra/null.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/linear-algebra/null.m	Sun May 10 21:37:19 2015 -0700
@@ -21,9 +21,9 @@
 ## @deftypefnx {Function File} {} null (@var{A}, @var{tol})
 ## Return an orthonormal basis of the null space of @var{A}.
 ##
-## The dimension of the null space is taken as the number of singular
-## values of @var{A} not greater than @var{tol}.  If the argument @var{tol}
-## is missing, it is computed as
+## The dimension of the null space is taken as the number of singular values of
+## @var{A} not greater than @var{tol}.  If the argument @var{tol} is missing,
+## it is computed as
 ##
 ## @example
 ## max (size (@var{A})) * max (svd (@var{A})) * eps
--- a/scripts/linear-algebra/onenormest.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/linear-algebra/onenormest.m	Sun May 10 21:37:19 2015 -0700
@@ -21,8 +21,9 @@
 ## @deftypefnx {Function File} {[@var{est}, @var{v}, @var{w}, @var{iter}] =} onenormest (@var{apply}, @var{apply_t}, @var{n}, @var{t})
 ##
 ## Apply @nospell{Higham and Tisseur's} randomized block 1-norm estimator to
-## matrix @var{A} using @var{t} test vectors.  If @var{t} exceeds 5, then
-## only 5 test vectors are used.
+## matrix @var{A} using @var{t} test vectors.
+##
+## If @var{t} exceeds 5, then only 5 test vectors are used.
 ##
 ## If the matrix is not explicit, e.g., when estimating the norm of
 ## @code{inv (@var{A})} given an LU@tie{}factorization, @code{onenormest}
@@ -31,11 +32,10 @@
 ## @var{n} by @var{t}.  The implicit version requires an explicit dimension
 ## @var{n}.
 ##
-## Returns the norm estimate @var{est}, two vectors @var{v} and
-## @var{w} related by norm
-## @code{(@var{w}, 1) = @var{est} * norm (@var{v}, 1)},
-## and the number of iterations @var{iter}.  The number of
-## iterations is limited to 10 and is at least 2.
+## Returns the norm estimate @var{est}, two vectors @var{v} and @var{w} related
+## by norm @code{(@var{w}, 1) = @var{est} * norm (@var{v}, 1)}, and the number
+## of iterations @var{iter}.  The number of iterations is limited to 10 and is
+## at least 2.
 ##
 ## References:
 ##
--- a/scripts/linear-algebra/orth.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/linear-algebra/orth.m	Sun May 10 21:37:19 2015 -0700
@@ -21,9 +21,9 @@
 ## @deftypefnx {Function File} {} orth (@var{A}, @var{tol})
 ## Return an orthonormal basis of the range space of @var{A}.
 ##
-## The dimension of the range space is taken as the number of singular
-## values of @var{A} greater than @var{tol}.  If the argument @var{tol} is
-## missing, it is computed as
+## The dimension of the range space is taken as the number of singular values
+## of @var{A} greater than @var{tol}.  If the argument @var{tol} is missing, it
+## is computed as
 ##
 ## @example
 ## max (size (@var{A})) * max (svd (@var{A})) * eps
--- a/scripts/linear-algebra/qzhess.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/linear-algebra/qzhess.m	Sun May 10 21:37:19 2015 -0700
@@ -22,7 +22,9 @@
 ## @code{(@var{A}, @var{B})}, returning
 ## @code{@var{aa} = @var{q} * @var{A} * @var{z}},
 ## @code{@var{bb} = @var{q} * @var{B} * @var{z}}, with @var{q} and @var{z}
-## orthogonal.  For example:
+## orthogonal.
+##
+## For example:
 ##
 ## @example
 ## @group
--- a/scripts/linear-algebra/rank.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/linear-algebra/rank.m	Sun May 10 21:37:19 2015 -0700
@@ -21,9 +21,9 @@
 ## @deftypefnx {Function File} {} rank (@var{A}, @var{tol})
 ## Compute the rank of matrix @var{A}, using the singular value decomposition.
 ##
-## The rank is taken to be the number of singular values of @var{A} that
-## are greater than the specified tolerance @var{tol}.  If the second
-## argument is omitted, it is taken to be
+## The rank is taken to be the number of singular values of @var{A} that are
+## greater than the specified tolerance @var{tol}.  If the second argument is
+## omitted, it is taken to be
 ##
 ## @example
 ## tol = max (size (@var{A})) * sigma(1) * eps;
@@ -33,10 +33,9 @@
 ## where @code{eps} is machine precision and @code{sigma(1)} is the largest
 ## singular value of @var{A}.
 ##
-## The rank of a matrix is the number of linearly independent rows or
-## columns and determines how many particular solutions exist to a system
-## of equations.  Use @code{null} for finding the remaining homogenous
-## solutions.
+## The rank of a matrix is the number of linearly independent rows or columns
+## and determines how many particular solutions exist to a system of equations.
+## Use @code{null} for finding the remaining homogenous solutions.
 ##
 ## Example:
 ##
@@ -51,8 +50,8 @@
 ## @end example
 ##
 ## @noindent
-## The number of linearly independent rows is only 2 because the final row
-## is a linear combination of -1*row1 + 2*row2.
+## The number of linearly independent rows is only 2 because the final row is a
+## linear combination of -1*row1 + 2*row2.
 ##
 ## @seealso{null, sprank, svd}
 ## @end deftypefn
--- a/scripts/linear-algebra/rref.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/linear-algebra/rref.m	Sun May 10 21:37:19 2015 -0700
@@ -20,12 +20,14 @@
 ## @deftypefn  {Function File} {} rref (@var{A})
 ## @deftypefnx {Function File} {} rref (@var{A}, @var{tol})
 ## @deftypefnx {Function File} {[@var{r}, @var{k}] =} rref (@dots{})
-## Return the reduced row echelon form of @var{A}.  @var{tol} defaults
-## to @code{eps * max (size (@var{A})) * norm (@var{A}, inf)}.
+## Return the reduced row echelon form of @var{A}.
 ##
-## Called with two return arguments, @var{k} returns the vector of
-## "bound variables", which are those columns on which elimination
-## has been performed.
+## @var{tol} defaults to
+## @code{eps * max (size (@var{A})) * norm (@var{A}, inf)}.
+##
+## The optional return argument @var{k} contains the vector of
+## "bound variables", which are those columns on which elimination has been
+## performed.
 ##
 ## @end deftypefn
 
--- a/scripts/linear-algebra/vech.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/linear-algebra/vech.m	Sun May 10 21:37:19 2015 -0700
@@ -21,9 +21,10 @@
 ## @deftypefn {Function File} {} vech (@var{x})
 ## Return the vector obtained by eliminating all superdiagonal elements of
 ## the square matrix @var{x} and stacking the result one column above the
-## other.  This has uses in matrix calculus where the underlying matrix
-## is symmetric and it would be pointless to keep values above the main
-## diagonal.
+## other.
+##
+## This has uses in matrix calculus where the underlying matrix is symmetric
+## and it would be pointless to keep values above the main diagonal.
 ## @seealso{vec}
 ## @end deftypefn
 
--- a/scripts/miscellaneous/bzip2.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/miscellaneous/bzip2.m	Sun May 10 21:37:19 2015 -0700
@@ -22,11 +22,11 @@
 ## @deftypefnx {Function File} {@var{filelist} =} bzip2 (@var{files}, @var{dir})
 ## Compress the list of files specified in @var{files}.
 ##
-## @var{files} is a character array or cell array of strings.  Shell
-## wildcards in the filename such as @samp{*} or @samp{?} are accepted and
-## expanded.  Each file is compressed separately and a new file with a
-## @file{".bz2"} extension is created.  The original files are not modified,
-## but existing compressed files will be silently overwritten.
+## @var{files} is a character array or cell array of strings.  Shell wildcards
+## in the filename such as @samp{*} or @samp{?} are accepted and expanded.
+## Each file is compressed separately and a new file with a @file{".bz2"}
+## extension is created.  The original files are not modified, but existing
+## compressed files will be silently overwritten.
 ##
 ## If @var{dir} is defined the compressed files are placed in this directory,
 ## rather than the original directory where the uncompressed file resides.
--- a/scripts/miscellaneous/citation.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/miscellaneous/citation.m	Sun May 10 21:37:19 2015 -0700
@@ -22,9 +22,11 @@
 ## Display instructions for citing GNU Octave or its packages in publications.
 ##
 ## When called without an argument, display information on how to cite the core
-## GNU Octave system.  When given a package name @var{package}, display
-## information on citing the specific named package.  Note that some packages
-## may not yet have instructions on how to cite them.
+## GNU Octave system.
+##
+## When given a package name @var{package}, display information on citing the
+## specific named package.  Note that some packages may not yet have
+## instructions on how to cite them.
 ##
 ## The GNU Octave developers and its active community of package authors have
 ## invested a lot of time and effort in creating GNU Octave as it is today.
--- a/scripts/miscellaneous/compare_versions.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/miscellaneous/compare_versions.m	Sun May 10 21:37:19 2015 -0700
@@ -20,16 +20,15 @@
 ## @deftypefn {Function File} {} compare_versions (@var{v1}, @var{v2}, @var{operator})
 ## Compare two version strings using the given @var{operator}.
 ##
-## This function assumes that versions @var{v1} and @var{v2} are
-## arbitrarily long strings made of numeric and period characters
-## possibly followed by an arbitrary string (e.g., @qcode{"1.2.3"},
-## @qcode{"0.3"}, @qcode{"0.1.2+"}, or @qcode{"1.2.3.4-test1"}).
+## This function assumes that versions @var{v1} and @var{v2} are arbitrarily
+## long strings made of numeric and period characters possibly followed by an
+## arbitrary string (e.g., @qcode{"1.2.3"}, @qcode{"0.3"}, @qcode{"0.1.2+"},
+## or @qcode{"1.2.3.4-test1"}).
 ##
-## The version is first split into numeric and character portions
-## and then the parts are padded to be the same length (i.e., @qcode{"1.1"}
-## would be padded to be @qcode{"1.1.0"} when being compared with
-## @qcode{"1.1.1"}, and separately, the character parts of the strings are
-## padded with nulls).
+## The version is first split into numeric and character portions and then
+## the parts are padded to be the same length (i.e., @qcode{"1.1"} would be
+## padded to be @qcode{"1.1.0"} when being compared with @qcode{"1.1.1"}, and
+## separately, the character parts of the strings are padded with nulls).
 ##
 ## The operator can be any logical operator from the set
 ##
--- a/scripts/miscellaneous/computer.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/miscellaneous/computer.m	Sun May 10 21:37:19 2015 -0700
@@ -22,8 +22,8 @@
 ## @deftypefnx {Function File} {[@var{c}, @var{maxsize}] =} computer ()
 ## @deftypefnx {Function File} {[@var{c}, @var{maxsize}, @var{endian}] =} computer ()
 ## @deftypefnx {Function File} {@var{arch} =} computer ("arch")
-## Print or return a string of the form @var{cpu}-@var{vendor}-@var{os}
-## that identifies the type of computer that Octave is running on.
+## Print or return a string of the form @var{cpu}-@var{vendor}-@var{os} that
+## identifies the type of computer that Octave is running on.
 ##
 ## If invoked with an output argument, the value is returned instead of
 ## printed.  For example:
@@ -38,13 +38,13 @@
 ## @end group
 ## @end example
 ##
-## If two output arguments are requested, also return the maximum number
-## of elements for an array.  This will depend on whether Octave has been
+## If two output arguments are requested, also return the maximum number of
+## elements for an array.  This will depend on whether Octave has been
 ## compiled with 32-bit or 64-bit index vectors.
 ##
-## If three output arguments are requested, also return the byte order
-## of the current system as a character (@qcode{"B"} for big-endian or
-## @qcode{"L"} for little-endian).
+## If three output arguments are requested, also return the byte order of the
+## current system as a character (@qcode{"B"} for big-endian or @qcode{"L"}
+## for little-endian).
 ##
 ## If the argument @qcode{"arch"} is specified, return a string indicating the
 ## architecture of the computer on which Octave is running.
--- a/scripts/miscellaneous/debug.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/miscellaneous/debug.m	Sun May 10 21:37:19 2015 -0700
@@ -84,8 +84,8 @@
 ## @end table
 ##
 ## @noindent
-## When Octave encounters a breakpoint, or other reason to enter debug
-## mode, the prompt changes to @qcode{"debug>"}.  The workspace of the function
+## When Octave encounters a breakpoint, or other reason to enter debug mode,
+## the prompt changes to @qcode{"debug>"}.  The workspace of the function
 ## where the breakpoint was encountered becomes available and any Octave
 ## command that is valid in that workspace context may be executed.
 ##
--- a/scripts/miscellaneous/dir.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/miscellaneous/dir.m	Sun May 10 21:37:19 2015 -0700
@@ -55,8 +55,8 @@
 ## wildcard character the wildcard must be escaped using the backslash operator
 ## @samp{\}.
 ##
-## Note that for symbolic links, @code{dir} returns information about
-## the file that the symbolic link points to rather than the link itself.
+## Note that for symbolic links, @code{dir} returns information about the
+## file that the symbolic link points to rather than the link itself. 
 ## However, if the link points to a nonexistent file, @code{dir} returns
 ## information about the link.
 ## @seealso{ls, readdir, glob, what, stat, lstat}
--- a/scripts/miscellaneous/edit.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/miscellaneous/edit.m	Sun May 10 21:37:19 2015 -0700
@@ -22,24 +22,23 @@
 ## @deftypefnx {Command} {@var{value} =} edit get @var{field}
 ## Edit the named function, or change editor settings.
 ##
-## If @code{edit} is called with the name of a file or function as
-## its argument it will be opened in the text editor defined by @env{EDITOR}.
+## If @code{edit} is called with the name of a file or function as its
+## argument it will be opened in the text editor defined by @env{EDITOR}.
 ##
 ## @itemize @bullet
 ## @item
-## If the function @var{name} is available in a file on your path and
-## that file is modifiable, then it will be edited in place.  If it
-## is a system function, then it will first be copied to the directory
-## @env{HOME} (see below) and then edited.
-## If no file is found, then the m-file
-## variant, ending with ".m", will be considered.  If still no file
-## is found, then variants with a leading "@@" and then with both a
-## leading "@@" and trailing ".m" will be considered.
+## If the function @var{name} is available in a file on your path and that
+## file is modifiable, then it will be edited in place.  If it is a system
+## function, then it will first be copied to the directory @env{HOME} (see
+## below) and then edited.  If no file is found, then the m-file variant,
+## ending with @qcode{".m"}, will be considered.  If still no file is found,
+## then variants with a leading @qcode{"@@"} and then with both a leading
+## @qcode{"@@"} and trailing @qcode{".m"} will be considered.
 ##
 ## @item
-## If @var{name} is the name of a function defined in the interpreter but
-## not in an m-file, then an m-file will be created in @env{HOME}
-## to contain that function along with its current definition.
+## If @var{name} is the name of a function defined in the interpreter but not
+## in an m-file, then an m-file will be created in @env{HOME} to contain that
+## function along with its current definition.
 ##
 ## @item
 ## If @code{@var{name}.cc} is specified, then it will search for
@@ -55,34 +54,35 @@
 ## it will be copied to @env{HOME} before editing.
 ##
 ## @strong{Warning:} You may need to clear @var{name} before the new definition
-## is available.  If you are editing a .cc file, you will need
-## to execute @code{mkoctfile @file{@var{name}.cc}} before the definition
-## will be available.
+## is available.  If you are editing a .cc file, you will need to execute
+## @code{mkoctfile @file{@var{name}.cc}} before the definition will be
+## available.
 ## @end itemize
 ##
-## If @code{edit} is called with @var{field} and @var{value} variables,
-## the value of the control field @var{field} will be set to @var{value}.
-## If an output argument is requested and the first input argument is @code{get}
-## then @code{edit} will return the value of the control field @var{field}.
+## If @code{edit} is called with @var{field} and @var{value} variables, the
+## value of the control field @var{field} will be set to @var{value}.  If an
+## output argument is requested and the first input argument is @code{get}
+## then @code{edit} will return the value of the control field @var{field}. 
 ## If the control field does not exist, edit will return a structure
-## containing all fields and values.  Thus, @code{edit get all} returns
-## a complete control structure.
+## containing all fields and values.  Thus, @code{edit get all} returns a
+## complete control structure.
+##
 ## The following control fields are used:
 ##
 ## @table @samp
 ## @item home
-## This is the location of user local m-files.  Be sure it is in your
-## path.  The default is @file{~/octave}.
+## This is the location of user local m-files.  Be sure it is in your path. 
+## The default is @file{~/octave}.
 ##
 ## @item author
-## This is the name to put after the "## Author:" field of new functions.
-## By default it guesses from the @code{gecos} field of the password database.
+## This is the name to put after the "## Author:" field of new functions.  By
+## default it guesses from the @code{gecos} field of the password database.
 ##
 ## @item email
-## This is the e-mail address to list after the name in the author field.
-## By default it guesses @code{<$LOGNAME@@$HOSTNAME>}, and if @code{$HOSTNAME}
-## is not defined it uses @code{uname -n}.  You probably want to override this.
-## Be sure to use the format @code{<user@@host>}.
+## This is the e-mail address to list after the name in the author field.  By
+## default it guesses @code{<$LOGNAME@@$HOSTNAME>}, and if @code{$HOSTNAME}
+## is not defined it uses @code{uname -n}.  You probably want to override
+## this.  Be sure to use the format @code{@email{user@@host}}.
 ##
 ## @item license
 ##
--- a/scripts/miscellaneous/error_ids.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/miscellaneous/error_ids.m	Sun May 10 21:37:19 2015 -0700
@@ -40,8 +40,8 @@
 ## Indicates that memory couldn't be allocated.
 ##
 ## @item Octave:undefined-function
-## Indicates a call to a function that is not defined.  The function may
-## exist but Octave is unable to find it in the search path.
+## Indicates a call to a function that is not defined.  The function may exist
+## but Octave is unable to find it in the search path.
 ##
 ## @end table
 ##
--- a/scripts/miscellaneous/fileattrib.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/miscellaneous/fileattrib.m	Sun May 10 21:37:19 2015 -0700
@@ -20,8 +20,8 @@
 ## @deftypefn {Function File} {[@var{status}, @var{result}, @var{msgid}] =} fileattrib (@var{file})
 ## Return information about @var{file}.
 ##
-## If successful, @var{status} is 1, with @var{result} containing a
-## structure with the following fields:
+## If successful, @var{status} is 1, with @var{result} containing a structure
+## with the following fields:
 ##
 ## @table @code
 ## @item Name
@@ -42,30 +42,26 @@
 ## @item  UserRead
 ## @itemx GroupRead
 ## @itemx OtherRead
-## True if the user (group; other users) has read permission for
-## @var{file}.
+## True if the user (group; other users) has read permission for @var{file}.
 ##
 ## @item  UserWrite
 ## @itemx GroupWrite
 ## @itemx OtherWrite
-## True if the user (group; other users) has write permission for
-## @var{file}.
+## True if the user (group; other users) has write permission for @var{file}.
 ##
 ## @item  UserExecute
 ## @itemx GroupExecute
 ## @itemx OtherExecute
-## True if the user (group; other users) has execute permission for
-## @var{file}.
+## True if the user (group; other users) has execute permission for @var{file}.
 ## @end table
 ##
-## If an attribute does not apply (i.e., archive on a Unix system) then
-## the field is set to NaN.
+## If an attribute does not apply (i.e., archive on a Unix system) then the
+## field is set to NaN.
 ##
-## With no input arguments, return information about the current
-## directory.
+## With no input arguments, return information about the current directory.
 ##
-## If @var{file} contains globbing characters, return information about
-## all the matching files.
+## If @var{file} contains globbing characters, return information about all
+## the matching files.
 ## @seealso{glob}
 ## @end deftypefn
 
--- a/scripts/miscellaneous/fullfile.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/miscellaneous/fullfile.m	Sun May 10 21:37:19 2015 -0700
@@ -21,8 +21,8 @@
 ## @deftypefnx {Function File} {@var{filenames} =} fullfile (@dots{}, @var{files})
 ## Build complete filename from separate parts.
 ##
-## Joins any number of path components intelligently.  The return value
-## is the concatenation of each component with exactly one file separator
+## Joins any number of path components intelligently.  The return value is
+## the concatenation of each component with exactly one file separator
 ## between each non empty part and at most one leading and/or trailing file
 ## separator.
 ##
@@ -38,9 +38,9 @@
 ## @end group
 ## @end example
 ##
-## On Windows systems, while forward slash file separators do work, they
-## are replaced by backslashes; in addition drive letters are stripped of
-## leading file separators to obtain a valid file path.
+## On Windows systems, while forward slash file separators do work, they are
+## replaced by backslashes; in addition drive letters are stripped of leading
+## file separators to obtain a valid file path.
 ##
 ## @seealso{fileparts, filesep}
 ## @end deftypefn
--- a/scripts/miscellaneous/genvarname.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/miscellaneous/genvarname.m	Sun May 10 21:37:19 2015 -0700
@@ -21,8 +21,8 @@
 ## @deftypefnx {Function File} {@var{varname} =} genvarname (@var{str}, @var{exclusions})
 ## Create valid unique variable name(s) from @var{str}.
 ##
-## If @var{str} is a cellstr, then a unique variable is created for each
-## cell in @var{str}.
+## If @var{str} is a cellstr, then a unique variable is created for each cell
+## in @var{str}.
 ##
 ## @example
 ## @group
@@ -36,8 +36,8 @@
 ## @end example
 ##
 ## If @var{exclusions} is given, then the variable(s) will be unique to each
-## other and to @var{exclusions} (@var{exclusions} may be either a string or
-## a cellstr).
+## other and to @var{exclusions} (@var{exclusions} may be either a string or a
+## cellstr).
 ##
 ## @example
 ## @group
@@ -48,8 +48,8 @@
 ## @end example
 ##
 ## Note that the result is a char array or cell array of strings, not the
-## variables themselves.  To define a variable, @code{eval()} can be
-## used.  The following trivial example sets @code{x} to @code{42}.
+## variables themselves.  To define a variable, @code{eval()} can be used. 
+## The following trivial example sets @code{x} to @code{42}.
 ##
 ## @example
 ## @group
@@ -78,8 +78,8 @@
 ##
 ## Since variable names may only contain letters, digits, and underscores,
 ## @code{genvarname} will replace any sequence of disallowed characters with
-## an underscore.  Also, variables may not begin with a digit; in this
-## case an @samp{x} is added before the variable name.
+## an underscore.  Also, variables may not begin with a digit; in this case
+## an @samp{x} is added before the variable name.
 ##
 ## Variable names beginning and ending with two underscores @qcode{"__"} are
 ## valid, but they are used internally by Octave and should generally be
--- a/scripts/miscellaneous/gzip.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/miscellaneous/gzip.m	Sun May 10 21:37:19 2015 -0700
@@ -21,16 +21,16 @@
 ## @deftypefnx {Function File} {@var{filelist} =} gzip (@var{files}, @var{dir})
 ## Compress the list of files and directories specified in @var{files}.
 ##
-## @var{files} is a character array or cell array of strings.  Shell
-## wildcards in the filename such as @samp{*} or @samp{?} are accepted and
-## expanded.  Each file is compressed separately and a new file with a
-## @file{".gz"} extension is created.  The original files are not modified,
-## but existing compressed files will be silently overwritten.  If a directory
-## is specified then @code{gzip} recursively compresses all files in the
+## @var{files} is a character array or cell array of strings.  Shell wildcards
+## in the filename such as @samp{*} or @samp{?} are accepted and expanded.
+## Each file is compressed separately and a new file with a @file{".gz"}
+## extension is created.  The original files are not modified, but existing
+## compressed files will be silently overwritten.  If a directory is
+## specified then @code{gzip} recursively compresses all files in the
 ## directory.
 ##
 ## If @var{dir} is defined the compressed files are placed in this directory,
-## rather than the original directory where the uncompressed file resides.
+## rather than the original directory where the uncompressed file resides. 
 ## If @var{dir} does not exist it is created.
 ##
 ## The optional output @var{filelist} is a list of the compressed files.
--- a/scripts/miscellaneous/mkoctfile.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/miscellaneous/mkoctfile.m	Sun May 10 21:37:19 2015 -0700
@@ -20,15 +20,15 @@
 ## @deftypefn  {Command} {} mkoctfile [-options] file @dots{}
 ## @deftypefnx {Function File} {[@var{output}, @var{status}] =} mkoctfile (@dots{})
 ##
-## The @code{mkoctfile} function compiles source code written in C,
-## C++, or Fortran.  Depending on the options used with @code{mkoctfile}, the
+## The @code{mkoctfile} function compiles source code written in C, C++, or
+## Fortran.  Depending on the options used with @code{mkoctfile}, the
 ## compiled code can be called within Octave or can be used as a stand-alone
 ## application.
 ##
 ## @code{mkoctfile} can be called from the shell prompt or from the Octave
-## prompt.  Calling it from the Octave prompt simply delegates the
-## call to the shell prompt.  The output is stored in the @var{output}
-## variable and the exit status in the @var{status} variable.
+## prompt.  Calling it from the Octave prompt simply delegates the call to
+## the shell prompt.  The output is stored in the @var{output} variable and
+## the exit status in the @var{status} variable.
 ##
 ## @code{mkoctfile} accepts the following options, all of which are optional
 ## except for the file name of the code you wish to compile:
@@ -69,9 +69,8 @@
 ##
 ## @item  -o FILE
 ## @itemx --output FILE
-## Output file name.  Default extension is .oct
-## (or .mex if @samp{--mex} is specified) unless linking
-## a stand-alone executable.
+## Output file name.  Default extension is .oct (or .mex if @samp{--mex} is
+## specified) unless linking a stand-alone executable.
 ##
 ## @item  -p VAR
 ## @itemx --print VAR
@@ -111,8 +110,8 @@
 ## Link a stand-alone executable file.
 ##
 ## @item --mex
-## Assume we are creating a MEX file.  Set the default output extension
-## to ".mex".
+## Assume we are creating a MEX file.  Set the default output extension to
+## ".mex".
 ##
 ## @item  -s
 ## @itemx --strip
--- a/scripts/miscellaneous/news.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/miscellaneous/news.m	Sun May 10 21:37:19 2015 -0700
@@ -22,6 +22,7 @@
 ## Display the current NEWS file for Octave or an installed package.
 ##
 ## When called without an argument, display the NEWS file for Octave.
+##
 ## When given a package name @var{package}, display the current NEWS file for
 ## that package.
 ## @seealso{ver, pkg}
--- a/scripts/miscellaneous/open.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/miscellaneous/open.m	Sun May 10 21:37:19 2015 -0700
@@ -19,8 +19,8 @@
 ## -*- texinfo -*-
 ## @deftypefn  {Function File} {@var{output} =} open @var{file}
 ## @deftypefnx {Function File} {@var{output} =} open (@var{file})
-## Open the file @var{file} in Octave or in an external application
-## based on the file type as determined by the file name extension.
+## Open the file @var{file} in Octave or in an external application based on
+## the file type as determined by the file name extension.
 ##
 ## Recognized file types are
 ##
--- a/scripts/miscellaneous/parseparams.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/miscellaneous/parseparams.m	Sun May 10 21:37:19 2015 -0700
@@ -21,8 +21,10 @@
 ## @deftypefn  {Function File} {[@var{reg}, @var{prop}] =} parseparams (@var{params})
 ## @deftypefnx {Function File} {[@var{reg}, @var{var1}, @dots{}] =} parseparams (@var{params}, @var{name1}, @var{default1}, @dots{})
 ## Return in @var{reg} the cell elements of @var{param} up to the first
-## string element and in @var{prop} all remaining elements beginning
-## with the first string element.  For example:
+## string element and in @var{prop} all remaining elements beginning with the
+## first string element.
+##
+## For example:
 ##
 ## @example
 ## @group
@@ -40,16 +42,18 @@
 ## @end group
 ## @end example
 ##
-## The parseparams function may be used to separate regular numeric
-## arguments from additional arguments given as property/value pairs of
-## the @var{varargin} cell array.
+## The parseparams function may be used to separate regular numeric arguments
+## from additional arguments given as property/value pairs of the
+## @var{varargin} cell array.
 ##
 ## In the second form of the call, available options are specified directly
-## with their default values given as name-value pairs.
-## If @var{params} do not form name-value pairs, or if an option occurs
-## that does not match any of the available options, an error occurs.
-## When called from an m-file function, the error is prefixed with the
-## name of the caller function.
+## with their default values given as name-value pairs.  If @var{params} do
+## not form name-value pairs, or if an option occurs that does not match any
+## of the available options, an error occurs.
+##
+## When called from an m-file function, the error is prefixed with the name
+## of the caller function.
+##
 ## The matching of options is case-insensitive.
 ##
 ## @seealso{varargin, inputParser}
--- a/scripts/miscellaneous/recycle.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/miscellaneous/recycle.m	Sun May 10 21:37:19 2015 -0700
@@ -27,8 +27,7 @@
 ##
 ## Programming Note: This function is provided for @sc{matlab} compatibility,
 ## but recycling is not implemented in Octave.  To help avoid accidental data
-## loss an error will be raised if an attempt is made to enable file
-## recycling.
+## loss an error will be raised if an attempt is made to enable file recycling.
 ## @seealso{delete, rmdir}
 ## @end deftypefn
 
--- a/scripts/miscellaneous/run.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/miscellaneous/run.m	Sun May 10 21:37:19 2015 -0700
@@ -21,9 +21,9 @@
 ## @deftypefnx {Function File} {} run ("@var{script}")
 ## Run @var{script} in the current workspace.
 ##
-## Scripts which reside in directories specified in Octave's load
-## path, and which end with the extension @file{".m"}, can be run simply by
-## typing their name.  For scripts not located on the load path, use @code{run}.
+## Scripts which reside in directories specified in Octave's load path, and
+## which end with the extension @file{".m"}, can be run simply by typing
+## their name.  For scripts not located on the load path, use @code{run}.
 ##
 ## The file name @var{script} can be a bare, fully qualified, or relative
 ## filename and with or without a file extension.  If no extension is specified,
--- a/scripts/miscellaneous/swapbytes.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/miscellaneous/swapbytes.m	Sun May 10 21:37:19 2015 -0700
@@ -18,8 +18,8 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} swapbytes (@var{x})
-## Swap the byte order on values, converting from little endian to big
-## endian and vice versa.
+## Swap the byte order on values, converting from little endian to big endian
+## and vice versa.
 ##
 ## For example:
 ##
--- a/scripts/miscellaneous/tar.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/miscellaneous/tar.m	Sun May 10 21:37:19 2015 -0700
@@ -22,10 +22,10 @@
 ## Pack the list of files and directories specified in @var{files} into the
 ## TAR archive @var{tarfile}.
 ##
-## @var{files} is a character array or cell array of strings.  Shell
-## wildcards in the filename such as @samp{*} or @samp{?} are accepted and
-## expanded.  Directories are recursively traversed and all files are added to
-## the archive.
+## @var{files} is a character array or cell array of strings.  Shell wildcards
+## in the filename such as @samp{*} or @samp{?} are accepted and expanded.
+## Directories are recursively traversed and all files are added to the
+## archive.
 ##
 ## If @var{rootdir} is defined then any files without absolute pathnames are
 ## located relative to @var{rootdir} rather than the current directory.
--- a/scripts/miscellaneous/tmpnam.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/miscellaneous/tmpnam.m	Sun May 10 21:37:19 2015 -0700
@@ -23,6 +23,7 @@
 ## Return a unique temporary file name as a string.
 ##
 ## If @var{prefix} is omitted, a value of @qcode{"oct-"} is used.
+##
 ## If @var{dir} is also omitted, the default directory for temporary files
 ## (@code{P_tmpdir} is used.  If @var{dir} is provided, it must exist,
 ## otherwise the default directory for temporary files is used.
--- a/scripts/miscellaneous/unpack.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/miscellaneous/unpack.m	Sun May 10 21:37:19 2015 -0700
@@ -24,8 +24,8 @@
 ## @var{dir}.
 ##
 ## If @var{file} is a list of strings, then each file is unpacked
-## individually.  Shell wildcards in the filename such as @samp{*} or @samp{?}
-## are accepted and expanded.
+## individually.  Shell wildcards in the filename such as @samp{*} or
+## @samp{?} are accepted and expanded.
 ##
 ## If @var{dir} is not specified or is empty (@code{[]}), it defaults to the
 ## current directory.  If a directory is in the file list, then @var{filetype}
--- a/scripts/miscellaneous/what.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/miscellaneous/what.m	Sun May 10 21:37:19 2015 -0700
@@ -59,9 +59,9 @@
 ## Cell array of package directories (@file{+@var{pkgname}/})
 ## @end table
 ##
-## Compatibility Note: Octave does not support mdl, slx, and p files; nor
-## does it support package directories.  @code{what} will always return an
-## empty list for these categories.
+## Compatibility Note: Octave does not support mdl, slx, and p files; nor does
+## it support package directories.  @code{what} will always return an empty
+## list for these categories.
 ## @seealso{which, ls, exist}
 ## @end deftypefn
 
--- a/scripts/optimization/fminbnd.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/optimization/fminbnd.m	Sun May 10 21:37:19 2015 -0700
@@ -29,8 +29,9 @@
 ## @qcode{"MaxIter"}, @qcode{"MaxFunEvals"}.  For a description of these
 ## options, see @ref{XREFoptimset,,optimset}.
 ##
-## On exit, the function returns @var{x}, the approximate minimum point
-## and @var{fval}, the function value thereof.
+## On exit, the function returns @var{x}, the approximate minimum point and
+## @var{fval}, the function value thereof.
+##
 ## @var{info} is an exit flag that can have these values:
 ##
 ## @itemize
@@ -44,11 +45,11 @@
 ## The algorithm has been terminated from user output function.
 ## @end itemize
 ##
-## Notes: The search for a minimum is restricted to be in the interval
-## bound by @var{a} and @var{b}.  If you only have an initial point
-## to begin searching from you will need to use an unconstrained
-## minimization algorithm such as @code{fminunc} or @code{fminsearch}.
-## @code{fminbnd} internally uses a Golden Section search strategy.
+## Notes: The search for a minimum is restricted to be in the interval bound by
+## @var{a} and @var{b}.  If you only have an initial point to begin searching
+## from you will need to use an unconstrained minimization algorithm such as
+## @code{fminunc} or @code{fminsearch}.  @code{fminbnd} internally uses a
+## Golden Section search strategy.
 ## @seealso{fzero, fminunc, fminsearch, optimset}
 ## @end deftypefn
 
--- a/scripts/optimization/fminsearch.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/optimization/fminsearch.m	Sun May 10 21:37:19 2015 -0700
@@ -23,19 +23,19 @@
 ## @deftypefnx {Function File} {[@var{x}, @var{fval}] =} fminsearch (@dots{})
 ##
 ## Find a value of @var{x} which minimizes the function @var{fun}.
+##
 ## The search begins at the point @var{x0} and iterates using the
 ## @nospell{Nelder & Mead} Simplex algorithm (a derivative-free method).  This
 ## algorithm is better-suited to functions which have discontinuities or for
 ## which a gradient-based search such as @code{fminunc} fails.
 ##
-## Options for the search are provided in the parameter @var{options} using
-## the function @code{optimset}.  Currently, @code{fminsearch} accepts the
-## options: @qcode{"TolX"}, @qcode{"MaxFunEvals"}, @qcode{"MaxIter"},
-## @qcode{"Display"}.  For a description of these options, see
-## @code{optimset}.
+## Options for the search are provided in the parameter @var{options} using the
+## function @code{optimset}.  Currently, @code{fminsearch} accepts the options:
+## @qcode{"TolX"}, @qcode{"MaxFunEvals"}, @qcode{"MaxIter"}, @qcode{"Display"}.
+## For a description of these options, see @code{optimset}.
 ##
-## On exit, the function returns @var{x}, the minimum point,
-## and @var{fval}, the function value thereof.
+## On exit, the function returns @var{x}, the minimum point, and @var{fval},
+## the function value thereof.
 ##
 ## Example usages:
 ##
--- a/scripts/optimization/fminunc.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/optimization/fminunc.m	Sun May 10 21:37:19 2015 -0700
@@ -25,31 +25,34 @@
 ## Solve an unconstrained optimization problem defined by the function
 ## @var{fcn}.
 ##
-## @var{fcn} should accept a vector (array) defining the unknown variables,
-## and return the objective function value, optionally with gradient.
+## @var{fcn} should accept a vector (array) defining the unknown variables, and
+## return the objective function value, optionally with gradient.
 ## @code{fminunc} attempts to determine a vector @var{x} such that
-## @code{@var{fcn} (@var{x})} is a local minimum.  @var{x0} determines a
-## starting guess.  The shape of @var{x0} is preserved in all calls to
-## @var{fcn}, but otherwise is treated as a column vector.
-## @var{options} is a structure specifying additional options.
-## Currently, @code{fminunc} recognizes these options:
+## @code{@var{fcn} (@var{x})} is a local minimum.
+##
+## @var{x0} determines a starting guess.  The shape of @var{x0} is preserved in
+## all calls to @var{fcn}, but otherwise is treated as a column vector.
+##
+## @var{options} is a structure specifying additional options.  Currently,
+## @code{fminunc} recognizes these options:
 ## @qcode{"FunValCheck"}, @qcode{"OutputFcn"}, @qcode{"TolX"},
 ## @qcode{"TolFun"}, @qcode{"MaxIter"}, @qcode{"MaxFunEvals"},
-## @qcode{"GradObj"}, @qcode{"FinDiffType"},
-## @qcode{"TypicalX"}, @qcode{"AutoScaling"}.
+## @qcode{"GradObj"}, @qcode{"FinDiffType"}, @qcode{"TypicalX"},
+## @qcode{"AutoScaling"}.
 ##
-## If @qcode{"GradObj"} is @qcode{"on"}, it specifies that @var{fcn},
-## when called with 2 output arguments, also returns the Jacobian matrix
-## of partial first derivatives at the requested point.
-## @code{TolX} specifies the termination tolerance for the unknown variables
-## @var{x}, while @code{TolFun} is a tolerance for the objective function
-## value @var{fval}.  The default is @code{1e-7} for both options.
+## If @qcode{"GradObj"} is @qcode{"on"}, it specifies that @var{fcn}, when
+## called with 2 output arguments, also returns the Jacobian matrix of partial
+## first derivatives at the requested point.  @code{TolX} specifies the
+## termination tolerance for the unknown variables @var{x}, while @code{TolFun}
+## is a tolerance for the objective function value @var{fval}.  The default is
+## @code{1e-7} for both options.
 ##
 ## For a description of the other options, see @code{optimset}.
 ##
 ## On return, @var{x} is the location of the minimum and @var{fval} contains
-## the value of the objective function at @var{x}.  @var{info} may be one of the
-## following values:
+## the value of the objective function at @var{x}.
+##
+## @var{info} may be one of the following values:
 ##
 ## @table @asis
 ## @item 1
@@ -77,11 +80,13 @@
 ## (@var{output}), the output gradient (@var{grad}) at the solution @var{x},
 ## and approximate Hessian (@var{hess}) at the solution @var{x}.
 ##
-## Notes: If have only a single nonlinear equation of one variable then using
-## @code{fminbnd} is usually a much better idea.  The algorithm used is a
-## gradient search which depends on the objective function being differentiable.
-## If the function has discontinuities it may be better to use a derivative-free
-## algorithm such as @code{fminsearch}.
+## Application Notes: If have only a single nonlinear equation of one variable
+## then using @code{fminbnd} is usually a better choice.
+##
+## The algorithm used by @code{fminsearch} is a gradient search which depends
+## on the objective function being differentiable.  If the function has
+## discontinuities it may be better to use a derivative-free algorithm such as
+## @code{fminsearch}.
 ## @seealso{fminbnd, fminsearch, optimset}
 ## @end deftypefn
 
--- a/scripts/optimization/fsolve.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/optimization/fsolve.m	Sun May 10 21:37:19 2015 -0700
@@ -22,48 +22,53 @@
 ## @deftypefn  {Function File} {} fsolve (@var{fcn}, @var{x0}, @var{options})
 ## @deftypefnx {Function File} {[@var{x}, @var{fvec}, @var{info}, @var{output}, @var{fjac}] =} fsolve (@var{fcn}, @dots{})
 ## Solve a system of nonlinear equations defined by the function @var{fcn}.
+##
 ## @var{fcn} should accept a vector (array) defining the unknown variables,
 ## and return a vector of left-hand sides of the equations.  Right-hand sides
-## are defined to be zeros.
-## In other words, this function attempts to determine a vector @var{x} such
-## that @code{@var{fcn} (@var{x})} gives (approximately) all zeros.
+## are defined to be zeros.  In other words, this function attempts to
+## determine a vector @var{x} such that @code{@var{fcn} (@var{x})} gives
+## (approximately) all zeros.
+##
 ## @var{x0} determines a starting guess.  The shape of @var{x0} is preserved
 ## in all calls to @var{fcn}, but otherwise it is treated as a column vector.
-## @var{options} is a structure specifying additional options.
-## Currently, @code{fsolve} recognizes these options:
+##
+## @var{options} is a structure specifying additional options.  Currently,
+## @code{fsolve} recognizes these options:
 ## @qcode{"FunValCheck"}, @qcode{"OutputFcn"}, @qcode{"TolX"},
 ## @qcode{"TolFun"}, @qcode{"MaxIter"}, @qcode{"MaxFunEvals"},
 ## @qcode{"Jacobian"}, @qcode{"Updating"}, @qcode{"ComplexEqn"}
 ## @qcode{"TypicalX"}, @qcode{"AutoScaling"} and @qcode{"FinDiffType"}.
 ##
-## If @qcode{"Jacobian"} is @qcode{"on"}, it specifies that @var{fcn},
-## called with 2 output arguments, also returns the Jacobian matrix
-## of right-hand sides at the requested point.  @qcode{"TolX"} specifies
-## the termination tolerance in the unknown variables, while
-## @qcode{"TolFun"} is a tolerance for equations.  Default is @code{1e-7}
-## for both @qcode{"TolX"} and @qcode{"TolFun"}.
+## If @qcode{"Jacobian"} is @qcode{"on"}, it specifies that @var{fcn}, called
+## with 2 output arguments also returns the Jacobian matrix of right-hand sides
+## at the requested point.  @qcode{"TolX"} specifies the termination tolerance
+## in the unknown variables, while @qcode{"TolFun"} is a tolerance for
+## equations.  Default is @code{1e-7} for both @qcode{"TolX"} and
+## @qcode{"TolFun"}.
 ##
 ## If @qcode{"AutoScaling"} is on, the variables will be automatically scaled
 ## according to the column norms of the (estimated) Jacobian.  As a result,
-## TolF becomes scaling-independent.  By default, this option is off, because
+## TolF becomes scaling-independent.  By default, this option is off because
 ## it may sometimes deliver unexpected (though mathematically correct) results.
 ##
 ## If @qcode{"Updating"} is @qcode{"on"}, the function will attempt to use
 ## @nospell{Broyden} updates to update the Jacobian, in order to reduce the
 ## amount of Jacobian calculations.  If your user function always calculates the
-## Jacobian (regardless of number of output arguments), this option provides
+## Jacobian (regardless of number of output arguments) then this option provides
 ## no advantage and should be set to false.
 ##
 ## @qcode{"ComplexEqn"} is @qcode{"on"}, @code{fsolve} will attempt to solve
-## complex equations in complex variables, assuming that the equations possess a
-## complex derivative (i.e., are holomorphic).  If this is not what you want,
-## should unpack the real and imaginary parts of the system to get a real
+## complex equations in complex variables, assuming that the equations possess
+## a complex derivative (i.e., are holomorphic).  If this is not what you want,
+## you should unpack the real and imaginary parts of the system to get a real
 ## system.
 ##
 ## For description of the other options, see @code{optimset}.
 ##
 ## On return, @var{fval} contains the value of the function @var{fcn}
-## evaluated at @var{x}, and @var{info} may be one of the following values:
+## evaluated at @var{x}.
+##
+## @var{info} may be one of the following values:
 ##
 ## @table @asis
 ## @item 1
@@ -87,8 +92,8 @@
 ## @code{fzero} is usually a much better idea.
 ##
 ## Note about user-supplied Jacobians:
-## As an inherent property of the algorithm, Jacobian is always requested for a
-## solution vector whose residual vector is already known, and it is the last
+## As an inherent property of the algorithm, a Jacobian is always requested for
+## a solution vector whose residual vector is already known, and it is the last
 ## accepted successful step.  Often this will be one of the last two calls, but
 ## not always.  If the savings by reusing intermediate results from residual
 ## calculation in Jacobian calculation are significant, the best strategy is to
--- a/scripts/optimization/fzero.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/optimization/fzero.m	Sun May 10 21:37:19 2015 -0700
@@ -24,8 +24,9 @@
 ## @deftypefnx {Function File} {[@var{x}, @var{fval}, @var{info}, @var{output}] =} fzero (@dots{})
 ## Find a zero of a univariate function.
 ##
-## @var{fun} is a function handle, inline function, or string
-## containing the name of the function to evaluate.
+## @var{fun} is a function handle, inline function, or string containing the
+## name of the function to evaluate.
+##
 ## @var{x0} should be a two-element vector specifying two points which
 ## bracket a zero.  In other words, there must be a change in sign of the
 ## function between @var{x0}(1) and @var{x0}(2).  More mathematically, the
@@ -35,17 +36,19 @@
 ## sign (@var{fun}(@var{x0}(1))) * sign (@var{fun}(@var{x0}(2))) <= 0
 ## @end example
 ##
-## If @var{x0} is a single scalar then several nearby and distant
-## values are probed in an attempt to obtain a valid bracketing.  If this
-## is not successful, the function fails.
-## @var{options} is a structure specifying additional options.
-## Currently, @code{fzero}
-## recognizes these options: @qcode{"FunValCheck"}, @qcode{"OutputFcn"},
-## @qcode{"TolX"}, @qcode{"MaxIter"}, @qcode{"MaxFunEvals"}.
+## If @var{x0} is a single scalar then several nearby and distant values are
+## probed in an attempt to obtain a valid bracketing.  If this is not
+## successful, the function fails.
+##
+## @var{options} is a structure specifying additional options.  Currently,
+## @code{fzero} recognizes these options:
+## @qcode{"FunValCheck"}, @qcode{"OutputFcn"}, @qcode{"TolX"},
+## @qcode{"MaxIter"}, @qcode{"MaxFunEvals"}.
 ## For a description of these options, see @ref{XREFoptimset,,optimset}.
 ##
-## On exit, the function returns @var{x}, the approximate zero point
-## and @var{fval}, the function value thereof.
+## On exit, the function returns @var{x}, the approximate zero point and
+## @var{fval}, the function value thereof.
+##
 ## @var{info} is an exit flag that can have these values:
 ##
 ## @itemize
--- a/scripts/optimization/glpk.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/optimization/glpk.m	Sun May 10 21:37:19 2015 -0700
@@ -19,8 +19,9 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {[@var{xopt}, @var{fmin}, @var{errnum}, @var{extra}] =} glpk (@var{c}, @var{A}, @var{b}, @var{lb}, @var{ub}, @var{ctype}, @var{vartype}, @var{sense}, @var{param})
-## Solve a linear program using the GNU @sc{glpk} library.  Given three
-## arguments, @code{glpk} solves the following standard LP:
+## Solve a linear program using the GNU @sc{glpk} library.
+##
+## Given three arguments, @code{glpk} solves the following standard LP:
 ## @tex
 ## $$
 ##   \min_x C^T x
@@ -90,23 +91,21 @@
 ## A matrix containing the constraints coefficients.
 ##
 ## @item b
-## A column array containing the right-hand side value for each constraint
-## in the constraint matrix.
+## A column array containing the right-hand side value for each constraint in
+## the constraint matrix.
 ##
 ## @item lb
-## An array containing the lower bound on each of the variables.  If
-## @var{lb} is not supplied, the default lower bound for the variables is
-## zero.
+## An array containing the lower bound on each of the variables.  If @var{lb}
+## is not supplied, the default lower bound for the variables is zero.
 ##
 ## @item ub
-## An array containing the upper bound on each of the variables.  If
-## @var{ub} is not supplied, the default upper bound is assumed to be
-## infinite.
+## An array containing the upper bound on each of the variables.  If @var{ub}
+## is not supplied, the default upper bound is assumed to be infinite.
 ##
 ## @item ctype
 ## An array of characters containing the sense of each constraint in the
-## constraint matrix.  Each element of the array may be one of the
-## following values
+## constraint matrix.  Each element of the array may be one of the following
+## values
 ##
 ## @table @asis
 ## @item @qcode{"F"}
@@ -138,14 +137,14 @@
 ## @end table
 ##
 ## @item sense
-## If @var{sense} is 1, the problem is a minimization.  If @var{sense} is
-## -1, the problem is a maximization.  The default value is 1.
+## If @var{sense} is 1, the problem is a minimization.  If @var{sense} is -1,
+## the problem is a maximization.  The default value is 1.
 ##
 ## @item param
 ## A structure containing the following parameters used to define the
 ## behavior of solver.  Missing elements in the structure take on default
-## values, so you only need to set the elements that you wish to change
-## from the default.
+## values, so you only need to set the elements that you wish to change from
+## the default.
 ##
 ## Integer parameters:
 ##
@@ -220,9 +219,8 @@
 ## stop the search.
 ##
 ## @item outfrq (default: 200)
-## Output frequency, in iterations.  This parameter specifies how
-## frequently the solver sends information about the solution to the
-## standard output.
+## Output frequency, in iterations.  This parameter specifies how frequently
+## the solver sends information about the solution to the standard output.
 ##
 ## @item branch (default: 4)
 ## Branching technique option (for MIP only):
@@ -293,13 +291,12 @@
 ##
 ## @item outdly (default: 0)
 ## Output delay, in seconds.  This parameter specifies how long the solver
-## should delay sending information about the solution to the standard
-## output.
+## should delay sending information about the solution to the standard output.
 ##
 ## @item save (default: 0)
-## If this parameter is nonzero, save a copy of the problem in
-## CPLEX LP format to the file @file{"outpb.lp"}.  There is currently no
-## way to change the name of the output file.
+## If this parameter is nonzero, save a copy of the problem in CPLEX LP
+## format to the file @file{"outpb.lp"}.  There is currently no way to change
+## the name of the output file.
 ## @end table
 ##
 ## Real parameters:
@@ -316,30 +313,30 @@
 ## have a detailed understanding of its purpose.
 ##
 ## @item tolpiv (default: 1e-10)
-## Relative tolerance used to choose eligible pivotal elements of the
-## simplex table.  It is not recommended that you change this parameter unless
-## you have a detailed understanding of its purpose.
+## Relative tolerance used to choose eligible pivotal elements of the simplex
+## table.  It is not recommended that you change this parameter unless you have
+## a detailed understanding of its purpose.
 ##
 ## @item objll (default: -DBL_MAX)
-## Lower limit of the objective function.  If the objective
-## function reaches this limit and continues decreasing, the solver stops
-## the search.  This parameter is used in the dual simplex method only.
+## Lower limit of the objective function.  If the objective function reaches
+## this limit and continues decreasing, the solver stops the search.  This
+## parameter is used in the dual simplex method only.
 ##
 ## @item objul (default: +DBL_MAX)
-## Upper limit of the objective function.  If the objective
-## function reaches this limit and continues increasing, the solver stops
-## the search.  This parameter is used in the dual simplex only.
+## Upper limit of the objective function.  If the objective function reaches
+## this limit and continues increasing, the solver stops the search.  This
+## parameter is used in the dual simplex only.
 ##
 ## @item tolint (default: 1e-5)
 ## Relative tolerance used to check if the current basic solution is integer
-## feasible.  It is not recommended that you change this parameter unless
-## you have a detailed understanding of its purpose.
+## feasible.  It is not recommended that you change this parameter unless you
+## have a detailed understanding of its purpose.
 ##
 ## @item tolobj (default: 1e-7)
-## Relative tolerance used to check if the value of the objective function
-## is not better than in the best known integer feasible solution.  It is
-## not recommended that you change this parameter unless you have a
-## detailed understanding of its purpose.
+## Relative tolerance used to check if the value of the objective function is
+## not better than in the best known integer feasible solution.  It is not
+## recommended that you change this parameter unless you have a detailed
+## understanding of its purpose.
 ## @end table
 ## @end table
 ##
--- a/scripts/optimization/lsqnonneg.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/optimization/lsqnonneg.m	Sun May 10 21:37:19 2015 -0700
@@ -28,11 +28,15 @@
 ## @deftypefnx {Function File} {[@var{x}, @var{resnorm}, @var{residual}, @var{exitflag}, @var{output}] =} lsqnonneg (@dots{})
 ## @deftypefnx {Function File} {[@var{x}, @var{resnorm}, @var{residual}, @var{exitflag}, @var{output}, @var{lambda}] =} lsqnonneg (@dots{})
 ## Minimize @code{norm (@var{c}*@var{x} - d)} subject to
-## @code{@var{x} >= 0}.  @var{c} and @var{d} must be real.  @var{x0} is an
-## optional initial guess for @var{x}.
-## Currently, @code{lsqnonneg}
-## recognizes these options: @qcode{"MaxIter"}, @qcode{"TolX"}.
-## For a description of these options, see @ref{XREFoptimset,,optimset}.
+## @code{@var{x} >= 0}.
+##
+## @var{c} and @var{d} must be real.
+##
+## @var{x0} is an optional initial guess for @var{x}.
+##
+## Currently, @code{lsqnonneg} recognizes these options: @qcode{"MaxIter"},
+## @qcode{"TolX"}.  For a description of these options, see
+## @ref{XREFoptimset,,optimset}.
 ##
 ## Outputs:
 ##
@@ -47,10 +51,10 @@
 ##
 ## @item exitflag
 ##
-## An indicator of convergence.  0 indicates that the iteration count
-## was exceeded, and therefore convergence was not reached; >0 indicates
-## that the algorithm converged.  (The algorithm is stable and will
-## converge given enough iterations.)
+## An indicator of convergence.  0 indicates that the iteration count was
+## exceeded, and therefore convergence was not reached; >0 indicates that the
+## algorithm converged.  (The algorithm is stable and will converge given
+## enough iterations.)
 ##
 ## @item output
 ##
--- a/scripts/optimization/pqpnonneg.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/optimization/pqpnonneg.m	Sun May 10 21:37:19 2015 -0700
@@ -25,9 +25,12 @@
 ## @deftypefnx {Function File} {[@var{x}, @var{minval}, @var{exitflag}] =} pqpnonneg (@dots{})
 ## @deftypefnx {Function File} {[@var{x}, @var{minval}, @var{exitflag}, @var{output}] =} pqpnonneg (@dots{})
 ## @deftypefnx {Function File} {[@var{x}, @var{minval}, @var{exitflag}, @var{output}, @var{lambda}] =} pqpnonneg (@dots{})
-## Minimize @code{1/2*x'*c*x + d'*x} subject to @code{@var{x} >= 0}.  @var{c}
-## and @var{d} must be real, and @var{c} must be symmetric and positive
-## definite.  @var{x0} is an optional initial guess for @var{x}.
+## Minimize @code{1/2*x'*c*x + d'*x} subject to @code{@var{x} >= 0}.
+##
+## @var{c} ## and @var{d} must be real, and @var{c} must be symmetric and
+## positive definite.
+##
+## @var{x0} is an optional initial guess for @var{x}.
 ##
 ## Outputs:
 ##
@@ -38,10 +41,10 @@
 ##
 ## @item exitflag
 ##
-## An indicator of convergence.  0 indicates that the iteration count
-## was exceeded, and therefore convergence was not reached; >0 indicates
-## that the algorithm converged.  (The algorithm is stable and will
-## converge given enough iterations.)
+## An indicator of convergence.  0 indicates that the iteration count was
+## exceeded, and therefore convergence was not reached; >0 indicates that the
+## algorithm converged.  (The algorithm is stable and will converge given
+## enough iterations.)
 ##
 ## @item output
 ##
--- a/scripts/optimization/qp.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/optimization/qp.m	Sun May 10 21:37:19 2015 -0700
@@ -24,7 +24,9 @@
 ## @deftypefnx {Function File} {[@var{x}, @var{obj}, @var{info}, @var{lambda}] =} qp (@var{x0}, @var{H}, @var{q}, @var{A}, @var{b}, @var{lb}, @var{ub})
 ## @deftypefnx {Function File} {[@var{x}, @var{obj}, @var{info}, @var{lambda}] =} qp (@var{x0}, @var{H}, @var{q}, @var{A}, @var{b}, @var{lb}, @var{ub}, @var{A_lb}, @var{A_in}, @var{A_ub})
 ## @deftypefnx {Function File} {[@var{x}, @var{obj}, @var{info}, @var{lambda}] =} qp (@dots{}, @var{options})
-## Solve the quadratic program
+## Solve a quadratic program (QP).
+##
+## Solve the quadratic program defined by
 ## @tex
 ## $$
 ##  \min_x {1 \over 2} x^T H x + x^T q
@@ -60,16 +62,16 @@
 ## @noindent
 ## using a null-space active-set method.
 ##
-## Any bound (@var{A}, @var{b}, @var{lb}, @var{ub}, @var{A_lb},
-## @var{A_ub}) may be set to the empty matrix (@code{[]}) if not
-## present.  If the initial guess is feasible the algorithm is faster.
+## Any bound (@var{A}, @var{b}, @var{lb}, @var{ub}, @var{A_lb}, @var{A_ub})
+## may be set to the empty matrix (@code{[]}) if not present.  If the initial
+## guess is feasible the algorithm is faster.
 ##
 ## @table @var
 ## @item options
-## An optional structure containing the following
-## parameter(s) used to define the behavior of the solver.  Missing elements
-## in the structure take on default values, so you only need to set the
-## elements that you wish to change from the default.
+## An optional structure containing the following parameter(s) used to define
+## the behavior of the solver.  Missing elements in the structure take on
+## default values, so you only need to set the elements that you wish to
+## change from the default.
 ##
 ## @table @code
 ## @item MaxIter (default: 200)
--- a/scripts/optimization/sqp.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/optimization/sqp.m	Sun May 10 21:37:19 2015 -0700
@@ -24,6 +24,8 @@
 ## @deftypefnx {Function File} {[@dots{}] =} sqp (@var{x0}, @var{phi}, @var{g}, @var{h}, @var{lb}, @var{ub})
 ## @deftypefnx {Function File} {[@dots{}] =} sqp (@var{x0}, @var{phi}, @var{g}, @var{h}, @var{lb}, @var{ub}, @var{maxiter})
 ## @deftypefnx {Function File} {[@dots{}] =} sqp (@var{x0}, @var{phi}, @var{g}, @var{h}, @var{lb}, @var{ub}, @var{maxiter}, @var{tol})
+## Minimize an objective function using sequential quadratic programming (SQP).
+##
 ## Solve the nonlinear program
 ## @tex
 ## $$
@@ -62,31 +64,29 @@
 ##
 ## The first argument is the initial guess for the vector @var{x0}.
 ##
-## The second argument is a function handle pointing to the objective
-## function @var{phi}.  The objective function must accept one vector
-## argument and return a scalar.
-##
-## The second argument may also be a 2- or 3-element cell array of
-## function handles.  The first element should point to the objective
-## function, the second should point to a function that computes the
-## gradient of the objective function, and the third should point to a
-## function that computes the Hessian of the objective function.  If the
-## gradient function is not supplied, the gradient is computed by finite
-## differences.  If the Hessian function is not supplied, a BFGS update
-## formula is used to approximate the Hessian.
+## The second argument is a function handle pointing to the objective function
+## @var{phi}.  The objective function must accept one vector argument and
+## return a scalar.
 ##
-## When supplied, the gradient function @code{@var{phi}@{2@}} must accept
-## one vector argument and return a vector.  When supplied, the Hessian
-## function @code{@var{phi}@{3@}} must accept one vector argument and
-## return a matrix.
+## The second argument may also be a 2- or 3-element cell array of function
+## handles.  The first element should point to the objective function, the
+## second should point to a function that computes the gradient of the
+## objective function, and the third should point to a function that computes
+## the Hessian of the objective function.  If the gradient function is not
+## supplied, the gradient is computed by finite differences.  If the Hessian
+## function is not supplied, a BFGS update formula is used to approximate the
+## Hessian.
 ##
-## The third and fourth arguments @var{g} and @var{h} are function
-## handles pointing to functions that compute the equality constraints
-## and the inequality constraints, respectively.  If the problem does
-## not have equality (or inequality) constraints, then use an empty
-## matrix ([]) for @var{g} (or @var{h}).  When supplied, these equality
-## and inequality constraint functions must accept one vector argument
-## and return a vector.
+## When supplied, the gradient function @code{@var{phi}@{2@}} must accept one
+## vector argument and return a vector.  When supplied, the Hessian function
+## @code{@var{phi}@{3@}} must accept one vector argument and return a matrix.
+##
+## The third and fourth arguments @var{g} and @var{h} are function handles
+## pointing to functions that compute the equality constraints and the
+## inequality constraints, respectively.  If the problem does not have
+## equality (or inequality) constraints, then use an empty matrix ([]) for
+## @var{g} (or @var{h}).  When supplied, these equality and inequality
+## constraint functions must accept one vector argument and return a vector.
 ##
 ## The third and fourth arguments may also be 2-element cell arrays of
 ## function handles.  The first element should point to the constraint
@@ -110,20 +110,19 @@
 ## @end example
 ##
 ## @end ifnottex
-## The fifth and sixth arguments, @var{lb} and @var{ub}, contain lower
-## and upper bounds on @var{x}.  These must be consistent with the
-## equality and inequality constraints @var{g} and @var{h}.  If the
-## arguments are vectors then @var{x}(i) is bound by @var{lb}(i) and
-## @var{ub}(i).  A bound can also be a scalar in which case all elements
-## of @var{x} will share the same bound.  If only one bound (lb, ub) is
-## specified then the other will default to (-@var{realmax},
-## +@var{realmax}).
+## The fifth and sixth arguments, @var{lb} and @var{ub}, contain lower and
+## upper bounds on @var{x}.  These must be consistent with the equality and
+## inequality constraints @var{g} and @var{h}.  If the arguments are vectors
+## then @var{x}(i) is bound by @var{lb}(i) and @var{ub}(i).  A bound can also
+## be a scalar in which case all elements of @var{x} will share the same
+## bound.  If only one bound (lb, ub) is specified then the other will
+## default to (-@var{realmax}, +@var{realmax}).
 ##
 ## The seventh argument @var{maxiter} specifies the maximum number of
 ## iterations.  The default value is 100.
 ##
-## The eighth argument @var{tol} specifies the tolerance for the
-## stopping criteria.  The default value is @code{sqrt (eps)}.
+## The eighth argument @var{tol} specifies the tolerance for the stopping
+## criteria.  The default value is @code{sqrt (eps)}.
 ##
 ## The value returned in @var{info} may be one of the following:
 ##
--- a/scripts/path/matlabroot.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/path/matlabroot.m	Sun May 10 21:37:19 2015 -0700
@@ -20,8 +20,8 @@
 ## @deftypefn {Function File} {} matlabroot ()
 ## Return the name of the top-level Octave installation directory.
 ##
-## This is an alias for the function @w{@code{OCTAVE_HOME}} provided
-## for compatibility.
+## This is an alias for the function @w{@code{OCTAVE_HOME}} provided for
+## compatibility.
 ## @seealso{OCTAVE_HOME}
 ## @end deftypefn
 
--- a/scripts/plot/appearance/annotation.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/plot/appearance/annotation.m	Sun May 10 21:37:19 2015 -0700
@@ -145,7 +145,7 @@
 ##  See @qcode{"rectangle"} annotations for customization.
 ## @end table
 ##
-## @seealso{xlabel, title}
+## @seealso{xlabel, title, legend, colorbar}
 ## @end deftypefn
 
 function varargout = annotation (varargin)
--- a/scripts/plot/appearance/axis.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/plot/appearance/axis.m	Sun May 10 21:37:19 2015 -0700
@@ -39,9 +39,8 @@
 ## With one output argument, @code{@var{limits} = axis} returns the current
 ## axis limits.
 ##
-## The vector argument specifying limits is optional, and additional
-## string arguments may be used to specify various axis properties.  For
-## example,
+## The vector argument specifying limits is optional, and additional string
+## arguments may be used to specify various axis properties.  For example,
 ##
 ## @example
 ## axis ([1, 2, 3, 4], "square");
@@ -55,8 +54,7 @@
 ## @end example
 ##
 ## @noindent
-## turns tic marks on for all axes and tic mark labels on for the y-axis
-## only.
+## turns tic marks on for all axes and tic mark labels on for the y-axis only.
 ##
 ## @noindent
 ## The following options control the aspect ratio of the axes.
@@ -77,8 +75,8 @@
 ##
 ## @table @asis
 ## @item @qcode{"auto"}
-## Set the specified axes to have nice limits around the data
-## or all if no axes are specified.
+## Set the specified axes to have nice limits around the data or all if no
+## axes are specified.
 ##
 ## @item @qcode{"manual"}
 ## Fix the current axes limits.
@@ -101,12 +99,12 @@
 ## Turn tic marks off for all axes.
 ##
 ## @item @qcode{"tic[xyz]"}
-## Turn tic marks on for all axes, or turn them on for the
-## specified axes and off for the remainder.
+## Turn tic marks on for all axes, or turn them on for the specified axes and
+## off for the remainder.
 ##
 ## @item @qcode{"label[xyz]"}
-## Turn tic labels on for all axes, or turn them on for the
-## specified axes and off for the remainder.
+## Turn tic labels on for all axes, or turn them on for the specified axes
+## and off for the remainder.
 ##
 ## @item @qcode{"nolabel"}
 ## Turn tic labels off for all axes.
@@ -125,8 +123,8 @@
 ## Restore y-axis, so higher values are nearer the top.
 ## @end table
 ##
-## If the first argument @var{hax} is an axes handle, then operate on
-## this axes rather than the current axes returned by @code{gca}.
+## If the first argument @var{hax} is an axes handle, then operate on this
+## axes rather than the current axes returned by @code{gca}.
 ##
 ## @seealso{xlim, ylim, zlim, daspect, pbaspect, box, grid}
 ## @end deftypefn
--- a/scripts/plot/appearance/box.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/plot/appearance/box.m	Sun May 10 21:37:19 2015 -0700
@@ -26,8 +26,8 @@
 ## The argument may be either @qcode{"on"} or @qcode{"off"}.  If it is
 ## omitted, the current box state is toggled.
 ##
-## If the first argument @var{hax} is an axes handle, then operate on
-## this axis rather than the current axes returned by @code{gca}.
+## If the first argument @var{hax} is an axes handle, then operate on this
+## axis rather than the current axes returned by @code{gca}.
 ## @seealso{axis, grid}
 ## @end deftypefn
 
--- a/scripts/plot/appearance/caxis.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/plot/appearance/caxis.m	Sun May 10 21:37:19 2015 -0700
@@ -24,10 +24,10 @@
 ## @deftypefnx {Function File} {@var{limits} =} caxis ()
 ## Query or set color axis limits for plots.
 ##
-## The limits argument should be a 2-element vector specifying the
-## lower and upper limits to assign to the first and last value in the
-## colormap.  Data values outside this range are clamped to the first and last
-## colormap entries.
+## The limits argument should be a 2-element vector specifying the lower and
+## upper limits to assign to the first and last value in the colormap.  Data
+## values outside this range are clamped to the first and last colormap
+## entries.
 ##
 ## If the @qcode{"auto"} option is given then automatic colormap limits are
 ## applied.  The automatic algorithm sets @var{cmin} to the minimum data value
--- a/scripts/plot/appearance/datetick.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/plot/appearance/datetick.m	Sun May 10 21:37:19 2015 -0700
@@ -23,10 +23,13 @@
 ## @deftypefnx {Function File} {} datetick (@dots{}, "keeplimits")
 ## @deftypefnx {Function File} {} datetick (@dots{}, "keepticks")
 ## @deftypefnx {Function File} {} datetick (@var{hax}, @dots{})
-## Add date formatted tick labels to an axis.  The axis to apply the
-## ticks to is determined by @var{axis} which can take the values @qcode{"x"},
-## @qcode{"y"}, or @qcode{"z"}.  The default value is @qcode{"x"}.  The
-## formatting of the labels is determined by the variable @var{form}, which
+## Add date formatted tick labels to an axis.
+##
+## The axis to apply the ticks to is determined by @var{axis} which can take
+## the values @qcode{"x"}, @qcode{"y"}, or @qcode{"z"}.  The default value is
+## @qcode{"x"}.
+##
+## The formatting of the labels is determined by the variable @var{form}, which
 ## can either be a string or positive integer that @code{datestr} accepts.
 ## @seealso{datenum, datestr}
 ## @end deftypefn
--- a/scripts/plot/appearance/hidden.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/plot/appearance/hidden.m	Sun May 10 21:37:19 2015 -0700
@@ -24,6 +24,7 @@
 ## Control mesh hidden line removal.
 ##
 ## When called with no argument the hidden line removal state is toggled.
+##
 ## When called with one of the modes @qcode{"on"} or @qcode{"off"} the state
 ## is set accordingly.
 ##
--- a/scripts/plot/appearance/legend.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/plot/appearance/legend.m	Sun May 10 21:37:19 2015 -0700
@@ -56,8 +56,8 @@
 ## @item @tab outside @tab can be appended to any location string
 ## @end multitable
 ##
-## The optional parameter @var{orient} determines if the key elements
-## are placed vertically or horizontally.  The allowed values are
+## The optional parameter @var{orient} determines if the key elements are
+## placed vertically or horizontally.  The allowed values are
 ## @qcode{"vertical"} (default) or @qcode{"horizontal"}.
 ##
 ## The following customizations are available using @var{option}:
--- a/scripts/plot/appearance/xlim.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/plot/appearance/xlim.m	Sun May 10 21:37:19 2015 -0700
@@ -26,8 +26,10 @@
 ## Query or set the limits of the x-axis for the current plot.
 ##
 ## Called without arguments @code{xlim} returns the x-axis limits of the
-## current plot.  With the input query @qcode{"mode"}, return the current
-## x-limit calculation mode which is either @qcode{"auto"} or @qcode{"manual"}.
+## current plot.
+##
+## With the input query @qcode{"mode"}, return the current x-limit
+## calculation mode which is either @qcode{"auto"} or @qcode{"manual"}.
 ##
 ## If passed a 2-element vector [@var{x_lo} @var{x_hi}], the limits of the
 ## x-axis are set to these values and the mode is set to @qcode{"manual"}.
--- a/scripts/plot/appearance/ylim.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/plot/appearance/ylim.m	Sun May 10 21:37:19 2015 -0700
@@ -26,7 +26,9 @@
 ## Query or set the limits of the y-axis for the current plot.
 ##
 ## Called without arguments @code{ylim} returns the y-axis limits of the
-## current plot.  With the input query @qcode{"mode"}, return the current
+## current plot.
+##
+## With the input query @qcode{"mode"}, return the current
 ## y-limit calculation mode which is either @qcode{"auto"} or @qcode{"manual"}.
 ##
 ## If passed a 2-element vector [@var{y_lo} @var{y_hi}], the limits of the
--- a/scripts/plot/appearance/zlim.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/plot/appearance/zlim.m	Sun May 10 21:37:19 2015 -0700
@@ -26,7 +26,9 @@
 ## Query or set the limits of the z-axis for the current plot.
 ##
 ## Called without arguments @code{zlim} returns the z-axis limits of the
-## current plot.  With the input query @qcode{"mode"}, return the current
+## current plot.
+##
+## With the input query @qcode{"mode"}, return the current
 ## z-limit calculation mode which is either @qcode{"auto"} or @qcode{"manual"}.
 ##
 ## If passed a 2-element vector [@var{z_lo} @var{z_hi}], the limits of the
--- a/scripts/plot/draw/area.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/plot/draw/area.m	Sun May 10 21:37:19 2015 -0700
@@ -26,8 +26,8 @@
 ## @deftypefnx {Function File} {@var{h} =} area (@dots{})
 ## Area plot of the columns of @var{y}.
 ##
-## This plot shows the contributions of each column value to the row sum.  It
-## is functionally similar to @code{plot (@var{x}, cumsum (@var{y}, 2))},
+## This plot shows the contributions of each column value to the row sum.
+## It is functionally similar to @code{plot (@var{x}, cumsum (@var{y}, 2))},
 ## except that the area under the curve is shaded.
 ##
 ## If the @var{x} argument is omitted it defaults to @code{1:rows (@var{y})}.
--- a/scripts/plot/draw/comet.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/plot/draw/comet.m	Sun May 10 21:37:19 2015 -0700
@@ -22,8 +22,9 @@
 ## @deftypefnx {Function File} {} comet (@var{x}, @var{y}, @var{p})
 ## @deftypefnx {Function File} {} comet (@var{hax}, @dots{})
 ## Produce a simple comet style animation along the trajectory provided by
-## the input coordinate vectors (@var{x}, @var{y}).  If @var{x} is not
-## specified it defaults to the indices of @var{y}.
+## the input coordinate vectors (@var{x}, @var{y}).
+##
+## If @var{x} is not specified it defaults to the indices of @var{y}.
 ##
 ## The speed of the comet may be controlled by @var{p}, which represents the
 ## time each point is displayed before moving to the next one.  The default for
--- a/scripts/plot/draw/comet3.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/plot/draw/comet3.m	Sun May 10 21:37:19 2015 -0700
@@ -22,8 +22,10 @@
 ## @deftypefnx {Function File} {} comet3 (@var{x}, @var{y}, @var{z}, @var{p})
 ## @deftypefnx {Function File} {} comet3 (@var{hax}, @dots{})
 ## Produce a simple comet style animation along the trajectory provided by
-## the input coordinate vectors (@var{x}, @var{y}, @var{z}).  If only @var{z}
-## is specified then @var{x}, @var{y} default to the indices of @var{z}.
+## the input coordinate vectors (@var{x}, @var{y}, @var{z}).
+##
+## If only @var{z} is specified then @var{x}, @var{y} default to the indices
+## of @var{z}.
 ##
 ## The speed of the comet may be controlled by @var{p}, which represents the
 ## time each point is displayed before moving to the next one.  The default for
--- a/scripts/plot/draw/contour.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/plot/draw/contour.m	Sun May 10 21:37:19 2015 -0700
@@ -37,7 +37,8 @@
 ## If the first argument @var{hax} is an axes handle, then plot into this axis,
 ## rather than the current axes returned by @code{gca}.
 ##
-## The optional output @var{c} are the contour levels in @code{contourc} format.
+## The optional output @var{c} contains the contour levels in @code{contourc}
+## format.
 ##
 ## The optional return value @var{h} is a graphics handle to the hggroup
 ## comprising the contour lines.
--- a/scripts/plot/draw/contourf.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/plot/draw/contourf.m	Sun May 10 21:37:19 2015 -0700
@@ -41,7 +41,8 @@
 ## If the first argument @var{hax} is an axes handle, then plot into this axis,
 ## rather than the current axes returned by @code{gca}.
 ##
-## The optional output @var{c} are the contour levels in @code{contourc} format.
+## The optional output @var{c} contains the contour levels in @code{contourc}
+## format.
 ##
 ## The optional return value @var{h} is a graphics handle to the hggroup
 ## comprising the contour lines.
--- a/scripts/plot/draw/isocolors.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/plot/draw/isocolors.m	Sun May 10 21:37:19 2015 -0700
@@ -24,6 +24,8 @@
 ## @deftypefnx {Function File} {[@var{cd}] =} isocolors (@dots{}, @var{p})
 ## @deftypefnx {Function File} {} isocolors (@dots{})
 ##
+## Compute isosurface colors.
+##
 ## If called with one output argument and the first input argument
 ## @var{c} is a three-dimensional array that contains color values and
 ## the second input argument @var{v} keeps the vertices of a geometry
--- a/scripts/plot/draw/isonormals.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/plot/draw/isonormals.m	Sun May 10 21:37:19 2015 -0700
@@ -24,6 +24,8 @@
 ## @deftypefnx {Function File} {[@var{n}] =} isonormals (@dots{}, "negate")
 ## @deftypefnx {Function File} {} isonormals (@dots{}, @var{p})
 ##
+## Calculate normals to an isosurface.
+##
 ## If called with one output argument and the first input argument
 ## @var{val} is a three-dimensional array that contains the data for an
 ## isosurface geometry and the second input argument @var{v} keeps the
--- a/scripts/plot/draw/isosurface.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/plot/draw/isosurface.m	Sun May 10 21:37:19 2015 -0700
@@ -25,6 +25,8 @@
 ## @deftypefnx {Function File} {[@var{f}, @var{v}, @var{c}] =} isosurface (@var{x}, @var{y}, @var{z}, @var{val}, @var{iso}, @var{col})
 ## @deftypefnx {Function File} {} isosurface (@var{x}, @var{y}, @var{z}, @var{val}, @var{iso}, @var{col}, @var{opt})
 ##
+## Calculate isosurface of 3-D data.
+##
 ## If called with one output argument and the first input argument
 ## @var{val} is a three-dimensional array that contains the data of an
 ## isosurface geometry and the second input argument @var{iso} keeps the
--- a/scripts/plot/draw/plotmatrix.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/plot/draw/plotmatrix.m	Sun May 10 21:37:19 2015 -0700
@@ -24,14 +24,14 @@
 ## @deftypefnx {Function File} {[@var{h}, @var{ax}, @var{bigax}, @var{p}, @var{pax}] =} plotmatrix (@dots{})
 ## Scatter plot of the columns of one matrix against another.
 ##
-## Given the arguments @var{x} and @var{y}, that have a matching number of
+## Given the arguments @var{x} and @var{y} that have a matching number of
 ## rows, @code{plotmatrix} plots a set of axes corresponding to
 ##
 ## @example
 ## plot (@var{x}(:, i), @var{y}(:, j))
 ## @end example
 ##
-## Given a single argument @var{x} this is equivalent to
+## When called with a single argument @var{x} this is equivalent to
 ##
 ## @example
 ## plotmatrix (@var{x}, @var{x})
@@ -49,11 +49,14 @@
 ##
 ## The optional return value @var{h} provides handles to the individual
 ## graphics objects in the scatter plots, whereas @var{ax} returns the
-## handles to the scatter plot axis objects.  @var{bigax} is a hidden
-## axis object that surrounds the other axes, such that the commands
-## @code{xlabel}, @code{title}, etc., will be associated with this hidden
-## axis.  Finally, @var{p} returns the graphics objects associated with
-## the histogram and @var{pax} the corresponding axes objects.
+## handles to the scatter plot axis objects.
+##
+## @var{bigax} is a hidden axis object that surrounds the other axes, such
+## that the commands @code{xlabel}, @code{title}, etc., will be associated
+## with this hidden axis.
+##
+## Finally, @var{p} returns the graphics objects associated with the histogram
+## and @var{pax} the corresponding axes objects.
 ##
 ## Example:
 ##
--- a/scripts/plot/draw/quiver.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/plot/draw/quiver.m	Sun May 10 21:37:19 2015 -0700
@@ -25,9 +25,11 @@
 ## @deftypefnx {Function File} {} quiver (@var{hax}, @dots{})
 ## @deftypefnx {Function File} {@var{h} =} quiver (@dots{})
 ##
+## Plot a 2-D vector field with arrows.
+##
 ## Plot the (@var{u}, @var{v}) components of a vector field in
-## an (@var{x}, @var{y}) meshgrid.  If the grid is uniform, you can
-## specify @var{x} and @var{y} as vectors.
+## an (@var{x}, @var{y}) meshgrid.  If the grid is uniform then @var{x} and
+## @var{y} can be specified as vectors.
 ##
 ## If @var{x} and @var{y} are undefined they are assumed to be
 ## @code{(1:@var{m}, 1:@var{n})} where
--- a/scripts/plot/draw/quiver3.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/plot/draw/quiver3.m	Sun May 10 21:37:19 2015 -0700
@@ -25,9 +25,11 @@
 ## @deftypefnx {Function File} {} quiver3 (@var{hax}, @dots{})
 ## @deftypefnx {Function File} {@var{h} =} quiver3 (@dots{})
 ##
+## Plot a 3-D vector field with arrows.
+## 
 ## Plot the (@var{u}, @var{v}, @var{w}) components of a vector field in
-## an (@var{x}, @var{y}, @var{z}) meshgrid.  If the grid is uniform, you
-## can specify @var{x}, @var{y}, and @var{z} as vectors.
+## an (@var{x}, @var{y}, @var{z}) meshgrid.  If the grid is uniform then
+## @var{x}, @var{y}, and @var{z} can be specified as vectors.
 ##
 ## If @var{x}, @var{y}, and @var{z} are undefined they are assumed to be
 ## @code{(1:@var{m}, 1:@var{n}, 1:@var{p})} where @code{[@var{m}, @var{n}] =
--- a/scripts/plot/draw/ribbon.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/plot/draw/ribbon.m	Sun May 10 21:37:19 2015 -0700
@@ -22,7 +22,7 @@
 ## @deftypefnx {Function File} {} ribbon (@var{x}, @var{y}, @var{width})
 ## @deftypefnx {Function File} {} ribbon (@var{hax}, @dots{})
 ## @deftypefnx {Function File} {@var{h} =} ribbon (@dots{})
-## Plot a ribbon plot for the columns of @var{y} vs. @var{x}.
+## Draw a ribbon plot for the columns of @var{y} vs. @var{x}.
 ##
 ## The optional parameter @var{width} specifies the width of a single ribbon
 ## (default is 0.75).  If @var{x} is omitted, a vector containing the
--- a/scripts/plot/draw/semilogxerr.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/plot/draw/semilogxerr.m	Sun May 10 21:37:19 2015 -0700
@@ -27,8 +27,8 @@
 ## @deftypefnx {Function File} {} semilogxerr (@var{x1}, @var{y1}, @dots{}, @var{fmt}, @var{xn}, @var{yn}, @dots{})
 ## @deftypefnx {Function File} {} semilogxerr (@var{hax}, @dots{})
 ## @deftypefnx {Function File} {@var{h} =} semilogxerr (@dots{})
-## Produce 2-D plots using a logarithmic scale for the x-axis and
-## errorbars at each data point.
+## Produce 2-D plots using a logarithmic scale for the x-axis and errorbars
+## at each data point.
 ##
 ## Many different combinations of arguments are possible.  The most common
 ## form is
--- a/scripts/plot/draw/semilogyerr.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/plot/draw/semilogyerr.m	Sun May 10 21:37:19 2015 -0700
@@ -27,8 +27,8 @@
 ## @deftypefnx {Function File} {} semilogyerr (@var{x1}, @var{y1}, @dots{}, @var{fmt}, @var{xn}, @var{yn}, @dots{})
 ## @deftypefnx {Function File} {} semilogyerr (@var{hax}, @dots{})
 ## @deftypefnx {Function File} {@var{h} =} semilogyerr (@dots{})
-## Produce 2-D plots using a logarithmic scale for the y-axis and
-## errorbars at each data point.
+## Produce 2-D plots using a logarithmic scale for the y-axis and errorbars
+## at each data point.
 ##
 ## Many different combinations of arguments are possible.  The most common
 ## form is
--- a/scripts/plot/draw/sphere.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/plot/draw/sphere.m	Sun May 10 21:37:19 2015 -0700
@@ -24,7 +24,7 @@
 ## Plot a 3-D unit sphere.
 ##
 ## The optional input @var{n} determines the number of faces around the
-## the circumference of the sphere.  The default value is 20.
+## circumference of the sphere.  The default value is 20.
 ##
 ## If the first argument @var{hax} is an axes handle, then plot into this axis,
 ## rather than the current axes returned by @code{gca}.
--- a/scripts/plot/draw/surfl.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/plot/draw/surfl.m	Sun May 10 21:37:19 2015 -0700
@@ -25,7 +25,6 @@
 ## @deftypefnx {Function File} {} surfl (@dots{}, "light")
 ## @deftypefnx {Function File} {} surfl (@var{hax}, @dots{})
 ## @deftypefnx {Function File} {@var{h} =} surfl (@dots{})
-##
 ## Plot a 3-D surface using shading based on various lighting models.
 ##
 ## The surface mesh is plotted using shaded rectangles.  The vertices of the
--- a/scripts/plot/draw/tetramesh.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/plot/draw/tetramesh.m	Sun May 10 21:37:19 2015 -0700
@@ -23,10 +23,10 @@
 ## @deftypefnx {Function File} {@var{h} =} tetramesh (@dots{})
 ## Display the tetrahedrons defined in the m-by-4 matrix @var{T} as 3-D patches.
 ##
-## @var{T} is typically the output of a Delaunay triangulation
-## of a 3-D set of points.  Every row of @var{T} contains four indices into
-## the n-by-3 matrix @var{X} of the vertices of a tetrahedron.  Every row in
-## @var{X} represents one point in 3-D space.
+## @var{T} is typically the output of a Delaunay triangulation of a 3-D set
+## of points.  Every row of @var{T} contains four indices into the n-by-3
+## matrix @var{X} of the vertices of a tetrahedron.  Every row in @var{X}
+## represents one point in 3-D space.
 ##
 ## The vector @var{C} specifies the color of each tetrahedron as an index
 ## into the current colormap.  The default value is 1:m where m is the number
--- a/scripts/plot/util/allchild.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/plot/util/allchild.m	Sun May 10 21:37:19 2015 -0700
@@ -21,10 +21,11 @@
 ## Find all children, including hidden children, of a graphics object.
 ##
 ## This function is similar to @code{get (h, "children")}, but also returns
-## hidden objects (HandleVisibility = @qcode{"off"}).  If @var{handles} is a
-## scalar, @var{h} will be a vector.  Otherwise, @var{h} will be a cell
-## matrix of the same size as @var{handles} and each cell will contain a
-## vector of handles.
+## hidden objects (HandleVisibility = @qcode{"off"}).
+##
+## If @var{handles} is a scalar, @var{h} will be a vector.  Otherwise,
+## @var{h} will be a cell matrix of the same size as @var{handles} and each
+## cell will contain a vector of handles.
 ## @seealso{findall, findobj, get, set}
 ## @end deftypefn
 
--- a/scripts/plot/util/ancestor.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/plot/util/ancestor.m	Sun May 10 21:37:19 2015 -0700
@@ -20,9 +20,10 @@
 ## @deftypefn  {Function File} {@var{parent} =} ancestor (@var{h}, @var{type})
 ## @deftypefnx {Function File} {@var{parent} =} ancestor (@var{h}, @var{type}, "toplevel")
 ## Return the first ancestor of handle object @var{h} whose type matches
-## @var{type}, where @var{type} is a character string.  If @var{type} is a
-## cell array of strings, return the first parent whose type matches
-## any of the given type strings.
+## @var{type}, where @var{type} is a character string.
+##
+## If @var{type} is a cell array of strings, return the first parent whose
+## type matches any of the given type strings.
 ##
 ## If the handle object @var{h} itself is of type @var{type}, return @var{h}.
 ##
--- a/scripts/plot/util/axes.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/plot/util/axes.m	Sun May 10 21:37:19 2015 -0700
@@ -21,8 +21,8 @@
 ## @deftypefnx {Function File} {} axes (@var{property}, @var{value}, @dots{})
 ## @deftypefnx {Function File} {} axes (@var{hax})
 ## @deftypefnx {Function File} {@var{h} =} axes (@dots{})
-## Create an axes object and return a handle to it, or set the current
-## axes to @var{hax}.
+## Create an axes object and return a handle to it, or set the current axes
+## to @var{hax}.
 ##
 ## Called without any arguments, or with @var{property}/@var{value} pairs,
 ## construct a new axes.  For accepted properties and corresponding
--- a/scripts/plot/util/colstyle.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/plot/util/colstyle.m	Sun May 10 21:37:19 2015 -0700
@@ -19,6 +19,7 @@
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {[@var{style}, @var{color}, @var{marker}, @var{msg}] =} colstyle (@var{linespec})
 ## Parse @var{linespec} and return the line style, color, and markers given.
+##
 ## In the case of an error, the string @var{msg} will return the text of the
 ## error.
 ## @end deftypefn
--- a/scripts/plot/util/frame2im.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/plot/util/frame2im.m	Sun May 10 21:37:19 2015 -0700
@@ -25,8 +25,8 @@
 ##
 ## Support for N-dimensional images or movies is given when @var{f} is a
 ## struct array.  In such cases, @var{x} will be a @nospell{MxNx1xK or MxNx3xK}
-## for indexed and RGB movies respectively, with each frame concatenated on
-## the 4th dimension.
+## for indexed and RGB movies respectively, with each frame concatenated
+## along the 4th dimension.
 ##
 ## @seealso{im2frame}
 ## @end deftypefn
--- a/scripts/plot/util/gnuplot_binary.in	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/plot/util/gnuplot_binary.in	Sun May 10 21:37:19 2015 -0700
@@ -19,10 +19,11 @@
 ## -*- texinfo -*-
 ## @deftypefn  {Loadable Function} {[@var{prog}, @var{args}] =} gnuplot_binary ()
 ## @deftypefnx {Loadable Function} {[@var{old_prog}, @var{old_args}] =} gnuplot_binary (@var{new_prog}, @var{arg1}, @dots{})
-## Query or set the name of the program invoked by the plot command
-## when the graphics toolkit is set to "gnuplot".  Additional arguments to
-## pass to the external plotting program may also be given.
-## The default value is @qcode{"gnuplot"} with no additional arguments.
+## Query or set the name of the program invoked by the plot command when the
+## graphics toolkit is set to "gnuplot".
+##
+## Additional arguments to pass to the external plotting program may also be
+## given.  The default value is @qcode{"gnuplot"} with no additional arguments.
 ## @xref{Installation}.
 ## @seealso{graphics_toolkit}
 ## @end deftypefn
--- a/scripts/plot/util/hgsave.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/plot/util/hgsave.m	Sun May 10 21:37:19 2015 -0700
@@ -24,9 +24,11 @@
 ## @var{fmt}.
 ##
 ## If unspecified, @var{h} is the current figure as returned by @code{gcf}.
+##
 ## When @var{filename} does not have an extension the default filename
-## extension @file{.ofig} will be appended.  If present, @var{fmt} should
-## should be one of the following:
+## extension @file{.ofig} will be appended.
+##
+## If present, @var{fmt} should be one of the following:
 ##
 ## @itemize @bullet
 ## @item @option{-binary}, @option{-float-binary}
--- a/scripts/plot/util/im2frame.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/plot/util/im2frame.m	Sun May 10 21:37:19 2015 -0700
@@ -25,8 +25,9 @@
 ## @qcode{"colormap"}.
 ##
 ## Support for N-dimensional images is given when each image projection,
-## matrix sizes of @nospell{MxN and MxNx3} for RGB images, is concatenated on
-## the fourth dimension.  In such cases, the returned value is a struct array.
+## matrix sizes of @nospell{MxN and MxNx3} for RGB images, is concatenated
+## along the fourth dimension.  In such cases, the returned value is a struct
+## array.
 ##
 ## @seealso{frame2im}
 ## @end deftypefn
--- a/scripts/plot/util/isaxes.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/plot/util/isaxes.m	Sun May 10 21:37:19 2015 -0700
@@ -20,9 +20,8 @@
 ## @deftypefn {Function File} {} isaxes (@var{h})
 ## Return true if @var{h} is an axes graphics handle and false otherwise.
 ##
-## If @var{h} is a matrix then return a logical array which is true where
-## the elements of @var{h} are axes graphics handles and false where
-## they are not.
+## If @var{h} is a matrix then return a logical array which is true where the
+## elements of @var{h} are axes graphics handles and false where they are not.
 ## @seealso{isaxes, ishandle}
 ## @end deftypefn
 
--- a/scripts/plot/util/isfigure.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/plot/util/isfigure.m	Sun May 10 21:37:19 2015 -0700
@@ -20,9 +20,8 @@
 ## @deftypefn {Function File} {} isfigure (@var{h})
 ## Return true if @var{h} is a figure graphics handle and false otherwise.
 ##
-## If @var{h} is a matrix then return a logical array which is true where
-## the elements of @var{h} are figure graphics handles and false where
-## they are not.
+## If @var{h} is a matrix then return a logical array which is true where the
+## elements of @var{h} are figure graphics handles and false where they are not.
 ## @seealso{isaxes, ishandle}
 ## @end deftypefn
 
--- a/scripts/plot/util/linkaxes.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/plot/util/linkaxes.m	Sun May 10 21:37:19 2015 -0700
@@ -19,8 +19,8 @@
 ## -*- texinfo -*-
 ## @deftypefn  {Function File} {} linkaxes (@var{hax})
 ## @deftypefnx {Function File} {} linkaxes (@var{hax}, @var{optstr})
-## Link the axis limits of 2-D plots such that a change in one is
-## propagated to the others.
+## Link the axis limits of 2-D plots such that a change in one is propagated
+## to the others.
 ##
 ## The axes handles to be linked are passed as the first argument @var{hax}.
 ##
--- a/scripts/plot/util/ndgrid.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/plot/util/ndgrid.m	Sun May 10 21:37:19 2015 -0700
@@ -19,12 +19,13 @@
 ## -*- texinfo -*-
 ## @deftypefn  {Function File} {[@var{y1}, @var{y2}, @dots{}, @var{y}n] =} ndgrid (@var{x1}, @var{x2}, @dots{}, @var{x}n)
 ## @deftypefnx {Function File} {[@var{y1}, @var{y2}, @dots{}, @var{y}n] =} ndgrid (@var{x})
-## Given n vectors @var{x1}, @dots{}, @var{x}n, @code{ndgrid} returns
-## n arrays of dimension n.  The elements of the i-th output argument
-## contains the elements of the vector @var{x}i repeated over all
-## dimensions different from the i-th dimension.  Calling ndgrid with
-## only one input argument @var{x} is equivalent to calling ndgrid with
-## all n input arguments equal to @var{x}:
+## Given n vectors @var{x1}, @dots{}, @var{x}n, @code{ndgrid} returns n
+## arrays of dimension n.
+##
+## The elements of the i-th output argument contains the elements of the
+## vector @var{x}i repeated over all dimensions different from the i-th
+## dimension.  Calling ndgrid with only one input argument @var{x} is
+## equivalent to calling ndgrid with all n input arguments equal to @var{x}:
 ##
 ## [@var{y1}, @var{y2}, @dots{}, @var{y}n] = ndgrid (@var{x}, @dots{}, @var{x})
 ##
--- a/scripts/plot/util/pan.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/plot/util/pan.m	Sun May 10 21:37:19 2015 -0700
@@ -33,9 +33,8 @@
 ## Given the option @qcode{"xon"} or @qcode{"yon"}, enable pan mode
 ## for the x or y axis only.
 ##
-## If the first argument @var{hfig} is a figure, then operate on
-## the given figure rather than the current figure as returned by
-## @code{gcf}.
+## If the first argument @var{hfig} is a figure, then operate on the given
+## figure rather than the current figure as returned by @code{gcf}.
 ##
 ## @seealso{rotate3d, zoom}
 ## @end deftypefn
--- a/scripts/plot/util/print.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/plot/util/print.m	Sun May 10 21:37:19 2015 -0700
@@ -26,20 +26,19 @@
 ## Both output formatted for printing (PDF and PostScript), and many bitmapped
 ## and vector image formats are supported.
 ##
-## @var{filename} defines the name of the output file.  If the
-## file name has no suffix, one is inferred from the specified
-## device and appended to the file name.  If no filename is
-## specified, the output is sent to the printer.
+## @var{filename} defines the name of the output file.  If the file name has
+## no suffix, one is inferred from the specified device and appended to the
+## file name.  If no filename is specified, the output is sent to the
+## printer.
 ##
 ## @var{h} specifies the handle of the figure to print.  If no handle is
 ## specified the current figure is used.
 ##
-## For output to a printer, PostScript file, or PDF file,
-## the paper size is specified by the figure's @code{papersize}
-## property.  The location and size of the image on the page are
-## specified by the figure's @code{paperposition} property.  The
-## orientation of the page is specified by the figure's
-## @code{paperorientation} property.
+## For output to a printer, PostScript file, or PDF file, the paper size is
+## specified by the figure's @code{papersize} property.  The location and
+## size of the image on the page are specified by the figure's
+## @code{paperposition} property.  The orientation of the page is specified
+## by the figure's @code{paperorientation} property.
 ##
 ## The width and height of images are specified by the figure's
 ## @code{paperpositon(3:4)} property values.
@@ -48,16 +47,16 @@
 ##
 ## @table @code
 ## @item -f@var{h}
-##   Specify the handle, @var{h}, of the figure to be printed.  The
-## default is the current figure.
+##   Specify the handle, @var{h}, of the figure to be printed.  The default
+## is the current figure.
 ##
 ## @item -P@var{printer}
 ##   Set the @var{printer} name to which the plot is sent if no
 ## @var{filename} is specified.
 ##
 ## @item -G@var{ghostscript_command}
-##   Specify the command for calling Ghostscript.  For Unix and Windows
-## the defaults are @qcode{"gs"} and @qcode{"gswin32c"}, respectively.
+##   Specify the command for calling Ghostscript.  For Unix and Windows the
+## defaults are @qcode{"gs"} and @qcode{"gswin32c"}, respectively.
 ##
 ## @item  -color
 ## @itemx -mono
@@ -69,24 +68,23 @@
 ##
 ## @item  -portrait
 ## @itemx -landscape
-##   Specify the orientation of the plot for printed output.  For
-## non-printed output the aspect ratio of the output corresponds to
-## the plot area defined by the @qcode{"paperposition"} property in the
-## orientation specified.  This option is equivalent to changing
-## the figure's @qcode{"paperorientation"} property.
+##   Specify the orientation of the plot for printed output.
+## For non-printed output the aspect ratio of the output corresponds to the
+## plot area defined by the @qcode{"paperposition"} property in the
+## orientation specified.  This option is equivalent to changing the figure's
+## @qcode{"paperorientation"} property.
 ##
 ## @item  -TextAlphaBits=@var{n}
 ## @itemx -GraphicsAlphaBits=@var{n}
 ##   Octave is able to produce output for various printers, bitmaps, and
-## vector formats by using Ghostscript.
-## For bitmap and printer output anti-aliasing is applied using
-## Ghostscript's TextAlphaBits and GraphicsAlphaBits options.
-## The default number of bits for each is 4.
+## vector formats by using Ghostscript.  For bitmap and printer output
+## anti-aliasing is applied using Ghostscript's TextAlphaBits and
+## GraphicsAlphaBits options.  The default number of bits for each is 4. 
 ## Allowed values for @var{N} are 1, 2, or 4.
 ##
 ## @item -d@var{device}
-##   The available output format is specified by the option @var{device},
-## and is one of:
+##   The available output format is specified by the option @var{device}, and
+## is one of:
 ##
 ##   @table @code
 ##   @item  ps
@@ -148,9 +146,7 @@
 ##
 ##   @item fig
 ##     XFig.  For the Gnuplot graphics toolkit, the additional options
-## @option{-textspecial} or @option{-textnormal} can be used to control
-## whether the special flag should be set for the text in
-## the figure.  (default is @option{-textnormal})
+## @option{-textspecial} or @option{-textnormal} can be used to control whether the special flag should be set for the text in the figure.  (default is @option{-textnormal})
 ##
 ##   @item hpgl
 ##     HP plotter language
@@ -202,18 +198,18 @@
 ##   For a complete list, type @code{system ("gs -h")} to see what formats
 ## and devices are available.
 ##
-##   When Ghostscript output is sent to a printer the size is determined
-## by the figure's @qcode{"papersize"} property.  When the output
-## is sent to a file the size is determined by the plot box defined by
-## the figure's @qcode{"paperposition"} property.
+##   When Ghostscript output is sent to a printer the size is determined by
+## the figure's @qcode{"papersize"} property.  When the output is sent to a
+## file the size is determined by the plot box defined by the figure's
+## @qcode{"paperposition"} property.
 ##
 ## @item -append
 ##   Append PostScript or PDF output to a pre-existing file of the same type.
 ##
 ## @item -r@var{NUM}
-##   Resolution of bitmaps in pixels per inch.  For both metafiles and
-## SVG the default is the screen resolution; for other formats it is 150 dpi.
-## To specify screen resolution, use @qcode{"-r0"}.
+##   Resolution of bitmaps in pixels per inch.  For both metafiles and SVG
+## the default is the screen resolution; for other formats it is 150 dpi.  To
+## specify screen resolution, use @qcode{"-r0"}.
 ##
 ## @item  -loose
 ## @itemx -tight
@@ -237,12 +233,12 @@
 ##   @end table
 ##
 ## @item -S@var{xsize},@var{ysize}
-##   Plot size in pixels for EMF, GIF, JPEG, PBM, PNG, and SVG@.  For
-## PS, EPS, PDF, and other vector formats the plot size is in points.
-## This option is equivalent to changing the size of the plot box
-## associated with the @qcode{"paperposition"} property.  When using the
-## command form of the print function you must quote the
-## @var{xsize},@var{ysize} option.  For example, by writing @w{"-S640,480"}.
+##   Plot size in pixels for EMF, GIF, JPEG, PBM, PNG, and SVG@.
+## For PS, EPS, PDF, and other vector formats the plot size is in points.
+## This option is equivalent to changing the size of the plot box associated
+## with the @qcode{"paperposition"} property.  When using the command form of
+## the print function you must quote the @var{xsize},@var{ysize} option.  For
+## example, by writing @w{"-S640,480"}.
 ##
 ## @item  -F@var{fontname}
 ## @itemx -F@var{fontname}:@var{size}
--- a/scripts/plot/util/printd.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/plot/util/printd.m	Sun May 10 21:37:19 2015 -0700
@@ -22,12 +22,14 @@
 ## @deftypefn  {Function File} {} printd (@var{obj}, @var{filename})
 ## @deftypefnx {Function File} {@var{out_file} =} printd (@dots{})
 ##
-## Convert any object acceptable to @code{disp} into the format
-## selected by the suffix of @var{filename}.  If the return argument
-## @var{out_file} is given, the name of the created file is returned.
+## Convert any object acceptable to @code{disp} into the format selected by
+## the suffix of @var{filename}.
 ##
-## This function is intended to facilitate manipulation of the output
-## of functions such as @code{stemleaf}.
+## If the return argument @var{out_file} is given, the name of the created
+## file is returned.
+##
+## This function is intended to facilitate manipulation of the output of
+## functions such as @code{stemleaf}.
 ## @seealso{stemleaf}
 ## @end deftypefn
 
--- a/scripts/plot/util/private/__add_default_menu__.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/plot/util/private/__add_default_menu__.m	Sun May 10 21:37:19 2015 -0700
@@ -18,8 +18,10 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} __add_default_menu__ (@var{fig})
-## Add default menu to figure.  All uimenu handles have
-## their @qcode{"HandleVisibility"} property set to @qcode{"off"}.
+## Add default menu to figure.
+##
+## All uimenu handles have their @qcode{"HandleVisibility"} property set to
+## @qcode{"off"}.
 ## @end deftypefn
 
 ## Author: Kai Habel
--- a/scripts/plot/util/rotate.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/plot/util/rotate.m	Sun May 10 21:37:19 2015 -0700
@@ -19,17 +19,17 @@
 ## -*- texinfo -*-
 ## @deftypefn  {Function File} {} rotate (@var{h}, @var{dir}, @var{alpha})
 ## @deftypefnx {Function File} {} rotate (@dots{}, @var{origin})
-## Rotate the plot object @var{h} through @var{alpha} degrees around
-## the line with direction @var{dir} and origin @var{origin}.
+## Rotate the plot object @var{h} through @var{alpha} degrees around the line
+## with direction @var{dir} and origin @var{origin}.
 ##
-## The default value of @var{origin} is the center of the axes
-## object that is the parent of @var{h}.
+## The default value of @var{origin} is the center of the axes object that is
+## the parent of @var{h}.
 ##
-## If @var{h} is a vector of handles, they must all have the same
-## parent axes object.
+## If @var{h} is a vector of handles, they must all have the same parent axes
+## object.
 ##
-## Graphics objects that may be rotated are lines, surfaces, patches,
-## and images.
+## Graphics objects that may be rotated are lines, surfaces, patches, and
+## images.
 ## @end deftypefn
 
 function rotate (h, direction, alpha, origin)
--- a/scripts/plot/util/rotate3d.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/plot/util/rotate3d.m	Sun May 10 21:37:19 2015 -0700
@@ -28,9 +28,8 @@
 ##
 ## With no arguments, toggle the current rotate mode on or off.
 ##
-## If the first argument @var{hfig} is a figure, then operate on
-## the given figure rather than the current figure as returned by
-## @code{gcf}.
+## If the first argument @var{hfig} is a figure, then operate on the given
+## figure rather than the current figure as returned by @code{gcf}.
 ##
 ## @seealso{pan, zoom}
 ## @end deftypefn
--- a/scripts/plot/util/saveas.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/plot/util/saveas.m	Sun May 10 21:37:19 2015 -0700
@@ -19,8 +19,8 @@
 ## -*- texinfo -*-
 ## @deftypefn  {Function File} {} saveas (@var{h}, @var{filename})
 ## @deftypefnx {Function File} {} saveas (@var{h}, @var{filename}, @var{fmt})
-## Save graphic object @var{h} to the file @var{filename} in graphic
-## format @var{fmt}.
+## Save graphic object @var{h} to the file @var{filename} in graphic format
+## @var{fmt}.
 ##
 ## @var{fmt} should be one of the following formats:
 ##
--- a/scripts/plot/util/struct2hdl.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/plot/util/struct2hdl.m	Sun May 10 21:37:19 2015 -0700
@@ -23,14 +23,15 @@
 ## Construct a graphics handle object @var{h} from the structure @var{s}.
 ##
 ## The structure must contain the fields @qcode{"handle"}, @qcode{"type"},
-## @qcode{"children"}, @qcode{"properties"}, and @qcode{"special"}.  If the
-## handle of an existing figure or axes is specified, @var{p}, the new object
-## will be created as a child of that object.  If no parent handle is provided
-## then a new figure and the necessary children will be constructed using the
-## default values from the root figure.
+## @qcode{"children"}, @qcode{"properties"}, and @qcode{"special"}.
 ##
-## A third boolean argument @var{hilev} can be passed to specify whether
-## the function should preserve listeners/callbacks, e.g., for legends or
+## If the handle of an existing figure or axes is specified, @var{p}, the new
+## object will be created as a child of that object.  If no parent handle is
+## provided then a new figure and the necessary children will be constructed
+## using the default values from the root figure.
+##
+## A third boolean argument @var{hilev} can be passed to specify whether the
+## function should preserve listeners/callbacks, e.g., for legends or
 ## hggroups.  The default is false.
 ## @seealso{hdl2struct, hgload, findobj}
 ## @end deftypefn
--- a/scripts/plot/util/subplot.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/plot/util/subplot.m	Sun May 10 21:37:19 2015 -0700
@@ -29,8 +29,8 @@
 ## current axes for plotting (@code{gca}) to the location given by @var{index}.
 ##
 ## If only one numeric argument is supplied, then it must be a three digit
-## value specifying the number of rows in digit 1, the number of
-## columns in digit 2, and the plot index in digit 3.
+## value specifying the number of rows in digit 1, the number of columns in
+## digit 2, and the plot index in digit 3.
 ##
 ## The plot index runs row-wise; First, all columns in a row are numbered
 ## and then the next row is filled.
--- a/scripts/plot/util/zoom.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/plot/util/zoom.m	Sun May 10 21:37:19 2015 -0700
@@ -26,31 +26,30 @@
 ## @deftypefnx {Command} {} zoom out
 ## @deftypefnx {Command} {} zoom reset
 ## @deftypefnx {Command} {} zoom (@var{hfig}, @var{option})
-## Zoom the current axes object or control the interactive zoom mode of
-## a figure in the GUI.
+## Zoom the current axes object or control the interactive zoom mode of a
+## figure in the GUI.
 ##
-## Given a numeric argument greater than zero, zoom by the given factor.
-## If the zoom factor is greater than one, zoom in on the plot.  If the
-## factor is less than one, zoom out.  If the zoom factor is a two- or
-## three-element vector, then the elements specify the zoom factors for
-## the x, y, and z axes respectively.
+## Given a numeric argument greater than zero, zoom by the given factor.  If
+## the zoom factor is greater than one, zoom in on the plot.  If the factor
+## is less than one, zoom out.  If the zoom factor is a two- or three-element
+## vector, then the elements specify the zoom factors for the x, y, and z
+## axes respectively.
 ##
-## Given the option @qcode{"on"} or @qcode{"off"}, set the interactive
-## zoom mode on or off.
+## Given the option @qcode{"on"} or @qcode{"off"}, set the interactive zoom
+## mode on or off.
 ##
 ## With no arguments, toggle the current zoom mode on or off.
 ##
-## Given the option @qcode{"xon"} or @qcode{"yon"}, enable zoom mode
-## for the x or y axis only.
+## Given the option @qcode{"xon"} or @qcode{"yon"}, enable zoom mode for the
+## x or y-axis only.
 ##
 ## Given the option @qcode{"out"}, zoom to the initial zoom setting.
 ##
-## Given the option @qcode{"reset"}, store the current zoom setting so
-## that @code{zoom out} will return to this zoom level.
+## Given the option @qcode{"reset"}, store the current zoom setting so that
+## @code{zoom out} will return to this zoom level.
 ##
-## If the first argument @var{hfig} is a figure, then operate on
-## the given figure rather than the current figure as returned by
-## @code{gcf}.
+## If the first argument @var{hfig} is a figure, then operate on the given
+## figure rather than the current figure as returned by @code{gcf}.
 ##
 ## @seealso{pan, rotate3d}
 ## @end deftypefn
--- a/scripts/polynomial/compan.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/polynomial/compan.m	Sun May 10 21:37:19 2015 -0700
@@ -18,8 +18,8 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} compan (@var{c})
-## Compute the companion matrix corresponding to polynomial coefficient
-## vector @var{c}.
+## Compute the companion matrix corresponding to polynomial coefficient vector
+## @var{c}.
 ##
 ## The companion matrix is
 ## @tex
--- a/scripts/polynomial/mkpp.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/polynomial/mkpp.m	Sun May 10 21:37:19 2015 -0700
@@ -21,24 +21,24 @@
 ## @deftypefnx {Function File} {@var{pp} =} mkpp (@var{breaks}, @var{coefs}, @var{d})
 ##
 ## Construct a piecewise polynomial (pp) structure from sample points
-## @var{breaks} and coefficients @var{coefs}.  @var{breaks} must be a vector of
-## strictly increasing values.  The number of intervals is given by
-## @code{@var{ni} = length (@var{breaks}) - 1}.
-## When @var{m} is the polynomial order @var{coefs} must be of
-## size: @var{ni} x @var{m} + 1.
+## @var{breaks} and coefficients @var{coefs}.
 ##
-## The i-th row of @var{coefs},
-## @code{@var{coefs} (@var{i},:)}, contains the coefficients for the polynomial
-## over the @var{i}-th interval, ordered from highest (@var{m}) to
-## lowest (@var{0}).
+## @var{breaks} must be a vector of strictly increasing values.  The number of
+## intervals is given by @code{@var{ni} = length (@var{breaks}) - 1}.
+## 
+## When @var{m} is the polynomial order @var{coefs} must be of size:
+## @var{ni} x @var{m} + 1.
+##
+## The i-th row of @var{coefs}, @code{@var{coefs} (@var{i},:)}, contains the
+## coefficients for the polynomial over the @var{i}-th interval, ordered from
+## highest (@var{m}) to lowest (@var{0}).
 ##
 ## @var{coefs} may also be a multi-dimensional array, specifying a vector-valued
 ## or array-valued polynomial.  In that case the polynomial order is defined
-## by the length of the last dimension of @var{coefs}.
-## The size of first dimension(s) are given by the scalar or
-## vector @var{d}.  If @var{d} is not given it is set to @code{1}.
-## In any case @var{coefs} is reshaped to a 2-D matrix of
-## size @code{[@var{ni}*prod(@var{d} @var{m})] }
+## by the length of the last dimension of @var{coefs}.  The size of first
+## dimension(s) are given by the scalar or vector @var{d}.  If @var{d} is not
+## given it is set to @code{1}.  In any case @var{coefs} is reshaped to a 2-D
+## matrix of size @code{[@var{ni}*prod(@var{d} @var{m})] }
 ##
 ## @seealso{unmkpp, ppval, spline, pchip, ppder, ppint, ppjumps}
 ## @end deftypefn
--- a/scripts/polynomial/mpoles.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/polynomial/mpoles.m	Sun May 10 21:37:19 2015 -0700
@@ -20,17 +20,17 @@
 ## @deftypefn  {Function File} {[@var{multp}, @var{idxp}] =} mpoles (@var{p})
 ## @deftypefnx {Function File} {[@var{multp}, @var{idxp}] =} mpoles (@var{p}, @var{tol})
 ## @deftypefnx {Function File} {[@var{multp}, @var{idxp}] =} mpoles (@var{p}, @var{tol}, @var{reorder})
-## Identify unique poles in @var{p} and their associated multiplicity.  The
-## output is ordered from largest pole to smallest pole.
+## Identify unique poles in @var{p} and their associated multiplicity.
 ##
-## If the relative difference of two poles is less than @var{tol} then
-## they are considered to be multiples.  The default value for @var{tol}
-## is 0.001.
+## The output is ordered from largest pole to smallest pole.
+##
+## If the relative difference of two poles is less than @var{tol} then they are
+## considered to be multiples.  The default value for @var{tol} is 0.001.
 ##
 ## If the optional parameter @var{reorder} is zero, poles are not sorted.
 ##
-## The output @var{multp} is a vector specifying the multiplicity of the
-## poles.  @code{@var{multp}(n)} refers to the multiplicity of the Nth pole
+## The output @var{multp} is a vector specifying the multiplicity of the poles.
+## @code{@var{multp}(n)} refers to the multiplicity of the Nth pole
 ## @code{@var{p}(@var{idxp}(n))}.
 ##
 ## For example:
--- a/scripts/polynomial/pchip.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/polynomial/pchip.m	Sun May 10 21:37:19 2015 -0700
@@ -24,32 +24,34 @@
 ##
 ## If called with two arguments, return the piecewise polynomial @var{pp}
 ## that may be used with @code{ppval} to evaluate the polynomial at specific
-## points.  When called with a third input argument, @code{pchip} evaluates
-## the pchip polynomial at the points @var{xi}.  The third calling form is
-## equivalent to @code{ppval (pchip (@var{x}, @var{y}), @var{xi})}.
+## points.
+##
+## When called with a third input argument, @code{pchip} evaluates the pchip
+## polynomial at the points @var{xi}.  The third calling form is equivalent to
+## @code{ppval (pchip (@var{x}, @var{y}), @var{xi})}.
 ##
-## The variable @var{x} must be a strictly monotonic vector (either
-## increasing or decreasing) of length @var{n}.  @var{y} can be either a
-## vector or array.  If @var{y} is a vector then it must be the same length
-## @var{n} as @var{x}.  If @var{y} is an array then the size of @var{y} must
-## have the form
+## The variable @var{x} must be a strictly monotonic vector (either increasing
+## or decreasing) of length @var{n}.
+##
+## @var{y} can be either a vector or array.  If @var{y} is a vector then it
+## must be the same length @var{n} as @var{x}.  If @var{y} is an array then
+## the size of @var{y} must have the form
 ## @tex
 ## $$[s_1, s_2, \cdots, s_k, n]$$
 ## @end tex
 ## @ifnottex
 ## @code{[@var{s1}, @var{s2}, @dots{}, @var{sk}, @var{n}]}
 ## @end ifnottex
-## The array is reshaped internally to a matrix where the leading
-## dimension is given by
+## The array is reshaped internally to a matrix where the leading dimension is
+## given by
 ## @tex
 ## $$s_1 s_2 \cdots s_k$$
 ## @end tex
 ## @ifnottex
 ## @code{@var{s1} * @var{s2} * @dots{} * @var{sk}}
 ## @end ifnottex
-## and each row of this matrix is then treated separately.  Note that this
-## is exactly opposite to @code{interp1} but is done for @sc{matlab}
-## compatibility.
+## and each row of this matrix is then treated separately.  Note that this is
+## exactly opposite to @code{interp1} but is done for @sc{matlab} compatibility.
 ##
 ## @seealso{spline, ppval, mkpp, unmkpp}
 ## @end deftypefn
--- a/scripts/polynomial/poly.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/polynomial/poly.m	Sun May 10 21:37:19 2015 -0700
@@ -21,9 +21,10 @@
 ## @deftypefnx {Function File} {} poly (@var{x})
 ## If @var{A} is a square @math{N}-by-@math{N} matrix, @code{poly (@var{A})}
 ## is the row vector of the coefficients of @code{det (z * eye (N) - A)},
-## the characteristic polynomial of @var{A}.  For example,
-## the following code finds the eigenvalues of @var{A} which are the roots of
-## @code{poly (@var{A})}.
+## the characteristic polynomial of @var{A}.
+##
+## For example, the following code finds the eigenvalues of @var{A} which are
+## the roots of @code{poly (@var{A})}.
 ##
 ## @example
 ## @group
@@ -40,9 +41,10 @@
 ##
 ## If @var{x} is a vector, @code{poly (@var{x})} is a vector of the
 ## coefficients of the polynomial whose roots are the elements of @var{x}.
-## That is, if @var{c} is a polynomial, then the elements of @code{@var{d} =
-## roots (poly (@var{c}))} are contained in @var{c}.  The vectors @var{c} and
-## @var{d} are not identical, however, due to sorting and numerical errors.
+## That is, if @var{c} is a polynomial, then the elements of
+## @code{@var{d} = roots (poly (@var{c}))} are contained in @var{c}.  The
+## vectors @var{c} and @var{d} are not identical, however, due to sorting and
+## numerical errors.
 ## @seealso{roots, eig}
 ## @end deftypefn
 
--- a/scripts/polynomial/polyaffine.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/polynomial/polyaffine.m	Sun May 10 21:37:19 2015 -0700
@@ -19,9 +19,10 @@
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} polyaffine (@var{f}, @var{mu})
 ## Return the coefficients of the polynomial vector @var{f} after an affine
-## transformation.  If @var{f} is the vector representing the polynomial f(x),
-## then @code{@var{g} = polyaffine (@var{f}, @var{mu})} is the vector
-## representing:
+## transformation.
+##
+## If @var{f} is the vector representing the polynomial f(x), then
+## @code{@var{g} = polyaffine (@var{f}, @var{mu})} is the vector representing:
 ##
 ## @example
 ## g(x) = f( (x - @var{mu}(1)) / @var{mu}(2) )
--- a/scripts/polynomial/polyder.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/polynomial/polyder.m	Sun May 10 21:37:19 2015 -0700
@@ -21,8 +21,11 @@
 ## @deftypefnx {Function File} {[@var{k}] =} polyder (@var{a}, @var{b})
 ## @deftypefnx {Function File} {[@var{q}, @var{d}] =} polyder (@var{b}, @var{a})
 ## Return the coefficients of the derivative of the polynomial whose
-## coefficients are given by the vector @var{p}.  If a pair of polynomials
-## is given, return the derivative of the product @math{@var{a}*@var{b}}.
+## coefficients are given by the vector @var{p}.
+##
+## If a pair of polynomials is given, return the derivative of the product
+## @math{@var{a}*@var{b}}.
+## 
 ## If two inputs and two outputs are given, return the derivative of the
 ## polynomial quotient @math{@var{b}/@var{a}}.  The quotient numerator is
 ## in @var{q} and the denominator in @var{d}.
--- a/scripts/polynomial/polyeig.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/polynomial/polyeig.m	Sun May 10 21:37:19 2015 -0700
@@ -23,8 +23,11 @@
 ## Solve the polynomial eigenvalue problem of degree @var{l}.
 ##
 ## Given an @var{n*n} matrix polynomial
+##
 ## @code{@var{C}(s) = @var{C0} + @var{C1} s + @dots{} + @var{Cl} s^l}
-## polyeig solves the eigenvalue problem
+##
+## @code{polyeig} solves the eigenvalue problem
+##
 ## @code{(@var{C0} + @var{C1} + @dots{} + @var{Cl})v = 0}.
 ##
 ## Note that the eigenvalues @var{z} are the zeros of the matrix polynomial.
--- a/scripts/polynomial/polyfit.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/polynomial/polyfit.m	Sun May 10 21:37:19 2015 -0700
@@ -22,9 +22,10 @@
 ## @deftypefnx {Function File} {[@var{p}, @var{s}, @var{mu}] =} polyfit (@var{x}, @var{y}, @var{n})
 ## Return the coefficients of a polynomial @var{p}(@var{x}) of degree
 ## @var{n} that minimizes the least-squares-error of the fit to the points
-## @code{[@var{x}, @var{y}]}.  If @var{n} is a logical vector, it is used
-## as a mask to selectively force the corresponding polynomial
-## coefficients to be used or ignored.
+## @code{[@var{x}, @var{y}]}.
+##
+## If @var{n} is a logical vector, it is used as a mask to selectively force
+## the corresponding polynomial coefficients to be used or ignored.
 ##
 ## The polynomial coefficients are returned in a row vector.
 ##
@@ -54,15 +55,18 @@
 ##
 ## The second output may be used by @code{polyval} to calculate the
 ## statistical error limits of the predicted values.  In particular, the
-## standard deviation of @var{p} coefficients is given by @*
+## standard deviation of @var{p} coefficients is given by
+##
 ## @code{sqrt (diag (s.C)/s.df)*s.normr}.
 ##
-## When the third output, @var{mu}, is present the
-## coefficients, @var{p}, are associated with a polynomial in
-## @var{xhat} = (@var{x}-@var{mu}(1))/@var{mu}(2).
-## Where @var{mu}(1) = mean (@var{x}), and @var{mu}(2) = std (@var{x}).
-## This linear transformation of @var{x} improves the numerical
-## stability of the fit.
+## When the third output, @var{mu}, is present the coefficients, @var{p}, are
+## associated with a polynomial in
+##
+## @code{@var{xhat} = (@var{x} - @var{mu}(1)) / @var{mu}(2)} @*
+## where @var{mu}(1) = mean (@var{x}), and @var{mu}(2) = std (@var{x}).
+##
+## This linear transformation of @var{x} improves the numerical stability of
+## the fit.
 ## @seealso{polyval, polyaffine, roots, vander, zscore}
 ## @end deftypefn
 
--- a/scripts/polynomial/polygcd.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/polynomial/polygcd.m	Sun May 10 21:37:19 2015 -0700
@@ -20,9 +20,12 @@
 ## @deftypefn  {Function File} {@var{q} =} polygcd (@var{b}, @var{a})
 ## @deftypefnx {Function File} {@var{q} =} polygcd (@var{b}, @var{a}, @var{tol})
 ##
-## Find the greatest common divisor of two polynomials.  This is equivalent
-## to the polynomial found by multiplying together all the common roots.
-## Together with deconv, you can reduce a ratio of two polynomials.
+## Find the greatest common divisor of two polynomials.
+##
+## This is equivalent to the polynomial found by multiplying together all the
+## common roots.  Together with deconv, you can reduce a ratio of two
+## polynomials.
+##
 ## The tolerance @var{tol} defaults to @code{sqrt (eps)}.
 ##
 ## @strong{Caution:} This is a numerically unstable algorithm and should not
--- a/scripts/polynomial/polyint.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/polynomial/polyint.m	Sun May 10 21:37:19 2015 -0700
@@ -20,8 +20,10 @@
 ## @deftypefn  {Function File} {} polyint (@var{p})
 ## @deftypefnx {Function File} {} polyint (@var{p}, @var{k})
 ## Return the coefficients of the integral of the polynomial whose
-## coefficients are represented by the vector @var{p}.  The variable
-## @var{k} is the constant of integration, which by default is set to zero.
+## coefficients are represented by the vector @var{p}.
+##
+## The variable @var{k} is the constant of integration, which by default is
+## set to zero.
 ## @seealso{polyder, polyval}
 ## @end deftypefn
 
--- a/scripts/polynomial/polyout.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/polynomial/polyout.m	Sun May 10 21:37:19 2015 -0700
@@ -20,7 +20,9 @@
 ## @deftypefn  {Function File} {} polyout (@var{c})
 ## @deftypefnx {Function File} {} polyout (@var{c}, @var{x})
 ## @deftypefnx {Function File} {@var{str} =} polyout (@dots{})
-## Write formatted polynomial
+## Display a formatted version of the polynomial @var{c}.
+##
+## The formatted polynomial
 ## @tex
 ## $$ c(x) = c_1 x^n + \ldots + c_n x + c_{n+1} $$
 ## @end tex
@@ -31,8 +33,10 @@
 ## @end example
 ##
 ## @end ifnottex
-## and return it as a string or write it to the screen (if @var{nargout} is
-## zero).  @var{x} defaults to the string @qcode{"s"}.
+## is returned as a string or written to the screen if @code{nargout} is zero.
+##
+## The second argument @var{x} specifies the variable name to use for each term
+## and defaults to the string @qcode{"s"}.
 ## @seealso{polyreduce}
 ## @end deftypefn
 
--- a/scripts/polynomial/polyval.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/polynomial/polyval.m	Sun May 10 21:37:19 2015 -0700
@@ -22,17 +22,19 @@
 ## @deftypefnx {Function File} {[@var{y}, @var{dy}] =} polyval (@var{p}, @var{x}, @var{s})
 ## @deftypefnx {Function File} {[@var{y}, @var{dy}] =} polyval (@var{p}, @var{x}, @var{s}, @var{mu})
 ##
-## Evaluate the polynomial @var{p} at the specified values of @var{x}.  When
-## @var{mu} is present, evaluate the polynomial for
-## (@var{x}-@var{mu}(1))/@var{mu}(2).
+## Evaluate the polynomial @var{p} at the specified values of @var{x}.
+##
 ## If @var{x} is a vector or matrix, the polynomial is evaluated for each of
 ## the elements of @var{x}.
 ##
-## In addition to evaluating the polynomial, the second output
-## represents the prediction interval, @var{y} +/- @var{dy}, which
-## contains at least 50% of the future predictions.  To calculate the
-## prediction interval, the structured variable @var{s}, originating
-## from @code{polyfit}, must be supplied.
+## When @var{mu} is present, evaluate the polynomial for
+## (@var{x}-@var{mu}(1))/@var{mu}(2).
+##
+## In addition to evaluating the polynomial, the second output represents the
+## prediction interval, @var{y} +/- @var{dy}, which contains at least 50% of
+## the future predictions.  To calculate the prediction interval, the
+## structured variable @var{s}, originating from @code{polyfit}, must be
+## supplied.
 ##
 ## @seealso{polyvalm, polyaffine, polyfit, roots, poly}
 ## @end deftypefn
--- a/scripts/polynomial/ppder.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/polynomial/ppder.m	Sun May 10 21:37:19 2015 -0700
@@ -20,7 +20,9 @@
 ## @deftypefn  {Function File} {ppd =} ppder (pp)
 ## @deftypefnx {Function File} {ppd =} ppder (pp, m)
 ## Compute the piecewise @var{m}-th derivative of a piecewise polynomial
-## struct @var{pp}.  If @var{m} is omitted the first derivative is calculated.
+## struct @var{pp}.
+##
+## If @var{m} is omitted the first derivative is calculated.
 ## @seealso{mkpp, ppval, ppint}
 ## @end deftypefn
 
--- a/scripts/polynomial/ppint.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/polynomial/ppint.m	Sun May 10 21:37:19 2015 -0700
@@ -20,6 +20,7 @@
 ## @deftypefn  {Function File} {@var{ppi} =} ppint (@var{pp})
 ## @deftypefnx {Function File} {@var{ppi} =} ppint (@var{pp}, @var{c})
 ## Compute the integral of the piecewise polynomial struct @var{pp}.
+##
 ## @var{c}, if given, is the constant of integration.
 ## @seealso{mkpp, ppval, ppder}
 ## @end deftypefn
--- a/scripts/polynomial/ppjumps.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/polynomial/ppjumps.m	Sun May 10 21:37:19 2015 -0700
@@ -19,6 +19,7 @@
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {@var{jumps} =} ppjumps (@var{pp})
 ## Evaluate the boundary jumps of a piecewise polynomial.
+##
 ## If there are @math{n} intervals, and the dimensionality of @var{pp} is
 ## @math{d}, the resulting array has dimensions @code{[d, n-1]}.
 ## @seealso{mkpp}
--- a/scripts/polynomial/ppval.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/polynomial/ppval.m	Sun May 10 21:37:19 2015 -0700
@@ -19,11 +19,11 @@
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {@var{yi} =} ppval (@var{pp}, @var{xi})
 ## Evaluate the piecewise polynomial structure @var{pp} at the points @var{xi}.
-## If @var{pp} describes a scalar polynomial function, the result is an
-## array of the same shape as @var{xi}.
-## Otherwise, the size of the result is @code{[pp.dim, length(@var{xi})]} if
-## @var{xi} is a vector, or @code{[pp.dim, size(@var{xi})]} if it is a
-## multi-dimensional array.
+##
+## If @var{pp} describes a scalar polynomial function, the result is an array
+## of the same shape as @var{xi}.  Otherwise, the size of the result is
+## @code{[pp.dim, length(@var{xi})]} if @var{xi} is a vector, or
+## @code{[pp.dim, size(@var{xi})]} if it is a multi-dimensional array.
 ## @seealso{mkpp, unmkpp, spline, pchip}
 ## @end deftypefn
 
--- a/scripts/polynomial/residue.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/polynomial/residue.m	Sun May 10 21:37:19 2015 -0700
@@ -23,6 +23,8 @@
 ## @deftypefnx {Function File} {[@var{b}, @var{a}] =} residue (@var{r}, @var{p}, @var{k}, @var{e})
 ## The first calling form computes the partial fraction expansion for the
 ## quotient of the polynomials, @var{b} and @var{a}.
+##
+## The quotient is defined as
 ## @tex
 ## $$
 ## {B(s)\over A(s)} = \sum_{m=1}^M {r_m\over (s-p_m)^e_m}
@@ -33,18 +35,18 @@
 ##
 ## @example
 ## @group
-## B(s)    M       r(m)         N
-## ---- = SUM -------------  + SUM k(i)*s^(N-i)
-## A(s)   m=1 (s-p(m))^e(m)    i=1
+## B(s)    M       r(m)        N
+## ---- = SUM ------------- + SUM k(i)*s^(N-i)
+## A(s)   m=1 (s-p(m))^e(m)   i=1
 ## @end group
 ## @end example
 ##
 ## @end ifnottex
 ## @noindent
-## where @math{M} is the number of poles (the length of the @var{r},
-## @var{p}, and @var{e}), the @var{k} vector is a polynomial of order @math{N-1}
-## representing the direct contribution, and the @var{e} vector specifies
-## the multiplicity of the m-th residue's pole.
+## where @math{M} is the number of poles (the length of the @var{r}, @var{p},
+## and @var{e}), the @var{k} vector is a polynomial of order @math{N-1}
+## representing the direct contribution, and the @var{e} vector specifies the
+## multiplicity of the m-th residue's pole.
 ##
 ## For example,
 ##
@@ -79,11 +81,11 @@
 ##
 ## @end ifnottex
 ##
-## The second calling form performs the inverse operation and computes
-## the reconstituted quotient of polynomials, @var{b}(s)/@var{a}(s),
-## from the partial fraction expansion; represented by the residues,
-## poles, and a direct polynomial specified by @var{r}, @var{p} and
-## @var{k}, and the pole multiplicity @var{e}.
+## The second calling form performs the inverse operation and computes the
+## reconstituted quotient of polynomials, @var{b}(s)/@var{a}(s), from the
+## partial fraction expansion; represented by the residues, poles, and a direct
+## polynomial specified by @var{r}, @var{p} and @var{k}, and the pole
+## multiplicity @var{e}.
 ##
 ## If the multiplicity, @var{e}, is not explicitly specified the multiplicity is
 ## determined by the function @code{mpoles}.
--- a/scripts/polynomial/roots.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/polynomial/roots.m	Sun May 10 21:37:19 2015 -0700
@@ -17,19 +17,21 @@
 ## <http://www.gnu.org/licenses/>.
 
 ## -*- texinfo -*-
-## @deftypefn {Function File} {} roots (@var{v})
+## @deftypefn {Function File} {} roots (@var{c})
 ##
-## For a vector @var{v} with @math{N} components, return
-## the roots of the polynomial
+## Compute the roots of the polynomial @var{c}.
+##
+## For a vector @var{c} with @math{N} components, return the roots of the
+## polynomial
 ## @tex
 ## $$
-## v_1 z^{N-1} + \cdots + v_{N-1} z + v_N.
+## c_1 x^{N-1} + \cdots + c_{N-1} x + c_N.
 ## $$
 ## @end tex
 ## @ifnottex
 ##
 ## @example
-## v(1) * z^(N-1) + @dots{} + v(N-1) * z + v(N)
+## c(1) * x^(N-1) + @dots{} + c(N-1) * x + c(N)
 ## @end example
 ##
 ## @end ifnottex
--- a/scripts/polynomial/spline.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/polynomial/spline.m	Sun May 10 21:37:19 2015 -0700
@@ -24,18 +24,21 @@
 ##
 ## When called with two arguments, return the piecewise polynomial @var{pp}
 ## that may be used with @code{ppval} to evaluate the polynomial at specific
-## points.  When called with a third input argument, @code{spline} evaluates
-## the spline at the points @var{xi}.  The third calling form @code{spline
-## (@var{x}, @var{y}, @var{xi})} is equivalent to @code{ppval (spline
-## (@var{x}, @var{y}), @var{xi})}.
+## points.
+##
+## When called with a third input argument, @code{spline} evaluates the spline
+## at the points @var{xi}.  The third calling form
+## @code{spline (@var{x}, @var{y}, @var{xi})} is equivalent to
+## @code{ppval (spline (@var{x}, @var{y}), @var{xi})}.
 ##
-## The variable @var{x} must be a vector of length @var{n}.  @var{y} can be
-## either a vector or array.  If @var{y} is a vector it must have a length of
-## either @var{n} or @code{@var{n} + 2}.  If the length of @var{y} is
-## @var{n}, then the "not-a-knot" end condition is used.  If the length of
-## @var{y} is @code{@var{n} + 2}, then the first and last values of the
-## vector @var{y} are the values of the first derivative of the cubic spline
-## at the endpoints.
+## The variable @var{x} must be a vector of length @var{n}.
+##
+## @var{y} can be either a vector or array.  If @var{y} is a vector it must
+## have a length of either @var{n} or @code{@var{n} + 2}.  If the length of
+## @var{y} is @var{n}, then the @qcode{"not-a-knot"} end condition is used. 
+## If the length of @var{y} is @code{@var{n} + 2}, then the first and last
+## values of the vector @var{y} are the values of the first derivative of the
+## cubic spline at the endpoints.
 ##
 ## If @var{y} is an array, then the size of @var{y} must have the form
 ## @tex
@@ -59,8 +62,8 @@
 ## @ifnottex
 ## @code{@var{s1} * @var{s2} * @dots{} * @var{sk}}
 ## @end ifnottex
-## and each row of this matrix is then treated separately.  Note that this
-## is exactly opposite to @code{interp1} but is done for @sc{matlab}
+## and each row of this matrix is then treated separately.  Note that this is
+## exactly the opposite of @code{interp1} but is done for @sc{matlab}
 ## compatibility.
 ##
 ## @seealso{pchip, ppval, mkpp, unmkpp}
--- a/scripts/polynomial/splinefit.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/polynomial/splinefit.m	Sun May 10 21:37:19 2015 -0700
@@ -26,12 +26,10 @@
 ## @deftypefnx {Function File} {@var{pp} =} splinefit (@dots{}, "constraints", @var{constraints})
 ##
 ## Fit a piecewise cubic spline with breaks (knots) @var{breaks} to the
-## noisy data, @var{x} and @var{y}.  @var{x} is a vector, and @var{y}
-## is a vector or N-D array.  If @var{y} is an N-D array, then @var{x}(j)
-## is matched to @var{y}(:,@dots{},:,j).
+## noisy data, @var{x} and @var{y}.
 ##
-## The fitted spline is returned as a piecewise polynomial, @var{pp}, and
-## may be evaluated using @code{ppval}.
+## @var{x} is a vector, and @var{y} is a vector or N-D array.  If @var{y} is an
+## N-D array, then @var{x}(j) is matched to @var{y}(:,@dots{},:,j).
 ##
 ## @var{p} is a positive integer defining the number of intervals along @var{x},
 ## and @var{p}+1 is the number of breaks.  The number of points in each interval
@@ -47,19 +45,22 @@
 ## data points.  Three iterations of weighted least squares are performed.
 ## Weights are computed from previous residuals.  The sensitivity of outlier
 ## identification is controlled by the property @var{beta}.  The value of
-## @var{beta} is stricted to the range, 0 < @var{beta} < 1.  The default
+## @var{beta} is restricted to the range, 0 < @var{beta} < 1.  The default
 ## value is @var{beta} = 1/2.  Values close to 0 give all data equal
 ## weighting.  Increasing values of @var{beta} reduce the influence of
 ## outlying data.  Values close to unity may cause instability or rank
 ## deficiency.
 ##
+## The fitted spline is returned as a piecewise polynomial, @var{pp}, and
+## may be evaluated using @code{ppval}.
+##
 ## The splines are constructed of polynomials with degree @var{order}.
 ## The default is a cubic, @var{order}=3.  A spline with P pieces has
 ## P+@var{order} degrees of freedom.  With periodic boundary conditions
 ## the degrees of freedom are reduced to P.
 ##
-## The optional property, @var{constaints}, is a structure specifying
-## linear constraints on the fit.  The structure has three fields, @qcode{"xc"},
+## The optional property, @var{constaints}, is a structure specifying linear
+## constraints on the fit.  The structure has three fields, @qcode{"xc"},
 ## @qcode{"yc"}, and @qcode{"cc"}.
 ##
 ## @table @asis
--- a/scripts/polynomial/unmkpp.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/polynomial/unmkpp.m	Sun May 10 21:37:19 2015 -0700
@@ -20,6 +20,7 @@
 ## @deftypefn {Function File} {[@var{x}, @var{p}, @var{n}, @var{k}, @var{d}] =} unmkpp (@var{pp})
 ##
 ## Extract the components of a piecewise polynomial structure @var{pp}.
+##
 ## The components are:
 ##
 ## @table @asis
@@ -27,11 +28,11 @@
 ## Sample points.
 ##
 ## @item @var{p}
-## Polynomial coefficients for points in sample interval.  @code{@var{p}
-## (@var{i}, :)} contains the coefficients for the polynomial over
-## interval @var{i} ordered from highest to lowest.  If @code{@var{d} >
-## 1}, @code{@var{p} (@var{r}, @var{i}, :)} contains the coefficients for
-## the r-th polynomial defined on interval @var{i}.
+## Polynomial coefficients for points in sample interval.
+## @code{@var{p} (@var{i}, :)} contains the coefficients for the polynomial 
+## over interval @var{i} ordered from highest to lowest.  If
+## @code{@var{d} > 1}, @code{@var{p} (@var{r}, @var{i}, :)} contains the
+## coefficients for the r-th polynomial defined on interval @var{i}.
 ##
 ## @item @var{n}
 ## Number of polynomial pieces.
--- a/scripts/prefs/addpref.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/prefs/addpref.m	Sun May 10 21:37:19 2015 -0700
@@ -18,15 +18,17 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} addpref (@var{group}, @var{pref}, @var{val})
-## Add a preference @var{pref} and associated value @var{val} to the
-## named preference group @var{group}.
+## Add a preference @var{pref} and associated value @var{val} to the named
+## preference group @var{group}.
 ##
 ## The named preference group must be a character string.
 ##
-## The preference @var{pref} may be a character string or a cell array
-## of character strings.  The corresponding value @var{val} may be any
-## value, or, if @var{pref} is a cell array of strings, @var{val}
-## must be a cell array of values with the same size as @var{pref}.
+## The preference @var{pref} may be a character string or a cell array of
+## character strings.
+##
+## The corresponding value @var{val} may be any value, or, if @var{pref} is a
+## cell array of strings, @var{val} must be a cell array of values with the
+## same size as @var{pref}.
 ## @seealso{setpref, getpref, ispref, rmpref}
 ## @end deftypefn
 
--- a/scripts/prefs/getpref.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/prefs/getpref.m	Sun May 10 21:37:19 2015 -0700
@@ -17,26 +17,29 @@
 ## <http://www.gnu.org/licenses/>.
 
 ## -*- texinfo -*-
-## @deftypefn {Function File} {} getpref (@var{group}, @var{pref}, @var{default})
-## Return the preference value corresponding to the named preference
-## @var{pref} in the preference group @var{group}.
+## @deftypefn  {Function File} {} getpref (@var{group}, @var{pref})
+## @deftypefnx {Function File} {} getpref (@var{group}, @var{pref}, @var{default})
+## @deftypefnx {Function File} {} getpref (@var{group})
+## Return the preference value corresponding to the named preference @var{pref}
+## in the preference group @var{group}.
 ##
 ## The named preference group must be a character string.
 ##
 ## If @var{pref} does not exist in @var{group} and @var{default} is
 ## specified, return @var{default}.
 ##
-## The preference @var{pref} may be a character string or a cell array
-## of character strings.  The corresponding default value @var{default}
-## may be any value, or, if @var{pref} is a cell array of strings,
-## @var{default} must be a cell array of values with the same size as
-## @var{pref}.
+## The preference @var{pref} may be a character string or a cell array of
+## character strings.
 ##
-## If neither @var{pref} nor @var{default} are specified, return a
-## structure of preferences for the preference group @var{group}.
+## The corresponding default value @var{default} may be any value, or, if
+## @var{pref} is a cell array of strings, @var{default} must be a cell array
+## of values with the same size as @var{pref}.
 ##
-## If no arguments are specified, return a structure containing all
-## groups of preferences and their values.
+## If neither @var{pref} nor @var{default} are specified, return a structure
+## of preferences for the preference group @var{group}.
+##
+## If no arguments are specified, return a structure containing all groups of
+## preferences and their values.
 ## @seealso{addpref, setpref, ispref, rmpref}
 ## @end deftypefn
 
--- a/scripts/prefs/ispref.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/prefs/ispref.m	Sun May 10 21:37:19 2015 -0700
@@ -17,17 +17,18 @@
 ## <http://www.gnu.org/licenses/>.
 
 ## -*- texinfo -*-
-## @deftypefn {Function File} {} ispref (@var{group}, @var{pref})
-## Return true if the named preference @var{pref} exists in the
-## preference group @var{group}.
+## @deftypefn  {Function File} {} ispref (@var{group}, @var{pref})
+## @deftypefnx {Function File} {} ispref (@var{group})
+## Return true if the named preference @var{pref} exists in the preference
+## group @var{group}.
 ##
 ## The named preference group must be a character string.
 ##
-## The preference @var{pref} may be a character string or a cell array
-## of character strings.
+## The preference @var{pref} may be a character string or a cell array of
+## character strings.
 ##
-## If @var{pref} is not specified, return true if the preference
-## group @var{group} exists.
+## If @var{pref} is not specified, return true if the preference group
+## @var{group} exists.
 ## @seealso{getpref, addpref, setpref, rmpref}
 ## @end deftypefn
 
--- a/scripts/prefs/rmpref.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/prefs/rmpref.m	Sun May 10 21:37:19 2015 -0700
@@ -17,18 +17,15 @@
 ## <http://www.gnu.org/licenses/>.
 
 ## -*- texinfo -*-
-## @deftypefn  {Function File} {} rmpref (@var{group})
-## @deftypefnx {Function File} {} rmpref (@var{group}, @var{pref})
-## Remove the named preference @var{pref} from the preference group
-## @var{group}.
+## @deftypefn  {Function File} {} rmpref (@var{group}, @var{pref})
+## @deftypefnx {Function File} {} rmpref (@var{group})
+## Remove the named preference @var{pref} from the preference group @var{group}.
 ##
 ## The named preference group must be a character string.
 ##
-## The preference @var{pref} may be a character string or cell array
-## of strings.
+## The preference @var{pref} may be a character string or cell array of strings.
 ##
-## If @var{pref} is not specified, remove the preference group
-## @var{group}.
+## If @var{pref} is not specified, remove the preference group @var{group}.
 ##
 ## It is an error to remove a nonexistent preference or group.
 ## @seealso{addpref, ispref, setpref, getpref}
--- a/scripts/prefs/setpref.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/prefs/setpref.m	Sun May 10 21:37:19 2015 -0700
@@ -18,15 +18,17 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} setpref (@var{group}, @var{pref}, @var{val})
-## Set a preference @var{pref} to the given @var{val} in the named
-## preference group @var{group}.
+## Set a preference @var{pref} to the given @var{val} in the named preference
+## group @var{group}.
 ##
 ## The named preference group must be a character string.
 ##
-## The preference @var{pref} may be a character string or a cell array
-## of character strings.  The corresponding value @var{val} may be any
-## value, or, if @var{pref} is a cell array of strings, @var{val}
-## must be a cell array of values with the same size as @var{pref}.
+## The preference @var{pref} may be a character string or a cell array of
+## character strings.
+##
+## The corresponding value @var{val} may be any value, or, if @var{pref} is a
+## cell array of strings, @var{val} must be a cell array of values with the
+## same size as @var{pref}.
 ##
 ## If the named preference or group does not exist, it is added.
 ## @seealso{addpref, getpref, ispref, rmpref}
--- a/scripts/set/powerset.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/set/powerset.m	Sun May 10 21:37:19 2015 -0700
@@ -24,9 +24,9 @@
 ## The set @var{a} must be a numerical matrix or a cell array of strings.  The
 ## output will always be a cell array of either vectors or strings.
 ##
-## With the optional second argument @qcode{"rows"}, each row of the set @var{a}
-## is considered one element of the set.  The input must be a 2-D numeric
-## matrix to use this argument.
+## With the optional argument @qcode{"rows"}, each row of the set @var{a} is
+## considered one element of the set.  The input must be a 2-D numeric matrix
+## to use this argument.
 ##
 ## @seealso{unique, union, intersect, setdiff, setxor, ismember}
 ## @end deftypefn
--- a/scripts/set/setdiff.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/set/setdiff.m	Sun May 10 21:37:19 2015 -0700
@@ -24,9 +24,8 @@
 ## Return the unique elements in @var{a} that are not in @var{b} sorted in
 ## ascending order.
 ##
-## If @var{a} is a row vector return a column vector;
-## Otherwise, return a column vector.  The inputs may also be cell arrays of
-## strings.
+## If @var{a} is a row vector return a column vector; Otherwise, return a
+## column vector.  The inputs may also be cell arrays of strings.
 ##
 ## If the optional input @qcode{"rows"} is given then return the rows in
 ## @var{a} that are not in @var{b}.  The inputs must be 2-D matrices to use
--- a/scripts/signal/arch_fit.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/signal/arch_fit.m	Sun May 10 21:37:19 2015 -0700
@@ -18,8 +18,10 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {[@var{a}, @var{b}] =} arch_fit (@var{y}, @var{x}, @var{p}, @var{iter}, @var{gamma}, @var{a0}, @var{b0})
-## Fit an ARCH regression model to the time series @var{y} using the
-## scoring algorithm in @nospell{Engle's} original ARCH paper.  The model is
+## Fit an ARCH regression model to the time series @var{y} using the scoring
+## algorithm in @nospell{Engle's} original ARCH paper.
+##
+## The model is
 ##
 ## @example
 ## @group
@@ -30,21 +32,21 @@
 ##
 ## @noindent
 ## in which @math{e(t)} is @math{N(0, h(t))}, given a time-series vector
-## @var{y} up to time @math{t-1} and a matrix of (ordinary) regressors
-## @var{x} up to @math{t}.  The order of the regression of the residual
-## variance is specified by @var{p}.
+## @var{y} up to time @math{t-1} and a matrix of (ordinary) regressors @var{x}
+## up to @math{t}.  The order of the regression of the residual variance is
+## specified by @var{p}.
 ##
-## If invoked as @code{arch_fit (@var{y}, @var{k}, @var{p})} with a
-## positive integer @var{k}, fit an ARCH(@var{k}, @var{p}) process,
-## i.e., do the above with the @math{t}-th row of @var{x} given by
+## If invoked as @code{arch_fit (@var{y}, @var{k}, @var{p})} with a positive
+## integer @var{k}, fit an ARCH(@var{k}, @var{p}) process, i.e., do the above
+## with the @math{t}-th row of @var{x} given by
 ##
 ## @example
 ## [1, y(t-1), @dots{}, y(t-k)]
 ## @end example
 ##
 ## Optionally, one can specify the number of iterations @var{iter}, the
-## updating factor @var{gamma}, and initial values @math{a0} and
-## @math{b0} for the scoring algorithm.
+## updating factor @var{gamma}, and initial values @math{a0} and @math{b0}
+## for the scoring algorithm.
 ## @end deftypefn
 
 ## Author: KH <Kurt.Hornik@wu-wien.ac.at>
--- a/scripts/signal/arch_rnd.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/signal/arch_rnd.m	Sun May 10 21:37:19 2015 -0700
@@ -18,9 +18,10 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} arch_rnd (@var{a}, @var{b}, @var{t})
-## Simulate an ARCH sequence of length @var{t} with AR
-## coefficients @var{b} and CH coefficients @var{a}.  I.e., the result
-## @math{y(t)} follows the model
+## Simulate an ARCH sequence of length @var{t} with AR coefficients @var{b} and
+## CH coefficients @var{a}.
+##
+## The result @math{y(t)} follows the model
 ## @c Set example in small font to prevent overfull line
 ##
 ## @smallexample
--- a/scripts/signal/arma_rnd.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/signal/arma_rnd.m	Sun May 10 21:37:19 2015 -0700
@@ -18,7 +18,9 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} arma_rnd (@var{a}, @var{b}, @var{v}, @var{t}, @var{n})
-## Return a simulation of the ARMA model
+## Return a simulation of the ARMA model.
+##
+## The ARMA model is defined by
 ##
 ## @example
 ## @group
@@ -28,14 +30,14 @@
 ## @end example
 ##
 ## @noindent
-## in which @var{k} is the length of vector @var{a}, @var{l} is the
-## length of vector @var{b} and @var{e} is Gaussian white noise with
-## variance @var{v}.  The function returns a vector of length @var{t}.
+## in which @var{k} is the length of vector @var{a}, @var{l} is the length of
+## vector @var{b} and @var{e} is Gaussian white noise with variance @var{v}. 
+## The function returns a vector of length @var{t}.
 ##
-## The optional parameter @var{n} gives the number of dummy
-## @var{x}(@var{i}) used for initialization, i.e., a sequence of length
-## @var{t}+@var{n} is generated and @var{x}(@var{n}+1:@var{t}+@var{n})
-## is returned.  If @var{n} is omitted, @var{n} = 100 is used.
+## The optional parameter @var{n} gives the number of dummy @var{x}(@var{i})
+## used for initialization, i.e., a sequence of length @var{t}+@var{n} is
+## generated and @var{x}(@var{n}+1:@var{t}+@var{n}) is returned.  If @var{n}
+## is omitted, @var{n} = 100 is used.
 ## @end deftypefn
 
 ## Author: FL <Friedrich.Leisch@ci.tuwien.ac.at>
--- a/scripts/signal/autoreg_matrix.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/signal/autoreg_matrix.m	Sun May 10 21:37:19 2015 -0700
@@ -18,12 +18,14 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} autoreg_matrix (@var{y}, @var{k})
-## Given a time series (vector) @var{y}, return a matrix with ones in the
-## first column and the first @var{k} lagged values of @var{y} in the
-## other columns.  I.e., for @var{t} > @var{k}, @code{[1,
-## @var{y}(@var{t}-1), @dots{}, @var{y}(@var{t}-@var{k})]} is the t-th row
-## of the result.  The resulting matrix may be used as a regressor matrix
-## in autoregressions.
+## Given a time series (vector) @var{y}, return a matrix with ones in the first
+## column and the first @var{k} lagged values of @var{y} in the other columns.
+##
+## In other words, for @var{t} > @var{k},
+## @code{[1, @var{y}(@var{t}-1), @dots{}, @var{y}(@var{t}-@var{k})]} is the
+## t-th row of the result.
+##
+## The resulting matrix may be used as a regressor matrix in autoregressions.
 ## @end deftypefn
 
 ## Author: KH <Kurt.Hornik@wu-wien.ac.at>
--- a/scripts/signal/bartlett.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/signal/bartlett.m	Sun May 10 21:37:19 2015 -0700
@@ -18,10 +18,10 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} bartlett (@var{m})
-## Return the filter coefficients of a Bartlett (triangular) window of
-## length @var{m}.
+## Return the filter coefficients of a Bartlett (triangular) window of length
+## @var{m}.
 ##
-## For a definition of the Bartlett window, see e.g.,
+## For a definition of the Bartlett window see, e.g.,
 ## @nospell{A.V. Oppenheim & R. W. Schafer},
 ## @cite{Discrete-Time Signal Processing}.
 ## @end deftypefn
--- a/scripts/signal/blackman.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/signal/blackman.m	Sun May 10 21:37:19 2015 -0700
@@ -27,7 +27,7 @@
 ## @var{m}+1 with the last coefficient removed.  The optional argument
 ## @qcode{"symmetric"} is equivalent to not specifying a second argument.
 ##
-## For a definition of the Blackman window, see e.g.,
+## For a definition of the Blackman window, see, e.g.,
 ## @nospell{A.V. Oppenheim & R. W. Schafer},
 ## @cite{Discrete-Time Signal Processing}.
 ## @end deftypefn
--- a/scripts/signal/detrend.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/signal/detrend.m	Sun May 10 21:37:19 2015 -0700
@@ -24,13 +24,12 @@
 ## If @var{x} is a matrix, @code{detrend (@var{x}, @var{p})} does the same
 ## for each column in @var{x}.
 ##
-## The second argument is optional.  If it is not specified, a value of 1
-## is assumed.  This corresponds to removing a linear trend.
+## The second argument @var{p} is optional.  If it is not specified, a value of
+## 1 is assumed.  This corresponds to removing a linear trend.
 ##
 ## The order of the polynomial can also be given as a string, in which case
-## @var{p} must be either @qcode{"constant"} (corresponds to
-## @code{@var{p}=0}) or
-## @qcode{"linear"} (corresponds to @code{@var{p}=1}).
+## @var{p} must be either @qcode{"constant"} (corresponds to @code{@var{p}=0})
+## or @qcode{"linear"} (corresponds to @code{@var{p}=1}).
 ## @seealso{polyfit}
 ## @end deftypefn
 
--- a/scripts/signal/diffpara.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/signal/diffpara.m	Sun May 10 21:37:19 2015 -0700
@@ -23,14 +23,15 @@
 ##
 ## The frequencies from @math{[2*pi*a/t, 2*pi*b/T]} are used for the
 ## estimation.  If @var{b} is omitted, the interval
-## @math{[2*pi/T, 2*pi*a/T]} is used.  If both @var{b} and @var{a} are
-## omitted then @math{a = 0.5 * sqrt (T)} and @math{b = 1.5 * sqrt (T)}
-## is used, where @math{T} is the sample size.  If @var{x} is a matrix,
-## the differencing parameter of each column is estimated.
+## @math{[2*pi/T, 2*pi*a/T]} is used.  If both @var{b} and @var{a} are omitted
+## then @math{a = 0.5 * sqrt (T)} and @math{b = 1.5 * sqrt (T)} is used, where
+## @math{T} is the sample size.  If @var{x} is a matrix, the differencing
+## parameter of each column is estimated.
 ##
-## The estimators for all frequencies in the intervals
-## described above is returned in @var{dd}.  The value of @var{d} is
-## simply the mean of @var{dd}.
+## The estimators for all frequencies in the intervals described above is
+## returned in @var{dd}.
+##
+## The value of @var{d} is simply the mean of @var{dd}.
 ##
 ## Reference: @nospell{P.J. Brockwell & R.A. Davis}. @cite{Time Series:
 ## Theory and Methods}. Springer 1987.
--- a/scripts/signal/durbinlevinson.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/signal/durbinlevinson.m	Sun May 10 21:37:19 2015 -0700
@@ -20,13 +20,13 @@
 ## @deftypefn {Function File} {} durbinlevinson (@var{c}, @var{oldphi}, @var{oldv})
 ## Perform one step of the @nospell{Durbin-Levinson} algorithm.
 ##
-## The vector @var{c} specifies the autocovariances @code{[gamma_0, @dots{},
-## gamma_t]} from lag 0 to @var{t}, @var{oldphi} specifies the
-## coefficients based on @var{c}(@var{t}-1) and @var{oldv} specifies the
-## corresponding error.
+## The vector @var{c} specifies the autocovariances
+## @code{[gamma_0, @dots{}, gamma_t]} from lag 0 to @var{t}, @var{oldphi}
+## specifies the coefficients based on @var{c}(@var{t}-1) and @var{oldv}
+## specifies the corresponding error.
 ##
-## If @var{oldphi} and @var{oldv} are omitted, all steps from 1 to
-## @var{t} of the algorithm are performed.
+## If @var{oldphi} and @var{oldv} are omitted, all steps from 1 to @var{t} of
+## the algorithm are performed.
 ## @end deftypefn
 
 ## Author: FL <Friedrich.Leisch@ci.tuwien.ac.at>
--- a/scripts/signal/fftconv.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/signal/fftconv.m	Sun May 10 21:37:19 2015 -0700
@@ -22,9 +22,9 @@
 ## Convolve two vectors using the FFT for computation.
 ##
 ## @code{c = fftconv (@var{x}, @var{y})} returns a vector of length equal to
-## @code{length (@var{x}) + length (@var{y}) - 1}.
-## If @var{x} and @var{y} are the coefficient vectors of two polynomials, the
-## returned value is the coefficient vector of the product polynomial.
+## @code{length (@var{x}) + length (@var{y}) - 1}.  If @var{x} and @var{y}
+## are the coefficient vectors of two polynomials, the returned value is the
+## coefficient vector of the product polynomial.
 ##
 ## The computation uses the FFT by calling the function @code{fftfilt}.  If
 ## the optional argument @var{n} is specified, an N-point FFT is used.
--- a/scripts/signal/fftfilt.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/signal/fftfilt.m	Sun May 10 21:37:19 2015 -0700
@@ -19,18 +19,16 @@
 ## -*- texinfo -*-
 ## @deftypefn  {Function File} {} fftfilt (@var{b}, @var{x})
 ## @deftypefnx {Function File} {} fftfilt (@var{b}, @var{x}, @var{n})
+## Filter @var{x} with the FIR filter @var{b} using the FFT.
 ##
-## With two arguments, @code{fftfilt} filters @var{x} with the FIR filter
-## @var{b} using the FFT.
+## If @var{x} is a matrix, filter each column of the matrix.
 ##
 ## Given the optional third argument, @var{n}, @code{fftfilt} uses the
-## overlap-add method to filter @var{x} with @var{b} using an N-point
-## FFT@.  The FFT size must be an even power of 2 and must be greater than
-## or equal to the length of @var{b}.  If the specified @var{n} does not
-## meet these criteria, it is automatically adjusted to the nearest value
-## that does.
+## overlap-add method to filter @var{x} with @var{b} using an N-point FFT@.
+## The FFT size must be an even power of 2 and must be greater than or equal to
+## the length of @var{b}.  If the specified @var{n} does not meet these
+## criteria, it is automatically adjusted to the nearest value that does.
 ##
-## If @var{x} is a matrix, filter each column of the matrix.
 ## @seealso{filter, filter2}
 ## @end deftypefn
 
--- a/scripts/signal/fftshift.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/signal/fftshift.m	Sun May 10 21:37:19 2015 -0700
@@ -19,12 +19,12 @@
 ## -*- texinfo -*-
 ## @deftypefn  {Function File} {} fftshift (@var{x})
 ## @deftypefnx {Function File} {} fftshift (@var{x}, @var{dim})
-## Perform a shift of the vector @var{x}, for use with the @code{fft}
-## and @code{ifft} functions, in order the move the frequency 0 to the
-## center of the vector or matrix.
+## Perform a shift of the vector @var{x}, for use with the @code{fft} and
+## @code{ifft} functions, in order the move the frequency 0 to the center of
+## the vector or matrix.
 ##
-## If @var{x} is a vector of @math{N} elements corresponding to @math{N}
-## time samples spaced by @nospell{@math{dt}}, then
+## If @var{x} is a vector of @math{N} elements corresponding to @math{N} time
+## samples spaced by @nospell{@math{dt}}, then
 ## @code{fftshift (fft (@var{x}))} corresponds to frequencies
 ##
 ## @example
@@ -34,11 +34,12 @@
 ## @noindent
 ## where @nospell{@math{df} = 1 / @math{dt}}.
 ##
-## If @var{x} is a matrix, the same holds for rows and columns.  If
-## @var{x} is an array, then the same holds along each dimension.
+## If @var{x} is a matrix, the same holds for rows and columns.  If @var{x}
+## is an array, then the same holds along each dimension.
 ##
-## The optional @var{dim} argument can be used to limit the dimension
-## along which the permutation occurs.
+## The optional @var{dim} argument can be used to limit the dimension along
+## which the permutation occurs.
+## @seealso{ifftshift}
 ## @end deftypefn
 
 ## Author: Vincent Cautaerts <vincent@comf5.comm.eng.osaka-u.ac.jp>
--- a/scripts/signal/filter2.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/signal/filter2.m	Sun May 10 21:37:19 2015 -0700
@@ -19,9 +19,10 @@
 ## -*- texinfo -*-
 ## @deftypefn  {Function File} {@var{y} =} filter2 (@var{b}, @var{x})
 ## @deftypefnx {Function File} {@var{y} =} filter2 (@var{b}, @var{x}, @var{shape})
-## Apply the 2-D FIR filter @var{b} to @var{x}.  If the argument
-## @var{shape} is specified, return an array of the desired shape.
-## Possible values are:
+## Apply the 2-D FIR filter @var{b} to @var{x}.
+##
+## If the argument @var{shape} is specified, return an array of the desired
+## shape.  Possible values are:
 ##
 ## @table @asis
 ## @item @qcode{"full"}
@@ -34,8 +35,8 @@
 ## trim @var{x} after filtering so edge effects are no included.
 ## @end table
 ##
-## Note this is just a variation on convolution, with the parameters
-## reversed and @var{b} rotated 180 degrees.
+## Note this is just a variation on convolution, with the parameters reversed
+## and @var{b} rotated 180 degrees.
 ## @seealso{conv2}
 ## @end deftypefn
 
--- a/scripts/signal/freqz.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/signal/freqz.m	Sun May 10 21:37:19 2015 -0700
@@ -27,8 +27,9 @@
 ##
 ## Return the complex frequency response @var{h} of the rational IIR filter
 ## whose numerator and denominator coefficients are @var{b} and @var{a},
-## respectively.  The response is evaluated at @var{n} angular frequencies
-## between 0 and
+## respectively.
+##
+## The response is evaluated at @var{n} angular frequencies between 0 and
 ## @ifnottex
 ## 2*pi.
 ## @end ifnottex
@@ -42,9 +43,8 @@
 ## If @var{a} is omitted, the denominator is assumed to be 1 (this
 ## corresponds to a simple FIR filter).
 ##
-## If @var{n} is omitted, a value of 512 is assumed.
-## For fastest computation, @var{n} should factor into a small number of
-## small primes.
+## If @var{n} is omitted, a value of 512 is assumed.  For fastest computation,
+## @var{n} should factor into a small number of small primes.
 ##
 ## If the fourth argument, @qcode{"whole"}, is omitted the response is
 ## evaluated at frequencies between 0 and
--- a/scripts/signal/hamming.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/signal/hamming.m	Sun May 10 21:37:19 2015 -0700
@@ -27,7 +27,7 @@
 ## @var{m}+1 with the last coefficient removed.  The optional argument
 ## @qcode{"symmetric"} is equivalent to not specifying a second argument.
 ##
-## For a definition of the Hamming window, see e.g.,
+## For a definition of the Hamming window see, e.g.,
 ## @nospell{A.V. Oppenheim & R. W. Schafer},
 ## @cite{Discrete-Time Signal Processing}.
 ## @end deftypefn
--- a/scripts/signal/hanning.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/signal/hanning.m	Sun May 10 21:37:19 2015 -0700
@@ -27,7 +27,7 @@
 ## @var{m}+1 with the last coefficient removed.  The optional argument
 ## @qcode{"symmetric"} is equivalent to not specifying a second argument.
 ##
-## For a definition of the Hanning window, see e.g.,
+## For a definition of the Hanning window see, e.g.,
 ## @nospell{A.V. Oppenheim & R. W. Schafer},
 ## @cite{Discrete-Time Signal Processing}.
 ## @end deftypefn
--- a/scripts/signal/hurst.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/signal/hurst.m	Sun May 10 21:37:19 2015 -0700
@@ -19,8 +19,9 @@
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} hurst (@var{x})
 ## Estimate the Hurst parameter of sample @var{x} via the rescaled range
-## statistic.  If @var{x} is a matrix, the parameter is estimated for
-## every single column.
+## statistic.
+##
+## If @var{x} is a matrix, the parameter is estimated for every column.
 ## @end deftypefn
 
 ## Author: FL <Friedrich.Leisch@ci.tuwien.ac.at>
--- a/scripts/signal/ifftshift.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/signal/ifftshift.m	Sun May 10 21:37:19 2015 -0700
@@ -19,9 +19,11 @@
 ## -*- texinfo -*-
 ## @deftypefn  {Function File} {} ifftshift (@var{x})
 ## @deftypefnx {Function File} {} ifftshift (@var{x}, @var{dim})
-## Undo the action of the @code{fftshift} function.  For even length
-## @var{x}, @code{fftshift} is its own inverse, but odd lengths differ
-## slightly.
+## Undo the action of the @code{fftshift} function.
+##
+## For even length @var{x}, @code{fftshift} is its own inverse, but odd lengths
+## differ slightly.
+## @seealso{fftshift}
 ## @end deftypefn
 
 ## Author: Vincent Cautaerts <vincent@comf5.comm.eng.osaka-u.ac.jp>
--- a/scripts/signal/periodogram.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/signal/periodogram.m	Sun May 10 21:37:19 2015 -0700
@@ -25,7 +25,6 @@
 ## @deftypefnx {Function File} {[@var{Pxx}, @var{f}] =} periodogram (@var{x}, @var{win}, @var{nfft}, @var{Fs})
 ## @deftypefnx {Function File} {[@var{Pxx}, @var{f}] =} periodogram (@dots{}, "@var{range}")
 ## @deftypefnx {Function File} {} periodogram (@dots{})
-##
 ## Return the periodogram (Power Spectral Density) of @var{x}.
 ##
 ## The possible inputs are:
--- a/scripts/signal/sinc.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/signal/sinc.m	Sun May 10 21:37:19 2015 -0700
@@ -18,6 +18,8 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} sinc (@var{x})
+## Compute the sinc function.
+##
 ## Return
 ## @tex
 ## $ \sin (\pi x)/(\pi x)$.
--- a/scripts/signal/sinetone.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/signal/sinetone.m	Sun May 10 21:37:19 2015 -0700
@@ -18,11 +18,13 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} sinetone (@var{freq}, @var{rate}, @var{sec}, @var{ampl})
-## Return a sinetone of frequency @var{freq} with length of @var{sec}
+## Return a sinetone of frequency @var{freq} with a length of @var{sec}
 ## seconds at sampling rate @var{rate} and with amplitude @var{ampl}.
+##
 ## The arguments @var{freq} and @var{ampl} may be vectors of common size.
 ##
-## Defaults are @var{rate} = 8000, @var{sec} = 1 and @var{ampl} = 64.
+## The defaults are @var{rate} = 8000, @var{sec} = 1, and @var{ampl} = 64.
+## @seealso{sinewave}
 ## @end deftypefn
 
 ## Author: FL <Friedrich.Leisch@ci.tuwien.ac.at>
--- a/scripts/signal/sinewave.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/signal/sinewave.m	Sun May 10 21:37:19 2015 -0700
@@ -21,8 +21,9 @@
 ## Return an @var{m}-element vector with @var{i}-th element given by
 ## @code{sin (2 * pi * (@var{i}+@var{d}-1) / @var{n})}.
 ##
-## The default value for @var{d} is 0 and the default value for @var{n}
-## is @var{m}.
+## The default value for @var{d} is 0 and the default value for @var{n} is
+## @var{m}.
+## @seealso{sinetone}
 ## @end deftypefn
 
 ## Author: AW <Andreas.Weingessel@ci.tuwien.ac.at>
--- a/scripts/signal/spectral_adf.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/signal/spectral_adf.m	Sun May 10 21:37:19 2015 -0700
@@ -20,15 +20,15 @@
 ## @deftypefn  {Function File} {} spectral_adf (@var{c})
 ## @deftypefnx {Function File} {} spectral_adf (@var{c}, @var{win})
 ## @deftypefnx {Function File} {} spectral_adf (@var{c}, @var{win}, @var{b})
-## Return the spectral density estimator given a vector of
-## autocovariances @var{c}, window name @var{win}, and bandwidth,
-## @var{b}.
+## Return the spectral density estimator given a vector of autocovariances
+## @var{c}, window name @var{win}, and bandwidth, @var{b}.
 ##
 ## The window name, e.g., @qcode{"triangle"} or @qcode{"rectangle"} is
 ## used to search for a function called @code{@var{win}_lw}.
 ##
-## If @var{win} is omitted, the triangle window is used.  If @var{b} is
-## omitted, @code{1 / sqrt (length (@var{x}))} is used.
+## If @var{win} is omitted, the triangle window is used.
+##
+## If @var{b} is omitted, @code{1 / sqrt (length (@var{x}))} is used.
 ## @seealso{spectral_xdf}
 ## @end deftypefn
 
--- a/scripts/signal/spectral_xdf.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/signal/spectral_xdf.m	Sun May 10 21:37:19 2015 -0700
@@ -20,14 +20,15 @@
 ## @deftypefn  {Function File} {} spectral_xdf (@var{x})
 ## @deftypefnx {Function File} {} spectral_xdf (@var{x}, @var{win})
 ## @deftypefnx {Function File} {} spectral_xdf (@var{x}, @var{win}, @var{b})
-## Return the spectral density estimator given a data vector @var{x},
-## window name @var{win}, and bandwidth, @var{b}.
+## Return the spectral density estimator given a data vector @var{x}, window
+## name @var{win}, and bandwidth, @var{b}.
 ##
-## The window name, e.g., @qcode{"triangle"} or @qcode{"rectangle"} is
-## used to search for a function called @code{@var{win}_sw}.
+## The window name, e.g., @qcode{"triangle"} or @qcode{"rectangle"} is used to
+## search for a function called @code{@var{win}_sw}.
 ##
-## If @var{win} is omitted, the triangle window is used.  If @var{b} is
-## omitted, @code{1 / sqrt (length (@var{x}))} is used.
+## If @var{win} is omitted, the triangle window is used.
+##
+## If @var{b} is omitted, @code{1 / sqrt (length (@var{x}))} is used.
 ## @seealso{spectral_adf}
 ## @end deftypefn
 
--- a/scripts/signal/spencer.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/signal/spencer.m	Sun May 10 21:37:19 2015 -0700
@@ -18,8 +18,7 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} spencer (@var{x})
-## Return Spencer's 15 point moving average of each column of
-## @var{x}.
+## Return Spencer's 15 point moving average of each column of @var{x}.
 ## @end deftypefn
 
 ## Author: FL <Friedrich.Leisch@ci.tuwien.ac.at>
--- a/scripts/signal/stft.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/signal/stft.m	Sun May 10 21:37:19 2015 -0700
@@ -47,14 +47,13 @@
 ## @var{win_size} = 80, @var{inc} = 24, @var{num_coef} = 64, and
 ## @var{win_type} = 1.
 ##
-## @code{@var{y} = stft (@var{x}, @dots{})} returns the absolute values
-## of the Fourier coefficients according to the @var{num_coef} positive
-## frequencies.
+## @code{@var{y} = stft (@var{x}, @dots{})} returns the absolute values of the
+## Fourier coefficients according to the @var{num_coef} positive frequencies.
 ##
-## @code{[@var{y}, @var{c}] = stft (@code{x}, @dots{})} returns the
-## entire STFT-matrix @var{y} and a 3-element vector @var{c} containing
-## the window size, increment, and window type, which is needed by the
-## @code{synthesis} function.
+## @code{[@var{y}, @var{c}] = stft (@code{x}, @dots{})} returns the entire
+## STFT-matrix @var{y} and a 3-element vector @var{c} containing the window
+## size, increment, and window type, which is needed by the @code{synthesis}
+## function.
 ## @seealso{synthesis}
 ## @end deftypefn
 
--- a/scripts/signal/synthesis.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/signal/synthesis.m	Sun May 10 21:37:19 2015 -0700
@@ -19,8 +19,7 @@
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {@var{x} =} synthesis (@var{y}, @var{c})
 ## Compute a signal from its short-time Fourier transform @var{y} and a
-## 3-element vector @var{c} specifying window size, increment, and
-## window type.
+## 3-element vector @var{c} specifying window size, increment, and window type.
 ##
 ## The values @var{y} and @var{c} can be derived by
 ##
--- a/scripts/signal/unwrap.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/signal/unwrap.m	Sun May 10 21:37:19 2015 -0700
@@ -21,8 +21,10 @@
 ## @deftypefnx {Function File} {@var{b} =} unwrap (@var{x}, @var{tol})
 ## @deftypefnx {Function File} {@var{b} =} unwrap (@var{x}, @var{tol}, @var{dim})
 ##
-## Unwrap radian phases by adding multiples of 2*pi as appropriate to
-## remove jumps greater than @var{tol}.  @var{tol} defaults to pi.
+## Unwrap radian phases by adding multiples of 2*pi as appropriate to remove
+## jumps greater than @var{tol}.
+##
+## @var{tol} defaults to pi.
 ##
 ## Unwrap will work along the dimension @var{dim}.  If @var{dim}
 ## is unspecified it defaults to the first non-singleton dimension.
--- a/scripts/signal/yulewalker.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/signal/yulewalker.m	Sun May 10 21:37:19 2015 -0700
@@ -18,11 +18,11 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {[@var{a}, @var{v}] =} yulewalker (@var{c})
-## Fit an AR (p)-model with Yule-Walker estimates given a vector @var{c}
-## of autocovariances @code{[gamma_0, @dots{}, gamma_p]}.
+## Fit an AR (p)-model with Yule-Walker estimates given a vector @var{c} of
+## autocovariances @code{[gamma_0, @dots{}, gamma_p]}.
 ##
-## Returns the AR coefficients, @var{a}, and the variance of white
-## noise, @var{v}.
+## Returns the AR coefficients, @var{a}, and the variance of white noise,
+## @var{v}.
 ## @end deftypefn
 
 ## Author: FL <Friedrich.Leisch@ci.tuwien.ac.at>
--- a/scripts/sparse/bicg.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/sparse/bicg.m	Sun May 10 21:37:19 2015 -0700
@@ -23,26 +23,25 @@
 ## Solve @code{A x = b} using the Bi-conjugate gradient iterative method.
 ##
 ## @itemize @minus
-## @item @var{rtol} is the relative tolerance, if not given
-## or set to [] the default value 1e-6 is used.
+## @item @var{rtol} is the relative tolerance, if not given or set to [] the
+## default value 1e-6 is used.
 ##
-## @item @var{maxit} the maximum number of outer iterations,
-## if not given or set to [] the default value
-## @code{min (20, numel (b))} is used.
+## @item @var{maxit} the maximum number of outer iterations, if not given or
+## set to [] the default value @code{min (20, numel (b))} is used.
 ##
-## @item @var{x0} the initial guess, if not given or set to []
-## the default value @code{zeros (size (b))} is used.
+## @item @var{x0} the initial guess, if not given or set to [] the default
+## value @code{zeros (size (b))} is used.
 ## @end itemize
 ##
-## @var{A} can be passed as a matrix or as a function handle or
-## inline function @code{f} such that @code{f(x, "notransp") = A*x}
-## and @code{f(x, "transp") = A'*x}.
+## @var{A} can be passed as a matrix or as a function handle or inline function
+## @code{f} such that @code{f(x, "notransp") = A*x} and
+## @code{f(x, "transp") = A'*x}.
 ##
-## The preconditioner @var{P} is given as @code{P = M1 * M2}.
-## Both @var{M1} and @var{M2} can be passed as a matrix or as
-## a function handle or inline function @code{g} such that
-## @code{g(x, "notransp") = M1 \ x} or @code{g(x, "notransp") = M2 \ x} and
-## @code{g(x, "transp") = M1' \ x} or @code{g(x, "transp") = M2' \ x}.
+## The preconditioner @var{P} is given as @code{P = M1 * M2}.  Both @var{M1}
+## and @var{M2} can be passed as a matrix or as a function handle or inline
+## function @code{g} such that @code{g(x, "notransp") = M1 \ x} or
+## @code{g(x, "notransp") = M2 \ x} and @code{g(x, "transp") = M1' \ x} or
+## @code{g(x, "transp") = M2' \ x}.
 ##
 ## If called with more than one output parameter
 ##
--- a/scripts/sparse/bicgstab.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/sparse/bicgstab.m	Sun May 10 21:37:19 2015 -0700
@@ -25,24 +25,22 @@
 ## method.
 ##
 ## @itemize @minus
-## @item @var{rtol} is the relative tolerance, if not given or set to
-## [] the default value 1e-6 is used.
+## @item @var{rtol} is the relative tolerance, if not given or set to [] the
+## default value 1e-6 is used.
 ##
-## @item @var{maxit} the maximum number of outer iterations, if not
-## given or set to [] the default value @code{min (20, numel (b))} is
-## used.
+## @item @var{maxit} the maximum number of outer iterations, if not given or
+## set to [] the default value @code{min (20, numel (b))} is used.
 ##
-## @item @var{x0} the initial guess, if not given or set to [] the
-## default value @code{zeros (size (b))} is used.
+## @item @var{x0} the initial guess, if not given or set to [] the default
+## value @code{zeros (size (b))} is used.
 ## @end itemize
 ##
-## @var{A} can be passed as a matrix or as a function handle or
-## inline function @code{f} such that @code{f(x) = A*x}.
+## @var{A} can be passed as a matrix or as a function handle or inline
+## function @code{f} such that @code{f(x) = A*x}.
 ##
-## The preconditioner @var{P} is given as @code{P = M1 * M2}.
-## Both @var{M1} and @var{M2} can be passed as a matrix or as a function
-## handle or inline function @code{g} such that @code{g(x) = M1 \ x} or
-## @code{g(x) = M2 \ x}.
+## The preconditioner @var{P} is given as @code{P = M1 * M2}.  Both @var{M1}
+## and @var{M2} can be passed as a matrix or as a function handle or inline
+## function @code{g} such that @code{g(x) = M1 \ x} or @code{g(x) = M2 \ x}.
 ##
 ## If called with more than one output parameter
 ##
--- a/scripts/sparse/cgs.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/sparse/cgs.m	Sun May 10 21:37:19 2015 -0700
@@ -25,24 +25,22 @@
 ## Conjugate Gradients Squared method.
 ##
 ## @itemize @minus
-## @item @var{rtol} is the relative tolerance, if not given or set to []
-## the default value 1e-6 is used.
+## @item @var{rtol} is the relative tolerance, if not given or set to [] the
+## default value 1e-6 is used.
 ##
-## @item @var{maxit} the maximum number of outer iterations, if not
-## given or set to [] the default value @code{min (20, numel (b))} is
-## used.
+## @item @var{maxit} the maximum number of outer iterations, if not given or
+## set to [] the default value @code{min (20, numel (b))} is used.
 ##
-## @item @var{x0} the initial guess, if not given or set to [] the
-## default value @code{zeros (size (b))} is used.
+## @item @var{x0} the initial guess, if not given or set to [] the default
+## value @code{zeros (size (b))} is used.
 ## @end itemize
 ##
-## @var{A} can be passed as a matrix or as a function handle or
-## inline function @code{f} such that @code{f(x) = A*x}.
+## @var{A} can be passed as a matrix or as a function handle or inline
+## function @code{f} such that @code{f(x) = A*x}.
 ##
-## The preconditioner @var{P} is given as @code{P = M1 * M2}.
-## Both @var{M1} and @var{M2} can be passed as a matrix or as a function
-## handle or inline function @code{g} such that @code{g(x) = M1 \ x} or
-## @code{g(x) = M2 \ x}.
+## The preconditioner @var{P} is given as @code{P = M1 * M2}.  Both @var{M1}
+## and @var{M2} can be passed as a matrix or as a function handle or inline
+## function @code{g} such that @code{g(x) = M1 \ x} or @code{g(x) = M2 \ x}.
 ##
 ## If called with more than one output parameter
 ##
--- a/scripts/sparse/colperm.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/sparse/colperm.m	Sun May 10 21:37:19 2015 -0700
@@ -19,10 +19,12 @@
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {@var{p} =} colperm (@var{s})
 ## Return the column permutations such that the columns of
-## @code{@var{s} (:, @var{p})} are ordered in terms of increase number
-## of nonzero elements.  If @var{s} is symmetric, then @var{p} is chosen
-## such that @code{@var{s} (@var{p}, @var{p})} orders the rows and
-## columns with increasing number of nonzeros elements.
+## @code{@var{s} (:, @var{p})} are ordered in terms of increasing number of
+## nonzero elements.
+##
+## If @var{s} is symmetric, then @var{p} is chosen such that
+## @code{@var{s} (@var{p}, @var{p})} orders the rows and columns with
+## increasing number of nonzeros elements.
 ## @end deftypefn
 
 function p = colperm (s)
--- a/scripts/sparse/eigs.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/sparse/eigs.m	Sun May 10 21:37:19 2015 -0700
@@ -38,8 +38,10 @@
 ## @deftypefnx {Function File} {[@var{V}, @var{d}, @var{flag}] =} eigs (@var{A}, @dots{})
 ## @deftypefnx {Function File} {[@var{V}, @var{d}, @var{flag}] =} eigs (@var{af}, @var{n}, @dots{})
 ## Calculate a limited number of eigenvalues and eigenvectors of @var{A},
-## based on a selection criteria.  The number of eigenvalues and eigenvectors to
-## calculate is given by @var{k} and defaults to 6.
+## based on a selection criteria.
+##
+## The number of eigenvalues and eigenvectors to calculate is given by
+## @var{k} and defaults to 6.
 ##
 ## By default, @code{eigs} solve the equation
 ## @tex
@@ -147,13 +149,13 @@
 ##
 ## It is also possible to represent @var{A} by a function denoted @var{af}.
 ## @var{af} must be followed by a scalar argument @var{n} defining the length
-## of the vector argument accepted by @var{af}.  @var{af} can be
-## a function handle, an inline function, or a string.  When @var{af} is a
-## string it holds the name of the function to use.
+## of the vector argument accepted by @var{af}.  @var{af} can be a function
+## handle, an inline function, or a string.  When @var{af} is a string it
+## holds the name of the function to use.
 ##
-## @var{af} is a function of the form @code{y = af (x)}
-## where the required return value of @var{af} is determined by
-## the value of @var{sigma}.  The four possible forms are
+## @var{af} is a function of the form @code{y = af (x)} where the required
+## return value of @var{af} is determined by the value of @var{sigma}.  The
+## four possible forms are
 ##
 ## @table @code
 ## @item A * x
@@ -163,8 +165,8 @@
 ## if @var{sigma} is 0 or "sm".
 ##
 ## @item (A - sigma * I) \ x
-## for the standard eigenvalue problem, where @code{I} is the identity matrix of
-## the same size as @var{A}.
+## for the standard eigenvalue problem, where @code{I} is the identity matrix
+## of the same size as @var{A}.
 ##
 ## @item (A - sigma * B) \ x
 ## for the general eigenvalue problem.
--- a/scripts/sparse/etreeplot.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/sparse/etreeplot.m	Sun May 10 21:37:19 2015 -0700
@@ -20,9 +20,10 @@
 ## @deftypefn  {Function File} {} etreeplot (@var{A})
 ## @deftypefnx {Function File} {} etreeplot (@var{A}, @var{node_style}, @var{edge_style})
 ## Plot the elimination tree of the matrix @var{A} or
-## @tcode{@var{A}+@var{A}'} if @var{A} in not symmetric.  The optional
-## parameters @var{node_style} and @var{edge_style} define the output
-## style.
+## @tcode{@var{A}+@var{A}'} if @var{A} in not symmetric.
+##
+## The optional parameters @var{node_style} and @var{edge_style} define the
+## output style.
 ## @seealso{treeplot, gplot}
 ## @end deftypefn
 
--- a/scripts/sparse/gmres.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/sparse/gmres.m	Sun May 10 21:37:19 2015 -0700
@@ -20,16 +20,15 @@
 ## @deftypefn  {Function File} {@var{x} =} gmres (@var{A}, @var{b}, @var{m}, @var{rtol}, @var{maxit}, @var{M1}, @var{M2}, @var{x0})
 ## @deftypefnx {Function File} {@var{x} =} gmres (@var{A}, @var{b}, @var{m}, @var{rtol}, @var{maxit}, @var{P})
 ## @deftypefnx {Function File} {[@var{x}, @var{flag}, @var{relres}, @var{iter}, @var{resvec}] =} gmres (@dots{})
-## Solve @code{A x = b} using the Preconditioned GMRES iterative method
-## with restart, a.k.a. PGMRES(m).
+## Solve @code{A x = b} using the Preconditioned GMRES iterative method with
+## restart, a.k.a. PGMRES(m).
 ##
 ## @itemize @minus
 ## @item @var{rtol} is the relative tolerance,
 ## if not given or set to [] the default value 1e-6 is used.
 ##
-## @item @var{maxit} is the maximum number of outer iterations,
-## if not given or set to [] the default value
-## @code{min (10, numel (b) / restart)} is used.
+## @item @var{maxit} is the maximum number of outer iterations, if not given or
+## set to [] the default value @code{min (10, numel (b) / restart)} is used.
 ##
 ## @item @var{x0} is the initial guess,
 ## if not given or set to [] the default value @code{zeros (size (b))} is used.
@@ -38,12 +37,12 @@
 ## if not given or set to [] the default value @code{numel (b)} is used.
 ## @end itemize
 ##
-## Argument @var{A} can be passed as a matrix, function handle, or
-## inline function @code{f} such that @code{f(x) = A*x}.
+## Argument @var{A} can be passed as a matrix, function handle, or inline
+## function @code{f} such that @code{f(x) = A*x}.
 ##
-## The preconditioner @var{P} is given as @code{P = M1 * M2}.
-## Both @var{M1} and @var{M2} can be passed as a matrix, function handle, or
-## inline function @code{g} such that @code{g(x) = M1\x} or @code{g(x) = M2\x}.
+## The preconditioner @var{P} is given as @code{P = M1 * M2}.  Both @var{M1}
+## and @var{M2} can be passed as a matrix, function handle, or inline function
+## @code{g} such that @code{g(x) = M1\x} or @code{g(x) = M2\x}.
 ##
 ## Besides the vector @var{x}, additional outputs are:
 ##
--- a/scripts/sparse/gplot.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/sparse/gplot.m	Sun May 10 21:37:19 2015 -0700
@@ -20,15 +20,14 @@
 ## @deftypefn  {Function File} {} gplot (@var{A}, @var{xy})
 ## @deftypefnx {Function File} {} gplot (@var{A}, @var{xy}, @var{line_style})
 ## @deftypefnx {Function File} {[@var{x}, @var{y}] =} gplot (@var{A}, @var{xy})
-## Plot a graph defined by @var{A} and @var{xy} in the graph theory
-## sense.  @var{A} is the adjacency matrix of the array to be plotted
-## and @var{xy} is an @var{n}-by-2 matrix containing the coordinates of
-## the nodes of the graph.
+## Plot a graph defined by @var{A} and @var{xy} in the graph theory sense.
 ##
-## The optional parameter @var{line_style} defines the output style for
-## the plot.  Called with no output arguments the graph is plotted
-## directly.  Otherwise, return the coordinates of the plot in @var{x}
-## and @var{y}.
+## @var{A} is the adjacency matrix of the array to be plotted and @var{xy} is
+## an @var{n}-by-2 matrix containing the coordinates of the nodes of the graph.
+##
+## The optional parameter @var{line_style} defines the output style for the
+## plot.  Called with no output arguments the graph is plotted directly. 
+## Otherwise, return the coordinates of the plot in @var{x} and @var{y}.
 ## @seealso{treeplot, etreeplot, spy}
 ## @end deftypefn
 
--- a/scripts/sparse/ichol.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/sparse/ichol.m	Sun May 10 21:37:19 2015 -0700
@@ -81,12 +81,12 @@
 ##
 ## @table @asis
 ## @item @qcode{"lower"} (default)
-## Use only the lower triangle of @var{A} and return a lower triangular
-## factor @var{L} such that @tcode{L*L'} approximates @var{A}.
+## Use only the lower triangle of @var{A} and return a lower triangular factor
+## @var{L} such that @tcode{L*L'} approximates @var{A}.
 ##
 ## @item @qcode{"upper"}
-## Use only the upper triangle of @var{A} and return an upper triangular
-## factor @var{U} such that @code{U'*U} approximates @var{A}.
+## Use only the upper triangle of @var{A} and return an upper triangular factor
+## @var{U} such that @code{U'*U} approximates @var{A}.
 ## @end table
 ## @end table
 ##
--- a/scripts/sparse/ilu.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/sparse/ilu.m	Sun May 10 21:37:19 2015 -0700
@@ -134,8 +134,8 @@
 ## @end group
 ## @end example
 ##
-## This shows that @var{A} has 7,840 nonzeros, the complete LU factorization has
-## 126,478 nonzeros, and the incomplete LU factorization, with 0 level of
+## This shows that @var{A} has 7,840 nonzeros, the complete LU factorization
+## has 126,478 nonzeros, and the incomplete LU factorization, with 0 level of
 ## fill-in, has 7,840 nonzeros, the same amount as @var{A}.  Taken from:
 ## http://www.mathworks.com/help/matlab/ref/ilu.html
 ##
--- a/scripts/sparse/pcg.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/sparse/pcg.m	Sun May 10 21:37:19 2015 -0700
@@ -21,8 +21,9 @@
 ## @deftypefnx {Function File} {[@var{x}, @var{flag}, @var{relres}, @var{iter}, @var{resvec}, @var{eigest}] =} pcg (@dots{})
 ##
 ## Solve the linear system of equations @w{@code{@var{A} * @var{x} = @var{b}}}
-## by means of the Preconditioned Conjugate Gradient iterative method.  The
-## input arguments are
+## by means of the Preconditioned Conjugate Gradient iterative method.
+##
+## The input arguments are
 ##
 ## @itemize
 ## @item
@@ -52,14 +53,13 @@
 ## the iteration is (theoretically) equivalent to solving by @code{pcg}
 ## @w{@code{@var{P} * @var{x} = @var{m} \ @var{b}}}, with
 ## @w{@code{@var{P} = @var{m} \ @var{A}}}.
-## Note that a proper choice of the preconditioner may dramatically
-## improve the overall performance of the method.  Instead of matrices
-## @var{m1} and @var{m2}, the user may pass two functions which return
-## the results of applying the inverse of @var{m1} and @var{m2} to
-## a vector (usually this is the preferred way of using the preconditioner).
-## If @var{m1} is omitted or empty @code{[]} then no preconditioning is
-## applied.  If @var{m2} is omitted, @var{m} = @var{m1} will be used as
-## a preconditioner.
+## Note that a proper choice of the preconditioner may dramatically improve
+## the overall performance of the method.  Instead of matrices @var{m1} and
+## @var{m2}, the user may pass two functions which return the results of
+## applying the inverse of @var{m1} and @var{m2} to a vector (usually this is
+## the preferred way of using the preconditioner).  If @var{m1} is omitted or
+## empty @code{[]} then no preconditioning is applied.  If @var{m2} is
+## omitted, @var{m} = @var{m1} will be used as a preconditioner.
 ##
 ## @item
 ## @var{x0} is the initial guess.  If @var{x0} is omitted or empty then the
@@ -154,16 +154,16 @@
 ## @end example
 ##
 ## @sc{Example 4:} @code{pcg} with a preconditioner: @var{l} * @var{u}.
-## Faster than @sc{Example 3} since lower and upper triangular matrices
-## are easier to invert
+## Faster than @sc{Example 3} since lower and upper triangular matrices are
+## easier to invert
 ##
 ## @example
 ## x = pcg (A, b, 1.e-6, 500, l, u)
 ## @end example
 ##
 ## @sc{Example 5:} Preconditioned iteration, with full diagnostics.  The
-## preconditioner (quite strange, because even the original matrix
-## @var{A} is trivial) is defined as a function
+## preconditioner (quite strange, because even the original matrix @var{A} is
+## trivial) is defined as a function
 ##
 ## @example
 ## @group
@@ -179,8 +179,8 @@
 ## @end group
 ## @end example
 ##
-## @sc{Example 6:} Finally, a preconditioner which depends on a
-## parameter @var{k}.
+## @sc{Example 6:} Finally, a preconditioner which depends on a parameter
+## @var{k}.
 ##
 ## @example
 ## @group
--- a/scripts/sparse/pcr.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/sparse/pcr.m	Sun May 10 21:37:19 2015 -0700
@@ -20,18 +20,19 @@
 ## @deftypefn  {Function File} {@var{x} =} pcr (@var{A}, @var{b}, @var{tol}, @var{maxit}, @var{m}, @var{x0}, @dots{})
 ## @deftypefnx {Function File} {[@var{x}, @var{flag}, @var{relres}, @var{iter}, @var{resvec}] =} pcr (@dots{})
 ##
-## Solve the linear system of equations @code{@var{A} * @var{x} = @var{b}}
-## by means of the Preconditioned Conjugate Residuals iterative
-## method.  The input arguments are
+## Solve the linear system of equations @code{@var{A} * @var{x} = @var{b}} by
+## means of the Preconditioned Conjugate Residuals iterative method.
+##
+## The input arguments are
 ##
 ## @itemize
 ## @item
-## @var{A} can be either a square (preferably sparse) matrix or a
-## function handle, inline function or string containing the name
-## of a function which computes @code{@var{A} * @var{x}}.  In principle
-## @var{A} should be symmetric and non-singular; if @code{pcr}
-## finds @var{A} to be numerically singular, you will get a warning
-## message and the @var{flag} output parameter will be set.
+## @var{A} can be either a square (preferably sparse) matrix or a function
+## handle, inline function or string containing the name of a function which
+## computes @code{@var{A} * @var{x}}.  In principle @var{A} should be
+## symmetric and non-singular; if @code{pcr} finds @var{A} to be numerically
+## singular, you will get a warning message and the @var{flag} output
+## parameter will be set.
 ##
 ## @item
 ## @var{b} is the right hand side vector.
@@ -45,30 +46,32 @@
 ## @code{@var{tol} = 1e-6} by default.
 ##
 ## @item
-## @var{maxit} is the maximum allowable number of iterations; if
-## @code{[]} is supplied for @code{maxit}, or @code{pcr} has less
-## arguments, a default value equal to 20 is used.
+## @var{maxit} is the maximum allowable number of iterations; if @code{[]} is
+## supplied for @code{maxit}, or @code{pcr} has less arguments, a default
+## value equal to 20 is used.
 ##
 ## @item
 ## @var{m} is the (left) preconditioning matrix, so that the iteration is
-## (theoretically) equivalent to solving by @code{pcr} @code{@var{P} *
-## @var{x} = @var{m} \ @var{b}}, with @code{@var{P} = @var{m} \ @var{A}}.
-## Note that a proper choice of the preconditioner may dramatically
-## improve the overall performance of the method.  Instead of matrix
-## @var{m}, the user may pass a function which returns the results of
-## applying the inverse of @var{m} to a vector (usually this is the
-## preferred way of using the preconditioner).  If @code{[]} is supplied
-## for @var{m}, or @var{m} is omitted, no preconditioning is applied.
+## (theoretically) equivalent to solving by
+## @code{pcr} @code{@var{P} * @var{x} = @var{m} \ @var{b}}, with
+## @code{@var{P} = @var{m} \ @var{A}}.  Note that a proper choice of the
+## preconditioner may dramatically improve the overall performance of the
+## method.  Instead of matrix @var{m}, the user may pass a function which
+## returns the results of applying the inverse of @var{m} to a vector
+## (usually this is the preferred way of using the preconditioner).  If
+## @code{[]} is supplied for @var{m}, or @var{m} is omitted, no
+## preconditioning is applied.
 ##
 ## @item
 ## @var{x0} is the initial guess.  If @var{x0} is empty or omitted, the
 ## function sets @var{x0} to a zero vector by default.
 ## @end itemize
 ##
-## The arguments which follow @var{x0} are treated as parameters, and
-## passed in a proper way to any of the functions (@var{A} or @var{m})
-## which are passed to @code{pcr}.  See the examples below for further
-## details.  The output arguments are
+## The arguments which follow @var{x0} are treated as parameters, and passed
+## in a proper way to any of the functions (@var{A} or @var{m}) which are
+## passed to @code{pcr}.  See the examples below for further details.
+##
+## The output arguments are
 ##
 ## @itemize
 ## @item
@@ -76,11 +79,11 @@
 ## @code{@var{A} * @var{x} = @var{b}}.
 ##
 ## @item
-## @var{flag} reports on the convergence.  @code{@var{flag} = 0} means
-## the solution converged and the tolerance criterion given by @var{tol}
-## is satisfied.  @code{@var{flag} = 1} means that the @var{maxit} limit
-## for the iteration count was reached.  @code{@var{flag} = 3} reports t
-## @code{pcr} breakdown, see [1] for details.
+## @var{flag} reports on the convergence.  @code{@var{flag} = 0} means the
+## solution converged and the tolerance criterion given by @var{tol} is
+## satisfied.  @code{@var{flag} = 1} means that the @var{maxit} limit for the
+## iteration count was reached.  @code{@var{flag} = 3} reports a @code{pcr}
+## breakdown, see [1] for details.
 ##
 ## @item
 ## @var{relres} is the ratio of the final residual to its initial value,
@@ -90,10 +93,9 @@
 ## @var{iter} is the actual number of iterations performed.
 ##
 ## @item
-## @var{resvec} describes the convergence history of the method,
-## so that @code{@var{resvec} (i)} contains the Euclidean norms of the
-## residual after the (@var{i}-1)-th iteration, @code{@var{i} =
-## 1,2, @dots{}, @var{iter}+1}.
+## @var{resvec} describes the convergence history of the method, so that
+## @code{@var{resvec} (i)} contains the Euclidean norms of the residual after
+## the (@var{i}-1)-th iteration, @code{@var{i} = 1,2, @dots{}, @var{iter}+1}.
 ## @end itemize
 ##
 ## Let us consider a trivial problem with a diagonal matrix (we exploit the
--- a/scripts/sparse/qmr.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/sparse/qmr.m	Sun May 10 21:37:19 2015 -0700
@@ -19,30 +19,29 @@
 ## @deftypefn  {Function File} {@var{x} =} qmr (@var{A}, @var{b}, @var{rtol}, @var{maxit}, @var{M1}, @var{M2}, @var{x0})
 ## @deftypefnx {Function File} {@var{x} =} qmr (@var{A}, @var{b}, @var{rtol}, @var{maxit}, @var{P})
 ## @deftypefnx {Function File} {[@var{x}, @var{flag}, @var{relres}, @var{iter}, @var{resvec}] =} qmr (@var{A}, @var{b}, @dots{})
-## Solve @code{A x = b} using the Quasi-Minimal Residual iterative
-## method (without look-ahead).
+## Solve @code{A x = b} using the Quasi-Minimal Residual iterative method
+## (without look-ahead).
 ##
 ## @itemize @minus
-## @item @var{rtol} is the relative tolerance, if not given
-## or set to [] the default value 1e-6 is used.
+## @item @var{rtol} is the relative tolerance, if not given or set to [] the
+## default value 1e-6 is used.
 ##
-## @item @var{maxit} the maximum number of outer iterations,
-## if not given or set to [] the default value
-## @code{min (20, numel (b))} is used.
+## @item @var{maxit} the maximum number of outer iterations, if not given or
+## set to [] the default value @code{min (20, numel (b))} is used.
 ##
-## @item @var{x0} the initial guess, if not given or set to []
-## the default value @code{zeros (size (b))} is used.
+## @item @var{x0} the initial guess, if not given or set to [] the default
+## value @code{zeros (size (b))} is used.
 ## @end itemize
 ##
-## @var{A} can be passed as a matrix or as a function handle or
-## inline function @code{f} such that @code{f(x, "notransp") = A*x}
-## and @code{f(x, "transp") = A'*x}.
+## @var{A} can be passed as a matrix or as a function handle or inline
+## function @code{f} such that @code{f(x, "notransp") = A*x} and
+## @code{f(x, "transp") = A'*x}.
 ##
-## The preconditioner @var{P} is given as @code{P = M1 * M2}.
-## Both @var{M1} and @var{M2} can be passed as a matrix or as
-## a function handle or inline function @code{g} such that
-## @code{g(x, "notransp") = M1 \ x} or @code{g(x, "notransp") = M2 \ x} and
-## @code{g(x, "transp") = M1' \ x} or @code{g(x, "transp") = M2' \ x}.
+## The preconditioner @var{P} is given as @code{P = M1 * M2}.  Both @var{M1}
+## and @var{M2} can be passed as a matrix or as a function handle or inline
+## function @code{g} such that @code{g(x, "notransp") = M1 \ x} or
+## @code{g(x, "notransp") = M2 \ x} and @code{g(x, "transp") = M1' \ x} or
+## @code{g(x, "transp") = M2' \ x}.
 ##
 ## If called with more than one output parameter
 ##
--- a/scripts/sparse/spaugment.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/sparse/spaugment.m	Sun May 10 21:37:19 2015 -0700
@@ -46,11 +46,11 @@
 ## @var{r} = @var{b} - @var{A} * @var{x}
 ## @end example
 ##
-## As the matrix @var{s} is symmetric indefinite it can be factorized
-## with @code{lu}, and the minimum norm solution can therefore be found
-## without the need for a @code{qr} factorization.  As the residual
-## error will be @code{zeros (@var{m}, @var{m})} for underdetermined
-## problems, and example can be
+## As the matrix @var{s} is symmetric indefinite it can be factorized with
+## @code{lu}, and the minimum norm solution can therefore be found without the
+## need for a @code{qr} factorization.  As the residual error will be
+## @code{zeros (@var{m}, @var{m})} for underdetermined problems, and example
+## can be
 ##
 ## @example
 ## @group
@@ -65,12 +65,12 @@
 ## @end group
 ## @end example
 ##
-## To find the solution of an overdetermined problem needs an estimate
-## of the residual error @var{r} and so it is more complex to formulate
-## a minimum norm solution using the @code{spaugment} function.
+## To find the solution of an overdetermined problem needs an estimate of the
+## residual error @var{r} and so it is more complex to formulate a minimum norm
+## solution using the @code{spaugment} function.
 ##
-## In general the left division operator is more stable and faster than
-## using the @code{spaugment} function.
+## In general the left division operator is more stable and faster than using
+## the @code{spaugment} function.
 ## @seealso{mldivide}
 ## @end deftypefn
 
--- a/scripts/sparse/spconvert.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/sparse/spconvert.m	Sun May 10 21:37:19 2015 -0700
@@ -21,10 +21,10 @@
 ## Convert a simple sparse matrix format easily generated by other programs
 ## into Octave's internal sparse format.
 ##
-## The input @var{m} is either a 3 or 4 column real matrix, containing
-## the row, column, real, and imaginary parts of the elements of the
-## sparse matrix.  An element with a zero real and imaginary part can
-## be used to force a particular matrix size.
+## The input @var{m} is either a 3 or 4 column real matrix, containing the
+## row, column, real, and imaginary parts of the elements of the sparse
+## matrix.  An element with a zero real and imaginary part can be used to
+## force a particular matrix size.
 ## @seealso{sparse}
 ## @end deftypefn
 
--- a/scripts/sparse/spdiags.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/sparse/spdiags.m	Sun May 10 21:37:19 2015 -0700
@@ -22,21 +22,22 @@
 ## @deftypefnx {Function File} {@var{B} =} spdiags (@var{A}, @var{d})
 ## @deftypefnx {Function File} {@var{A} =} spdiags (@var{v}, @var{d}, @var{A})
 ## @deftypefnx {Function File} {@var{A} =} spdiags (@var{v}, @var{d}, @var{m}, @var{n})
-## A generalization of the function @code{diag}.  Called with a single
-## input argument, the nonzero diagonals @var{d} of @var{A} are extracted.
-## With two arguments the diagonals to extract are given by the vector
-## @var{d}.
+## A generalization of the function @code{diag}.
+##
+## Called with a single input argument, the nonzero diagonals @var{d} of
+## @var{A} are extracted.
+##
+## With two arguments the diagonals to extract are given by the vector @var{d}.
 ##
-## The other two forms of @code{spdiags} modify the input matrix by
-## replacing the diagonals.  They use the columns of @var{v} to replace
-## the diagonals represented by the vector @var{d}.  If the sparse matrix
-## @var{A} is defined then the diagonals of this matrix are replaced.
-## Otherwise a matrix of @var{m} by @var{n} is created with the
-## diagonals given by the columns of @var{v}.
+## The other two forms of @code{spdiags} modify the input matrix by replacing
+## the diagonals.  They use the columns of @var{v} to replace the diagonals
+## represented by the vector @var{d}.  If the sparse matrix @var{A} is
+## defined then the diagonals of this matrix are replaced.  Otherwise a
+## matrix of @var{m} by @var{n} is created with the diagonals given by the
+## columns of @var{v}.
 ##
-## Negative values of @var{d} represent diagonals below the main
-## diagonal, and positive values of @var{d} diagonals above the main
-## diagonal.
+## Negative values of @var{d} represent diagonals below the main diagonal, and
+## positive values of @var{d} diagonals above the main diagonal.
 ##
 ## For example:
 ##
--- a/scripts/sparse/spfun.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/sparse/spfun.m	Sun May 10 21:37:19 2015 -0700
@@ -19,9 +19,10 @@
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {@var{y} =} spfun (@var{f}, @var{S})
 ## Compute @code{f(@var{S})} for the nonzero values of @var{S}.
-## This results in a sparse matrix with the same structure as
-## @var{S}.  The function @var{f} can be passed as a string, a
-## function handle, or an inline function.
+##
+## This results in a sparse matrix with the same structure as @var{S}.  The
+## function @var{f} can be passed as a string, a function handle, or an
+## inline function.
 ## @seealso{arrayfun, cellfun, structfun}
 ## @end deftypefn
 
--- a/scripts/sparse/spones.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/sparse/spones.m	Sun May 10 21:37:19 2015 -0700
@@ -18,8 +18,9 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {@var{r} =} spones (@var{S})
-## Replace the nonzero entries of @var{S} with ones.  This creates a
-## sparse matrix with the same structure as @var{S}.
+## Replace the nonzero entries of @var{S} with ones.
+##
+## This creates a sparse matrix with the same structure as @var{S}.
 ## @seealso{sparse, sprand, sprandn, sprandsym, spfun, spy}
 ## @end deftypefn
 
--- a/scripts/sparse/sprandsym.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/sparse/sprandsym.m	Sun May 10 21:37:19 2015 -0700
@@ -27,7 +27,7 @@
 ## be normally distributed with a mean of zero and a variance of 1.
 ##
 ## If called with a single matrix argument, a random sparse matrix is generated
-## wherever the matrix @var{S} is nonzero in its lower triangular part.
+## wherever the matrix @var{s} is nonzero in its lower triangular part.
 ## @seealso{sprand, sprandn, spones, sparse}
 ## @end deftypefn
 
--- a/scripts/sparse/spstats.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/sparse/spstats.m	Sun May 10 21:37:19 2015 -0700
@@ -20,13 +20,14 @@
 ## @deftypefn  {Function File} {[@var{count}, @var{mean}, @var{var}] =} spstats (@var{S})
 ## @deftypefnx {Function File} {[@var{count}, @var{mean}, @var{var}] =} spstats (@var{S}, @var{j})
 ## Return the stats for the nonzero elements of the sparse matrix @var{S}.
-## @var{count} is the number of nonzeros in each column, @var{mean}
-## is the mean of the nonzeros in each column, and @var{var} is the
-## variance of the nonzeros in each column.
 ##
-## Called with two input arguments, if @var{S} is the data and @var{j}
-## is the bin number for the data, compute the stats for each bin.  In
-## this case, bins can contain data values of zero, whereas with
+## @var{count} is the number of nonzeros in each column, @var{mean} is the mean
+## of the nonzeros in each column, and @var{var} is the variance of the
+## nonzeros in each column.
+##
+## Called with two input arguments, if @var{S} is the data and @var{j} is the
+## bin number for the data, compute the stats for each bin.  In this case,
+## bins can contain data values of zero, whereas with
 ## @code{spstats (@var{S})} the zeros may disappear.
 ## @end deftypefn
 
--- a/scripts/sparse/spy.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/sparse/spy.m	Sun May 10 21:37:19 2015 -0700
@@ -23,8 +23,10 @@
 ## Plot the sparsity pattern of the sparse matrix @var{x}.
 ##
 ## If the argument @var{markersize} is given as a scalar value, it is used to
-## determine the point size in the plot.  If the string @var{line_spec} is
-## given it is passed to @code{plot} and determines the appearance of the plot.
+## determine the point size in the plot.
+##
+## If the string @var{line_spec} is given it is passed to @code{plot} and
+## determines the appearance of the plot.
 ## @seealso{plot, gplot}
 ## @end deftypefn
 
--- a/scripts/sparse/svds.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/sparse/svds.m	Sun May 10 21:37:19 2015 -0700
@@ -24,8 +24,9 @@
 ## @deftypefnx {Function File} {[@var{u}, @var{s}, @var{v}] =} svds (@dots{})
 ## @deftypefnx {Function File} {[@var{u}, @var{s}, @var{v}, @var{flag}] =} svds (@dots{})
 ##
-## Find a few singular values of the matrix @var{A}.  The singular values
-## are calculated using
+## Find a few singular values of the matrix @var{A}.
+##
+## The singular values are calculated using
 ##
 ## @example
 ## @group
--- a/scripts/sparse/treelayout.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/sparse/treelayout.m	Sun May 10 21:37:19 2015 -0700
@@ -19,12 +19,14 @@
 ## -*- texinfo -*-
 ## @deftypefn  {Function File} {} treelayout (@var{tree})
 ## @deftypefnx {Function File} {} treelayout (@var{tree}, @var{permutation})
-## treelayout lays out a tree or a forest.  The first argument @var{tree} is a
-## vector of
-## predecessors, optional parameter @var{permutation} is an optional postorder
-## permutation.
-## The complexity of the algorithm is O(n) in
-## terms of time and memory requirements.
+## treelayout lays out a tree or a forest.
+##
+## The first argument @var{tree} is a vector of predecessors.
+##
+## The parameter @var{permutation} is an optional postorder permutation.
+##
+## The complexity of the algorithm is O(n) in terms of time and memory
+## requirements.
 ## @seealso{etreeplot, gplot, treeplot}
 ## @end deftypefn
 
--- a/scripts/sparse/treeplot.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/sparse/treeplot.m	Sun May 10 21:37:19 2015 -0700
@@ -19,10 +19,15 @@
 ## -*- texinfo -*-
 ## @deftypefn  {Function File} {} treeplot (@var{tree})
 ## @deftypefnx {Function File} {} treeplot (@var{tree}, @var{node_style}, @var{edge_style})
-## Produce a graph of tree or forest.  The first argument is vector of
-## predecessors, optional parameters @var{node_style} and @var{edge_style}
-## define the output style.  The complexity of the algorithm is O(n) in
-## terms of is time and memory requirements.
+## Produce a graph of tree or forest.
+##
+## The first argument is vector of predecessors.
+##
+## The optional parameters @var{node_style} and @var{edge_style} define the
+## output plot style.
+##
+## The complexity of the algorithm is O(n) in terms of is time and memory
+## requirements.
 ## @seealso{etreeplot, gplot}
 ## @end deftypefn
 
--- a/scripts/specfun/expint.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/specfun/expint.m	Sun May 10 21:37:19 2015 -0700
@@ -41,7 +41,7 @@
 ## @end ifnottex
 ## Note: For compatibility, this functions uses the @sc{matlab} definition
 ## of the exponential integral.  Most other sources refer to this particular
-## value as @math{E_1 (x)}, and the exponential integral is
+## value as @math{E_1 (x)}, and the exponential integral as
 ## @tex
 ## $$
 ## {\rm Ei} (x) = - \int_{-x}^\infty {e^{-t} \over t} dt.
--- a/scripts/specfun/isprime.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/specfun/isprime.m	Sun May 10 21:37:19 2015 -0700
@@ -19,8 +19,8 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} isprime (@var{x})
-## Return a logical array which is true where the elements of @var{x} are
-## prime numbers and false where they are not.
+## Return a logical array which is true where the elements of @var{x} are prime
+## numbers and false where they are not.
 ##
 ## A prime number is conventionally defined as a positive integer greater than
 ## 1 (e.g., 2, 3, @dots{}) which is divisible only by itself and 1.  Octave
--- a/scripts/specfun/legendre.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/specfun/legendre.m	Sun May 10 21:37:19 2015 -0700
@@ -23,8 +23,9 @@
 ## Compute the Legendre function of degree @var{n} and order
 ## @var{m} = 0 @dots{} @var{n}.
 ##
-## The value @var{n} must be a real non-negative integer.  @var{x} is a
-## vector with real-valued elements in the range [-1, 1].
+## The value @var{n} must be a real non-negative integer.
+##
+## @var{x} is a vector with real-valued elements in the range [-1, 1].
 ##
 ## The optional argument @var{normalization} may be one of @qcode{"unnorm"},
 ## @qcode{"sch"}, or @qcode{"norm"}.  The default if no normalization is given
@@ -88,10 +89,10 @@
 ## @end group
 ## @end example
 ##
-## When the optional argument @code{normalization} is @qcode{"sch"},
-## compute the Schmidt semi-normalized associated Legendre function.
-## The Schmidt semi-normalized associated Legendre function is related
-## to the unnormalized Legendre functions by the following:
+## When the optional argument @code{normalization} is @qcode{"sch"}, compute
+## the Schmidt semi-normalized associated Legendre function.  The Schmidt
+## semi-normalized associated Legendre function is related to the unnormalized
+## Legendre functions by the following:
 ##
 ## For Legendre functions of degree @var{n} and order 0:
 ##
@@ -131,10 +132,10 @@
 ##
 ## @end ifnottex
 ##
-## When the optional argument @var{normalization} is @qcode{"norm"},
-## compute the fully normalized associated Legendre function.
-## The fully normalized associated Legendre function is related
-## to the unnormalized Legendre functions by the following:
+## When the optional argument @var{normalization} is @qcode{"norm"}, compute
+## the fully normalized associated Legendre function.  The fully normalized
+## associated Legendre function is related to the unnormalized Legendre
+## functions by the following:
 ##
 ## For Legendre functions of degree @var{n} and order @var{m}
 ##
--- a/scripts/specfun/primes.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/specfun/primes.m	Sun May 10 21:37:19 2015 -0700
@@ -20,14 +20,13 @@
 ## @deftypefn {Function File} {} primes (@var{n})
 ## Return all primes up to @var{n}.
 ##
-## The output data class (double, single, uint32, etc.) is the same as
-## the input class of @var{n}.  The algorithm used is the Sieve of
-## Eratosthenes.
+## The output data class (double, single, uint32, etc.) is the same as the
+## input class of @var{n}.  The algorithm used is the Sieve of Eratosthenes.
 ##
-## Notes: If you need a specific number of primes you can use the
-## fact that the distance from one prime to the next is, on average,
-## proportional to the logarithm of the prime.  Integrating, one finds
-## that there are about @math{k} primes less than
+## Notes: If you need a specific number of primes you can use the fact that the
+## distance from one prime to the next is, on average, proportional to the
+## logarithm of the prime.  Integrating, one finds that there are about
+## @math{k} primes less than
 ## @tex
 ## $k \log (5 k)$.
 ## @end tex
@@ -35,8 +34,7 @@
 ## k*log (5*k).
 ## @end ifnottex
 ##
-## See also @code{list_primes} if you need a specific number @var{n} of
-## primes.
+## See also @code{list_primes} if you need a specific number @var{n} of primes.
 ## @seealso{list_primes, isprime}
 ## @end deftypefn
 
--- a/scripts/specfun/reallog.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/specfun/reallog.m	Sun May 10 21:37:19 2015 -0700
@@ -20,8 +20,8 @@
 ## @deftypefn {Function File} {} reallog (@var{x})
 ## Return the real-valued natural logarithm of each element of @var{x}.
 ##
-## If any element results in a complex return value @code{reallog} aborts
-## and issues an error.
+## If any element results in a complex return value @code{reallog} aborts and
+## issues an error.
 ## @seealso{log, realpow, realsqrt}
 ## @end deftypefn
 
--- a/scripts/specfun/realsqrt.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/specfun/realsqrt.m	Sun May 10 21:37:19 2015 -0700
@@ -20,8 +20,8 @@
 ## @deftypefn {Function File} {} realsqrt (@var{x})
 ## Return the real-valued square root of each element of @var{x}.
 ##
-## If any element results in a complex return value @code{realsqrt} aborts
-## and issues an error.
+## If any element results in a complex return value @code{realsqrt} aborts and
+## issues an error.
 ## @seealso{sqrt, realpow, reallog}
 ## @end deftypefn
 
--- a/scripts/special-matrix/gallery.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/special-matrix/gallery.m	Sun May 10 21:37:19 2015 -0700
@@ -157,9 +157,9 @@
 ## The second input is a matrix of dimensions describing the size of the output.
 ## The dimensions can also be input as comma-separated arguments.
 ##
-## The input @var{j} is an integer index in the range [0, 2^32-1].  The
-## values of the output matrix are always exactly the same
-## (reproducibility) for a given size input and @var{j} index.
+## The input @var{j} is an integer index in the range [0, 2^32-1].  The values
+## of the output matrix are always exactly the same (reproducibility) for a
+## given size input and @var{j} index.
 ##
 ## The final optional argument determines the class of the resulting matrix.
 ## Possible values for @var{class}: @qcode{"uint8"}, @qcode{"uint16"},
@@ -181,7 +181,7 @@
 ##
 ## @deftypefn  {Function File} {@var{a} =} gallery ("ipjfact", @var{n})
 ## @deftypefnx {Function File} {@var{a} =} gallery ("ipjfact", @var{n}, @var{k})
-## Create an Hankel matrix with factorial elements.
+## Create a Hankel matrix with factorial elements.
 ##
 ## @end deftypefn
 ##
@@ -257,9 +257,9 @@
 ## The first input is a matrix of dimensions describing the size of the output.
 ## The dimensions can also be input as comma-separated arguments.
 ##
-## The input @var{j} is an integer index in the range [0, 2^32-1].  The
-## values of the output matrix are always exactly the same
-## (reproducibility) for a given size input and @var{j} index.
+## The input @var{j} is an integer index in the range [0, 2^32-1].  The values
+## of the output matrix are always exactly the same (reproducibility) for a
+## given size input and @var{j} index.
 ##
 ## The final optional argument determines the class of the resulting matrix.
 ## Possible values for @var{class}: @qcode{"single"}, @qcode{"double"}.
@@ -380,9 +380,9 @@
 ## The first input is a matrix of dimensions describing the size of the output.
 ## The dimensions can also be input as comma-separated arguments.
 ##
-## The input @var{j} is an integer index in the range [0, 2^32-1].  The
-## values of the output matrix are always exactly the same
-## (reproducibility) for a given size input and @var{j} index.
+## The input @var{j} is an integer index in the range [0, 2^32-1].  The values
+## of the output matrix are always exactly the same (reproducibility) for a
+## given size input and @var{j} index.
 ##
 ## The final optional argument determines the class of the resulting matrix.
 ## Possible values for @var{class}: @qcode{"single"}, @qcode{"double"}.
--- a/scripts/special-matrix/hadamard.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/special-matrix/hadamard.m	Sun May 10 21:37:19 2015 -0700
@@ -21,10 +21,11 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} hadamard (@var{n})
-## Construct a Hadamard matrix (@nospell{Hn}) of size @var{n}-by-@var{n}.  The
-## size @var{n} must be of the form @math{2^k * p} in which
-## p is one of 1, 12, 20 or 28.  The returned matrix is normalized,
-## meaning @w{@code{Hn(:,1) == 1}} and @w{@code{Hn(1,:) == 1}}.
+## Construct a Hadamard matrix (@nospell{Hn}) of size @var{n}-by-@var{n}.
+##
+## The size @var{n} must be of the form @math{2^k * p} in which p is one of
+## 1, 12, 20 or 28.  The returned matrix is normalized, meaning
+## @w{@code{Hn(:,1) == 1}} and @w{@code{Hn(1,:) == 1}}.
 ##
 ## Some of the properties of Hadamard matrices are:
 ##
--- a/scripts/special-matrix/hankel.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/special-matrix/hankel.m	Sun May 10 21:37:19 2015 -0700
@@ -20,13 +20,14 @@
 ## @deftypefn  {Function File} {} hankel (@var{c})
 ## @deftypefnx {Function File} {} hankel (@var{c}, @var{r})
 ## Return the Hankel matrix constructed from the first column @var{c}, and
-## (optionally) the last row @var{r}.  If the last element of @var{c} is
-## not the same as the first element of @var{r}, the last element of
-## @var{c} is used.  If the second argument is omitted, it is assumed to
-## be a vector of zeros with the same size as @var{c}.
+## (optionally) the last row @var{r}.
 ##
-## A Hankel matrix formed from an m-vector @var{c}, and an n-vector
-## @var{r}, has the elements
+## If the last element of @var{c} is not the same as the first element of
+## @var{r}, the last element of @var{c} is used.  If the second argument is
+## omitted, it is assumed to be a vector of zeros with the same size as @var{c}.
+##
+## A Hankel matrix formed from an m-vector @var{c}, and an n-vector @var{r},
+## has the elements
 ## @tex
 ## $$
 ## H(i, j) = \cases{c_{i+j-1},&$i+j-1\le m$;\cr r_{i+j-m},&otherwise.\cr}
--- a/scripts/special-matrix/hilb.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/special-matrix/hilb.m	Sun May 10 21:37:19 2015 -0700
@@ -18,8 +18,9 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} hilb (@var{n})
-## Return the Hilbert matrix of order @var{n}.  The @math{i,j} element
-## of a Hilbert matrix is defined as
+## Return the Hilbert matrix of order @var{n}.
+##
+## The @math{i,j} element of a Hilbert matrix is defined as
 ## @tex
 ## $$
 ## H(i, j) = {1 \over (i + j - 1)}
@@ -34,9 +35,9 @@
 ## @end ifnottex
 ##
 ## Hilbert matrices are close to being singular which make them difficult to
-## invert with numerical routines.
-## Comparing the condition number of a random matrix 5x5 matrix with that of
-## a Hilbert matrix of order 5 reveals just how difficult the problem is.
+## invert with numerical routines.  Comparing the condition number of a random
+## matrix 5x5 matrix with that of a Hilbert matrix of order 5 reveals just how
+## difficult the problem is.
 ##
 ## @example
 ## @group
--- a/scripts/special-matrix/invhilb.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/special-matrix/invhilb.m	Sun May 10 21:37:19 2015 -0700
@@ -18,8 +18,9 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} invhilb (@var{n})
-## Return the inverse of the Hilbert matrix of order @var{n}.  This can be
-## computed exactly using
+## Return the inverse of the Hilbert matrix of order @var{n}.
+##
+## This can be computed exactly using
 ## @tex
 ## $$\eqalign{
 ##   A_{ij} &= -1^{i+j} (i+j-1)
@@ -60,10 +61,10 @@
 ## @end example
 ##
 ## @end ifnottex
-## The validity of this formula can easily be checked by expanding
-## the binomial coefficients in both formulas as factorials.  It can
-## be derived more directly via the theory of Cauchy matrices.
-## See @nospell{J. W. Demmel}, @cite{Applied Numerical Linear Algebra}, p. 92.
+## The validity of this formula can easily be checked by expanding the binomial
+## coefficients in both formulas as factorials.  It can be derived more
+## directly via the theory of Cauchy matrices.  See @nospell{J. W. Demmel},
+## @cite{Applied Numerical Linear Algebra}, p. 92.
 ##
 ## Compare this with the numerical calculation of @code{inverse (hilb (n))},
 ## which suffers from the ill-conditioning of the Hilbert matrix, and the
--- a/scripts/special-matrix/magic.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/special-matrix/magic.m	Sun May 10 21:37:19 2015 -0700
@@ -19,9 +19,10 @@
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} magic (@var{n})
 ##
-## Create an @var{n}-by-@var{n} magic square.  A magic square is an arrangement
-## of the integers @code{1:n^2} such that the row sums, column sums, and
-## diagonal sums are all equal to the same value.
+## Create an @var{n}-by-@var{n} magic square.
+##
+## A magic square is an arrangement of the integers @code{1:n^2} such that the
+## row sums, column sums, and diagonal sums are all equal to the same value.
 ##
 ## Note: @var{n} must be greater than 2 for the magic square to exist.
 ## @end deftypefn
--- a/scripts/special-matrix/pascal.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/special-matrix/pascal.m	Sun May 10 21:37:19 2015 -0700
@@ -20,15 +20,21 @@
 ## -*- texinfo -*-
 ## @deftypefn  {Function File} {} pascal (@var{n})
 ## @deftypefnx {Function File} {} pascal (@var{n}, @var{t})
-## Return the Pascal matrix of order @var{n} if @code{@var{t} = 0}.  @var{t}
-## defaults to 0.  Return the pseudo-lower triangular Cholesky@tie{}factor of
-## the Pascal matrix if @code{@var{t} = 1} (The sign of some columns may be
-## negative).  This matrix is its own inverse, that is @code{pascal (@var{n},
-## 1) ^ 2 == eye (@var{n})}.  If @code{@var{t} = -1}, return the true
-## Cholesky@tie{}factor with strictly positive values on the diagonal.  If
-## @code{@var{t} = 2}, return a transposed and permuted version of @code{pascal
-## (@var{n}, 1)}, which is the cube root of the identity matrix.  That is,
-## @code{pascal (@var{n}, 2) ^ 3 == eye (@var{n})}.
+## Return the Pascal matrix of order @var{n} if @code{@var{t} = 0}.
+##
+## The default value of @var{t} is 0.
+##
+## When @code{@var{t} = 1}, return the pseudo-lower triangular
+## Cholesky@tie{}factor of the Pascal matrix (The sign of some columns may be
+## negative).  This matrix is its own inverse, that is
+## @code{pascal (@var{n}, 1) ^ 2 == eye (@var{n})}.
+##
+## If @code{@var{t} = -1}, return the true Cholesky@tie{}factor with strictly
+## positive values on the diagonal.
+##
+## If @code{@var{t} = 2}, return a transposed and permuted version of
+## @code{pascal (@var{n}, 1)}, which is the cube root of the identity matrix.
+## That is, @code{pascal (@var{n}, 2) ^ 3 == eye (@var{n})}.
 ##
 ## @seealso{chol}
 ## @end deftypefn
--- a/scripts/special-matrix/rosser.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/special-matrix/rosser.m	Sun May 10 21:37:19 2015 -0700
@@ -18,9 +18,9 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} rosser ()
-## Return the Rosser matrix.  This is a difficult test case used to evaluate
-## eigenvalue algorithms.
+## Return the Rosser matrix.
 ##
+## This is a difficult test case used to evaluate eigenvalue algorithms.
 ## @seealso{wilkinson, eig}
 ## @end deftypefn
 
--- a/scripts/special-matrix/toeplitz.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/special-matrix/toeplitz.m	Sun May 10 21:37:19 2015 -0700
@@ -21,10 +21,11 @@
 ## @deftypefn  {Function File} {} toeplitz (@var{c})
 ## @deftypefnx {Function File} {} toeplitz (@var{c}, @var{r})
 ## Return the Toeplitz matrix constructed from the first column @var{c},
-## and (optionally) the first row @var{r}.  If the first element of @var{r}
-## is not the same as the first element of @var{c}, the first element of
-## @var{c} is used.  If the second argument is omitted, the first row is
-## taken to be the same as the first column.
+## and (optionally) the first row @var{r}.
+##
+## If the first element of @var{r} is not the same as the first element of
+## @var{c}, the first element of @var{c} is used.  If the second argument is
+## omitted, the first row is taken to be the same as the first column.
 ##
 ## A square Toeplitz matrix has the form:
 ## @tex
--- a/scripts/special-matrix/vander.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/special-matrix/vander.m	Sun May 10 21:37:19 2015 -0700
@@ -21,8 +21,9 @@
 ## @deftypefn  {Function File} {} vander (@var{c})
 ## @deftypefnx {Function File} {} vander (@var{c}, @var{n})
 ## Return the Vandermonde matrix whose next to last column is @var{c}.
-## If @var{n} is specified, it determines the number of columns;
-## otherwise, @var{n} is taken to be equal to the length of @var{c}.
+##
+## If @var{n} is specified, it determines the number of columns; otherwise,
+## @var{n} is taken to be equal to the length of @var{c}.
 ##
 ## A Vandermonde matrix has the form:
 ## @tex
--- a/scripts/special-matrix/wilkinson.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/special-matrix/wilkinson.m	Sun May 10 21:37:19 2015 -0700
@@ -18,10 +18,11 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} wilkinson (@var{n})
-## Return the Wilkinson matrix of order @var{n}.  Wilkinson matrices are
-## symmetric and tridiagonal with pairs of nearly, but not exactly, equal
-## eigenvalues.  They are useful in testing the behavior and performance
-## of eigenvalue solvers.
+## Return the Wilkinson matrix of order @var{n}.
+##
+## Wilkinson matrices are symmetric and tridiagonal with pairs of nearly, but
+## not exactly, equal eigenvalues.  They are useful in testing the behavior and
+## performance of eigenvalue solvers.
 ##
 ## @seealso{rosser, eig}
 ## @end deftypefn
--- a/scripts/statistics/base/center.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/base/center.m	Sun May 10 21:37:19 2015 -0700
@@ -20,9 +20,19 @@
 ## -*- texinfo -*-
 ## @deftypefn  {Function File} {} center (@var{x})
 ## @deftypefnx {Function File} {} center (@var{x}, @var{dim})
+## Center data by subtracting its mean.
+##
 ## If @var{x} is a vector, subtract its mean.
+##
 ## If @var{x} is a matrix, do the above for each column.
+##
 ## If the optional argument @var{dim} is given, operate along this dimension.
+##
+## Programming Note: @code{center} has obvious application for normalizing
+## statistical data.  It is also useful for improving the precision of general
+## numerical calculations.  Whenever there is a large value that is common
+## to a batch of data, the mean can be subtracted off, the calculation
+## performed, and then the mean added back to obtain the final answer.
 ## @seealso{zscore}
 ## @end deftypefn
 
--- a/scripts/statistics/base/cloglog.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/base/cloglog.m	Sun May 10 21:37:19 2015 -0700
@@ -18,7 +18,9 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} cloglog (@var{x})
-## Return the complementary log-log function of @var{x}, defined as
+## Return the complementary log-log function of @var{x}.
+##
+## The complementary log-log function is defined as
 ## @tex
 ## $$
 ## {\rm cloglog}(x) = - \log (- \log (x))
--- a/scripts/statistics/base/cov.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/base/cov.m	Sun May 10 21:37:19 2015 -0700
@@ -56,7 +56,7 @@
 ##   normalize with @math{N}, this provides the second moment around the mean
 ## @end table
 ##
-## @sc{matlab} compatibility: Octave always computes the covariance matrix.
+## Compatibility Note:: Octave always computes the covariance matrix.
 ## For two inputs, however, @sc{matlab} will calculate
 ## @code{cov (@var{x}(:), @var{y}(:))} whenever the number of elements in
 ## @var{x} and @var{y} are equal.  This will result in a scalar rather than
--- a/scripts/statistics/base/gls.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/base/gls.m	Sun May 10 21:37:19 2015 -0700
@@ -18,7 +18,9 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {[@var{beta}, @var{v}, @var{r}] =} gls (@var{y}, @var{x}, @var{o})
-## Generalized least squares estimation for the multivariate model
+## Generalized least squares model.
+##
+## Perform a generalized least squares estimation for the multivariate model
 ## @tex
 ## $y = x b + e$
 ## with $\bar{e} = 0$ and cov(vec($e$)) = $(s^2)o$,
--- a/scripts/statistics/base/histc.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/base/histc.m	Sun May 10 21:37:19 2015 -0700
@@ -21,7 +21,7 @@
 ## @deftypefn  {Function File} {@var{n} =} histc (@var{x}, @var{edges})
 ## @deftypefnx {Function File} {@var{n} =} histc (@var{x}, @var{edges}, @var{dim})
 ## @deftypefnx {Function File} {[@var{n}, @var{idx}] =} histc (@dots{})
-## Produce histogram counts.
+## Compute histogram counts.
 ##
 ## When @var{x} is a vector, the function counts the number of elements of
 ## @var{x} that fall in the histogram bins defined by @var{edges}.  This must be
@@ -31,9 +31,9 @@
 ## The final element of @var{n} contains the number of elements of @var{x}
 ## exactly equal to the last element of @var{edges}.
 ##
-## When @var{x} is an @math{N}-dimensional array, the computation is
-## carried out along dimension @var{dim}.  If not specified @var{dim} defaults
-## to the first non-singleton dimension.
+## When @var{x} is an @math{N}-dimensional array, the computation is carried
+## out along dimension @var{dim}.  If not specified @var{dim} defaults to the
+## first non-singleton dimension.
 ##
 ## When a second output argument is requested an index matrix is also returned.
 ## The @var{idx} matrix has the same size as @var{x}.  Each element of @var{idx}
--- a/scripts/statistics/base/iqr.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/base/iqr.m	Sun May 10 21:37:19 2015 -0700
@@ -20,8 +20,10 @@
 ## @deftypefn  {Function File} {} iqr (@var{x})
 ## @deftypefnx {Function File} {} iqr (@var{x}, @var{dim})
 ## Return the interquartile range, i.e., the difference between the upper
-## and lower quartile of the input data.  If @var{x} is a matrix, do the
-## above for first non-singleton dimension of @var{x}.
+## and lower quartile of the input data.
+##
+## If @var{x} is a matrix, do the above for first non-singleton dimension of
+## @var{x}.
 ##
 ## If the optional argument @var{dim} is given, operate along this dimension.
 ##
--- a/scripts/statistics/base/kendall.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/base/kendall.m	Sun May 10 21:37:19 2015 -0700
@@ -22,10 +22,10 @@
 ## @cindex Kendall's Tau
 ## Compute Kendall's @var{tau}.
 ##
-## For two data vectors @var{x}, @var{y} of common length @var{n},
-## Kendall's @var{tau} is the correlation of the signs of all rank
-## differences of @var{x} and @var{y}; i.e., if both @var{x} and
-## @var{y} have distinct entries, then
+## For two data vectors @var{x}, @var{y} of common length @var{n}, Kendall's
+## @var{tau} is the correlation of the signs of all rank differences of
+## @var{x} and @var{y}; i.e., if both @var{x} and @var{y} have distinct
+## entries, then
 ##
 ## @tex
 ## $$ \tau = {1 \over n(n-1)} \sum_{i,j} {\rm sign}(q_i-q_j) {\rm sign}(r_i-r_j) $$
--- a/scripts/statistics/base/kurtosis.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/base/kurtosis.m	Sun May 10 21:37:19 2015 -0700
@@ -21,7 +21,9 @@
 ## @deftypefn  {Function File} {} kurtosis (@var{x})
 ## @deftypefnx {Function File} {} kurtosis (@var{x}, @var{flag})
 ## @deftypefnx {Function File} {} kurtosis (@var{x}, @var{flag}, @var{dim})
-## Compute the sample kurtosis of the elements of @var{x}:
+## Compute the sample kurtosis of the elements of @var{x}.
+##
+## The sample kurtosis is defined as
 ## @tex
 ## $$
 ## \kappa_1 = {{{1\over N}\,
--- a/scripts/statistics/base/logit.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/base/logit.m	Sun May 10 21:37:19 2015 -0700
@@ -18,7 +18,9 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} logit (@var{p})
-## For each component of @var{p}, return the logit of @var{p} defined as
+## Compute the logit for each value of @var{p}
+##
+## The logit is defined as
 ## @tex
 ## $$
 ## {\rm logit}(p) = \log\Big({p \over 1-p}\Big)
@@ -31,7 +33,7 @@
 ## @end example
 ##
 ## @end ifnottex
-## @seealso{logistic_cdf}
+## @seealso{probit, logistic_cdf}
 ## @end deftypefn
 
 ## Author: KH <Kurt.Hornik@wu-wien.ac.at>
--- a/scripts/statistics/base/lscov.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/base/lscov.m	Sun May 10 21:37:19 2015 -0700
@@ -20,6 +20,7 @@
 ## @deftypefnx {Function File} {[@var{x}, @var{stdx}, @var{mse}, @var{S}] =} lscov (@dots{})
 ##
 ## Compute a generalized linear least squares fit.
+##
 ## Estimate @var{x} under the model @var{b} = @var{A}@var{x} + @var{w},
 ## where the noise @var{w} is assumed to follow a normal distribution
 ## with covariance matrix @math{{\sigma^2} V}.
@@ -28,25 +29,24 @@
 ## size of the vector/array of constant terms @var{b} must be n-by-k.
 ##
 ## The optional input argument @var{V} may be a n-by-1 vector of positive
-## weights (inverse variances), or a n-by-n symmetric positive
-## semidefinite matrix representing the covariance of @var{b}.  If
-## @var{V} is not supplied, the ordinary least squares solution is
-## returned.
+## weights (inverse variances), or a n-by-n symmetric positive semidefinite
+## matrix representing the covariance of @var{b}.  If @var{V} is not
+## supplied, the ordinary least squares solution is returned.
 ##
-## The @var{alg} input argument, a guidance on solution method to use,
-## is currently ignored.
+## The @var{alg} input argument, a guidance on solution method to use, is
+## currently ignored.
 ##
-## Besides the least-squares estimate matrix @var{x} (p-by-k), the
-## function also returns @var{stdx} (p-by-k), the error standard
-## deviation of estimated @var{x}; @var{mse} (k-by-1), the estimated
-## data error covariance scale factors (@math{\sigma^2}); and @var{S}
-## (p-by-p, or p-by-p-by-k if k > 1), the error covariance of @var{x}.
+## Besides the least-squares estimate matrix @var{x} (p-by-k), the function
+## also returns @var{stdx} (p-by-k), the error standard deviation of
+## estimated @var{x}; @var{mse} (k-by-1), the estimated data error covariance
+## scale factors (@math{\sigma^2}); and @var{S} (p-by-p, or p-by-p-by-k if k
+## > 1), the error covariance of @var{x}.
 ##
 ## Reference: @nospell{Golub and Van Loan} (1996),
-## Matrix Computations (3rd Ed.), Johns Hopkins, Section 5.6.3
+## @cite{Matrix Computations (3rd Ed.)}, Johns Hopkins, Section 5.6.3
 ##
+## @seealso{ols, gls, lsqnonneg}
 ## @end deftypefn
-## @seealso{ols, gls, lsqnonneg}
 
 ## Author: Nir Krakauer
 
--- a/scripts/statistics/base/mahalanobis.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/base/mahalanobis.m	Sun May 10 21:37:19 2015 -0700
@@ -19,9 +19,10 @@
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} mahalanobis (@var{x}, @var{y})
 ## Return the Mahalanobis' D-square distance between the multivariate
-## samples @var{x} and @var{y}, which must have the same number of
-## components (columns), but may have a different number of observations
-## (rows).
+## samples @var{x} and @var{y}.
+##
+## The data @var{x} and @var{y} must have the same number of components
+## (columns), but may have a different number of observations (rows).
 ## @end deftypefn
 
 ## Author: Friedrich Leisch <leisch@ci.tuwien.ac.at>
--- a/scripts/statistics/base/mean.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/base/mean.m	Sun May 10 21:37:19 2015 -0700
@@ -22,6 +22,9 @@
 ## @deftypefnx {Function File} {} mean (@var{x}, @var{opt})
 ## @deftypefnx {Function File} {} mean (@var{x}, @var{dim}, @var{opt})
 ## Compute the mean of the elements of the vector @var{x}.
+##
+## The mean is defined as
+##
 ## @tex
 ## $$ {\rm mean}(x) = \bar{x} = {1\over N} \sum_{i=1}^N x_i $$
 ## @end tex
@@ -35,6 +38,8 @@
 ## If @var{x} is a matrix, compute the mean for each column and return them
 ## in a row vector.
 ##
+## If the optional argument @var{dim} is given, operate along this dimension.
+##
 ## The optional argument @var{opt} selects the type of mean to compute.
 ## The following options are recognized:
 ##
@@ -49,10 +54,8 @@
 ## Compute the harmonic mean.
 ## @end table
 ##
-## If the optional argument @var{dim} is given, operate along this dimension.
-##
-## Both @var{dim} and @var{opt} are optional.  If both are supplied,
-## either may appear first.
+## Both @var{dim} and @var{opt} are optional.  If both are supplied, either
+## may appear first.
 ## @seealso{median, mode}
 ## @end deftypefn
 
--- a/scripts/statistics/base/meansq.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/base/meansq.m	Sun May 10 21:37:19 2015 -0700
@@ -21,6 +21,8 @@
 ## @deftypefn  {Function File} {} meansq (@var{x})
 ## @deftypefnx {Function File} {} meansq (@var{x}, @var{dim})
 ## Compute the mean square of the elements of the vector @var{x}.
+##
+## The mean square is defined as
 ## @tex
 ## $$
 ## {\rm meansq} (x) = {\sum_{i=1}^N {x_i}^2 \over N}
--- a/scripts/statistics/base/median.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/base/median.m	Sun May 10 21:37:19 2015 -0700
@@ -21,8 +21,8 @@
 ## @deftypefn  {Function File} {} median (@var{x})
 ## @deftypefnx {Function File} {} median (@var{x}, @var{dim})
 ## Compute the median value of the elements of the vector @var{x}.
-## If the elements of @var{x} are sorted, the median is defined
-## as
+##
+## When the elements of @var{x} are sorted, the median is defined as
 ## @tex
 ## $$
 ## {\rm median} (x) =
@@ -41,9 +41,10 @@
 ## @end example
 ##
 ## @end ifnottex
-## If @var{x} is a matrix, compute the median value for each
-## column and return them in a row vector.  If the optional @var{dim}
-## argument is given, operate along this dimension.
+## If @var{x} is a matrix, compute the median value for each column and
+## return them in a row vector.
+##
+## If the optional @var{dim} argument is given, operate along this dimension.
 ## @seealso{mean, mode}
 ## @end deftypefn
 
--- a/scripts/statistics/base/mode.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/base/mode.m	Sun May 10 21:37:19 2015 -0700
@@ -21,6 +21,7 @@
 ## @deftypefnx {Function File} {} mode (@var{x}, @var{dim})
 ## @deftypefnx {Function File} {[@var{m}, @var{f}, @var{c}] =} mode (@dots{})
 ## Compute the most frequently occurring value in a dataset (mode).
+##
 ## @code{mode} determines the frequency of values along the first non-singleton
 ## dimension and returns the value with the highest frequency.  If two, or
 ## more, values have the same frequency @code{mode} returns the smallest.
@@ -28,8 +29,10 @@
 ## If the optional argument @var{dim} is given, operate along this dimension.
 ##
 ## The return variable @var{f} is the number of occurrences of the mode in
-## in the dataset.  The cell array @var{c} contains all of the elements
-## with the maximum frequency.
+## the dataset.
+##
+## The cell array @var{c} contains all of the elements with the maximum
+## frequency.
 ## @seealso{mean, median}
 ## @end deftypefn
 
--- a/scripts/statistics/base/moment.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/base/moment.m	Sun May 10 21:37:19 2015 -0700
@@ -42,6 +42,8 @@
 ## If @var{x} is a matrix, return the row vector containing the @var{p}-th
 ## central moment of each column.
 ##
+## If the optional argument @var{dim} is given, operate along this dimension.
+##
 ## The optional string @var{type} specifies the type of moment to be computed.
 ## Valid options are:
 ##
@@ -104,8 +106,6 @@
 ## @end ifnottex
 ## @end table
 ##
-## If the optional argument @var{dim} is given, operate along this dimension.
-##
 ## If both @var{type} and @var{dim} are given they may appear in any order.
 ## @seealso{var, skewness, kurtosis}
 ## @end deftypefn
--- a/scripts/statistics/base/ols.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/base/ols.m	Sun May 10 21:37:19 2015 -0700
@@ -18,7 +18,9 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {[@var{beta}, @var{sigma}, @var{r}] =} ols (@var{y}, @var{x})
-## Ordinary least squares estimation for the multivariate model
+## Ordinary least squares estimation.
+##
+## OLS applies to the multivariate model
 ## @tex
 ## $y = x b + e$
 ## with
@@ -34,13 +36,12 @@
 ## $b$ is a $k \times p$ matrix, and $e$ is a $t \times p$ matrix.
 ## @end tex
 ## @ifnottex
-## @math{y} is a @math{t} by @math{p} matrix, @math{x} is a @math{t} by
-## @math{k} matrix, @math{b} is a @math{k} by @math{p} matrix, and
-## @math{e} is a @math{t} by @math{p} matrix.
+## @math{y} is a @math{t} by @math{p} matrix, @math{x} is a @math{t} by @math{k}
+## matrix, @math{b} is a @math{k} by @math{p} matrix, and @math{e} is a
+## @math{t} by @math{p} matrix.
 ## @end ifnottex
 ##
-## Each row of @var{y} and @var{x} is an observation and each column a
-## variable.
+## Each row of @var{y} and @var{x} is an observation and each column a variable.
 ##
 ## The return values @var{beta}, @var{sigma}, and @var{r} are defined as
 ## follows.
--- a/scripts/statistics/base/ppplot.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/base/ppplot.m	Sun May 10 21:37:19 2015 -0700
@@ -21,26 +21,29 @@
 ## Perform a PP-plot (probability plot).
 ##
 ## If F is the CDF of the distribution @var{dist} with parameters
-## @var{params} and @var{x} a sample vector of length @var{n}, the
-## PP-plot graphs ordinate @var{y}(@var{i}) = F (@var{i}-th largest
-## element of @var{x}) versus abscissa @var{p}(@var{i}) = (@var{i} -
-## 0.5)/@var{n}.  If the sample comes from F, the pairs will
-## approximately follow a straight line.
+## @var{params} and @var{x} a sample vector of length @var{n}, the PP-plot
+## graphs ordinate @var{y}(@var{i}) = F (@var{i}-th largest element of
+## @var{x}) versus abscissa @var{p}(@var{i}) = (@var{i} - 0.5)/@var{n}.  If
+## the sample comes from F, the pairs will approximately follow a straight
+## line.
 ##
-## The default for @var{dist} is the standard normal distribution.  The
-## optional argument @var{params} contains a list of parameters of
-## @var{dist}.  For example, for a probability plot of the uniform
-## distribution on [2,4] and @var{x}, use
+## The default for @var{dist} is the standard normal distribution.
+##
+## The optional argument @var{params} contains a list of parameters of
+## @var{dist}.
+##
+## For example, for a probability plot of the uniform distribution on [2,4]
+## and @var{x}, use
 ##
 ## @example
 ## ppplot (x, "uniform", 2, 4)
 ## @end example
 ##
 ## @noindent
-## @var{dist} can be any string for which a function @var{dist_cdf}
-## that calculates the CDF of distribution @var{dist} exists.
+## @var{dist} can be any string for which a function @var{dist_cdf} that
+## calculates the CDF of distribution @var{dist} exists.
 ##
-## If no output arguments are given, the data are plotted directly.
+## If no output is requested then the data are plotted immediately.
 ## @end deftypefn
 
 ## Author: KH <Kurt.Hornik@wu-wien.ac.at>
--- a/scripts/statistics/base/prctile.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/base/prctile.m	Sun May 10 21:37:19 2015 -0700
@@ -21,17 +21,19 @@
 ## @deftypefnx {Function File} {@var{q} =} prctile (@var{x}, @var{p})
 ## @deftypefnx {Function File} {@var{q} =} prctile (@var{x}, @var{p}, @var{dim})
 ## For a sample @var{x}, compute the quantiles, @var{q}, corresponding
-## to the cumulative probability values, @var{p}, in percent.  All non-numeric
-## values (NaNs) of @var{x} are ignored.
+## to the cumulative probability values, @var{p}, in percent.
 ##
-## If @var{x} is a matrix, compute the percentiles for each column and
-## return them in a matrix, such that the i-th row of @var{y} contains the
+## If @var{x} is a matrix, compute the percentiles for each column and return
+## them in a matrix, such that the i-th row of @var{y} contains the
 ## @var{p}(i)th percentiles of each column of @var{x}.
 ##
 ## If @var{p} is unspecified, return the quantiles for @code{[0 25 50 75 100]}.
-## The optional argument @var{dim} determines the dimension along which
-## the percentiles are calculated.  If @var{dim} is omitted it defaults to the
-## the first non-singleton dimension.
+##
+## The optional argument @var{dim} determines the dimension along which the
+## percentiles are calculated.  If @var{dim} is omitted it defaults to the
+## first non-singleton dimension.
+##
+## Programming Note: All non-numeric values (NaNs) of @var{x} are ignored.
 ## @seealso{quantile}
 ## @end deftypefn
 
--- a/scripts/statistics/base/probit.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/base/probit.m	Sun May 10 21:37:19 2015 -0700
@@ -18,8 +18,9 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} probit (@var{p})
-## For each component of @var{p}, return the probit (the quantile of the
-## standard normal distribution) of @var{p}.
+## Return the probit (the quantile of the standard normal distribution) for
+## each element of @var{p}.
+## @seealso{logit}
 ## @end deftypefn
 
 ## Written by KH <Kurt.Hornik@wu-wien.ac.at> on 1995/02/04
--- a/scripts/statistics/base/range.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/base/range.m	Sun May 10 21:37:19 2015 -0700
@@ -21,9 +21,11 @@
 ## @deftypefn  {Function File} {} range (@var{x})
 ## @deftypefnx {Function File} {} range (@var{x}, @var{dim})
 ## Return the range, i.e., the difference between the maximum and the minimum
-## of the input data.  If @var{x} is a vector, the range is calculated over
-## the elements of @var{x}.  If @var{x} is a matrix, the range is calculated
-## over each column of @var{x}.
+## of the input data.
+##
+## If @var{x} is a vector, the range is calculated over the elements of
+## @var{x}.  If @var{x} is a matrix, the range is calculated over each column
+## of @var{x}.
 ##
 ## If the optional argument @var{dim} is given, operate along this dimension.
 ##
--- a/scripts/statistics/base/ranks.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/base/ranks.m	Sun May 10 21:37:19 2015 -0700
@@ -19,8 +19,9 @@
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} ranks (@var{x}, @var{dim})
 ## Return the ranks of @var{x} along the first non-singleton dimension
-## adjusted for ties.  If the optional argument @var{dim} is
-## given, operate along this dimension.
+## adjusted for ties.
+##
+## If the optional argument @var{dim} is given, operate along this dimension.
 ## @seealso{spearman, kendall}
 ## @end deftypefn
 
--- a/scripts/statistics/base/run_count.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/base/run_count.m	Sun May 10 21:37:19 2015 -0700
@@ -19,12 +19,12 @@
 ## -*- texinfo -*-
 ## @deftypefn  {Function File} {} run_count (@var{x}, @var{n})
 ## @deftypefnx {Function File} {} run_count (@var{x}, @var{n}, @var{dim})
-## Count the upward runs along the first non-singleton dimension of
-## @var{x} of length 1, 2, @dots{}, @var{n}-1 and greater than or equal
-## to @var{n}.
+## Count the upward runs along the first non-singleton dimension of @var{x}
+## of length 1, 2, @dots{}, @var{n}-1 and greater than or equal to @var{n}.
 ##
-## If the optional argument @var{dim} is given then operate
-## along this dimension.
+## If the optional argument @var{dim} is given then operate along this
+## dimension.
+## @seealso{runlength}
 ## @end deftypefn
 
 ## Author: FL <Friedrich.Leisch@ci.tuwien.ac.at>
--- a/scripts/statistics/base/runlength.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/base/runlength.m	Sun May 10 21:37:19 2015 -0700
@@ -17,9 +17,14 @@
 ## <http://www.gnu.org/licenses/>.
 
 ## -*- texinfo -*-
-## @deftypefn {Function File} {[count, value] =} runlength (@var{x})
-## Find the lengths of all sequences of common values.  Return the
-## vector of lengths and the value that was repeated.
+## @deftypefn  {Function File} {count =} runlength (@var{x})
+## @deftypefnx {Function File} {[count, value] =} runlength (@var{x})
+## Find the lengths of all sequences of common values.
+##
+## @var{count} is a vector with the lengths of each repeated value.
+##
+## The optional output @var{value} contains the value that was repeated in
+## the sequence.
 ##
 ## @example
 ## @group
@@ -27,6 +32,7 @@
 ## @result{}  [2, 1, 3, 1, 4]
 ## @end group
 ## @end example
+## @seealso{run_count}
 ## @end deftypefn
 
 function [count, value] = runlength (x)
--- a/scripts/statistics/base/skewness.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/base/skewness.m	Sun May 10 21:37:19 2015 -0700
@@ -21,7 +21,9 @@
 ## @deftypefn  {Function File} {} skewness (@var{x})
 ## @deftypefnx {Function File} {} skewness (@var{x}, @var{flag})
 ## @deftypefnx {Function File} {} skewness (@var{x}, @var{flag}, @var{dim})
-## Compute the sample skewness of the elements of @var{x}:
+## Compute the sample skewness of the elements of @var{x}.
+##
+## The sample skewness is defined as
 ## @tex
 ## $$
 ## {\rm skewness} (@var{x}) = {{{1\over N}\,
--- a/scripts/statistics/base/spearman.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/base/spearman.m	Sun May 10 21:37:19 2015 -0700
@@ -25,12 +25,12 @@
 ## For two data vectors @var{x} and @var{y}, Spearman's @var{rho} is the
 ## correlation coefficient of the ranks of @var{x} and @var{y}.
 ##
-## If @var{x} and @var{y} are drawn from independent distributions,
-## @var{rho} has zero mean and variance @code{1 / (n - 1)}, and is
-## asymptotically normally distributed.
+## If @var{x} and @var{y} are drawn from independent distributions, @var{rho}
+## has zero mean and variance @code{1 / (n - 1)}, and is asymptotically
+## normally distributed.
 ##
-## @code{spearman (@var{x})} is equivalent to @code{spearman (@var{x},
-## @var{x})}.
+## @code{spearman (@var{x})} is equivalent to
+## @code{spearman (@var{x}, @var{x})}.
 ## @seealso{ranks, kendall}
 ## @end deftypefn
 
--- a/scripts/statistics/base/statistics.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/base/statistics.m	Sun May 10 21:37:19 2015 -0700
@@ -23,8 +23,9 @@
 ## maximum, mean, standard deviation, skewness, and kurtosis of the elements of
 ## the vector @var{x}.
 ##
-## If @var{x} is a matrix, calculate statistics over the first
-## non-singleton dimension.
+## If @var{x} is a matrix, calculate statistics over the first non-singleton
+## dimension.
+##
 ## If the optional argument @var{dim} is given, operate along this dimension.
 ## @seealso{min, max, median, mean, std, skewness, kurtosis}
 ## @end deftypefn
--- a/scripts/statistics/base/std.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/base/std.m	Sun May 10 21:37:19 2015 -0700
@@ -21,6 +21,8 @@
 ## @deftypefnx {Function File} {} std (@var{x}, @var{opt})
 ## @deftypefnx {Function File} {} std (@var{x}, @var{opt}, @var{dim})
 ## Compute the standard deviation of the elements of the vector @var{x}.
+##
+## The standard deviation is defined as
 ## @tex
 ## $$
 ## {\rm std} (x) = \sigma = \sqrt{{\sum_{i=1}^N (x_i - \bar{x})^2 \over N - 1}}
@@ -39,8 +41,8 @@
 ## where @math{N} is the number of elements.
 ## @end ifnottex
 ##
-## If @var{x} is a matrix, compute the standard deviation for
-## each column and return them in a row vector.
+## If @var{x} is a matrix, compute the standard deviation for each column and
+## return them in a row vector.
 ##
 ## The argument @var{opt} determines the type of normalization to use.
 ## Valid values are
--- a/scripts/statistics/base/table.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/base/table.m	Sun May 10 21:37:19 2015 -0700
@@ -19,8 +19,9 @@
 ## -*- texinfo -*-
 ## @deftypefn  {Function File} {[@var{t}, @var{l_x}] =} table (@var{x})
 ## @deftypefnx {Function File} {[@var{t}, @var{l_x}, @var{l_y}] =} table (@var{x}, @var{y})
-## Create a contingency table @var{t} from data vectors.  The @var{l_x} and
-## @var{l_y} vectors are the corresponding levels.
+## Create a contingency table @var{t} from data vectors.
+##
+## The @var{l_x} and @var{l_y} vectors are the corresponding levels.
 ##
 ## Currently, only 1- and 2-dimensional tables are supported.
 ## @end deftypefn
--- a/scripts/statistics/base/var.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/base/var.m	Sun May 10 21:37:19 2015 -0700
@@ -21,6 +21,8 @@
 ## @deftypefnx {Function File} {} var (@var{x}, @var{opt})
 ## @deftypefnx {Function File} {} var (@var{x}, @var{opt}, @var{dim})
 ## Compute the variance of the elements of the vector @var{x}.
+##
+## The variance is defined as
 ## @tex
 ## $$
 ## {\rm var} (x) = \sigma^2 = {\sum_{i=1}^N (x_i - \bar{x})^2 \over N - 1}
@@ -36,8 +38,8 @@
 ## @end example
 ##
 ## @end ifnottex
-## If @var{x} is a matrix, compute the variance for each column
-## and return them in a row vector.
+## If @var{x} is a matrix, compute the variance for each column and return
+## them in a row vector.
 ##
 ## The argument @var{opt} determines the type of normalization to use.
 ## Valid values are
@@ -51,8 +53,8 @@
 ##   normalizes with @math{N}, this provides the second moment around the mean
 ## @end table
 ##
-## If @math{N==1} the value of @var{opt} is ignored and normalization
-## by @math{N} is used.
+## If @math{N==1} the value of @var{opt} is ignored and normalization by
+## @math{N} is used.
 ##
 ## If the optional argument @var{dim} is given, operate along this dimension.
 ## @seealso{cov, std, skewness, kurtosis, moment}
--- a/scripts/statistics/base/zscore.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/base/zscore.m	Sun May 10 21:37:19 2015 -0700
@@ -17,21 +17,25 @@
 ## <http://www.gnu.org/licenses/>.
 
 ## -*- texinfo -*-
-## @deftypefn  {Function File} {[@var{z}, @var{mu}, @var{sigma}] =} zscore (@var{x})
-## @deftypefnx {Function File} {[@var{z}, @var{mu}, @var{sigma}] =} zscore (@var{x}, @var{opt})
-## @deftypefnx {Function File} {[@var{z}, @var{mu}, @var{sigma}] =} zscore (@var{x}, @var{opt}, @var{dim})
+## @deftypefn  {Function File} {@var{z} =} zscore (@var{x})
+## @deftypefnx {Function File} {@var{z} =} zscore (@var{x}, @var{opt})
+## @deftypefnx {Function File} {@var{z} =} zscore (@var{x}, @var{opt}, @var{dim})
+## @deftypefnx {Function File} {[@var{z}, @var{mu}, @var{sigma}] =} zscore (@dots{})
+## Compute the Z score of @var{x}
+##
 ## If @var{x} is a vector, subtract its mean and divide by its standard
 ## deviation.  If the standard deviation is zero, divide by 1 instead.
-## The optional parameter @var{opt} determines the normalization to use
-## when computing the standard deviation and is the same as the
+##
+## The optional parameter @var{opt} determines the normalization to use when
+## computing the standard deviation and has the same definition as the
 ## corresponding parameter for @code{std}.
 ##
-## If @var{x} is a matrix, do the above along the first non-singleton
-## dimension.  If the third optional argument @var{dim} is given, operate
-## along this dimension.
+## If @var{x} is a matrix, calculate along the first non-singleton dimension.
+## If the third optional argument @var{dim} is given, operate along this
+## dimension.
 ##
-## The mean and standard deviation along @var{dim} are given in @var{mu}
-## and @var{sigma} respectively.
+## The optional outputs @var{mu} and @var{sigma} contain the mean and standard
+## deviation.
 ##
 ## @seealso{mean, std, center}
 ## @end deftypefn
--- a/scripts/statistics/distributions/betainv.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/distributions/betainv.m	Sun May 10 21:37:19 2015 -0700
@@ -19,9 +19,8 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} betainv (@var{x}, @var{a}, @var{b})
-## For each element of @var{x}, compute the quantile (the inverse of
-## the CDF) at @var{x} of the Beta distribution with parameters @var{a}
-## and @var{b}.
+## For each element of @var{x}, compute the quantile (the inverse of the CDF)
+## at @var{x} of the Beta distribution with parameters @var{a} and @var{b}.
 ## @end deftypefn
 
 ## Author: KH <Kurt.Hornik@wu-wien.ac.at>
--- a/scripts/statistics/distributions/binoinv.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/distributions/binoinv.m	Sun May 10 21:37:19 2015 -0700
@@ -19,8 +19,8 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} binoinv (@var{x}, @var{n}, @var{p})
-## For each element of @var{x}, compute the quantile (the inverse of
-## the CDF) at @var{x} of the binomial distribution with parameters
+## For each element of @var{x}, compute the quantile (the inverse of the CDF)
+## at @var{x} of the binomial distribution with parameters
 ## @var{n} and @var{p}, where @var{n} is the number of trials and
 ## @var{p} is the probability of success.
 ## @end deftypefn
--- a/scripts/statistics/distributions/binopdf.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/distributions/binopdf.m	Sun May 10 21:37:19 2015 -0700
@@ -19,10 +19,10 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} binopdf (@var{x}, @var{n}, @var{p})
-## For each element of @var{x}, compute the probability density function
-## (PDF) at @var{x} of the binomial distribution with parameters @var{n}
-## and @var{p}, where @var{n} is the number of trials and @var{p} is the
-## probability of success.
+## For each element of @var{x}, compute the probability density function (PDF)
+## at @var{x} of the binomial distribution with parameters @var{n} and @var{p},
+## where @var{n} is the number of trials and @var{p} is the probability of
+## success.
 ## @end deftypefn
 
 ## Author: KH <Kurt.Hornik@wu-wien.ac.at>
--- a/scripts/statistics/distributions/cauchy_cdf.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/distributions/cauchy_cdf.m	Sun May 10 21:37:19 2015 -0700
@@ -20,10 +20,11 @@
 ## -*- texinfo -*-
 ## @deftypefn  {Function File} {} cauchy_cdf (@var{x})
 ## @deftypefnx {Function File} {} cauchy_cdf (@var{x}, @var{location}, @var{scale})
-## For each element of @var{x}, compute the cumulative distribution
-## function (CDF) at @var{x} of the Cauchy distribution with location
-## parameter @var{location} and scale parameter @var{scale}.  Default
-## values are @var{location} = 0, @var{scale} = 1.
+## For each element of @var{x}, compute the cumulative distribution function
+## (CDF) at @var{x} of the Cauchy distribution with location parameter
+## @var{location} and scale parameter @var{scale}.
+##
+## Default values are @var{location} = 0, @var{scale} = 1.
 ## @end deftypefn
 
 ## Author: KH <Kurt.Hornik@wu-wien.ac.at>
--- a/scripts/statistics/distributions/cauchy_inv.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/distributions/cauchy_inv.m	Sun May 10 21:37:19 2015 -0700
@@ -20,10 +20,11 @@
 ## -*- texinfo -*-
 ## @deftypefn  {Function File} {} cauchy_inv (@var{x})
 ## @deftypefnx {Function File} {} cauchy_inv (@var{x}, @var{location}, @var{scale})
-## For each element of @var{x}, compute the quantile (the inverse of the
-## CDF) at @var{x} of the Cauchy distribution with location parameter
-## @var{location} and scale parameter @var{scale}.  Default values are
-## @var{location} = 0, @var{scale} = 1.
+## For each element of @var{x}, compute the quantile (the inverse of the CDF)
+## at @var{x} of the Cauchy distribution with location parameter
+## @var{location} and scale parameter @var{scale}.
+##
+## Default values are @var{location} = 0, @var{scale} = 1.
 ## @end deftypefn
 
 ## Author: KH <Kurt.Hornik@wu-wien.ac.at>
--- a/scripts/statistics/distributions/cauchy_pdf.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/distributions/cauchy_pdf.m	Sun May 10 21:37:19 2015 -0700
@@ -20,10 +20,11 @@
 ## -*- texinfo -*-
 ## @deftypefn  {Function File} {} cauchy_pdf (@var{x})
 ## @deftypefnx {Function File} {} cauchy_pdf (@var{x}, @var{location}, @var{scale})
-## For each element of @var{x}, compute the probability density function
-## (PDF) at @var{x} of the Cauchy distribution with location parameter
-## @var{location} and scale parameter @var{scale} > 0.  Default values are
-## @var{location} = 0, @var{scale} = 1.
+## For each element of @var{x}, compute the probability density function (PDF)
+## at @var{x} of the Cauchy distribution with location parameter
+## @var{location} and scale parameter @var{scale} > 0.
+##
+## Default values are @var{location} = 0, @var{scale} = 1.
 ## @end deftypefn
 
 ## Author: KH <Kurt.Hornik@wu-wien.ac.at>
--- a/scripts/statistics/distributions/chi2cdf.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/distributions/chi2cdf.m	Sun May 10 21:37:19 2015 -0700
@@ -19,9 +19,9 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} chi2cdf (@var{x}, @var{n})
-## For each element of @var{x}, compute the cumulative distribution
-## function (CDF) at @var{x} of the chi-square distribution with @var{n}
-## degrees of freedom.
+## For each element of @var{x}, compute the cumulative distribution function
+## (CDF) at @var{x} of the chi-square distribution with @var{n} degrees of
+## freedom.
 ## @end deftypefn
 
 ## Author: TT <Teresa.Twaroch@ci.tuwien.ac.at>
--- a/scripts/statistics/distributions/chi2inv.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/distributions/chi2inv.m	Sun May 10 21:37:19 2015 -0700
@@ -19,9 +19,8 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} chi2inv (@var{x}, @var{n})
-## For each element of @var{x}, compute the quantile (the inverse of the
-## CDF) at @var{x} of the chi-square distribution with @var{n} degrees of
-## freedom.
+## For each element of @var{x}, compute the quantile (the inverse of the CDF)
+## at @var{x} of the chi-square distribution with @var{n} degrees of freedom.
 ## @end deftypefn
 
 ## Author: TT <Teresa.Twaroch@ci.tuwien.ac.at>
--- a/scripts/statistics/distributions/chi2pdf.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/distributions/chi2pdf.m	Sun May 10 21:37:19 2015 -0700
@@ -19,9 +19,8 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} chi2pdf (@var{x}, @var{n})
-## For each element of @var{x}, compute the probability density function
-## (PDF) at @var{x} of the chi-square distribution with @var{n} degrees
-## of freedom.
+## For each element of @var{x}, compute the probability density function (PDF)
+## at @var{x} of the chi-square distribution with @var{n} degrees of freedom.
 ## @end deftypefn
 
 ## Author: TT <Teresa.Twaroch@ci.tuwien.ac.at>
--- a/scripts/statistics/distributions/discrete_cdf.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/distributions/discrete_cdf.m	Sun May 10 21:37:19 2015 -0700
@@ -19,9 +19,9 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} discrete_cdf (@var{x}, @var{v}, @var{p})
-## For each element of @var{x}, compute the cumulative distribution
-## function (CDF) at @var{x} of a univariate discrete distribution which
-## assumes the values in @var{v} with probabilities @var{p}.
+## For each element of @var{x}, compute the cumulative distribution function
+## (CDF) at @var{x} of a univariate discrete distribution which assumes the
+## values in @var{v} with probabilities @var{p}.
 ## @end deftypefn
 
 function cdf = discrete_cdf (x, v, p)
--- a/scripts/statistics/distributions/discrete_inv.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/distributions/discrete_inv.m	Sun May 10 21:37:19 2015 -0700
@@ -19,9 +19,9 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} discrete_inv (@var{x}, @var{v}, @var{p})
-## For each element of @var{x}, compute the quantile (the inverse of
-## the CDF) at @var{x} of the univariate distribution which assumes the
-## values in @var{v} with probabilities @var{p}.
+## For each element of @var{x}, compute the quantile (the inverse of the CDF)
+## at @var{x} of the univariate distribution which assumes the values in
+## @var{v} with probabilities @var{p}.
 ## @end deftypefn
 
 ## Author: KH <Kurt.Hornik@wu-wien.ac.at>
--- a/scripts/statistics/distributions/discrete_pdf.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/distributions/discrete_pdf.m	Sun May 10 21:37:19 2015 -0700
@@ -19,9 +19,9 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} discrete_pdf (@var{x}, @var{v}, @var{p})
-## For each element of @var{x}, compute the probability density function
-## (PDF) at @var{x} of a univariate discrete distribution which assumes
-## the values in @var{v} with probabilities @var{p}.
+## For each element of @var{x}, compute the probability density function (PDF)
+## at @var{x} of a univariate discrete distribution which assumes the values
+## in @var{v} with probabilities @var{p}.
 ## @end deftypefn
 
 ## Author: KH <Kurt.Hornik@wu-wien.ac.at>
--- a/scripts/statistics/distributions/empirical_cdf.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/distributions/empirical_cdf.m	Sun May 10 21:37:19 2015 -0700
@@ -19,8 +19,8 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} empirical_cdf (@var{x}, @var{data})
-## For each element of @var{x}, compute the cumulative distribution
-## function (CDF) at @var{x} of the empirical distribution obtained from
+## For each element of @var{x}, compute the cumulative distribution function
+## (CDF) at @var{x} of the empirical distribution obtained from
 ## the univariate sample @var{data}.
 ## @end deftypefn
 
--- a/scripts/statistics/distributions/empirical_inv.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/distributions/empirical_inv.m	Sun May 10 21:37:19 2015 -0700
@@ -19,8 +19,8 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} empirical_inv (@var{x}, @var{data})
-## For each element of @var{x}, compute the quantile (the inverse of the
-## CDF) at @var{x} of the empirical distribution obtained from the
+## For each element of @var{x}, compute the quantile (the inverse of the CDF)
+## at @var{x} of the empirical distribution obtained from the
 ## univariate sample @var{data}.
 ## @end deftypefn
 
--- a/scripts/statistics/distributions/empirical_pdf.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/distributions/empirical_pdf.m	Sun May 10 21:37:19 2015 -0700
@@ -19,8 +19,8 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} empirical_pdf (@var{x}, @var{data})
-## For each element of @var{x}, compute the probability density function
-## (PDF) at @var{x} of the empirical distribution obtained from the
+## For each element of @var{x}, compute the probability density function (PDF)
+## at @var{x} of the empirical distribution obtained from the
 ## univariate sample @var{data}.
 ## @end deftypefn
 
--- a/scripts/statistics/distributions/expcdf.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/distributions/expcdf.m	Sun May 10 21:37:19 2015 -0700
@@ -19,9 +19,8 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} expcdf (@var{x}, @var{lambda})
-## For each element of @var{x}, compute the cumulative distribution
-## function (CDF) at @var{x} of the exponential distribution with
-## mean @var{lambda}.
+## For each element of @var{x}, compute the cumulative distribution function
+## (CDF) at @var{x} of the exponential distribution with mean @var{lambda}.
 ##
 ## The arguments can be of common size or scalars.
 ## @end deftypefn
--- a/scripts/statistics/distributions/expinv.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/distributions/expinv.m	Sun May 10 21:37:19 2015 -0700
@@ -19,8 +19,8 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} expinv (@var{x}, @var{lambda})
-## For each element of @var{x}, compute the quantile (the inverse of the
-## CDF) at @var{x} of the exponential distribution with mean @var{lambda}.
+## For each element of @var{x}, compute the quantile (the inverse of the CDF)
+## at @var{x} of the exponential distribution with mean @var{lambda}.
 ## @end deftypefn
 
 ## Author: KH <Kurt.Hornik@wu-wien.ac.at>
--- a/scripts/statistics/distributions/exppdf.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/distributions/exppdf.m	Sun May 10 21:37:19 2015 -0700
@@ -19,8 +19,8 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} exppdf (@var{x}, @var{lambda})
-## For each element of @var{x}, compute the probability density function
-## (PDF) at @var{x} of the exponential distribution with mean @var{lambda}.
+## For each element of @var{x}, compute the probability density function (PDF)
+## at @var{x} of the exponential distribution with mean @var{lambda}.
 ## @end deftypefn
 
 ## Author: KH <Kurt.Hornik@wu-wien.ac.at>
--- a/scripts/statistics/distributions/finv.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/distributions/finv.m	Sun May 10 21:37:19 2015 -0700
@@ -19,9 +19,8 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} finv (@var{x}, @var{m}, @var{n})
-## For each element of @var{x}, compute the quantile (the inverse of
-## the CDF) at @var{x} of the F distribution with @var{m} and @var{n}
-## degrees of freedom.
+## For each element of @var{x}, compute the quantile (the inverse of the CDF)
+## at @var{x} of the F distribution with @var{m} and @var{n} degrees of freedom.
 ## @end deftypefn
 
 ## Author: KH <Kurt.Hornik@wu-wien.ac.at>
--- a/scripts/statistics/distributions/fpdf.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/distributions/fpdf.m	Sun May 10 21:37:19 2015 -0700
@@ -19,9 +19,8 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} fpdf (@var{x}, @var{m}, @var{n})
-## For each element of @var{x}, compute the probability density function
-## (PDF) at @var{x} of the F distribution with @var{m} and @var{n}
-## degrees of freedom.
+## For each element of @var{x}, compute the probability density function (PDF)
+## at @var{x} of the F distribution with @var{m} and @var{n} degrees of freedom.
 ## @end deftypefn
 
 ## Author: KH <Kurt.Hornik@wu-wien.ac.at>
--- a/scripts/statistics/distributions/gamcdf.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/distributions/gamcdf.m	Sun May 10 21:37:19 2015 -0700
@@ -19,9 +19,9 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} gamcdf (@var{x}, @var{a}, @var{b})
-## For each element of @var{x}, compute the cumulative distribution
-## function (CDF) at @var{x} of the Gamma distribution with shape
-## parameter @var{a} and scale @var{b}.
+## For each element of @var{x}, compute the cumulative distribution function
+## (CDF) at @var{x} of the Gamma distribution with shape parameter @var{a} and
+## scale @var{b}.
 ## @end deftypefn
 
 ## Author: TT <Teresa.Twaroch@ci.tuwien.ac.at>
--- a/scripts/statistics/distributions/gaminv.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/distributions/gaminv.m	Sun May 10 21:37:19 2015 -0700
@@ -19,9 +19,9 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} gaminv (@var{x}, @var{a}, @var{b})
-## For each element of @var{x}, compute the quantile (the inverse of
-## the CDF) at @var{x} of the Gamma distribution with shape parameter
-## @var{a} and scale @var{b}.
+## For each element of @var{x}, compute the quantile (the inverse of the CDF)
+## at @var{x} of the Gamma distribution with shape parameter @var{a} and
+## scale @var{b}.
 ## @end deftypefn
 
 ## Author: KH <Kurt.Hornik@wu-wien.ac.at>
--- a/scripts/statistics/distributions/gampdf.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/distributions/gampdf.m	Sun May 10 21:37:19 2015 -0700
@@ -20,8 +20,8 @@
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} gampdf (@var{x}, @var{a}, @var{b})
 ## For each element of @var{x}, return the probability density function
-## (PDF) at @var{x} of the Gamma distribution with shape parameter
-## @var{a} and scale @var{b}.
+## (PDF) at @var{x} of the Gamma distribution with shape parameter @var{a} and
+## scale @var{b}.
 ## @end deftypefn
 
 ## Author: TT <Teresa.Twaroch@ci.tuwien.ac.at>
--- a/scripts/statistics/distributions/geoinv.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/distributions/geoinv.m	Sun May 10 21:37:19 2015 -0700
@@ -19,8 +19,8 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} geoinv (@var{x}, @var{p})
-## For each element of @var{x}, compute the quantile (the inverse of
-## the CDF) at @var{x} of the geometric distribution with parameter @var{p}.
+## For each element of @var{x}, compute the quantile (the inverse of the CDF)
+## at @var{x} of the geometric distribution with parameter @var{p}.
 ##
 ## The geometric distribution models the number of failures (@var{x}-1) of a
 ## Bernoulli trial with probability @var{p} before the first success (@var{x}).
--- a/scripts/statistics/distributions/geopdf.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/distributions/geopdf.m	Sun May 10 21:37:19 2015 -0700
@@ -19,8 +19,8 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} geopdf (@var{x}, @var{p})
-## For each element of @var{x}, compute the probability density function
-## (PDF) at @var{x} of the geometric distribution with parameter @var{p}.
+## For each element of @var{x}, compute the probability density function (PDF)
+## at @var{x} of the geometric distribution with parameter @var{p}.
 ##
 ## The geometric distribution models the number of failures (@var{x}-1) of a
 ## Bernoulli trial with probability @var{p} before the first success (@var{x}).
--- a/scripts/statistics/distributions/hygecdf.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/distributions/hygecdf.m	Sun May 10 21:37:19 2015 -0700
@@ -20,11 +20,11 @@
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} hygecdf (@var{x}, @var{t}, @var{m}, @var{n})
 ## Compute the cumulative distribution function (CDF) at @var{x} of the
-## hypergeometric distribution with parameters @var{t}, @var{m}, and
-## @var{n}.  This is the probability of obtaining not more than @var{x}
-## marked items when randomly drawing a sample of size @var{n} without
-## replacement from a population of total size @var{t} containing
-## @var{m} marked items.
+## hypergeometric distribution with parameters @var{t}, @var{m}, and @var{n}.
+##
+## This is the probability of obtaining not more than @var{x} marked items
+## when randomly drawing a sample of size @var{n} without replacement from a
+## population of total size @var{t} containing @var{m} marked items.
 ##
 ## The parameters @var{t}, @var{m}, and @var{n} must be positive integers
 ## with @var{m} and @var{n} not greater than @var{t}.
--- a/scripts/statistics/distributions/hygeinv.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/distributions/hygeinv.m	Sun May 10 21:37:19 2015 -0700
@@ -19,12 +19,13 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} hygeinv (@var{x}, @var{t}, @var{m}, @var{n})
-## For each element of @var{x}, compute the quantile (the inverse of
-## the CDF) at @var{x} of the hypergeometric distribution with parameters
-## @var{t}, @var{m}, and @var{n}.  This is the probability of obtaining @var{x}
-## marked items when randomly drawing a sample of size @var{n} without
-## replacement from a population of total size @var{t} containing @var{m}
-## marked items.
+## For each element of @var{x}, compute the quantile (the inverse of the CDF)
+## at @var{x} of the hypergeometric distribution with parameters
+## @var{t}, @var{m}, and @var{n}.
+##
+## This is the probability of obtaining @var{x} marked items when randomly
+## drawing a sample of size @var{n} without replacement from a population of
+## total size @var{t} containing @var{m} marked items.
 ##
 ## The parameters @var{t}, @var{m}, and @var{n} must be positive integers
 ## with @var{m} and @var{n} not greater than @var{t}.
--- a/scripts/statistics/distributions/hygepdf.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/distributions/hygepdf.m	Sun May 10 21:37:19 2015 -0700
@@ -20,10 +20,11 @@
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} hygepdf (@var{x}, @var{t}, @var{m}, @var{n})
 ## Compute the probability density function (PDF) at @var{x} of the
-## hypergeometric distribution with parameters @var{t}, @var{m}, and
-## @var{n}.  This is the probability of obtaining @var{x} marked items
-## when randomly drawing a sample of size @var{n} without replacement
-## from a population of total size @var{t} containing @var{m} marked items.
+## hypergeometric distribution with parameters @var{t}, @var{m}, and @var{n}.
+##
+## This is the probability of obtaining @var{x} marked items when randomly
+## drawing a sample of size @var{n} without replacement from a population of
+## total size @var{t} containing @var{m} marked items.
 ##
 ## The parameters @var{t}, @var{m}, and @var{n} must be positive integers
 ## with @var{m} and @var{n} not greater than @var{t}.
--- a/scripts/statistics/distributions/kolmogorov_smirnov_cdf.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/distributions/kolmogorov_smirnov_cdf.m	Sun May 10 21:37:19 2015 -0700
@@ -20,7 +20,9 @@
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} kolmogorov_smirnov_cdf (@var{x}, @var{tol})
 ## Return the cumulative distribution function (CDF) at @var{x} of the
-## Kolmogorov-Smirnov distribution,
+## Kolmogorov-Smirnov distribution.
+##
+## This is defined as
 ## @tex
 ## $$ Q(x) = \sum_{k=-\infty}^\infty (-1)^k \exp (-2 k^2 x^2) $$
 ## @end tex
--- a/scripts/statistics/distributions/laplace_cdf.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/distributions/laplace_cdf.m	Sun May 10 21:37:19 2015 -0700
@@ -19,8 +19,8 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} laplace_cdf (@var{x})
-## For each element of @var{x}, compute the cumulative distribution
-## function (CDF) at @var{x} of the Laplace distribution.
+## For each element of @var{x}, compute the cumulative distribution function
+## (CDF) at @var{x} of the Laplace distribution.
 ## @end deftypefn
 
 ## Author: KH <Kurt.Hornik@wu-wien.ac.at>
--- a/scripts/statistics/distributions/laplace_inv.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/distributions/laplace_inv.m	Sun May 10 21:37:19 2015 -0700
@@ -19,8 +19,8 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} laplace_inv (@var{x})
-## For each element of @var{x}, compute the quantile (the inverse of the
-## CDF) at @var{x} of the Laplace distribution.
+## For each element of @var{x}, compute the quantile (the inverse of the CDF)
+## at @var{x} of the Laplace distribution.
 ## @end deftypefn
 
 ## Author: KH <Kurt.Hornik@wu-wien.ac.at>
--- a/scripts/statistics/distributions/laplace_pdf.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/distributions/laplace_pdf.m	Sun May 10 21:37:19 2015 -0700
@@ -19,8 +19,8 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} laplace_pdf (@var{x})
-## For each element of @var{x}, compute the probability density function
-## (PDF) at @var{x} of the Laplace distribution.
+## For each element of @var{x}, compute the probability density function (PDF)
+## at @var{x} of the Laplace distribution.
 ## @end deftypefn
 
 ## Author: KH <Kurt.Hornik@wu-wien.ac.at>
--- a/scripts/statistics/distributions/logistic_inv.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/distributions/logistic_inv.m	Sun May 10 21:37:19 2015 -0700
@@ -19,8 +19,8 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} logistic_inv (@var{x})
-## For each element of @var{x}, compute the quantile (the inverse of
-## the CDF) at @var{x} of the logistic distribution.
+## For each element of @var{x}, compute the quantile (the inverse of the CDF)
+## at @var{x} of the logistic distribution.
 ## @end deftypefn
 
 ## Author: KH <Kurt.Hornik@wu-wien.ac.at>
--- a/scripts/statistics/distributions/logncdf.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/distributions/logncdf.m	Sun May 10 21:37:19 2015 -0700
@@ -22,9 +22,10 @@
 ## @deftypefnx {Function File} {} logncdf (@var{x}, @var{mu}, @var{sigma})
 ## For each element of @var{x}, compute the cumulative distribution function
 ## (CDF) at @var{x} of the lognormal distribution with parameters
-## @var{mu} and @var{sigma}.  If a random variable follows this distribution,
-## its logarithm is normally distributed with mean @var{mu} and standard
-## deviation @var{sigma}.
+## @var{mu} and @var{sigma}.
+##
+## If a random variable follows this distribution, its logarithm is normally
+## distributed with mean @var{mu} and standard deviation @var{sigma}.
 ##
 ## Default values are @var{mu} = 0, @var{sigma} = 1.
 ## @end deftypefn
--- a/scripts/statistics/distributions/logninv.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/distributions/logninv.m	Sun May 10 21:37:19 2015 -0700
@@ -20,11 +20,12 @@
 ## -*- texinfo -*-
 ## @deftypefn  {Function File} {} logninv (@var{x})
 ## @deftypefnx {Function File} {} logninv (@var{x}, @var{mu}, @var{sigma})
-## For each element of @var{x}, compute the quantile (the inverse of the
-## CDF) at @var{x} of the lognormal distribution with parameters
-## @var{mu} and @var{sigma}.  If a random variable follows this distribution,
-## its logarithm is normally distributed with mean @var{mu} and standard
-## deviation @var{sigma}.
+## For each element of @var{x}, compute the quantile (the inverse of the CDF)
+## at @var{x} of the lognormal distribution with parameters
+## @var{mu} and @var{sigma}.
+##
+## If a random variable follows this distribution, its logarithm is normally
+## distributed with mean @var{mu} and standard deviation @var{sigma}.
 ##
 ## Default values are @var{mu} = 0, @var{sigma} = 1.
 ## @end deftypefn
--- a/scripts/statistics/distributions/lognpdf.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/distributions/lognpdf.m	Sun May 10 21:37:19 2015 -0700
@@ -20,11 +20,12 @@
 ## -*- texinfo -*-
 ## @deftypefn  {Function File} {} lognpdf (@var{x})
 ## @deftypefnx {Function File} {} lognpdf (@var{x}, @var{mu}, @var{sigma})
-## For each element of @var{x}, compute the probability density function
-## (PDF) at @var{x} of the lognormal distribution with parameters
-## @var{mu} and @var{sigma}.  If a random variable follows this distribution,
-## its logarithm is normally distributed with mean @var{mu} and standard
-## deviation @var{sigma}.
+## For each element of @var{x}, compute the probability density function (PDF)
+## at @var{x} of the lognormal distribution with parameters
+## @var{mu} and @var{sigma}.
+##
+## If a random variable follows this distribution, its logarithm is normally
+## distributed with mean @var{mu} and standard deviation @var{sigma}.
 ##
 ## Default values are @var{mu} = 0, @var{sigma} = 1.
 ## @end deftypefn
--- a/scripts/statistics/distributions/nbincdf.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/distributions/nbincdf.m	Sun May 10 21:37:19 2015 -0700
@@ -20,15 +20,14 @@
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} nbincdf (@var{x}, @var{n}, @var{p})
 ## For each element of @var{x}, compute the cumulative distribution function
-## (CDF) at @var{x} of the negative binomial distribution with
-## parameters @var{n} and @var{p}.
+## (CDF) at @var{x} of the negative binomial distribution with parameters
+## @var{n} and @var{p}.
 ##
-## When @var{n} is integer this is the Pascal distribution.  When
-## @var{n} is extended to real numbers this is the Polya distribution.
+## When @var{n} is integer this is the Pascal distribution.
+## When @var{n} is extended to real numbers this is the Polya distribution.
 ##
-## The number of failures in a Bernoulli experiment with success
-## probability @var{p} before the @var{n}-th success follows this
-## distribution.
+## The number of failures in a Bernoulli experiment with success probability
+## @var{p} before the @var{n}-th success follows this distribution.
 ## @end deftypefn
 
 ## Author: KH <Kurt.Hornik@wu-wien.ac.at>
--- a/scripts/statistics/distributions/nbininv.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/distributions/nbininv.m	Sun May 10 21:37:19 2015 -0700
@@ -19,16 +19,15 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} nbininv (@var{x}, @var{n}, @var{p})
-## For each element of @var{x}, compute the quantile (the inverse of
-## the CDF) at @var{x} of the negative binomial distribution
-## with parameters @var{n} and @var{p}.
+## For each element of @var{x}, compute the quantile (the inverse of the CDF)
+## at @var{x} of the negative binomial distribution with parameters
+## @var{n} and @var{p}.
 ##
-## When @var{n} is integer this is the Pascal distribution.  When
-## @var{n} is extended to real numbers this is the Polya distribution.
+## When @var{n} is integer this is the Pascal distribution.
+## When @var{n} is extended to real numbers this is the Polya distribution.
 ##
-## The number of failures in a Bernoulli experiment with success
-## probability @var{p} before the @var{n}-th success follows this
-## distribution.
+## The number of failures in a Bernoulli experiment with success probability
+## @var{p} before the @var{n}-th success follows this distribution.
 ## @end deftypefn
 
 ## Author: KH <Kurt.Hornik@wu-wien.ac.at>
--- a/scripts/statistics/distributions/nbinpdf.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/distributions/nbinpdf.m	Sun May 10 21:37:19 2015 -0700
@@ -19,16 +19,15 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} nbinpdf (@var{x}, @var{n}, @var{p})
-## For each element of @var{x}, compute the probability density function
-## (PDF) at @var{x} of the negative binomial distribution with
-## parameters @var{n} and @var{p}.
+## For each element of @var{x}, compute the probability density function (PDF)
+## at @var{x} of the negative binomial distribution with parameters
+## @var{n} and @var{p}.
 ##
-## When @var{n} is integer this is the Pascal distribution.  When
-## @var{n} is extended to real numbers this is the Polya distribution.
+## When @var{n} is integer this is the Pascal distribution.
+## When @var{n} is extended to real numbers this is the Polya distribution.
 ##
-## The number of failures in a Bernoulli experiment with success
-## probability @var{p} before the @var{n}-th success follows this
-## distribution.
+## The number of failures in a Bernoulli experiment with success probability
+## @var{p} before the @var{n}-th success follows this distribution.
 ## @end deftypefn
 
 ## Author: KH <Kurt.Hornik@wu-wien.ac.at>
--- a/scripts/statistics/distributions/nbinrnd.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/distributions/nbinrnd.m	Sun May 10 21:37:19 2015 -0700
@@ -22,8 +22,8 @@
 ## @deftypefnx {Function File} {} nbinrnd (@var{n}, @var{p}, @var{r})
 ## @deftypefnx {Function File} {} nbinrnd (@var{n}, @var{p}, @var{r}, @var{c}, @dots{})
 ## @deftypefnx {Function File} {} nbinrnd (@var{n}, @var{p}, [@var{sz}])
-## Return a matrix of random samples from the negative binomial
-## distribution with parameters @var{n} and @var{p}.
+## Return a matrix of random samples from the negative binomial distribution
+## with parameters @var{n} and @var{p}.
 ##
 ## When called with a single size argument, return a square matrix with
 ## the dimension specified.  When called with more than one scalar argument the
--- a/scripts/statistics/distributions/normcdf.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/distributions/normcdf.m	Sun May 10 21:37:19 2015 -0700
@@ -20,9 +20,9 @@
 ## -*- texinfo -*-
 ## @deftypefn  {Function File} {} normcdf (@var{x})
 ## @deftypefnx {Function File} {} normcdf (@var{x}, @var{mu}, @var{sigma})
-## For each element of @var{x}, compute the cumulative distribution
-## function (CDF) at @var{x} of the normal distribution with mean
-## @var{mu} and standard deviation @var{sigma}.
+## For each element of @var{x}, compute the cumulative distribution function
+## (CDF) at @var{x} of the normal distribution with mean @var{mu} and
+## standard deviation @var{sigma}.
 ##
 ## Default values are @var{mu} = 0, @var{sigma} = 1.
 ## @end deftypefn
--- a/scripts/statistics/distributions/norminv.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/distributions/norminv.m	Sun May 10 21:37:19 2015 -0700
@@ -20,8 +20,8 @@
 ## -*- texinfo -*-
 ## @deftypefn  {Function File} {} norminv (@var{x})
 ## @deftypefnx {Function File} {} norminv (@var{x}, @var{mu}, @var{sigma})
-## For each element of @var{x}, compute the quantile (the inverse of the
-## CDF) at @var{x} of the normal distribution with mean @var{mu} and
+## For each element of @var{x}, compute the quantile (the inverse of the CDF)
+## at @var{x} of the normal distribution with mean @var{mu} and
 ## standard deviation @var{sigma}.
 ##
 ## Default values are @var{mu} = 0, @var{sigma} = 1.
--- a/scripts/statistics/distributions/normpdf.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/distributions/normpdf.m	Sun May 10 21:37:19 2015 -0700
@@ -20,8 +20,8 @@
 ## -*- texinfo -*-
 ## @deftypefn  {Function File} {} normpdf (@var{x})
 ## @deftypefnx {Function File} {} normpdf (@var{x}, @var{mu}, @var{sigma})
-## For each element of @var{x}, compute the probability density function
-## (PDF) at @var{x} of the normal distribution with mean @var{mu} and
+## For each element of @var{x}, compute the probability density function (PDF)
+## at @var{x} of the normal distribution with mean @var{mu} and
 ## standard deviation @var{sigma}.
 ##
 ## Default values are @var{mu} = 0, @var{sigma} = 1.
--- a/scripts/statistics/distributions/poisscdf.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/distributions/poisscdf.m	Sun May 10 21:37:19 2015 -0700
@@ -19,9 +19,8 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} poisscdf (@var{x}, @var{lambda})
-## For each element of @var{x}, compute the cumulative distribution
-## function (CDF) at @var{x} of the Poisson distribution with parameter
-## lambda.
+## For each element of @var{x}, compute the cumulative distribution function
+## (CDF) at @var{x} of the Poisson distribution with parameter @var{lambda}.
 ## @end deftypefn
 
 ## Author: KH <Kurt.Hornik@wu-wien.ac.at>
--- a/scripts/statistics/distributions/poissinv.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/distributions/poissinv.m	Sun May 10 21:37:19 2015 -0700
@@ -19,9 +19,8 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} poissinv (@var{x}, @var{lambda})
-## For each element of @var{x}, compute the quantile (the inverse of
-## the CDF) at @var{x} of the Poisson distribution with parameter
-## @var{lambda}.
+## For each element of @var{x}, compute the quantile (the inverse of the CDF)
+## at @var{x} of the Poisson distribution with parameter @var{lambda}.
 ## @end deftypefn
 
 ## Author: KH <Kurt.Hornik@wu-wien.ac.at>
--- a/scripts/statistics/distributions/poisspdf.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/distributions/poisspdf.m	Sun May 10 21:37:19 2015 -0700
@@ -19,8 +19,8 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} poisspdf (@var{x}, @var{lambda})
-## For each element of @var{x}, compute the probability density function
-## (PDF) at @var{x} of the Poisson distribution with parameter @var{lambda}.
+## For each element of @var{x}, compute the probability density function (PDF)
+## at @var{x} of the Poisson distribution with parameter @var{lambda}.
 ## @end deftypefn
 
 ## Author: KH <Kurt.Hornik@wu-wien.ac.at>
--- a/scripts/statistics/distributions/stdnormal_cdf.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/distributions/stdnormal_cdf.m	Sun May 10 21:37:19 2015 -0700
@@ -19,8 +19,8 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} stdnormal_cdf (@var{x})
-## For each element of @var{x}, compute the cumulative distribution
-## function (CDF) at @var{x} of the standard normal distribution
+## For each element of @var{x}, compute the cumulative distribution function
+## (CDF) at @var{x} of the standard normal distribution
 ## (mean = 0, standard deviation = 1).
 ## @end deftypefn
 
--- a/scripts/statistics/distributions/stdnormal_pdf.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/distributions/stdnormal_pdf.m	Sun May 10 21:37:19 2015 -0700
@@ -19,9 +19,9 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} stdnormal_pdf (@var{x})
-## For each element of @var{x}, compute the probability density function
-## (PDF) at @var{x} of the standard normal distribution (mean = 0,
-## standard deviation = 1).
+## For each element of @var{x}, compute the probability density function (PDF)
+## at @var{x} of the standard normal distribution
+## (mean = 0, standard deviation = 1).
 ## @end deftypefn
 
 ## Author: TT <Teresa.Twaroch@ci.tuwien.ac.at>
--- a/scripts/statistics/distributions/tcdf.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/distributions/tcdf.m	Sun May 10 21:37:19 2015 -0700
@@ -20,9 +20,9 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} tcdf (@var{x}, @var{n})
-## For each element of @var{x}, compute the cumulative distribution
-## function (CDF) at @var{x} of the t (Student) distribution with
-## @var{n} degrees of freedom, i.e., PROB (t(@var{n}) @leq{} @var{x}).
+## For each element of @var{x}, compute the cumulative distribution function
+## (CDF) at @var{x} of the t (Student) distribution with
+## @var{n} degrees of freedom.
 ## @end deftypefn
 
 ## Author: KH <Kurt.Hornik@wu-wien.ac.at>
--- a/scripts/statistics/distributions/tinv.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/distributions/tinv.m	Sun May 10 21:37:19 2015 -0700
@@ -19,10 +19,12 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} tinv (@var{x}, @var{n})
-## For each element of @var{x}, compute the quantile (the inverse of
-## the CDF) at @var{x} of the t (Student) distribution with @var{n}
-## degrees of freedom.  This function is analogous to looking in a table
-## for the t-value of a single-tailed distribution.
+## For each element of @var{x}, compute the quantile (the inverse of the CDF)
+## at @var{x} of the t (Student) distribution with @var{n}
+## degrees of freedom.
+##
+## This function is analogous to looking in a table for the t-value of a
+## single-tailed distribution.
 ## @end deftypefn
 
 ## For very large n, the "correct" formula does not really work well,
--- a/scripts/statistics/distributions/tpdf.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/distributions/tpdf.m	Sun May 10 21:37:19 2015 -0700
@@ -19,9 +19,9 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} tpdf (@var{x}, @var{n})
-## For each element of @var{x}, compute the probability density function
-## (PDF) at @var{x} of the @var{t} (Student) distribution with @var{n}
-## degrees of freedom.
+## For each element of @var{x}, compute the probability density function (PDF)
+## at @var{x} of the @var{t} (Student) distribution with
+## @var{n} degrees of freedom.
 ## @end deftypefn
 
 ## Author: KH <Kurt.Hornik@wu-wien.ac.at>
--- a/scripts/statistics/distributions/unidcdf.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/distributions/unidcdf.m	Sun May 10 21:37:19 2015 -0700
@@ -19,8 +19,8 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} unidcdf (@var{x}, @var{n})
-## For each element of @var{x}, compute the cumulative distribution
-## function (CDF) at @var{x} of a discrete uniform distribution which assumes
+## For each element of @var{x}, compute the cumulative distribution function
+## (CDF) at @var{x} of a discrete uniform distribution which assumes
 ## the integer values 1--@var{n} with equal probability.
 ## @end deftypefn
 
--- a/scripts/statistics/distributions/unidinv.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/distributions/unidinv.m	Sun May 10 21:37:19 2015 -0700
@@ -19,8 +19,8 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} unidinv (@var{x}, @var{n})
-## For each element of @var{x}, compute the quantile (the inverse of
-## the CDF) at @var{x} of the discrete uniform distribution which assumes
+## For each element of @var{x}, compute the quantile (the inverse of the CDF)
+## at @var{x} of the discrete uniform distribution which assumes
 ## the integer values 1--@var{n} with equal probability.
 ## @end deftypefn
 
--- a/scripts/statistics/distributions/unidpdf.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/distributions/unidpdf.m	Sun May 10 21:37:19 2015 -0700
@@ -19,13 +19,13 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} unidpdf (@var{x}, @var{n})
-## For each element of @var{x}, compute the probability density function
-## (PDF) at @var{x} of a discrete uniform distribution which assumes
+## For each element of @var{x}, compute the probability density function (PDF)
+## at @var{x} of a discrete uniform distribution which assumes
 ## the integer values 1--@var{n} with equal probability.
 ##
-## Warning: The underlying implementation uses the double class and
-## will only be accurate for @var{n} @leq{} @code{bitmax}
-## (@w{@math{2^{53} - 1}} on IEEE-754 compatible systems).
+## Warning: The underlying implementation uses the double class and will only
+## be accurate for @var{n} @leq{} @code{bitmax} (@w{@math{2^{53} - 1}} on
+## IEEE-754 compatible systems).
 ## @end deftypefn
 
 function pdf = unidpdf (x, n)
--- a/scripts/statistics/distributions/unidrnd.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/distributions/unidrnd.m	Sun May 10 21:37:19 2015 -0700
@@ -24,6 +24,7 @@
 ## @deftypefnx {Function File} {} unidrnd (@var{n}, [@var{sz}])
 ## Return a matrix of random samples from the discrete uniform distribution
 ## which assumes the integer values 1--@var{n} with equal probability.
+##
 ## @var{n} may be a scalar or a multi-dimensional array.
 ##
 ## When called with a single size argument, return a square matrix with
--- a/scripts/statistics/distributions/unifcdf.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/distributions/unifcdf.m	Sun May 10 21:37:19 2015 -0700
@@ -20,8 +20,8 @@
 ## -*- texinfo -*-
 ## @deftypefn  {Function File} {} unifcdf (@var{x})
 ## @deftypefnx {Function File} {} unifcdf (@var{x}, @var{a}, @var{b})
-## For each element of @var{x}, compute the cumulative distribution
-## function (CDF) at @var{x} of the uniform distribution on the interval
+## For each element of @var{x}, compute the cumulative distribution function
+## (CDF) at @var{x} of the uniform distribution on the interval
 ## [@var{a}, @var{b}].
 ##
 ## Default values are @var{a} = 0, @var{b} = 1.
--- a/scripts/statistics/distributions/unifinv.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/distributions/unifinv.m	Sun May 10 21:37:19 2015 -0700
@@ -20,9 +20,8 @@
 ## -*- texinfo -*-
 ## @deftypefn  {Function File} {} unifinv (@var{x})
 ## @deftypefnx {Function File} {} unifinv (@var{x}, @var{a}, @var{b})
-## For each element of @var{x}, compute the quantile (the inverse of the
-## CDF) at @var{x} of the uniform distribution on the interval
-## [@var{a}, @var{b}].
+## For each element of @var{x}, compute the quantile (the inverse of the CDF)
+## at @var{x} of the uniform distribution on the interval [@var{a}, @var{b}].
 ##
 ## Default values are @var{a} = 0, @var{b} = 1.
 ## @end deftypefn
--- a/scripts/statistics/distributions/wblcdf.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/distributions/wblcdf.m	Sun May 10 21:37:19 2015 -0700
@@ -23,7 +23,9 @@
 ## @deftypefnx {Function File} {} wblcdf (@var{x}, @var{scale}, @var{shape})
 ## Compute the cumulative distribution function (CDF) at @var{x} of the
 ## Weibull distribution with scale parameter @var{scale} and shape
-## parameter @var{shape}, which is
+## parameter @var{shape}.
+##
+## This is defined as
 ## @tex
 ## $$ 1 - e^{-({x \over scale})^{shape}} $$
 ## for $x \geq 0$.
--- a/scripts/statistics/distributions/wblinv.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/distributions/wblinv.m	Sun May 10 21:37:19 2015 -0700
@@ -22,8 +22,8 @@
 ## @deftypefnx {Function File} {} wblinv (@var{x}, @var{scale})
 ## @deftypefnx {Function File} {} wblinv (@var{x}, @var{scale}, @var{shape})
 ## Compute the quantile (the inverse of the CDF) at @var{x} of the
-## Weibull distribution with scale parameter @var{scale} and shape
-## parameter @var{shape}.
+## Weibull distribution with scale parameter @var{scale} and
+## shape parameter @var{shape}.
 ##
 ## Default values are @var{scale} = 1, @var{shape} = 1.
 ## @end deftypefn
--- a/scripts/statistics/distributions/wblpdf.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/distributions/wblpdf.m	Sun May 10 21:37:19 2015 -0700
@@ -22,8 +22,10 @@
 ## @deftypefnx {Function File} {} wblpdf (@var{x}, @var{scale})
 ## @deftypefnx {Function File} {} wblpdf (@var{x}, @var{scale}, @var{shape})
 ## Compute the probability density function (PDF) at @var{x} of the
-## Weibull distribution with scale parameter @var{scale} and shape
-## parameter @var{shape} which is given by
+## Weibull distribution with scale parameter @var{scale} and
+## shape parameter @var{shape}.
+##
+## This is given by
 ## @tex
 ## $$  {shape \over scale^{shape}} \cdot x^{shape-1} \cdot e^{-({x \over scale})^{shape}} $$
 ## @end tex
--- a/scripts/statistics/distributions/wienrnd.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/distributions/wienrnd.m	Sun May 10 21:37:19 2015 -0700
@@ -19,11 +19,13 @@
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} wienrnd (@var{t}, @var{d}, @var{n})
 ## Return a simulated realization of the @var{d}-dimensional Wiener Process
-## on the interval [0, @var{t}].  If @var{d} is omitted, @var{d} = 1 is
-## used.  The first column of the return matrix contains time, the
-## remaining columns contain the Wiener process.
+## on the interval [0, @var{t}].
 ##
-## The optional parameter @var{n} gives the number of summands used for
+## If @var{d} is omitted, @var{d} = 1 is used.  The first column of the
+## return matrix contains time, the remaining columns contain the Wiener
+## process.
+##
+## The optional parameter @var{n} defines the number of summands used for
 ## simulating the process over an interval of length 1.  If @var{n} is
 ## omitted, @var{n} = 1000 is used.
 ## @end deftypefn
--- a/scripts/statistics/models/private/logistic_regression_derivatives.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/models/private/logistic_regression_derivatives.m	Sun May 10 21:37:19 2015 -0700
@@ -20,6 +20,7 @@
 ## @deftypefn {Function File} {[@var{dl}, @var{d2l}] =} logistic_regression_derivatives (@var{x}, @var{z}, @var{z1}, @var{g}, @var{g1}, @var{p})
 ## Calculate derivatives of the log-likelihood for ordinal logistic regression
 ## model.
+##
 ## Private function called by @code{logistic_regression}.
 ## @seealso{logistic_regression}
 ## @end deftypefn
--- a/scripts/statistics/models/private/logistic_regression_likelihood.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/models/private/logistic_regression_likelihood.m	Sun May 10 21:37:19 2015 -0700
@@ -19,6 +19,7 @@
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {[@var{g}, @var{g1}, @var{p}, @var{dev}] =} logistic_regression_likelihood (@var{y}, @var{x}, @var{beta}, @var{z}, @var{z1})
 ## Calculate the likelihood for the ordinal logistic regression model.
+##
 ## Private function called by @code{logistic_regression}.
 ## @seealso{logistic_regression}
 ## @end deftypefn
--- a/scripts/statistics/tests/anova.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/tests/anova.m	Sun May 10 21:37:19 2015 -0700
@@ -18,27 +18,28 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {[@var{pval}, @var{f}, @var{df_b}, @var{df_w}] =} anova (@var{y}, @var{g})
-## Perform a one-way analysis of variance (ANOVA).  The goal is to test
-## whether the population means of data taken from @var{k} different
-## groups are all equal.
+## Perform a one-way analysis of variance (ANOVA).
+##
+## The goal is to test whether the population means of data taken from
+## @var{k} different groups are all equal.
 ##
-## Data may be given in a single vector @var{y} with groups specified by
-## a corresponding vector of group labels @var{g} (e.g., numbers from 1
-## to @var{k}).  This is the general form which does not impose any
-## restriction on the number of data in each group or the group labels.
+## Data may be given in a single vector @var{y} with groups specified by a
+## corresponding vector of group labels @var{g} (e.g., numbers from 1 to
+## @var{k}).  This is the general form which does not impose any restriction
+## on the number of data in each group or the group labels.
 ##
-## If @var{y} is a matrix and @var{g} is omitted, each column of @var{y}
-## is treated as a group.  This form is only appropriate for balanced
-## ANOVA in which the numbers of samples from each group are all equal.
+## If @var{y} is a matrix and @var{g} is omitted, each column of @var{y} is
+## treated as a group.  This form is only appropriate for balanced ANOVA in
+## which the numbers of samples from each group are all equal.
 ##
 ## Under the null of constant means, the statistic @var{f} follows an F
 ## distribution with @var{df_b} and @var{df_w} degrees of freedom.
 ##
-## The p-value (1 minus the CDF of this distribution at @var{f}) is
-## returned in @var{pval}.
+## The p-value (1 minus the CDF of this distribution at @var{f}) is returned
+## in @var{pval}.
 ##
-## If no output argument is given, the standard one-way ANOVA table is
-## printed.
+## If no output argument is given, the standard one-way ANOVA table is printed.
+## @seealso{manova}
 ## @end deftypefn
 
 ## Author: KH <Kurt.Hornik@wu-wien.ac.at>
--- a/scripts/statistics/tests/chisquare_test_homogeneity.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/tests/chisquare_test_homogeneity.m	Sun May 10 21:37:19 2015 -0700
@@ -24,8 +24,8 @@
 ## (strictly increasing) entries of @var{c}.
 ##
 ## For large samples, the test statistic @var{chisq} approximately follows a
-## chisquare distribution with @var{df} = @code{length (@var{c})}
-## degrees of freedom.
+## chisquare distribution with @var{df} = @code{length (@var{c})} degrees of
+## freedom.
 ##
 ## The p-value (1 minus the CDF of this distribution at @var{chisq}) is
 ## returned in @var{pval}.
--- a/scripts/statistics/tests/chisquare_test_independence.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/tests/chisquare_test_independence.m	Sun May 10 21:37:19 2015 -0700
@@ -18,13 +18,14 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {[@var{pval}, @var{chisq}, @var{df}] =} chisquare_test_independence (@var{x})
-## Perform a chi-square test for independence based on the contingency
-## table @var{x}.  Under the null hypothesis of independence,
-## @var{chisq} approximately has a chi-square distribution with
-## @var{df} degrees of freedom.
+## Perform a chi-square test for independence based on the contingency table
+## @var{x}.
 ##
-## The p-value (1 minus the CDF of this distribution at chisq) of the
-## test is returned in @var{pval}.
+## Under the null hypothesis of independence, @var{chisq} approximately has a
+## chi-square distribution with @var{df} degrees of freedom.
+##
+## The p-value (1 minus the CDF of this distribution at chisq) of the test is
+## returned in @var{pval}.
 ##
 ## If no output argument is given, the p-value is displayed.
 ## @end deftypefn
--- a/scripts/statistics/tests/cor_test.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/tests/cor_test.m	Sun May 10 21:37:19 2015 -0700
@@ -22,19 +22,19 @@
 ## populations.
 ##
 ## The optional argument string @var{alt} describes the alternative
-## hypothesis, and can be @qcode{"!="} or @qcode{"<>"} (nonzero),
-## @qcode{">"} (greater than 0), or @qcode{"<"} (less than 0).  The
-## default is the two-sided case.
+## hypothesis, and can be @qcode{"!="} or @qcode{"<>"} (nonzero), @qcode{">"}
+## (greater than 0), or @qcode{"<"} (less than 0).  The default is the
+## two-sided case.
 ##
-## The optional argument string @var{method} specifies which
-## correlation coefficient to use for testing.  If @var{method} is
-## @qcode{"pearson"} (default), the (usual) Pearson's product moment
-## correlation coefficient is used.  In this case, the data should come
-## from a bivariate normal distribution.  Otherwise, the other two
-## methods offer nonparametric alternatives.  If @var{method} is
-## @qcode{"kendall"}, then Kendall's rank correlation tau is used.  If
-## @var{method} is @qcode{"spearman"}, then Spearman's rank correlation
-## rho is used.  Only the first character is necessary.
+## The optional argument string @var{method} specifies which correlation
+## coefficient to use for testing.  If @var{method} is @qcode{"pearson"}
+## (default), the (usual) Pearson's produt moment correlation coefficient is
+## used.  In this case, the data should come from a bivariate normal
+## distribution.  Otherwise, the other two methods offer nonparametric
+## alternatives.  If @var{method} is @qcode{"kendall"}, then Kendall's rank
+## correlation tau is used.  If @var{method} is @qcode{"spearman"}, then
+## Spearman's rank correlation rho is used.  Only the first character is
+## necessary.
 ##
 ## The output is a structure with the following elements:
 ##
--- a/scripts/statistics/tests/f_test_regression.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/tests/f_test_regression.m	Sun May 10 21:37:19 2015 -0700
@@ -21,11 +21,11 @@
 ## Perform an F test for the null hypothesis @nospell{rr * b = r} in a
 ## classical normal regression model y = X * b + e.
 ##
-## Under the null, the test statistic @var{f} follows an F distribution
-## with @var{df_num} and @var{df_den} degrees of freedom.
+## Under the null, the test statistic @var{f} follows an F distribution with
+## @var{df_num} and @var{df_den} degrees of freedom.
 ##
-## The p-value (1 minus the CDF of this distribution at @var{f}) is
-## returned in @var{pval}.
+## The p-value (1 minus the CDF of this distribution at @var{f}) is returned
+## in @var{pval}.
 ##
 ## If not given explicitly, @var{r} = 0.
 ##
--- a/scripts/statistics/tests/hotelling_test.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/tests/hotelling_test.m	Sun May 10 21:37:19 2015 -0700
@@ -19,8 +19,8 @@
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {[@var{pval}, @var{tsq}] =} hotelling_test (@var{x}, @var{m})
 ## For a sample @var{x} from a multivariate normal distribution with unknown
-## mean and covariance matrix, test the null hypothesis that @code{mean
-## (@var{x}) == @var{m}}.
+## mean and covariance matrix, test the null hypothesis that
+## @code{mean (@var{x}) == @var{m}}.
 ##
 ## Hotelling's @math{T^2} is returned in @var{tsq}.  Under the null,
 ## @math{(n-p) T^2 / (p(n-1))} has an F distribution with @math{p} and
--- a/scripts/statistics/tests/kolmogorov_smirnov_test.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/tests/kolmogorov_smirnov_test.m	Sun May 10 21:37:19 2015 -0700
@@ -19,7 +19,8 @@
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {[@var{pval}, @var{ks}] =} kolmogorov_smirnov_test (@var{x}, @var{dist}, @var{params}, @var{alt})
 ## Perform a Kolmogorov-Smirnov test of the null hypothesis that the
-## sample @var{x} comes from the (continuous) distribution dist.  I.e.,
+## sample @var{x} comes from the (continuous) distribution @var{dist}.
+##
 ## if F and G are the CDFs corresponding to the sample and dist,
 ## respectively, then the null is that F == G.
 ##
@@ -32,18 +33,18 @@
 ## @end example
 ##
 ## @noindent
-## @var{dist} can be any string for which a function @var{dist_cdf}
+## @var{dist} can be any string for which a function @var{distcdf}
 ## that calculates the CDF of distribution @var{dist} exists.
 ##
-## With the optional argument string @var{alt}, the alternative of
-## interest can be selected.  If @var{alt} is @qcode{"!="} or
-## @qcode{"<>"}, the null is tested against the two-sided alternative F
-## != G@.  In this case, the test statistic @var{ks} follows a two-sided
-## Kolmogorov-Smirnov distribution.  If @var{alt} is @qcode{">"}, the
-## one-sided alternative F > G is considered.  Similarly for @qcode{"<"},
-## the one-sided alternative F > G is considered.  In this case, the
-## test statistic @var{ks} has a one-sided Kolmogorov-Smirnov
-## distribution.  The default is the two-sided case.
+## With the optional argument string @var{alt}, the alternative of interest
+## can be selected.  If @var{alt} is @qcode{"!="} or @qcode{"<>"}, the null
+## is tested against the two-sided alternative F != G@.  In this case, the
+## test statistic @var{ks} follows a two-sided Kolmogorov-Smirnov
+## distribution.  If @var{alt} is @qcode{">"}, the one-sided alternative F >
+## G is considered.  Similarly for @qcode{"<"}, the one-sided alternative F >
+## G is considered.  In this case, the test statistic @var{ks} has a
+## one-sided Kolmogorov-Smirnov distribution.  The default is the two-sided
+## case.
 ##
 ## The p-value of the test is returned in @var{pval}.
 ##
--- a/scripts/statistics/tests/kolmogorov_smirnov_test_2.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/tests/kolmogorov_smirnov_test_2.m	Sun May 10 21:37:19 2015 -0700
@@ -18,21 +18,21 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {[@var{pval}, @var{ks}, @var{d}] =} kolmogorov_smirnov_test_2 (@var{x}, @var{y}, @var{alt})
-## Perform a 2-sample Kolmogorov-Smirnov test of the null hypothesis
-## that the samples @var{x} and @var{y} come from the same (continuous)
-## distribution.  I.e., if F and G are the CDFs corresponding to the
-## @var{x} and @var{y} samples, respectively, then the null is that F ==
-## G.
+## Perform a 2-sample Kolmogorov-Smirnov test of the null hypothesis that the
+## samples @var{x} and @var{y} come from the same (continuous) distribution.
+##
+## If F and G are the CDFs corresponding to the @var{x} and @var{y} samples,
+## respectively, then the null is that F == G.
 ##
-## With the optional argument string @var{alt}, the alternative of
-## interest can be selected.  If @var{alt} is @qcode{"!="} or
-## @qcode{"<>"}, the null is tested against the two-sided alternative F
-## != G@.  In this case, the test statistic @var{ks} follows a two-sided
-## Kolmogorov-Smirnov distribution.  If @var{alt} is @qcode{">"}, the
-## one-sided alternative F > G is considered.  Similarly for @qcode{"<"},
-## the one-sided alternative F < G is considered.  In this case, the
-## test statistic @var{ks} has a one-sided Kolmogorov-Smirnov
-## distribution.  The default is the two-sided case.
+## With the optional argument string @var{alt}, the alternative of interest
+## can be selected.  If @var{alt} is @qcode{"!="} or @qcode{"<>"}, the null
+## is tested against the two-sided alternative F != G@.  In this case, the
+## test statistic @var{ks} follows a two-sided Kolmogorov-Smirnov
+## distribution.  If @var{alt} is @qcode{">"}, the one-sided alternative F >
+## G is considered.  Similarly for @qcode{"<"}, the one-sided alternative F <
+## G is considered.  In this case, the test statistic @var{ks} has a
+## one-sided Kolmogorov-Smirnov distribution.  The default is the two-sided
+## case.
 ##
 ## The p-value of the test is returned in @var{pval}.
 ##
--- a/scripts/statistics/tests/kruskal_wallis_test.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/tests/kruskal_wallis_test.m	Sun May 10 21:37:19 2015 -0700
@@ -20,29 +20,27 @@
 ## @deftypefn {Function File} {[@var{pval}, @var{k}, @var{df}] =} kruskal_wallis_test (@var{x1}, @dots{})
 ## Perform a @nospell{Kruskal-Wallis} one-factor analysis of variance.
 ##
-## Suppose a variable is observed for @var{k} > 1 different groups, and
-## let @var{x1}, @dots{}, @var{xk} be the corresponding data vectors.
+## Suppose a variable is observed for @var{k} > 1 different groups, and let
+## @var{x1}, @dots{}, @var{xk} be the corresponding data vectors.
 ##
 ## Under the null hypothesis that the ranks in the pooled sample are not
 ## affected by the group memberships, the test statistic @var{k} is
-## approximately chi-square with @var{df} = @var{k} - 1 degrees of
-## freedom.
+## approximately chi-square with @var{df} = @var{k} - 1 degrees of freedom.
 ##
 ## If the data contains ties (some value appears more than once)
 ## @var{k} is divided by
 ##
 ## 1 - @var{sum_ties} / (@var{n}^3 - @var{n})
 ##
-## where @var{sum_ties} is the sum of @var{t}^2 - @var{t} over each group
-## of ties where @var{t} is the number of ties in the group and @var{n}
-## is the total number of values in the input data.  For more info on
-## this adjustment see @nospell{William H. Kruskal and W. Allen Wallis},
+## where @var{sum_ties} is the sum of @var{t}^2 - @var{t} over each group of
+## ties where @var{t} is the number of ties in the group and @var{n} is the
+## total number of values in the input data.  For more info on this
+## adjustment see @nospell{William H. Kruskal and W. Allen Wallis},
 ## @cite{Use of Ranks in One-Criterion Variance Analysis},
-## Journal of the American Statistical Association, Vol. 47,
-## No. 260 (Dec 1952).
+## Journal of the American Statistical Association, Vol. 47, No. 260 (Dec 1952).
 ##
-## The p-value (1 minus the CDF of this distribution at @var{k}) is
-## returned in @var{pval}.
+## The p-value (1 minus the CDF of this distribution at @var{k}) is returned
+## in @var{pval}.
 ##
 ## If no output argument is given, the p-value is displayed.
 ## @end deftypefn
--- a/scripts/statistics/tests/manova.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/tests/manova.m	Sun May 10 21:37:19 2015 -0700
@@ -18,18 +18,20 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} manova (@var{x}, @var{g})
-## Perform a one-way multivariate analysis of variance (MANOVA).  The
-## goal is to test whether the p-dimensional population means of data
-## taken from @var{k} different groups are all equal.  All data are
-## assumed drawn independently from p-dimensional normal distributions
-## with the same covariance matrix.
+## Perform a one-way multivariate analysis of variance (MANOVA).
 ##
-## The data matrix is given by @var{x}.  As usual, rows are observations
-## and columns are variables.  The vector @var{g} specifies the
-## corresponding group labels (e.g., numbers from 1 to @var{k}).
+## The goal is to test whether the p-dimensional population means of data
+## taken from @var{k} different groups are all equal.  All data are assumed
+## drawn independently from p-dimensional normal distributions with the same
+## covariance matrix.
+##
+## The data matrix is given by @var{x}.  As usual, rows are observations and
+## columns are variables.  The vector @var{g} specifies the corresponding
+## group labels (e.g., numbers from 1 to @var{k}).
 ##
 ## The LR test statistic (@nospell{Wilks' Lambda}) and approximate p-values are
 ## computed and displayed.
+## @seealso{anova}
 ## @end deftypefn
 
 ## The Hotelling-Lawley and Pillai-Bartlett test statistics are coded.
--- a/scripts/statistics/tests/mcnemar_test.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/tests/mcnemar_test.m	Sun May 10 21:37:19 2015 -0700
@@ -18,12 +18,12 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {[@var{pval}, @var{chisq}, @var{df}] =} mcnemar_test (@var{x})
-## For a square contingency table @var{x} of data cross-classified on
-## the row and column variables, @nospell{McNemar's} test can be used for
-## testing the null hypothesis of symmetry of the classification probabilities.
+## For a square contingency table @var{x} of data cross-classified on the row
+## and column variables, @nospell{McNemar's} test can be used for testing the
+## null hypothesis of symmetry of the classification probabilities.
 ##
-## Under the null, @var{chisq} is approximately distributed as chisquare
-## with @var{df} degrees of freedom.
+## Under the null, @var{chisq} is approximately distributed as chisquare with
+## @var{df} degrees of freedom.
 ##
 ## The p-value (1 minus the CDF of this distribution at @var{chisq}) is
 ## returned in @var{pval}.
--- a/scripts/statistics/tests/prop_test_2.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/tests/prop_test_2.m	Sun May 10 21:37:19 2015 -0700
@@ -18,19 +18,20 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {[@var{pval}, @var{z}] =} prop_test_2 (@var{x1}, @var{n1}, @var{x2}, @var{n2}, @var{alt})
-## If @var{x1} and @var{n1} are the counts of successes and trials in
-## one sample, and @var{x2} and @var{n2} those in a second one, test the
-## null hypothesis that the success probabilities @var{p1} and @var{p2}
-## are the same.  Under the null, the test statistic @var{z}
-## approximately follows a standard normal distribution.
+## If @var{x1} and @var{n1} are the counts of successes and trials in one
+## sample, and @var{x2} and @var{n2} those in a second one, test the null
+## hypothesis that the success probabilities @var{p1} and @var{p2} are the
+## same.
 ##
-## With the optional argument string @var{alt}, the alternative of
-## interest can be selected.  If @var{alt} is @qcode{"!="} or
-## @qcode{"<>"}, the null is tested against the two-sided alternative
-## @var{p1} != @var{p2}.  If @var{alt} is @qcode{">"}, the one-sided
-## alternative @var{p1} > @var{p2} is used.  Similarly for @qcode{"<"},
-## the one-sided alternative @var{p1} < @var{p2} is used.
-## The default is the two-sided case.
+## Under the null, the test statistic @var{z} approximately follows a
+## standard normal distribution.
+##
+## With the optional argument string @var{alt}, the alternative of interest
+## can be selected.  If @var{alt} is @qcode{"!="} or @qcode{"<>"}, the null
+## is tested against the two-sided alternative @var{p1} != @var{p2}.  If
+## @var{alt} is @qcode{">"}, the one-sided alternative @var{p1} > @var{p2} is
+## used.  Similarly for @qcode{"<"}, the one-sided alternative
+## @var{p1} < @var{p2} is used.  The default is the two-sided case.
 ##
 ## The p-value of the test is returned in @var{pval}.
 ##
--- a/scripts/statistics/tests/run_test.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/tests/run_test.m	Sun May 10 21:37:19 2015 -0700
@@ -18,9 +18,11 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {[@var{pval}, @var{chisq}] =} run_test (@var{x})
-## Perform a chi-square test with 6 degrees of freedom based on the
-## upward runs in the columns of @var{x}.  Can be used to test whether
-## @var{x} contains independent data.
+## Perform a chi-square test with 6 degrees of freedom based on the upward
+## runs in the columns of @var{x}.
+##
+## @code{run_test} can be used to decide whether @var{x} contains independent
+## data.
 ##
 ## The p-value of the test is returned in @var{pval}.
 ##
--- a/scripts/statistics/tests/sign_test.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/tests/sign_test.m	Sun May 10 21:37:19 2015 -0700
@@ -19,20 +19,21 @@
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {[@var{pval}, @var{b}, @var{n}] =} sign_test (@var{x}, @var{y}, @var{alt})
 ## For two matched-pair samples @var{x} and @var{y}, perform a sign test
-## of the null hypothesis PROB (@var{x} > @var{y}) == PROB (@var{x} <
-## @var{y}) == 1/2.  Under the null, the test statistic @var{b} roughly
-## follows a binomial distribution with parameters @code{@var{n} = sum
-## (@var{x} != @var{y})} and @var{p} = 1/2.
+## of the null hypothesis
+## PROB (@var{x} > @var{y}) == PROB (@var{x} < @var{y}) == 1/2.
+##
+## Under the null, the test statistic @var{b} roughly follows a
+## binomial distribution with parameters
+## @code{@var{n} = sum (@var{x} != @var{y})} and @var{p} = 1/2.
 ##
-## With the optional argument @code{alt}, the alternative of interest
-## can be selected.  If @var{alt} is @qcode{"!="} or @qcode{"<>"}, the
-## null hypothesis is tested against the two-sided alternative PROB
-## (@var{x} < @var{y}) != 1/2.  If @var{alt} is @qcode{">"}, the
-## one-sided alternative PROB (@var{x} > @var{y}) > 1/2 ("x is
-## stochastically greater than y") is considered.  Similarly for
-## @qcode{"<"}, the one-sided alternative PROB (@var{x} > @var{y}) < 1/2
-## ("x is stochastically less than y") is considered.  The default is
-## the two-sided case.
+## With the optional argument @code{alt}, the alternative of interest can be
+## selected.  If @var{alt} is @qcode{"!="} or @qcode{"<>"}, the null
+## hypothesis is tested against the two-sided alternative
+## PROB (@var{x} < @var{y}) != 1/2.  If @var{alt} is @qcode{">"}, the one-sided
+## alternative PROB (@var{x} > @var{y}) > 1/2 ("x is stochastically greater
+## than y") is considered.  Similarly for @qcode{"<"}, the one-sided
+## alternative PROB (@var{x} > @var{y}) < 1/2 ("x is stochastically less than
+## y") is considered.  The default is the two-sided case.
 ##
 ## The p-value of the test is returned in @var{pval}.
 ##
--- a/scripts/statistics/tests/t_test.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/tests/t_test.m	Sun May 10 21:37:19 2015 -0700
@@ -19,19 +19,19 @@
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {[@var{pval}, @var{t}, @var{df}] =} t_test (@var{x}, @var{m}, @var{alt})
 ## For a sample @var{x} from a normal distribution with unknown mean and
-## variance, perform a t-test of the null hypothesis @code{mean
-## (@var{x}) == @var{m}}.  Under the null, the test statistic @var{t}
-## follows a Student distribution with @code{@var{df} = length (@var{x})
-## - 1} degrees of freedom.
+## variance, perform a t-test of the null hypothesis
+## @code{mean (@var{x}) == @var{m}}.
+##
+## Under the null, the test statistic @var{t} follows a Student distribution
+## with @code{@var{df} = length (@var{x}) - 1} degrees of freedom.
 ##
-## With the optional argument string @var{alt}, the alternative of
-## interest can be selected.  If @var{alt} is @qcode{"!="} or
-## @qcode{"<>"}, the null is tested against the two-sided alternative
-## @code{mean (@var{x}) != @var{m}}.  If @var{alt} is @qcode{">"}, the
-## one-sided alternative @code{mean (@var{x}) > @var{m}} is considered.
-## Similarly for @var{"<"}, the one-sided alternative @code{mean
-## (@var{x}) < @var{m}} is considered.  The default is the two-sided
-## case.
+## With the optional argument string @var{alt}, the alternative of interest
+## can be selected.  If @var{alt} is @qcode{"!="} or @qcode{"<>"}, the null
+## is tested against the two-sided alternative @code{mean (@var{x}) !=
+## @var{m}}.  If @var{alt} is @qcode{">"}, the one-sided alternative
+## @code{mean (@var{x}) > @var{m}} is considered.  Similarly for @var{"<"},
+## the one-sided alternative @code{mean (@var{x}) < @var{m}} is considered. 
+## The default is the two-sided case.
 ##
 ## The p-value of the test is returned in @var{pval}.
 ##
--- a/scripts/statistics/tests/t_test_2.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/tests/t_test_2.m	Sun May 10 21:37:19 2015 -0700
@@ -18,20 +18,20 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {[@var{pval}, @var{t}, @var{df}] =} t_test_2 (@var{x}, @var{y}, @var{alt})
-## For two samples x and y from normal distributions with unknown means
-## and unknown equal variances, perform a two-sample t-test of the null
-## hypothesis of equal means.  Under the null, the test statistic
-## @var{t} follows a Student distribution with @var{df} degrees of
-## freedom.
+## For two samples x and y from normal distributions with unknown means and
+## unknown equal variances, perform a two-sample t-test of the null
+## hypothesis of equal means.
+##
+## Under the null, the test statistic @var{t} follows a Student distribution
+## with @var{df} degrees of freedom.
 ##
-## With the optional argument string @var{alt}, the alternative of
-## interest can be selected.  If @var{alt} is @qcode{"!="} or
-## @qcode{"<>"}, the null is tested against the two-sided alternative
-## @code{mean (@var{x}) != mean (@var{y})}.  If @var{alt} is @qcode{">"},
-## the one-sided alternative @code{mean (@var{x}) > mean (@var{y})} is
-## used.  Similarly for @qcode{"<"}, the one-sided alternative @code{mean
-## (@var{x}) < mean (@var{y})} is used.  The default is the two-sided
-## case.
+## With the optional argument string @var{alt}, the alternative of interest
+## can be selected.  If @var{alt} is @qcode{"!="} or @qcode{"<>"}, the null
+## is tested against the two-sided alternative @code{mean (@var{x}) != mean
+## (@var{y})}.  If @var{alt} is @qcode{">"}, the one-sided alternative
+## @code{mean (@var{x}) > mean (@var{y})} is used.  Similarly for
+## @qcode{"<"}, the one-sided alternative @code{mean (@var{x}) < mean
+## (@var{y})} is used.  The default is the two-sided case.
 ##
 ## The p-value of the test is returned in @var{pval}.
 ##
--- a/scripts/statistics/tests/t_test_regression.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/tests/t_test_regression.m	Sun May 10 21:37:19 2015 -0700
@@ -20,21 +20,20 @@
 ## @deftypefn {Function File} {[@var{pval}, @var{t}, @var{df}] =} t_test_regression (@var{y}, @var{x}, @var{rr}, @var{r}, @var{alt})
 ## Perform a t test for the null hypothesis
 ## @nospell{@code{@var{rr} * @var{b} = @var{r}}} in a classical normal
-## regression model @code{@var{y} = @var{x} * @var{b} + @var{e}}.  Under the
-## null, the test statistic @var{t} follows a @var{t} distribution with
-## @var{df} degrees of freedom.
+## regression model @code{@var{y} = @var{x} * @var{b} + @var{e}}.
+##
+## Under the null, the test statistic @var{t} follows a @var{t} distribution
+## with @var{df} degrees of freedom.
 ##
 ## If @var{r} is omitted, a value of 0 is assumed.
 ##
-## With the optional argument string @var{alt}, the alternative of
-## interest can be selected.  If @var{alt} is @qcode{"!="} or
-## @qcode{"<>"}, the null is tested against the two-sided alternative
-## @nospell{@code{@var{rr} * @var{b} != @var{r}}}.  If @var{alt} is @qcode{">"},
-## the one-sided alternative
-## @nospell{@code{@var{rr} * @var{b} > @var{r}}} is used.  Similarly for
-## @var{"<"}, the one-sided alternative
-## @nospell{@code{@var{rr} * @var{b} < @var{r}}} is used.  The default is the
-## two-sided case.
+## With the optional argument string @var{alt}, the alternative of interest
+## can be selected.  If @var{alt} is @qcode{"!="} or @qcode{"<>"}, the null
+## is tested against the two-sided alternative @nospell{@code{@var{rr} *
+## @var{b} != @var{r}}}.  If @var{alt} is @qcode{">"}, the one-sided
+## alternative @nospell{@code{@var{rr} * @var{b} > @var{r}}} is used. 
+## Similarly for @var{"<"}, the one-sided alternative @nospell{@code{@var{rr}
+## * @var{b} < @var{r}}} is used.  The default is the two-sided case.
 ##
 ## The p-value of the test is returned in @var{pval}.
 ##
--- a/scripts/statistics/tests/u_test.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/tests/u_test.m	Sun May 10 21:37:19 2015 -0700
@@ -19,18 +19,20 @@
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {[@var{pval}, @var{z}] =} u_test (@var{x}, @var{y}, @var{alt})
 ## For two samples @var{x} and @var{y}, perform a Mann-Whitney U-test of
-## the null hypothesis PROB (@var{x} > @var{y}) == 1/2 == PROB (@var{x}
-## < @var{y}).  Under the null, the test statistic @var{z} approximately
-## follows a standard normal distribution.  Note that this test is
-## equivalent to the Wilcoxon rank-sum test.
+## the null hypothesis
+## PROB (@var{x} > @var{y}) == 1/2 == PROB (@var{x} < @var{y}).
+##
+## Under the null, the test statistic @var{z} approximately follows a
+## standard normal distribution.  Note that this test is equivalent to the
+## Wilcoxon rank-sum test.
 ##
-## With the optional argument string @var{alt}, the alternative of
-## interest can be selected.  If @var{alt} is @qcode{"!="} or
-## @qcode{"<>"}, the null is tested against the two-sided alternative
-## PROB (@var{x} > @var{y}) != 1/2.  If @var{alt} is @qcode{">"}, the
-## one-sided alternative PROB (@var{x} > @var{y}) > 1/2 is considered.
-## Similarly for @qcode{"<"}, the one-sided alternative PROB (@var{x} >
-## @var{y}) < 1/2 is considered.  The default is the two-sided case.
+## With the optional argument string @var{alt}, the alternative of interest
+## can be selected.  If @var{alt} is @qcode{"!="} or @qcode{"<>"}, the null
+## is tested against the two-sided alternative
+## PROB (@var{x} > @var{y}) != 1/2.  If @var{alt} is @qcode{">"}, the one-sided
+## alternative PROB (@var{x} > @var{y}) > 1/2 is considered.  Similarly for
+## @qcode{"<"}, the one-sided alternative PROB (@var{x} > @var{y}) < 1/2 is
+## considered.  The default is the two-sided case.
 ##
 ## The p-value of the test is returned in @var{pval}.
 ##
--- a/scripts/statistics/tests/var_test.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/tests/var_test.m	Sun May 10 21:37:19 2015 -0700
@@ -20,18 +20,18 @@
 ## @deftypefn {Function File} {[@var{pval}, @var{f}, @var{df_num}, @var{df_den}] =} var_test (@var{x}, @var{y}, @var{alt})
 ## For two samples @var{x} and @var{y} from normal distributions with
 ## unknown means and unknown variances, perform an F-test of the null
-## hypothesis of equal variances.  Under the null, the test statistic
-## @var{f} follows an F-distribution with @var{df_num} and @var{df_den}
-## degrees of freedom.
+## hypothesis of equal variances.
+##
+## Under the null, the test statistic @var{f} follows an F-distribution with
+## @var{df_num} and @var{df_den} degrees of freedom.
 ##
-## With the optional argument string @var{alt}, the alternative of
-## interest can be selected.  If @var{alt} is @qcode{"!="} or
-## @qcode{"<>"}, the null is tested against the two-sided alternative
-## @code{var (@var{x}) != var (@var{y})}.  If @var{alt} is @qcode{">"},
-## the one-sided alternative @code{var (@var{x}) > var (@var{y})} is
-## used.  Similarly for "<", the one-sided alternative @code{var
-## (@var{x}) > var (@var{y})} is used.  The default is the two-sided
-## case.
+## With the optional argument string @var{alt}, the alternative of interest
+## can be selected.  If @var{alt} is @qcode{"!="} or @qcode{"<>"}, the null
+## is tested against the two-sided alternative @code{var (@var{x}) != var
+## (@var{y})}.  If @var{alt} is @qcode{">"}, the one-sided alternative
+## @code{var (@var{x}) > var (@var{y})} is used.  Similarly for "<", the
+## one-sided alternative @code{var (@var{x}) > var (@var{y})} is used.  The
+## default is the two-sided case.
 ##
 ## The p-value of the test is returned in @var{pval}.
 ##
--- a/scripts/statistics/tests/welch_test.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/tests/welch_test.m	Sun May 10 21:37:19 2015 -0700
@@ -21,16 +21,17 @@
 ## For two samples @var{x} and @var{y} from normal distributions with
 ## unknown means and unknown and not necessarily equal variances,
 ## perform a Welch test of the null hypothesis of equal means.
+##
 ## Under the null, the test statistic @var{t} approximately follows a
 ## Student distribution with @var{df} degrees of freedom.
 ##
-## With the optional argument string @var{alt}, the alternative of
-## interest can be selected.  If @var{alt} is @qcode{"!="} or
-## @qcode{"<>"}, the null is tested against the two-sided alternative
+## With the optional argument string @var{alt}, the alternative of interest
+## can be selected.  If @var{alt} is @qcode{"!="} or @qcode{"<>"}, the null
+## is tested against the two-sided alternative
 ## @code{mean (@var{x}) != @var{m}}.  If @var{alt} is @qcode{">"}, the
 ## one-sided alternative mean(x) > @var{m} is considered.  Similarly for
-## @qcode{"<"}, the one-sided alternative mean(x) < @var{m} is
-## considered.  The default is the two-sided case.
+## @qcode{"<"}, the one-sided alternative mean(x) < @var{m} is considered.
+## The default is the two-sided case.
 ##
 ## The p-value of the test is returned in @var{pval}.
 ##
--- a/scripts/statistics/tests/wilcoxon_test.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/tests/wilcoxon_test.m	Sun May 10 21:37:19 2015 -0700
@@ -19,20 +19,22 @@
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {[@var{pval}, @var{z}] =} wilcoxon_test (@var{x}, @var{y}, @var{alt})
 ## For two matched-pair sample vectors @var{x} and @var{y}, perform a
-## Wilcoxon signed-rank test of the null hypothesis PROB (@var{x} >
-## @var{y}) == 1/2.  Under the null, the test statistic @var{z}
-## approximately follows a standard normal distribution when @var{n} > 25.
+## Wilcoxon signed-rank test of the null hypothesis
+## PROB (@var{x} > @var{y}) == 1/2.
+##
+## Under the null, the test statistic @var{z} approximately follows a
+## standard normal distribution when @var{n} > 25.
 ##
 ## @strong{Caution:} This function assumes a normal distribution for @var{z}
 ## and thus is invalid for @var{n} @leq{} 25.
 ##
-## With the optional argument string @var{alt}, the alternative of
-## interest can be selected.  If @var{alt} is @qcode{"!="} or
-## @qcode{"<>"}, the null is tested against the two-sided alternative
+## With the optional argument string @var{alt}, the alternative of interest
+## can be selected.  If @var{alt} is @qcode{"!="} or @qcode{"<>"}, the null
+## is tested against the two-sided alternative
 ## PROB (@var{x} > @var{y}) != 1/2.  If alt is @qcode{">"}, the one-sided
-## alternative PROB (@var{x} > @var{y}) > 1/2 is considered.  Similarly
-## for @qcode{"<"}, the one-sided alternative PROB (@var{x} > @var{y}) <
-## 1/2 is considered.  The default is the two-sided case.
+## alternative PROB (@var{x} > @var{y}) > 1/2 is considered.  Similarly for
+## @qcode{"<"}, the one-sided alternative PROB (@var{x} > @var{y}) < 1/2 is
+## considered.  The default is the two-sided case.
 ##
 ## The p-value of the test is returned in @var{pval}.
 ##
--- a/scripts/statistics/tests/z_test.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/tests/z_test.m	Sun May 10 21:37:19 2015 -0700
@@ -18,24 +18,26 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {[@var{pval}, @var{z}] =} z_test (@var{x}, @var{m}, @var{v}, @var{alt})
-## Perform a Z-test of the null hypothesis @code{mean (@var{x}) ==
-## @var{m}} for a sample @var{x} from a normal distribution with unknown
-## mean and known variance @var{v}.  Under the null, the test statistic
-## @var{z} follows a standard normal distribution.
+## Perform a Z-test of the null hypothesis @code{mean (@var{x}) == @var{m}}
+## for a sample @var{x} from a normal distribution with unknown mean and known
+## variance @var{v}.
 ##
-## With the optional argument string @var{alt}, the alternative of
-## interest can be selected.  If @var{alt} is @qcode{"!="} or
-## @qcode{"<>"}, the null is tested against the two-sided alternative
+## Under the null, the test statistic @var{z} follows a standard normal
+## distribution.
+##
+## With the optional argument string @var{alt}, the alternative of interest
+## can be selected.  If @var{alt} is @qcode{"!="} or @qcode{"<>"}, the null
+## is tested against the two-sided alternative
 ## @code{mean (@var{x}) != @var{m}}.  If @var{alt} is @qcode{">"}, the
 ## one-sided alternative @code{mean (@var{x}) > @var{m}} is considered.
-## Similarly for @qcode{"<"}, the one-sided alternative @code{mean
-## (@var{x}) < @var{m}} is considered.  The default is the two-sided
+## Similarly for @qcode{"<"}, the one-sided alternative
+## @code{mean (@var{x}) < @var{m}} is considered.  The default is the two-sided
 ## case.
 ##
 ## The p-value of the test is returned in @var{pval}.
 ##
-## If no output argument is given, the p-value of the test is displayed
-## along with some information.
+## If no output argument is given, the p-value of the test is displayed along
+## with some information.
 ## @end deftypefn
 
 ## Author: KH <Kurt.Hornik@wu-wien.ac.at>
--- a/scripts/statistics/tests/z_test_2.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/statistics/tests/z_test_2.m	Sun May 10 21:37:19 2015 -0700
@@ -18,24 +18,26 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {[@var{pval}, @var{z}] =} z_test_2 (@var{x}, @var{y}, @var{v_x}, @var{v_y}, @var{alt})
-## For two samples @var{x} and @var{y} from normal distributions with
-## unknown means and known variances @var{v_x} and @var{v_y}, perform a
-## Z-test of the hypothesis of equal means.  Under the null, the test
-## statistic @var{z} follows a standard normal distribution.
+## For two samples @var{x} and @var{y} from normal distributions with unknown
+## means and known variances @var{v_x} and @var{v_y}, perform a Z-test of the
+## hypothesis of equal means.
 ##
-## With the optional argument string @var{alt}, the alternative of
-## interest can be selected.  If @var{alt} is @qcode{"!="} or
-## @qcode{"<>"}, the null is tested against the two-sided alternative
+## Under the null, the test statistic @var{z} follows a standard normal
+## distribution.
+##
+## With the optional argument string @var{alt}, the alternative of interest
+## can be selected.  If @var{alt} is @qcode{"!="} or @qcode{"<>"}, the null
+## is tested against the two-sided alternative
 ## @code{mean (@var{x}) != mean (@var{y})}.  If alt is @qcode{">"}, the
 ## one-sided alternative @code{mean (@var{x}) > mean (@var{y})} is used.
-## Similarly for @qcode{"<"}, the one-sided alternative @code{mean
-## (@var{x}) < mean (@var{y})} is used.  The default is the two-sided
-## case.
+## Similarly for @qcode{"<"}, the one-sided alternative
+## @code{mean (@var{x}) < mean (@var{y})} is used.  The default is the
+## two-sided case.
 ##
 ## The p-value of the test is returned in @var{pval}.
 ##
-## If no output argument is given, the p-value of the test is displayed
-## along with some information.
+## If no output argument is given, the p-value of the test is displayed along
+## with some information.
 ## @end deftypefn
 
 ## Author: KH <Kurt.Hornik@wu-wien.ac.at>
--- a/scripts/strings/base2dec.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/strings/base2dec.m	Sun May 10 21:37:19 2015 -0700
@@ -29,15 +29,14 @@
 ## @end example
 ##
 ## If @var{s} is a string matrix, return a column vector with one value per
-## row of @var{s}.  If a row contains invalid symbols then the
-## corresponding value will be NaN@.
+## row of @var{s}.  If a row contains invalid symbols then the corresponding
+## value will be NaN@.
 ##
 ## If @var{s} is a cell array of strings, return a column vector with one
 ## value per cell element in @var{s}.
 ##
 ## If @var{base} is a string, the characters of @var{base} are used as the
-## symbols for the digits of @var{s}.  Space (' ') may not be used as a
-## symbol.
+## symbols for the digits of @var{s}.  Space (' ') may not be used as a symbol.
 ##
 ## @example
 ## @group
--- a/scripts/strings/bin2dec.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/strings/bin2dec.m	Sun May 10 21:37:19 2015 -0700
@@ -19,7 +19,9 @@
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} bin2dec (@var{s})
 ## Return the decimal number corresponding to the binary number represented
-## by the string @var{s}.  For example:
+## by the string @var{s}.
+##
+## For example:
 ##
 ## @example
 ## @group
--- a/scripts/strings/blanks.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/strings/blanks.m	Sun May 10 21:37:19 2015 -0700
@@ -18,7 +18,9 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} blanks (@var{n})
-## Return a string of @var{n} blanks, for example:
+## Return a string of @var{n} blanks.
+##
+## For example:
 ##
 ## @example
 ## @group
--- a/scripts/strings/cstrcat.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/strings/cstrcat.m	Sun May 10 21:37:19 2015 -0700
@@ -18,8 +18,10 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} cstrcat (@var{s1}, @var{s2}, @dots{})
-## Return a string containing all the arguments concatenated
-## horizontally.  Trailing white space is preserved.  For example:
+## Return a string containing all the arguments concatenated horizontally
+## with trailing white space preserved.
+##
+## For example:
 ##
 ## @example
 ## @group
--- a/scripts/strings/deblank.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/strings/deblank.m	Sun May 10 21:37:19 2015 -0700
@@ -18,10 +18,11 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} deblank (@var{s})
-## Remove trailing whitespace and nulls from @var{s}.  If @var{s}
-## is a matrix, @var{deblank} trims each row to the length of longest
-## string.  If @var{s} is a cell array of strings, operate recursively on each
-## string element.
+## Remove trailing whitespace and nulls from @var{s}.
+##
+## If @var{s} is a matrix, @var{deblank} trims each row to the length of
+## longest string.  If @var{s} is a cell array of strings, operate
+## recursively on each string element.
 ##
 ## Examples:
 ##
--- a/scripts/strings/dec2base.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/strings/dec2base.m	Sun May 10 21:37:19 2015 -0700
@@ -19,8 +19,8 @@
 ## -*- texinfo -*-
 ## @deftypefn  {Function File} {} dec2base (@var{d}, @var{base})
 ## @deftypefnx {Function File} {} dec2base (@var{d}, @var{base}, @var{len})
-## Return a string of symbols in base @var{base} corresponding to
-## the non-negative integer @var{d}.
+## Return a string of symbols in base @var{base} corresponding to the
+## non-negative integer @var{d}.
 ##
 ## @example
 ## @group
@@ -29,13 +29,13 @@
 ## @end group
 ## @end example
 ##
-## If @var{d} is a matrix or cell array, return a string matrix with one
-## row per element in @var{d}, padded with leading zeros to the width of
-## the largest value.
+## If @var{d} is a matrix or cell array, return a string matrix with one row
+## per element in @var{d}, padded with leading zeros to the width of the
+## largest value.
 ##
 ## If @var{base} is a string then the characters of @var{base} are used as
-## the symbols for the digits of @var{d}.  Space (' ') may not be used
-## as a symbol.
+## the symbols for the digits of @var{d}.  Space (' ') may not be used as a
+## symbol.
 ##
 ## @example
 ## @group
@@ -44,8 +44,8 @@
 ## @end group
 ## @end example
 ##
-## The optional third argument, @var{len}, specifies the minimum
-## number of digits in the result.
+## The optional third argument, @var{len}, specifies the minimum number of
+## digits in the result.
 ## @seealso{base2dec, dec2bin, dec2hex}
 ## @end deftypefn
 
--- a/scripts/strings/dec2bin.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/strings/dec2bin.m	Sun May 10 21:37:19 2015 -0700
@@ -18,8 +18,10 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} dec2bin (@var{d}, @var{len})
-## Return a binary number corresponding to the non-negative integer
-## @var{d}, as a string of ones and zeros.  For example:
+## Return a binary number corresponding to the non-negative integer @var{d},
+## as a string of ones and zeros.
+##
+## For example:
 ##
 ## @example
 ## @group
@@ -28,12 +30,12 @@
 ## @end group
 ## @end example
 ##
-## If @var{d} is a matrix or cell array, return a string matrix with one
-## row per element in @var{d}, padded with leading zeros to the width of
-## the largest value.
+## If @var{d} is a matrix or cell array, return a string matrix with one row
+## per element in @var{d}, padded with leading zeros to the width of the
+## largest value.
 ##
-## The optional second argument, @var{len}, specifies the minimum
-## number of digits in the result.
+## The optional second argument, @var{len}, specifies the minimum number of
+## digits in the result.
 ## @seealso{bin2dec, dec2base, dec2hex}
 ## @end deftypefn
 
--- a/scripts/strings/dec2hex.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/strings/dec2hex.m	Sun May 10 21:37:19 2015 -0700
@@ -18,8 +18,10 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} dec2hex (@var{d}, @var{len})
-## Return the hexadecimal string corresponding to the non-negative
-## integer @var{d}.  For example:
+## Return the hexadecimal string corresponding to the non-negative integer
+## @var{d}.
+##
+## For example:
 ##
 ## @example
 ## @group
@@ -28,12 +30,12 @@
 ## @end group
 ## @end example
 ##
-## If @var{d} is a matrix or cell array, return a string matrix with one
-## row per element in @var{d}, padded with leading zeros to the width of
-## the largest value.
+## If @var{d} is a matrix or cell array, return a string matrix with one row
+## per element in @var{d}, padded with leading zeros to the width of the
+## largest value.
 ##
-## The optional second argument, @var{len}, specifies the minimum
-## number of digits in the result.
+## The optional second argument, @var{len}, specifies the minimum number of
+## digits in the result.
 ## @seealso{hex2dec, dec2base, dec2bin}
 ## @end deftypefn
 
--- a/scripts/strings/findstr.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/strings/findstr.m	Sun May 10 21:37:19 2015 -0700
@@ -19,10 +19,11 @@
 ## -*- texinfo -*-
 ## @deftypefn  {Function File} {} findstr (@var{s}, @var{t})
 ## @deftypefnx {Function File} {} findstr (@var{s}, @var{t}, @var{overlap})
-## Return the vector of all positions in the longer of the two strings
-## @var{s} and @var{t} where an occurrence of the shorter of the two starts.
-## If the optional argument @var{overlap} is true, the returned vector
-## can include overlapping positions (this is the default).  For example:
+## Return the vector of all positions in the longer of the two strings @var{s}
+## and @var{t} where an occurrence of the shorter of the two starts.
+##
+## If the optional argument @var{overlap} is true (default), the returned
+## vector can include overlapping positions.  For example:
 ##
 ## @example
 ## @group
--- a/scripts/strings/hex2dec.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/strings/hex2dec.m	Sun May 10 21:37:19 2015 -0700
@@ -18,8 +18,10 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} hex2dec (@var{s})
-## Return the integer corresponding to the hexadecimal number represented
-## by the string @var{s}.  For example:
+## Return the integer corresponding to the hexadecimal number represented by
+## the string @var{s}.
+##
+## For example:
 ##
 ## @example
 ## @group
--- a/scripts/strings/index.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/strings/index.m	Sun May 10 21:37:19 2015 -0700
@@ -20,8 +20,9 @@
 ## @deftypefn  {Function File} {} index (@var{s}, @var{t})
 ## @deftypefnx {Function File} {} index (@var{s}, @var{t}, @var{direction})
 ## Return the position of the first occurrence of the string @var{t} in the
-## string @var{s}, or 0 if no occurrence is found.  @var{s} may also be a
-## string array or cell array of strings.
+## string @var{s}, or 0 if no occurrence is found.
+##
+## @var{s} may also be a string array or cell array of strings.
 ##
 ## For example:
 ##
--- a/scripts/strings/isletter.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/strings/isletter.m	Sun May 10 21:37:19 2015 -0700
@@ -19,8 +19,9 @@
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} isletter (@var{s})
 ## Return a logical array which is true where the elements of @var{s}
-## are letters and false where they are not.  This is an alias for
-## the @code{isalpha} function.
+## are letters and false where they are not.
+##
+## This is an alias for the @code{isalpha} function.
 ## @seealso{isalpha, isdigit, ispunct, isspace, iscntrl, isalnum}
 ## @end deftypefn
 
--- a/scripts/strings/isstrprop.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/strings/isstrprop.m	Sun May 10 21:37:19 2015 -0700
@@ -18,7 +18,9 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} isstrprop (@var{str}, @var{prop})
-## Test character string properties.  For example:
+## Test character string properties.
+##
+## For example:
 ##
 ## @example
 ## @group
@@ -27,8 +29,8 @@
 ## @end group
 ## @end example
 ##
-## If @var{str} is a cell array, @code{isstrpop} is applied recursively
-## to each element of the cell array.
+## If @var{str} is a cell array, @code{isstrpop} is applied recursively to
+## each element of the cell array.
 ##
 ## Numeric arrays are converted to character strings.
 ##
@@ -56,12 +58,12 @@
 ##
 ## @item  @qcode{"space"}
 ## @itemx @qcode{"wspace"}
-## True for whitespace characters (space, formfeed, newline, carriage
-## return, tab, vertical tab).
+## True for whitespace characters (space, formfeed, newline, carriage return,
+## tab, vertical tab).
 ##
 ## @item @qcode{"punct"}
-## True for punctuation characters (printing characters except space
-## or letter or digit).
+## True for punctuation characters (printing characters except space or
+## letter or digit).
 ##
 ## @item @qcode{"cntrl"}
 ## True for control characters.
--- a/scripts/strings/mat2str.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/strings/mat2str.m	Sun May 10 21:37:19 2015 -0700
@@ -19,15 +19,16 @@
 ## -*- texinfo -*-
 ## @deftypefn  {Function File} {@var{s} =} mat2str (@var{x}, @var{n})
 ## @deftypefnx {Function File} {@var{s} =} mat2str (@var{x}, @var{n}, "class")
-## Format real, complex, and logical matrices as strings.  The
-## returned string may be used to reconstruct the original matrix by using
+## Format real, complex, and logical matrices as strings.
+##
+## The returned string may be used to reconstruct the original matrix by using
 ## the @code{eval} function.
 ##
-## The precision of the values is given by @var{n}.  If @var{n} is a
-## scalar then both real and imaginary parts of the matrix are printed
-## to the same precision.  Otherwise @code{@var{n}(1)} defines the
-## precision of the real part and @code{@var{n}(2)} defines the
-## precision of the imaginary part.  The default for @var{n} is 15.
+## The precision of the values is given by @var{n}.  If @var{n} is a scalar
+## then both real and imaginary parts of the matrix are printed to the same
+## precision.  Otherwise @code{@var{n}(1)} defines the precision of the real
+## part and @code{@var{n}(2)} defines the precision of the imaginary part. 
+## The default for @var{n} is 15.
 ##
 ## If the argument @qcode{"class"} is given then the class of @var{x} is
 ## included in the string in such a way that @code{eval} will result in the
--- a/scripts/strings/ostrsplit.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/strings/ostrsplit.m	Sun May 10 21:37:19 2015 -0700
@@ -20,9 +20,11 @@
 ## @deftypefn  {Function File} {[@var{cstr}] =} ostrsplit (@var{s}, @var{sep})
 ## @deftypefnx {Function File} {[@var{cstr}] =} ostrsplit (@var{s}, @var{sep}, @var{strip_empty})
 ## Split the string @var{s} using one or more separators @var{sep} and return
-## a cell array of strings.  Consecutive separators and separators at
-## boundaries result in empty strings, unless @var{strip_empty} is true.
-## The default value of @var{strip_empty} is false.
+## a cell array of strings.
+##
+## Consecutive separators and separators at boundaries result in empty
+## strings, unless @var{strip_empty} is true.  The default value of
+## @var{strip_empty} is false.
 ##
 ## 2-D character arrays are split at separators and at the original column
 ## boundaries.
--- a/scripts/strings/regexptranslate.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/strings/regexptranslate.m	Sun May 10 21:37:19 2015 -0700
@@ -18,16 +18,17 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} regexptranslate (@var{op}, @var{s})
-## Translate a string for use in a regular expression.  This may
-## include either wildcard replacement or special character escaping.
+## Translate a string for use in a regular expression.
+##
+## This may include either wildcard replacement or special character escaping.
+##
 ## The behavior is controlled by @var{op} which can take the following
 ## values
 ##
 ## @table @asis
 ## @item @qcode{"wildcard"}
-## The wildcard characters @code{.}, @code{*}, and @code{?} are replaced
-## with wildcards that are appropriate for a regular expression.
-## For example:
+## The wildcard characters @code{.}, @code{*}, and @code{?} are replaced with
+## wildcards that are appropriate for a regular expression.  For example:
 ##
 ## @example
 ## @group
--- a/scripts/strings/rindex.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/strings/rindex.m	Sun May 10 21:37:19 2015 -0700
@@ -20,7 +20,9 @@
 ## @deftypefn {Function File} {} rindex (@var{s}, @var{t})
 ## Return the position of the last occurrence of the character string
 ## @var{t} in the character string @var{s}, or 0 if no occurrence is
-## found.  @var{s} may also be a string array or cell array of strings.
+## found.
+##
+## @var{s} may also be a string array or cell array of strings.
 ##
 ## For example:
 ##
--- a/scripts/strings/str2num.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/strings/str2num.m	Sun May 10 21:37:19 2015 -0700
@@ -19,8 +19,9 @@
 ## -*- texinfo -*-
 ## @deftypefn  {Function File} {@var{x} =} str2num (@var{s})
 ## @deftypefnx {Function File} {[@var{x}, @var{state}] =} str2num (@var{s})
-## Convert the string (or character array) @var{s} to a number (or an
-## array).  Examples:
+## Convert the string (or character array) @var{s} to a number (or an array).
+##
+## Examples:
 ##
 ## @example
 ## @group
@@ -37,10 +38,9 @@
 ## conversion is successful.  If the conversion fails the numeric output,
 ## @var{x}, is empty and @var{state} is false.
 ##
-## @strong{Caution:} As @code{str2num} uses the @code{eval} function
-## to do the conversion, @code{str2num} will execute any code contained
-## in the string @var{s}.  Use @code{str2double} for a safer and faster
-## conversion.
+## @strong{Caution:} As @code{str2num} uses the @code{eval} function to do the
+## conversion, @code{str2num} will execute any code contained in the string
+## @var{s}.  Use @code{str2double} for a safer and faster conversion.
 ##
 ## For cell array of strings use @code{str2double}.
 ## @seealso{str2double, eval}
--- a/scripts/strings/strcat.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/strings/strcat.m	Sun May 10 21:37:19 2015 -0700
@@ -20,11 +20,12 @@
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} strcat (@var{s1}, @var{s2}, @dots{})
 ## Return a string containing all the arguments concatenated
-## horizontally.  If the arguments are cell strings, @code{strcat}
-## returns a cell string with the individual cells concatenated.
-## For numerical input, each element is converted to the
-## corresponding ASCII character.  Trailing white space for any
-## character string input is eliminated before the strings are
+## horizontally.
+##
+## If the arguments are cell strings, @code{strcat} returns a cell string
+## with the individual cells concatenated.  For numerical input, each element
+## is converted to the corresponding ASCII character.  Trailing white space
+## for any character string input is eliminated before the strings are
 ## concatenated.  Note that cell string values do @strong{not} have
 ## whitespace trimmed.
 ##
--- a/scripts/strings/strchr.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/strings/strchr.m	Sun May 10 21:37:19 2015 -0700
@@ -22,8 +22,10 @@
 ## @deftypefnx {Function File} {@var{idx} =} strchr (@var{str}, @var{chars}, @var{n}, @var{direction})
 ## @deftypefnx {Function File} {[@var{i}, @var{j}] =} strchr (@dots{})
 ## Search for the string @var{str} for occurrences of characters from
-## the set @var{chars}.  The return value(s), as well as the @var{n} and
-## @var{direction} arguments behave identically as in @code{find}.
+## the set @var{chars}.
+##
+## The return value(s), as well as the @var{n} and @var{direction} arguments
+## behave identically as in @code{find}.
 ##
 ## This will be faster than using regexp in most cases.
 ##
--- a/scripts/strings/strjoin.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/strings/strjoin.m	Sun May 10 21:37:19 2015 -0700
@@ -23,16 +23,16 @@
 ## Join the elements of the cell string array, @var{cstr}, into a single
 ## string.
 ##
-## If no @var{delimiter} is specified, the elements of @var{cstr}
+## If no @var{delimiter} is specified, the elements of @var{cstr} are
 ## separated by a space.
 ##
 ## If @var{delimiter} is specified as a string, the cell string array is
 ## joined using the string.  Escape sequences are supported.
 ##
-## If @var{delimiter} is a cell string array whose length is one less
-## than @var{cstr}, then the elements of @var{cstr} are joined by
-## interleaving the cell string elements of @var{delimiter}.  Escape
-## sequences are not supported.
+## If @var{delimiter} is a cell string array whose length is one less than
+## @var{cstr}, then the elements of @var{cstr} are joined by interleaving the
+## cell string elements of @var{delimiter}.  Escape sequences are not
+## supported.
 ##
 ## @example
 ## @group
--- a/scripts/strings/strjust.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/strings/strjust.m	Sun May 10 21:37:19 2015 -0700
@@ -21,11 +21,12 @@
 ## @deftypefn  {Function File} {} strjust (@var{s})
 ## @deftypefnx {Function File} {} strjust (@var{s}, @var{pos})
 ## Return the text, @var{s}, justified according to @var{pos}, which may
-## be @qcode{"left"}, @qcode{"center"}, or @qcode{"right"}.  If @var{pos}
-## is omitted it defaults to @qcode{"right"}.
+## be @qcode{"left"}, @qcode{"center"}, or @qcode{"right"}.
 ##
-## Null characters are replaced by spaces.  All other character
-## data are treated as non-white space.
+## If @var{pos} is omitted it defaults to @qcode{"right"}.
+##
+## Null characters are replaced by spaces.  All other character data are
+## treated as non-white space.
 ##
 ## Example:
 ##
--- a/scripts/strings/strmatch.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/strings/strmatch.m	Sun May 10 21:37:19 2015 -0700
@@ -22,10 +22,13 @@
 ## @deftypefn  {Function File} {} strmatch (@var{s}, @var{A})
 ## @deftypefnx {Function File} {} strmatch (@var{s}, @var{A}, "exact")
 ## Return indices of entries of @var{A} which begin with the string @var{s}.
+##
 ## The second argument @var{A} must be a string, character matrix, or a cell
-## array of strings.  If the third argument @qcode{"exact"} is not given, then
-## @var{s} only needs to match @var{A} up to the length of @var{s}.
-## Trailing spaces and nulls in @var{s} and @var{A} are ignored when matching.
+## array of strings.
+##
+## If the third argument @qcode{"exact"} is not given, then @var{s} only
+## needs to match @var{A} up to the length of @var{s}.  Trailing spaces and
+## nulls in @var{s} and @var{A} are ignored when matching.
 ##
 ## For example:
 ##
--- a/scripts/strings/strsplit.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/strings/strsplit.m	Sun May 10 21:37:19 2015 -0700
@@ -21,8 +21,8 @@
 ## @deftypefnx {Function File} {[@var{cstr}] =} strsplit (@var{str}, @var{del})
 ## @deftypefnx {Function File} {[@var{cstr}] =} strsplit (@dots{}, @var{name}, @var{value})
 ## @deftypefnx {Function File} {[@var{cstr}, @var{matches}] =} strsplit (@dots{})
-## Split the string @var{str} using the delimiters specified by @var{del}
-## and return a cell string array of substrings.
+## Split the string @var{str} using the delimiters specified by @var{del} and
+## return a cell string array of substrings.
 ##
 ## If a delimiter is not specified the string is split at whitespace
 ## @code{@{" ", "\f", "\n", "\r", "\t", "\v"@}}.  Otherwise, the delimiter,
--- a/scripts/strings/strtok.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/strings/strtok.m	Sun May 10 21:37:19 2015 -0700
@@ -21,12 +21,17 @@
 ## @deftypefnx {Function File} {[@var{tok}, @var{rem}] =} strtok (@var{str}, @var{delim})
 ##
 ## Find all characters in the string @var{str} up to, but not including, the
-## first character which is in the string @var{delim}.  If @var{rem} is
-## requested, it contains the remainder of the string, starting at the first
-## delimiter.  Leading delimiters are ignored.  If @var{delim} is not
-## specified, whitespace is assumed.  @var{str} may also be a cell array of
-## strings in which case the function executes on every individual string
-## and returns a cell array of tokens and remainders.
+## first character which is in the string @var{delim}.
+##
+## @var{str} may also be a cell array of strings in which case the function
+## executes on every individual string and returns a cell array of tokens and
+## remainders.
+##
+## Leading delimiters are ignored.  If @var{delim} is not specified,
+## whitespace is assumed.
+##
+## If @var{rem} is requested, it contains the remainder of the string, starting
+## at the first delimiter.
 ##
 ## Examples:
 ##
--- a/scripts/strings/strtrim.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/strings/strtrim.m	Sun May 10 21:37:19 2015 -0700
@@ -18,10 +18,13 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} strtrim (@var{s})
-## Remove leading and trailing whitespace from @var{s}.  If
-## @var{s} is a matrix, @var{strtrim} trims each row to the length of
+## Remove leading and trailing whitespace from @var{s}.
+##
+## If @var{s} is a matrix, @var{strtrim} trims each row to the length of
 ## longest string.  If @var{s} is a cell array of strings, operate recursively
-## on each string element.  For example:
+## on each string element.
+##
+## For example:
 ##
 ## @example
 ## @group
--- a/scripts/strings/strtrunc.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/strings/strtrunc.m	Sun May 10 21:37:19 2015 -0700
@@ -18,8 +18,10 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} strtrunc (@var{s}, @var{n})
-## Truncate the character string @var{s} to length @var{n}.  If @var{s}
-## is a character matrix, then the number of columns is adjusted.
+## Truncate the character string @var{s} to length @var{n}.
+##
+## If @var{s} is a character matrix, then the number of columns is adjusted.
+## 
 ## If @var{s} is a cell array of strings, then the operation is performed
 ## on each cell element and the new cell array is returned.
 ## @end deftypefn
--- a/scripts/strings/substr.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/strings/substr.m	Sun May 10 21:37:19 2015 -0700
@@ -25,7 +25,7 @@
 ## Position numbering for offsets begins with 1.  If @var{offset} is negative,
 ## extraction starts that far from the end of the string.
 ##
-## If @var{len} is omitted, the substring extends to the end of @var{S}.  A
+## If @var{len} is omitted, the substring extends to the end of @var{s}.  A
 ## negative value for @var{len} extracts to within @var{len} characters of
 ## the end of the string
 ##
--- a/scripts/strings/untabify.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/strings/untabify.m	Sun May 10 21:37:19 2015 -0700
@@ -20,17 +20,18 @@
 ## @deftypefn  {Function File} {} untabify (@var{t})
 ## @deftypefnx {Function File} {} untabify (@var{t}, @var{tw})
 ## @deftypefnx {Function File} {} untabify (@var{t}, @var{tw}, @var{deblank})
-## Replace TAB characters in @var{t}, with spaces.
-## The tab width is specified by @var{tw}, or defaults to eight.
-## The input, @var{t}, may be either a 2-D character array, or a cell
-## array of character strings.  The output is the same class
-## as the input.
+## Replace TAB characters in @var{t} with spaces.
 ##
-## If the optional argument @var{deblank} is true, then the spaces will
-## be removed from the end of the character data.
+## The input, @var{t}, may be either a 2-D character array, or a cell array of
+## character strings.  The output is the same class as the input.
+## 
+## The tab width is specified by @var{tw}, and defaults to eight.
 ##
-## The following example reads a file and writes an untabified version
-## of the same file with trailing spaces stripped.
+## If the optional argument @var{deblank} is true, then the spaces will be
+## removed from the end of the character data.
+##
+## The following example reads a file and writes an untabified version of the
+## same file with trailing spaces stripped.
 ##
 ## @example
 ## @group
--- a/scripts/testfun/assert.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/testfun/assert.m	Sun May 10 21:37:19 2015 -0700
@@ -33,27 +33,35 @@
 ## @itemx assert (@var{cond}, @var{errmsg})
 ## @itemx assert (@var{cond}, @var{errmsg}, @dots{})
 ## @itemx assert (@var{cond}, @var{msg_id}, @var{errmsg}, @dots{})
-## Called with a single argument @var{cond}, @code{assert} produces an
-## error if @var{cond} is false (numeric zero).  Any additional arguments are
-## passed to the @code{error} function for processing.
+## Called with a single argument @var{cond}, @code{assert} produces an error if
+## @var{cond} is false (numeric zero).
+##
+## Any additional arguments are passed to the @code{error} function for
+## processing.
 ##
 ## @item assert (@var{observed}, @var{expected})
-## Produce an error if observed is not the same as expected.  Note that
-## @var{observed} and @var{expected} can be scalars, vectors, matrices,
-## strings, cell arrays, or structures.
+## Produce an error if observed is not the same as expected.
+##
+## Note that @var{observed} and @var{expected} can be scalars, vectors,
+## matrices, strings, cell arrays, or structures.
 ##
 ## @item assert (@var{observed}, @var{expected}, @var{tol})
 ## Produce an error if observed is not the same as expected but equality
 ## comparison for numeric data uses a tolerance @var{tol}.
+## 
 ## If @var{tol} is positive then it is an absolute tolerance which will produce
 ## an error if @code{abs (@var{observed} - @var{expected}) > abs (@var{tol})}.
+## 
 ## If @var{tol} is negative then it is a relative tolerance which will produce
 ## an error if @code{abs (@var{observed} - @var{expected}) >
 ## abs (@var{tol} * @var{expected})}.
+##
 ## If @var{expected} is zero @var{tol} will always be interpreted as an
-## absolute tolerance.  If @var{tol} is not scalar its dimensions must agree
-## with those of @var{observed} and @var{expected} and tests are performed on
-## an element-by-element basis.
+## absolute tolerance.
+##
+## If @var{tol} is not scalar its dimensions must agree with those of
+## @var{observed} and @var{expected} and tests are performed on an
+## element-by-element basis.
 ## @end table
 ## @seealso{fail, test, error, isequal}
 ## @end deftypefn
--- a/scripts/testfun/demo.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/testfun/demo.m	Sun May 10 21:37:19 2015 -0700
@@ -23,6 +23,7 @@
 ## @deftypefnx {Function File} {} demo ("@var{name}", @var{n})
 ##
 ## Run example code block @var{n} associated with the function @var{name}.
+##
 ## If @var{n} is not specified, all examples are run.
 ##
 ## The preferred location for example code blocks is embedded within the script
@@ -61,20 +62,19 @@
 ## @end example
 ##
 ## @noindent
-## between the sections, but this usage is discouraged.  Other techniques
-## to avoid multiple initialization blocks include using multiple plots
-## with a new @code{figure} command between each plot, or using @code{subplot}
-## to put multiple plots in the same window.
+## between the sections, but this usage is discouraged.  Other techniques to
+## avoid multiple initialization blocks include using multiple plots with a new
+## @code{figure} command between each plot, or using @code{subplot} to put
+## multiple plots in the same window.
 ##
-## Finally, because @code{demo} evaluates within a function context it is
-## not possible to define new functions within the code.  Anonymous functions
-## make a good substitute in most instances.  If function blocks
-## @strong{must} be used then the code @code{eval (example ("function", n))}
-## will allow Octave to see them.  This has its own problems, however, as
-## @code{eval} only evaluates one line or statement at a time.  In this case
-## the function declaration must be wrapped with
-## @qcode{"if 1 <demo stuff> endif"} where @qcode{"if"} is on the same line
-## as @qcode{"demo"}.  For example:
+## Finally, because @code{demo} evaluates within a function context it is not
+## possible to define new functions within the code.  Anonymous functions make
+## a good substitute in most instances.  If function blocks @strong{must} be
+## used then the code @code{eval (example ("function", n))} will allow Octave
+## to see them.  This has its own problems, however, as @code{eval} only
+## evaluates one line or statement at a time.  In this case the function
+## declaration must be wrapped with @qcode{"if 1 <demo stuff> endif"} where
+## @qcode{"if"} is on the same line as @qcode{"demo"}.  For example:
 ##
 ## @example
 ## @group
--- a/scripts/testfun/example.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/testfun/example.m	Sun May 10 21:37:19 2015 -0700
@@ -24,8 +24,9 @@
 ## @deftypefnx {Function File} {[@var{s}, @var{idx}] =} example (@dots{})
 ##
 ## Display the code for example @var{n} associated with the function
-## @var{name}, but do not run it.  If @var{n} is not specified, all examples
-## are displayed.
+## @var{name}, but do not run it.
+##
+## If @var{n} is not specified, all examples are displayed.
 ##
 ## When called with output arguments, the examples are returned in the form of
 ## a string @var{s}, with @var{idx} indicating the ending position of the
--- a/scripts/testfun/fail.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/testfun/fail.m	Sun May 10 21:37:19 2015 -0700
@@ -53,8 +53,8 @@
 ##
 ## The angle brackets are not part of the output.
 ##
-## When called with the @qcode{"warning"} option @code{fail} will produce
-## an error if executing the code produces no warning.
+## When called with the @qcode{"warning"} option @code{fail} will produce an
+## error if executing the code produces no warning.
 ## @seealso{assert, error}
 ## @end deftypefn
 
@@ -67,11 +67,20 @@
   endif
 
   ## Parse input arguments
-  test_warning = (nargin > 1 && strcmp (pattern, "warning"));
-  if (nargin == 3)
-    pattern = warning_pattern;
-  elseif (nargin == 1 || (nargin == 2 && test_warning))
+  test_warning = false;
+  if (nargin == 1)
     pattern = "";
+  elseif (nargin == 2 && ! strcmp (pattern, "warning"))
+    ## Normal error test
+  elseif (nargin >= 2 && strcmp (pattern, "warning"))
+    test_warning = true;
+    if (nargin == 2)
+      pattern = "";
+    else
+      pattern = warning_pattern;
+    endif
+  else
+    print_usage ();
   endif
 
   ## Match any nonempty message
@@ -89,28 +98,24 @@
     ## Clear old warnings.
     lastwarn ("");
     ## Make sure warnings are turned on.
-    state = warning ("query", "quiet");
+    wstate = warning ("query", "quiet");
     warning ("on", "quiet");
     try
       evalin ("caller", [code ";"]);
       ## Retrieve new warnings.
       warn = lastwarn ();
-      warning (state.state, "quiet");
+      warning (wstate.state, "quiet");
       if (isempty (warn))
         msg = sprintf ("expected warning <%s> but got none", pattern);
       else
-        ## Transform "warning: ...\n" to "...".
-        warn([1:9, end]) = [];
         if (! isempty (regexp (warn, pattern, "once")))
           return;
         endif
         msg = sprintf ("expected warning <%s>\nbut got <%s>", pattern, warn);
       endif
     catch
-      warning (state.state, "quiet");
-      err = lasterr;
-      ## Transform "error: ...\n", to "...".
-      err([1:6, end]) = [];
+      warning (wstate.state, "quiet");
+      err = lasterr ();
       msg = sprintf ("expected warning <%s>\nbut got error <%s>", pattern, err);
     end_try_catch
 
@@ -121,9 +126,6 @@
       msg = sprintf ("expected error <%s> but got none", pattern);
     catch
       err = lasterr ();
-      if (strcmp (err(1:7), "error:"))
-         err([1:6, end]) = []; # transform "error: ...\n", to "..."
-      endif
       if (! isempty (regexp (err, pattern, "once")))
         return;
       endif
@@ -153,4 +155,5 @@
 ## Test input validation
 %!error fail ()
 %!error fail (1,2,3,4)
+%!error fail (1, "nowarning", "foo")
 
--- a/scripts/testfun/rundemos.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/testfun/rundemos.m	Sun May 10 21:37:19 2015 -0700
@@ -24,8 +24,8 @@
 ## Demo blocks in any C++ source files (@file{*.cc}) will also be executed
 ## for use with dynamically linked oct-file functions.
 ##
-## If no directory is specified, operate on all directories in Octave's
-## search path for functions.
+## If no directory is specified, operate on all directories in Octave's search
+## path for functions.
 ## @seealso{demo, runtests, path}
 ## @end deftypefn
 
--- a/scripts/testfun/runtests.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/testfun/runtests.m	Sun May 10 21:37:19 2015 -0700
@@ -24,8 +24,8 @@
 ## Test blocks in any C++ source files (@file{*.cc}) will also be executed
 ## for use with dynamically linked oct-file functions.
 ##
-## If no directory is specified, operate on all directories in Octave's
-## search path for functions.
+## If no directory is specified, operate on all directories in Octave's search
+## path for functions.
 ## @seealso{rundemos, test, path}
 ## @end deftypefn
 
--- a/scripts/testfun/speed.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/testfun/speed.m	Sun May 10 21:37:19 2015 -0700
@@ -21,12 +21,14 @@
 ## @deftypefnx {Function File} {[@var{order}, @var{n}, @var{T_f}, @var{T_f2}] =} speed (@dots{})
 ##
 ## Determine the execution time of an expression (@var{f}) for various input
-## values (@var{n}).  The @var{n} are log-spaced from 1 to @var{max_n}.  For
-## each @var{n}, an initialization expression (@var{init}) is computed to
-## create any data needed for the test.  If a second expression (@var{f2}) is
-## given then the execution times of the two expressions are compared.  When
-## called without output arguments the results are printed to stdout and
-## displayed graphically.
+## values (@var{n}).
+##
+## The @var{n} are log-spaced from 1 to @var{max_n}.  For each @var{n}, an
+## initialization expression (@var{init}) is computed to create any data needed
+## for the test.  If a second expression (@var{f2}) is given then the
+## execution times of the two expressions are compared.  When called without
+## output arguments the results are printed to stdout and displayed
+## graphically.
 ##
 ## @table @code
 ## @item @var{f}
@@ -38,10 +40,10 @@
 ## @code{[n1, n2, @dots{}, nk]}.
 ##
 ## @item @var{init}
-## Initialization expression for function argument values.  Use @var{k}
-## for the test number and @var{n} for the size of the test.  This should
-## compute values for all variables used by @var{f}.  Note that @var{init} will
-## be evaluated first for @math{k = 0}, so things which are constant throughout
+## Initialization expression for function argument values.  Use @var{k} for
+## the test number and @var{n} for the size of the test.  This should compute
+## values for all variables used by @var{f}.  Note that @var{init} will be
+## evaluated first for @math{k = 0}, so things which are constant throughout
 ## the test series can be computed once.  The default value is
 ## @code{@var{x} = randn (@var{n}, 1)}.
 ##
@@ -56,8 +58,8 @@
 ## @code{eps}.  If @var{tol} is @code{Inf}, then no comparison will be made.
 ##
 ## @item @var{order}
-## The time complexity of the expression @math{O(a*n^p)}.  This
-## is a structure with fields @code{a} and @code{p}.
+## The time complexity of the expression @math{O(a*n^p)}.  This is a
+## structure with fields @code{a} and @code{p}.
 ##
 ## @item @var{n}
 ## The values @var{n} for which the expression was calculated @strong{AND}
@@ -72,17 +74,15 @@
 ##
 ## @end table
 ##
-## The slope of the execution time graph shows the approximate
-## power of the asymptotic running time @math{O(n^p)}.  This
-## power is plotted for the region over which it is approximated
-## (the latter half of the graph).  The estimated power is not
-## very accurate, but should be sufficient to determine the
-## general order of an algorithm.  It should indicate if, for
-## example, the implementation is unexpectedly @math{O(n^2)}
-## rather than @math{O(n)} because it extends a vector each
-## time through the loop rather than pre-allocating storage.
-## In the current version of Octave, the following is not the
-## expected @math{O(n)}.
+## The slope of the execution time graph shows the approximate power of the
+## asymptotic running time @math{O(n^p)}.  This power is plotted for the
+## region over which it is approximated (the latter half of the graph).  The
+## estimated power is not very accurate, but should be sufficient to
+## determine the general order of an algorithm.  It should indicate if, for
+## example, the implementation is unexpectedly @math{O(n^2)} rather than
+## @math{O(n)} because it extends a vector each time through the loop rather
+## than pre-allocating storage.  In the current version of Octave, the
+## following is not the expected @math{O(n)}.
 ##
 ## @example
 ## speed ("for i = 1:n, y@{i@} = x(i); endfor", "", [1000, 10000])
@@ -98,21 +98,19 @@
 ## @end group
 ## @end example
 ##
-## An attempt is made to approximate the cost of individual
-## operations, but it is wildly inaccurate.  You can improve the
-## stability somewhat by doing more work for each @code{n}.  For
-## example:
+## An attempt is made to approximate the cost of individual operations, but
+## it is wildly inaccurate.  You can improve the stability somewhat by doing
+## more work for each @code{n}.  For example:
 ##
 ## @example
 ## speed ("airy(x)", "x = rand (n, 10)", [10000, 100000])
 ## @end example
 ##
-## When comparing two different expressions (@var{f}, @var{f2}), the slope
-## of the line on the speedup ratio graph should be larger than 1 if the new
+## When comparing two different expressions (@var{f}, @var{f2}), the slope of
+## the line on the speedup ratio graph should be larger than 1 if the new
 ## expression is faster.  Better algorithms have a shallow slope.  Generally,
-## vectorizing an algorithm will not change the slope of the execution
-## time graph, but will shift it relative to the original.  For
-## example:
+## vectorizing an algorithm will not change the slope of the execution time
+## graph, but will shift it relative to the original.  For example:
 ##
 ## @example
 ## @group
@@ -135,12 +133,12 @@
 ## @end group
 ## @end example
 ##
-## Assuming one of the two versions is in xcorr_orig, this
-## would compare their speed and their output values.  Note that the
-## FFT version is not exact, so one must specify an acceptable tolerance on
-## the comparison @code{100*eps}.  In this case, the comparison should be
-## computed relatively, as @code{abs ((@var{x} - @var{y}) ./ @var{y})} rather
-## than absolutely as @code{abs (@var{x} - @var{y})}.
+## Assuming one of the two versions is in xcorr_orig, this would compare their
+## speed and their output values.  Note that the FFT version is not exact, so
+## one must specify an acceptable tolerance on the comparison @code{100*eps}.
+## In this case, the comparison should be computed relatively, as
+## @code{abs ((@var{x} - @var{y}) ./ @var{y})} rather than absolutely as
+## @code{abs (@var{x} - @var{y})}.
 ##
 ## Type @kbd{example ("speed")} to see some real examples or
 ## @kbd{demo ("speed")} to run them.
--- a/scripts/time/asctime.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/time/asctime.m	Sun May 10 21:37:19 2015 -0700
@@ -19,7 +19,9 @@
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} asctime (@var{tm_struct})
 ## Convert a time structure to a string using the following
-## format: @qcode{"ddd mmm mm HH:MM:SS yyyy"}.  For example:
+## format: @qcode{"ddd mmm mm HH:MM:SS yyyy"}.
+##
+## For example:
 ##
 ## @example
 ## @group
--- a/scripts/time/calendar.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/time/calendar.m	Sun May 10 21:37:19 2015 -0700
@@ -23,8 +23,8 @@
 ## @deftypefnx {Function File} {} calendar (@dots{})
 ## Return the current monthly calendar in a 6x7 matrix.
 ##
-## If @var{d} is specified, return the calendar for the month containing
-## the date @var{d}, which must be a serial date number or a date string.
+## If @var{d} is specified, return the calendar for the month containing the
+## date @var{d}, which must be a serial date number or a date string.
 ##
 ## If @var{y} and @var{m} are specified, return the calendar for year @var{y}
 ## and month @var{m}.
--- a/scripts/time/clock.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/time/clock.m	Sun May 10 21:37:19 2015 -0700
@@ -18,10 +18,11 @@
 
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} clock ()
-## Return the current local date and time as a date vector.  The date vector
-## contains the following fields: current year, month (1-12), day (1-31),
-## hour (0-23), minute (0-59), and second (0-61).  The seconds field has
-## a fractional part after the decimal point for extended accuracy.
+## Return the current local date and time as a date vector.
+##
+## The date vector contains the following fields: current year, month (1-12),
+## day (1-31), hour (0-23), minute (0-59), and second (0-61).  The seconds
+## field has a fractional part after the decimal point for extended accuracy.
 ##
 ## For example:
 ##
@@ -32,8 +33,8 @@
 ## @end group
 ## @end example
 ##
-## The function clock is more accurate on systems that have the
-## @code{gettimeofday} function.
+## @code{clock} is more accurate on systems that have the @code{gettimeofday}
+## function.
 ## @seealso{now, date, datevec}
 ## @end deftypefn
 
--- a/scripts/time/ctime.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/time/ctime.m	Sun May 10 21:37:19 2015 -0700
@@ -20,7 +20,9 @@
 ## @deftypefn {Function File} {} ctime (@var{t})
 ## Convert a value returned from @code{time} (or any other non-negative
 ## integer), to the local time and return a string of the same form as
-## @code{asctime}.  The function @code{ctime (time)} is equivalent to
+## @code{asctime}.
+##
+## The function @code{ctime (time)} is equivalent to
 ## @code{asctime (localtime (time))}.  For example:
 ##
 ## @example
--- a/scripts/time/datenum.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/time/datenum.m	Sun May 10 21:37:19 2015 -0700
@@ -75,15 +75,14 @@
 ## Days can be fractional.
 ## @end itemize
 ##
-## @strong{Caution:} this function does not attempt to handle Julian
-## calendars so dates before October 15, 1582 are wrong by as much
-## as eleven days.  Also, be aware that only Roman Catholic countries
-## adopted the calendar in 1582.  It took until 1924 for it to be
-## adopted everywhere.  See the Wikipedia entry on the Gregorian
-## calendar for more details.
+## @strong{Caution:} this function does not attempt to handle Julian calendars
+## so dates before October 15, 1582 are wrong by as much as eleven days.  Also,
+## be aware that only Roman Catholic countries adopted the calendar in 1582.
+## It took until 1924 for it to be adopted everywhere.  See the Wikipedia entry
+## on the Gregorian calendar for more details.
 ##
-## @strong{Warning:} leap seconds are ignored.  A table of leap seconds
-## is available on the Wikipedia entry for leap seconds.
+## @strong{Warning:} leap seconds are ignored.  A table of leap seconds is
+## available on the Wikipedia entry for leap seconds.
 ## @seealso{datestr, datevec, now, clock, date}
 ## @end deftypefn
 
--- a/scripts/time/datestr.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/time/datestr.m	Sun May 10 21:37:19 2015 -0700
@@ -21,16 +21,18 @@
 ## @deftypefnx {Function File} {@var{str} =} datestr (@var{date}, @var{f})
 ## @deftypefnx {Function File} {@var{str} =} datestr (@var{date}, @var{f}, @var{p})
 ## Format the given date/time according to the format @code{f} and return
-## the result in @var{str}.  @var{date} is a serial date number (see
-## @code{datenum}) or a date vector (see @code{datevec}).  The value of
-## @var{date} may also be a string or cell array of strings.
+## the result in @var{str}.
+##
+## @var{date} is a serial date number (see @code{datenum}) or a date vector
+## (see @code{datevec}).  The value of @var{date} may also be a string or cell
+## array of strings.
 ##
-## @var{f} can be an integer which corresponds to one of the codes in
-## the table below, or a date format string.
+## @var{f} can be an integer which corresponds to one of the codes in the table
+## below, or a date format string.
 ##
-## @var{p} is the year at the start of the century in which two-digit years
-## are to be interpreted in.  If not specified, it defaults to the current
-## year minus 50.
+## @var{p} is the year at the start of the century in which two-digit years are
+## to be interpreted in.  If not specified, it defaults to the current year
+## minus 50.
 ##
 ## For example, the date 730736.65149 (2000-09-07 15:38:09.0934) would be
 ## formatted as follows:
@@ -94,9 +96,8 @@
 ## @item PM   @tab Use 12-hour time format                      @tab 11:30 PM
 ## @end multitable
 ##
-## If @var{f} is not specified or is @code{-1}, then use 0, 1 or 16,
-## depending on whether the date portion or the time portion of
-## @var{date} is empty.
+## If @var{f} is not specified or is @code{-1}, then use 0, 1 or 16, depending
+## on whether the date portion or the time portion of @var{date} is empty.
 ##
 ## If @var{p} is nor specified, it defaults to the current year minus 50.
 ##
--- a/scripts/time/datevec.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/time/datevec.m	Sun May 10 21:37:19 2015 -0700
@@ -31,14 +31,14 @@
 ## @var{f} is the format string used to interpret date strings
 ## (see @code{datestr}).  If @var{date} is a string, but no format is
 ## specified, then a relatively slow search is performed through various
-## formats.  It is always preferable to specify the format string @var{f}
-## if it is known.  Formats which do not specify a particular time component
-## will have the value set to zero.  Formats which do not specify a date will
+## formats.  It is always preferable to specify the format string @var{f} if it
+## is known.  Formats which do not specify a particular time component will
+## have the value set to zero.  Formats which do not specify a date will
 ## default to January 1st of the current year.
 ##
 ## @var{p} is the year at the start of the century to which two-digit years
-## will be referenced.  If not specified, it defaults to the current year
-## minus 50.
+## will be referenced.  If not specified, it defaults to the current year minus
+## 50.
 ## @seealso{datenum, datestr, clock, now, date}
 ## @end deftypefn
 
--- a/scripts/time/etime.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/time/etime.m	Sun May 10 21:37:19 2015 -0700
@@ -19,7 +19,9 @@
 ## -*- texinfo -*-
 ## @deftypefn {Function File} {} etime (@var{t2}, @var{t1})
 ## Return the difference in seconds between two time values returned from
-## @code{clock} (@math{@var{t2} - @var{t1}}).  For example:
+## @code{clock} (@math{@var{t2} - @var{t1}}).
+##
+## For example:
 ##
 ## @example
 ## @group
@@ -30,8 +32,8 @@
 ## @end example
 ##
 ## @noindent
-## will set the variable @code{elapsed_time} to the number of seconds since
-## the variable @code{t0} was set.
+## will set the variable @code{elapsed_time} to the number of seconds since the
+## variable @code{t0} was set.
 ## @seealso{tic, toc, clock, cputime, addtodate}
 ## @end deftypefn
 
--- a/scripts/time/is_leap_year.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/time/is_leap_year.m	Sun May 10 21:37:19 2015 -0700
@@ -19,8 +19,10 @@
 ## -*- texinfo -*-
 ## @deftypefn  {Function File} {} is_leap_year ()
 ## @deftypefnx {Function File} {} is_leap_year (@var{year})
-## Return true if @var{year} is a leap year and false otherwise.  If no
-## year is specified, @code{is_leap_year} uses the current year.
+## Return true if @var{year} is a leap year and false otherwise.
+##
+## If no year is specified, @code{is_leap_year} uses the current year.
+##
 ## For example:
 ##
 ## @example
--- a/scripts/time/now.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/time/now.m	Sun May 10 21:37:19 2015 -0700
@@ -24,8 +24,7 @@
 ## The integral part, @code{floor (now)} corresponds to the number of days
 ## between today and Jan 1, 0000.
 ##
-## The fractional part, @code{rem (now, 1)} corresponds to the current
-## time.
+## The fractional part, @code{rem (now, 1)} corresponds to the current time.
 ## @seealso{clock, date, datenum}
 ## @end deftypefn
 
--- a/scripts/time/weekday.m	Wed May 06 20:52:16 2015 +0100
+++ b/scripts/time/weekday.m	Sun May 10 21:37:19 2015 -0700
@@ -20,13 +20,14 @@
 ## @deftypefn  {Function File} {[@var{n}, @var{s}] =} weekday (@var{d})
 ## @deftypefnx {Function File} {[@var{n}, @var{s}] =} weekday (@var{d}, @var{format})
 ## Return the day of the week as a number in @var{n} and as a string in @var{s}.
+##
 ## The days of the week are numbered 1--7 with the first day being Sunday.
 ##
 ## @var{d} is a serial date number or a date string.
 ##
-## If the string @var{format} is not present or is equal to @qcode{"short"} then
-## @var{s} will contain the abbreviated name of the weekday.  If @var{format}
-## is @qcode{"long"} then @var{s} will contain the full name.
+## If the string @var{format} is not present or is equal to @qcode{"short"}
+## then @var{s} will contain the abbreviated name of the weekday.  If
+## @var{format} is @qcode{"long"} then @var{s} will contain the full name.
 ##
 ## Table of return values based on @var{format}:
 ##