(M30699'): Separate U+829D.
[chise/xemacs-chise.git] / info / xemacs-faq.info-4
index ddfcd27..0f68a12 100644 (file)
@@ -1,5 +1,5 @@
-This is Info file ../info/xemacs-faq.info, produced by Makeinfo version
-1.68 from the input file xemacs-faq.texi.
+This is ../info/xemacs-faq.info, produced by makeinfo version 4.0 from
+xemacs-faq.texi.
 
 INFO-DIR-SECTION XEmacs Editor
 START-INFO-DIR-ENTRY
@@ -7,233 +7,6 @@ START-INFO-DIR-ENTRY
 END-INFO-DIR-ENTRY
 
 \1f
-File: xemacs-faq.info,  Node: Q3.10.1,  Next: Q3.10.2,  Prev: Q3.9.4,  Up: Customization
-
-3.10: Text Selections
-=====================
-
-Q3.10.1: How can I turn off or change highlighted selections?
--------------------------------------------------------------
-
-   The `zmacs' mode allows for what some might call gratuitous
-highlighting for selected regions (either by setting mark or by using
-the mouse).  This is the default behavior.  To turn off, add the
-following line to your `.emacs' file:
-
-     (setq zmacs-regions nil)
-
-   Starting with XEmacs-20.2 you can also change this with Customize.
-Select from the `Options' menu `Customize->Emacs->Editing->Basics->Zmacs
-Regions' or type `M-x customize <RET> editing-basics <RET>'.
-
-   To change the face for selection, look at `Options->Customize' on
-the menubar.
-
-\1f
-File: xemacs-faq.info,  Node: Q3.10.2,  Next: Q3.10.3,  Prev: Q3.10.1,  Up: Customization
-
-Q3.10.2: How do I get that typing on an active region removes it?
------------------------------------------------------------------
-
-   I want to change things so that if I select some text and start
-typing, the typed text replaces the selected text, similar to Motif.
-
-   You want to use something called "pending delete".  Pending delete
-is what happens when you select a region (with the mouse or keyboard)
-and you press a key to replace the selected region by the key you typed.
-Usually backspace kills the selected region.
-
-   To get this behavior, add the following line to your `.emacs':
-
-     (turn-on-pending-delete)
-
-   Note that this will work with both Backspace and Delete.
-
-\1f
-File: xemacs-faq.info,  Node: Q3.10.3,  Next: Q3.10.4,  Prev: Q3.10.2,  Up: Customization
-
-Q3.10.3: Can I turn off the highlight during isearch?
------------------------------------------------------
-
-   I do not like my text highlighted while I am doing isearch as I am
-not able to see what's underneath.  How do I turn it off?
-
-   Put the following in your `.emacs':
-
-     (setq isearch-highlight nil)
-
-   Starting with XEmacs-20.2 you can also change this with Customize.
-Type `M-x customize-variable <RET> isearch-highlight <RET>'.
-
-   Note also that isearch-highlight affects query-replace and ispell.
-Instead of disabling isearch-highlight you may find that a better
-solution consists of customizing the `isearch' face.
-
-\1f
-File: xemacs-faq.info,  Node: Q3.10.4,  Next: Q3.10.5,  Prev: Q3.10.3,  Up: Customization
-
-Q3.10.4: How do I turn off highlighting after `C-x C-p' (mark-page)?
---------------------------------------------------------------------
-
-   Put this in your `.emacs':
-
-     (setq zmacs-regions nil)
-
-   *Warning: This command turns off all region highlighting.*
-
-   Also *Note Q3.10.1::.
-
-\1f
-File: xemacs-faq.info,  Node: Q3.10.5,  Prev: Q3.10.4,  Up: Customization
-
-Q3.10.5: The region disappears when I hit the end of buffer while scrolling.
-----------------------------------------------------------------------------
-
-   This has been fixed by default starting with XEmacs-20.3.
-
-   With older versions you can turn this feature (if it indeed is a
-feature) off like this:
-
-     (defadvice scroll-up (around scroll-up freeze)
-       (interactive "_P")
-       (let ((zmacs-region-stays t))
-         (if (interactive-p)
-       (condition-case nil
-           ad-do-it
-         (end-of-buffer (goto-char (point-max))))
-           ad-do-it)))
-     
-     (defadvice scroll-down (around scroll-down freeze)
-       (interactive "_P")
-       (let ((zmacs-region-stays t))
-         (if (interactive-p)
-       (condition-case nil
-           ad-do-it
-         (beginning-of-buffer (goto-char (point-min))))
-           ad-do-it)))
-
-   Thanks to T. V. Raman <raman@adobe.com> for assistance in deriving
-this answer.
-
-\1f
-File: xemacs-faq.info,  Node: Subsystems,  Next: Miscellaneous,  Prev: Customization,  Up: Top
-
-4 Major Subsystems
-******************
-
-   This is part 4 of the XEmacs Frequently Asked Questions list.  This
-section is devoted to major XEmacs subsystems.
-
-* Menu:
-
-Reading Mail with VM:
-* Q4.0.1::      How do I set up VM to retrieve remote mail using POP?
-* Q4.0.2::      How do I get VM to filter mail for me?
-* Q4.0.3::      How can I get VM to automatically check for new mail?
-* Q4.0.4::      [This question intentionally left blank]
-* Q4.0.5::      How do I get my outgoing mail archived?
-* Q4.0.6::      I have various addresses at which I receive mail.  How can I tell VM to ignore them when doing a "reply-all"?
-* Q4.0.7::      Is there a mailing list or FAQ for VM?
-* Q4.0.8::      Remote mail reading with VM.
-* Q4.0.9::      rmail or VM gets an error incorporating new mail.
-* Q4.0.10::     How do I make VM stay in a single frame?
-* Q4.0.11::     How do I make VM or mh-e display graphical smilies?
-* Q4.0.12::     Customization of VM not covered in the manual or here.
-
-Web browsing with W3:
-* Q4.1.1::      What is W3?
-* Q4.1.2::      How do I run W3 from behind a firewall?
-* Q4.1.3::      Is it true that W3 supports style sheets and tables?
-
-Reading Netnews and Mail with Gnus:
-* Q4.2.1::      GNUS, (ding) Gnus, Gnus 5, September Gnus, Red Gnus,argh!
-* Q4.2.2::      [This question intentionally left blank]
-* Q4.2.3::      How do I make Gnus stay within a single frame?
-* Q4.2.4::      How do I customize the From: line?
-
-Other Mail & News:
-* Q4.3.1::      How can I read and/or compose MIME messages?
-* Q4.3.2::      What is TM and where do I get it?
-* Q4.3.3::      Why isn't this `movemail' program working?
-* Q4.3.4::      Movemail is also distributed by Netscape?  Can that cause problems?
-* Q4.3.5::      Where do I find pstogif (required by tm)?
-
-Sparcworks, EOS, and WorkShop:
-* Q4.4.1::      What is SPARCworks, EOS, and WorkShop
-
-Energize:
-* Q4.5.1::      What is/was Energize?
-
-Infodock:
-* Q4.6.1::      What is Infodock?
-
-Other Unbundled Packages:
-* Q4.7.1::      What is AUC TeX?  Where do you get it?
-* Q4.7.2::      Are there any Emacs Lisp Spreadsheets?
-* Q4.7.3::      Byte compiling AUC TeX on XEmacs 19.14
-* Q4.7.4::      Problems installing AUC TeX
-* Q4.7.5::      Is there a reason for an Emacs package not to be included in XEmacs?
-* Q4.7.6::      Is there a MatLab mode?
-
-\1f
-File: xemacs-faq.info,  Node: Q4.0.1,  Next: Q4.0.2,  Prev: Subsystems,  Up: Subsystems
-
-4.0: Reading Mail with VM
-=========================
-
-Q4.0.1: How do I set up VM to retrieve mail from a remote site using POP?
--------------------------------------------------------------------------
-
-   Use `vm-spool-files', like this for example:
-
-     (setq vm-spool-files '("/var/spool/mail/wing"
-                            "netcom23.netcom.com:110:pass:wing:MYPASS"))
-
-   Of course substitute your actual password for MYPASS.
-
-\1f
-File: xemacs-faq.info,  Node: Q4.0.2,  Next: Q4.0.3,  Prev: Q4.0.1,  Up: Subsystems
-
-Q4.0.2: How do I get VM to filter mail for me?
-----------------------------------------------
-
-   One possibility is to use procmail to split your mail before it gets
-to VM.  I prefer this personally, since there are many strange and
-wonderful things one can do with procmail.  Procmail may be found at
-`ftp://ftp.informatik.rwth-aachen.de/pub/packages/procmail/'.
-
-   Also see the Mail Filtering FAQ at:
-`ftp://rtfm.mit.edu/pub/usenet/news.answers/mail/filtering-faq'.
-
-\1f
-File: xemacs-faq.info,  Node: Q4.0.3,  Next: Q4.0.4,  Prev: Q4.0.2,  Up: Subsystems
-
-Q4.0.3: How can I get VM to automatically check for new mail?
--------------------------------------------------------------
-
-   John Turner <turner@lanl.gov> writes:
-
-     Use the following:
-
-          (setq vm-auto-get-new-mail 60)
-
-\1f
-File: xemacs-faq.info,  Node: Q4.0.4,  Next: Q4.0.5,  Prev: Q4.0.3,  Up: Subsystems
-
-Q4.0.4: [This question intentionally left blank]
-------------------------------------------------
-
-   Obsolete question, left blank to avoid renumbering.
-
-\1f
-File: xemacs-faq.info,  Node: Q4.0.5,  Next: Q4.0.6,  Prev: Q4.0.4,  Up: Subsystems
-
-Q4.0.5: How do I get my outgoing mail archived?
------------------------------------------------
-
-     (setq mail-archive-file-name "~/outbox")
-
-\1f
 File: xemacs-faq.info,  Node: Q4.0.6,  Next: Q4.0.7,  Prev: Q4.0.5,  Up: Subsystems
 
 Q4.0.6: I have various addresses at which I receive mail.  How can I tell VM to ignore them when doing a "reply-all"?
@@ -243,7 +16,7 @@ Q4.0.6: I have various addresses at which I receive mail.  How can I tell VM to
 
      (setq vm-reply-ignored-addresses
            '("wing@nuspl@nvwls.cc.purdue.edu,netcom[0-9]*.netcom.com"
-       "wing@netcom.com" "wing@666.com"))
+       "wing@netcom.com" "wing@xemacs.org"))
 
    Note that each string is a regular expression.
 
@@ -385,7 +158,7 @@ Q4.0.12: Customization of VM not covered in the manual, or here.
      directory of the lisp library.
 
      `vm-vars.el' contains, initializes and carefully describes, with
-     examples of usage, the plethora of user options that *fully*
+     examples of usage, the plethora of user options that _fully_
      control VM's behavior.
 
      Enter vm-vars, `forward-search' for toolbar, find the variables
@@ -440,7 +213,7 @@ Q4.2.1: GNUS, (ding) Gnus, Gnus 5, September Gnus, Red Gnus, Quassia Gnus, argh!
 --------------------------------------------------------------------------------
 
    The Gnus numbering issues are not meant for mere mortals to know
-them.  If you feel you *must* enter the muddy waters of Gnus, visit the
+them.  If you feel you _must_ enter the muddy waters of Gnus, visit the
 excellent FAQ, maintained by Justin Sheehy, at:
 
      `http://www.ccs.neu.edu/software/contrib/gnus/'
@@ -543,14 +316,6 @@ KOBAYASHI Shuhei <shuhei-k@jaist.ac.jp>.
    * MIME extenders for mh-e, GNUS, RMAIL and VM.
 
    tm is available from following anonymous ftp sites:
-   * `ftp://ftp.jaist.ac.jp/pub/GNU/elisp/mime/' (Japan).
-
-   * `ftp://ftp.nis.co.jp/pub/gnu/emacs-lisp/tm/' (Japan).
-
-   * `ftp://ftp.nisiq.net/pub/gnu/emacs-lisp/tm/' (US).
-
-   * `ftp://ftp.miranova.com/pub/gnus/jaist.ac.jp/' (US).
-
    * `ftp://ftp.unicamp.br/pub/mail/mime/tm/' (Brasil).
 
    * `ftp://ftp.th-darmstadt.de/pub/editors/GNU-Emacs/lisp/mime/'
@@ -569,7 +334,7 @@ File: xemacs-faq.info,  Node: Q4.3.3,  Next: Q4.3.4,  Prev: Q4.3.2,  Up: Subsyst
 Q4.3.3: Why isn't this `movemail' program working?
 --------------------------------------------------
 
-   Ben Wing <ben@666.com> writes:
+   Ben Wing <ben@xemacs.org> writes:
 
      It wasn't chown'ed/chmod'd correctly.
 
@@ -579,12 +344,12 @@ File: xemacs-faq.info,  Node: Q4.3.4,  Next: Q4.3.5,  Prev: Q4.3.3,  Up: Subsyst
 Q4.3.4: Movemail is also distributed by Netscape?  Can that cause problems?
 ---------------------------------------------------------------------------
 
-   Steve Baur <steve@altair.xemacs.org> writes:
+   Steve Baur <steve@xemacs.org> writes:
 
      Yes.  Always use the movemail installed with your XEmacs.  Failure
      to do so can result in lost mail.
 
-   Please refer to Jamie Zawinski's <jwz@netscape.com> notes at
+   Please refer to Jamie Zawinski's <jwz@jwz.org> notes at
 `http://home.netscape.com/eng/mozilla/2.0/relnotes/demo/movemail.html'.
 In particular, this document will show you how to make Netscape use the
 version of movemail configured for your system by the person who built
@@ -613,7 +378,7 @@ Q4.3.5: Where do I find pstogif (required by tm)?
 `ftp://ftp.cdrom.com/pub/tex/ctan/support/latex2html/'.
 
 \1f
-File: xemacs-faq.info,  Node: Q4.4.1,  Next: Q4.5.1,  Prev: Q4.3.5,  Up: Subsystems
+File: xemacs-faq.info,  Node: Q4.4.1,  Next: Q4.4.2,  Prev: Q4.3.5,  Up: Subsystems
 
 4.4: Sparcworks, EOS, and WorkShop
 ==================================
@@ -650,17 +415,45 @@ time.
      EOS is being replaced with a new graphical development environment
      called Sun WorkShop, which is currently (07/96) in Alpha Test.
      For more details, check out
+     `http://www.sun.com/software/Products/Developer-products'.
 
+\1f
+File: xemacs-faq.info,  Node: Q4.4.2,  Next: Q4.5.1,  Prev: Q4.4.1,  Up: Subsystems
 
+Q4.4.2: How do I start the Sun Workshop support in XEmacs 21?
+-------------------------------------------------------------
 
-
-
-
-
-     `http://www.sun.com/software/Products/Developer-products/programs.html'.
+   Add the switch --with-workshop to the configure command when building
+XEmacs and put the following in one of your startup files (e.g.
+site-start.el or .emacs):
+
+     (when (featurep 'tooltalk)
+       (load "tooltalk-macros")
+       (load "tooltalk-util")
+       (load "tooltalk-init"))
+     (when (featurep 'sparcworks)
+       (load "sunpro-init")
+       (load "ring")
+       (load "comint")
+       (load "annotations")
+       (sunpro-startup))
+
+   If you are not using the latest Workshop (5.0) you have to apply the
+following patch:
+
+--- /opt/SUNWspro/lib/eserve.el.ORIG    Fri May 14 15:23:26 1999
++++ /opt/SUNWspro/lib/eserve.el Fri May 14 15:24:54 1999
+@@ -42,7 +42,7 @@
+ (defvar running-xemacs nil "t if we're running XEmacs")
+ (defvar running-emacs  nil "t if we're running GNU Emacs 19")
+
+-(if (string-match "^\\(19\\|20\\)\..*\\(XEmacs\\|Lucid\\)" emacs-version)
++(if (string-match "\\(XEmacs\\|Lucid\\)" emacs-version)
+     (setq running-xemacs t)
+     (setq running-emacs  t))
 
 \1f
-File: xemacs-faq.info,  Node: Q4.5.1,  Next: Q4.6.1,  Prev: Q4.4.1,  Up: Subsystems
+File: xemacs-faq.info,  Node: Q4.5.1,  Next: Q4.6.1,  Prev: Q4.4.2,  Up: Subsystems
 
 4.5: Energize
 =============
@@ -859,14 +652,8 @@ Q4.7.2: Are there any Emacs Lisp Spreadsheets?
 \1f
 File: xemacs-faq.info,  Node: Q4.7.3,  Next: Q4.7.4,  Prev: Q4.7.2,  Up: Subsystems
 
-Q4.7.3: Byte compiling AUC TeX on XEmacs 19.14.
------------------------------------------------
-
-   Georges Brun-Cottan <bruncott@dormeur.inria.fr> writes:
-
-     When byte compiling auctex-9.4g, you must use the command:
-
-          xemacs -batch -l lpath.el
+Q4.7.3: [This question intentionally left blank]
+------------------------------------------------
 
 \1f
 File: xemacs-faq.info,  Node: Q4.7.4,  Next: Q4.7.5,  Prev: Q4.7.3,  Up: Subsystems
@@ -935,18 +722,12 @@ File: xemacs-faq.info,  Node: Q4.7.6,  Prev: Q4.7.5,  Up: Subsystems
 Q4.7.5: Is there a MatLab mode?
 -------------------------------
 
-   Is there any way I can get syntax highlighting for MatLab .m files?
-Can I "teach" emacs what words are MatLab commands, comments, etc. ?
-
-   Ulrich Elsner <elsner@mathematik.tu-chemnitz.de> writes:
-     One way to do this (and much more) is by using the
-     matlab mode
-     (ftp://ftp.mathworks.com/pub/contrib/v5/tools/matlab.el).
-
-     Instructions on how to install this mode are included in this file.
+   Yes, a matlab mode and other items are available at the MathWorks'
+emacs_add_ons ftp directory
+(ftp://ftp.mathworks.com/pub/contrib/emacs_add_ons).
 
 \1f
-File: xemacs-faq.info,  Node: Miscellaneous,  Next: Current Events,  Prev: Subsystems,  Up: Top
+File: xemacs-faq.info,  Node: Miscellaneous,  Next: MS Windows,  Prev: Subsystems,  Up: Top
 
 5 The Miscellaneous Stuff
 *************************
@@ -968,14 +749,14 @@ Major & Minor Modes:
 * Q5.0.8::      Why does edt emulation not work?
 * Q5.0.9::      How can I emulate VI and use it as my default mode?
 * Q5.0.10::     [This question intentionally left blank]
-* Q5.0.11::     Filladapt doesn't work in 19.15?
+* Q5.0.11::     How do I turn on filladapt for all buffers?
 * Q5.0.12::     How do I disable gnuserv from opening a new frame?
 * Q5.0.13::     How do I start gnuserv so that each subsequent XEmacs is a client?
 * Q5.0.14::     Strange things are happening in Shell Mode.
 * Q5.0.15::     Where do I get the latest CC Mode?
 * Q5.0.16::     I find auto-show-mode disconcerting.  How do I turn it off?
 * Q5.0.17::     How can I get two instances of info?
-* Q5.0.18::     I upgraded to XEmacs 19.14 and gnuserv stopped working
+* Q5.0.18::     [This question intentionally left blank]
 * Q5.0.19::     Is there something better than LaTeX mode?
 * Q5.0.20::     Is there a way to start a new XEmacs if there's no gnuserv running, and otherwise use gnuclient?
 
@@ -1002,7 +783,7 @@ Miscellaneous:
 * Q5.3.1::      How do you make XEmacs indent CL if-clauses correctly?
 * Q5.3.2::      Fontifying hangs when editing a postscript file.
 * Q5.3.3::      How can I print WYSIWYG a font-locked buffer?
-* Q5.3.4::      Getting `M-x lpr' to work with postscript printer.
+* Q5.3.4::      Getting M-x lpr to work with postscript printer.
 * Q5.3.5::      How do I specify the paths that XEmacs uses for finding files?
 * Q5.3.6::      [This question intentionally left blank]
 * Q5.3.7::      Can I have the end of the buffer delimited in some way?
@@ -1098,7 +879,7 @@ standard with XEmacs.  Put this into your `.emacs':
 
    You can customize filling and adaptive filling with Customize.
 Select from the `Options' menu
-`Customize->Emacs->->Editing->Fill->Fill...'  or type `M-x customize
+`Customize->Emacs->->Editing->Fill->Fill...' or type `M-x customize
 <RET> fill <RET>'.
 
    Note that well-behaving text-lookalike modes will run
@@ -1228,12 +1009,12 @@ Q5.0.10: [This question intentionally left blank]
 \1f
 File: xemacs-faq.info,  Node: Q5.0.11,  Next: Q5.0.12,  Prev: Q5.0.10,  Up: Miscellaneous
 
-Q5.0.11: Filladapt doesn't work in 19.15
-----------------------------------------
+Q5.0.11: How do I turn on filladapt for all buffers?
+----------------------------------------------------
 
-   Filladapt 2.x is included in 19.15.  In it filladapt is now a minor
-mode and minor modes are traditionally off by default.  The following
-added to your `.emacs' will turn it on for all buffers:
+   Filladapt is a minor mode and minor modes are traditionally off by
+default.  The following added to your `.emacs' will turn it on for all
+buffers:
 
      (setq-default filladapt-mode t)
 
@@ -1315,7 +1096,7 @@ Q5.0.15: Where do I get the latest CC Mode?
 
    Barry A. Warsaw <bwarsaw@cnri.reston.va.us> writes:
 
-     This can be had from `http://www.python.org/ftp/emacs/'.
+     This can be had from `http://www.python.org/emacs/'.
 
 \1f
 File: xemacs-faq.info,  Node: Q5.0.16,  Next: Q5.0.17,  Prev: Q5.0.15,  Up: Miscellaneous
@@ -1342,15 +1123,8 @@ buffers.
 \1f
 File: xemacs-faq.info,  Node: Q5.0.18,  Next: Q5.0.19,  Prev: Q5.0.17,  Up: Miscellaneous
 
-Q5.0.18: I upgraded to XEmacs 19.14 and gnuserv stopped working.
-----------------------------------------------------------------
-
-   Mark Daku <daku@nortel.ca> writes:
-
-     It turns out I was using an older version of gnuserv.  The
-     installation didn't put the binary into the public bin directory.
-     It put it in `lib/xemacs-19.14/hppa1.1-hp-hpux9.05/gnuserv'.
-     Shouldn't it have been put in `bin/hppa1.1-hp-hpux9.0'?
+Q5.0.18: [This question intentionally left blank]
+-------------------------------------------------
 
 \1f
 File: xemacs-faq.info,  Node: Q5.0.19,  Next: Q5.0.20,  Prev: Q5.0.18,  Up: Miscellaneous
@@ -1362,5 +1136,180 @@ Q5.0.19: Is there something better than LaTeX mode?
 
      The standard TeX modes leave much to be desired, and are somewhat
      leniently maintained.  Serious TeX users use AUC TeX (*note
-     Q4.7.1::.).
+     Q4.7.1::).
+
+\1f
+File: xemacs-faq.info,  Node: Q5.0.20,  Next: Q5.1.1,  Prev: Q5.0.19,  Up: Miscellaneous
+
+Q5.0.20: Is there a way to start a new XEmacs if there's no gnuserv running, and otherwise use gnuclient?
+---------------------------------------------------------------------------------------------------------
+
+   Jan Vroonhof <vroonhof@math.ethz.ch> writes:
+     Here is one of the solutions, we have this in a script called
+     `etc/editclient.sh'.
+           #!/bin/sh
+           if gnuclient -batch -eval t >/dev/null 2>&1
+           then
+             exec gnuclient ${1+"$@"}
+           else
+             xemacs -unmapped -f gnuserv-start &
+             until gnuclient -batch -eval t >/dev/null 2>&1
+             do
+                sleep 1
+             done
+             exec gnuclient ${1+"$@"}
+           fi
+
+     Note that there is a known problem when running XEmacs and
+     'gnuclient -nw' on the same TTY.
+
+\1f
+File: xemacs-faq.info,  Node: Q5.1.1,  Next: Q5.1.2,  Prev: Q5.0.20,  Up: Miscellaneous
+
+5.1: Emacs Lisp Programming Techniques
+======================================
+
+Q5.1.1: What is the difference in key sequences between XEmacs and GNU Emacs?
+-----------------------------------------------------------------------------
+
+   Erik Naggum <clerik@naggum.no> writes;
+
+     Emacs has a legacy of keyboards that produced characters with
+     modifier bits, and therefore map a variety of input systems into
+     this scheme even today.  XEmacs is instead optimized for X events.
+     This causes an incompatibility in the way key sequences are
+     specified, but both Emacs and XEmacs will accept a key sequence as
+     a vector of lists of modifiers that ends with a key, e.g., to bind
+     `M-C-a', you would say `[(meta control a)]' in both Emacsen.
+     XEmacs has an abbreviated form for a single key, just (meta
+     control a).  Emacs has an abbreviated form for the Control and the
+     Meta modifiers to string-characters (the ASCII characters), as in
+     `\M-\C-a'.  XEmacs users need to be aware that the abbreviated
+     form works only for one-character key sequences, while Emacs users
+     need to be aware that the string-character is rather limited.
+     Specifically, the string-character can accommodate only 256
+     different values, 128 of which have the Meta modifier and 128 of
+     which have not.  In each of these blocks, only 32 characters have
+     the Control modifier.  Whereas `[(meta control A)]' differs from
+     `[(meta control a)]' because the case differs, `\M-\C-a' and
+     `\M-\C-A' do not.  Programmers are advised to use the full common
+     form, both because it is more readable and less error-prone, and
+     because it is supported by both Emacsen.
+
+   Another (even safer) way to be sure of the key-sequences is to use
+the `read-kbd-macro' function, which takes a string like `C-c <up>',
+and converts it to the internal key representation of the Emacs you
+use.  The function is available both on XEmacs and GNU Emacs.
+
+\1f
+File: xemacs-faq.info,  Node: Q5.1.2,  Next: Q5.1.3,  Prev: Q5.1.1,  Up: Miscellaneous
+
+Q5.1.2: Can I generate "fake" keyboard events?
+----------------------------------------------
+
+   I wonder if there is an interactive function that can generate
+"fake" keyboard events.  This way, I could simply map them inside
+XEmacs.
+
+   This seems to work:
+
+     (defun cg--generate-char-event (ch)
+       "Generate an event, as if ch has been typed"
+       (dispatch-event (character-to-event ch)))
+     
+     ;;  Backspace and Delete stuff
+     (global-set-key [backspace]
+       (lambda () (interactive) (cg--generate-char-event 127)))
+     (global-set-key [unknown_keysym_0x4]
+       (lambda () (interactive) (cg--generate-char-event 4)))
+
+\1f
+File: xemacs-faq.info,  Node: Q5.1.3,  Next: Q5.1.4,  Prev: Q5.1.2,  Up: Miscellaneous
+
+Q5.1.3: Could you explain `read-kbd-macro' in more detail?
+----------------------------------------------------------
+
+   The `read-kbd-macro' function returns the internal Emacs
+representation of a human-readable string (which is its argument).
+Thus:
+
+     (read-kbd-macro "C-c C-a")
+     => [(control ?c) (control ?a)]
+     
+     (read-kbd-macro "C-c C-. <up>")
+     => [(control ?c) (control ?.) up]
+
+   In GNU Emacs the same forms will be evaluated to what GNU Emacs
+understands internally--the sequences `"\C-x\C-c"' and `[3 67108910
+up]', respectively.
+
+   The exact "human-readable" syntax is defined in the docstring of
+`edmacro-mode'.  I'll repeat it here, for completeness.
+
+     Format of keyboard macros during editing:
+
+     Text is divided into "words" separated by whitespace.  Except for
+     the words described below, the characters of each word go directly
+     as characters of the macro.  The whitespace that separates words is
+     ignored.  Whitespace in the macro must be written explicitly, as in
+     `foo <SPC> bar <RET>'.
+
+        * The special words `RET', `SPC', `TAB', `DEL', `LFD', `ESC',
+          and `NUL' represent special control characters.  The words
+          must be written in uppercase.
+
+        * A word in angle brackets, e.g., `<return>', `<down>', or
+          `<f1>', represents a function key.  (Note that in the standard
+          configuration, the function key `<return>' and the control key
+          <RET> are synonymous.)  You can use angle brackets on the
+          words <RET>, <SPC>, etc., but they are not required there.
+
+        * Keys can be written by their ASCII code, using a backslash
+          followed by up to six octal digits.  This is the only way to
+          represent keys with codes above \377.
+
+        * One or more prefixes `M-' (meta), `C-' (control), `S-'
+          (shift), `A-' (alt), `H-' (hyper), and `s-' (super) may
+          precede a character or key notation.  For function keys, the
+          prefixes may go inside or outside of the brackets: `C-<down>'
+          == `<C-down>'.  The prefixes may be written in any order:
+          `M-C-x' == `C-M-x'.
+
+          Prefixes are not allowed on multi-key words, e.g., `C-abc',
+          except that the Meta prefix is allowed on a sequence of
+          digits and optional minus sign: `M--123' == `M-- M-1 M-2 M-3'.
+
+        * The `^' notation for control characters also works: `^M' ==
+          `C-m'.
+
+        * Double angle brackets enclose command names: `<<next-line>>'
+          is shorthand for `M-x next-line <RET>'.
+
+        * Finally, `REM' or `;;' causes the rest of the line to be
+          ignored as a comment.
+
+     Any word may be prefixed by a multiplier in the form of a decimal
+     number and `*': `3*<right>' == `<right> <right> <right>', and
+     `10*foo' == `foofoofoofoofoofoofoofoofoofoo'.
+
+     Multiple text keys can normally be strung together to form a word,
+     but you may need to add whitespace if the word would look like one
+     of the above notations: `; ; ;' is a keyboard macro with three
+     semicolons, but `;;;' is a comment.  Likewise, `\ 1 2 3' is four
+     keys but `\123' is a single key written in octal, and `< right >'
+     is seven keys but `<right>' is a single function key.  When in
+     doubt, use whitespace.
+
+\1f
+File: xemacs-faq.info,  Node: Q5.1.4,  Next: Q5.1.5,  Prev: Q5.1.3,  Up: Miscellaneous
+
+Q5.1.4: What is the performance hit of `let'?
+---------------------------------------------
+
+   In most cases, not noticeable.  Besides, there's no avoiding
+`let'--you have to bind your local variables, after all.  Some pose a
+question whether to nest `let's, or use one `let' per function.  I
+think because of clarity and maintenance (and possible future
+implementation), `let'-s should be used (nested) in a way to provide
+the clearest code.