Mercurial > hg > xemacs-beta
comparison README @ 2564:d96db265d893
[xemacs-hg @ 2005-02-04 03:04:04 by ben]
Remove out-of-date doc files
* BUGS, README.packages: Delete, incorporate into FAQ.
README: Incorporate into FAQ. Delete everything but text
pointing to FAQ.
author | ben |
---|---|
date | Fri, 04 Feb 2005 03:04:06 +0000 |
parents | 715eed24e30e |
children | 0ef278ff2894 |
comparison
equal
deleted
inserted
replaced
2563:6bee993389f3 | 2564:d96db265d893 |
---|---|
1 This directory tree holds version 21.5 of XEmacs. | 1 This directory tree holds version 21.5 of XEmacs. |
2 | 2 |
3 The information in this file has been superseded by the XEmacs FAQ. | |
3 | 4 |
4 *** What is XEmacs? | 5 The easiest way to read the FAQ is to go to |
5 | 6 |
6 XEmacs is a powerful, highly customizable open source text editor and | 7 http://www.xemacs.org/Documentation/21.5/html/xemacs-faq_1.html |
7 application development system, with full GUI support. It is protected | 8 |
8 under the GNU Public License and related to other versions of Emacs, in | 9 You can also the local copy of the FAQ inside XEmacs by using |
9 particular GNU Emacs. Its emphasis is on modern graphical user | 10 use Help->XEmacs FAQ from the menu, or `C-h F'. |
10 interface support and an open software development model, similar to | 11 |
11 Linux. XEmacs has an active development community numbering in the | 12 If you don't have XEmacs running and can't access the web, |
12 hundreds (and thousands of active beta testers on top of this), and runs | 13 look directly at `man/xemacs-faq.texi' or `info/xemacs-faq.info'. |
13 on all versions of MS Windows, on Linux, and on nearly every other | |
14 version of Unix in existence. Support for XEmacs has been supplied by | |
15 Sun Microsystems, University of Illinois, Lucid, ETL/Electrotechnical | |
16 Laboratory, Amdahl Corporation, BeOpen, and others, as well as the | |
17 unpaid time of a great number of individual developers. | |
18 | 14 |
19 | 15 |
20 | |
21 *** What platforms does it run on? | |
22 | |
23 -- MS Windows (It has been tested on NT, 2000, 95, 98, and ME; you | |
24 can also compile Cygwin and MinGW versions.) | |
25 -- Unix (It is regularly tested on Linux, Solaris, SunOS, HP/UX, | |
26 FreeBSD, OpenBSD, BSD/OS aka BSDI, Tru64 aka DEC/OSF, SCO5, | |
27 and probably others. It should work on all versions of Unix | |
28 created in the last 10 years or so, perhaps with a bit of | |
29 work on more obscure platforms to correct bit-rot. It uses | |
30 a sophisticated configuration system to auto-detect zillions | |
31 of features that are implemented differently in different | |
32 versions of Unix, so it will probably work on your vendor's | |
33 version, possibly with a bit of tweaking, even if we've | |
34 never heard of it.) | |
35 -- MacOS/X (As an X Windows application. Unfortunately there is no | |
36 support currently for MacOS-specific features.) | |
37 | |
38 There is also a port of XEmacs 19.14 (an older version, circa 1996) | |
39 for all versions of MacOS, with extensive support for MacOS-specific | |
40 features. See the FAQ for more details. | |
41 | |
42 There are rumors of an in-progress port to OS/2. See the FAQ. | |
43 | |
44 XEmacs will probably never work on MS/DOS or Windows 3.1, and we're | |
45 not particularly interested in patches for these platforms, as they | |
46 would introduce huge amounts of code clutter due to the woefully | |
47 underfeatured nature of these systems. (See GNU Emacs for a port to | |
48 MS/DOS.) | |
49 | |
50 | |
51 | |
52 *** Where's the FAQ? | |
53 | |
54 Look at `man/xemacs-faq.texi'. | |
55 | |
56 For the very latest version, see | |
57 http://cvs.xemacs.org/cgi-bin/cvswebxe/xemacs/man/xemacs-faq.texi. | |
58 | |
59 | |
60 | |
61 *** Where's the latest version? | |
62 | |
63 For up-to-date information on XEmacs, see http://www.xemacs.org. | |
64 | |
65 To download XEmacs, see http://ftp.xemacs.org/ or | |
66 ftp://ftp.xemacs.org/pub/xemacs/. | |
67 | |
68 For the latest experimental sources, see http://cvs.xemacs.org/, which | |
69 gives instructions on how to get started with CVS access. | |
70 | |
71 There are numerous mailing lists for discussion of XEmacs. The | |
72 current description of these lists can be found at | |
73 http://www.xemacs.org/Lists/, or see `etc/MAILINGLISTS'. General | |
74 discussion of bugs, new features, etc. takes place on | |
75 xemacs-beta@xemacs.org. | |
76 | |
77 | |
78 | |
79 *** How do I build and install XEmacs? | |
80 | |
81 See the file `etc/NEWS' for information on new features and other | |
82 user-visible changes since the last version of XEmacs. | |
83 | |
84 The file `INSTALL' in this directory says how to bring up XEmacs on | |
85 Unix and Cygwin, once you have loaded the entire subtree of this | |
86 directory. | |
87 | |
88 See the file `nt/README' for instructions on building XEmacs for | |
89 Microsoft Windows. | |
90 | |
91 The file 'README.packages' will guide you in the installation of | |
92 (essential) add on packages. | |
93 | |
94 | |
95 | |
96 *** How do I deal with bugs or with problems building, installing, or running? | |
97 | |
98 The file `PROBLEMS' contains information on many common problems that | |
99 occur in building, installing and running XEmacs. | |
100 | |
101 Reports of bugs in XEmacs should be sent to xemacs-beta@xemacs.org. | |
102 You can also post to the newsgroup comp.emacs.xemacs (or equivalentlt, | |
103 send to the mailing list xemacs@xemacs.org), but it is less likely | |
104 that the developers will see it in a timely fashion. See the "Bugs" | |
105 section of the XEmacs manual for more information on how to report | |
106 bugs. (The file `BUGS' in this directory explains how you can find | |
107 and read that section using the Info files that come with XEmacs.) | |
108 See `etc/MAILINGLISTS' for more information on mailing lists relating | |
109 to XEmacs. | |
110 | |
111 | |
112 *** How do I get started developing XEmacs? | |
113 | |
114 First, get yourself set up under CVS so that you can access the CVS | |
115 repositories containing the XEmacs sources and the XEmacs packages. | |
116 | |
117 Next, set up your layout. This is important, as a good layout will | |
118 facilitate getting things done efficiently, while a bad layout will could | |
119 lead to disaster, as you can't figure out which code is the most recent, | |
120 which can be thrown away, etc. We suggest the following layout: (feel free | |
121 to make changes) | |
122 | |
123 -- Everything goes under /src/xemacs (use a different directory if you | |
124 want). From now, instead of saying /src/xemacs, we use <xsrc-top>, to | |
125 make it easier in case someone picked a different directory. | |
126 | |
127 -- Package source is in <xsrc-top>/package-src. | |
128 | |
129 -- Installed packages go under <xsrc-top>/xemacs-packages, and | |
130 <xsrc-top>/mule-packages. | |
131 | |
132 -- A "workspace" is a complete copy of the sources, in which you do work of | |
133 a particular kind. Workspaces can be differentiated by which branch of | |
134 the source tree they extend off of -- usually either the stable or | |
135 experimental, unless other branches have been created (for example, Ben | |
136 created a branch for his Mule work because (1) the project was long-term | |
137 and involved an enormous number of changes, (2) people wanted to be able | |
138 to look at what his work in progress, and (3) he wanted to be able to | |
139 check things in and in general use source-code control, since it was a | |
140 long-term project). Workspaces are also differentiated in what their | |
141 purpose is -- general working workspace, workspace for particular | |
142 projects, workspace keeping the latest copy of the code in one of the | |
143 branches without mods, etc. | |
144 | |
145 -- Various workspaces are subdirectories under <xsrc-top>, e.g.: | |
146 | |
147 -- <xsrc-top>/working (the workspace you're actively working on, | |
148 periodically synched up with the latest trunk) | |
149 | |
150 -- <xsrc-top>/stable (for making changes to the stable version of | |
151 XEmacs, which sits on a branch) | |
152 | |
153 -- <xsrc-top>/unsigned-removal (a workspace for a specific, difficult | |
154 task that's going to affect lots of source and take a long time, and | |
155 so best done in its own workspace without the interference of other | |
156 work you're doing. Also, you can commit just this one large change, | |
157 separate from all the other changes). | |
158 | |
159 -- <xsrc-top>/latest (a copy of the latest sources on the trunk, | |
160 i.e. the experimental version of XEmacs, with no patches in it; | |
161 either update it periodically, by hand, or set up a cron job to do it | |
162 automatically). Set it up so it can be built, and build it so you | |
163 have a working XEmacs. (Building it might also go into the cron job.) | |
164 | |
165 This workspace serves a number of purposes: | |
166 -- 1. You always have a recent version of XEmacs you can compare | |
167 against when something you're working on breaks. It's true | |
168 that you can do this with cvs diff, but when you need to do | |
169 some serious investigation, this method just fails. | |
170 -- 2. You (almost) always have a working, up-to-date executable that | |
171 can be used when your executable is crashing and you need to | |
172 keep developing it, or when you need an `xemacs' to build | |
173 packages, etc. | |
174 -- 3. When creating new workspaces, you can just copy the `latest' | |
175 workspace using GNU cp -a. You have all the .elc's built, | |
176 everything else probably configured, any spare files in place | |
177 (e.g. some annoying xpm.dll under Windows, etc.). | |
178 | |
179 -- <xsrc-top>/latest-stable/ (equivalent to <xsrc-top>/latest/, but | |
180 for the Stable branch of XEmacs, rather than the Experimental branch | |
181 of XEmacs). This may or may not be necessary depending on how much | |
182 development you do of the stable branch. | |
183 | |
184 -- <xsrc-top>/xemacsweb is a workspace for working on the XEmacs web site. | |
185 | |
186 -- <xsrc-top>/in-patches for patches received from email and saved to files. | |
187 | |
188 -- <xsrc-top>/out-patches for locally-generated patches to be sent to | |
189 xemacs-patches@xemacs.org. Less useful now that the patcher util has been | |
190 developed. | |
191 | |
192 -- <xsrc-top>/build, for build trees when compiling and testing XEmacs with | |
193 various configuration options turned off and on. The scripts in | |
194 xemacs-builds/ben (see below) can be used to automate building XEmacs | |
195 workspaces with many different configuration options and automatically | |
196 filtering out the normal output so that you see only the abnormal | |
197 output. | |
198 | |
199 -- <xsrc-top>/xemacs-builds, for the xemacs-builds module, which you need | |
200 to check out separately in CVS. This contains scripts used for building | |
201 XEmacs, automating and simplifying using CVS, etc. Under various | |
202 people's directories are their own build and other scripts. The | |
203 currently most-maintained scripts are under ben/, where there are easily | |
204 configurable scripts that can be used to easily build any workspace | |
205 (esp. if you've more or less followed the layout presented above) | |
206 unattended, with one or more configuration states (there's a | |
207 pre-determined list of the most useful, but it's easy to change). The | |
208 output is filtered and split up in various ways so that you can identify | |
209 which output came from where, and you can see the output either full or | |
210 with all "normal" output except occasional status messages filtered so | |
211 that you only see the abnormal ones. | |
212 | |
213 *** What's the basic layout of the code? | |
214 | |
215 The file `configure' is a shell script to acclimate XEmacs to the | |
216 oddities of your processor and operating system. It will create a | |
217 file named `Makefile' (a script for the `make' program), which helps | |
218 automate the process of building and installing emacs. See INSTALL | |
219 for more detailed information. | |
220 | |
221 The file `configure.in' is the input used by the autoconf program to | |
222 construct the `configure' script. Since XEmacs has configuration | |
223 requirements that autoconf can't meet, `configure.in' uses an unholy | |
224 marriage of custom-baked configuration code and autoconf macros; it | |
225 may be wise to avoid rebuilding `configure' from `configure.in' when | |
226 possible. | |
227 | |
228 The file `Makefile.in' is a template used by `configure' to create | |
229 `Makefile'. | |
230 | |
231 There are several subdirectories: | |
232 | |
233 `src' holds the C code for XEmacs (the XEmacs Lisp interpreter and its | |
234 primitives, the redisplay code, and some basic editing functions). | |
235 `lisp' holds the XEmacs Lisp code for XEmacs (most everything else). | |
236 `lib-src' holds the source code for some utility programs for use by | |
237 or with XEmacs, like movemail and etags. | |
238 `etc' holds miscellaneous architecture-independent data files | |
239 XEmacs uses, like the tutorial text and the Zippy the Pinhead quote | |
240 database. The contents of the `lisp', `info' and `man' | |
241 subdirectories are architecture-independent too. | |
242 `lwlib' holds the C code for the X toolkit objects used by XEmacs. | |
243 `info' holds the Info documentation tree for XEmacs. | |
244 `man' holds the source code for the XEmacs online documentation. | |
245 `nt' holds files used compiling XEmacs under Microsoft Windows. |