-.\" $Id: mandoc.3,v 1.6 2011/05/01 10:40:52 kristaps Exp $
+.\" $Id: mandoc.3,v 1.8 2011/05/17 12:22:15 kristaps Exp $
.\"
.\" Copyright (c) 2009, 2010, 2011 Kristaps Dzonsons <kristaps@bsd.lv>
.\" Copyright (c) 2010 Ingo Schwarze <schwarze@openbsd.org>
.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\"
-.Dd $Mdocdate: May 1 2011 $
+.Dd $Mdocdate: May 17 2011 $
.Dt MANDOC 3
.Os
.Sh NAME
.Nm mchars_alloc ,
.Nm mchars_free ,
.Nm mchars_num2char ,
+.Nm mchars_num2uc ,
.Nm mchars_res2cp ,
.Nm mchars_res2str ,
.Nm mchars_spec2cp ,
.Nm mparse_strerror ,
.Nm mparse_strlevel
.Nd mandoc macro compiler library
+.Sh LIBRARY
+.Lb mandoc
.Sh SYNOPSIS
.In man.h
.In mdoc.h
.Fn mchars_free "struct mchars *p"
.Ft char
.Fn mchars_num2char "const char *cp" "size_t sz"
+.Ft int
+.Fn mchars_num2uc "const char *cp" "size_t sz"
.Ft "const char *"
.Fo mchars_res2str
.Fa "struct mchars *p"
.Pq see Fn mchars_alloc
and parsing escape sequences from strings
.Pq see Fn mandoc_escape .
+.Pp
+This library is
+.Ud
.Sh REFERENCE
This section documents the functions, types, and variables available
via
Free an object created with
.Fn mchars_alloc .
.It Fn mchars_num2char
-Convert a character index as found in \eN\(aq\(aq into a printable
-character.
+Convert a character index (e.g., the \eN\(aq\(aq escape) into a
+printable ASCII character.
+Returns \e0 (the nil character) if the input sequence is malformed.
+.It Fn mchars_num2uc
+Convert a hexadecimal character index (e.g., the \e[uNNNN] escape) into
+a Unicode codepoint.
Returns \e0 (the nil character) if the input sequence is malformed.
.It Fn mchars_res2cp
Convert a predefined character into a valid Unicode codepoint.