--- old/usr/src/man/man3c/newlocale.3c	Sun Jun 29 11:52:13 2014
+++ new/usr/src/man/man3c/newlocale.3c	Sun Jun 29 11:52:13 2014
@@ -11,26 +11,27 @@
 .\"
 .\"
 .\" Copyright (c) 2014 Joyent, Inc.  All rights reserved.
+.\" Copyright 2014 Garrett D'Amore <garrett@damore.org>
 .\"
-.TH NEWLOCALE 3C "Jun 11, 2014"
-
+.TH NEWLOCALE 3C "Jun 23, 2014"
 .SH NAME
-
 duplocale, freelocale, newlocale \- create, duplicate, and destroy locale objects
-
 .SH SYNOPSIS
-
 .LP
 .nf
 #include <locale.h>
 
-.BI "locale_t newlocale(int " category_mask, " const char *" locale,
-.BI "    locale_t " base );
+\fBlocale_t\fR \fBnewlocale\fR(\fBint\fR \fIcategory_mask\fR, \fBconst char *\fR \fIlocale\fR,
+    \fBlocale_t\fR \fIbase\fR);
+.fi
 .LP
-.BI "locale_t duplocale(locale_t " loc );
+.nf
+\fBlocale_t\fR \fBduplocale\fR(\fBlocale_t\fR \fIloc\fR);
+.fi
 .LP
-.BI "void freelocale(locale_t " loc );
-
+.nf
+\fBvoid\fR \fBfreelocale\fR(\fBlocale_t\fR \fIloc\fR);
+.fi
 .SH DESCRIPTION
 .LP
 These functions manipulate locale objects that can be used
@@ -37,10 +38,9 @@
 .BR uselocale (3C)
 and functions that take arguments of type
 .BR locale_t .
-
 .LP
 The function
-.I newlocale
+.B newlocale()
 can be used to create a new locale object. It can also be used to modify an
 existing locale object, the new locale object will be a replacement for the
 modified locale object. To create a new locale, the argument
@@ -57,7 +57,7 @@
 and filling in the remaining categories from the locale
 .IR base .
 When
-.B newlocale
+.B newlocale()
 returns, callers must no longer use
 .IR base
 and assume that
@@ -65,119 +65,49 @@
 has been called on it. In addition to locales defined on the system, the
 following three locales may always be passed in as the string
 .IR locale :
-
-.sp
-.ne 2
-.na
+.TP
 "C"
-.ad
-.sp .6
-.RS 4n
 Specifies the traditional UNIX system behavior.
-.RE
-
-.sp
-.ne 2
-.na
+.TP
 "POSIX"
-.ad
-.sp .6
-.RS 4n
 An alternate name fo the locale "C".
-.RE
-
-.sp
-.ne 2
-.na
+.TP
 ""
-.ad
-.sp .6
-.RS 4n
 Indicates that the locale should be processed based in the values in the
 environment. See
-.BR setlocale "(3C) and " environ (5)
+.BR setlocale (3C)
+and 
+.BR environ (5)
 for more information.
-.RE
-
-
-
 .LP
 The value of
 .I category_mask
 is a bitwise-inclusive or of the following macros which correspond to categories
 as defined in
-.BR locale "(5) and " environ" (5):
-
-.sp
-.ne 2
-.na
-LC_CTYPE_MASK
-.ad
-.sp .6
-.RS 4n
+.BR locale (5)
+and
+.BR environ (5):
+.TP
+.B LC_CTYPE_MASK
 Character classification and case conversion.
-.RE
-
-.sp
-.ne 2
-.na
-LC_NUMERIC_MASK
-.ad
-.sp .6
-.RS 4n
+.TP
+.B LC_NUMERIC_MASK
 Numeric formatting.
-.RE
-
-.sp
-.ne 2
-.na
-LC_TIME_MASK
-.ad
-.sp .6
-.RS 4n
+.TP
+.B LC_TIME_MASK
 Date and time formatting.
-.RE
-
-.sp
-.ne 2
-.na
-LC_COLLATE_MASK
-.ad
-.sp .6
-.RS 4n
+.TP
+.B LC_COLLATE_MASK
 Collation order.
-.RE
-
-.sp
-.ne 2
-.na
-LC_MONETARY_MASK
-.ad
-.sp .6
-.RS 4n
-Monetary formating.
-.RE
-
-.sp
-.ne 2
-.na
-LC_MESSAGES_MASK
-.ad
-.sp .6
-.RS 4n
+.TP
+.B LC_MONETARY_MASK
+Monetary formatting.
+.TP
+.B LC_MESSAGES_MASK
 Formats of informative and diagnostic messages and interactive responses.
-.RE
-
-.sp
-.ne 2
-.na
-LC_ALL_MASK
-.ad
-.sp .6
-.RS 4n
-Instructs that all the categories defined above, be used.
-.RE
-
+.TP
+.B LC_ALL_MASK
+Mask of all categories.
 .LP
 The function
 .B duplocale()
@@ -188,7 +118,6 @@
 .B duplocale()
 creates a copy of the current global locale as defined through calls to
 .BR setlocale (3C).
-
 .LP
 The function
 .B freelocale()
@@ -198,9 +127,8 @@
 .B freelocale()
 on
 .BR LC_GLOBAL_LOCALE .
-
 .SH RETURN VALUES
-
+.LP
 On success, the functions
 .B newlocale()
 and
@@ -221,7 +149,6 @@
 .B freelocale()
 function does not set
 .B errno.
-
 .SH ERRORS
 .LP
 The
@@ -229,41 +156,22 @@
 and
 .B duplocale()
 functions will fail if:
-.sp
-.ne 2
-.na
+.TP
 .B ENOMEM
-.ad
-.RS 10n
 Insufficient memory was available to create the locale object or to load the
 requested locale data.
-.RE
-
 .LP
 The
 .B newlocale()
 function will fail if:
-.sp
-.ne 2
-.na
+.TP
 .B EINVAL
-.ad
-.RS 10n
 An unknown bit is specified in
 .IR category_mask .
-.RE
-.sp
-.ne 2
-.na
+.TP
 .B ENOENT
-.ad
-.RS 10n
 Locale data was not found for a category specified in
-.IR category_mask .
-.RE
-
 .SH ATTRIBUTES
-.sp
 .TS
 box;
 c | c
