.\" Copyright (C) 2001 Information-technology Promotion Agency (IPA)
.\" Copyright (C) 2001-2009
.\"   National Institute of Advanced Industrial Science and Technology (AIST)
.\" This file is part of the m17n library documentation.
.\" Permission is granted to copy, distribute and/or modify this document
.\" under the terms of the GNU Free Documentation License, Version 1.2 or
.\" any later version published by the Free Software Foundation; with no
.\" Invariant Section, no Front-Cover Texts,
.\" and no Back-Cover Texts.  A copy of the license is included in the
.\" appendix entitled "GNU Free Documentation License".
.TH "Debugging" 3m17n "15 Oct 2009" "" "Version 1.5.5" "" "The m17n Library" \" -*- nroff -*-
.ad l
.nh
.SH NAME
Debugging \- Support for m17n library users to debug their programs.  

.PP
.SS "Functions"

.in +1c
.ti -1c
.RI "\fBMCharTable\fP * \fBmdebug_dump_chartab\fP (\fBMCharTable\fP *table, int indent)"
.br
.RI "\fIDump a chartable. \fP"
.ti -1c
.RI "\fBMFace\fP * \fBmdebug_dump_face\fP (\fBMFace\fP *face, int indent)"
.br
.RI "\fIDump a face. \fP"
.ti -1c
.RI "\fBMFont\fP * \fBmdebug_dump_font\fP (\fBMFont\fP *font)"
.br
.RI "\fIDump a font. \fP"
.ti -1c
.RI "\fBMFontset\fP * \fBmdebug_dump_fontset\fP (\fBMFontset\fP *fontset, int indent)"
.br
.RI "\fIDump a fontset. \fP"
.ti -1c
.RI "\fBMInputMethod\fP * \fBmdebug_dump_im\fP (\fBMInputMethod\fP *im, int indent)"
.br
.RI "\fIDump an input method. \fP"
.ti -1c
.RI "int \fBmdebug_hook\fP ()"
.br
.RI "\fIHook function called on an error. \fP"
.ti -1c
.RI "\fBMText\fP * \fBmdebug_dump_mtext\fP (\fBMText\fP *mt, int indent, int fullp)"
.br
.RI "\fIDump an M-text. \fP"
.ti -1c
.RI "\fBMPlist\fP * \fBmdebug_dump_plist\fP (\fBMPlist\fP *plist, int indent)"
.br
.RI "\fIDump a property list. \fP"
.ti -1c
.RI "\fBMSymbol\fP \fBmdebug_dump_symbol\fP (\fBMSymbol\fP symbol, int indent)"
.br
.RI "\fIDump a symbol. \fP"
.ti -1c
.RI "\fBMSymbol\fP \fBmdebug_dump_all_symbols\fP (int indent)"
.br
.RI "\fIDump all symbol names. \fP"
.in -1c
.SH "Detailed Description"
.PP 
Support for m17n library users to debug their programs. 
.PP
The m17n library provides the following facilities to support the library users to debug their programs.
.PP
.PD 0
.IP "\(bu" 2
Environment variables to control printing of various information.
.PP
.PD 0
.IP "  \(bu" 4
MDEBUG_INIT \-\- If set to 1, print information about the library initialization on the call of \fBM17N_INIT()\fP.
.PP

.IP "  \(bu" 4
MDEBUG_FINI \-\- If set to 1, print counts of objects that are not yet freed on the call of \fBM17N_FINI()\fP.
.PP

.IP "  \(bu" 4
MDEBUG_CHARSET \-\- If set to 1, print information about charsets being loaded from the m17n database.
.PP

.IP "  \(bu" 4
MDEBUG_CODING \-\- If set to 1, print information about coding systems being loaded from the m17n database.
.PP

.IP "  \(bu" 4
MDEBUG_DATABASE \-\- If set to 1, print information about data being loaded from the m17n database.
.PP

.IP "  \(bu" 4
MDEBUG_FONT \-\- If set to 1, print information about fonts being selected and opened.
.PP

.IP "  \(bu" 4
MDEBUG_FLT \-\- If set to 1, 2, or 3, print information about which command of Font Layout Table are being executed. The bigger number prints the more detailed information.
.PP

.IP "  \(bu" 4
MDEBUG_INPUT \-\- If set to 1, print information about how an input method is running.
.PP

.IP "  \(bu" 4
MDEBUG_ALL \-\- Setting this variable to 1 is equivalent to setting all the above variables to 1.
.PP

.PP
.PP

.IP "\(bu" 2
Functions to print various objects in a human readable way. See the documentation of mdebug_dump_XXXX() functions.
.PP

.IP "\(bu" 2
The hook function called on an error. See the documentation of \fBmdebug_hook()\fP.
.PP

.PP

.SH COPYRIGHT
Copyright (C) 2001 Information\-technology Promotion Agency (IPA)
.br
Copyright (C) 2001\-2009 National Institute of Advanced Industrial Science and Technology (AIST)
.br
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License 
<http://www.gnu.org/licenses/fdl.html>.
