243
|
1 -*- mode:outline -*-
|
|
2 * Introduction to XEmacs Packages
|
|
3 =================================
|
|
4
|
|
5 As of XEmacs 20.5, XEmacs is no longer distributed in a large
|
|
6 monolithic distribution. The distribution has been broken up into
|
|
7 separate units called packages. In the general case, one may install
|
|
8 and uninstall various packages freely without having to modify the
|
|
9 XEmacs binary. This gives an installer the ability to tailor an
|
|
10 XEmacs installation for local needs with safe removal of unnecessary
|
|
11 code.
|
|
12
|
|
13 There are two main flavors of packages.
|
|
14
|
|
15 ** Regular Packages
|
|
16 ===================
|
|
17
|
|
18 A regular package is one in which multiple files are involved and one
|
|
19 may not in general safely remove any of them.
|
|
20
|
|
21 ** Single-File Packages
|
|
22 =======================
|
|
23
|
|
24 A single-file package is an aggregate collection of thematically
|
|
25 related but otherwise independent lisp files. These files are bundled
|
|
26 together for download convenience and individual files may deleted at
|
|
27 will without any loss of functionality.
|
|
28
|
|
29 * Package mechanics
|
|
30 ===================
|
|
31
|
|
32 This section describes how package hierarchy directories are put
|
|
33 together and how they may be configured into XEmacs.
|
|
34
|
|
35 ** Package Path
|
|
36 ===============
|
|
37
|
|
38 For backwards compatibility and for ease of transition to XEmacs
|
|
39 20.5+, it is possible to use previous XEmacs installations as package
|
|
40 directories. Specify something like
|
|
41 --package-path="~/.xemacs::/usr/local/lib/xemacs-20.3" to configure
|
|
42 when building. You will have extra messages at dump time relating to
|
|
43 lisp shadows which you may ignore. The magical null directory `::' is
|
|
44 a marker indicating where Lisp bundled with the running XEmacs gets
|
|
45 put into the load path. By specifing the older directories after the
|
|
46 current one, the newer lisp overrides the older lisp.
|
|
47
|
|
48 ** The anatomy of an XEmacs Package hierarchy
|
|
49 =============================================
|
|
50
|
|
51 An XEmacs package is laid out just like a normal installed XEmacs lisp
|
|
52 directory. It may have lisp, etc, info, and lib-src subdirectories.
|
|
53 These directories get added at XEmacs startup to whatever directories
|
|
54 it was already using.
|
|
55
|
|
56 There may be any number of Package hierarchy directories.
|
|
57
|
|
58 * Package Distributions
|
|
59 =======================
|
|
60
|
|
61 XEmacs lisp packages are distributed in two ways depending on the
|
|
62 intended use. Binary Packages are for installers and end-users and
|
|
63 may be installed directly into an XEmacs package directory. Source
|
|
64 Packages are for developers and include all files necessary for
|
|
65 rebuilding bytecompiled lisp and creating tarballs for distribution.
|
|
66
|
|
67 ** Binary Packages
|
|
68 ==================
|
|
69
|
|
70 Binary packages may be installed directly into an XEmacs package
|
|
71 directory. XEmacs package directories are determined at the time
|
|
72 XEmacs is configured for building. The default is
|
|
73 ${prefix}/lib/xemacs/packages. `prefix' defaults to /usr/local unless
|
|
74 changed by the XEmacs configurer. This may be changed by specifying a
|
|
75 path of the form --package-path=directory:directory:directory... (all
|
|
76 directories separated by colons). There is no restriction on the
|
|
77 number of directories. There may be no package directories, but
|
|
78 XEmacs won't be very useful.
|
|
79
|
|
80 ** Source Packages
|
|
81 ==================
|
|
82
|
|
83 Source packages contain all of the Package author's (where appropriate
|
|
84 in regular packages) source code plus all of the files necessary to
|
|
85 build distribution tarballs (Unix Tar format files and gzipped for
|
|
86 space savings).
|
|
87
|
|
88 *** Prerequisites for building Source Packages
|
|
89
|
|
90 You must have GNU cp, GNU ginstall (or a BSD compatible install
|
|
91 program) GNU make (3.75 or later preferred), makeinfo (1.68 from
|
|
92 texinfo-3.11 or later required), GNU tar and XEmacs 20.5 :-). The
|
|
93 source packages will untar into a correct directory structure. At
|
|
94 the top level you must have XEmacs.rules and package-compile.el.
|
|
95 These files are available from the XEmacs FTP site from the same
|
|
96 place you obtained your source package distributions.
|
|
97
|
|
98 *** What you can do with Source Packages
|
|
99
|
|
100 NB: A global build operation doesn't exist yet as of 13 January 1998.
|
|
101
|
|
102 Source packages are most useful for creating XEmacs package tarballs
|
|
103 for installation into your own XEmacs installations or for
|
|
104 distributing to others.
|
|
105
|
|
106 Supported operations from Make are:
|
|
107
|
|
108 **** clean
|
|
109
|
|
110 Remove all built files except auto-autoloads.el and custom-load.el.
|
|
111
|
|
112 **** distclean
|
|
113
|
|
114 Remove XEmacs backups as well as the files deleted by `make clean'.
|
|
115
|
|
116 **** all
|
|
117
|
|
118 Byte compile all files, build and bytecompile byproduct files like
|
|
119 auto-autoloads.el and custom-load.el. Create info version of TeXinfo
|
|
120 documentation if present.
|
|
121
|
|
122 **** srckit
|
|
123
|
|
124 Usually aliased to `make srckit-std'. This does a `make distclean'
|
|
125 and creates a Package source tarball in the staging directory. This
|
|
126 is generally only of use for package maintainers.
|
|
127
|
|
128 **** binkit
|
|
129
|
|
130 May be aliased to binkit-sourceonly, binkit-sourceinfo,
|
|
131 binkit-sourcedata, or binkit-sourcedatainfo. `sourceonly' indicates
|
|
132 there is nothing to install in a data directory or info directory.
|
|
133 `sourceinfo' indicates that source and info files are to be
|
|
134 installed. `sourcedata' indicates that source and etc (data) files
|
|
135 are to be installed. `sourcedatainfo' indicates source, etc (data),
|
|
136 and info files are to be installed. A few packages have needs beyond
|
|
137 the basic templates so this is not yet complete.
|
|
138
|
|
139 **** dist
|
|
140
|
|
141 Runs the rules `srckit' followed by `binkit'. This is primarily of
|
|
142 use by XEmacs maintainers producing files for distribution.
|
|
143
|
|
144 * Description of available packages by category
|
|
145 ===============================================
|
|
146
|
|
147 This data is up-to-date as of 13 January 1998.
|
|
148
|
|
149 ** Library Packages (libs)
|
|
150 ==========================
|
|
151
|
|
152 These packages are required to build and support most of the rest of
|
|
153 XEmacs. By design, xemacs-base is a `regular' package. Use restraint
|
|
154 when adding new files there as it is required by almost everything.
|
|
155
|
|
156 *** Sun
|
|
157
|
|
158 Support for Sparcworks. Must be installed prior to XEmacs build to be
|
|
159 effective.
|
|
160
|
|
161 *** apel
|
|
162
|
|
163 A Portable Emacs Library. Used by XEmacs MIME support.
|
|
164
|
|
165 *** edebug
|
|
166
|
|
167 A Lisp debugger.
|
|
168
|
|
169 *** efs
|
|
170
|
|
171 Treat files on remote systems the same as local files. Also contains
|
|
172 dired.
|
|
173
|
|
174 *** mail-lib
|
|
175
|
|
176 Fundamental lisp files for providing email support.
|
|
177
|
|
178 *** tooltalk
|
|
179
|
|
180 Support for building with Tooltalk. Must be installed prior to XEmacs
|
|
181 build to be effective.
|
|
182
|
|
183 *** xemacs-base
|
|
184
|
|
185 Fundamental XEmacs support. Install this unless you wish a totally
|
|
186 naked XEmacs.
|
|
187
|
|
188 *** xemacs-devel
|
|
189
|
|
190 XEmacs Lisp developer support. This package contains utilities for
|
|
191 supporting Lisp development. It is a single-file package so it may be
|
|
192 tailored.
|
|
193
|
|
194 ** Communications Packages (comm)
|
|
195 =================================
|
|
196
|
|
197 These packages provide support for various communications, primarily
|
|
198 email and usenet.
|
|
199
|
|
200 *** footnote
|
|
201
|
|
202 Footnoting in mail message editing modes.
|
|
203
|
|
204 *** gnats
|
|
205
|
|
206 XEmacs bug reports.
|
|
207
|
|
208 *** gnus
|
|
209
|
|
210 The Gnus Newsreader and Mailreader.
|
|
211
|
|
212 *** mailcrypt
|
|
213
|
|
214 Support for messaging encryption with PGP.
|
|
215
|
|
216 *** mh-e
|
|
217
|
|
218 Front end support for MH.
|
|
219
|
|
220 *** net-utils
|
|
221
|
|
222 Miscellaneous Networking Utilities. This is a single-file package and
|
|
223 files may be deleted at will.
|
|
224
|
|
225 *** ph
|
|
226
|
|
227 Emacs implementation of the ph client to CCSO/qi directory servers.
|
|
228
|
|
229 *** rmail
|
|
230
|
|
231 An obsolete Emacs mailer. If you do not already use it don't start.
|
|
232
|
|
233 *** supercite
|
|
234
|
|
235 An Emacs citation tool. Useful with all Emacs Mailers and Newsreaders.
|
|
236
|
|
237 *** tm
|
|
238
|
|
239 Emacs MIME support.
|
|
240
|
|
241 *** vm
|
|
242
|
|
243 An Emacs mailer. This package must be installed prior to building XEmacs.
|
|
244
|
|
245 *** w3
|
|
246
|
|
247 A Web browser.
|
|
248
|
|
249 ** Games and Amusements (games)
|
|
250 ===============================
|
|
251
|
|
252 *** cookie
|
|
253
|
|
254 Spook and Yow (Zippy quotes).
|
|
255
|
|
256 *** games
|
|
257
|
|
258 Tetris, Sokoban, and Snake.
|
|
259
|
|
260 *** mine
|
|
261
|
|
262 Minehunt.
|
|
263
|
|
264 *** misc-games
|
|
265
|
|
266 Other amusements and diversions.
|
|
267
|
|
268 ** Mule Support (mule)
|
|
269 ======================
|
|
270
|
|
271 *** egg-its
|
|
272
|
|
273 Wnn (4.2 and 6) support. SJ3 support. Must be installed prior to
|
|
274 XEmacs build.
|
|
275
|
|
276 *** leim
|
|
277
|
|
278 Quail. Used for everything other than English and Japanese.
|
|
279
|
|
280 *** locale
|
|
281
|
|
282 Used for localized menubars (French and Japanese) and localized splash
|
|
283 screens (Japanese).
|
|
284
|
|
285 *** mule-base
|
|
286
|
|
287 Basic Mule support. Must be installed prior to building with Mule.
|
|
288
|
|
289 *** skk
|
|
290
|
|
291 Another Japanese Language Input Method. Can be used without a
|
|
292 separate process running as a dictionary server.
|
|
293
|
|
294 ** Productivity Packages (oa)
|
|
295 =============================
|
|
296
|
|
297 *** calendar
|
|
298
|
|
299 Calendar and diary support.
|
|
300
|
|
301 *** edit-utils
|
|
302
|
|
303 Single file lisp packages for various XEmacs goodies. Load this and
|
|
304 weed out the junk you don't want.
|
|
305
|
|
306 *** forms
|
|
307
|
|
308 Forms editing support (obsolete, use the builtin Widget instead).
|
|
309
|
|
310 *** frame-icon
|
|
311
|
|
312 Provide a WM icon based on major mode.
|
|
313
|
|
314 *** hm--html-menus
|
|
315
|
|
316 HTML editing.
|
|
317
|
|
318 *** ispell
|
|
319
|
|
320 Spell-checking with ispell.
|
|
321
|
|
322 *** pc
|
|
323
|
|
324 PC style interface emulation.
|
|
325
|
|
326 *** psgml
|
|
327
|
|
328 Validated HTML/SGML editing.
|
|
329
|
|
330 *** sgml
|
|
331
|
|
332 SGML/Linuxdoc-SGML editing.
|
|
333
|
|
334 *** slider
|
|
335
|
|
336 User interface tool.
|
|
337
|
|
338 *** speedbar
|
|
339
|
|
340 ??? Document me.
|
|
341
|
|
342 *** strokes
|
|
343
|
|
344 Mouse enhancement utility.
|
|
345
|
|
346 *** text-modes
|
|
347
|
|
348 Various single file lisp packages for editing text files.
|
|
349
|
|
350 *** time
|
|
351
|
|
352 Display time & date on the modeline.
|
|
353
|
|
354 ** Operating System Utilities (os)
|
|
355 ==================================
|
|
356
|
|
357 *** eterm
|
|
358
|
|
359 Terminal emulator.
|
|
360
|
|
361 *** igrep
|
|
362
|
|
363 Enhanced front-end for Grep.
|
|
364
|
|
365 *** ilisp
|
|
366
|
|
367 Front-end for Inferior Lisp.
|
|
368
|
|
369 *** os-utils
|
|
370
|
|
371 Miscellaneous single-file O/S utilities.
|
|
372
|
|
373 *** view-process
|
|
374
|
|
375 A Unix process browsing tool.
|
|
376
|
|
377 ** Program Editing Support (prog)
|
|
378 =================================
|
|
379
|
|
380 *** ada
|
|
381
|
|
382 Ada language support.
|
|
383
|
|
384 *** c-support
|
|
385
|
|
386 Basic single-file add-ons for editing C code.
|
|
387
|
|
388 *** cc-mode
|
|
389
|
|
390 C, C++ and Java language support.
|
|
391
|
|
392 *** debug
|
|
393
|
|
394 GUD, gdb, dbx debugging support.
|
|
395
|
|
396 *** ediff
|
|
397
|
|
398 Interface over patch.
|
|
399
|
|
400 *** emerge
|
|
401
|
|
402 Another interface over patch.
|
|
403
|
|
404 *** pcl-cvs
|
|
405
|
|
406 CVS frontend.
|
|
407
|
|
408 *** prog-modes
|
|
409
|
|
410 Miscellaneous single-file lisp files for various programming languages.
|
|
411
|
|
412 *** scheme
|
|
413
|
|
414 Front-end support for Inferior Scheme.
|
|
415
|
|
416 *** sh-script
|
|
417
|
|
418 Support for editing shell scripts.
|
|
419
|
|
420 *** vc
|
|
421
|
|
422 Version Control for Free systems. This package must be installed
|
|
423 prior to building XEmacs.
|
|
424
|
|
425 *** vc-cc
|
|
426
|
|
427 Version Control for ClearCase. This package must be installed prior
|
|
428 to building XEmacs [broken as of XEmacs 20.5-beta19].
|
|
429
|
|
430 *** vhdl
|
|
431
|
|
432 Support for VHDL.
|
|
433
|
|
434 ** Word Processing (wp)
|
|
435 =======================
|
|
436
|
|
437 *** auctex
|
|
438
|
|
439 Basic TeX/LaTeX support.
|
|
440
|
|
441 *** crisp
|
|
442
|
|
443 Crisp/Brief emulation.
|
|
444
|
|
445 *** edt
|
|
446
|
|
447 DEC EDIT/EDT emulation.
|
|
448
|
|
449 *** texinfo
|
|
450
|
|
451 XEmacs TeXinfo support.
|
|
452
|
|
453 *** textools
|
|
454
|
|
455 Single-file TeX support.
|
|
456
|
|
457 *** tpu
|
|
458
|
|
459 DEC EDIT/TPU support.
|
|
460
|
|
461 *** viper
|
|
462
|
|
463 VI emulation support.
|