Added all of the MH sources, including RCS files, in
[mmh] / docs / historical / mh-6.8.5 / conf / doc / RCS / mh-hack.rf,v
1 head    1.6;
2 access;
3 symbols;
4 locks; strict;
5
6
7 1.6
8 date    92.05.12.22.23.34;      author jromine; state Exp;
9 branches;
10 next    1.5;
11
12 1.5
13 date    90.04.05.15.13.03;      author sources; state Exp;
14 branches;
15 next    1.4;
16
17 1.4
18 date    90.03.22.11.31.17;      author sources; state Exp;
19 branches;
20 next    1.3;
21
22 1.3
23 date    90.03.20.19.41.55;      author sources; state Exp;
24 branches;
25 next    1.2;
26
27 1.2
28 date    90.03.20.17.36.11;      author sources; state Exp;
29 branches;
30 next    1.1;
31
32 1.1
33 date    90.03.20.17.20.55;      author sources; state Exp;
34 branches;
35 next    ;
36
37
38 desc
39 @@
40
41
42 1.6
43 log
44 @fixup for nroff problems
45 @
46 text
47 @.\"    @@(MHWARNING)
48 .\" @@(#)$Id: mh-hack.rf,v 1.5 1990/04/05 15:13:03 sources Exp jromine $
49 .SC MH-HACK 8
50 .NA
51 mh-hack \- how to hack MH
52 .SY
53 big hack attack
54 .DE
55 This is a description of how one can modify the \fIMH\fR system.
56 The \fIMH\fR distribution has a lot of complex inter\-relations,
57 so before you go modifying any code, you should read this and
58 understand what is going on.
59
60 .in +.5i
61 .ti -.5i
62 \fBADDING A NEW PROGRAM\fR
63 .br
64 Suppose you want to create a new \fIMH\fR command called
65 \*(lqpickle\*(rq.
66 First, create and edit \*(lqpickle.c\*(rq in the \fBuip/\fR directory.
67 Next edit \fBconf/makefiles/uip\fR to include \*(lqpickle\*(rq.
68 This file has directions at the end of it which explain how it should
69 be modified.
70 Next, update any documentation (described below).
71 At this point you can re\-configure \fIMH\fR.
72 See \fImh\-gen(8)\fR for instructions on how to do this
73 (basically, you want \*(lqmhconfig MH\*(rq).
74
75 .ti -.5i
76 \fBADDING A NEW SUBROUTINE\fR
77 .br
78 Suppose you want to create a new \fIMH\fR routine called
79 \*(lqpickle\*(rq.
80 First, create and edit \*(lqpickle.c\*(rq in the \fBsbr/\fR directory.
81 Next edit \fBconf/makefiles/sbr\fR to include \*(lqpickle\*(rq.
82 This file has directions at the end of it which explain how it should
83 be modified.
84 You should modify \fBconfig/mh.h\fR to define \*(lqpickle ();\*(rq.
85 Similarly, \fBsbr/llib\-lsbr\fR should be modified for \fIlint\fR.
86 At this point you can re\-configure \fIMH\fR.
87
88 .ti -.5i
89 \fBUPDATING DOCUMENTATION\fR
90 .br
91 Edit whatever files you want in \fBconf/doc/\fR.
92 When documenting a new program, such as \*(lqpickle\*(rq,
93 you should create a manual page with the name \*(lqpickle.rf\*(rq.
94 The file \fBconf/doc/template\fR has a manual page template that you
95 can use.
96 If you are documenting a new program, then you should also update three
97 other files:
98 The file \fBconf/doc/mh.rf\fR should be modified to include the
99 \*(lq\&.NA\*(rq section from \*(lqpickle.rf\*(rq.
100 The file \fBconf/doc/mh\-chart.rf\fR should be modified to include
101 the \*(lq\&.SY\*(rq section from \*(lqpickle.rf\*(rq.
102 Finally, the file \fBconf/doc/MH.rf\fR should be modified to include a
103 \*(lq\&.so pickle.me\*(rq.
104 Naturally, none of these changes will be reflected in the configuration
105 until you actually run \fImhconfig\fR.
106 .in -.5i
107 .Fi
108 Too numerous to mention.  Honest.
109 .Sa
110 mh\-gen(8)
111 .Bu
112 Hacking is an art, but most programmers are butchers, not artists.
113 .En
114 @
115
116
117 1.5
118 log
119 @add ID
120 @
121 text
122 @d2 2
123 a3 2
124 .\" @@(#)$Id:$
125 .SC MH\-HACK 8
126 d5 1
127 a5 1
128 mh\-hack \- how to hack MH
129 @
130
131
132 1.4
133 log
134 @put things back, do .NA stuff another way
135 @
136 text
137 @d2 1
138 @
139
140
141 1.3
142 log
143 @typo
144 @
145 text
146 @d2 2
147 a3 2
148 .TH MH\-HACK 8 @@(MHCENTERFOOT) @@(MHLEFTFOOT)
149 .SH .NA
150 d5 1
151 a5 1
152 .SH .SY
153 @
154
155
156 1.2
157 log
158 @fixup for makewhatis
159 @
160 text
161 @d2 1
162 a2 1
163 .TH MH\-HACK 8 [mh.6] MH
164 @
165
166
167 1.1
168 log
169 @Initial revision
170 @
171 text
172 @d2 2
173 a3 2
174 .SC MH\-HACK 8
175 .NA
176 d5 1
177 a5 1
178 .SY
179 @