comparison etc/NEWS @ 42:8b8b7f3559a2 r19-15b104

Import from CVS: tag r19-15b104
author cvs
date Mon, 13 Aug 2007 08:54:51 +0200
parents ac2d302a0011
children 6a22abad6937
comparison
equal deleted inserted replaced
41:5d6df4963a99 42:8b8b7f3559a2
18 18
19 XEmacs Release Notes........details of the changes between releases 19 XEmacs Release Notes........details of the changes between releases
20 20
21 New users should look at the next section on "Using Outline Mode". You will 21 New users should look at the next section on "Using Outline Mode". You will
22 be more efficient when you can navigate quickly through this file. Users 22 be more efficient when you can navigate quickly through this file. Users
23 interested in some of the details of how XEmacs differs from FSF GNU Emacs 23 interested in some of the details of how XEmacs differs from GNU Emacs
24 should read the section "What's Different?". Users who would to know which 24 should read the section "What's Different?". Users who would to know which
25 capabilities have been introduced in each release should look at the 25 capabilities have been introduced in each release should look at the
26 appropriate subsection of the "XEmacs Release Notes." 26 appropriate subsection of the "XEmacs Release Notes."
27 27
28 N.B. The term "FSF GNU Emacs" refers to any release of Emacs Version 19 28 N.B. The term "FSF GNU Emacs" refers to any release of Emacs Version 19
97 NOTE: Lucid, Inc. is currently out of business but development on XEmacs 97 NOTE: Lucid, Inc. is currently out of business but development on XEmacs
98 continues strong. Recently, Amdahl Corporation and INS Engineering have 98 continues strong. Recently, Amdahl Corporation and INS Engineering have
99 both contributed significantly to the development of XEmacs. 99 both contributed significantly to the development of XEmacs.
100 100
101 101
102 ** Why Haven't XEmacs and FSF GNU Emacs Merged?
103 ===============================================
104
105 This question comes up again and again on comp.emacs.xemacs and other
106 newsgroups and mailing lists. Recently in fact there was a long, heated
107 thread about this issue.
108
109 Here is what one XEmacs developer said about this issue.
110
111 DISCLAIMER: This is provided for informational purposes only and does
112 _NOT_ necessarily represent the opinions of any of the other XEmacs
113 developers or of any of the organizations involved. Keep in mind
114 that this is a highly charged issue with differing and strongly-held
115 opinions held by the various parties involved.
116
117 Subject: Re: elisp code in GNU Emacs/XEmacs
118 From: wing@666.com (Ben Wing)
119 Message-ID: <wingDqGwLH.K6w@netcom.com>
120 Date: Fri, 26 Apr 1996 11:44:05 GMT
121
122 In article <9xo91fmordx.fsf@bcarsf26.nortel.ca>, Stephane Boucher
123 <sbo@bcarsf26.nortel.ca> wrote:
124
125 Well, I don't think the number of volunteers is greater by having 2
126 Emacsen. I think your affirmation holds true because of the
127 inhability of the various parties involved to work together and
128 compromise. If people could all work together, I don't think there
129 would be any benifit in having 2 Emacsen. It may seem profitable
130 right now, but in the long run, I think everyone looses. The time
131 everyone spends porting back and forth, and imitating what the other
132 has done is not spent to do new features. I've presonnally
133 experienced a project split in the past, and in the end everyone
134 lost.
135
136 I don't want to try to blame anybody for the current fiasco. But we do
137 have a fiasco. That is unfortunate. There are so many contributors
138 out there that if everyone worked together we might be looking
139 forward to having, say, threads in Emacs. But instead, as someone
140 told me not that long ago, maybe we'll soon see a new editor come out
141 based on Java. Threads will be part of it at no extra cost, and those
142 people still using Emacs will continue to curse at the fact that they
143 can't start GNUS while typing an E-mail, and the various Emacs
144 contributors will continue to argue among themselves, nitpicking
145 about how to get the perfect solution, rather than try to move
146 forward. Meanwhile, people will enjoy using a new state of the art
147 editor.
148
149 Don't think we're just being needlessly perverse by continuing to have
150 XEmacs. I'm well aware of the problems in having a project split, and
151 don't think for a minute that we haven't tried (extremely hard, in
152 fact) to come up with a merge.
153
154 Unfortunately, as I have said before, the odds of this happening are
155 quite low due to severe conflicts (both technical, procedural, and
156 philosophical) between RMS and the XEmacs developers. If we were to
157 assent to even half of what RMS wants in a merged Emacs, it would take
158 years of work to produce the merged Emacs, and the result would be
159 less powerful than the existing XEmacs.
160
161 Since so many people seem so misinformed about this problem, I'll go
162 ahead and state the fundamental dividing issues:
163
164 1. RMS does not believe in data abstraction, and cannot be convinced
165 of the folly of this. This by itself is such a huge division that
166 it makes a merge basically unthinkable. Because of this, FSF Emacs
167 is basically unmaintainable by anyone other than RMS. RMS has
168 consented to all the data abstraction I want provided that I take
169 sole responsibility for writing this code (which basically means
170 I'd have to write almost all of the code or rewrite most of his
171 code), and provided that he can use this issue as a bargaining
172 chip to get concessions of his own.
173 2. RMS sees the merge process as a series of mutual concessions
174 traded back and forth. IMHO this is reasonable for a peace treaty
175 but absurd for a piece of software -- we have to have technical
176 agreement on the major issues involved, and the chance of that
177 happening is basically nil.
178 3. RMS has insisted in full backwards compatibility with all aspects
179 of FSF Emacs, no matter how ugly; and furthermore, this backwards
180 compatibility must work fast enough to make existing code run
181 without problem. This basically means that there would have to be
182 parallel C implementations of events, keymaps, and many other data
183 structures. This not only will take months or years of extra work
184 to implement, but poses some fundamental technical problems due to
185 the non-abstractedness of FSF Emacs (e.g. in FSF Emacs keymaps are
186 conses or vectors and a lot of code depends on this, and
187 reconciling this with XEmacs's primitive keymap type is difficult
188 to impossible).
189 4. RMS will not even consent to neutral names for the two editors. He
190 objects to call his editor FSF Emacs because for some unfathomable
191 reason he finds it insulting. He suggests just Emacs, which I find
192 not only insulting (XEmacs is just as much Emacs as is FSF Emacs)
193 but also quite confusing. He will not even consent to calling his
194 editor GNU Emacs without also referring to XEmacs as GNU XEmacs --
195 basically a Borg-like assimilation attempt at making XEmacs a GNU
196 product, which it is not. (None of the developers of Lucid Emacs
197 and XEmacs were or are sanctioned by GNU, and none of us got the
198 least bit of assistance or cooperation in doing our work. In fact,
199 RMS actively made it harder by choosing to ignore all work
200 previously done in XEmacs and adding his own incompatible
201 interfaces for functionality already in XEmacs. This makes it
202 quite difficult to track FSF Emacs and keep a sane API.) He has
203 stated many times, and continues to assert, that most or all of
204 the work done on Lucid Emacs and XEmacs was done primarily as a
205 testing ground for potential features to be added to FSF Emacs.
206 All of the developers of Lucid Emacs and XEmacs assert that this
207 is patently false -- so why does RMS continue to insist that this
208 is the case?
209
210 ben
211 --
212 "... then the day came when the risk to remain tight in a bud was
213 more painful than the risk it took to blossom." -- Anais Nin
214
215
216 ** Why Another Version of Emacs? (The Lucid, Inc. Point of View)
217 =================================================================
218
219 Lucid's latest product, Energize, is a C/C++ development environment.
220 Rather than invent (and force our users to learn) a new user-interface, we
221 chose to build part of our environment on top of the world's best editor,
222 GNU Emacs. (Though our product is commercial, the work we did on is
223 free software, and is useful without having to purchase our product.)
224
225 We needed a version of Emacs with mouse-sensitive regions, multiple fonts,
226 the ability to mark sections of a buffer as read-only, the ability to detect
227 which parts of a buffer has been modified, and many other features.
228
229 *** Why Not Epoch or GNU Emacs?
230 -------------------------------
231
232 For our purposes, the existing version of Epoch was not sufficient; it did
233 not allow us to put arbitrary pixmaps/icons in buffers, `undo' did not
234 restore changes to regions, regions did not overlap and merge their
235 attributes in the way we needed, and several other things.
236
237 We could have devoted our time to making Epoch do what we needed (and, in
238 fact, we spent some time doing that in 1990) but, since the Free Software
239 Foundation planned to include Epoch-like features in their Version 19, we
240 decided that our efforts would be better spent improving GNU Emacs
241 instead of Epoch.
242
243 Our original hope was that our changes to GNU Emacs would be
244 incorporated into the "official" v19. However, scheduling conflicts arose,
245 and we found that, given the amount of work still remaining to be done, we
246 didn't have the time or manpower to do the level of coordination that would
247 be necessary to get our changes accepted by the Free Software Foundation.
248 Consequently, we released our work as a forked branch of Emacs, instead of
249 delaying any longer.
250
251 Roughly a year after Lucid Emacs 19.0 was released, a beta version of the
252 Free Software Foundation branch of Emacs 19 was released. This version
253 was better in some areas, and worse in others, as reflects the differing
254 focus of our development efforts.
255
256 We planned to continue developing and supporting Lucid Emacs, and merging in
257 bug fixes and new features from the Free Software Foundation branch as
258 appropriate; we did not plan to discard any of the functionality that we
259 implemented which Richard Stallman of the Free Software Foundation has
260 chosen not to include in his version.
261
262 However, events have overtaken us, and Lucid, Inc. has effectively ceased
263 doing business and is (September 1994) in the process of being sold. Our
264 efforts on Lucid Emacs have also ceased and we've turned over the continued
265 enhancement of Lucid Emacs to the University of Illinois under Chuck
266 Thompson, a member of the Lucid Emacs team and a maintainer of Epoch.
267 At the same time, Lucid Emacs has been renamed XEmacs to reflect the
268 substantial contribution of the University of Illinois with the support of
269 Sun Microsystems.
270
271 Certain elements of Lucid Emacs, or derivatives of them, have been ported to
272 the FSF GNU Emacs. We have not been doing work in this direction, because
273 we feel that Lucid Emacs has a cleaner and more extensible substrate, and
274 that any kind of merger between the two branches would be far easier by
275 merging the Free Software Foundation changes into our version than the other
276 way around.
277
278 We were working closely with the Epoch developers to merge in the
279 remaining Epoch functionality which Lucid Emacs does not yet have. Epoch
280 and Lucid Emacs will soon be one and the same thing. Work is being done on
281 a compatibility package which will allow Epoch 4 code to run in XEmacs with
282 little or no change. (As of 19.8, Lucid Emacs is running a descendant of
283 the Epoch redisplay engine.)
284
285 ** Why Another Version of Emacs? (The SunPro Point of View)
286 ============================================================
287
288 Emacs 18 has been around for a long, long time. Version 19 was supposed to
289 be the successor to Emacs 18 with X support. It was going to be available
290 "real soon" for a long time (some people remember hearing about v19 as early
291 as 1984!), but it never came out. v19 development was going very, very
292 slowly, and from the outside it seemed that it was not moving at all. In
293 the meantime other people gave up waiting for v19 and decided to build their
294 own X-aware Emacsen. The most important of these was probably Epoch, which
295 came from the University of Illinois and was based on v18.
296
297 Around three years ago we decided that we wanted an integrated editor. We
298 contracted with the University of Illinois to provide a number of basic
299 enhancements to the functionality in Epoch. The University of Illinois
300 initially was planning to deliver this on top of Epoch code.
301
302 In the meantime (actually some time before we talked with the University of
303 Illinois) Lucid had decided that it also wanted to provide an integrated
304 environment with an integrated editor. Lucid decided that the Version 19
305 basis was a better one than Version 18 and thus decided not to use Epoch but
306 instead work with Richard Stallman, the head of the Free Software Foundation
307 and principle author of Emacs, on getting Version 19 out. At some point
308 Stallman and Lucid parted ways. Lucid kept working and got a Version 19 out
309 that they called Lucid Emacs 19.
310
311 After Lucid's v19 came out it became clear to us (the University of Illinois
312 and SunPro) that the right thing to do was to push for an integration of
313 both Lucid Emacs and Epoch, and to get the deliverables that we were asking
314 from the University of Illinois on top of this integrated platform. Through
315 the last two years, SunPro has been actively supporting this product and has
316 been investing a comparable amount of effort into it as Lucid has.
317 Substantial portions of the current code have originated under the support
318 of SunPro, either directly in SunPro, or in the University of Illinois but
319 paid for by us. This code was kept away from Lucid for a while, but later
320 was made available to them. Initially Lucid didn't know that we were
321 supporting UofI, but later we were open about it.
322
323 Eventually, all development source trees were synched up. Currently, there
324 is basically no difference in the source trees between what is at the
325 University of Illinois and SunPro.
326
327 SunPro originally called the integrated product ERA, for "Emacs Rewritten
328 Again". At some point, SunPro and Lucid came to an agreement to find a name
329 for the product that was not specific to either company. An additional
330 constraint that Lucid placed on the name was that it must contain the word
331 "Emacs" in it -- thus "ERA" was not acceptable. The agreed-upon name was
332 "XEmacs", and this is what the product has been called starting with the
333 19.11 release.
334
335
336 * What's Different? 102 * What's Different?
337 =================== 103 ===================
338 104
339 105
340 ** Differences between XEmacs and FSF GNU Emacs 19 106 ** Differences between XEmacs and GNU Emacs 19
341 ================================================== 107 ==================================================
342 108
343 In XEmacs, events are first-class objects. FSF 19 represents them as 109 In XEmacs, events are first-class objects. FSF 19 represents them as
344 integers, which obscures the differences between a key gesture and the 110 integers, which obscures the differences between a key gesture and the
345 ancient ASCII code used to represent a particular overlapping subset of them. 111 ancient ASCII code used to represent a particular overlapping subset of them.
346 112
347 In XEmacs, keymaps are first-class opaque objects. FSF 19 represents them as 113 In XEmacs, keymaps are first-class opaque objects. FSF 19 represents them as
348 complicated combinations of association lists and vectors. If you use the 114 complicated combinations of association lists and vectors. If you use the
349 advertised functional interface to manipulation of keymaps, the same code 115 advertised functional interface to manipulation of keymaps, the same code
350 will work in XEmacs, Emacs 18, and FSF GNU Emacs 19; if your code depends 116 will work in XEmacs, Emacs 18, and GNU Emacs 19; if your code depends
351 on the underlying implementation of keymaps, it will not. 117 on the underlying implementation of keymaps, it will not.
352 118
353 XEmacs uses "extents" to represent all non-textual aspects of buffers; 119 XEmacs uses "extents" to represent all non-textual aspects of buffers;
354 FSF 19 uses two distinct objects, "text properties" and "overlays", 120 FSF 19 uses two distinct objects, "text properties" and "overlays",
355 which divide up the functionality between them. Extents are a 121 which divide up the functionality between them. Extents are a
1418 ====================== 1184 ======================
1419 1185
1420 ** Future Plans for XEmacs 1186 ** Future Plans for XEmacs
1421 ========================== 1187 ==========================
1422 1188
1423 For the curious, the biggest changes in 19.15 will include integration 1189 This is the end of the line for XEmacs v19. No new development is planned
1424 of TM (a MIME package for VM and GNUS), EFS (the next generation of 1190 on this source tree. XEmacs 20.1 will contain the functionality in 19.15,
1425 ange-ftp), and Auc-TeX, and a "lite" distribution that includes a 1191 and development will continue with XEmacs 20.2. The major new `feature'
1426 minimal base and a set of optional packages (which will include TM, 1192 planned in 20.2 will be the introduction of separable packages and the
1427 EFS, and Auc-TeX, as well as all of the large packages currently 1193 capability to download and use an XEmacs lite distribution.
1428 distributed with XEmacs). There will also still be a full distribution 1194
1429 that includes all the optional packages. 1195 ** Major Differences Between 19.14 and 19.15
1430 1196 ============================================
1431 In the longer term, we are also working on a separate branch of XEmacs that 1197
1432 includes full Asian-language ("MULE") support. This work is currently in 1198 Many bugs have been fixed. An effort has been made to eradicate all
1433 beta and is being supported by Sun Microsystems. 1199 XEmacs crashes, although we are not quite done yet. The overall
1434 1200 quality of XEmacs should be higher than any previous release. XEmacs
1201 now compiles with nary a warning with some compilers.
1202
1203 -- EFS replaces ange-ftp for remote file manipulation capability.
1204
1205 -- TM (Tools for Mime) now comes with XEmacs. This provides MIME
1206 (Multi-purpose Internet Multi-media Extensions?) support for Mail
1207 and News. The primary author is Morioka Tomohiko.
1208
1209 -- AUCTeX is now included with XEmacs. The primary author is Per
1210 Abrahamsen.
1211
1212 -- Command line processing should work much better now - no more order
1213 dependencies.
1214
1215 -- Customization of user options is now handled by the custom package
1216 written by Per Abrahamsen.
1217
1218 -- html mode now defaults to using HTML-3.2
1219
1220 -- VM now has a native MIME mode
1221
1222 -- The traditional time.el package now has optional modeline graphics
1223
1224 -- The XEmacs Logo has been changed courtesy of Jens Lautenbacher
1225
1226 -- The XEmacs build procedure has been changed to make it easier than
1227 ever to include new packages to be dumped with the binary
1228
1229 -- Many many package upgraded (thanks go to countless maintainers):
1230
1231 -- ediff 2.64 (Michael Kifer)
1232 -- Gnus 5.4.36 (Lars Magne Ingebrigtsen)
1233 -- w3 3.0.71 (Bill Perry)
1234 -- ilisp 5.8 (Chris McConnell, Ivan Vasquez, Marco Antoniotti, Rick
1235 Campbell)
1236 -- VM 6.22 (Kyle Jones)
1237 -- etags 11.78 (Francesco Potorti`)
1238 -- ksh-mode.el 2.9
1239 -- vhdl-mode.el 2.73 (Rod Whitby)
1240 -- id-select.el 1.4.5 (Bob Weiner)
1241 -- EDT/TPU emulation modes should work now for the first time.
1242 -- viper 2.93 (Michael Kifer) is now the `official' vi emulator for XEmacs.
1243 -- big-menubar should work much better now.
1244 -- mode-motion+.el 3.16
1245 -- backup-dir 2.0 (Greg Klanderman)
1246 -- ps-print.el-3.05 (Jacques Duthen Prestataire)
1247 -- lazy-lock-1.16 (Simon Marshall)
1248 -- fast-lock.el 3.10.2 (Simon Marshall)
1249 -- reporter 3.3 (Barry Warsaw)
1250 -- hm--html-menus 5.4 (Heiko Muenkel)
1251 -- cc-mode 4.387 (Barry Warsaw)
1252 -- elp 2.37 (Barry Warsaw)
1253 -- itimer.el-1.05 (Kyle Jones)
1254 -- floating-toolbar.el-1.02 (Kyle Jones)
1255 -- balloon-help.el-1.05 (Kyle Jones)
1256 -- hyperbole-4.023 (Bob Weiner)
1257 -- cperl-mode-1.31+
1258 -- OO-Browser 2.10 (Bob Weiner)
1259
1260 -- Many new packages have been added:
1261 -- m4-mode 1.8 (Andrew Csillag)
1262 -- crisp.el - crisp/brief emulation (Gary D. Foster)
1263 -- Johan Vroman's iso-acc.el has been ported to XEmacs by Alexandre Oliva
1264 -- psgml-1.01 (Lennart Staflin, James Clark)
1265 -- python-mode.el 2.90 (Barry Warsaw)
1266 -- vrml-mode.el (Ben Wing)
1267 -- enriched.el, face-menu.el (Boris Goldowsky, Michael Sperber)
1268 -- sh-script.el (Daniel Pfeiffer)
1269 -- decipher.el (Christopher J. Madsen)
1270 -- mic-paren.el (Mikael Sjödin)
1271 -- xrdb-mode.el 1.21 (Barry Warsaw)
1272 -- redo.el 1.01 (Kyle Jones)
1273 -- edmacro.el (ported by Hrvoje Niksic)
1274 -- verilog-mode.el (Michael McNamara)
1275 -- webjump.el-1.4 (Neil W. Van Dyke)
1276 -- overlay.el (Joseph Nuspl support for Emacs overlay API)
1277 -- browse-cltl2.el 1.1 (Holger Schauer)
1278 -- mine.el 1.17 (Jacques Duthen)
1279 -- igrep.el 2.56 (Kevin Rodger)
1280 -- speedbar.el (Eric Ludlam)
1281 -- frame-icon.el (Michael Lamoureux)
1282 -- winmgr-mode.el (David Konerding, Stefan Strobel & Barry Warsaw)
1283 -- whitespace-mode.el (Heiko Muenkel)
1284 -- detached-minibuf.el (Alvin Shelton)
1285
1286 -- New function x-keysym-on-keyboard-p helps determine keyboard
1287 characteristics for key rebinding:
1288
1289 x-keysym-on-keyboard-p: (KEYSYM &optional DEVICE)
1290 -- a built-in function.
1291 Return true if KEYSYM names a key on the keyboard of DEVICE.
1292 More precisely, return true if pressing a physical key
1293 on the keyboard of DEVICE without any modifier keys generates KEYSYM.
1294 Valid keysyms are listed in the files /usr/include/X11/keysymdef.h and in
1295 /usr/lib/X11/XKeysymDB, or whatever the equivalents are on your system.
1296
1297 -- preceding-char and following-char have been obsoleted. Use the
1298 much safer and correct functions char-after and char-before instead.
1299
1300 -- Many symbols present for compatibility with GNU Emacs no longer
1301 generate bytecompiler warning messages
1302
1303 -- Installed info files are now compressed (support courtesy of Joseph J Nuspl)
1304
1305 -- (load-average) works on Solaris, even if you're not root. Thanks to
1306 Hrvoje Niksic.
1307
1308 -- OffiX drag-and-drop support added
1309
1310 -- lots of syncing with 19.34 elisp files, most by Steven Baur
1311
1312 -- M-: (eval-expression) is now enabled by default since it is much
1313 more difficult to type.
1435 1314
1436 ** Major Differences Between 19.13 and 19.14 1315 ** Major Differences Between 19.13 and 19.14
1437 ============================================ 1316 ============================================
1438 1317
1439 XEmacs has a new address! The canonical ftp site is now 1318 XEmacs has a new address! The canonical ftp site is now
1591 and `end-closed' now work correctly w.r.t. text properties. 1470 and `end-closed' now work correctly w.r.t. text properties.
1592 1471
1593 -- The `face' property of extents and text properties can now 1472 -- The `face' property of extents and text properties can now
1594 be a list. 1473 be a list.
1595 1474
1596 -- The `mouse-face' property from FSF GNU Emacs is now supported. 1475 -- The `mouse-face' property from GNU Emacs is now supported.
1597 It supersedes the `highlight' property. 1476 It supersedes the `highlight' property.
1598 1477
1599 -- `enriched' and `facemenu' packages from FSF GNU Emacs have been ported. 1478 -- `enriched' and `facemenu' packages from GNU Emacs have been ported.
1600 1479
1601 -- New functions for easier creation of dialog boxes: 1480 -- New functions for easier creation of dialog boxes:
1602 `get-dialog-box-response', `message-box', and `message-or-box'. 1481 `get-dialog-box-response', `message-box', and `message-or-box'.
1603 1482
1604 -- `function-min-args' and `function-max-args' allow you to determine 1483 -- `function-min-args' and `function-max-args' allow you to determine
2489 2368
2490 2369
2491 *** Keymaps 2370 *** Keymaps
2492 ----------- 2371 -----------
2493 2372
2494 The FSF GNU Emacs concept of `function-key-map' is now partially 2373 The GNU Emacs concept of `function-key-map' is now partially
2495 implemented. This allows conversion of function-key escape sequences 2374 implemented. This allows conversion of function-key escape sequences
2496 such as `ESC [ 1 1 ~' into an equivalent human-readable keysym such as 2375 such as `ESC [ 1 1 ~' into an equivalent human-readable keysym such as
2497 `F1'. This work will be completed in 19.14. The function-key map is 2376 `F1'. This work will be completed in 19.14. The function-key map is
2498 device-local and controllable through the functions 2377 device-local and controllable through the functions
2499 `device-function-key-map' and `set-device-function-key-map'. 2378 `device-function-key-map' and `set-device-function-key-map'.
2518 The mouse internals in mouse.el have been rewritten. Hooks have been 2397 The mouse internals in mouse.el have been rewritten. Hooks have been
2519 provided for easier customization of mouse behavior. For example, you 2398 provided for easier customization of mouse behavior. For example, you
2520 can now easily specify an action to be invoked on single-click 2399 can now easily specify an action to be invoked on single-click
2521 (i.e. down-up without appreciable motion), double-click, drag-up, etc. 2400 (i.e. down-up without appreciable motion), double-click, drag-up, etc.
2522 2401
2523 Some code from FSF GNU Emacs has been ported over, generalizing some of 2402 Some code from GNU Emacs has been ported over, generalizing some of
2524 the X-specific mouse stuff. 2403 the X-specific mouse stuff.
2525 2404
2526 ** INCOMPATIBLE CHANGE **: The function `set-mouse-position' accepts 2405 ** INCOMPATIBLE CHANGE **: The function `set-mouse-position' accepts
2527 a window instead of a frame. 2406 a window instead of a frame.
2528 2407