diff --git a/docs/ksh/faq.html b/docs/ksh/faq.html
index 78a1e856b..e540e8086 100644
--- a/docs/ksh/faq.html
+++ b/docs/ksh/faq.html
@@ -705,7 +705,7 @@ in FPATH and all of them will be added to the list of known
functions. Any commands placed in this file outside of function
definitions will be invoked first. The name of the file must be
that of the first function you invoke. If you have several functions
-defined in one file, than you should create a link to each of the
+defined in one file, then you should create a link to each of the
function names that can potentially be invoked first.
What are name reference variables and how are they used?
diff --git a/src/cmd/ksh93/nval.3 b/src/cmd/ksh93/nval.3
index 9dc09a51e..9c09437d6 100644
--- a/src/cmd/ksh93/nval.3
+++ b/src/cmd/ksh93/nval.3
@@ -162,7 +162,7 @@ Otherwise, if \f5NV_ASSIGN\fP is specified, then the characters up
to the first \f5=\fP or \f5+=\fP are used to find the name-value pair,
and the characters after the \f5=\fP are used to define
the value that will be assigned to this name-value pair.
-If \fIname\fP does not contain an \f5=\fP, than no assignment
+If \fIname\fP does not contain an \f5=\fP, then no assignment
will be made.
If the first identifier in \fIname\fP is a reference and is not
preceded by a \fB.\fP,
diff --git a/src/cmd/ksh93/sh/macro.c b/src/cmd/ksh93/sh/macro.c
index c13bb8a7a..bb9b1e6b8 100644
--- a/src/cmd/ksh93/sh/macro.c
+++ b/src/cmd/ksh93/sh/macro.c
@@ -155,7 +155,7 @@ char *sh_mactry(Shell_t *shp,register char *string)
* expansion on .
* If greater than 1 file expansion is performed if the result
* yields a single pathname.
- * If negative, than expansion rules for assignment are applied.
+ * If negative, then expansion rules for assignment are applied.
*/
char *sh_mactrim(Shell_t *shp, char *str, register int mode)
{
diff --git a/src/cmd/ksh93/tests/shtests b/src/cmd/ksh93/tests/shtests
index 66e6b03c9..ae28f9dca 100755
--- a/src/cmd/ksh93/tests/shtests
+++ b/src/cmd/ksh93/tests/shtests
@@ -43,8 +43,8 @@ USAGE=$'
script names matching \b'$timesensitive$'\b are run with
\bVMALLOC_OPTIONS\b unset.]
[V:valgrind?Set \b--novmalloc_options\b and run the test scripts with
- \bvalgrind\b(1) on \bksh\b. If \b$SHELL-g\b exists and is executable
- than it is used instead of \b$SHELL\b.]
+ \bvalgrind\b(1) on \bksh\b. If \b$SHELL-g\b exists and is executable,
+ then it is used instead of \b$SHELL\b.]
[x:trace?Enable script execution trace.]
[ test.sh ... ] [ name=value ... ]
diff --git a/src/lib/libast/man/sfio.3 b/src/lib/libast/man/sfio.3
index 29c4657d1..8a6fcdf42 100644
--- a/src/lib/libast/man/sfio.3
+++ b/src/lib/libast/man/sfio.3
@@ -458,7 +458,7 @@ should leave \f5SF_MTSAFE\fP off and performs explicit locking with \f5sfmutex()
This flag indicates that I/O system calls should not be resumed
after being interrupted by signals. It is useful for
aborting I/O operations on such interruptions. Note, however,
-than certain operating systems (e.g., BSD Unix systems) may automatically
+that certain operating systems (e.g., BSD Unix systems) may automatically
resume interrupted system calls outside the scope of the library. On such systems,
\f5SF_IOINTR\fP will be ineffective.