-This is ../info/xemacs-faq.info, produced by makeinfo version 3.12s
-from 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
END-INFO-DIR-ENTRY
\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'?
-
-\1f
-File: xemacs-faq.info, Node: Q5.0.19, Next: Q5.0.20, Prev: Q5.0.18, Up: Miscellaneous
-
-Q5.0.19: Is there something better than LaTeX mode?
----------------------------------------------------
-
- David Kastrup <dak@fsnif.neuroinformatik.ruhr-uni-bochum.de> writes:
-
- The standard TeX modes leave much to be desired, and are somewhat
- leniently maintained. Serious TeX users use AUC TeX (*note
- 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.
-
-\1f
File: xemacs-faq.info, Node: Q5.1.5, Next: Q5.1.6, Prev: Q5.1.4, Up: Miscellaneous
Q5.1.5: What is the recommended use of `setq'?