Release 980628
[wine] / documentation / README.documentation
1
2                         Wine Documentation README
3
4
5 Wine Man Page
6
7   The man page for the wine emulator is in this directory. It is installed 
8 by 'make install'.
9
10 Wine Reference Manual
11
12   Texinfo source for preliminary comprehensive documentation is in
13 this directory.  Use 'make info' in this directory to generate the GNU
14 info version, 'make dvi' to generate the DVI version (hit 'r' to
15 ignore errors), or 'make all' for both. It is no longer installed by
16 default.
17
18 Wine API documentation
19
20   Do a 'make manpages' in the Wine toplevel directory to generate the
21 API manpages from the Wine source, or 'make man' in any source
22 subdirectory to generate manpages from only that directory. The
23 manpages will be deposited in [documentation/man3w].  You will need
24 c2man, available as source from http://www.debian.org/ and other
25 places. Apply the patch included at the end of this file for improved
26 terse description formatting.  The man pages are not installed
27 automatically.
28
29 Other READMEs
30
31   Other informational files are in this directory as well as scattered
32 through the source tree.
33
34 Other resources:
35
36   Usenet: news:comp.emulators.ms-windows.wine
37   WWW:    http://www.winehq.com/
38
39
40 Writing Wine API Documentation
41
42 To improve the documentation of the Wine API, just add comments to the
43 existing source. For example,
44
45 /******************************************************************
46  *         PlayMetaFile32 (GDI32.265) Render metafile to device
47  *
48  *    The metafile is rendered in the device context specified by hdc.
49  *
50  *  RETURNS
51  *
52  *    Always returns TRUE.
53  *
54  * FIXME
55  *    Wine metafiles are not 100% binary compatible with Microsoft Windows
56  *    metafiles.
57  */
58 BOOL32 WINAPI PlayMetaFile32(
59         HDC32 hdc, /* handle of device context in which to render metafile */
60         HMETAFILE32 hmf /* metafile handle */
61 ) {
62
63 becomes, after processing with c2man and nroff -man,
64
65
66 PlayMetaFile32(3w)                             PlayMetaFile32(3w)
67
68
69 NAME
70        PlayMetaFile32   -   PlayMetaFile32   (GDI32.265)   Render
71        metafile to device
72
73 SYNOPSIS
74        BOOL32 PlayMetaFile32
75        (
76             HDC32 hdc,
77             HMETAFILE32 hmf
78        );
79
80 PARAMETERS
81        HDC32 hdc
82               Handle  of  device  context  in  which  to   render
83               metafile.
84
85        HMETAFILE32 hmf
86               Metafile handle.
87
88 DESCRIPTION
89        The  metafile  is rendered in the device context specified
90        by hdc.
91
92 RETURNS
93        Always returns TRUE.
94
95 FIXME
96        Wine  metafiles  are  not  100%  binary  compatible   with
97        Microsoft Windows metafiles.
98
99 ----------------------------------------------------------------
100 Patch for c2man:
101
102 diff -u c2man-2.41.orig/manpage.c c2man-2.41/manpage.c
103 --- c2man-2.41.orig/manpage.c   Tue Apr 23 21:13:44 1996
104 +++ c2man-2.41/manpage.c        Thu Dec 18 13:20:08 1997
105 @@ -585,10 +585,15 @@
106                     const char *endterse, *afterdash = skipdash(start_line);
107  
108                     /* find the end of the terse comment */
109 -                   while (*c && *c != '.' && *c != '\n')
110 +                   while (*c && *c != '\n')
111 +                   {
112                         c++;
113 +                     /* '.' ends terse description only if it ends sentence */
114 +                       if (*(c-1)=='.' && *c && isspace(*c)) 
115 +                         break;
116 +                   }
117  
118 -                   endterse = *c == '.' ? c+1 : c;
119 +                   endterse = c;
120                     *terse = alloc_string(
121                         afterdash < endterse ? afterdash : start_line,
122                         endterse);