Mercurial > hg > xemacs-beta
comparison man/xemacs-faq.texi @ 611:38db05db9cb5
[xemacs-hg @ 2001-06-08 12:21:09 by ben]
------ gc-in-window-procedure fixes ------
alloc.c: Create "post-gc actions", to avoid those dreaded "GC during window
procedure" problems.
event-msw.c: Abort, clean and simple, when GC in window procedure. We want
to flush these puppies out.
glyphs-msw.c: Use a post-gc action when destroying subwindows.
lisp.h: Declare register_post_gc_action().
scrollbar-msw.c: Use a post-gc action when unshowing scrollbar windows, if in gc.
redisplay.c: Add comment about the utter evilness of what's going down here.
------ cygwin setitimer fixes ------
Makefile.in.in: Compile profile.c only when HAVE_SETITIMER.
nt.c: Style fixes.
nt.c: Move setitimer() emulation to win32.c, because Cygwin needs it too.
profile.c: Make sure we don't compile if no setitimer(). Use qxe_setitimer()
instead of just plain setitimer().
signal.c: Define qxe_setitimer() as an encapsulation around setitimer() --
call setitimer() directly unless Cygwin or MS Win, in which case
we use our simulated version in win32.c.
systime.h: Prototype mswindows_setitimer() and qxe_setitimer(). Long
comment about "qxe" and the policy regarding encapsulation.
win32.c: Move setitimer() emulation here, so Cygwin can use it.
Rename a couple of functions and variables to be longer and more
descriptive. In setitimer_helper_proc(), send the signal
using either mswindows_raise() or (on Cygwin) kill(). If for
some reason we are still getting lockups, we'll change the kill()
to directly invoke the signal handlers.
------ windows shell fixes ------
callproc.c, ntproc.c: Comments about how these two files must die.
callproc.c: On MS Windows, init shell-file-name from SHELL, then COMSPEC,
not just COMSPEC. (more correct and closer to FSF.) Don't
force a value for SHELL into the environment. (Comments added
to explain why not.)
nt.c: Don't shove a fabricated SHELL into the environment. See above.
------ misc fixes ------
glyphs-shared.c: Style correction.
xemacs-faq.texi: Merge in the rest of Hrvoje's Windows FAQ. Redo section 7
to update current reality and add condensed versions of
new changes for 21.1 and 21.4. (Not quite done for 21.4.)
Lots more Windows updates.
process.el: Need to quote a null
argument, too. From Dan Holmsand.
startup.el:
startup.el: Call MS Windows init function.
win32-native.el: Correct comments at top. Correctly handle passing arguments
to Cygwin programs and to bash. Fix quoting of zero-length
arguments (from Dan Holmsand). Set shell-command-switch based
on shell-file-name, which in turn comes from env var SHELL.
author | ben |
---|---|
date | Fri, 08 Jun 2001 12:21:27 +0000 |
parents | 5fd7ba8b56e7 |
children | 023b83f4e54b |
comparison
equal
deleted
inserted
replaced
610:45ba69404a1f | 611:38db05db9cb5 |
---|---|
5 @setchapternewpage off | 5 @setchapternewpage off |
6 @c %**end of header | 6 @c %**end of header |
7 @finalout | 7 @finalout |
8 @titlepage | 8 @titlepage |
9 @title XEmacs FAQ | 9 @title XEmacs FAQ |
10 @subtitle Frequently asked questions about XEmacs @* Last Modified: $Date: 2001/05/31 12:45:30 $ | 10 @subtitle Frequently asked questions about XEmacs @* Last Modified: $Date: 2001/06/08 12:21:15 $ |
11 @sp 1 | 11 @sp 1 |
12 @author Tony Rossini <rossini@@biostat.washington.edu> | 12 @author Tony Rossini <rossini@@biostat.washington.edu> |
13 @author Ben Wing <ben@@xemacs.org> | 13 @author Ben Wing <ben@@xemacs.org> |
14 @author Chuck Thompson <cthomp@@xemacs.org> | 14 @author Chuck Thompson <cthomp@@xemacs.org> |
15 @author Steve Baur <steve@@xemacs.org> | 15 @author Steve Baur <steve@@xemacs.org> |
376 | 376 |
377 XEmacs on MS Windows | 377 XEmacs on MS Windows |
378 | 378 |
379 General Info: | 379 General Info: |
380 * Q6.0.1:: What is the status of the XEmacs port to Windows? | 380 * Q6.0.1:: What is the status of the XEmacs port to Windows? |
381 * Q6.0.2:: What flavors of MS Windows are supported? | 381 * Q6.0.2:: What flavors of MS Windows are supported? The list name implies NT only. |
382 * Q6.0.3:: Are binaries available? | 382 * Q6.0.3:: Are binaries available? |
383 * Q6.0.4:: Can I build XEmacs on MS Windows with X support? Do I need to? | 383 * Q6.0.4:: Can I build XEmacs on MS Windows with X support? Do I need to? |
384 * Q6.0.5:: I'd like to help out. What do I do? | 384 * Q6.0.5:: I'd like to help out. What do I do? |
385 * Q6.0.6:: What are Cygwin and MinGW, and do I need them to run XEmacs? | 385 * Q6.0.6:: What are Cygwin and MinGW, and do I need them to run XEmacs? |
386 * Q6.0.7:: What exactly are all the different ways to build XEmacs under Windows? | 386 * Q6.0.7:: What exactly are all the different ways to build XEmacs under Windows? |
396 | 396 |
397 Customization and User Interface: | 397 Customization and User Interface: |
398 * Q6.2.1:: How does the port cope with differences in the Windows user interface? | 398 * Q6.2.1:: How does the port cope with differences in the Windows user interface? |
399 * Q6.2.2:: How do I change fonts in XEmacs on MS Windows? | 399 * Q6.2.2:: How do I change fonts in XEmacs on MS Windows? |
400 * Q6.2.3:: Where do I put my @file{init.el}/@file{.emacs} file? | 400 * Q6.2.3:: Where do I put my @file{init.el}/@file{.emacs} file? |
401 * Q6.2.4:: How do I get Windows Explorer to associate a file type with XEmacs? | |
402 * Q6.2.5:: Is it possible to print from XEmacs? | |
401 | 403 |
402 Miscellaneous: | 404 Miscellaneous: |
403 * Q6.3.1:: Does XEmacs rename all the win32-* symbols to w32-*? | 405 * Q6.3.1:: Does XEmacs rename all the @samp{win32-*} symbols to @samp{w32-*}? |
404 * Q6.3.2:: What are the differences between the various MS Windows emacsen? | 406 * Q6.3.2:: What are the differences between the various MS Windows emacsen? |
405 * Q6.3.3:: What is the porting team doing at the moment? | 407 * Q6.3.3:: XEmacs 21.1 on Windows used to spawn an ugly console window on every startup. Has that been fixed? |
408 * Q6.3.4:: What is the porting team doing at the moment? | |
406 | 409 |
407 Troubleshooting: | 410 Troubleshooting: |
408 * Q6.4.1:: XEmacs won't start on Windows. (NEW) | 411 * Q6.4.1:: XEmacs won't start on Windows. |
412 * Q6.4.2:: Why do I get a blank toolbar on Windows 95? | |
413 | |
409 | 414 |
410 Current Events: | 415 Current Events: |
411 | 416 * Q7.0.1:: What new features will be in XEmacs soon? |
412 * Q7.0.1:: What is new in 20.2? | 417 * Q7.0.2:: What's new in XEmacs 21.4? |
413 * Q7.0.2:: What is new in 20.3? | 418 * Q7.0.3:: What's new in XEmacs 21.1? |
414 * Q7.0.3:: What is new in 20.4? | 419 * Q7.0.4:: What's new in XEmacs 20.4? |
415 * Q7.0.4:: Procedural changes in XEmacs development. | 420 * Q7.0.5:: What's new in XEmacs 20.3? |
421 * Q7.0.6:: What's new in XEmacs 20.2? | |
416 @end detailmenu | 422 @end detailmenu |
417 @end menu | 423 @end menu |
418 | 424 |
419 @node Introduction, Installation, Top, Top | 425 @node Introduction, Installation, Top, Top |
420 @unnumbered 1 Introduction, Policy, Credits | 426 @unnumbered 1 Introduction, Policy, Credits |
5852 This is part 6 of the XEmacs Frequently Asked Questions list, written by | 5858 This is part 6 of the XEmacs Frequently Asked Questions list, written by |
5853 Hrvoje Niksic and others. This section is devoted to the MS Windows | 5859 Hrvoje Niksic and others. This section is devoted to the MS Windows |
5854 port of XEmacs. | 5860 port of XEmacs. |
5855 | 5861 |
5856 @menu | 5862 @menu |
5857 | |
5858 General Info | 5863 General Info |
5859 * Q6.0.1:: What is the status of the XEmacs port to Windows? | 5864 * Q6.0.1:: What is the status of the XEmacs port to Windows? |
5860 * Q6.0.2:: What flavors of MS Windows are supported? | 5865 * Q6.0.2:: What flavors of MS Windows are supported? The list name implies NT only. |
5861 * Q6.0.3:: Where are the XEmacs on MS Windows binaries? | 5866 * Q6.0.3:: Are binaries available? |
5862 * Q6.0.4:: Can I build XEmacs on MS Windows with X support? Do I need to? | 5867 * Q6.0.4:: Can I build XEmacs on MS Windows with X support? Do I need to? |
5863 * Q6.0.5:: I'd like to help out. What do I do? | 5868 * Q6.0.5:: I'd like to help out. What do I do? |
5864 * Q6.0.6:: What are Cygwin and MinGW, and do I need them to run XEmacs? | 5869 * Q6.0.6:: What are Cygwin and MinGW, and do I need them to run XEmacs? |
5865 * Q6.0.7:: What exactly are all the different ways to build XEmacs under Windows? | 5870 * Q6.0.7:: What exactly are all the different ways to build XEmacs under Windows? |
5866 | 5871 |
5867 Building XEmacs on MS Windows | 5872 Building XEmacs on MS Windows: |
5868 * Q6.1.1:: What compiler/libraries do I need to compile XEmacs? | 5873 * Q6.1.1:: What compiler/libraries do I need to compile XEmacs? |
5869 * Q6.1.2:: How do I compile the native port? | 5874 * Q6.1.2:: How do I compile the native port? |
5870 * Q6.1.3:: What do I need for Cygwin? | 5875 * Q6.1.3:: What do I need for Cygwin? |
5871 * Q6.1.4:: How do I compile under Cygwin? | 5876 * Q6.1.4:: How do I compile under Cygwin? |
5872 * Q6.1.5:: How do I compile using MinGW (aka @samp{the -mno-cygwin flag to gcc})? | 5877 * Q6.1.5:: How do I compile using MinGW (aka @samp{the -mno-cygwin flag to gcc})? |
5873 * Q6.1.6:: I decided to run with X. Where do I get an X server? | 5878 * Q6.1.6:: I decided to run with X. Where do I get an X server? |
5874 * Q6.1.7:: How do I compile with X support? | 5879 * Q6.1.7:: How do I compile with X support? |
5875 | 5880 |
5876 Customization and User Interface | 5881 Customization and User Interface: |
5877 * Q6.2.1:: How does the port cope with differences in the Windows user interface? | 5882 * Q6.2.1:: How does the port cope with differences in the Windows user interface? |
5878 * Q6.2.2:: How do I change fonts in XEmacs on MS Windows? | 5883 * Q6.2.2:: How do I change fonts in XEmacs on MS Windows? |
5879 * Q6.2.3:: Where do I put my @file{init.el}/@file{.emacs} file? | 5884 * Q6.2.3:: Where do I put my @file{init.el}/@file{.emacs} file? |
5880 | 5885 * Q6.2.4:: How do I get Windows Explorer to associate a file type with XEmacs? |
5881 Miscellaneous | 5886 * Q6.2.5:: Is it possible to print from XEmacs? |
5882 * Q6.3.1:: Does XEmacs rename all the win32-* symbols to w32-*? | 5887 |
5888 Miscellaneous: | |
5889 * Q6.3.1:: Does XEmacs rename all the @samp{win32-*} symbols to @samp{w32-*}? | |
5883 * Q6.3.2:: What are the differences between the various MS Windows emacsen? | 5890 * Q6.3.2:: What are the differences between the various MS Windows emacsen? |
5884 * Q6.3.3:: What is the porting team doing at the moment? | 5891 * Q6.3.3:: XEmacs 21.1 on Windows used to spawn an ugly console window on every startup. Has that been fixed? |
5892 * Q6.3.4:: What is the porting team doing at the moment? | |
5885 | 5893 |
5886 Troubleshooting: | 5894 Troubleshooting: |
5887 * Q6.4.1:: XEmacs won't start on Windows. (NEW) | 5895 * Q6.4.1:: XEmacs won't start on Windows. |
5888 | 5896 * Q6.4.2:: Why do I get a blank toolbar on Windows 95? |
5889 @end menu | 5897 @end menu |
5890 | 5898 |
5891 @node Q6.0.1, Q6.0.2, MS Windows, MS Windows | 5899 @node Q6.0.1, Q6.0.2, MS Windows, MS Windows |
5892 @unnumberedsec 6.0: General Info | 5900 @unnumberedsec 6.0: General Info |
5893 @unnumberedsubsec Q6.0.1: What is the status of the XEmacs port to Windows? | 5901 @unnumberedsubsec Q6.0.1: What is the status of the XEmacs port to Windows? |
6188 | 6196 |
6189 @node Q6.2.1, Q6.2.2, Q6.1.7, MS Windows | 6197 @node Q6.2.1, Q6.2.2, Q6.1.7, MS Windows |
6190 @unnumberedsec 6.2: Customization and User Interface | 6198 @unnumberedsec 6.2: Customization and User Interface |
6191 @unnumberedsubsec Q6.2.1: How does the port cope with differences in the Windows user interface? | 6199 @unnumberedsubsec Q6.2.1: How does the port cope with differences in the Windows user interface? |
6192 | 6200 |
6193 XEmacs (and Emacs in general) UI is pretty different from what is | 6201 The XEmacs (and Emacs in general) user interface is pretty different |
6194 expected of a typical MS Windows program. How does the MS Windows port | 6202 from what is expected of a typical MS Windows program. How does the MS |
6195 cope with it? | 6203 Windows port cope with it? |
6196 | 6204 |
6197 As a general rule, we follow native MS Windows conventions as much as | 6205 As a general rule, we follow native MS Windows conventions as much as |
6198 possible. In cases where there's a clear UI conflict, we currently use | 6206 possible. 21.4 is a fairly complete Windows application, supporting |
6199 normal Unix XEmacs behavior by default, but make sure the MS Windows | 6207 native printing, system file dialog boxes, tool tips, etc. In cases |
6200 "look and feel" (mark via shift-arrow, self-inserting deletes region, | 6208 where there's a clear UI conflict, we currently use normal Unix XEmacs |
6201 Alt selects menu items, etc.) is easily configurable (respectively: | 6209 behavior by default, but make sure the MS Windows "look and feel" (mark |
6202 using the variable @code{shifted-motion-keys-select-region} in 21.4 and | 6210 via shift-arrow, self-inserting deletes region, Alt selects menu items, |
6203 above [it's in fact the default in these versions], or the | 6211 etc.) is easily configurable (respectively: using the variable |
6204 @file{pc-select} package; using the @file{pending-del} package; and | 6212 @code{shifted-motion-keys-select-region} in 21.4 and above [it's in fact |
6205 setting the variable @code{menu-accelerator-enabled} to | 6213 the default in these versions], or the @file{pc-select} package; using |
6206 @code{menu-force} in 21.4 and above). In fact, if you use the sample | 6214 the @file{pending-del} package; and setting the variable |
6207 @file{init.el} file as your init file, you will get all these behaviors | 6215 @code{menu-accelerator-enabled} to @code{menu-force} in 21.4 and above). |
6208 automatically turned on. | 6216 In fact, if you use the sample @file{init.el} file as your init file, |
6217 you will get all these behaviors automatically turned on. | |
6209 | 6218 |
6210 In future versions, some of these features might be turned on by | 6219 In future versions, some of these features might be turned on by |
6211 default in the MS Windows environment. | 6220 default in the MS Windows environment. |
6212 | 6221 |
6213 | 6222 |
6214 @node Q6.2.2, Q6.2.3, Q6.2.1, MS Windows | 6223 @node Q6.2.2, Q6.2.3, Q6.2.1, MS Windows |
6215 @unnumberedsubsec Q6.2.2: How do I change fonts in XEmacs on MS Windows? | 6224 @unnumberedsubsec Q6.2.2: How do I change fonts in XEmacs on MS Windows? |
6216 | 6225 |
6217 In 21.4 and above, use the font menu. In all versions, you can change | 6226 In 21.4 and above, you can use the "Options" menu to change the font. |
6218 font manually. For example: | 6227 You can also do it in your init file, e.g. like this: |
6219 | 6228 |
6220 @display | 6229 @display |
6221 (set-face-font 'default "Lucida Console:Regular:10") | 6230 (set-face-font 'default "Lucida Console:Regular:10") |
6222 (set-face-font 'modeline "MS Sans Serif:Regular:10") | 6231 (set-face-font 'modeline "MS Sans Serif:Regular:10") |
6223 @end display | 6232 @end display |
6224 | 6233 |
6225 | 6234 |
6226 @node Q6.2.3, Q6.3.1, Q6.2.2, MS Windows | 6235 @node Q6.2.3, Q6.2.4, Q6.2.2, MS Windows |
6227 @unnumberedsubsec Q6.2.3: Where do I put my @file{init.el}/@file{.emacs} file? | 6236 @unnumberedsubsec Q6.2.3: Where do I put my @file{init.el}/@file{.emacs} file? |
6228 | 6237 |
6229 @file{init.el} is the name of the init file starting with 21.4, and is | 6238 @file{init.el} is the name of the init file starting with 21.4, and is |
6230 located in the subdirectory @file{.xemacs/} of your home directory. In | 6239 located in the subdirectory @file{.xemacs/} of your home directory. In |
6231 prior versions, the init file is called @file{.emacs} and is located in | 6240 prior versions, the init file is called @file{.emacs} and is located in |
6232 your home directory. Your home directory under Windows is determined by | 6241 your home directory. Your home directory under Windows is determined by |
6233 the HOME environment variable. If this is not set, it defaults to | 6242 the @samp{HOME} environment variable. If this is not set, it defaults to |
6234 `C:\'. | 6243 @samp{C:\}. |
6235 | 6244 |
6236 @node Q6.3.1, Q6.3.2, Q6.2.3, MS Windows | 6245 To set this variable, modify @file{AUTOEXEC.BAT} under Windows 95/98, or |
6246 select @samp{Control Panel->System->Advanced->Environment Variables...} | |
6247 under Windows NT/2000. | |
6248 | |
6249 | |
6250 @node Q6.2.4, Q6.2.5, Q6.2.3, MS Windows | |
6251 @unnumberedsubsec Q6.2.4: How do I get Windows Explorer to associate a file type with XEmacs? | |
6252 | |
6253 @unnumberedsubsubsec Associating a new file type with XEmacs. | |
6254 | |
6255 In Explorer select @samp{View/Options/File Types}, press @samp{[New | |
6256 Type...]} and fill in the dialog box, e.g.: | |
6257 | |
6258 @example | |
6259 Description of type: Emacs Lisp source | |
6260 Associated extension: el | |
6261 Content Type (MIME): text/plain | |
6262 @end example | |
6263 | |
6264 then press @samp{[New...]} and fill in the @samp{Action} dialog box as | |
6265 follows: | |
6266 | |
6267 @example | |
6268 Action: | |
6269 Open | |
6270 | |
6271 Application used to perform action: | |
6272 D:\Full\path\for\xemacs.exe "%1" | |
6273 | |
6274 [x] Use DDE | |
6275 | |
6276 DDE Message: | |
6277 open("%1") | |
6278 | |
6279 Application: | |
6280 <leave blank> | |
6281 | |
6282 DDE Application Not Running: | |
6283 <leave blank> | |
6284 | |
6285 Topic: | |
6286 <leave blank> | |
6287 @end example | |
6288 | |
6289 @unnumberedsubsubsec Associating an existing file type with XEmacs. | |
6290 | |
6291 In Explorer select @samp{View/Options/File Types}. Click on the file | |
6292 type in the list and press @samp{[Edit...]}. If the file type already | |
6293 has an @samp{Open} action, double click on it and fill in the | |
6294 @samp{Action} dialog box as described above; otherwise create a new | |
6295 action. | |
6296 | |
6297 If the file type has more than one action listed, you probably want to | |
6298 make the @samp{Open} action that you just edited the default by clicking on | |
6299 it and pressing @samp{Set Default}. | |
6300 | |
6301 Note for Windows 2000 users: Under Windows 2000, get to @samp{File Types} | |
6302 using @samp{Control Panel->Folder Options->File Types}. | |
6303 | |
6304 | |
6305 @node Q6.2.5, Q6.3.1, Q6.2.4, MS Windows | |
6306 @unnumberedsubsec Q6.2.5: Is it possible to print from XEmacs? | |
6307 | |
6308 As of 21.4, printing works on Windows, using simply @samp{File->Print}, | |
6309 and can be configured with @samp{File->Page Setup}. | |
6310 | |
6311 Prior to 21.4, there is no built-in support, but there are some clever | |
6312 hacks out there. If you know how, please let us know and we'll put it | |
6313 here. | |
6314 | |
6315 | |
6316 @node Q6.3.1, Q6.3.2, Q6.2.5, MS Windows | |
6237 @unnumberedsec 6.3: Miscellaneous | 6317 @unnumberedsec 6.3: Miscellaneous |
6238 @unnumberedsubsec Q6.3.1: Does XEmacs rename all the win32-* symbols to w32-*? | 6318 @unnumberedsubsec Q6.3.1: Does XEmacs rename all the @samp{win32-*} symbols to @samp{w32-*}? |
6239 | 6319 |
6240 In his flavor of Emacs 20, Richard Stallman has renamed all the win32-* | 6320 In his flavor of Emacs 20, Richard Stallman has renamed all the @samp{win32-*} |
6241 symbols to w32-*. Does XEmacs do the same? | 6321 symbols to @samp{w32-*}. Does XEmacs do the same? |
6242 | 6322 |
6243 We consider such a move counter-productive, thus we will not use the | 6323 We consider such a move counter-productive, thus we do not use the |
6244 `w32' prefix. However, we do recognize that Win32 name is little more | 6324 @samp{w32} prefix. (His rather questionable justification was that he |
6245 than a marketing buzzword (will it be Win64 in the next release?), so | 6325 did not consider Windows to be a "winning" platform.) However, the name |
6246 we decided not to use it. Using `windows-' would be wrong because the | 6326 @samp{Win32} is not particularly descriptive outside the Windows world, |
6247 term is too generic, which is why we settled on a compromise | 6327 and using just @samp{windows-} would be too generic. So we chose a |
6248 `mswindows' term. | 6328 compromise, the prefix @samp{mswindows-} for Windows-related variables |
6249 | 6329 and functions. |
6250 Thus all the XEmacs variables and functions directly related to Win32 | 6330 |
6251 are prefixed `mswindows-'. The user-variables shared with NT Emacs | 6331 Thus all the XEmacs variables and functions directly related to either |
6252 will be provided as compatibility aliases. | 6332 the Windows GUI or OS are prefixed @samp{mswindows-} (except for a |
6253 | 6333 couple of debugging variables, prefixed @samp{debug-mswindows-}). From |
6254 Architectural note: We believe that there should be a very small number | 6334 an architectural perspective, however, we believe that this is mostly a |
6255 of window-systems-specific variables, and we provide generic interfaces | 6335 non-issue because there should be a very small number of |
6256 whenever possible. Thus, most of the equivalents of GNU Emacs `w32-*' | 6336 window-systems-specific variables anyway. Whenever possible, we try to |
6257 functions and variables (as well as the corresponding `x-*' versions) | 6337 provide generic interfaces that apply to all window systems. |
6258 are non-window-system-specific in XEmacs, and the issue of `mswindows-*' | 6338 |
6259 vs. `w32-*' does not come up much. | 6339 @c not true: |
6340 @c The user variables | |
6341 @c that share functionality with existing NT Emacs variables are be named | |
6342 @c with our convention, but we provide the GNU Emacs names as | |
6343 @c compatibility aliases. | |
6260 | 6344 |
6261 | 6345 |
6262 @node Q6.3.2, Q6.3.3, Q6.3.1, MS Windows | 6346 @node Q6.3.2, Q6.3.3, Q6.3.1, MS Windows |
6263 @unnumberedsubsec Q6.3.2: What are the differences between the various MS Windows emacsen? | 6347 @unnumberedsubsec Q6.3.2: What are the differences between the various MS Windows emacsen? |
6264 | 6348 |
6276 | 6360 |
6277 @item | 6361 @item |
6278 Beginning with XEmacs 19.12, XEmacs' architecture was redesigned | 6362 Beginning with XEmacs 19.12, XEmacs' architecture was redesigned |
6279 in such a way to allow clean support of multiple window systems. At | 6363 in such a way to allow clean support of multiple window systems. At |
6280 this time the TTY support was added, making X and TTY the first two | 6364 this time the TTY support was added, making X and TTY the first two |
6281 "window systems" XEmacs supported. The 19.12 design is the basis for | 6365 "window systems" supported by XEmacs. The 19.12 design is the basis for |
6282 the current native MS Windows code. | 6366 the current native MS Windows code. |
6283 | 6367 |
6284 @item | 6368 @item |
6285 Some time during 1997, David Hobley (soon joined by Marc Paquette) | 6369 Some time during 1997, David Hobley (soon joined by Marc Paquette) |
6286 imported some of the NT-specific portions of GNU Emacs, making XEmacs | 6370 imported some of the NT-specific portions of GNU Emacs, making XEmacs |
6291 the Win32 API, thus creating the native port. Since then, various | 6375 the Win32 API, thus creating the native port. Since then, various |
6292 people have contributed, including Kirill M. Katsnelson (contributed | 6376 people have contributed, including Kirill M. Katsnelson (contributed |
6293 support for menubars, subprocesses and network, as well as loads of | 6377 support for menubars, subprocesses and network, as well as loads of |
6294 other code), Andy Piper (ported XEmacs to Cygwin environment, | 6378 other code), Andy Piper (ported XEmacs to Cygwin environment, |
6295 contributed Windows unexec, Windows-specific glyphs and toolbars code, | 6379 contributed Windows unexec, Windows-specific glyphs and toolbars code, |
6296 and more), Ben Wing (loads of improvements; currently the most active MS | 6380 and more), Ben Wing (loads of improvements; primary MS Windows developer |
6297 Windows developer), Jeff Sparkes (contributed scrollbars support) and | 6381 since 2000), Jeff Sparkes (contributed scrollbars support) and many |
6298 many others. | 6382 others. |
6299 @end itemize | 6383 @end itemize |
6300 | 6384 |
6301 @item | 6385 @item |
6302 NT Emacs | 6386 NT Emacs |
6303 | 6387 |
6312 NT Emacs has been written by Geoff Voelker, and more information can be | 6396 NT Emacs has been written by Geoff Voelker, and more information can be |
6313 found at | 6397 found at |
6314 @iftex | 6398 @iftex |
6315 @* | 6399 @* |
6316 @end iftex | 6400 @end iftex |
6317 @uref{http://www.cs.washington.edu/homes/voelker/ntemacs.html}. | 6401 @uref{http://www.gnu.org/software/emacs/windows/ntemacs.html}. |
6318 @end itemize | 6402 @end itemize |
6319 | 6403 |
6320 @item | 6404 @item |
6321 Win-Emacs | 6405 Win-Emacs |
6322 | 6406 |
6334 | 6418 |
6335 @itemize @minus | 6419 @itemize @minus |
6336 | 6420 |
6337 @item | 6421 @item |
6338 GNU Emacs features support for MS-DOS and DJGPP (D.J. Delorie's DOS | 6422 GNU Emacs features support for MS-DOS and DJGPP (D.J. Delorie's DOS |
6339 port of Gcc). Such an Emacs is heavily underfeatured, because it does | 6423 port of GCC). Such an Emacs is heavily underfeatured, because it does |
6340 not support long file names, lacks proper subprocesses support, and | 6424 not support long file names, lacks proper subprocesses support, and |
6341 is far too big compared to typical DOS editors. | 6425 is far too big compared with typical DOS editors. |
6342 @end itemize | 6426 @end itemize |
6343 | 6427 |
6344 @item | 6428 @item |
6345 GNU Emacs compiled with Win32 | 6429 GNU Emacs compiled with Win32 |
6346 | 6430 |
6347 @itemize @minus | 6431 @itemize @minus |
6348 | 6432 |
6349 @item | 6433 @item |
6350 Starting with version 19.30, it has been possible to compile GNU Emacs | 6434 Starting with version 19.30, it has been possible to compile GNU Emacs |
6351 under MS Windows using the DJGPP compiler and X libraries. The result | 6435 under MS Windows using the DJGPP compiler and X libraries. The result |
6352 is is very similar to GNU Emacs compiled under MS DOS, only it | 6436 is very similar to GNU Emacs compiled under MS DOS, only it works |
6353 supports longer file names, etc. This "port" is similar to the "X" | 6437 somewhat better because it runs in 32-bit mode, makes use of all the |
6354 flavor of XEmacs on MS Windows. | 6438 system memory, supports long file names, etc. |
6355 @end itemize | 6439 @end itemize |
6356 | 6440 |
6357 @end itemize | 6441 @end itemize |
6358 | 6442 |
6359 | 6443 |
6360 @node Q6.3.3, Q6.4.1, Q6.3.2, MS Windows | 6444 @node Q6.3.3, Q6.3.4, Q6.3.2, MS Windows |
6361 @unnumberedsubsec Q6.3.3: What is the porting team doing at the moment? | 6445 @unnumberedsubsec Q6.3.3: XEmacs 21.1 on Windows used to spawn an ugly console window on every startup. Has that been fixed? |
6446 | |
6447 Yes. | |
6448 | |
6449 The console was there because @file{temacs} (and in turn, @file{xemacs}) | |
6450 was a console application, and Windows typically creates a new | |
6451 console for a console process unless the creating process requests that | |
6452 one isn't created. This used to be fixed with @file{runemacs}, a small | |
6453 Windows application that existed merely to start @file{xemacs}, stating | |
6454 that it didn't want a console. | |
6455 | |
6456 XEmacs 21.4 fixes this cleanly by the virtue of being a true "GUI" | |
6457 application. The explanation of what that means is included for | |
6458 educational value. | |
6459 | |
6460 When building an application to be run in a Win32 environment, you must | |
6461 state which sub-system it is to run in. Valid subsystems include | |
6462 "console" and "gui". The subsystem you use affects the run time | |
6463 libraries linked into your application, the start up function that is | |
6464 run before control is handed over to your application, the entry point | |
6465 to your program, and how Windows normally invokes your program. (Console | |
6466 programs automatically get a console created for them at startup if | |
6467 their stdin/stdout don't point anywhere useful, which is the case when | |
6468 run from the GUI. This is a stupid design, of course -- instead, the | |
6469 console should get created only when the first I/O actually occurs! | |
6470 GUI programs have an equally stupid design: When called from | |
6471 @file{CMD.EXE}/@file{COMMAND.COM}, their stdin/stdout will be set to | |
6472 point nowhere useful, even though the command shell has its own | |
6473 stdin/stdout. It's as if someone who had learned a bit about stdio but | |
6474 had no actual knowledge of interprocess communication designed the | |
6475 scheme; unfortunately, the whole process-communication aspect of the | |
6476 Win32 API is equally badly designed.) For example, the entry point for a | |
6477 console app is "main" (which is what you'd expect for a C/C++ program), | |
6478 but the entry point for a "gui" app is "WinMain". This confuses and | |
6479 annoys a lot of programmers who've grown up on Unix systems, where the | |
6480 kernel doesn't really care whether your application is a gui program or | |
6481 not. | |
6482 | |
6483 For reasons not altogether clear, and are lost in the mists of time and | |
6484 tradition, XEmacs on Win32 started out as a console application, and | |
6485 therefore a console was automatically created for it. (It may have been | |
6486 made a console application partly because a console is needed in some | |
6487 circumstances, especially under Win95, to interrupt, terminate, or send | |
6488 signals to a child process, and because of the bogosity mentioned above | |
6489 with GUI programs and the standard command shell. Currently, XEmacs | |
6490 just creates and immediately hides a console when necessary, and | |
6491 works around the "no useful stdio" problem by creating its own console | |
6492 window as necessary to display messages in.) | |
6493 | |
6494 | |
6495 @node Q6.3.4, Q6.4.1, Q6.3.3, MS Windows | |
6496 @unnumberedsubsec Q6.3.4: What is the porting team doing at the moment? | |
6362 | 6497 |
6363 (as of June 2001) | 6498 (as of June 2001) |
6364 | 6499 |
6365 The porting team is continuing work on the MS Windows-specific code. | 6500 The porting team is continuing work on the MS Windows-specific code. |
6366 Major projects are the development of Mule (internationalization) | 6501 Major projects are the development of Mule (internationalization) |
6367 support for Windows and the improvement of the widget support (better | 6502 support for Windows and the improvement of the widget support (better |
6368 support for dialog boxes, buttons, edit fields, and similar UI | 6503 support for dialog boxes, buttons, edit fields, and similar UI |
6369 elements). | 6504 elements). |
6370 | 6505 |
6371 | 6506 |
6372 @node Q6.4.1, ,Q6.3.3, MS Windows | 6507 |
6508 @node Q6.4.1, Q6.4.2, Q6.3.4, MS Windows | |
6373 @unnumberedsec 6.3: Troubleshooting | 6509 @unnumberedsec 6.3: Troubleshooting |
6374 @unnumberedsubsec Q6.4.1 XEmacs won't start on Windows. (NEW) | 6510 @unnumberedsubsec Q6.4.1 XEmacs won't start on Windows. |
6375 | 6511 |
6376 XEmacs relies on a process called "dumping" to generate a working | 6512 XEmacs relies on a process called "dumping" to generate a working |
6377 executable. Under MS-Windows this process effectively fixes the memory | 6513 executable. Under MS-Windows this process effectively fixes the memory |
6378 addresses of information in the executable. When XEmacs starts up it tries | 6514 addresses of information in the executable. When XEmacs starts up it tries |
6379 to reserve these memory addresses so that the dumping process can be | 6515 to reserve these memory addresses so that the dumping process can be |
6388 problem for most people. 21.4 implements "portable dumping", which | 6524 problem for most people. 21.4 implements "portable dumping", which |
6389 eliminates the problem altogether. We recommend you use the 21.4 | 6525 eliminates the problem altogether. We recommend you use the 21.4 |
6390 binaries, but you can use the 21.1 binaries if you are very paranoid | 6526 binaries, but you can use the 21.1 binaries if you are very paranoid |
6391 about stability. @xref{Q6.0.3}. | 6527 about stability. @xref{Q6.0.3}. |
6392 | 6528 |
6529 @node Q6.4.2, , Q6.4.1, MS Windows | |
6530 @unnumberedsubsec Q6.4.2 Why do I get a blank toolbar on Windows 95? | |
6531 | |
6532 You need at least version 4.71 of the system file @file{comctl32.dll}. | |
6533 The updated version is supplied with Internet Explorer 4 and later but if | |
6534 you are avoiding IE you can also download it from the Microsoft web | |
6535 site. Go into support and search for @file{comctl32.dll}. The download | |
6536 is a self-installing executable. | |
6537 | |
6538 | |
6393 | 6539 |
6394 @node Current Events, , MS Windows, Top | 6540 @node Current Events, , MS Windows, Top |
6395 @unnumbered 7 What the Future Holds | 6541 @unnumbered 7 What the Future Holds |
6396 | 6542 |
6397 This is part 7 of the XEmacs Frequently Asked Questions list. This | 6543 This is part 7 of the XEmacs Frequently Asked Questions list. This |
6398 section will change monthly, and contains any interesting items that have | 6544 section will change frequently, and (in theory) should contain any |
6399 transpired over the previous month. If you are reading this from the | 6545 interesting items that have transpired recently. (But in practice it's |
6400 XEmacs distribution, please see the version on the Web or archived at the | 6546 not getting updated like this.) |
6401 various FAQ FTP sites, as this file is surely out of date. | 6547 |
6548 This section also contains descriptions of the new features in all the | |
6549 recent releases of XEmacs. For the most part, the information below is | |
6550 a synopsis of the more complete information that can be found in the | |
6551 file @file{NEWS} in the @file{etc} directory of the XEmacs distribution. | |
6552 You can view this file in XEmacs using @kbd{C-h n} or the @samp{Help} | |
6553 menu. | |
6554 | |
6555 Information on older versions of XEmacs can be find in @file{ONEWS} in | |
6556 the same directory, or @file{OONEWS} for really old versions. | |
6557 | |
6402 | 6558 |
6403 @menu | 6559 @menu |
6404 * Q7.0.1:: What is new in 20.2? | 6560 * Q7.0.1:: What new features will be in XEmacs soon? |
6405 * Q7.0.2:: What is new in 20.3? | 6561 * Q7.0.2:: What's new in XEmacs 21.4? |
6406 * Q7.0.3:: What is new in 20.4? | 6562 * Q7.0.3:: What's new in XEmacs 21.1? |
6407 * Q7.0.4:: Procedural changes in XEmacs development. | 6563 * Q7.0.4:: What's new in XEmacs 20.4? |
6564 * Q7.0.5:: What's new in XEmacs 20.3? | |
6565 * Q7.0.6:: What's new in XEmacs 20.2? | |
6408 @end menu | 6566 @end menu |
6409 | 6567 |
6410 @node Q7.0.1, Q7.0.2, Current Events, Current Events | 6568 @node Q7.0.1, Q7.0.2, Current Events, Current Events |
6411 @unnumberedsec 7.0: Changes | 6569 @unnumberedsec 7.0: Changes |
6412 @unnumberedsubsec Q7.0.1: What is new in 20.2? | 6570 @unnumberedsubsec Q7.0.1: What new features will be in XEmacs soon? |
6571 | |
6572 Not yet written. | |
6573 | |
6574 @node Q7.0.2, Q7.0.3, Q7.0.1, Current Events | |
6575 @unnumberedsubsec Q7.0.2: What's new in XEmacs 21.4? | |
6576 | |
6577 21.4 was the "stable" version of the 21.2 series, which was considered | |
6578 "experimental" throughout its life; thus there were no "official" | |
6579 releases at all. In essence, XEmacs is now following the "alternating" | |
6580 scheme of Linux, where at any point there are at least two different | |
6581 development branches, one "stable" and one "experimental". Periodic | |
6582 releases happen in both branches, but those in the experimental branch | |
6583 are not tested as well, and there's no guarantee they will work at all. | |
6584 The experiemental branch is open to any and all code that's acceptable | |
6585 to the developers; the stable branch, however, is in general limited | |
6586 only to bug fixes, and all contributions are carefully reviewed to make | |
6587 sure they will increase and not decrease stability. | |
6588 | |
6589 21.3 never existed at all; it was decided to follow the Linux scheme | |
6590 exactly, where odd-numbered series are experimental and even-numbered | |
6591 ones stable. | |
6592 | |
6593 The following lists summarizes the essential changes made in this | |
6594 version. For a fuller list, see the @file{NEWS} in the @file{etc} | |
6595 directory of the XEmacs distribution, or use @kbd{C-h n} or the | |
6596 @samp{Help} menu to view this file inside of XEmacs. | |
6597 | |
6598 @unnumberedsubsubsec User-visible changes | |
6599 | |
6600 @itemize @bullet | |
6601 | |
6602 @item | |
6603 The delete key now deletes forward by default. | |
6604 @item | |
6605 Shifted motion keys now select text by default. | |
6606 @item | |
6607 You can now build XEmacs with support for GTK+ widget set. | |
6608 @item | |
6609 ~/.xemacs/init.el is now the preferred location for the init | |
6610 file. (XEmacs now supports a `~/.xemacs/init.el' startup file. Custom | |
6611 file will move to ~/.xemacs/custom.el.) | |
6612 @item | |
6613 Much-improved sample init.el, showing how to use many useful features. | |
6614 @item | |
6615 XEmacs support for menu accelerators has been much improved. | |
6616 @item | |
6617 Default menubar improvements. (Default menubar has many new commands and | |
6618 better organization. The font-menu is now available under MS Windows.) | |
6619 @item | |
6620 Dialog box improvements, including a real file dialog box. (XEmacs now has a proper file dialog box under MS Windows (and GTK)! The old clunky file dialog box is improved. Keyboard traversal now works correctly in MS Windows dialog boxes. There is a Search dialog box available from Edit->Find...) | |
6621 @item | |
6622 New buffer tabs. | |
6623 @item | |
6624 There is a new MS Windows installer, netinstall, ported from Cygwin. | |
6625 @item | |
6626 The subprocess quote-handling mechanism under Windows is much improved. | |
6627 @item | |
6628 Printing support now available under MS Windows. | |
6629 @item | |
6630 Selection improvements. (Kill and yank now interact with the clipboard under Windows. MS Windows support for selection is now much more robust. Motif selection support is now more correct (but slower).) | |
6631 @item | |
6632 Mail spool locking now works correctly. | |
6633 @item | |
6634 International support changes. (The default coding-priority-list is now | |
6635 safer. International keysyms are now supported under X. MS Windows | |
6636 1251 code page now supported. Czech, Thai, Cyrillic-KOI8, Vietnamese, | |
6637 Ethiopic now supported. Proper support for words in Latin 3 and Latin | |
6638 4.) | |
6639 @item | |
6640 Help buffers contain hyperlinks, and other changes. | |
6641 @item | |
6642 The modeline's text is now scrollable. | |
6643 @item | |
6644 The mouse wheel under MS Windows now functions correctly. | |
6645 @item | |
6646 Interactive searching and matching case improvements. (Incremental search will now highlight all visible matches. Interactive searches always respect uppercase characters.) | |
6647 @item | |
6648 Rectangle functions rewritten to avoid inserting extra spaces. | |
6649 @item | |
6650 New command `kill-entire-line' that always kills the entire line. | |
6651 @item | |
6652 Default values correctly stored in minibuffer histories. | |
6653 @item | |
6654 You can now create "indirect buffers", like in GNU Emacs. | |
6655 @item | |
6656 Pixel-based scrolling has been implemented. | |
6657 @item | |
6658 Operation progress can be displayed using graphical widgets. | |
6659 @item | |
6660 User names following a tilde can now be completed at file name prompts. | |
6661 @item | |
6662 XEmacs can now play sound using Enlightenment Sound Daemon (ESD). | |
6663 @item | |
6664 X-Face support is now available under MS Windows. | |
6665 @item | |
6666 The PostgreSQL Relational Database Management System is now supported. | |
6667 @item | |
6668 Indentation no longer indents comments that begin at column zero. | |
6669 @item | |
6670 Face and variable settings can have comments in Customize. | |
6671 @item | |
6672 New locations for early package hierarchies. | |
6673 @item | |
6674 The `auto-save' library has been greatly improved. | |
6675 @item | |
6676 New variable `mswindows-alt-by-itself-activates-menu'. | |
6677 @item | |
6678 Other init-file-related changes. (Init file in your home directory may be called `.emacs.el'. New command-line switches -user-init-file and -user-init-directory.) | |
6679 @item | |
6680 Etags changes. See @file{NEWS} for full details. | |
6681 @end itemize | |
6682 | |
6683 @unnumberedsubsubsec Lisp and internal changes | |
6684 | |
6685 Not yet written. | |
6686 | |
6687 @itemize @bullet | |
6688 @end itemize | |
6689 | |
6690 @node Q7.0.3, Q7.0.4, Q7.0.2, Current Events | |
6691 @unnumberedsubsec Q7.0.3: What's new in XEmacs 21.1? | |
6692 | |
6693 21.1 was the "stable" version of "experimental" 21.0 series. | |
6694 @xref{Q7.0.2}. | |
6695 | |
6696 The following lists summarizes the essential changes made in this | |
6697 version. For a fuller list, see the @file{NEWS} in the @file{etc} | |
6698 directory of the XEmacs distribution, or use @kbd{C-h n} or the | |
6699 @samp{Help} menu to view this file inside of XEmacs. | |
6700 | |
6701 @unnumberedsubsubsec User-visible changes | |
6702 | |
6703 @itemize @bullet | |
6704 | |
6705 @item | |
6706 XEmacs is now supported under Microsoft Windows 95/98 and Windows NT | |
6707 operating systems. To discuss Windows-specific issues, subscribe to the | |
6708 mailing list at @email{xemacs-nt-request@@xemacs.org}. | |
6709 | |
6710 @item | |
6711 XEmacs has been unbundled into constituent installable packages. | |
6712 | |
6713 @item | |
6714 @strong{Other notable changes}: The @samp{Options} menu has been ported to | |
6715 Custom; XEmacs now is able to choose X visuals and use private | |
6716 colormaps; You can drag the vertical divider of "horizontally" | |
6717 (side-by-side) split windows. | |
6718 | |
6719 @item | |
6720 @strong{Building changes}: XEmacs can be built with support for 31-bit Lisp | |
6721 integers and 32-bit pointers (previously, it was 28-bit integers and | |
6722 pointers); XEmacs can be built with LDAP support; @file{dir} files can be | |
6723 removed in the Info subsystem, and will be regenerated on-the-fly. | |
6724 | |
6725 @item | |
6726 @strong{New packages}: @file{imenu}, @file{popper}, @file{gdb-highlight} | |
6727 | |
6728 @item | |
6729 @strong{Package changes}: Many changes to @file{cc-mode}, @file{gnus}, | |
6730 @file{gnuclient}. See @file{NEWS} for full details. | |
6731 | |
6732 @item | |
6733 @strong{New commands, variables and functions}: | |
6734 @code{center-to-window-line} (like @code{recenter} but doesn't force a | |
6735 redisplay); variable @code{user-full-name} (customize what your full | |
6736 name looks like in mail); @kbd{M-x customize-changed-options} (customize | |
6737 options whose default values changes because you upgraded your XEmacs); | |
6738 @kbd{M-x add-log-convert} (converts an old-style ChangeLog buffer to | |
6739 new-style); @kbd{M-x zap-up-to-char} (like @code{zap-to-char} but | |
6740 doesn't delete the char searched for); commands to store, retrieve and | |
6741 increment numbers in registers, useful for macros. | |
6742 | |
6743 @item | |
6744 @strong{Changes to commands, variables, and functions}: @kbd{M-x | |
6745 query-replace} and friends operate only on the region when it's active; | |
6746 @code{echo-keystrokes} can now be a floating-point number; @kbd{M-.} | |
6747 searches exact tag matches before inexact ones; function | |
6748 @code{user-full-name} with no arguments returns the var | |
6749 @code{user-full-name}; a prefix arg to @kbd{M-:} and @kbd{C-h c} inserts | |
6750 the result in the current buffer. | |
6751 | |
6752 @item | |
6753 @strong{Other changes}: Under X, new application class @samp{XEmacs}; | |
6754 byte-compilation of user-specs now works. | |
6755 | |
6756 @item | |
6757 @strong{XEmacs/Mule (internationalization) changes}: Mule support now | |
6758 works on TTY's; Egg/SJ3 input method now officially supported (Quail and | |
6759 Egg/Skk already available through LEIM since 20.3); localized Japanese | |
6760 menubars if XEmacs is built with the right support. | |
6761 | |
6762 @end itemize | |
6763 | |
6764 @unnumberedsubsubsec Lisp and internal changes | |
6765 | |
6766 @itemize @bullet | |
6767 | |
6768 @item | |
6769 @strong{Specifier changes}: The window locale now has a higher | |
6770 precedence than the buffer locale when instantiating; new macro | |
6771 @code{let-specifier}; new specifiers | |
6772 @code{vertical-scrollbar-visible-p}, horizontal-scrollbar-visible-p', | |
6773 @code{scrollbar-on-left-p}, @code{scrollbar-on-top-p}, | |
6774 @code{vertical-divider-always-visible-p}, | |
6775 @code{vertical-divider-shadow-thickness}, | |
6776 @code{vertical-divider-line-width}, @code{vertical-divider-spacing}; | |
6777 specifiers and symbols whose value is a specifier allowed as modeline | |
6778 specifications. | |
6779 | |
6780 @item | |
6781 @strong{Frame focus changes}: @code{focus-follows-mouse} works like FSF, | |
6782 prevents any attempt to permanently change the selected frame; new | |
6783 function @code{focus-frame} sets the window system focus a frame; new | |
6784 special forms @code{save-selected-frame} and @code{with-selected-frame}. | |
6785 | |
6786 @item | |
6787 @strong{Window function changes}: @code{select-window} now has optional | |
6788 argument @var{NORECORD} to inhibit recording a buffer change; | |
6789 @code{vertical-motion} now correctly handles optional @var{WINDOW} | |
6790 argument and has new optional argument @var{PIXELS}, to have the | |
6791 returned values be in pixels; new function | |
6792 @code{vertical-motion-pixels}; new functions | |
6793 @code{window-text-area-pixel-@{width,height,edges@}}; new functions | |
6794 @code{shrink-window-pixels} and @code{enlarge-window-pixels}; new | |
6795 function @code{window-displayed-text-pixel-height}. | |
6796 | |
6797 @item | |
6798 @strong{Other function changes}: Arithmetic comparison functions | |
6799 @code{<}, @code{>}, @code{=}, @code{/=} now accept a variable number of | |
6800 arguments; hashtables now have a consistent read/print syntax; keyword | |
6801 symbols cannot be set to a value other than themselves; @code{concat} no | |
6802 longer accepts integer arguments; new function @code{string}, like | |
6803 @code{list}, @code{vector}, etc.; new function @code{temp-directory} | |
6804 (OS-independent way to get a temp directory); @code{load-average} has | |
6805 optional argument @var{USE-FLOATS}; @code{make-event} implemented | |
6806 completely; new function @code{function-interactive} (returns a | |
6807 function's interactive spec); new functions @code{lmessage}, | |
6808 @code{lwarn} (printf-like versions of @code{display-wessage}, | |
6809 @code{display-warning}); new keyword @code{:version} to | |
6810 @code{defcustom}. | |
6811 | |
6812 @item | |
6813 @strong{Performance}: when the new GNU Malloc aka Doug Lea Malloc is | |
6814 available, it will be used (better performance on libc6 Linux systems); | |
6815 tracking line-numbers in modeline is now efficient; profiling records a | |
6816 call-count of all called functions, retrievable through | |
6817 @code{profile-call-count-results}. | |
6818 | |
6819 @item | |
6820 @strong{Startup and path searching}: code to assemble paths at startup | |
6821 rewritten for new package system; new function @code{split-path} (splits | |
6822 by @code{path-separator}); @code{Info-default-directory-list} obsolete, | |
6823 use @code{Info-directory-list} instead; site-lisp is deprecated and no | |
6824 longer on the load-path by default. | |
6825 | |
6826 @end itemize | |
6827 | |
6828 @node Q7.0.4, Q7.0.5, Q7.0.3, Current Events | |
6829 @unnumberedsubsec Q7.0.4: What's new in XEmacs 20.4? | |
6830 | |
6831 XEmacs 20.4 is a bugfix release with no user-visible changes. | |
6832 @c Filled in from NEWS file of 20.5-b33 | |
6833 | |
6834 @node Q7.0.5, Q7.0.6, Q7.0.4, Current Events | |
6835 @unnumberedsubsec Q7.0.5: What's new in XEmacs 20.3? | |
6836 | |
6837 XEmacs 20.3 was released in November 1997. It contains many bugfixes, | |
6838 and a number of new features, including Autoconf 2 based configuration, | |
6839 additional support for Mule (Multi-language extensions to Emacs), many | |
6840 more customizations, multiple frames on TTY-s, support for multiple info | |
6841 directories, an enhanced gnuclient, improvements to regexp matching, | |
6842 increased MIME support, and many, many synches with GNU Emacs 20. | |
6843 | |
6844 The XEmacs/Mule support has been only seriously tested in a Japanese | |
6845 locale, and no doubt many problems still remain. The support for | |
6846 ISO-Latin-1 and Japanese is fairly strong. MULE support comes at a | |
6847 price---about a 30% slowdown from 19.16. We're making progress on | |
6848 improving performance and XEmacs 20.3 compiled without Mule (which is | |
6849 the default) is definitely faster than XEmacs 19.16. | |
6850 | |
6851 XEmacs 20.3 is the first non-beta v20 release, and will be the | |
6852 basis for all further development. | |
6853 | |
6854 @node Q7.0.6, , Q7.0.5, Current Events | |
6855 @unnumberedsubsec Q7.0.6: What's new in XEmacs 20.2? | |
6413 | 6856 |
6414 The biggest changes in 20.2 include integration of EFS (the next | 6857 The biggest changes in 20.2 include integration of EFS (the next |
6415 generation of ange-ftp) and AUC Tex (the Emacs subsystem that includes a | 6858 generation of ange-ftp) and AUC Tex (the Emacs subsystem that includes a |
6416 major mode for editing Tex and LaTeX, and a lot of other stuff). Many | 6859 major mode for editing Tex and LaTeX, and a lot of other stuff). Many |
6417 bugs from 20.0 have been fixed for this release. 20.2 also contains a | 6860 bugs from 20.0 have been fixed for this release. 20.2 also contains a |
6419 customize}. | 6862 customize}. |
6420 | 6863 |
6421 XEmacs 20.2 is the development release (20.0 was beta), and is no longer | 6864 XEmacs 20.2 is the development release (20.0 was beta), and is no longer |
6422 considered unstable. | 6865 considered unstable. |
6423 | 6866 |
6424 @node Q7.0.2, Q7.0.3, Q7.0.1, Current Events | 6867 For older news, see the file @file{ONEWS} in the @file{etc} directory of |
6425 @unnumberedsubsec Q7.0.2: What is new in 20.3? | 6868 the XEmacs distribution. |
6426 | |
6427 XEmacs 20.3 was released in November 1997. It contains many bugfixes, | |
6428 and a number of new features, including Autoconf 2 based configuration, | |
6429 additional support for Mule (Multi-language extensions to Emacs), many | |
6430 more customizations, multiple frames on TTY-s, support for multiple info | |
6431 directories, an enhanced gnuclient, improvements to regexp matching, | |
6432 increased MIME support, and many, many synches with GNU Emacs 20. | |
6433 | |
6434 The XEmacs/Mule support has been only seriously tested in a Japanese | |
6435 locale, and no doubt many problems still remain. The support for | |
6436 ISO-Latin-1 and Japanese is fairly strong. MULE support comes at a | |
6437 price---about a 30% slowdown from 19.16. We're making progress on | |
6438 improving performance and XEmacs 20.3 compiled without Mule (which is | |
6439 the default) is definitely faster than XEmacs 19.16. | |
6440 | |
6441 XEmacs 20.3 is the first non-beta v20 release, and will be the | |
6442 basis for all further development. | |
6443 | |
6444 @node Q7.0.3, Q7.0.4, Q7.0.2, Current Events | |
6445 @unnumberedsubsec Q7.0.3: What's new in XEmacs 20.4? | |
6446 | |
6447 XEmacs 20.4 is a bugfix release with no user-visible changes. | |
6448 @c Filled in from NEWS file of 20.5-b33 | |
6449 | |
6450 | |
6451 @node Q7.0.4, , Q7.0.3, Current Events | |
6452 @unnumberedsubsec Q7.0.4: Procedural changes in XEmacs development. | |
6453 | |
6454 @enumerate | |
6455 @item | |
6456 Discussion about the development of XEmacs occurs on the xemacs-beta | |
6457 mailing list. Subscriptions to this list will now be fully automated | |
6458 instead of being handled by hand. Send a mail message to | |
6459 @email{xemacs-beta-request@@xemacs.org} with @samp{subscribe} as the | |
6460 BODY of the message to join the list. Please note this is a developers | |
6461 mailing list for people who have an active interest in the development | |
6462 process. | |
6463 | |
6464 The discussion of NT XEmacs development is taking place on a separate | |
6465 mailing list. Send mail to | |
6466 @iftex | |
6467 @* | |
6468 @end iftex | |
6469 @email{xemacs-nt-request@@xemacs.org} to | |
6470 subscribe. | |
6471 | |
6472 @item | |
6473 Due to the long development cycle in between releases, it has been | |
6474 decided that intermediate versions will be made available in source only | |
6475 form for the truly interested. | |
6476 | |
6477 XEmacs 19.16 was the last 19 release, basically consisting of 19.15 plus | |
6478 the collected bugfixes. | |
6479 | |
6480 @item | |
6481 As of December 1996, @email{steve@@xemacs.org, Steve Baur} has become | |
6482 the lead maintainer of XEmacs. | |
6483 @end enumerate | |
6484 | 6869 |
6485 @bye | 6870 @bye |